2024.12.19
システムの穴を運用でカバーしようとしてミス多発… バグが大量発生、決算が合わない状態から業務効率化を実現するまで
Cryptography: The Science of Making and Breaking Codes(全1記事)
リンクをコピー
記事をブックマーク
マイケル・アランダ氏:この暗号文を見ても、なんと書いてあるのかはきっとちんぷんかんぷんでしょう。
ですが、それぞれのアルファベットが1文字ずつずれている、ということがわかれば意味もわかります。
暗号文を作るには、暗号化と鍵の2つが大切です。暗号化とは、例えばアルファベットを決まった数だけずらすといったような、文章をわからなくするきまりのことです。鍵とは、逆に復号化する方法のことで、これを使って元の文書に戻すことができます。
この場合、鍵はアルファベットを1文字ずらす、という1つだけです。復号化するためには暗号化のやり方を知っていなければいけませんし、それが鍵にもなります。もしくは思いつく限りの組み合わせを試してみるか、暗号文を解析して元の文章を復元するしかありません。
では手がかりもなにもない、暗号化と鍵の組み合わせを思いつくなんてことができるのでしょうか。さらには、誰にも破られない暗号文は存在するのでしょうか。
これまでにいくつもの暗号が考案されてきましたが、破られなかった暗号文はなかなかありません。どんな方法で暗号化されていたとしても、十分な量の暗号文と時間があれば、暗号化のルールを見つけ出せるからです。
最初に紹介した暗号文は、シーザー暗号という昔からある単純な暗号文です。この場合、何文字アルファベットをずらしたか、が鍵になります。
しかしこの暗号文は簡単に破られてしまいます。鍵である何文字ずらしたかがわからなかったとしても、25パターン試してみればいいだけです。アルファベットは全部で26文字しかないため、ずらせる数は25回と決まってしまいますね。
シーザー暗号は、単一換字式暗号と呼ばれる種類の暗号化です。これは文章の最初から最後まで同じアルファベット1文字は必ず別の1文字に置き換えていく、という暗号のことです。要はアルファベットをぐちゃぐちゃにするわけですね。
こうしたアルファベットの対応表が鍵になります。
暗号化には、なんと400×10の23乗個以上もの組み合わせがあるので、破るのは到底難しいと思うかもしれません。しかし実はそうでもないのです。
復号化する方法はいろいろあります。すべての組み合わせを試してみるやり方が、一番シンプルでわかりやすいもので、その名も「総当り攻撃」というそのままの名前がついています。
でももっと洗練されたやり方もありあます。「頻度分析」と呼ばれるもので、どの言語にも特定のパターンがある、という考えに基づいています。
例えば英語では「E」が最も多く使われます。この文章でも7回出てきますね。
さらに「the」のように、必ず使われる単語というものもあり、そうした種類の単語を「クリブ」といいます。
このように頻度分析は、共通する単語、共通する文字、「ed」や「ing」といった単語の終わりに出てくる組み合わせなどを探し出していきます。
Xが頻出することに気づき、さらにIRXという3文字の組み合わせもあることに気づけば、XはEと対応してるだろうと推測でき、そうするとIRXはTHEの意味だろうとわかっていきます。
こうなると、残りの文字もなし崩し的にわかっていってしまいます。そして文章が長ければ長いほど、こうした手がかりも増えていきます。
このように単一換字式暗号はおもしろいですが、破るのはたいして難しくありません。
ではさらに暗号の腕を磨きましょう。多表式の換字暗号ならもう少し破りにくくなります。
多表式換字暗号は、入れ替えていくアルファベットを、文章全体を通して変えていく暗号です。例えば、最初に出てくる「S」は「W」に変換しますが、最後に出てくる「S」は「Hに変換します。どう置き換えるかは、暗号化に使うアルゴリズムと鍵によって決まります。
もっとも古い多表式換字暗号の1つは、ヴィジュネル暗号です。16世紀に考案されたヴィジュネル暗号は、鍵が単語であるためとても単純です。
じゃあ「Scishow is the greatest」という文章を、ヴィジュネル暗号を使って暗号化してみましょう。まずAからZまでが左右、上下に並んだ正方形の文字列を作ります。
1列目はAから始まってZまで並びますが、2列目はBから始まって順番に並んで行き、3列目以降からもずらして並べていきます。
これで並び替えたアルファベットが26できて、原文を暗号化する準備が整ったので鍵を決めましょう。ここでは「MICHAEL」にしましょう。
次に、原文の「Scishow is the greatest」と同じ文字数になるまで、鍵を繰り返し書いて対応させていきます。
そしてそれぞれの文字を暗号化するため、先ほど作ったヴィジュネル方陣のなかで、原文の文字と鍵の文字が交わる文字を選んでいくと、こうなります。
この暗号は鍵となる言葉によって文字の数が変わるため、解読するのがとても難しいです。実際、今回の場合、「MICHAEL」は7文字なので原文の文字はそれぞれ7パターンの文字に置き換わります。
しかし19世紀、チャールズ・バベッジが考案した周期分析を用いると、暗号文が十分な長さを持っていれば突破されてしまうのです。
バベッジは、十分な長さの文章から一定のパターンを見つけ出せれば原文に戻せることに気づきました。使われている鍵が7文字しかないなら、暗号化は7パターンしかありません。8文字の鍵を使っているなら、その数だけ繰り返されるはずです。
バベッジはそうした文字の塊が、どれだけ繰り返されているかを数えました。7、14、21、といった具合に別れていれば、鍵はおそらく7文字だろう、と考えたのです。さらに頻度分析も用いることで、並び替えた7文字のアルファベットを見つけることができます。
こうしたバベッジの例を見ると、解読不能な暗号を作り出すのがいかに難しいかわかります。鍵によって暗号文の中にパターンができてしまうので、そのパターンがわかれば見破れてしまうのです。
つまり、本当に解読不能な暗号を作るためには「ワンタイムパッド」という、原文と同じ長さの鍵を使って暗号化をする必要があるのです。ワンタイムパッドなら、文章のなかにパターンが生まれないため、解析して復号化できません。
送信者と受信者が、一定の長さのランダムな文字列が書かれた、同じ乱数表(パッド)を用いて鍵にします。乱数表を復号化に使ったなら、その乱数表は破棄します。
次に暗号化するときには別の乱数表を用いるため、同じ鍵が繰り返されることがありません。乱数表が外部にもれない限り、誰かに解読される心配はないのです。
しかしいつでもこのワンタイムパッド暗号を使えるわけではありません。例えば、地球の反対側にいる一度も会ったことがなく、乱数表を渡せない人にはどうやってメッセージを送ればいいのでしょう。20世紀の初めに戦争が起こるとそうした事態が頻発したため、さらに改良された暗号がどうしても必要になりました。
電信のような、遠隔地と通信が行える技術は、戦争中とくに重宝されました。
しかし通信内容は仲間にしかわからないようにしなければなりません。
ドイツは複雑にした単一換字式暗号を第一次世界大戦で用いましたが、フランスに破られてしまいました。そのためドイツは第二次世界大戦において、破るのは不可能としか思えない新しい暗号を考案します。「エニグマ」という名前ぐらいは聞き覚えがあるでしょう。
エニグマという暗号機は、多表式換字暗号を採用しており、新しい文字を打ち込むたびに違うアルファベットへと変換します。解読するためにもエニグマの機械が必要で、さらに毎日変わる秘密鍵を用いなければいけません。
エニグマは、1文字ごとにアルファベットを入れ替える、ワンタイムパッドと同じ役割を果たしたのです。乱数表を全員に配る代わりに、毎日変更できる鍵をエニグマに入力したのです。
しかしエニグマにはいくつか欠点がありました。例えば、文字は必ず別の文字に置き換わります。大した問題ではないように思えますが、後々これが致命的な弱点となるのです。
イギリスの数学者アラン・チューリングと彼のチームは、エニグマを破る機械を自分たちで考案しました。
ナチスの通信のなかに、ヒトラーを称える文章がたびたび現れることに着目し、そこに20ほどの文字が含まれていることに気づきました。チューリングたちは、そうした特定の単語や文章から鍵につながるクリブを見つけ出そうとしたのです。
同じ文字には暗号化されない、ということに気づいた彼らは、例えば「fewer」という単語が含まれる文章であれば、「F」を含まない単語を探しました。こうした数々の手がかりをもとに、エニグマが暗号化を行う際のローターのはめ方を見つけ出していったのです。
エニグマを突破し、暗号文を解読できたことで、同盟国は有利な情報を数多く知ることができ、数多くの戦局で重要な勝利を収めました。
コンピュータが発達した現在においても、暗号化はとても重要な技術ですが、完ぺきではありません。ハッカーが暗号を解読してしまえば、個人情報の多くは容易に漏れてしまいます。
企業は、毎秒ごとに入力される膨大な個人情報の保護と、日々進歩していく総当り攻撃にかなりの注意と関心を払っています。オンラインで決済をしようとする時に、北朝鮮のメールアドレスが使えないことにも同じ原則が関係していますが、それはまた別のお話です。
関連タグ:
2024.12.20
日本の約10倍がん患者が殺到し、病院はキャパオーバー ジャパンハートが描く医療の未来と、カンボジアに新病院を作る理由
2024.12.19
12万通りの「資格の組み合わせ」の中で厳選された60の項目 532の資格を持つ林雄次氏の新刊『資格のかけ算』の見所
2024.12.16
32歳で成績最下位から1年でトップ営業になれた理由 売るテクニックよりも大事な「あり方」
2023.03.21
民間宇宙開発で高まる「飛行機とロケットの衝突」の危機...どうやって回避する?
PR | 2024.12.20
モンスター化したExcelが、ある日突然崩壊 昭和のガス工事会社を生まれ変わらせた、起死回生のノーコード活用術
2024.12.12
会議で発言しやすくなる「心理的安全性」を高めるには ファシリテーションがうまい人の3つの条件
2024.12.18
「社長以外みんな儲かる給与設計」にした理由 経営者たちが語る、優秀な人材集め・会社を発展させるためのヒント
2024.12.17
面接で「後輩を指導できなさそう」と思われる人の伝え方 歳を重ねるほど重視される経験の「ノウハウ化」
2024.12.13
ファシリテーターは「しゃべらないほうがいい」理由 入山章栄氏が語る、心理的安全性の高い場を作るポイント
2024.12.10
メールのラリー回数でわかる「評価されない人」の特徴 職場での評価を下げる行動5選
Climbers Startup JAPAN EXPO 2024 - 秋 -
2024.11.20 - 2024.11.21
『主体的なキャリア形成』を考える~資格のかけ算について〜
2024.12.07 - 2024.12.07
Startup CTO of the year 2024
2024.11.19 - 2024.11.19
社員の力を引き出す経営戦略〜ひとり一人が自ら成長する組織づくり〜
2024.11.20 - 2024.11.20
「確率思考」で未来を見通す 事業を成功に導く意思決定 ~エビデンス・ベースド・マーケティング思考の調査分析で事業に有効な予測手法とは~
2024.11.05 - 2024.11.05