T

Text Machine

強力なテキストツールを、ブラウザで

エニグマ暗号機

第二次世界大戦のドイツのエニグマ暗号機でシミュレート・エンコード・デコードしましょう。リフレクター、3 つのローター、それぞれのリング設定と初期位置、そしてプラグボードを選び、メッセージを入力してローターが進む様子を見てください。エニグマは相互的です。同じ設定で暗号化も復号も行えるため、専用の復号モードはありません。すべてブラウザー内で動作します。

エニグマは相互的です。同じ機械設定で暗号化と復号の両方ができます。メッセージを読むには、ローター、リング、位置、プラグボードを暗号化時とまったく同じ設定にし、暗号文を貼り付けてください。結果が元の平文になります。専用の復号ボタンはありません。

機械の設定

リフレクター

ローター

左(低速)

中央

右(高速)

リング設定

初期位置

プラグボード

プラグボードはローターの前後で文字をペアごとに入れ替えます。AB CD EF のようにペアを入力してください。各文字は一度しか使えません。入れ替えなしにするには空欄のままにします。空白やその他の文字は無視されます。

テキスト
結果

上にテキストを入力すると、ここにエニグマの結果が表示されます。

エニグマ暗号機 の使い方

  1. 1

    リフレクターとローターを選ぶ

    リフレクター B または C を選び、左・中央・右のスロット用にローター I〜V から 3 つを選びます。標準的な基準設定は、リフレクター B にローター I・II・III です。

  2. 2

    リング設定を決める

    3 つのリング設定を AAA のように文字で入力します。リング設定(Ringstellung)は、各ローターの配線を文字環に対して回転させ、結果を変えます。

  3. 3

    初期位置を決める

    3 つの初期位置を AAA のように文字で入力します。これは入力を始める前にローターを合わせておく位置で、ローター窓に表示されます。復号するには、暗号化に使ったのと同じ初期位置を使ってください。

  4. 4

    プラグボードのペアを追加する

    必要に応じて AB CD EF のようにプラグボードのペアを入力します。各ペアはローターの前後で 2 文字を入れ替え、各文字は一度しか使えません。プラグボードを使わない場合は欄を空のままにします。

  5. 5

    入力して結果を読む

    メッセージを入力するか貼り付けると結果がすぐに表示され、リアルタイム計算でローター窓が進みます。エニグマは相互的なので同じ設定で暗号化も復号もでき、あなたの正確な機械設定とテキストでツールを再び開くリンクを、コピー・ダウンロード・共有できます。

エニグマ暗号機を理解する

エニグマ暗号機とは?

エニグマ暗号機は、ドイツの技術者アルトゥル・シェルビウス(Arthur Scherbius)が 1918 年ごろに発明した電気機械式のローター暗号装置です。木箱に収まったタイプライターのような外観で、キーボード、その上に並ぶ 26 文字が光るランプ盤、ローターと呼ばれる回転する車輪の組、そして前面のケーブル式プラグボードから成ります。文字を押すと電流がプラグボードを通り、ローターとリフレクターを横切り、戻ってきてランプ盤の別の文字を点灯させます。その光った文字が暗号文です。キーを押すたびにローターも回るため、同じ平文の文字でも現れるたびに違う暗号文になります。これがエニグマを単純な換字ではなく多表式暗号にしている点です。

ドイツ軍に採用され絶えず改良されたエニグマは、第二次世界大戦を通じてナチス・ドイツの秘密通信の屋台骨となりました。ドイツは、設定の組み合わせが膨大であることから解読不可能だと信じていました。それは誤りでした。マリアン・レイェフスキ(Marian Rejewski)率いるポーランドの数学者たちは 1930 年代初頭に機械とその配線を再構築し、その成果は英国のブレッチリー・パークでアラン・チューリング(Alan Turing)、ゴードン・ウェルチマン(Gordon Welchman)ら多くの人々によって発展させられました。彼らの解読は戦争を短縮したと広く考えられています。このツールは、ドイツ陸軍と空軍が使った標準的な 3 ローターのエニグマ I を再現します。

エニグマ暗号機の仕組み

エニグマの構成には 4 つの働く部分があります。プラグボード(Steckerbrett)は、ローター列の前後でケーブルにより文字をペアごとに入れ替えます。ローター(Walzen)は、26 個の入力接点それぞれが入り組んだ出力接点につながるよう配線された車輪で、この機械は 5 つの中から選んで順序づけた 3 つを同時に使います。リフレクター(Umkehrwalze)は末端にあり、固定された対応づけで電流をローターへ送り返します。そしてランプ盤が結果を表示します。したがって信号は往復します。プラグボード、右ローター、中央ローター、左ローター、リフレクター、左ローター、中央ローター、右ローター、プラグボード、そして最後にランプ、という順です。

3 つの設定が、特定の日やメッセージ向けに機械を個別化します。リング設定(Ringstellung)は、各ローターの配線を文字環に対して回転させます。初期位置(Grundstellung)は、入力を始める前に各ローターを合わせておく位置で、小さな窓から見えます。プラグボードのペアは最後の入れ替えの層を加えます。キーを押すたびにローターは走行距離計のように進むため、電流が通る配線は決して 2 回続けて同じになりません。ツールの下のリアルタイム計算は、メッセージの各文字に対して 3 つのローター窓が進む様子を示します。

計算例

機械を、最もよく引用される基準構成に設定します。リフレクター B、左から右へローター I・II・III、3 つのリング設定をすべて A、3 つの初期位置をすべて A、プラグボードは空です。ここで A を 5 回入力します。最初のキー押下で右ローターが進み、電流が往復してランプ B が点灯します。残りの A を入力すると、そのたびにローターが進み、D、続いて Z、G、O が点灯します。したがって平文 AAAAA は BDZGO に暗号化されます。これはローターが正しく配線されていることを確認する古典的なテストです。

エニグマは相互的なので、復号にはまったく同じ設定を使います。3 つのローターを初期位置 A に戻し、ほかは変えずに暗号文 BDZGO を入力してください。元のメッセージ AAAAA が出てきます。同じ設定でテキストが復元されました。だからこのツールには専用の復号モードがありません。暗号化に使った設定を復元して暗号文を入力し直すだけです。

リフレクターと相互性

エニグマを相互的にしているのはリフレクターです。26 本の線を対称にペアにするため、キーからランプへ電流がたどる経路は完全に可逆です。あるローター構成で A を押すと G が光るなら、同じ構成で G を押せば A が光ります。ローターの進みは設定とメッセージ内での文字の位置だけに依存し、文字そのものには決して依存しないため、機械を同じ開始状態に戻しさえすれば、復号は暗号化とまったく同じになります。手順は 1 つ、設定は 1 つ、向きは両方です。

リフレクターはエニグマの最も有名な欠陥も生みました。文字は決して自分自身に暗号化されません。電流は出ていった線とは必ず別の線で戻ってくるため、A は A 以外のどの文字にもなり得ますが、A にはなりません。一見無害ですが、これは解読者に強力な手段を与えました。平文の一片、いわゆるクリブがメッセージのどこかにあると推測できれば、それを暗号文に沿ってずらし、文字が自分自身と一致する位置をすべて即座に除外でき、探索範囲を劇的に狭められたのです。便利さを加えるための設計が、連合国に足がかりを与えてしまいました。

ローターの進みと二重ステップ

ローターは走行距離計の車輪のように回りますが、ひとひねりあります。右ローターはキーを押すたびに進みます。各ローターには繰り上げの切り欠きがあり、ローターがその切り欠きを越えて進むと、左隣のローターを 1 つ前へ押します。こうして右ローターが一周して切り欠きに達すると中央ローターが進み、中央ローターがやがて切り欠きに達すると左ローターが進みます。これが、機械がなかなか繰り返さない理由です。3 つのローターでは、完全な周期は数千文字に及びます。

二重ステップと呼ばれる、よく知られた変則があります。ステップ用レバーのかみ合い方のため、中央ローターが自身の繰り上げ位置にあると、次のキー押下で左ローターと一緒に進み、しかも直前の押下で右ローターによってもすでに進められていたため、短い間に 2 回動いたように見えます。忠実なエニグマ・シミュレーターはこの異常を再現しなければならず、このツールも再現します。中央ローターが切り欠きの近くにあるとき、リアルタイム計算でその発生を見られます。進みを正確に合わせることは不可欠です。たった 1 つの誤った進みが、それ以降のすべての文字を狂わせてしまうからです。

エニグマ暗号はどのように破られたか

最初の突破口はポーランドから生まれました。1932 年、数学者マリアン・レイェフスキ(Marian Rejewski)はイェジ・ルジツキ(Jerzy Rozycki)、ヘンリク・ジガルスキ(Henryk Zygalski)とともにポーランド暗号局で、置換論と盗み出された設定一覧を使って軍用エニグマの内部配線を再構築しました。これは長らく不可能と思われていた偉業です。ポーランドは電気機械式の補助装置を作り、何年もドイツの通信を読み、戦争の直前にすべてを英国とフランスに共有しました。その贈り物が、ブレッチリー・パークが築かれる土台となりました。

ブレッチリー・パークでは、アラン・チューリング(Alan Turing)とゴードン・ウェルチマン(Gordon Welchman)が、その日の鍵を見つけるために膨大な数のローター設定を高速に試す機械「ボンブ(Bombe)」を設計しました。彼らの攻撃は、自己暗号化が起きない欠陥、天気予報や決まり文句のような予測可能な平文のクリブ、そして鍵の使い回しやずさんな選び方といった操作員のミスに依拠しました。ドイツがローターやプラグを増やすにつれ作業は難しくなりましたが、解読は止まりませんでした。そこから得られた情報は「ウルトラ(Ultra)」という暗号名で呼ばれ、第二次世界大戦を短縮し多くの命を救ったと広く評価され、現代のコンピューティングの基礎を築く一助ともなりました。

エニグマ暗号は安全か?

当時の基準では、エニグマは恐るべきものでした。ローターの選択、リング設定、初期位置、そして 10 本のプラグボード・ケーブルを数えると、可能な設定は約 159 京通りに上ります。しかし、生の鍵の数は安全性と同じではありません。構造的な欠陥、とりわけどの文字も自分自身には暗号化されないこと、予測可能なメッセージ内容、そして人為的なミスにより、適切な機械と手法を持つ分析者は日々の鍵を何度も何度も復元できました。現代のコンピューターに対しては、完璧に運用されたエニグマでさえまったく保護になりません。

今日、エニグマ暗号はその教えと並外れた歴史ゆえに研究され、楽しまれています。ローター機械、多表式換字、そして入念な暗号解読がいかに暗号を打ち破るかを理解する最良の方法の一つであり、博物館、映画、パズル、capture the flag の課題に絶えず登場します。本物の情報を守るには、AES のような現代的で十分に検証されたアルゴリズムに常に頼るべきです。

よくある質問

エニグマ暗号機とは何ですか?
エニグマ暗号機は、アルトゥル・シェルビウス(Arthur Scherbius)が 1918 年ごろに発明し、ナチス・ドイツが第二次世界大戦を通じて使用した電気機械式のローター暗号です。キーを押すと電流がプラグボード、3 つの回転ローター、リフレクターを通って暗号文の文字を点灯させ、キーを押すたびにローターが進むため、同じ文字でも毎回違う暗号文になります。このツールは標準的な 3 ローターのエニグマ I をシミュレートします。
エニグマ暗号機はどのように動作しますか?
信号は往復します。プラグボードを通り、次に右・中央・左のローターを通り、リフレクターで跳ね返り、ローターを逆向きに戻り、もう一度プラグボードを通ってランプを点灯させます。キーを押すたびに、その前にローターが走行距離計のように進みます。リフレクターは線を対称にペアにするため暗号が相互的になり、同じ設定で暗号化と復号の両方ができます。
エニグマのメッセージはどうやって復号しますか?
リフレクター、ローター、リング設定、初期位置、プラグボードを、メッセージの暗号化に使われたのとまったく同じ値に設定し、暗号文を貼り付けます。エニグマは相互的なので専用の復号モードはなく、正しい設定なら出力が元の平文になります。設定が分からない場合は、暗号解読によってそれを復元する必要があります。
エニグマの例を見せてもらえますか?
リフレクター B、ローター I・II・III、すべてのリング設定を A、すべての初期位置を A、プラグボードを空にすると、AAAAA を入力すると BDZGO になります。同じ機械を初期状態に戻して BDZGO を入力すると AAAAA に戻ります。エニグマが相互的だからです。この AAAAA から BDZGO という結果は、エニグマ・シミュレーターが正しく配線されていることを示す古典的なテストです。
なぜエニグマには専用の復号ボタンがないのですか?
エニグマはリフレクターのおかげで相互的です。どのローター構成でも、A が G を点灯させるなら G は A を点灯させ、ローターの進みは設定と文字の位置だけに依存し、文字そのものには依存しません。そのため復号は、機械を同じ開始状態に戻して行う、暗号化とまったく同じ操作です。1 つの設定が両方向を扱うので、復号モードは必要ありません。
ローター、リング設定、初期位置とは何ですか?
ローターは 26 文字をかき混ぜるよう配線された車輪で、この機械は 5 つの中から選んだ 3 つを、選んだ順序で使います。リング設定(Ringstellung)は、ローターの内部配線を文字環に対して回転させます。初期位置(Grundstellung)は、入力を始める前に各ローターを合わせておく位置です。両者が合わさって日々の鍵の大部分を成します。
プラグボードとは何ですか?
プラグボード(Steckerbrett)は、信号がローターに入る前と戻った後に文字をペアごとに入れ替える、ケーブル差込口のパネルです。たとえば A と B をつなぐと、すべての A が B として、すべての B が A として扱われます。各文字は一度しか差し込めず、プラグボードはエニグマの可能な設定数を大幅に増やしました。
なぜ文字は決して自分自身に暗号化されないのですか?
リフレクターは電流を必ず出ていった線とは別の線で戻すため、文字は決して自分のランプを点灯できません。A は A 以外の何にでもなり得ます。これは重大な弱点でした。解読者は推測した平文の一片を取り、暗号文に沿ってずらし、文字が自分自身と一致するどの並びも除外できたため、鍵を見つける作業が大きく減りました。
誰がエニグマ暗号を破ったのですか?
ポーランドの数学者マリアン・レイェフスキ(Marian Rejewski)、イェジ・ルジツキ(Jerzy Rozycki)、ヘンリク・ジガルスキ(Henryk Zygalski)が 1930 年代に最初に軍用エニグマを再構築してその通信を読み、その成果を英国とフランスに共有しました。ブレッチリー・パークでは、アラン・チューリング(Alan Turing)とゴードン・ウェルチマン(Gordon Welchman)がボンブを作り、多くの同僚とともにエニグマを日常的に解読しました。彼らの情報は「ウルトラ(Ultra)」と呼ばれ、第二次世界大戦を短縮したと広く評価されています。
エニグマ暗号はどれくらい安全でしたか?
当時としてはエニグマは非常に強力で、可能な設定は約 159 京通りありました。しかし、膨大な鍵の数は安全性を保証しません。自己暗号化が起きない欠陥、予測可能なメッセージ内容、鍵の使い回し、操作員のミスにより、分析者は日々の設定を繰り返し復元できました。現代のコンピューターに対しては、完璧に運用されたエニグマでも本当の保護にはなりません。
私のテキストはサーバーにアップロードされますか?
いいえ。すべてのエンコードとデコードは完全にブラウザー内で行われるため、あなたのテキストや機械設定がアップロード・記録・保存されることはありません。共有リンクでさえ、あなたのデータを URL のハッシュより後ろの部分に保持します。その部分はブラウザーがサーバーに送ることはないので、あなたが共有を選ぶまで非公開のままです。

関連ツール

こちらの便利なツールもどうぞ

シーザー暗号

ヴィジュネル暗号

アトバシュ暗号

レールフェンス暗号

プレイフェア暗号

アフィン暗号