読者サポート

Pythonでいかにして暗号を破るか古典暗号解読プログラムを自作する本

著者:
Al Sweigart/翻訳:IPUSIRON
定価:
3,960円(本体価格 3,600円)
発売日:
2020年12月22日

ダウンロード

こちらでは、本書で解説したソースコード一式、および練習問題とその解答をダウンロードしていただけます。

下記の説明をよくご確認のうえ、ご利用ください。

ソースコード

「ソースコード一式」はZIPでアーカイブされており、pyperclip.pyが含まれています。各ソースコードのコメントは、日本語に翻訳されています。各ソースコードのライセンスは、オリジナルのソースコードのライセンスに準じます。オリジナルのソースコードは、著者のサイトから入手可能です。著者が提供するオンライン差分ツールを利用する場合は、オリジナルのソースコードの方が、都合がよい場合がございます。

練習問題と解答

練習問題とその解答はPDF形式で配布します。著者の解答を補筆しているため、著者の解答とは異なる点にご注意ください。また、解答の理解を補足するPythonプログラムを同梱しています。解答ファイルの閲覧にはAdobe Acrobat Readerなどのソフトウェアが必要です。オリジナルの問題は原著出版社のサイト、あるいはオリジナルのソースコード一式に含まれるSolutionsForPracticeProblems.htmlで確認できます。

正誤情報

お買い上げいただき、誠にありがとうございます。
本書に関して、以下の訂正がございます。
ご不便をお掛けし、申し訳ございません。

初版第1刷に関する訂正情報

047ページ 問3の最後の行

  • 変更前 spam = 421
  • 変更後 spam = 42

145ページ 11行目

  • 変更前 6. 一番上の行から始めて、~
  • 変更後 5. 一番上の行から始めて、~

207ページ ページ下部より2行目(実行例)

  • 変更前 Age 99
  • 変更後 age 99

274ページ ページ下部より4~3行目

  • 変更前 例えば、Pythonで5の2乗は2 ** 5になります。
  • 変更後 例えば、Pythonで2の5乗は2 ** 5になります。

283ページ simpleSubCipher.pyの14行目

  • 変更前 if keyIsValid(myKey):
  • 変更後 if not keyIsValid(myKey):

342ページ ページ下部より2行目(Pythonコード)
以下の■は半角スペースに読み替えてください。正しいプログラムはStringTest.zip(288バイト)でご確認ください。実行結果の表示には1分程度の時間を要します。なお、ソースコード一式内のStringTest.pyに変更はありません。

  • 変更前 ■■building = ''.join(building)
  • 変更後 ■■■■building = ''.join(building)

355ページ 上から8行目

  • 変更前 ければなりません。こサブ鍵のすべての組み合わせを考えると、…
  • 変更後 ければなりません。サブ鍵のすべての組み合わせを考えると、…

373ページ 問4の問題文

  • 変更前 変数spamに辞書が含まれている場合、辞書の値のリストはどのようにして取得できますか?
  • 変更後 変数spamが辞書を含むとき、辞書中のキーのリスト値をどのようにして取得できますか?

377ページ vigenereDictionaryHacker.pyの23行目

  • 変更前 for word in lines:
  • 変更後 for word in words:

448ページ 下から1行目

  • 変更前 挙げてください?
  • 変更後 挙げてください。

サポートページを探す

タイトル、著者名、ISBNなどで検索してください。

※書籍によっては、サポートページがない場合もございます。ご了承ください。

書籍についてのお問い合わせ

各サポートページで問題が解決しない場合は、お問い合わせページよりご連絡ください。

お問い合わせ