noDRM / DeDRM_tools

DeDRM tools for ebooks
7.05k stars 316 forks source link

Can't remove DRM from Adobe PDF #299

Open Deyce1988 opened 1 year ago

Deyce1988 commented 1 year ago

Calibre Version: 64bit, 6.14.0 DeDRM Tools: 10.0.3 Windows 11 64 bit

Book is loaned from a library and downloaded with ADE 4.5.11, authorized PC.

Error Message is as follows: DeDRM v10.0.3: Trying to decrypt Examplebook.pdf DeDRM v10.0.3: Examplebook.pdf is a PDF ebook with encryption EBX_HANDLER DeDRM v10.0.3: Examplebook.pdf is a PDF ebook (EBX) for UUID a68d11d6-652f-4cec-8f55-0736894efa1e DeDRM v10.0.3: Looking for new default Adobe Digital Editions Keys after 0.2 seconds DeDRM v10.0.3: Exception when getting default Adobe Key after 0.2 seconds Traceback (most recent call last): File "calibre_plugins.dedrm.init", line 753, in PDFIneptDecrypt File "C:\Users...\AppData\Roaming\calibre\plugins\DeDRM.zip\adobekey.py", line 347, in adeptkeys File "C:\Users...\AppData\Roaming\calibre\plugins\DeDRM.zip\adobekey.py", line 327, in CryptUnprotectData adobekey.ADEPTError: Failed to decrypt user key key (sic) DeDRM v10.0.3: Finished after 0.4 seconds Syntax Error: Couldn't find the 'EBX_HANDLER' security handler pdfinfo errored out with return code: 1 Traceback (most recent call last): File "calibre\customize\ui.py", line 469, in get_file_type_metadata File "calibre\customize\builtins.py", line 324, in get_metadata File "calibre\ebooks\metadata\pdf.py", line 124, in get_metadata ValueError: Could not read info dict from PDF

Thank you.

ElleKayEm commented 1 year ago

Is ADE that was used to download the book on the same machine and user as calibre with DeDRM? Is ADE authorized with your Adobe ID? Have you been able to decrypt other Adobe DRM books?

Deyce1988 commented 1 year ago

Yes. Ade and Calibre are in the same User Account. And ADE is authorized with my Adobe ID. Didn't try other books.

romad275 commented 1 year ago

"Book is loaned from a library …” Since you don’t own the book, the DRM can’t be removed is the most likely reason.

Sincerely, Dennis B. Swaney

Cogito Ergo Mac

On 11Mar23, at 6:39 , Deyce1988 @.***> wrote:

Book is loaned from a library a

ElleKayEm commented 1 year ago

@romad275 Although that's a good reason not to decrypt it, it doesn't mean you can't.

@Deyce1988 I don't know why, but DeDRM isn't decrypting your Adobe key.

romad275 commented 1 year ago

Ah, so the tools no longer have that limitation? I’m not sure that is a good idea.

Sincerely, Dennis B. Swaney

Cogito Ergo Mac

On 11Mar23, at 8:33 , ElleKayEm @.***> wrote:

@romad275 Although that's a good reason not to decrypt it, it doesn't mean you can't.

@Deyce1988 I don't know why, but DeDRM isn't decrypting your Adobe key.

— Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you were mentioned.

ElleKayEm commented 1 year ago

@romad275 I agree, but, yes, noDRM removed those blocks.

Deyce1988 commented 1 year ago

Well, the thing is, I am visually impaired and the Ebook Software of Adobe and Amazon are almost inaccessible. That's the reason I have to decrypt to be able to use the electronic library I pay for. But I also need to dedrm Kindles, which is also not that easy. E-Books would be a big advance for people with visual Impairment if only the Reading Software would be more accessible.

ElleKayEm commented 1 year ago

@Deyce1988 As I said, I don't know why it isn't working in this case, but being a library book isn't the issue. Maybe someone else will have an answer.

Kaetrin commented 1 year ago

I'm having an issue with deDRM for PDFs too. Epubs are fine and decrypt from Adobe DE but not PDFs for some reason. I get the following message:

calibre, version 6.13.0 ERROR: Loading book failed: Failed to open the book at E:\Calibre\BOOK.pdf. Click "Show details" for more info.

Failed to convert book: E:\Calibre\BOOK.pdf with error: Traceback (most recent call last): File "calibre\customize\ui.py", line 436, in get_file_type_metadata File "calibre\customize\builtins.py", line 323, in get_metadata File "calibre\ebooks\metadata\pdf.py", line 124, in get_metadata ValueError: Could not read info dict from PDF DeDRM v7.2.1: Trying to decrypt BOOK.pdf DeDRM v7.2.1: BOOK.pdf is a PDF ebook DeDRM v7.2.1: Trying Encryption key adobekey_1 error writing pdf: max() arg is an empty sequence DeDRM v7.2.1: Failed to decrypt with key adobekey_1 after 0.1 seconds DeDRM v7.2.1: Looking for new default Adobe Digital Editions Keys after 0.1 seconds Found 1 keys DeDRM v7.2.1: Trying a new default key error writing pdf: max() arg is an empty sequence DeDRM v7.2.1: Failed to decrypt with new default key after 0.1 seconds DeDRM v7.2.1: Ultimately failed to decrypt after 0.1 seconds. Read the FAQs at Harper's repository: https://github.com/apprenticeharper/DeDRM_tools/blob/master/FAQs.md Running file type plugin DeDRM failed with traceback: Traceback (most recent call last): File "calibre\customize\ui.py", line 178, in _run_filetype_plugins File "calibre_plugins.dedrm.init", line 640, in run File "calibre_plugins.dedrm.init", line 515, in PDFDecrypt calibre_plugins.dedrm.DeDRMError: DeDRM v7.2.1: Ultimately failed to decrypt after 0.1 seconds. Read the FAQs at Harper's repository: https://github.com/apprenticeharper/DeDRM_tools/blob/master/FAQs.md Syntax Error: Couldn't find the 'EBX_HANDLER' security handler

pdfinfo errored out with return code: 1 InputFormatPlugin: PDF Input running on E:\Calibre\BOOK.pdf Failed to run pipe worker with command: from calibre.srv.render_book import viewer_main; viewer_main() Traceback (most recent call last): File "runpy.py", line 196, in _run_module_as_main File "runpy.py", line 86, in _run_code File "site.py", line 83, in File "site.py", line 78, in main File "site.py", line 50, in run_entry_point File "calibre\utils\ipc\worker.py", line 196, in main File "", line 1, in File "calibre\srv\render_book.py", line 821, in viewer_main File "calibre\srv\render_book.py", line 812, in render_for_viewer File "calibre\srv\render_book.py", line 789, in render File "calibre\ebooks\oeb\iterator\book.py", line 62, in extract_book File "calibre\customize\conversion.py", line 242, in call File "calibre\ebooks\conversion\plugins\pdf_input.py", line 51, in convert File "calibre\ebooks\pdf\pdftohtml.py", line 83, in pdftohtml calibre.ebooks.ConversionError: pdftohtml failed with return code: 1 Syntax Error: Couldn't find the 'EBX_HANDLER' security handler Exception ignored in: <function NativeFunction.del at 0x000002AE4AF320E0> Traceback (most recent call last): File "calibre_plugins.dedrm.adobekey", line 268, in del TypeError: 'NoneType' object is not callable Exception ignored in: <function NativeFunction.del at 0x000002AE4AF320E0> Traceback (most recent call last): File "calibre_plugins.dedrm.adobekey", line 268, in del TypeError: 'NoneType' object is not callable

Edited to add: My Adobe DE account is authorised on my PC, I'm using version 2.0, Calibre is on the same PC. I just double checked and I can successfully import and strip drm from epub books from the same vendor but it's not working for pdfs.

(Not a library book by the way).

Any suggestions?

ElleKayEm commented 1 year ago

Update to DeDRM 10.0.3.

Kaetrin commented 1 year ago

Thank you - where do I find it?

I found a file and downloaded it but I get the following error message:

calibre, version 6.14.1 ERROR: Unhandled exception: InvalidPlugin:The plugin in 'C:\Users\User\Downloads\DeDRM_tools-master.zip' is invalid. It does not contain a top-level init.py file

calibre 6.14.1 embedded-python: True Windows-10-10.0.22621-SP0 Windows ('64bit', 'WindowsPE') ('Windows', '10', '10.0.22621') Python 3.10.1 Windows: ('10', '10.0.22621', 'SP0', 'Multiprocessor Free') Interface language: None Successfully initialized third party plugins: DeDRM (7, 2, 1) && KindleUnpack - The Plugin (0, 83, 1) Traceback (most recent call last): File "calibre\gui2\preferences\plugins.py", line 325, in add_plugin File "calibre\customize\ui.py", line 513, in add_plugin File "calibre\customize\ui.py", line 64, in load_plugin File "calibre\customize\zipplugin.py", line 298, in load File "calibre\customize\zipplugin.py", line 393, in _locate_code calibre.customize.InvalidPlugin: The plugin in 'C:\Users\User\Downloads\DeDRM_tools-master.zip' is invalid. It does not contain a top-level init.py file

I'm not sure it's the right file?

ElleKayEm commented 1 year ago

Download DeDRM_tools_10.0.3.zip from here: https://github.com/noDRM/DeDRM_tools/releases/tag/v10.0.3

Unzip it and load DeDRM_plugin.zip.

Kaetrin commented 1 year ago

Thank you so much!