ADFGX / ADFGVX暗号
第一次世界大戦におけるドイツ陸軍の野戦暗号、ADFGX暗号と ADFGVX暗号を暗号化・復号しましょう。各文字はまず Polybius 方陣から読み取った二つのラベル文字に分けられ (分割の段階)、続いて連なり全体が縦列転置のキーワードでかき混ぜられます。方陣を混ぜ、転置の鍵を設定し、リアルタイムの二段階の作業を追いながら、結果をコピー・ダウンロード・共有できます。すべての処理はブラウザ上で実行されます。
方陣の鍵
転置の鍵
方陣の鍵は各文字を分割する Polybius 方陣を混ぜ、転置の鍵は結果をかき混ぜる縦列を決めます。両者とも同じ方陣と鍵を使わなければなりません。転置の鍵を空のままにすると、分割の段階だけを単独で見ることができます。
上にテキストを入力すると、結果がここに表示されます。
ADFGX方陣
A
D
F
G
X
A
D
F
G
X
ADFGX / ADFGVX暗号 の使い方
- 1
暗号化か復号と方陣を選ぶ
平文を ADFGX暗号文に変えるには暗号化を、暗号文を戻すには復号を選びます。文字には 5×5 の ADFGX方陣を、数字も運ぶには 6×6 の ADFGVX方陣を選びます。
- 2
二つのキーワードを設定する
任意で、Polybius 方陣を混ぜる方陣キーワードと、縦列の段階を動かす転置キーワードを入力します。両者とも同じ方陣と鍵を使わなければなりません。分割だけを見るには転置の鍵を空のままにします。
- 3
テキストを入力または貼り付ける
メッセージを入力すると、入力すると同時に変換されます。手順パネルが各文字をその二つのラベルの上に示し、続いてラベルを鍵を付けた縦列に流し込んだ様子を示します。
- 4
方陣を読む
ADFGX方陣を開いて、すべての文字をその行と列のラベルとともに、また強調されたキーワードのマスを確認しましょう。
- 5
コピー・ダウンロード・共有する
結果をコピーしたり、テキストファイルとしてダウンロードしたり、入力したテキスト・方陣・キーワードをそのまま整えてツールを開き直すリンクで共有したりできます。
ADFGX暗号と ADFGVX暗号を理解する
ADFGX / ADFGVX暗号とは何ですか?
ADFGX暗号は、ドイツ陸軍の将校 Fritz Nebel が考案した野戦暗号で、第一次世界大戦の終盤に近い1918年3月、西部戦線で運用に投入されました。その拡張形である ADFGVX は1918年6月に続きました。この暗号の名は、その出力に現れる唯一の文字 — 元の方式では A、D、F、G、X、拡張版では A、D、F、G、V、X — に由来します。これらの文字は意図的に選ばれました。モールス信号でそれぞれが互いに大きく異なるため、ひどく乱れた無線送信であっても一方が他方に変わってしまう恐れが小さかったのです。
ADFGX は分割転置暗号であり、二つの段階で働くことを意味します。まず Polybius 方陣を使ってすべての文字を二つの記号に分け (分割)、続いてキーワードで動く縦列転置によって、得られた記号の連なりをかき混ぜます。どちらの段階も単独では強くありませんが、換字と転置を組み合わせることで各文字の情報がメッセージ全体に広がり、これによって ADFGVX はその時代で最も解読の難しい野戦暗号の一つとなりました。
ADFGX か ADFGVX か: どちらの方陣ですか?
ADFGX は25個のマスを持つ 5×5 の方陣を使います。ラテン文字は26文字あるため、古典的な Polybius 方陣とまったく同じように I と J が一つのマスを共有します。したがって復号された J は I として読み戻されます。五つの行と列のラベルは A、D、F、G、X です。これは1918年の元の暗号であり、文字だけしか運べません。
ADFGVX は六つ目のラベル V を加えて、36個のマスからなる 6×6 の方陣を作ります。その余分な空間によって、26文字すべてを一つも統合せずに収め、さらに0から9までの十個の数字も収められるので、数字を綴り出すことなく暗号化できます — 地図の座標、日付、部隊番号を送るのに不可欠でした。上のトグルで方陣を選んでください。リアルタイムの参照グリッドが、それに合わせて行と列のラベルを付け替えます。
方陣、ラベル、そして二つのキーワード
この暗号の中心は方陣です。ある文字のマスを読むと行のラベルと列のラベルが得られ、そのラベルの組がその文字の符号となります。このツールは任意の方陣キーワードから方陣を組み立てます — 鍵を付けた Polybius や Playfair の方陣とまったく同じように、キーワードの重複しない文字を順に、繰り返しなく先に書き入れ、残りのアルファベットが続きます。リアルタイムの方陣はキーワードのマスを強調するので、混ざる様子を見られます。歴史的には方陣はでたらめにかき混ぜたものでしたが、キーワードは同じ効果に至るための便利で再現しやすい方法です。
ADFGX は二つ目の独立した秘密を必要とします: 転置のキーワードです。すべての文字がラベルの組に変えられたあと、連なり全体がこのキーワードの下に行ごとに書き出され、縦列は鍵の文字のアルファベット順に読み取られます。二つの鍵は異なる役目を果たします — 方陣の鍵は各文字が何になるかを決め、転置の鍵は各片がどこに行き着くかを決めます — そして両者とも両方を共有しなければなりません。このツールでは転置の鍵を空のままにして、分割の段階だけを見ることができます。
ADFGX暗号の仕組み
暗号化は二つの段階で進みます。第一段階、分割: メッセージの各文字を方陣の中で見つけ、その行のラベルに続いて列のラベルへと置き換えます。N 文字のメッセージは 2N 個のラベル文字の連なりになります。第二段階、転置: その連なりを転置のキーワードの下に行ごとに書き出します。縦列の数はキーワードの文字数だけあり、続いて縦列をキーワードの文字のアルファベット順に一つずつ持ち上げて、つなぎ合わせて暗号文とします。伝統的には五文字ずつの組で書きます。
転置こそがこの暗号に強さを与えるものです。分割のあと、一つの文字の二つの片は隣り合って並んでいますが、縦列の読み取りがそれらを引き離し、他の文字の片の間に散らばらせるので、ただ一つの平文の文字を取り戻すにも、まずメッセージ全体の転置を元に戻さなければなりません。上のツールは両方の段階をリアルタイムで示します。分割パネルが各文字をその二つのラベルの上に並べ、転置パネルがラベルの連なりを鍵を付けた縦列に流し込んだ様子を、読み取り順に番号を振って示します。
ADFGX の実例
単語 ATTACK を素の 5×5 方陣と転置の鍵 KEY で扱ってみましょう。各文字をその行と列のラベルに分割します: A は AA、T は GG、T は GG、A は AA、C は AF、K は DX です。つなぎ合わせるとラベルの連なり AAGGGGAAAFDX となり、元の六文字の二倍の長さです。
さて転置します。鍵 KEY は三文字なので、連なりを三つの縦列に書き出します — 四つの行として AAG、GGG、AAA、FDX を、見出し K、E、Y の下に並べます。見出しのアルファベット順に縦列を読みます: まず E が A G A D を与え、続いて K が A G A F を、続いて Y が G G A X を与えます。つなぎ合わせて五文字ずつに組むと、ATTACK は AGADA GAFGG AX に暗号化されます。方陣キーワードを加えたり、転置の鍵を変えたりすると、結果はまったく変わりますが、それでも ATTACK へと復号できます。
ADFGX のメッセージを復号する
復号は二つの段階を逆にたどります。暗号文の長さと転置のキーワードから、各縦列に属するラベル文字の数を正確に割り出せます。暗号文はそれらの縦列に切り分け直され、縦列は元の順に戻され、行を横に読むと分割されたラベルの連なりが組み立て直されます。その連なりを二つのラベルずつ — 行のラベルに続いて列のラベル — 取り、各組を方陣の中で引くと元の文字が取り戻されます。復号を選ぶと、ツールがこれらすべてをあなたの代わりに行います。
正しく復号するには、暗号化に使われたのと同じ方陣 (同じ方式と方陣キーワード) と同じ転置のキーワードを使わなければなりません。そのどれか一つでも間違えると、縦列が誤った場所で切られるため、ラベルが誤って組になり、出力が文字化けします — これはまさにこの暗号を野戦で役立つものにした性質です。5×5 の方陣には文字だけ、6×6 の方陣には文字と数字だけが入っているため、元のメッセージのほかのものは暗号化の途中で取り除かれ、ふたたび現れることはありません。
歴史、Painvin、そして安全性
ADFGVX はその設計だけでなく、破られたことでも有名です。1918年6月、ドイツの春季攻勢がパリへ迫るなか、フランスの暗号解読者 Georges Painvin は、数週間にわたる消耗の激しい作業のすえに傍受された ADFGVX のメッセージを解き、その中にはドイツ軍がどこを攻撃するつもりかを明らかにしたことから「勝利の電文」と呼ばれるようになったメッセージも含まれていました。彼の解読は第一次世界大戦の暗号解読における最も称えられる功績の一つであり、連合国が攻撃を予期する助けとなりました。
現代の基準では ADFGVX は安全ではありません。その分割と転置の組み合わせは単純な頻度分析を打ち負かしますが、Painvin が切り開いた手法や、現代のコンピューターを使った攻撃に屈します。とりわけ複数のメッセージが同じ鍵を共有しているときや、十分な暗号文が手に入るときはなおさらです。今日その価値は教育にあります: 換字と転置を積み重ねることがどのように暗号を強めるかを、いきいきと手を動かして示す例だからです。本当の情報を守るには、つねに AES のような現代的で査読を経たアルゴリズムを使い、ADFGX は歴史やパズル、キャプチャー・ザ・フラッグのチャレンジのために取っておきましょう。
よくある質問
ADFGX暗号とは何ですか?
ADFGX と ADFGVX の違いは何ですか?
なぜ A、D、F、G、V、X の文字が使われるのですか?
ADFGX暗号はどう動きますか?
二つのキーワードは何のためにありますか?
ADFGX の実例を見せてもらえますか?
ADFGX のメッセージはどうやって復号しますか?
ADFGVX暗号を破ったのは誰ですか?
暗号における分割とは何ですか?
ADFGVX の方陣はでたらめでなければなりませんか?
ADFGX暗号はどれほど安全ですか?
入力したテキストはサーバーに送信されますか?
関連ツール
こちらの便利なツールもどうぞ