Hacking Secret Ciphers with Python


"Hacking Secret Ciphers with Python", Al Sweigart, 2013
http://inventwithpython.com/hacking/
CC BY-NC-SA 3.0 US

ABOUT THIS BOOK
There are many books that teach beginners how to write secret messages using ciphers. There are a couple books that teach beginners how to hack ciphers. As far as I can tell, there are no books to teach beginners how to write programs to hack ciphers. This book fills that gap.

This book is for complete beginners who do not know anything about encryption, hacking, or cryptography. The ciphers in this book (except for the RSA cipher in the last chapter) are all centuries old, and modern computers now have the computational power to hack their encrypted messages. No modern organization or individuals use these ciphers anymore. As such, there’s no reasonable context in which you could get into legal trouble for the information in this book.

This book is for complete beginners who have never programmed before. This book teaches basic programming concepts with the Python programming language. Python is the best language for beginners to learn programming: it is simple and readable yet also a powerful programming language used by professional software developers. The Python software can be downloaded for free from http://python.org and runs on Linux, Windows, OS X, and the Raspberry Pi.
(後略)

(参考訳)

本書について
暗号を使って秘密のメッセージを作る方法を初学者に教える本はたくさんあります。また暗号解読の方法を教える本もいくつかあります。しかし私が知る限りは、暗号解読プログラムの書き方を教える本というものは存在しません。本書はこのギャッップを埋めるものです。

この本は暗号化処理や暗号解読、暗号技術について全く知識を持たない初学者向けに書かれています。本書で触れる暗号は(最終章のRSA暗号を除いて)全て100年以上前のものであり、最新のコンピュータはこれら暗号文の解読に必要な計算パワーを十分に有しています。現代の組織や個人では、もはやこれらの暗号を利用しません。そのため、本書の情報によって法的トラブルに巻き込まれることはありえません。

またこの本はプログラム未経験の初学者向けに書かれています。本書ではプログラミング言語Pythonを用いてプログラミングの基本概念を教えます。Pythonはプログラミング初学者向けに最適な言語です:シンプルで読みやすく、プロ用途のソフト開発にも利用される強力なプログラミング言語です。Pythonソフトウェアは http://python.org より無償でダウンロードでき、Linux, Windows, OS X, Raspberry Piの環境上で動作します。
(後略)