エニグマとは、ドイツの電気技術者シェルビウスが発明した暗号機のこと。
第2次世界大戦でドイツ軍が採用し、イギリスが解読に成功したことで大戦の早期終結につながった。
構造
エニグマは、キーボードで入力した文字(原字)をプラグボード、ローター、リフレクター、ローター、プラグボードの順に通し、暗号化した文字(暗字)をランプボードに表示する。エニグマの設定パターンは、最終的に約159×10の18乗通りまでなった。
プラグボード
所定の差込口にケーブルで挿すことで、指定した文字同士を入れ替える。初期の運用では6組12文字が入れ替えられた。この場合の配線パターンは約1,000億通りとなる。
ローター
複数並べて使用する円盤状の構造物で、入力した文字を別の文字に変換する。1枚で26通りあるローターのセット位置によって出力する文字が変わる。外周にはアルファベットの刻印があり、セット位置の目印に使用される。
標準的な3枚ローターでは、1文字入力すると1番ローターが1目盛り進み、それが1周すると2番ローターが1目盛り進み、2番ローターが1周すると3番ローターが1目盛り進む。この機構により、同じ文字を連続して入力しても違う文字が出力される。
この場合のセット位置パターンは17,576通りとなる。さらに、ローターはそれぞれ回路が異なり配列の影響を受ける。初期の運用では配列パターンは6通り、合わせるとローターのパターンは105,456通りとなる。
リフレクター
ローターから得た文字を、固定ペア同士で入れ替えローターに返す。たとえばAとZがペアなら、Aが来たらZに変換する。これにより、暗号化と暗号解読(復号)を設定を変えずに行える(反転性)。また、Aと入力し偶然Aが出力されることはない(不完全性)。
これはリフレクターが折り返し地点となり、同じローターの別の接点に信号を返すため。
エニグマの標準的な運用方法
まず両オペレーターが、日ごとのプラグボードやローターの設定(日鍵)が載ったコードブックに従いエニグマを設定する。 次に送信者が、任意の3文字(個別鍵)を2回送信した後、ローターを個別鍵で指定したセット位置に変更し暗号文を送る。
受信者は個別鍵解読後、その個別鍵に従いローターを再設定し復号する。エニグマの仕様(ローター数等)や日鍵は陸海空軍、各戦線で異なった。日鍵に前日と同じローター配列を避けたり個別鍵にAAAを選ぶ等、人の癖が解読のヒントになることがあった。
歴史
エニグマの採用
1918年、ドイツの電気技術者シェルビウスがエニグマを発明した。1926年、ドイツ軍がエニグマを採用し近隣諸国はドイツの暗号が解読不能になった。これに危機感を抱いた隣国ポーランドは、従来の言語学者ではなく数学者中心の解読班を結成した。
ポーランドによる解読
1932年、ポーランドの数学者レイェフスキがエニグマの配線を特定した。これにより日鍵を入手すれば暗号を解読できるようになった。1936年頃、彼は数十分でローターの設定を特定できる画期的な方法を確立した(カードカタログ)。
いま2回送信された個別鍵がHFRSKWの時、HとS、FとK、RとWは同じ文字の暗字となる。彼はこの関係を同日の複数の暗号文で確認し、つなげるとすべての文字がH→S→A→Hというような循環する組(巡回置換)に分かれることを発見した。
この巡回置換の組数と文字数の関係はローターの設定に依存するため、設定の選択肢の絞り込みができた。またプラグボードの設定は、予想のつく文字列を探すことで特定した。たとえば、AITLERという文字列はHITLER(ヒトラー)と予想できる。
ドイツはたびたびエニグマの運用方法を変更したが、ポーランドはその都度対応し個別鍵を用い日鍵を探索する機械(ボンバ)も開発した。1938年、ドイツが選択するローターやプラグ数を増やし、ポーランドは暗号解読が資源不足で困難になった。
イギリスによる解読
1939年7月、ポーランドがイギリスとフランスにエニグマの解読情報を渡した。1939年9月、第2次世界大戦が勃発した。イギリスは暗号解読を引き継ぎ、追加されたローターや一部コードブックの入手にも成功した。
1939年秋、イギリスの数学者チューリングが、暗号解読に予測可能なフレーズ(クリブ)を利用する方法を確立した。たとえば、ドイツが毎朝行う気象情報通信ではWETTER(天候)がクリブとなった。
1940年3月、チューリングがクリブを用い日鍵を探索する機械(ボンベ)を開発した。その後も彼は、ローターの配列を絞り込む手法(バンブリスマス)等も開発した。1940年5月、ドイツ軍が個別鍵の2回送信を廃止した。
戦後
イギリスによる暗号解読は大戦の早期終結につながった。戦後、イギリスはその事実を隠し植民地にエニグマを配布、 各国を監視し続けた。
0 件のコメント:
コメントを投稿