インターネットが発達し、『暗号』がこの世で最も重要なものになりました。
すべての社会は暗号によって支えられています。
そんなばかな、暗号なんて普段使ったこともないと思われるかも知れませんが、こうしてネットをするにもプロバイダーのパスワードが必要ですし、Amazonでの買い物ひとつとっても、個人情報が暗号で守られていなければ社会は崩壊します。
現代社会でまともに生活するためには、暗号はなくてはならないものなのです。
しかし、それらの暗号にも破滅の危機が訪れるのではないかと言われています。
そうなれば、クレジットカードも個人情報も、すべてがダダ漏れの世界が到来してしまうでしょう。
なぜそんなことが起きてしまうの?
そもそも暗号ってどういうものなの?
暗号の進化はまさに人類の進化の一部。今回は暗号の歴史と未来の危機について、おもしろくわかりやすく説明いたします。
人類最初の暗号とは
人類最初の暗号については、実際のところあまりよく分かっていませんが、6,000年ほど前、紀元前4,000年の古代エジプトの象形文字がそうなのではないかと言われています。
ヒエログリフと呼ばれるもので、みなさんも一度は見たことがあるこういうものです。
参照: Wikipedia
このヒエログリフで作られた文書の中に、謎のヒエログリフが混ざっており、「これは暗号なのではないか?」と言われています。
しかし、よく古代エジプト人はこんなもので記録していたなと感心させられる状態です。
たとえば、ヒエログリフでは『ア』を
『』
と表現するわけですが、どう考えても『ア』ひとつに使うエネルギーが大きすぎると思います。
これで小説を書いてたとしたら、主人公たちが
「あああああっ!」と驚くシーンで
「っ!!」という莫大なエネルギーを使うことになるでしょう。
これで文書を書いていた古代エジプト人はすごい。途中でいやにならなかったのかな?
ヒエログリフの暗号はただの特異な文字ですが、これが紀元前500年のギリシャ時代になりますと、進化した暗号が姿を表わすようになります。
誰でもすぐ解読可能!スキュタレー
参照: Wikipedia
ギリシャ時代に使われていた『スキュタレー』は、古代エジプトから大幅に進化した暗号器具です。
革ひもにびっしりと書かれた意味不明の文字が、特定の太さの棒に巻きつけて横向きに読んだ時のみ、意味のある言葉になるという道具です。
暗号を送る側も受け取る側も、同じ太さの棒さえ持っていればいいので、簡単にやり取りできると多く使われました。
最大の問題点は、知ってる者からすればすぐわかるということです。
棒の太さを特別な太さにすることで、暗号解読されないという意味がありましたが、棒に巻くということを知られた時点でもはや致命傷。
適当にいろんな太さの棒に巻いていけば、そのうち暗号が解読されてしまうので、スキュタレーはいつしか使われなくなりました。
しかしスキュタレーには、暗号において大切な課題が多く含まれています。
暗号とは、難しすぎては誰も解読できないし、簡単すぎてはすぐに見破られる。しかしながら、誰でも使用できなければならないし、それでいて誰にも解読できてはならないのです。
暗号の歴史とは、この不可能のように見える命題に対して理論で立ち向かう、非常におもしろい歴史でもあります。
1文字ずつずらしていこう!シーザー暗号
参照: Wikipedia
紀元前100年ごろに、ユリウス・カエサルが作ったシーザー暗号は、現代においても基礎理論がよく使われる優れた暗号です。
作り方は簡単で、もともとの文字を1文字ずつずらして記入していくというもの。
『あいうえお』は『いうえおか』になります。
更に複雑にして、『20文字ずつずらす』、『50音表ではなく、別のランダムな文字表にずらす』などすれば、理論上での組み合わせは天文学的数字にのぼります。
このシーザー暗号は、暗号の基礎であり究極の暗号とも言え、高度な暗号でも理屈はこのシーザー暗号と似たようなものです。紀元前から暗号の究極にたどり着いていたのはすごい。
しかしもちろん、このシーザー暗号はまだ幼く、暗号が抱える命題が解決されていません。
ひとつは、暗号を解くためのヒントをどのように受け渡しするか?という問題です。
お互いに『5文字ずつずらすのね』ということが分かっていれば、暗号を解くことは簡単ですが、そのうち敵にも暗号がばれてしまうでしょう。
毎回ずらす文字数を変えれば、かなり解読しづらくなりますが、「今回は◯文字ずらすよ~!」などと相手に伝えるひまがあったら、その時普通に内緒話すればいいだろという話になります。
この暗号を解くための『鍵』の作り方と渡し方は、暗号における命題のひとつでもあるのです。
さらに、シーザー暗号では文字をずらして暗号を作成しますが、その方法ではどれだけずらし方に工夫をしても、いずれは必ず解読されてしまいます。
なぜなら、言語には法則性があり、『よく登場する文字』と『登場しにくい文字』があるからです。
英語では『e』が使われる頻度が非常に高く、どれだけ暗号化していても、すべての文章の中で最も多く登場する文字があれば、それは『e』だと推測できます。
ひとつ推測されると、あとはジェットコースターであり、このようにして暗号は解読されてきました。
普通に作ればすぐ解読される。暗号を解くための特別な鍵(コード)があれば、暗号は解きにくくなりますが、その鍵をどう受け渡していくのか?
優れたシーザー暗号は、紀元前100年にして、人類に暗号の真髄を突きつけました。このままではAmazonで買い物なんてできるはずがありません。
人類はどのようにしてこれらの問題を解決していったのでしょうか?
日本軍はシーザーよりおばかだった?
シーザー暗号から2,000年ほども経った日露戦争。
2,000年もあれば暗号は進化していてもいいはずですが、この頃の日本海軍はかなりのおばかであり、「重要な言葉は別の言葉に言い換えよう」という小学生レベルの暗号を用いていました。
この頃に残されている有名な暗号は以下の様なものです。
アテヨイカヌミユトノケイホウニセツシ ノレツヲハイタダチニヨシス コレヲワケフウメルセントス
■現代訳
アテヨイカヌ見たと警報あったよ! ノレツヲハイはただちにヨシス! これをワケフウメルしようとするよ!
確かにパッと見ると暗号っぽいのですが、『アテヨイカヌ見たと警報』の時点で、これは『敵を見て警報』でしかありえないと推測できます。
『アテヨ』が『敵』に当たるのですが、なぜかこの暗号、2文字目に『敵』の『て』を入れるという痛恨のミスを犯してしまっています。
『イカヌ』は『艦隊』ですが、これもまた2文字目に『艦隊』の『か』が入っています。
あとの暗号も全部そうです。
確かに作りやすく読みやすいのですが、見る人が見れば一瞬にして解読できると思わせる暗号です。
ちなみに全文を解読すると、
『敵艦隊を見たと警報あったよ! 連合艦隊はただちに出動! これを撃沈、滅ぼそうとするよ!』
になります。
何度も見ていればそのうち気づいてしまうレベルの暗号であり、2,000年前のシーザー暗号から退化してないかとすら思わせます。
これは海軍内部で使われていたものなので、そこまで神経質になっていなかったのだとも言えますが、そもそも丸バレの暗号なら、最初から普通に話してもまったく問題ありません。あまりにも簡単すぎます。
しかし暗号というものは、複雑にすればするほど解きにくくなりますが、指令も伝わりにくくなるという大きな矛盾が暗号製作者を悩ませているのです。
特に1分1秒を争う戦場で、指令の暗号を解いた頃には任務時間が終わっていた、ということがあってはお話にもなりません。
どうすれば簡単に伝えられ、しかも相手には絶対にばれず、それでいて誰にでも使えるのか?
この命題に、第二次世界大戦時のアメリカ軍と日本軍はとんでもない方法で挑みました。
オラがしゃべれば問題ないべ
第二次世界大戦でのアメリカ軍と日本軍の戦争は、さながら暗号戦争でもありました。
日本海軍がこれでもかというくらいにボロ負けしたひとつの理由として、暗号をすべて見破られていたからというものがあります。
さらにアメリカ軍は、日本軍に暗号を解読されないようにするため、インディアンのナバホ族に電話させるというとんでもない手段を取り始めました。
ナバホ族出身の兵士が電話するだけというこのシンプルな方法は、日本軍を大混乱に陥らせ、なにが通信されているのか、それをメモすることすらも不可能だったと言われています。
この方法は非常にシンプルなのですが、暗号が持つ、『誰でも使える』『解読が簡単』『鍵を仲間にだけ渡せる』『敵にはわかりづらい』という命題をすべて解決した優れた暗号法です。
当然ながら日本軍も負けてはおらず、薩摩弁の兵士に早口でしゃべらせるという荒技を展開。
実際、薩摩弁は同じ日本語とは思えないほど複雑な方言であり、「魚を獲りに行きましょう」は『イオトイケ イッモンソヤー』になります。正に暗号です。
これにはアメリカ軍も困り果て、第二次大戦の影では壮絶な方言バトルが行われていました。
しかし、ナバホ語も薩摩弁も、どちらも言語である以上法則性が必ずありますし、調べていけばいずれは必ず解読されてしまいます。
法則性すらなく、知っていようと知っていまいと解読できず、それでいながら味方にだけは簡単に読み取れる。そのような暗号はあるのでしょうか? ついにドイツでそれが誕生するのです。
暗号のひとつの到達点、エニグマ
参照: Wikipedia
ドイツの発明家が1918年に開発した暗号機、エニグマ。
今でいうパソコンのキーボードのようなものですが、エニグマの特徴は、中に回転式のローターが入っており、1文字打つごとに文字が変わるということです。
参照: Wikipedia
ですから人間が解読できる法則性がなく、同じ単語を打っても同じ結果にはならず、すべての文字が最初から最後まで常に変化し続けていきます。
このローターを複数組み合わせることによって、暗号パターンは無限大ほどに増幅し、人間が解読できる領域を超えてしまうのです。
これは1文字ごとに違うシーザー暗号を使い続けるのと同じ理屈であり、ついに暗号がひとつの到達点に達したとも言えるでしょう。
しかも解読は簡単であり、エニグマさえ手元にあれば、暗号作成者と同じ枚数・同じ順序のローター、同じ目盛り、同じ配線に設定し、暗号を打ち込むだけで元の文章に変換できます。
このエニグマが登場してから、暗号の解読が非常に困難になり、通信を傍受したとしてもなにひとつ手が出せない状況が続きました。
敵のスパイを捕らえるか、エニグマ本体そのものを手に入れる方法でしか解読することができなくなったのです。
実際にエニグマの暗号はとてつもなく複雑で、誰にも解けないまま放置されていた暗号が、64年経過した2006年になって、インターネットの暗号同好会が解読したという例さえもあります。
第二次世界大戦中もエニグマの暗号は大活躍しましたが、27歳だったポーランドの若き天才数学者、マリアン・レイェフスキが、エニグマ解読機『ボンバ』を作ることに成功し、ついにエニグマ暗号を解読してしまいます。
エニグマの文字ホイール6個に対し、『ボンバ』を6台用意することで、難解な暗号を解読できるようになったレイェフスキ。
参照: Wikipedia
ハリー・ポッターよりもおとなしそうな可愛い顔で、これだけの偉業を成し遂げるとは、正に天才です。
しかしドイツ軍も負けてはおらず、「エニグマの文字ホイール、6個だったのを60個に増やします」と、考えられない無茶ぶりを始めたことで、『ボンバ』も60台必要になるという悲惨な憂き目に会います。
その頃にはポーランドの戦況は思わしくなく、暗号解読に費用も人員もかけられなかったので、研究は中断され、機密事項であった『ボンバ』はすべて破壊されました。こうしてまた、エニグマは解読されない暗号機となったのです。
謎のまま終わるかと思われましたが、その後、イギリスの数学者アラン・チューリングが、ドイツ軍から手に入れたエニグマ本体を元に、『ボンベ』というパクリ待ったなしの解読機を開発し、ついにエニグマは解読され始めます。
参照: Wikipedia
このアラン・チューリングは、現在でも人工知能のチューリングテストなどで名前が知られる天才ですが、典型的な天才変人と呼ばれるタイプの人間です。
若い頃から天才的な数学の才能を発揮するとともに、日常生活が人間離れしており、マグカップが盗まれないようにチェーンでつなぐなど、なぜ安いマグカップを買わないのかと不思議になるような神経質な行動を取っています。
また、自転車のチェーンがよく外れることから、自転車に乗るたびにペダルをこいだ回数をすべて数えて記憶し、こいだ回数が一定以上になると自転車を降りたというエピソードまであります。
マグカップにチェーンつける暇があったら、自転車のチェーン新品に変えなさい!!
この人類の中でもまれに見る天才、チューリングの存在により、ついにエニグマは解読されてしまいますが、解読そのものがトップシークレットにされました。
なぜなら、レイェフスキの時のように、またエニグマを改良されてはかなわないので、解読された事実を公表せず、ずっと今のままドイツにエニグマを使い続けてもらったほうが、連合軍にとって好都合だったのです。
結局は解読されてしまったエニグマですが、戦争中に使われた暗号としては最高峰、まさに暗号が持つ命題のほとんどを解決した暗号機だったと言えるでしょう。
激しい暗号戦を経て、ついに現代のネット社会へと暗号は進化していきます。
しかしインターネットの世界は、暗号の作り方、鍵の受け渡し、すべてにおいて、今までの暗号ではまったく役に立たない、これまでの人類が体験したことのない世界になっていました。
ネットにおいてすべての通信は一瞬で終わり、匿名性が高い上にハッキングもある世界、エニグマですらまったく不十分なほど高いレベルの暗号が要求されます。
誰でも簡単に作れて、鍵を簡単に受け渡しできて、しかも誰にも解くことが出来ない。
そんな究極の暗号がこの世にあるのでしょうか?
ついに登場、RSA暗号
これまで、シーザー暗号だのエニグマだの、変な鳥だの、さまざまな暗号が開発されてきましたが、インターネットという従来の常識では考えられない発明が生まれたことで、これまでの暗号はどれも、インターネット社会には対応できない未成熟なものに成り下がりました。
エニグマであっても、Amazonで買い物をするには使えない暗号なのです。
ここで、過去の暗号製作者を「(ああああああああ)っ!!」と驚かせる驚異の発明がなされます。それこそがRSA暗号です。
RSA暗号とは、素因数分解という、めちゃくちゃ計算に時間がかかる計算式をもとに作られています。
この計算式は、ちょっとした数式のヒントがあれば簡単に解けるのですが、ヒントなしでは、寿命が尽きても計算が終わらないのではないかとも言われる難解な計算式です。
これらの計算式をうまいこと利用し、ヒント部分は非公開として通信すれば、データ通信をどれだけハッキングされても、解読するための計算が終わる頃には寿命が尽きているような状態になるのです。
このRSA暗号によって、Amazonの通販でどれだけクレジットカードを入力しても、ヒントを持っているAmazon側以外、外部からカード番号を解読することは不可能になります。
RSA暗号とは、暗号というよりもただの計算式であり、永遠に解けないような代物ではありません。しかし、解くことが非常に難しい数式であるために、暗号として成立しているのです。
計算式は全世界共通であるために、エニグマのように同じ機械を持っていなくても、毎日暗号コードを互いに変更しなくても、普通に数式をやりとりするだけで、他人には絶対にわからない暗号として使うことができています。
人類が苦労に苦労した暗号の歴史は、RSA暗号でひとつの終着点を迎えました。
全世界中でRSA暗号が利用され、ありとあらゆる機密に対して活用されています。
もはや情報が漏れるのは、担当者のヒューマンミスなどによるものが大きくなり、RSA暗号そのものを解読することは不可能なのではないかと言われています。
これで安心したかったところですが、人類は進化することで逆に、すべての暗号が使えなくなるという破滅の未来が訪れようとしています。
量子コンピューターの開発
コンピューターは日々進化していますが、研究が進められている『量子コンピューター』は、これまでのコンピューターの常識を打ち破る怪物マシンです。
このコンピューターはなにもできません。
ブログを読むとか、音楽を聴くとか、ゲームをするとか、そういった一般的なことが何も出来ないコンピューターです。
しかし『量子コンピューター』は計算において人類の常識を超えた活躍ができます。
計算スピードの速さは、全人類が人生のすべてをかけて知恵を振り絞ってもかなわないレベルであり、さきほどのRSA暗号の素因数分解も簡単に答えられてしまいます。
こうなるとすべての暗号は無意味であり、暗号が数学的な理論で作られていることを考えると、どんな暗号を生み出そうとも必ず解読されてしまう恐怖のコンピューターです。
量子コンピューターは少しずつ実用化に向けて研究開発されていますが、これが完成した時、すべての暗号は無意味に等しいものになってしまうでしょう。
これに対抗するためには、こっちも量子という発想でしか埋め合わせることが出来ません。
光の量子を利用した量子暗号の開発が急がれていますが、そもそも光ファイバーの中の光の量子が200kmほどしか届かないため、東京→大阪間が400kmあることを考えると、めちゃくちゃ狭い距離でしか暗号にならないことが分かっています。
量子暗号が開発されるのが先か、量子コンピューターが開発されるのが先か分かりませんが、今、量子コンピューターを手に入れたものは、事実上世界でどんなことでも自由になってしまうでしょう。
インターネット社会ですべてのパスワードを破れるというのなら、その使い道はほとんど無限大になるからです。
我々の生活のすべては、暗号によって支えられています。
そして今また、その暗号は新しい進化を遂げようとしていますが、暗号と人類の未来がどうなっていくのか、この命題を解ける人間はまだ誰もいません。