cygwinでk4mobidedrm.py

[DeDRM_tools_6.5.5/DeDRM_calibre_plugin/DeDRM_plugin]./k4mobidedrm.py -k kindlekey1.k4i B0xxxxxx_EBOK.azw  .
AlfCrypto not found. Using python PC1 implementation.
Traceback (most recent call last):
  File "./k4mobidedrm.py", line 88, in 
    import topazextract
  File "/cygdrive/d/epub/DeDRM_tools_6.5.5/DeDRM_calibre_plugin/DeDRM_plugin/topazextract.py", line 19, in 
    from alfcrypto import Topaz_Cipher
ImportError: dynamic module does not define init function (initalfcrypto)

となり元のままでは動きません。alfcrypto.pyでなくalfcrypto.dllが読み込まれているようです。
alfcrypto.dll -> alfcrypto32.dll に名前を変更します。
alfcrypto_src.zipを解凍して、cygwin上でdllを作成して、名前をalfcrypto_cygwin.dllにします。
上記修正を反映させるためにalfcrypto.pyを修正

    elif sys.platform.startswith('cygwin'):
        name_of_lib = 'alfcrypto_cygwin.dll'
    elif sys.platform.startswith('win'):
        if pointer_size == 4:
            name_of_lib = 'alfcrypto32.dll'
        else:
            name_of_lib = 'alfcrypto64.dll'

試してみます。

[DeDRM_tools_6.5.5/DeDRM_calibre_plugin/DeDRM_plugin]./k4mobidedrm.py -a map_data_storage.db B0xxxxxx_EBOK.prc .
Using Library AlfCrypto Python
K4MobiDeDrm v5.5.
Copyright c 2008-2017 Apprentice Harper et al.
MobiDeDrm v0.42.
Copyright c 2008-2017 The Dark Reverser, Apprentice Harper et al.
Decrypting Kindle Format 8 ebook: 
Found 10 keys to try after 0.7 seconds
Crypto Type is: 2
File is encoded with PID aYLCZVB7TF.
Decrypting. Please wait . . . done
Decryption succeeded after 0.8 seconds
Saved decrypted book B0xxxxxx_EBOK_nodrm after 0.9 seconds

無事動きました。
-aオプションは
[ -a <AmazonSecureStorage.xml|backup.ab> ]
と表示されますが、2つとも駄目でmap_data_storage.dbで動作しました。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です