パッケージマネージャーを使用して必要なプログラムをインストールする

パッケージマネージャーを使用して必要なプログラムをインストールする

Kindle ブックから DRM を削除する方法を知りたいです。Amazon から Kindle 電子書籍を購入したいと思っています。DRM を削除し、EPUB (iPhone に接続されたヘッドセットで聞けるように) と PDF 形式 (Ubuntu ベースのディストリビューションを使用して PDF リーダー (Okular) でストーリーを読みながら、本に注釈を付けられるように) に変換します。

DRM を解除するソフトウェアを探すのに 1 時間費やしましたが、内容が役に立たないページや信頼できないページへのリンクしか見つかりませんでした。

答え1

この法律性と倫理性については弁護士に任せますが、私の理解では、DRM を破ることは違法ですが、法的にアクセスする権利がある DRM 素材の単一のバックアップを作成することは合法です。

この質問の答えは、2 つの別々の作品を組み合わせることで見つかると私は信じています。

  1. まずこのパッケージ:口径
  2. このプラグインと組み合わせると:DRM解除

手順はプラグインのリンクに詳しく記載されています。

答え2

DRM の削除の合法性については、国によって異なるため、ここでは触れません。一部の国ではフェアユースに該当しますが、他の国では状況が曖昧で、さらに他の国では明らかに違法です。

Ubuntu 18.04 では次の手順がうまくいきました。

パッケージマネージャーを使用して必要なプログラムをインストールする

sudo apt-get install wine64
sudo apt-get install calibre
# sudo apt-get install winetricks # this is optional — see below

その他の必要なプログラムをダウンロードする

DeDRMプラグイン

wget https://github.com/apprenticeharper/DeDRM_tools/releases/download/v6.6.3/DeDRM_tools_6.6.3.zip

Kindle for PC バージョン 1.17

公式FAQ(スナップショット)最新バージョンへのリンク

最良の結果を得るには、古いバージョンの Kindle for PC (≤1.17) が必要です。(やや新しいバージョン (≥1.24) では、ダウンロードした書籍に最適ではない KFX ファイル形式が使用され、さらに新しいバージョンは DeDRM プラグインによって「利用」されることはありません。)

残念ながら、そのバージョンの Kindle for PC は Amazon の Web サイトから入手できなくなっています。そのため、ファイル名を google/duckduckgo で検索しKindleForPC-installer-1.17.44170.exe、怪しい Web サイトからダウンロードする必要があります。ダウンロードしたのが「オリジナル」のファイル (マルウェアが追加された修正版ではない) であることを確認するには、ファイルのハッシュをチェックする必要があります。(md5 は「壊れている」し、sha1 は部分的に「壊れている」ので、それらだけに頼ることはお勧めしません。)

sha256sum KindleForPC-installer-1.17.44170.exe | grep 14e0f0053f1276c0c7c446892dc170344f707fbfe99b6951762c120144163200

インターネット上の無作為の人物である私が正しいハッシュを教えてくれると信じられない場合は (信じる理由はありません)、上記の公式 FAQ を参照してください。結局のところ、DeDRM プラグインが悪意のあるものではないことをすでに信頼していることになります。(FAQ の sha256 ハッシュには、何らかの理由でスペースがあります。)

ワイントリック

Kindle for PC では winetricks を使用できません。これは、適切ではないバージョン 1.20 がインストールされるためです。

Kindle for PCをインストールして実行する

wine64 KindleForPC-installer-1.17.44170.exe

Amazon アカウントの詳細を入力し、関連する書籍を「デバイス」(つまり、コンピューター)などにダウンロードします。

Calibre DeDRMプラグインをインストールする

unzip DeDRM_tools_6.6.3.zip
calibre-customize --add DeDRM_calibre_plugin/DeDRM_plugin.zip

あるいは、解凍後、Calibre の標準 UI からインストールすることもできます。(環境設定 > 詳細 > プラグイン > ファイルからプラグインを読み込む)

Kindleキーを抽出する

WINE/Linux を使用している場合、DeDRM プラグインは、少し操作するだけでは「自動的に」キーを抽出しません。

DeDRM_calibre_plugin/DeDRM_plugin_ReadMe.txtどのように進めるかについての提案がいくつか含まれています。私の場合、部分的にはうまくいきましたが、完全にはうまくいきませんでした。

Pythonをインストールする(Wine内)

DRMキーを抽出するには、Pythonスクリプト(calibreプラグインによって提供される)を実行する必要があります。内でwine は (理想的には) calibre プラグイン自体によって実行されます。したがって、wine 環境内に python をインストールする必要があります。

ここでは 2 つの選択肢があります。winetricks を使用するか、公式の Python Web サイトから手動でインストールします。

手動インストール(現在は推奨)

wget https://www.python.org/ftp/python/2.7.13/python-2.7.13.msi
msiexec /i python-2.7.13.msi ALLUSERS=1

DeDRM_calibre_plugin/DeDRM_plugin_ReadMe.txtこれは、 という重要な追加によって、現在 の指示と異なることに注意してくださいALLUSERS=1

Winetricks (新しいバージョンの Winetricks をお持ちでない場合は推奨されません)

18.04 で Ubuntu のリポジトリからインストールされた winetricks を使用している場合、残念ながら python-2.6 ( でインストール可能winetricks python26) のみが利用可能です。calibre プラグインは現在、標準の python-2.7 インストールへのパスをハードコードしているため、最適ではありません。したがって、calibre プラグインにパッチを適用するか、wine python スクリプトを自分で実行して復号化キーをコピーする必要があります。

winetricks の新しいバージョンをお持ちの場合は、python-2.7 をインストールできます。

winetricks python27

Wine Pythonスクリプトを実行する

Calibre プラグインがスクリプトを実行するには、Wine のインストール場所 (いわゆる「WINEPREFIX」) をプラグインに伝える必要があります。デフォルトでは、wineprefix は です~/.wine/。Calibre で、環境設定 > 詳細 > プラグイン > ファイル タイプ プラグイン > DeDRM > プラグインのカスタマイズ > Kindle for PC および Adob​​e Digital Editions に移動して、calibre プラグインWINEPREFIXに を伝えることができます。「+」ボタンを押してスクリプトの実行を促すことができます。そうしないと、Kindle DRM で本を初めて追加しようとしたときにスクリプトが実行されます。

これで完了です。calibre に本を追加すると、DRM が自動的に削除されます。または、私の冗長な説明のほとんどを削除した、以下の (ほぼ) CLI バージョンを参照することもできます。

(ほぼ)純粋なコマンドラインバージョン

これをすべて一度にコピーして貼り付けないでください。うまくいきません。いくつかの手順では人間の介入が必要です。

sudo apt-get install wine64
sudo apt-get install calibre

mkdir -p ~/Downloads/kindle_dedrm/
cd ~/Downloads/kindle_dedrm/

# somehow get KindleForPC-installer-1.17.44170.exe
# check its hash
sha256sum KindleForPC-installer-1.17.44170.exe | grep 14e0f0053f1276c0c7c446892dc170344f707fbfe99b6951762c120144163200

wine64 ~/Downloads/kindle_dedrm/KindleForPC-installer-1.17.44170.exe &

# Enter your amazon account details, download your relevant books to the device etc.

wget https://github.com/apprenticeharper/DeDRM_tools/releases/download/v6.6.3/DeDRM_tools_6.6.3.zip
unzip DeDRM_tools_6.6.3.zip
# Install plugin (could also use Calibre's GUI)
calibre-customize --add DeDRM_calibre_plugin/DeDRM_plugin.zip

wget https://www.python.org/ftp/python/2.7.13/python-2.7.13.msi
msiexec /i python-2.7.13.msi ALLUSERS=1

# Configure the calibre dedrm plugin with the correct wineprefix
# (could also use Calibre's GUI)
# (could also save it to a file and run, say,
# python add_wine_prefix_to_dedrm_config.py #)
python -c '
import json
import os

home = os.path.expanduser("~")
file = open(home + "/.config/calibre/plugins/dedrm.json", "r+")

dedrm_config = json.load(file)

dedrm_config["kindlewineprefix"] = home + "/.wine/"

file.seek(0)
json.dump(dedrm_config, file)
file.truncate()
file.close()
'

# Add all your Kindle books to the Calibre Library for automatic processing
calibredb add ~/Documents/My\ Kindle\ Content/*.azw --with-library="Calibre Library"
## (Optionally) list your books
# calibredb list --with-library="Calibre Library"
## (Optionally) export the first book
# calibredb export 1 --with-library="Calibre Library"
## (Optionally) export all your books
# calibredb export --all --with-library="Calibre Library"

答え3

macOSの場合

  1. 新しく購入した本を「USB経由でダウンロードして転送」することができなかったので、Kindle for Macを1.31にダウングレードする必要がありました。
  2. chmod を使用して Kindle のアップデートを無効にします。Kindle の設定でチェックを外しても機能しません。 chmod 000 ~/Library/Application\ Support/Kindle/updates
  3. Kindleを閉じてkfxを無効にする chmod -x /Applications/Kindle.app/Contents/MacOS/renderer-test
  4. Kindleを再度開き、本をダウンロードします。
  5. Calibreプラグインをインストールします:
  6. 進捗情報を確認するには、calibre を閉じて CLI から追加します。
% cd /Applications/calibre.app/Contents/MacOS
% calibredb add /Users/rfrolow/Library/Application\ Support/Kindle/My\ Kindle\ Content/B01CLR25ZW_EBOK/B01CLR25ZW_EBOK.azw
Gather KFX-ZIP (from KFX Input) 1.50.0: Importing /Users/rfrolow/Library/Application Support/Kindle/My Kindle Content/B01CLR25ZW_EBOK/B01CLR25ZW_EBOK.azw
Gather KFX-ZIP (from KFX Input): File is not KFX format
DeDRM v10.0.3: Trying to decrypt B01CLR25ZW_EBOK.azw
Using Library AlfCrypto Python
MobiDeDrm v1.1.
Copyright © 2008-2020 The Dark Reverser, Apprentice Harper et al.
Decrypting Mobipocket 4 ebook: 70 Best Recipes For Health And Weight Loss: The Guerrilla Diet Way
Got DSN key from database kindle_key_1672926759_1
Got DSN key from database kindle_key_1672926759_2
Found 4 keys to try after 0.2 seconds
Crypto Type is: 2
File is encoded with PID JD7sabsBM2.
Decrypting. Please wait . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . done
Decryption succeeded after 184.7 seconds
DeDRM v10.0.3: Finished after 184.8 seconds
Added book ids: 1161
  1. Calibreでは別のプラグインで解凍する必要があるazw4ファイルが表示されました

関連情報