As far as I understood, each DRMed Mobipocket file is encrypted with a unique media key.
This media key is then encrypted for each authorized device with a secret device key that is derived from the PID.
INTERNAL_READER_KEY is basically all you need to derive the device key from the PID if I read drmmobi correctly.
Therefore I don't understand that all the mobipocket generators (not only the one they removed) have this value in clear without protection. The Linux software even had all the debugging information including naming of these variables and of the function that use them.
|