Barnes & Noble uses its own DRM scheme for some EPUB books. It's a variant of the Adobe ADEPT scheme, and all the Adobe SDK users will get access to it eventually. The problem is that many consumers can’t read
B&N books on their ebook readers.
Circumventing Barnes & Noble DRM for EPUB
Quote:
The basic idea behind the B&N EPUB scheme is the same as that used by the ill-fated eReader format B&N acquired:
step 1: generate an encryption key from the book-purchaser's name + credit card #
step 2: hope that they don't like giving that information out to strangers. They like to call this a form of "social DRM", although I believe a more appropriate term is "silly".
It would be very bad form for an application to keep user CC#s just sitting around on disk, so the Windows version of the Barnes & Noble Desktop Reader application (BDReader) just holds on to the generated key and not the source info. A wise decision, for which I congratulate them. It then stores this key in plain text in a sqlite3 database. An... interesting... decision, for which I thank them. Update: and then it turned out the key-generation algorithm was pretty easy too...
|
Software to remove DRM from B&N EPUB ebooks:
A Windows-only key-retrieval script: ignoblekey (version 2)
Code:
http://pastie.org/751573
An any-platform key-generation script: ignoblekeygen (version 1)
Code:
http://pastie.org/753985
And an any-platform book-decryption script: ignobleepub (version 1)
Code:
http://pastie.org/751366
You need the decryption script and one of either the key-retrieval or key-generation scripts. They produce the same output. The key-generator works on any platform. The Windows key-retrieval script can get access to your credit card (despite being an open-source script).
How to remove DRM protection from your B&N ADEPT EPUB files- Download
- Download Barnes and Noble Desktop Reader
- Download Python (use Python x32 on Windows x64)
- Download PyCrypto (Compatible with your Python version)
- Download DRM removal scripts: ignoblekeygen, ignobleepub
- Install
- Install B&N Desktop Reader
- Install Python THEN PyCrypto
- Download DRM protected EPUB books from B&N
- Generate your B&N EPUB key
- Go to Barnes and noble website.
- Log in and click on "My account".
- On the right click "Manage credit cards".
The name under the credit card # will be he name used with ignoblekeygen
- Open ignoblekeygen
- Paste that name into the field name.
- For credit card number use your full 16-digit card number that you have set as the Barnes and Noble default credit card (no spaces). The last few digit of this card are shown above name...
- Click generate and you should have your B&N EPUB key (bnepubkey.b64)
- If you get "Key cannot be null string" check over your name and cc settings.
- Decrypt EPUB
- Open ignobleepub
- For key open your previously generated (bnepubkey.b64)
- For input file go to (My documents/My Barnes and Noble ebooks/My email/) and choose your DRM protected epub file.
- Choose an output name and add the .epub extension.
- Click Decrypt
See also:
ebook DRM removal tools archive