T

Text Machine

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

バイフィッド暗号

バイフィッド暗号を暗号化・復号しましょう。各文字をポリュビオス座標へ分割し、それらを混ぜ合わせることで、出力されるすべての文字が二つの入力に依存するようにします。周期を設定し、5×5 と 6×6 の方陣を切り替え、任意のキーワードを加え、リアルタイムの分割を追いながら、結果をコピー・ダウンロード・共有できます。すべての処理はブラウザ上で実行されます。

暗号設定

方陣

周期

キーワード

周期はブロックの大きさです。テキストはこの数の文字からなるブロックに分けられ、座標は各ブロックの中で混ぜられます。両者とも同じ周期を使わなければなりません。

平文
暗号文

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

ポリュビオスの方陣

1

2

3

4

5

1

A
B
C
D
E

2

F
G
H
I/J
K

3

L
M
N
O
P

4

Q
R
S
T
U

5

V
W
X
Y
Z

バイフィッド暗号 の使い方

  1. 1

    暗号化か復号を選ぶ

    平文をバイフィッド暗号文に変えるには暗号化を、暗号文を平文に戻すには復号を選びます。

  2. 2

    方陣とキーワードを選ぶ

    I と J が一つのマスを共有する古典の 5×5 の方陣を選ぶか、数字 0 から 9 までを加える 6×6 の方陣を選びます。素の方陣を使うにはキーワードを空のままにし、混ぜるには一つ入力します。

  3. 3

    周期を設定する

    暗号が働くブロックの大きさを選びます。周期 0 はメッセージ全体を一つのブロックとして扱います。両者とも同じ周期を使わなければなりません。

  4. 4

    テキストを入力または貼り付ける

    メッセージを入力すると、入力すると同時に変換されます。分割パネルが各ブロックの文字をその行と列の数字の上に示します。

  5. 5

    コピー・ダウンロード・共有する

    結果をコピーしたり、テキストファイルとしてダウンロードしたり、入力したテキスト・方陣・キーワード・周期をそのまま整えてツールを開き直すリンクで共有したりできます。

バイフィッド暗号を理解する

バイフィッド暗号とは何ですか?

バイフィッド暗号は、フランスの暗号学者 Félix-Marie Délastelle が1901年ごろに考案した古典暗号です。これはポリュビオスの方陣の上に直接築かれます。すべての文字はまず一対の座標 — その行と列 — に変えられ、続いてそれらの座標が一緒にかき混ぜられてから、ふたたび文字として読み戻されます。この二段階の設計は換字と転置を結びつけており、それこそが素のポリュビオス換字と比べてバイフィッドに強さを与えるものです。

巧妙な部分は混ぜ方にあります。隣り合う文字の行の数字と列の数字が、ふたたび組にされる前に互いに織り交ぜられるため、出力の各文字は結局、入力の異なる二つの文字に依存することになります。この情報の広がり — 拡散と呼ばれるもの — は、単純換字暗号をあれほど破りやすくする文字頻度の目立つパターンを隠し、分割がどのように暗号を強めるかを示す、好んで使われる教育の例題にバイフィッドを仕立てます。

バイフィッド暗号の仕組み

暗号化は三つの段階で起こります。第一に、分割: 各文字を方陣の中で引き、その行番号と列番号に置き換えます。第二に、一つのブロックの文字の座標を二行で書き出します — すべての行の数字を上の行に、すべての列の数字を下の行に書きます。第三に、その合わさった数字の連なりをまっすぐ横へ読み、二つずつ取り、各組を方陣の中で行と列として引いて暗号文の文字を生み出します。

行を先に、列を後に書くことがこの方法の核心です。それが異なる文字から来た数字を織り交ぜるからです。上のツールはこれをリアルタイムで示します。入力するにつれ、分割パネルが各ブロックの文字をその行と列の数字の上に並べますが、これは紙の上で手で暗号を解くときとまったく同じやり方なので、一つの入力文字の数字が二つの別々の出力文字へと離れていく様子を見ることができます。

ポリュビオスの方陣: 5×5 と 6×6

バイフィッドは座標を読み取るためのポリュビオスの方陣を必要とし、その大きさを選べます。古典的な 5×5 の方陣は25個のマスを持ち、26文字のアルファベットには一つ足りないので、伝統によって I と J が一つのマスを共有します。したがって暗号化した J は、復号すると I として戻ってきます。行と列には1から5まで番号が付き、これはバイフィッドのほぼすべての教科書の例題で使われる方式です。

6×6 の方陣は36個のマスを持ち — 26文字すべてに数字 0 から 9 までを加えたものです — 統合されるものがなく、文字と数字の両方が正確に往復します。どちらの方陣もキーワードで混ぜられます。キーワードの重複しない文字を、順に、繰り返しなく先に書き入れ、残りのアルファベットが続きますが、これは鍵を付けた Playfair やポリュビオスの方陣を組み立てる方法と同じです。リアルタイムの格子はキーワードの文字を強調して、混ざる様子を見られるようにします。

周期、すなわちブロックの大きさ

周期はバイフィッドが働くブロックの大きさです。テキストはその数の文字からなるブロックに分けられ、行のあと列で織り交ぜる作業は各ブロックの中で独立して行われます。短い周期は各文字の影響が広がりうる範囲を制限し、長い周期はそれをメッセージのより広い範囲へ広げます。よく選ばれるのは五から十文字の周期で、送り手と受け手は同じ値で合意しなければなりません。

周期を 0 に設定するのは周期がまったくないことを意味します: メッセージ全体を一つのブロックとして扱い、これは Délastelle がもともと記した方式で、最も強い拡散を与えます。引き換えに、長く周期のないメッセージは手で解くのがより難しくなります。上で周期を変えてみて、方陣とテキストが同じままでも暗号文がどう変わるかを見てください — その敏感さこそがブロック構造のすべての狙いです。

バイフィッドの実例

単語 HELLO を素の 5×5 の方陣と、単語全体を覆う周期で扱ってみましょう。まず分割します: H は行2、列3、E は行1、列5、L は行3、列1、二つ目の L もまた行3、列1、O は行3、列4です。行を一行に書くと 2 1 3 3 3 となり、列を次の行に書くと 3 5 1 1 4 となります。

さて、二つの行を一つの連なりとしてまっすぐ横へ読み — 2 1 3 3 3 3 5 1 1 4 — 数字を組にして取ります: 21, 33, 33, 51, 14。各組を方陣の中で行と列として引くと F, N, N, V そして D となるので、HELLO は FNNVD に暗号化されます。繰り返される L が、もはや出力の中で繰り返されるパターンとして現れないことに注目してください — それが拡散の働きです。周期を 3 にすると、同じ単語は代わりに FNVND になります。ブロックが別の場所で切れるからです。

バイフィッド暗号を復号する

復号は手順を逆にたどります。各ブロックについて、暗号文の文字の座標を順に読み取ると、合わさった数字の連なりがふたたび現れます。その連なりを半分に分けると、前半が元の行の数字、後半が元の列の数字となり、各行をそれに合う列と組にすると平文の文字が組み立て直されます。復号を選ぶと、ツールがこれらすべてをあなたの代わりに行います。

正しく復号するには、暗号化に使われたのと同じ三つの設定を使わなければなりません: 同じ方陣の大きさ、同じキーワード、同じ周期です。そのどれか一つでも間違えると、座標が誤った場所で分かれ、文字化けしたテキストが生まれます — これはまさにこの暗号を役立つものにしている性質でもあります。また、5×5 の方陣では二つの文字がマスを共有していたために、元の J が I として戻ってくることも覚えておいてください。

バイフィッド暗号の歴史と安全性

Félix Délastelle は1902年の暗号学の論考でバイフィッド暗号を発表し、三次元の格子を使うその親類である Trifid 暗号や、四方陣・二方陣暗号も並べて載せました。バイフィッドは決して軍用級の体系ではありませんでしたが、分割と転置を組み合わせれば単純な頻度分析を打ち負かせることを示した重要な一歩であり、今日でもパズルや暗号チャレンジ、暗号学の講義の定番であり続けています。

現代の基準ではバイフィッドは安全ではありません。暗号解読者は、とりわけ周期が知られているか短く、十分な暗号文が手に入るとき、これを破るよく確立された方法を持っており、キーワードは敷居をわずかに上げるだけです。今日その本当の価値は教育にあります: 拡散がなぜ重要かを手を動かして見られる明快な方法だからです。本当の情報を守るには、つねに AES のような現代的で査読を経たアルゴリズムを使い、バイフィッドは学習やパズル、キャプチャー・ザ・フラッグのチャレンジのために取っておきましょう。

よくある質問

バイフィッド暗号とは何ですか?
バイフィッド暗号は、Félix Délastelle が1901年ごろに考案した古典暗号です。各文字をポリュビオスの方陣上の行と列の座標に変え、続いてその座標を織り交ぜてから、文字として読み戻します。換字と転置を結びつけることで、各文字の影響を二つの出力文字にわたって広げ、単純な暗号を破りやすくする頻度パターンを隠します。
バイフィッド暗号はどう動きますか?
各文字を方陣のその行の数字と列の数字に置き換えます。一つのブロックの文字について、すべての行の数字を一行に、すべての列の数字を次の行に書きます。その合わさった連なりを組にして横へ読み、各組を行と列として引いて暗号文の文字を出します。復号はこの過程を逆にします: 暗号文の文字の座標が、ふたたび元の行と列に分かれます。
バイフィッド暗号は誰が考案しましたか?
バイフィッド暗号は、フランスの暗号学者 Félix-Marie Délastelle が作ったもので、彼は1901年ごろにこれを記し、1902年の暗号学の著作で発表しました。彼は関連する Trifid、四方陣、二方陣暗号も考案しました。バイフィッドは、文字を座標へ分割して混ぜれば、頻度分析に対して暗号を強くできることを示した初期の実証でした。
バイフィッド暗号における周期とは何ですか?
周期はブロックの大きさです。メッセージはその数の文字からなるブロックに分けられ、行と列を織り交ぜる作業は各ブロックの中で単独で起こります。短い周期は各文字の効果が広がる範囲を制限し、長い周期はそれをさらに広げます。周期 0 はメッセージ全体が一つのブロックであることを意味します。送り手と受け手は通信するために同じ周期を使わなければなりません。
キーワードは何をしますか?
キーワードは土台となるポリュビオスの方陣をかき混ぜます。その重複しない文字を、順に、繰り返しなく格子へ先に書き入れ、残りのアルファベットが続きます。これはすべての座標を変えるので、両者が同じ方陣の大きさと周期に加えて、同じキーワードを使わなければなりません。キーワードを空のままにすると、素のアルファベット順の方陣になります。
5×5 と 6×6 の方陣の違いは何ですか?
5×5 の方陣は25個のマスを持つので、26文字のアルファベットを収めるには二つの文字 — ふつう I と J — が一つのマスを共有し、J は復号すると I として戻ります。6×6 の方陣は36個のマスを持ち、26文字すべてに数字 0 から 9 までを、何も統合せずに収めるのに十分なので、文字と数字が正確に往復します。古典の例題には 5×5 を、数字が必要なときは 6×6 を使ってください。
バイフィッドの実例を見せてもらえますか?
素の 5×5 の方陣を単語全体に使うと、HELLO は行 2 1 3 3 3 と列 3 5 1 1 4 に分割されます。これを一つの連なり 2 1 3 3 3 3 5 1 1 4 として読み、数字を組にすると 21 33 33 51 14 となり、これは F N N V D として引かれます。なので HELLO は FNNVD に暗号化されます。周期を 3 にすると、同じ単語は代わりに FNVND になります。ブロックが別の場所で切れるからです。
バイフィッド暗号はどうやって復号しますか?
暗号文の文字の座標を順に読み取って合わさった数字の連なりを組み立て直し、それを半分に分けます: 前半が平文の行の数字、後半が列の数字です。各行をそれに合う列と組にすると文字が取り戻されます。このツールでは復号を選び、暗号化に使われたのと同じ方陣・キーワード・周期を設定してください。
バイフィッドはポリュビオスの方陣とどう違いますか?
ポリュビオスの方陣は単に各文字をその二つの座標の数字に置き換えるだけなので、まっすぐな換字であり、一つの文字の数字が別の文字のものと混ざることは決してありません。バイフィッドは転置の段階を加えます: 数字をふたたび組にする前にブロック全体の行と列を織り交ぜるので、各出力文字が二つの入力文字に依存します。その余分な混ぜこそが、バイフィッドを素のポリュビオス暗号よりはるかに破りにくくするものです。
バイフィッド暗号はどれほど安全ですか?
現代の基準では安全ではありません。その拡散は単純な頻度分析を打ち負かしますが、暗号解読者は、とりわけ周期が短いか知られていて十分な暗号文があるとき、バイフィッドを破る信頼できる方法を持っており、キーワードはそれを遅らせるだけです。今日その価値は教育にあります。本当の情報を守るには AES のような現代的なアルゴリズムを使い、バイフィッドはパズルや学習のために取っておきましょう。
バイフィッドと Trifid の違いは何ですか?
どちらも Délastelle が考案し、同じように働きますが、Trifid は文字ごとに二つではなく三つの座標を使い、平らな方陣ではなく27個の記号からなる 3×3×3 の立方体から取ります。したがって Trifid は各文字を三つの部分に分割してブロックにわたって混ぜ、バイフィッドより大きな拡散を与えます。バイフィッドはより単純な二座標の方式で、パズルではより一般的なほうです。
入力したテキストはサーバーに送信されますか?
いいえ。すべての暗号化と復号はブラウザ内だけで実行されるため、入力したテキストがアップロード・記録・保存されることはありません。共有リンクでさえ、テキストと方陣、キーワード、周期を URL のハッシュ以降の部分に保持しますが、ブラウザはこの部分をサーバーに送信しないため、自分でリンクを共有するまでメッセージは非公開のまま保たれます。

関連ツール

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

トライフィッド暗号

ポリュビオス暗号

フォースクエア暗号

ツースクエア暗号

シーザー暗号

ヴィジュネル暗号