Straddling Checkerboard
Straddling Checkerboard、すなわち文字を数字に変換する monome-dinome 暗号を暗号化・復号しましょう。最もよく使われる文字は1桁を取り、それ以外のすべての文字は2桁を取るため、出力はメッセージをコンパクトな数字の並びへと分割し、単語の区切りを隠します。盤面を混ぜるキーワードを選び、2つの行を示す列を選び、暗号化と復号を切り替え、盤面が埋まり数字が形作られる様子を眺められます。すべての処理はブラウザ上で実行されます。
キーワード
空白の列
これら2つの列の数字が、2桁の文字のための行を示す指標になります。古典的な盤面では列 2 and 6 を使います。
リアルタイムの盤面
上にテキストを入力すると、Straddling Checkerboard の結果がここに表示されます。
ストラドリング・チェッカーボード の使い方
- 1
暗号化か復号かを選ぶ
文字を数字の並びに変えるには暗号化を、Straddling Checkerboard の数字の並びを文字に戻すには復号を選びます。どちらの場合も同じ盤面のキーが使われます。
- 2
盤面のキーを設定する
任意で、文字の順序を混ぜるキーワードを入力し、行を示す指標になる2つの空白の列を選びます。古典的な盤面はキーワードを使わず、列 2 and 6 を使います。リアルタイムの盤面は各文字がどこに収まるかを正確に示します。
- 3
テキストを入力または貼り付ける
メッセージまたは数字を入力します。暗号は自動で実行され、各文字を1桁または2桁として符号化するか、数字の並びを文字に読み戻し、計算過程をカードごとに表示します。
- 4
確認し、コピーし、共有する
結果を確認し、それをコピーしたり、テキストファイルとしてダウンロードしたり、あなたの正確なキーワード・空白の列・向き・テキストとともにツールを開き直すリンクで共有したりできます。すべてはブラウザ内に留まります。
Straddling Checkerboard を理解する
Straddling Checkerboard とは何ですか?
Straddling Checkerboard は、小さな格子を使って文字を数字に変換する換字暗号です。これを特別にしているのは、コードがすべて同じ長さではないという点です: ごく一握りの最もよく使われる文字は1桁で符号化される一方、それ以外のすべての文字や記号は2桁で符号化されます。ある文字は1桁になり、別の文字は2桁になるため、この暗号は monome-dinome 暗号と呼ばれ、短いコードと長いコードが出力の中で交互に組み合わさる様子が、straddling という名前を与えています。
この不揃いな符号化は巧妙な仕掛けです。E, T, A, O, N, R, I, S のようなよく現れる文字に最も短いコードを与えることで、暗号文はコンパクトに保たれます。ちょうど Morse 符号がよく使われる文字に最も短い信号を与えるのと同じです。同時に、数字の並びにはスペースがなく固定された文字幅もないため、文字どうしの境界が隠されます。Straddling Checkerboard が単独で使われることはまれです。それは Nihilist 暗号や VIC 暗号のような、より強力な紙と鉛筆の方式の第1段階であり、そこで数字はさらに暗号化されます。
Straddling Checkerboard の仕組み
盤面は、列に 0 から 9 までのラベルが付いた格子です。一番上の行には高頻度の文字が入りますが、そのうち2つのセルは空白のままにされます。それら2つの空白の列の上にある数字が行を示す指標になります: それぞれが格子の下にある第2の行にラベルを付けます。一番上の行にある文字は、その列の1桁の数字で符号化されます。より下の行のいずれかにある文字は2桁で符号化され、最初に行を示す指標の数字、次に列の数字が来ます。
そうすると暗号化は直接の参照になります。平文を1文字ずつたどり、各文字を盤面で見つけ、その1桁または2桁のコードを書き留めます。スペースと句読点は取り除かれ、文字は1つの大小に揃えられるため、結果は純粋な数字の並びとなり、1つの文字がどこで終わり次がどこで始まるかを示すものは何もありません。復号は読み取りを逆にします: 数字を左から右へ走査し、2つの行を示す指標の数字のいずれかに出会うたびに、それを次の数字と一緒に2桁のコードとして読みます。そうでなければ1桁がそのまま独立して立ちます。行を示す指標は単独の文字として決して現れないため、この読み取りは常に一義的です。
実例で見る
一番上の行が空白でない列にわたって E, T, A, O, N, R, I, S と並び、2つの空白の列が 2 and 6 にある古典的な盤面を取ります。最初の下の行は指標 2 でラベル付けされ B, C, D, F, G, H, J, K, L, M を保持し、第2の下の行は指標 6 でラベル付けされ P, Q、スラッシュ、U, V, W, X, Y, Z、そしてピリオドを保持します。したがって E is 0、T is 1、A is 3、そして指標2の行の列1にある C は 21 になります。
では、メッセージ ATTACK AT DAWN を暗号化しましょう。1文字ずつ読むと A is 3、T is 1、T is 1、A is 3、C is 21、K is 27、A is 3、T is 1、D is 22、A is 3、W is 65、N is 5 になります。これらのコードを区切りなしでつなげると、暗号文 3113212731223655 が得られます。復号するには、それらの数字を左から走査します: 3 は行を示す指標ではないので A、次に 1 は T、1 は T、3 は A、それから 2 が組を始めるので 21 は C、27 は K、というように続けて、ATTACKATDAWN を再構成します。スペースが消えているのは文字だけが符号化されるからであり、それこそが数字の並びが単語の区切りを隠すやり方そのものです。
キーワードと空白の列
2つの選択が盤面を定め、キーとして働きます。1つ目は文字の順序を混ぜるキーワードです: キーワードの重複しない文字がまず盤面に書き込まれ、それから残りの文字と記号が通常の順序で続きます。共有されたキーワードから作られた盤面は、どの文字がどのコードを得るかをかき混ぜるため、キーワードについて合意した2人の通信者は同じ盤面を作り出す一方、部外者は作れません。キーワードがなければ盤面は自然な順序で埋まり、上の教科書的な例が再現されます。
2つ目の選択は、一番上の行のどの2つの列を空白にするかです。それら2つの列の数字が2つの下の行のための行を示す指標になり、それらを変えるとすべての2桁のコードが変わります。このツールでは両方を設定できます: キーワードを入力して盤面を混ぜ、0 から 9 までの異なる任意の2つの列の数字を空白として選びます。リアルタイムの盤面が即座に更新されるので、各文字がどこに収まるかを正確に見ることができ、復号には同じキーワードと列が必要なので、それらは見えるテキストの中ではなく共有リンクの中に入って運ばれます。
VIC 暗号と冷戦の歴史
Straddling Checkerboard は、これまで実戦投入された手作業の暗号の中で最も洗練されたものの一つである VIC 暗号の核心として最もよく知られています。それは、1950年代にアメリカ合衆国で活動した、コードネーム VICTOR のソ連の工作員 Reino Hayhanen にちなんで名付けられました。彼は Straddling Checkerboard を使って自分のメッセージを数字に変え、それから日付・フレーズ・個人的な数字から導かれた秘密のキーによって動かされるさらなる数値的な手順を重ね、何年も解析に耐える暗号文を生み出しました。
この方式は、有名な中空ニッケル硬貨事件を通じて明るみに出ました。数字の並びをマイクロフィルムに収めた、くり抜かれた5セント硬貨がニューヨークに現れましたが、FBI は 1957 年に Hayhanen が亡命してその方法を説明するまで、そのメッセージを破ることができませんでした。この出来事は、よく設計された紙と鉛筆の暗号がどれほど強力になり得るかと、より難しい暗号化の段階が適用される前に平文を圧縮する基盤として Straddling Checkerboard がどのように役立ったかの両方を示しました。
Straddling Checkerboard はどれほど強いのですか?
単独では、Straddling Checkerboard は単純な換字であり、安全ではありません。各文字は常に同じ1桁または2桁に対応するため、根底にある文字の頻度が数字の並びの中に生き残ります。チェッカーボードを疑う解析者は、先頭の数字として異常によく現れる2つの数字を探し、それらを行を示す指標と特定し、並びを1桁と2桁のコードに分割し、それから普通の換字パズルのように結果を解くことができます。キーワードは配置を変えますが、これらの統計を隠しはしません。
その本当の価値は構成要素としてのものです。テキストをコンパクトで可変長の数字の並びに変換することは、その後に転置やモジュラー加算を加える方式にとって理想的な第1段階です。なぜなら分割が各文字の情報をメッセージ全体に広げ、役立ってしまう単語の隙間を取り除くからです。それこそが Nihilist 暗号と VIC 暗号がそれを使うやり方です: チェッカーボードが圧縮し偽装し、後の段階が暗号としての強さを供給します。
Straddling Checkerboard は安全ですか?
いいえ。現代の基準では、Straddling Checkerboard は機微な情報に対して何の保護も提供しません。それは可逆な符号化に単純な換字を加えたものであり、数字のパターンに気づいた者は誰でも紙と鉛筆でテキストを復元できます。分割と可変長コードがどう働くかを学ぶため、そしてパズル・脱出ゲーム・キャプチャー・ザ・フラッグの課題のためにはすばらしいものですが、大切なものを守らせるべきでは決してありません。
このツールは、仕組みを探るため、チェッカーボードのパズルを作って解くため、そして冷戦のスパイ暗号がどのようにその仕事を始めたかを見るために使ってください。本物のデータを守るためには、代わりに AES のような現代的で十分に検証されたアルゴリズムに頼ってください。ここではすべてがブラウザ内でローカルに実行されるため、入力したものが何一つ端末から離れることなく自由に試すことができます。
よくある質問
Straddling Checkerboard とは何ですか?
なぜある文字は1桁で別の文字は2桁なのですか?
Straddling Checkerboard のメッセージはどう読むのですか?
Straddling Checkerboard の例を見せてもらえますか?
キーワードは何のためですか?
空白の列とは何ですか?
Straddling Checkerboard は VIC 暗号と同じですか?
VIC 暗号と中空ニッケル硬貨事件とは何ですか?
この暗号はスペースや句読点を保ちますか?
Straddling Checkerboard はどうやって復号しますか?
Straddling Checkerboard は安全ですか?
入力したテキストはサーバーに送信されますか?
関連ツール
こちらの便利なツールもどうぞ