ヴィジュネル暗号なお話 その3 (バベッジなお話) | もっとコンピュータが好きになるblog

ヴィジュネル暗号なお話 その3 (バベッジなお話)

「これ、おいしいから食べてみなさい」と上の人から言われたので食べてみました。おいしいと言われていたものは、アメリカで買ってきたというハッカ味のクリームを固形化したような訳の分からない食べ物。

本人曰く、「おいしくて一人で一箱食べてしまった」そうで。僕がそれを見たとき、なんというかおぞましい食べ物だろうかと思いましたよ。食紅で青だの緑だの変な色付けられているし、食欲もわきません。食べてもみましたが、もう気持ち悪かったです。(基本的にアメリカのあの訳のわからないお菓子は口に合わないのですが。)

でも曰く、「ハッカ(シナモン)の味もわからないようでは、食通ではない」とか。良いです、僕は。お子さまだから、ウィスキーでも買って飲んでますから~。




さて、また一週間ほど空けてしまいましたが、後残り二回(予定)となりましたヴィジュネル暗号に関して続けていきたいと思います。今回は第三回。今回は19世紀に作られた解読不能(と言われた)暗号と対決する事になる「チャールズ・バベッジ」について取り上げていこうと思います。

なんで、一回分わざわざこの人について取り上げるかと言いますと、このバベッジという人、コンピュータの父と呼ばれる人だからです。バベッジはこれから説明していきますが、いわゆる階差エンジン(機関)や解析エンジン(機関)と呼ばれるものについて、大変有名な方です。ソフトウェア業界にいる人で知らなければモグリなぐらい、まあ有名な方なんですが、案外暗号解読もしていた事は知られていないようです。

バベッジとはどんな人だったのかという事と、バベッジが暗号と戦う事になった経緯を見ていこうと思います。



18世紀、19世紀にかけて通信という分野が徐々に発展してきます。無線技術やモールス信号などが当てはまります。しかしながら、それら通信は平文(暗号化されていない文)で行われており、誰でも傍受可能でした。それを回避する為、20世紀にはビジネス向けなどにヴィジュネル暗号が利用される事になってきました。

ちなみに、今のネットワークであっても盗聴可能でして、簡単にデータを盗む事は出来ます。怖い人は暗号化することなどを心がけた方がよいかもしれません。

話は戻って、そんな中、学芸協会誌に一つの論文が載ります。書いた人はジョン・ホール・ブロック・スウェーツという人。その人は暗号については素人同然だったのですが、ひょんな事からヴィジュネル暗号と同じ暗号を考えついてしまいました。
そこで早速特許をとろうと論文を書いたわけなんですが、その論文を読んだバベッジは「この暗号は既にある」とスウェーツに教えてあげます。

そこから対決はスタートしました。スウェーツは「なら、解いてみせろ」と挑みます。バベッジはヴィジュネル暗号が解読不能暗号である事は知っていましたが、きっと頑固な人だったんだと思いますが、解読不能なら自分が解いてみせると立ち上がる事になります。

ちなみに、現代の解読不能と言われる暗号の中に公開鍵暗号というものがあります。じつはこの暗号、安全である事はみんなわかっていたんですが、本当に安全なのかという証明はまだされてなかったという話をどっかの雑誌で読んだ事あります。(この話の元記事を探し出したら、後でコメントの所に詳しい話を書いておきます。)

おそらくヴィジュネル暗号が盛りのこの時代でも多分この公開鍵の話と同じように、皆が「無敵」と思いこんでいた節はあったのかもなと思っています。バベッジは暗号解読は好きだったようですが、多分、バベッジもスウェーツという人が食って掛かっていなかったらヴィジュネル暗号と対決する事なんて考えなかったのかもしれません。結構暗号というのは「安全と思いこむ」という危険性がはらんでいるので、たとえ暗号の専門家であっても気を付けなければならないんでしょうね。




話は変わって、バベッジはどんな人だったのかをみていきます。バベッジといえば最初にも書いた通り、コンピュータと父と言われ、コンピュータの基礎を作った人にあたります。コンピュータの基礎、階差エンジン、解析エンジンの話をする前に他にもバベッジはいろいろなものを作って、それが今でも利用されているものもあるようなのでそこらへんも取り上げてみます。するとバベッジの素晴らしさがわかるかと思いますので。

バベッジは大変うらやましい事に大変な資産家で、ずっと好きな研究をして生活していました。そんな中で様々な便利なものを開発しています。たとえば、車などについているタコメータ。回転速度計のことです。他にも保険会社などで使われているという死亡率・平均余命などの変化を表した表、生命表(死亡表)、はては、現在の郵便システムの基礎(全国一律料金)を作っていたりします。


そんな研究生活の中である日バベッジは、海運で用いられる「緯度経度を計測するための天体位置の早見表」に計算間違いがあることを見つけ出します。それも一千箇所以上あったそうです。実際、その表のせいで海難事故などが起こっていたそうで、国益を考えた場合、この早見表の改善を考えるのは必須でした。

当時この表は人の手で計算されていましたが、バベッジは膨大な量の計算を間違わずに行うために機械の力でこれを解決しようと国に持ちかけます。これによって生まれたのが階差エンジンになります。

- Computer Arithmetic
- Wikpedia チャールズ・バベッジ

この最初の階差エンジンを作るのにすでに10年を費やし、多額の費用も費やしていました。階差エンジンは簡単な計算を行うことは可能でしたが、バベッジの狙いは、単に計算を行う程度の機械ではなく、プログラミングをすることでさまざまな計算を行ってくれる機械を作ることでした。それが解析エンジンです。しかし、国は追加予算をつけることをせず、結局バベッジが生きている間には完成することが出来ませんでした。しかし、死後そのレプリカが作成されており、予算さえあればなんとか作る事は可能だったとも言われています。(印刷機能もあったとか)

上の画像がそうです。

この階差エンジンや解析エンジンの設計にはエイダという女性が関係しています。最初のプログラマーとか最初のコーダーとか言われている人です。こちらに関しては、またいつか書きたいと思います。

個人的に階差エンジンは一度生で見たいと思う機械です。一度テレビで見たときはホントに「あれは機械じゃない、芸術品だ」と思ったくらいですから。



長々書いてきましたが、次回は今回取り上げたバベッジがヴィジュネル暗号に挑む方法、解読方法について見ていきたいと思います。