Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Issue 1635: Decypting PDF ebboks fixed #1689

Open
wants to merge 129 commits into
base: master
Choose a base branch
from
Open
Changes from 1 commit
Commits
Show all changes
129 commits
Select commit Hold shift + click to select a range
969273b
Issue 1635: Decypting PDF ebboks fixed
May 1, 2021
007a8e8
Issue 1635: Decypting PDF ebboks fixed
May 1, 2021
8e10b09
More PDF fixes
noDRM Nov 15, 2021
0005bba
Remove broken CI
noDRM Nov 15, 2021
14947cd
Update obok.py
journeyman88 Apr 26, 2021
066e613
Add UUID to adobekey DER file names
noDRM Nov 15, 2021
0313088
Make keys fit into listbox
noDRM Nov 15, 2021
95fc924
Update Readme
noDRM Nov 15, 2021
969fe52
Improve key detection
noDRM Nov 15, 2021
cc17d9c
Improve key detection for PDFs, too
noDRM Nov 15, 2021
8cd3523
Remove library book block
noDRM Nov 15, 2021
7058fbe
Added a code to remove Kindle watermark.
Apr 30, 2015
eae512d
Remove library flag from MOBI book
noDRM Nov 15, 2021
4a58f70
Add old B&N algorihm (optional) just in case it's needed
noDRM Nov 15, 2021
be57bcc
Enable issue forms
noDRM Nov 15, 2021
77dcc46
Fix for decryption check
ableeker Jun 28, 2021
30425c1
FAQ: note that Kindle 1.17 on Mac is 32-bit
belm0 May 16, 2021
17ccc4d
Add IETF and Adobe font deobfuscation code
noDRM Nov 15, 2021
40a8e43
No longer break obfuscated fonts on DRM removal
noDRM Nov 15, 2021
88dd135
Add useful error message for the new, uncracked ADEPT DRM
noDRM Nov 15, 2021
90910ab
Add back Python2 support (ADEPT)
noDRM Nov 16, 2021
b4c0e33
Fix ADE key import through plugin settings
noDRM Nov 16, 2021
9c41716
Add B&N PDF DeDRM (untested), match UUID for Adobe PDFs
noDRM Nov 16, 2021
39f8595
Remove CDP watermark from EPUBs
noDRM Nov 16, 2021
f20bede
Auto-import keys from DeACSM plugin
noDRM Nov 16, 2021
5d10420
Fix font deobfuscation for Python 2
noDRM Nov 16, 2021
d9353bd
Obok plugin cleanup
noDRM Nov 16, 2021
1545d76
Support Python 2.7 and Python 3 winreg imports on Windows
tracyde Feb 25, 2021
1b391da
Add some more watermark removal code
noDRM Nov 17, 2021
05e0d0b
Make CI auto-package the plugin
noDRM Nov 17, 2021
a44b50d
LCP support
noDRM Nov 17, 2021
2edde54
Fixes a bug that sometimes caused the plugin to fail
noDRM Nov 19, 2021
3343707
Fix typo in kindlekey.py that broke Mac version
Daniele Nov 21, 2021
e9a6e80
Fix username code for ADE key retrieval
Leseratte10 Nov 28, 2021
ca6ec8f
Allow packaging without version number
noDRM Nov 29, 2021
09a34cf
Fix watermark stuff
noDRM Nov 29, 2021
d05594d
Update to v10.0.2
noDRM Nov 29, 2021
78ac98f
Cleanup
noDRM Dec 20, 2021
cdd6402
Fix username decryption with unicode chars in Python2
noDRM Dec 20, 2021
3eb4eab
Support importing multiple keys from ADE
noDRM Dec 20, 2021
a16e66a
Detect Kobo & Apple DRM in epubtest.py
noDRM Dec 20, 2021
db71d35
Update changelog
noDRM Dec 20, 2021
3b9c201
Lots of B&N updates
noDRM Dec 23, 2021
620c90b
Update PassHash documentation
noDRM Dec 23, 2021
8986855
Support for extracting PassHashes from ADE
noDRM Dec 24, 2021
1958989
Key retrieval updates
noDRM Dec 25, 2021
96cf14f
Edit .gitignore
noDRM Dec 27, 2021
586609b
Remove ancient code to import keys from ancient plugins
noDRM Dec 27, 2021
23a4542
Update watermark code
noDRM Dec 27, 2021
fbe9b5e
Ton of PDF DeDRM updates
noDRM Dec 27, 2021
9c6f4ec
Fix broken key management
noDRM Dec 27, 2021
c11db59
Update Changelog
noDRM Dec 27, 2021
80f511a
Correct user pass padding, fix PDFStream export
noDRM Dec 27, 2021
9c40b3c
Cleanup
noDRM Dec 29, 2021
dbf4b54
Begin work on standalone version
noDRM Dec 29, 2021
b11aadc
Bugfixes in standalone code for Calibre < 5 / Python 2
noDRM Dec 29, 2021
e0fcd99
Add passhash interface to CLI
noDRM Dec 29, 2021
5ace15e
Python 3 fixes
ableeker Dec 28, 2021
a275d5d
More work on standalone version, fix plugin
noDRM Jan 1, 2022
d5473f1
Try to fix B&N issues
noDRM Jan 2, 2022
b84cf9a
Fix libcrypto DLL path search (see #13 and #14)
noDRM Jan 2, 2022
b2b5553
Fix FileNotFoundError during PassHash handling
noDRM Jan 2, 2022
f17b255
Add "MemoryError" to FAQ
noDRM Jan 2, 2022
5b3e3e4
Make plugin work in Calibre 6 (Qt 6)
noDRM Jan 2, 2022
e54bb3f
Fix IndexError in mobidedrm.py
noDRM Jan 4, 2022
2b46f61
Add empty placeholder file for LCP
noDRM Jan 11, 2022
0341379
Remove LCP references from Readme
noDRM Jan 11, 2022
f4634b5
Update FAQ
noDRM Jan 11, 2022
a1dd63a
Remove OpenSSL support; only support PyCryptodome
a980e066a01 Feb 22, 2022
c5aebcc
Add support for "hardened" Adobe DRM
a980e066a01 Feb 22, 2022
1f13ae0
Obok: Fix invalid UTF-8 causing UI to not open
baby-bell Jan 30, 2022
93ff0aa
Update FAQs
noDRM Mar 18, 2022
227bda1
Try to fix V3 PDF files
noDRM Mar 18, 2022
82a698e
Debugging for __version issue
noDRM Mar 18, 2022
a4689f6
Make B&N plugin skip invalid hashes in Windows app
noDRM Mar 18, 2022
263cc1d
Improve error message
noDRM Mar 19, 2022
cf095a4
Update plugin readme
noDRM Mar 19, 2022
b283777
Add back unpad to fix Python2 support
noDRM Mar 19, 2022
bb17068
(Hopefully) fix WineGetKeys for Kindle
noDRM Mar 19, 2022
e4fe032
Some untested Python2 Kindle bugfixes
noDRM Mar 19, 2022
7eb8f07
Bugfix for Nook PDFs?
noDRM Mar 19, 2022
2d51005
Fix print-replica Amazon books
noDRM Mar 19, 2022
726d722
Hopefully fix Kindle books
noDRM Mar 20, 2022
76ce6d9
Fix Kindle for real
noDRM Mar 20, 2022
dcbb377
Fix Nook study key retrieval
noDRM Mar 22, 2022
012ff53
fix the regular expression
sweetStreet Apr 15, 2022
c12d214
Fix Obok plugin on Calibre 6 (#98)
noDRM Jul 13, 2022
fed8bb7
Add some Python2 compat code I forgot to add earlier
noDRM Jul 13, 2022
077e8f5
Prepare release v10.0.3
noDRM Jul 13, 2022
c15135b
Fix RSA.import_key (fixes #101)
noDRM Jul 16, 2022
59839ae
Fix Calibre 6 issue in Obok plugin
noDRM Aug 3, 2022
9a11f48
Fix plugin crash with invalid ADE key
noDRM Aug 3, 2022
80cbaa4
Fix ZIP attribute "external_attr" getting reset
noDRM Aug 6, 2022
41df9ec
Fix PDF corruption in Calibre 4 (#104)
noDRM Aug 6, 2022
1cc5d38
Delete unused files
noDRM Aug 6, 2022
b404605
Another Python2 Bugfix for Obok
noDRM Aug 6, 2022
de23b5c
Move SafeUnbuffered to own Python file
noDRM Aug 6, 2022
9276d77
Couple Python 2 fixes in (unsupported) standalone scripts
noDRM Aug 6, 2022
410e086
Remove AlfCrypto libraries and perform everything in Python
noDRM Aug 6, 2022
a0bb84f
Move unicode_argv to its own file
noDRM Aug 6, 2022
dfa247b
Cleanup
noDRM Aug 6, 2022
ca6d30b
More stuff I missed
noDRM Aug 6, 2022
b12e567
Cleanup / SafeUnbuffered bugfix
noDRM Aug 7, 2022
52cf3fa
Fix DeACSM import for PDF files
noDRM Aug 7, 2022
88b0966
Fix tons of PDF-related issues
noDRM Aug 7, 2022
21281ba
fix 2 spelling errors in FAQs.md
RolandWH Aug 9, 2022
2d4c5d2
Fix key import sometimes generating corrupted keys.
noDRM Sep 10, 2022
eb45c71
Cleanup
noDRM Sep 10, 2022
1cc245b
Update README, fixes #136
noDRM Sep 10, 2022
6c8051e
Update changelog
noDRM Sep 10, 2022
06648ee
Add support for empty arrays (<>) in PDF objects. Fixes #183.
noDRM Oct 17, 2022
06df18b
Strip whitespace from Kindle serials (#158)
noDRM Oct 19, 2022
e16748e
Untested code for the Obok plugin to allow adding duplicate books.
noDRM Oct 19, 2022
e726be2
Merge remote-tracking branch 'upstream/master' into master
Nov 20, 2022
901a6c0
Fix exception in error logging in ineptpdf
noDRM Dec 23, 2022
a30405b
Fix Python3 bug in stylexml2css.py, fixes #232
noDRM Dec 23, 2022
a711954
PDF: Ignore invalid objid in non-strict mode, fixes #233
noDRM Dec 29, 2022
08e7ac7
Update CHANGELOG
noDRM Dec 29, 2022
3151dbb
Try fixing a Python2 bug in the Obok plugin (#235)
noDRM Dec 29, 2022
3c12806
Fix issue with remaining data in encryption.xml
noDRM Jan 6, 2023
fb8b003
Support for Adobe's 'aes128-cbc-uncompressed' encryption (see #242)
noDRM Jan 6, 2023
740b465
Try to add support for new K4PC
noDRM Jun 23, 2023
a553a71
Fix font decryption with multiple IDs (#347)
noDRM Jun 23, 2023
f86cff2
Fix python2 issues in Kindle and Nook code (#355)
noDRM Jun 24, 2023
133e67f
Added fix for padding being correct on accident
noDRM Jun 25, 2023
abc5de0
Added several more scramble functions to Kindle decrypt
Satsuoni Jun 25, 2023
9ae77c4
Update CI to create an automatic beta release
noDRM Jun 25, 2023
815f880
Disable auto-prerelease again (#358)
noDRM Jun 25, 2023
8c4604a
Merge remote-tracking branch 'upstream/master'
Jul 12, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions DeDRM_plugin/ineptpdf.py
Original file line number Diff line number Diff line change
Expand Up @@ -1204,7 +1204,7 @@ def decode(self):
for i in range(0, len(data), columns+1):
pred = data[i]
ent1 = data[i+1:i+1+columns]
if pred == b'\x02':
if pred == 2:
ent1 = b''.join(bytes([(a+b) & 255]) \
for (a,b) in zip(ent0,ent1))
buf += ent1
Expand Down Expand Up @@ -1349,8 +1349,8 @@ def load(self, parser, debug=0):
raise PDFNoValidXRef('Invalid PDF stream spec.')
size = stream.dic['Size']
index = stream.dic.get('Index', (0,size))
self.index = zip(itertools.islice(index, 0, None, 2),
itertools.islice(index, 1, None, 2))
self.index = list(zip(itertools.islice(index, 0, None, 2),
itertools.islice(index, 1, None, 2)))
(self.fl1, self.fl2, self.fl3) = stream.dic['W']
self.data = stream.get_data()
self.entlen = self.fl1+self.fl2+self.fl3
Expand Down