8000 Issue 1635: Decypting PDF ebboks fixed by frickeo · Pull Request #1689 · apprenticeharper/DeDRM_tools · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

Issue 1635: Decypting PDF ebboks fixed #1689

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

Open
wants to merge 129 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
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
8000
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
33 changes: 0 additions & 33 deletions .github/ISSUE_TEMPLATE/QUESTION.md

This file was deleted.

41 changes: 41 additions & 0 deletions .github/ISSUE_TEMPLATE/QUESTION.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
name: Question
description: Questions for DeDRM Project
body:
- type: textarea
id: question
attributes:
label: Question / bug report
description: Please enter your question / your bug report.
- type: input
id: calibre-version
attributes:
label: Which version of Calibre are you running?
description: "Example: 5.32"
placeholder: "5.32"
validations:
required: true
- type: input
id: plugin-version
attributes:
label: Which version of the DeDRM plugin are you running?
description: "Example: v10.0.0"
placeholder: "v10.0.0"
validations:
required: true
- type: input
id: kindle-version
attributes:
label: If applicable, which version of the Kindle software are you running?
description: "Example: 1.24"
placeholder: "Leave empty if unrelated to Kindle books"
validations:
required: false
- type: textarea
id: log
attributes:
label: Log output
description: If applicable, please post your log output here - into the code block.
value: |
```log
Paste log output here.
```
39 changes: 0 additions & 39 deletions .github/workflows/Format.yaml

This file was deleted.

26 changes: 0 additions & 26 deletions .github/workflows/Lint.yaml

This file was deleted.

65 changes: 65 additions & 0 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
name: Package plugin
on:
push:
branches: [ master ]

jobs:
package:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2

- name: Package
run: python3 make_release.py

- name: Upload
uses: actions/upload-artifact@v2
with:
name: plugin
path: |
DeDRM_tools_*.zip
DeDRM_tools.zip

# - name: Delete old release
# uses: cb80/delrel@latest
# with:
# tag: autorelease
# token: ${{ github.token }}
#
# - name: Delete old tag
# uses: dev-drprasad/delete-tag-and-release@v1.0
# with:
# tag_name: autorelease
# github_token: ${{ github.token }}
# delete_release: true
#
# - name: Prepare release
# run: cp DeDRM_tools.zip DeDRM_alpha_${{ github.sha }}.zip
#
# - name: Auto-release
# id: autorelease
# uses: softprops/action-gh-release@v1
# with:
# tag_name: autorelease
# token: ${{ github.token }}
# name: Automatic alpha release with latest changes
# body: |
# This release is automatically generated by Github for each commit.
#
# This means, every time a change is made to this repo, this release will be updated to contain an untested copy of the plugin at that stage. This will contain the most up-to-date code, but it's not tested at all and may be broken.
#
# Last update based on Git commit ${{ github.sha }}.
# prerelease: true
# draft: true
# files: DeDRM_alpha_${{ github.sha }}.zip
#
# - name: Make release public
# uses: irongut/EditRelease@v1.2.0
# with:
# token: ${{ github.token }}
# id: ${{ steps.autorelease.outputs.id }}
# draft: false
# prerelease: true
#
#
8 changes: 8 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1 +1,9 @@
# Mac files
.DS_Store

# local test data
/user_data/

# Cache
/DeDRM_plugin/__pycache__
/DeDRM_plugin/standalone/__pycache__
6 changes: 3 additions & 3 deletions CALIBRE_CLI_INSTRUCTIONS.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,16 +13,16 @@ platforms.

#### Install plugins
- Download the DeDRM `.zip` archive from DeDRM_tools'
[latest release](https://github.com/apprenticeharper/DeDRM_tools/releases/latest).
[latest release](https://github.com/noDRM/DeDRM_tools/releases/latest).
Then unzip it.
- Add the DeDRM plugin to Calibre:
```
cd *the unzipped DeDRM_tools folder*
calibre-customize --add DeDRM_calibre_plugin/DeDRM_plugin.zip
calibre-customize --add DeDRM_plugin.zip
```
- Add the Obok plugin:
```
calibre-customize --add Obok_calibre_plugin/obok_plugin.zip
calibre-customize --add Obok_plugin.zip
```
#### Enter your keys
Expand Down
94 changes: 94 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,94 @@
# Changelog

List of changes since the fork of Apprentice Harper's repository:

## Fixes in v10.0.0 (2021-11-17):

- CI testing / linting removed as that always failed anyways. The CI now "just" packages the plugin.
- ~Support for the Readium LCP DRM (also known as "CARE DRM" or "TEA DRM"). This supports EPUB and PDF files. It does not yet support Readium LCPDF/LPF/LCPA/LCPAU/LCPDI files, as I don't have access to any of these. If you have an LCP-protected file in one of these formats that this plugin does not work with, please open [an issue](https://github.com/noDRM/DeDRM_tools/issues) and attach the file to the report.~ (removed due to a DMCA request, see #18 )
- Add new Github issue report form which forces the user to include stuff like their Calibre version to hopefully increase the quality of bug reports.
- Issues with PDF files in Calibre 5 should be fixed (merged [apprenticeharper/DeDRM_tools#1689](https://github.com/apprenticeharper/DeDRM_tools/pull/1689) ).
- Fixed tons of issues with the B&N PDF DRM removal script ignoblepdf.py. It looks like that has never been tested since the move to Python3. I have integrated the B&N-specific code into ineptpdf.py, the original ignoblepdf.py is now unused. Fairly untested as I don't have any PDFs with B&N DRM.
- Issues with Obok key retrieval fixed (merged [apprenticeharper/DeDRM_tools#1691](https://github.com/apprenticeharper/DeDRM_tools/pull/1691) ).
- Issues with obfuscated Adobe fonts fixed (fixes [apprenticeharper/DeDRM_tools#1828](https://github.com/apprenticeharper/DeDRM_tools/issues/1828) ).
- Deobfuscate font files in EPUBs by default (can be disabled in the plugin settings).
- The standalone adobekey.py script now includes the account UUID in the key file name.
- When extracting the default key from an ADE install, include the account UUID in the key name.
- Adobe key management window size increased to account for longer key names due to the UUID.
- Verify that the decrypted book key has the correct format. This makes it way less likely for issue [apprenticeharper/DeDRM_tools#1862](https://github.com/apprenticeharper/DeDRM_tools/issues/1862) to cause trouble.
- If the Adobe owner UUID of a book being imported happens to be included in a particular key's name, try this key first before trying all the others. This completely fixes [apprenticeharper/DeDRM_tools#1862](https://github.com/apprenticeharper/DeDRM_tools/issues/1862), but only if the key name contains the correct UUID (not always the case, especially for keys imported with older versions of the plugin). It also makes DRM removal faster as the plugin no longer has to attempt all possible keys.
- Remove some additional DRM remnants in Amazon MOBI files (merged [apprenticeharper/DeDRM_tools#23](https://github.com/apprenticeharper/DeDRM_tools/pull/23) ).
- Just in case it's necessary, added a setting to the B&N key generation script to optionally allow the user to select the old key generation algorithm. Who knows, they might want to remove DRM from old books with the old key scheme.
- Add a more verbose error message when trying to remove DRM from a book with the new, not-yet-cracked version of the Adobe ADEPT DRM.
- Added back support for Python2 (Calibre 2.0+). Only tested with ADEPT (PDF & EPUB) and Readium LCP so far, please open an issue if there's errors with other book types.
- Begin work on removing some kinds of watermarks from files after DRM removal. This isn't tested a lot, and is disabled by default. You can enable it in the plugin settings.
- If you're using the [ACSM Input Plugin / DeACSM](https://www.mobileread.com/forums/showthread.php?t=341975), the encryption key will automatically be extracted from that plugin if necessary.

## Fixes in v10.0.1 (2021-11-19):

- Hotfix update to fix broken EPUB DRM removal due to a typo.

## Fixes in v10.0.2 (2021-11-29):

- Fix Kindle for Mac key retrieval (merged [apprenticeharper/DeDRM_tools#1936](https://github.com/apprenticeharper/DeDRM_tools/pull/1936) ), fixing #1.
- Fix Adobe key retrieval in case the username has been changed (merged [apprenticeharper/DeDRM_tools#1946](https://github.com/apprenticeharper/DeDRM_tools/pull/1946) ). This should fix the error "failed to decrypt user key key".
- Fix small issue with elibri watermark removal.
- Adobe key name will now contain account email.

## Fixes in v10.0.3 (2022-07-13):

- Fix issue where importing a key from Adobe Digital Editions would fail in Python2 (Calibre < 5) if there were non-ASCII characters in the username.
- Add code to support importing multiple decryption keys from ADE.
- Improve epubtest.py to also detect Kobo & Apple DRM.
- ~Small updates to the LCP DRM error messages.~ (removed due to a DMCA request, see #18 ).
- Merge ignobleepub into ineptepub so there's no duplicate code.
- Support extracting the B&N / Nook key from the NOOK Microsoft Store application (based on [this script](https://github.com/noDRM/DeDRM_tools/discussions/9) by fesiwi).
- Support extracting the B&N / Nook key from a data dump of the NOOK Android application.
- Support adding an existing PassHash / B&N key base64 string without having to write it to a file first.
- Support extracting PassHash keys from Adobe Digital Editions.
- Fix a bug that might have stopped the eReader PDB DRM removal from working (untested, I don't have any PDB books)
- Fix a bug where the watermark removal code wouldn't run for DRM-free files.
- ineptpdf: Add code to plugin to support "Standard" (tested) and "Adobe.APS" (untested) encrypted PDFs using the ineptpdf implementation (PDF passwords can be entered in the plugin settings)
- ineptpdf: Support for decrypting PDF with owner password instead of user password.
- ineptpdf: Add function to return Filter name.
- ineptpdf: Support for V=5, R=5 and R=6 PDF files, and for AES256-encrypted PDFs.
- ineptpdf: Disable cross-reference streams in the output file. This may make PDFs slightly larger, but the current code for cross-reference streams seems to be buggy and sometimes creates corrupted PDFs.
- Drop support for importing key data from the ancient, pre "DeDRM" Calibre plugins ("Ignoble Epub DeDRM", "eReader PDB 2 PML" and "K4MobiDeDRM"). These are from 2011, I doubt anyone still has these installed, I can't even find a working link for these to test them. If you still have encryption keys in one of these plugins, you will need to update to DeDRM v10.0.2 or older (to convert the keys) before updating to DeDRM v10.0.3 or newer.
- Some Python3 bugfixes for Amazon books (merged #10 by ableeker).
- Fix a bug where extracting an Adobe key from ADE on Linux through Wine did fail when using the OpenSSL backend (instead of PyCrypto). See #13 and #14 for details, thanks acaloiaro for the bugfix.
- Fix IndexError when DeDRMing some Amazon eBooks.
- Add support for books with the new ADE3.0+ DRM by merging #48 by a980e066a01. Thanks a lot! (Also fixes #96 on MacOS)
- Remove OpenSSL support, now the plugin will always use the Python crypto libraries.
- Obok: Fix issues with invalid UTF-8 characters by merging #26 by baby-bell.
- ineptpdf: Fix broken V=3 key obfuscation algorithm.
- ineptpdf: (Hopefully) fix issues with some B&N PDF files.
- Fix broken Amazon K4PC key retrieval (fixes #38)
- Fix bug that corrupts output file for Print-Replica Amazon books (fixes #30).
- Fix Nook Study key retrieval code (partially fixes #50).
- Make the plugin work on Calibre 6 (Qt 6). (fixes #54 and #98) If you're running Calibre 6 and you notice any issues, please open a bug report.

## Fixes on master (not yet released):

- Fix a bug introduced with #48 that breaks DeDRM'ing on Calibre 4 (fixes #101).
- Fix some more Calibre-6 bugs in the Obok plugin (should fix #114).
- Fix a bug where invalid Adobe keys could cause the plugin to stop trying subsequent keys (partially fixes #109).
- Fix DRM removal sometimes resetting the ZIP's internal "external_attr" value on Calibre 5 and newer.
- Fix tons of PDF decryption issues (hopefully fixes #104 and other PDF-related issues).
- Small Python 2 / Calibre 4 bugfix for Obok.
- Removing ancient AlfCrypto machine code libraries, moving all encryption / decryption to Python code.
- General cleanup and removal of dead code.
- Fix a bug where ADE account keys weren't automatically imported from the DeACSM plugin when importing a PDF file.
- Re-enable Xrefs in exported PDF files since the file corruption bug is hopefully fixed. Please open bug reports if you encounter new issues with PDF files.
- Fix a bug that would sometimes cause corrupted keys to be added when adding them through the config dialog (fixes #145, #134, #119, #116, #115, #109).
- Update the README (fixes #136) to indicate that Apprentice Harper's version is no longer being updated.
- Fix a bug where PDFs with empty arrays (`<>`) in a PDF object failed to decrypt, fixes #183.
- Automatically strip whitespace from entered Amazon Kindle serial numbers, should fix #158.
- Obok: Add new setting option "Add new entry" for duplicate books to always add them to the Calibre database as a new book. Fixes #148.
- Obok: Fix where changing the Calibre UI language to some languages would cause the "duplicate book" setting to reset.
- Fix Python3 bug in stylexml2css.php script, fixes #232.
- PDF: Ignore invalid PDF objids unless the script is running in strict mode. Fixes some PDFs, apparently. Fixes #233.
- Bugfix: EPUBs with remaining content in the encryption.xml after decryption weren't written correctly.
- Support for Adobe's 'aes128-cbc-uncompressed' encryption method (fixes #242).
- Two bugfixes for Amazon DeDRM from Satuoni ( https://github.com/noDRM/DeDRM_tools/issues/315#issuecomment-1508305428 ) and andrewc12 ( https://github.com/andrewc12/DeDRM_tools/commit/d9233d61f00d4484235863969919059f4d0b2057 ) that might make the plugin work with newer versions.
- Fix font decryption not working with some books (fixes #347), thanks for the patch @bydioeds.
- Fix a couple unicode errors for Python2 in Kindle and Nook code.
Loading
0