34
コココココココココ-2 コココココココココココ ココココ

コンピュータの歴史-2 戦時期における暗号解読

  • Upload
    chaim

  • View
    30

  • Download
    0

Embed Size (px)

DESCRIPTION

コンピュータの歴史-2 戦時期における暗号解読. 和田俊和. 最近の CPU (ARM の一種 ). Nvidia 社製 Tegra 3 の省電力技術 「 4-PLUS-1 」 メインである 4 つのコア に加え、 低性能・低消費電力のコンパニオンコア を状況に応じて活用する技術。 端末のパフォーマンスが必要なときは 4 つのコアから必要な数のコアを使い、不要なときは低消費電力のコンパニオンコアだけで動作して全体の消費電力を削減する。ビデオ再生時では最大 61% 、 Web 閲覧では最大 30% の消費電力の削減が可能。. これは一般人の常識レベルの知識. - PowerPoint PPT Presentation

Citation preview

Page 1: コンピュータの歴史-2 戦時期における暗号解読

コンピュータの歴史-2戦時期における暗号解読

和田俊和

Page 2: コンピュータの歴史-2 戦時期における暗号解読

最近の CPU (ARM の一種 )Nvidia 社製 Tegra 3 の省電力技術 •「 4-PLUS-1 」 メインである 4 つのコアに加え、低性能・低消費電力のコンパニオンコアを状況に応じて活用する技術。

– 端末のパフォーマンスが必要なときは 4つのコアから必要な数のコアを使い、不要なときは低消費電力のコンパニオンコアだけで動作して全体の消費電力を削減する。ビデオ再生時では最大61% 、 Web 閲覧では最大 30% の消費電力の削減が可能。

Page 3: コンピュータの歴史-2 戦時期における暗号解読

これは一般人の常識レベルの知識

Page 4: コンピュータの歴史-2 戦時期における暗号解読

低性能・低消費電力のコンパニオンコア

Page 5: コンピュータの歴史-2 戦時期における暗号解読

戦時中最も計算を必要としたのは

兵器開発ではなく,暗号解読だった• ドイツは第一次世界大戦 (1914 〜 1918) 勃発後にア

メリカ駐在のドイツ大使に暗号の電文を送っていた.– メキシコに資金を提供し,参戦を躊躇していたアメリカ

南部を攻撃し,州を奪還するように要求させ,さらにメキシコ経由で日本にアメリカ西岸を攻撃させるよう,メキシコ政府とコンタクトを取れという内容

• この電文をイギリスは傍受・解読し,内容をアメリカ側に伝え,アメリカは参戦し,ドイツは敗北

• しかし,イギリスは暗号解読ができなかったと嘘の情報を流したため,第 2 次大戦開始時までドイツは暗号解読の重要性を認識できていなかった.

Page 6: コンピュータの歴史-2 戦時期における暗号解読

無線の発達と暗号

• 1894 年,イタリアの物理学者グリエルモ・マルコーニが無線通信を発明

• 1901 年,イギリスのポルデュからカナダのニューファンドランドまでの(地平線を超えての)無線通信に成功.

• 暗号の必要性が高まる.

Page 7: コンピュータの歴史-2 戦時期における暗号解読

シェルビウスのエニグマ1918 年

• 暗号円盤:換字式暗号のための円盤• 別のキーワードを用いて円盤を回転させ

るヴィジュネル暗号にも利用可能• 文字を打つたびに円盤が回転する換字式

暗号のための機械がエニグマ

Page 8: コンピュータの歴史-2 戦時期における暗号解読

ヴィジュネル暗号とは

• 換置式暗号ではあるが,キーによって換置テーブルが変化する.

Page 9: コンピュータの歴史-2 戦時期における暗号解読

エニグマは当初全く売れなかった

• 1928 年シェルビウスは特許を取得. 1 機 2万ポンドでビジネスと軍用に販売を開始したが全く売れなかった.

• その後,ドイツ軍はこれまで使用してきた暗号が破られていたことに気づきエニグマを採用した.

Page 10: コンピュータの歴史-2 戦時期における暗号解読

エニグマのエンコードhttp://www.bletchleypark.org.uk/content/simulator.html

Page 11: コンピュータの歴史-2 戦時期における暗号解読

エニグマのデコード

Page 12: コンピュータの歴史-2 戦時期における暗号解読

円盤の初期値が同じであれば,デコードとエンコードは同じ

• 円盤の初期配置が鍵になる.• 各円盤の目盛は 26 , 3枚の組み合わせ= 263

• 円盤の枚数は 3枚で,交換可能 3!= 6 通り.• さらに 6 本のケーブルで6つの文字にスクラン

ブルをかけると 26C6*6!

• したがって,暗号化のパターンは 263×= 2913496185600 通り.

• 正規の受信者が解読する場合にも鍵が必要であった.

Page 13: コンピュータの歴史-2 戦時期における暗号解読

各日で鍵は変わった.(日鍵)• 前日の日鍵を使って翌日の日鍵を暗号化し

て送った.但し,日鍵が正しく伝わらなければ全ての通信が無駄になるため,毎朝 2回暗号化して無線送信された.

• さらにメッセージを送る前に各メッセージの暗号化鍵が 2 回,日鍵で暗号化され付与されていた.

• このルールがスパイによって漏らされ,これを手掛かりに暗号解読を行うことをポーランドの暗号解読者レイエフスキーが発見した.

Page 14: コンピュータの歴史-2 戦時期における暗号解読

ドイツ軍によるエニグマの運用送信者    エニグマによる暗号化   受信者

前日の日鍵

今日の日鍵今日の日鍵

暗号化された今日の日鍵

前日の日鍵

メッセージの暗号化鍵

暗号化されたメッセージの暗号化鍵

メッセージの暗号化鍵

メッセージ

暗号化されたメッセージ

メッセージ

2回送信

2回送信

Page 15: コンピュータの歴史-2 戦時期における暗号解読

レイエフスキの作戦

• 暗号の連鎖を辿ることで日鍵を割り出す.

• メッセージ鍵は 3 つの鍵の繰り返しから成る 6 文字. 1番目と 4番目は同じ文字を暗号化したもの.メッセージ鍵から作った下記の1,4番の対応表があれば,スクランブルが解ける.

• ABCDEFGHIJKLMNOPQRSTUVWXYZ• FQHPLWOGBMVRXUYCZITNJEASDK

Page 16: コンピュータの歴史-2 戦時期における暗号解読

暗号の指紋

• ABCD EFG HI J K LMNOPQRSTUVWXY Z• FQHPLWOGBMVRX UYC Z I TNJ EA S DK から,連鎖と連結数を求め,これを手掛かり

に日鍵を求めた.(プラグボードの影響が無い)

A→F→W→A 3B→Q→Z→K→V→E→L→R→I→B   9C→H→G→O→Y→D→P→C  7J→M→X→S→T→N→U→J  7

Page 17: コンピュータの歴史-2 戦時期における暗号解読

ボンブ改造エニグマによる日鍵の探索

• 3つの円盤の並び方は3!=6通り• 6台のエニグマで並列に 263= 17576 通り

の日鍵を探索する機械をレイエフスキが考案し作成した.(チェックはメッセージキーの繰り返しを利用する.)

• 約 2 時間で日鍵は解読できた.• これにより,わずかな暗号化方法の変更

にも対応できた.

Page 18: コンピュータの歴史-2 戦時期における暗号解読

エニグマの大幅な変更• 円盤(スクランブラ-)の数が 5個になり,

これらのうちから 3 つ取り出して使うようになった. 3!= 6 通りから, 5C2×3!= 60 通りになった.

• プラグボードに接続するケーブルの本数が 6本から 10 本に増えた.

• 60台の改造エニグマによるボンブの作成は予算上無理であり,解読は不可能になった.

• 1939 年ドイツ軍の侵攻を前に,全ての成果をイギリスに手渡した.

Page 19: コンピュータの歴史-2 戦時期における暗号解読

ブレッチレーパークの暗号解読チーム

GCCS: Government Code and Cipher School1919

• 19 世紀の富豪の邸宅内にプレハブ住宅を建て,数学者,エンジニア,言語学者,クロスワードパズルマニアなどを雇い入れた.ポーランドよりも予算も人的資源も豊富であったため, 1940 年には改良型エニグマの解読も十分に行えた.

Page 20: コンピュータの歴史-2 戦時期における暗号解読

次の難題に備えて

• 日鍵やメッセージキーの反復が無くなったらどうするか?

• 暗号と平文の対応関係(クリブ)が分かったとすれば,暗号解読が行えるのではないか?

• wetter →   ETJWPX だとすれば,どうすればスクランブラ-の設定を見抜けるか ?

Page 21: コンピュータの歴史-2 戦時期における暗号解読

クリブの内部ループ

• クリブにはループがある.

Page 22: コンピュータの歴史-2 戦時期における暗号解読

電気回路による日鍵の発見ーボンブー

• 機械による鍵の発見右図のように回路を組んで,スクランブラ -を回転させれば,正しい日鍵の位置でランプが点灯する!これを様々なスクランブラ - の配置で並列に運転する.

Page 23: コンピュータの歴史-2 戦時期における暗号解読

ローレンツマシーンの登場• ヒトラーと将軍との

通信用に開発されたより複雑な暗号化マシーン

• ランダムに無関係な文字を挿入する機能を持つ

• 円盤の数は 12枚• ボンブでは解読不能

Page 24: コンピュータの歴史-2 戦時期における暗号解読

コロッサス(巨人)の誕生

• ボンブは定型的な処理しか行えなかった.• ローレンツマシーンの解読には統計計算,検索

,照合計算,などが必要であり,汎用な計算が行える機械が必要であった.

• マックス・ニューマンが,「万能チューリングマシン」を実現することを提案,しかし GCCSでは実現を不可能視していたため,開発は中断.

• 1943 年に実現したのは郵政省の研究所から派遣された技術者トミー・フラワーズであった.

Page 25: コンピュータの歴史-2 戦時期における暗号解読

コロッサス• 1944 年コロッサス

MarkⅠ は 1500個の真空管を使い,高速に動作した.

• 同年 MarkⅡ が 2400個の真空管で動作性能は MarkⅠ の 5倍.

• 右図は関係者らの証言から複製されたもの( 9割は正しいらしい)

Page 26: コンピュータの歴史-2 戦時期における暗号解読

暗号解読は計算機を生んだ!• Colossus はローレンツマシンを使って暗号化

されたメッセージを解読する際に使われた。 Colossus はふたつのデータ列を比較し、プログラム可能な論理演算を行う。

• 一方のデータは紙テープから高速に読み込まれ、もう一方は内部で生成される。そして、様々な設定でローレンツマシンのエミュレーションを実行する。ある設定での演算が所定の閾値を越えると電気式タイプライタにその結果を出力する。

Page 27: コンピュータの歴史-2 戦時期における暗号解読

コロッサスの性能• 紙テープは毎秒 12m の速度で処理可能.

• 処理できる文字数は毎秒 5000文字

• これは紙テープ中央に穿孔された穴を通過するたびにクロックが生成されていたために生じた限界である.

• 条件分岐命令はなかった.

Page 28: コンピュータの歴史-2 戦時期における暗号解読

コロッサスのその後• チャーチルは 戦後コロッサスを手のひらより小

さい破片に破壊するよう命令した.製作者Tommy Flowers は青写真を燃やした.部品を引き抜き, Newman が マンチェスター大学の計算機研究所に持ち込んだ Colossus Mark I は後に撤去された.

• しかし, 2台の Colossus は GCHQ (旧 GCCS )が 1952 年から 1954 年に移転した後も保管されたが,最後の 1台も 1960 年に分解された.

• コロッサスの存在は戦後も極秘であり, 1970 年代後半まで,その存在は知られていなかった.

Page 29: コンピュータの歴史-2 戦時期における暗号解読

コロッサスが秘密にされた理由

• 暗号解読の持つ政治的重要性(再び強力な暗号生成機構が現れれば,解読に対する投資が爆発的に増加する)

• 実際にイギリスはエニグマやローレンツマシーンの暗号を解読していたことを隠してきた.

• さらに,戦後ドイツ軍から回収したエニグマを植民地に配り,通信を行わせ,傍受・解読もおこなってきた.

Page 30: コンピュータの歴史-2 戦時期における暗号解読

コロッサスの特性

• ある計算機あるいはプログラミング言語がチューリングマシンと等価な計算が行えるとき,「チューリング完全」であるという.

• コロッサスは,チューリング完全ではなかったため,正確には計算機とはみなされない.

• 但し, Harvard Mark I の初期版やコンラッド・ツーゼの Z1,Z2 などもチューリング完全ではない.

Page 31: コンピュータの歴史-2 戦時期における暗号解読

チューリング・マシンチューリングマシンは,• 無限に長いテープ • テープに格納された文字を読み書きするヘッド • 機械の内部状態を記憶するメモリとその遷移機構 (制御部)

 で構成され,内部状態とヘッドから読み出した文字の組み合わせで、次の動作を実行する。

• ヘッドの位置の情報を読みとる • ヘッドの位置に情報を書き込む • 機械の内部状態を変える • ヘッドを右か左に一つ移動する

停止状態になるまでこれを反復して実行し続ける.

Page 32: コンピュータの歴史-2 戦時期における暗号解読

Turing Machine のイメージ

Page 33: コンピュータの歴史-2 戦時期における暗号解読

チューリング・マシンの意義

• 「計算とは何であるか」を明確に定義した.

• すなわち,チューリング・マシンで計算可能なことが「計算できることのすべて」であることを示した.

• ゲーデルの「自然数論を含む帰納的に記述可能な公理系の不完全性に関する定理」によって危機にさらされた数学を守るために確固とした計算の基盤を作りたかったらしい.

Page 34: コンピュータの歴史-2 戦時期における暗号解読

レポート課題• チューリング・マ

シンは仮想的な機械であるが,磁気テープ,制御部はそれぞれ,現代のコンピュータの何に対応するか,理由を含めて説明しなさい.