第2回目の今回の講義では実際に慣用暗号のプログラムをVBAで作ってみます。まず、シーザー暗号、次いで単一アルファベット暗号(乱数表を使った暗号)のプログラムを作成します。
プログラムが出来上がったら次に暗号強度について考察します。暗号強度は鍵空間の大きさに依存します。シーザー暗は25通りしか鍵がないのでそのすべてを試せば簡単に破られます。
一方、単一アルファベット暗号はそう簡単には行きません。アルファベット26文字の並べ方は全部で26!あり、これを実時間内にすべて試すのは不可能です。では、この暗号は無敵なのでしょうか?
いいえ、実はそうではありません。言語の統計的な性質を利用すれば暗号鍵を比較的簡単に破られます。
言語の統計的性質を調べるには大量の英文が必要です。Free ebooks by Project Gutenbergというフリーブックサイトがあるのでこれを利用するのも一つでしょう。
0 件のコメント:
コメントを投稿