シーザー暗号解読ツールを自作する
udpipさんのブログ「シーザー暗号なお話 その2」を見て少し触発されましたので、自分で作ってみる事にします。
ルールは (1)udpip さんのブログに載っている情報から推測して、プログラミングしてみる。(2)プログラムから答えが出せるまで答えを見ない。(3)設計とプログラミングは仕事の妨げにならないよう昼休み中に行う。
…って、本当に?できるかな…?
というわけでまず今日は必要そうなモジュールを作って見ました。何が必要なのかも分からないので、とりあえず作ってみてから考える方法で行きます。
(1) 解析に使う為の英単語データベースの作成ツール。
(2) 文章を入力すると、文字ごとの出現回数のカウントをするモジュール。
(3) 「暗号の文字」と「予測される文字」の置き換えを行うモジュール。
(4) 単語と思わしき文字列が、ほんとに英単語かどうかチェックするモジュール。
…と、ここまで作って昼休み終了。文字列の出現頻度とかをカウントするモジュールを作って、暗号の時点で単語と思わしき場所を見つけた方が、効率が良いような気がしてきました。明日はその辺の設計をまずはしてみようと思います。なんかますます出来ない様な気がしてきました。
ルールは (1)udpip さんのブログに載っている情報から推測して、プログラミングしてみる。(2)プログラムから答えが出せるまで答えを見ない。(3)設計とプログラミングは仕事の妨げにならないよう昼休み中に行う。
…って、本当に?できるかな…?
というわけでまず今日は必要そうなモジュールを作って見ました。何が必要なのかも分からないので、とりあえず作ってみてから考える方法で行きます。
(1) 解析に使う為の英単語データベースの作成ツール。
(2) 文章を入力すると、文字ごとの出現回数のカウントをするモジュール。
(3) 「暗号の文字」と「予測される文字」の置き換えを行うモジュール。
(4) 単語と思わしき文字列が、ほんとに英単語かどうかチェックするモジュール。
…と、ここまで作って昼休み終了。文字列の出現頻度とかをカウントするモジュールを作って、暗号の時点で単語と思わしき場所を見つけた方が、効率が良いような気がしてきました。明日はその辺の設計をまずはしてみようと思います。なんかますます出来ない様な気がしてきました。