T

Text Machine

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

フラクショネイテッド・モールス暗号

フラクショネイテッド・モールス暗号を暗号化・復号します。メッセージはまず、文字の間に1つの x、単語の間に2つの x を入れてモールス符号で書き表され、その短点・長点・x の連なりを3記号ずつ読み取り、26通りのグループそれぞれをキー付き暗号文字に置き換えます。キーワードでアルファベットを混ぜ、文字からモールス符号、3記号グループへの処理過程をリアルタイムで追い、結果をコピー・ダウンロード・共有できます。すべてブラウザ内で動作します。

キーワード

キーワード

キーワードは26個の暗号文字を混ぜます。重複を除いたキーワードの文字が先頭に来て、続いて残りのアルファベットが並び、その順序が26個の3記号グループに対応づけられます。空欄のままにすると、通常の A–Z 表が使われます。送信側と受信側は同じキーワードを使う必要があります。

平文
暗号文

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

3記号グループ → 文字 対応表

...

A

..-

B

..x

C

.-.

D

.--

E

.-x

F

.x.

G

.x-

H

.xx

I

-..

J

-.-

K

-.x

L

--.

M

---

N

--x

O

-x.

P

-x-

Q

-xx

R

x..

S

x.-

T

x.x

U

x-.

V

x--

W

x-x

X

xx.

Y

xx-

Z

フラクショネイテッド・モールス暗号 の使い方

  1. 1

    暗号化か復号かを選ぶ

    平文をフラクショネイテッド・モールスの暗号文にするには「暗号化」を、暗号文を平文に戻すには「復号」を選びます。

  2. 2

    キーワードを設定する(任意)

    暗号アルファベットを混ぜるにはキーワードを入力し、通常の A–Z 表を使うには空欄のままにします。一致させるには、両者が同じキーワードを使う必要があります。

  3. 3

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

    メッセージを入力すると、入力に合わせて変換されます。暗号化時には、手順パネルが各文字をそのモールス符号の上に示し、続いて連なりを3記号グループに切り分けて各グループの下に暗号文字を表示します。

  4. 4

    3記号グループ表を読む

    3記号グループ表を開くと、26個すべての3記号グループと、それぞれが対応する暗号文字、そして強調表示されたキーワード由来の文字を確認できます。

  5. 5

    コピー、ダウンロード、または共有

    結果をコピーしたり、テキストファイルとしてダウンロードしたり、あなたのテキストとキーワードがそのまま準備された状態でツールを再び開くリンクを共有したりできます。

フラクショネイテッド・モールス暗号を理解する

フラクショネイテッド・モールス暗号とは?

フラクショネイテッド・モールス暗号は、通常のモールス符号にキー付きの第二の層を重ねることで、おなじみの短点と長点が完成したメッセージに一切現れないようにします。これはアメリカ暗号協会(American Cryptogram Association)によって広められた手作業暗号の一群に属し、パズルハント、ジオキャッシング、CTF(capture-the-flag)の課題で人気があります。なぜなら、内部にモールスの骨組みを隠しながら、見た目は単純な文字置換のように見えるからです。

「フラクショネイテッド(分割された)」という言葉は、その核心にある仕掛けを表しています。メッセージがモールス符号に変換された後、短点・長点・区切り記号の連なりは3つずつの固定グループに切り分けられ、各グループが1つの暗号文字に置き換えられます。3つのモールス記号が1つの平文文字とちょうど揃うことはほとんどないため、すべての暗号文字は隣り合う2つまたは3つの文字の断片を抱えることになります。この混ぜ合わせこそが、モールス特有のリズムを消し去り、本来ならメッセージを露呈させてしまう文字の出現頻度を平坦にするのです。

3つの記号、26個のグループ

モールス符号を途切れのない1本の文字列にするには、区切り記号が必要です。フラクショネイテッド・モールスでは文字 x を使います。文字の間には1つの x、単語の間には2つの xx です。こうしてメッセージは、短点・長点・x という3つの記号だけで表され、それ以外は使いません。

それらの記号を3つずつ読み取ると、3 × 3 × 3 = 27 通りのグループがあり得ます。そのうちの1つ、xxx は決して現れません。区切り記号の連続は、単語間の2つの xx が最大だからです。これにより、ちょうど26通りのグループ、つまりアルファベットの文字数と同じ数が残ります。この見事な一致こそが、この暗号が成り立つ理由のすべてです。3記号の各グループに、余りも不足もなく、それぞれ独自の暗号文字を割り当てられるのです。

キーワードと置換表

3記号グループ(トライグラフ)と呼ばれる26個のグループは、常に同じ固定された順序、すなわち短点-短点-短点から x-x-長点まで並べられます。変わるのは、その下に書かれる暗号文字の並びです。キーワードがない場合、文字は単純に A, B, C, … の順となり、短点-短点-短点は A、短点-短点-長点は B、というようになります。上のリアルタイム表はこの対応を示し、入力するとすぐに更新されます。

キーワードは、キー付き単純換字アルファベットとまったく同じ要領で、その文字の並びを混ぜます。キーワードの重複を除いた文字が、順序を保ち繰り返しなしで先頭に書かれ、続いて残りのアルファベットが並びます。例えばキーワード MORSE は暗号アルファベット MORSEABCDFGHIJKLNPQTUVWXYZ を生み出すので、短点-短点-短点は A ではなく M になります。キーワードは共有された秘密です。送信側と受信側は同じものを使わなければならず、表の中で強調表示されたセルは、キーワードに由来する文字を示しています。

フラクショネイテッド・モールス暗号の仕組み

暗号化は3つの動作で進みます。まず、メッセージ全体をモールス符号で書き、文字の間に1つの x、単語の間に2つの x を入れます。次に、出来上がった文字列の記号数が3の倍数でない場合は、3の倍数になるまで末尾を x で埋めます。短点や長点ではなく x で埋めることが重要です。余分な短点があると、後で読み戻したときに偽の文字として解釈されてしまうからです。3つめに、文字列を3つずつのグループに切り分け、各グループをキー付き表の暗号文字に置き換えます。

この暗号の威力は、その2回目の切り分けにあります。1つの平文文字は、いったんモールス符号に変換され区切り記号で隣と連結されると、複数の3記号グループにまたがって広がり、各グループは両隣の文字からも記号を借りてきます。したがって、1つの平文文字を復元するには、その周囲のモールスも再構築する必要があり、これこそが、単純な換字暗号を破る文字数え攻撃を無力化するのです。上の手順パネルがこれをリアルタイムで示します。上段は各文字をそのモールス符号と対にし、下段は連なりを3記号グループに切り分け、各グループの下に暗号文字を表示します。

具体例で見る

キーワードなしで遭難信号 SOS を取り上げます。モールス符号では S は短点-短点-短点、O は長点-長点-長点なので、SOS は短点-短点-短点 x 長点-長点-長点 x 短点-短点-短点という連なりになります。これは11記号で3の倍数ではないため、末尾に1つの x を加えて12にします。

では、12個の記号を3つずつ読み取ります。グループは(短点-短点-短点)、(x 長点-長点)、(長点 x 短点)、(短点-短点 x)です。通常の A–Z 表では、これら4つの3記号グループは A, W, P, C に対応するので、SOS は AWPC に暗号化されます。2番目と3番目の暗号文字が、元の S, O, S の境界をまたいでいることに注目してください。このまたぎこそが、はたらいているフラクショネイションです。キーワードを加えると、同じ4つの3記号グループは別の4文字になりますが、それでも復号すれば SOS に戻ります。

フラクショネイテッド・モールスのメッセージを復号する

復号は、3つの動作を単に逆向きに進めるだけです。各暗号文字を表で調べてその3記号グループを復元し、それらの3記号グループを再び1本の長い短点-長点-x 文字列につなぎ合わせ、その文字列を区切り記号で分割します。1つの x が文字の終わり、2つの xx が単語の終わりです。短点と長点の各連なりをモールス表で読み戻すと、元のテキストが再構築されます。暗号化中に追加された x の埋め字は末尾に無害に残り消えるので、このツールで暗号化されたメッセージは常に正確に元へ復号されます。

正しく復号するには、暗号化に使われたものと同じキーワードを使わなければなりません。異なるキーワードでは3記号グループが誤った文字と対応づけられ、モールスが意味をなさなくなります。モールス符号を持つのは文字と数字だけなので、元のメッセージにあった句読点やその他の記号は暗号化の際に取り除かれ、戻ってきません。暗号文字のグループ間のスペースは復号時に無視されるので、暗号文が連続して書かれていても、5文字ずつのきれいなブロックで書かれていても問題ありません。

歴史、用途、そして安全性

フラクショネイテッド・モールスは、Morbit や Pollux と並んで、娯楽的な暗号解読のためにアメリカ暗号協会によって体系化され受け継がれてきた、いくつかのモールスを基にした紙と鉛筆の暗号の1つです。これらは、隠されたモールス構造を見抜ける解読者に報いるものであり、まさにフラクショネイションの段階によって単純な換字より興味深くなっているからこそ、暗号課題の定番であり続けています。

現代の基準では、この暗号は安全ではありません。フラクショネイションは素朴な頻度分析を無力化しますが、その土台にあるモールスは強い統計的パターンを課すため、既知のキーワードや推測されたキーワード、あるいは単に十分な量の暗号文があれば、本気の解読者やコンピュータがメッセージを復元できてしまいます。フラクショネイテッド・モールスは、パズルおよび教材として、すなわち符号化と換字を組み合わせることで暗号がいかに強化されるかを鮮やかに示すものとして扱い、本物の秘密を守る手段としては決して使わないでください。真の機密性が必要なときは、AES のような現代的で専門家の査読を経たアルゴリズムを必ず使ってください。

よくある質問

フラクショネイテッド・モールス暗号とは何ですか?
文字置換の中にモールス符号を隠す手作業暗号です。メッセージは、文字を区切る x、単語を区切る xx を用いてモールス符号で書かれ、その短点-長点-x の連なりを3記号ずつ読み取り、26通りの3記号グループそれぞれをキー付きアルファベットの暗号文字に置き換えます。グループが単独の文字と揃うことはまれなので、各暗号文字は隣り合う文字の一部を混ぜ合わせます。
なぜちょうど26個のグループになるのですか?
メッセージがモールス符号になった後、使われる記号は短点、長点、区切り記号の x の3つだけです。3つずつ読み取ると 3 × 3 × 3 = 27 通りの組み合わせになります。すべて区切り記号のグループ xxx は決して現れません。区切り記号の連続は単語間の2つの xx が最大だからです。これにより26個が残り、アルファベットのすべての文字に1つずつ、余りも不足もなく対応します。
キーワードは何をしますか?
キーワードは、26個の3記号グループの下に並ぶ暗号文字の列を混ぜます。重複を除いたキーワードの文字が先頭に書かれ、続いて残りのアルファベットが順に並びます。これはキー付き換字アルファベットとまったく同じです。3記号グループ自体は固定された順序のままです。キーワードがなければ表は単なる A–Z なので、キーワードは送信側と受信側の双方が使わなければならない共有の秘密です。
具体例を示してもらえますか?
キーワードなしの場合、SOS はモールス符号の連なり 短点-短点-短点 x 長点-長点-長点 x 短点-短点-短点 になります。これは11記号なので、1つの x を加えて12にします。3つずつ読み取るとグループは(短点-短点-短点)、(x 長点-長点)、(長点 x 短点)、(短点-短点 x)となり、通常の A–Z 表では A, W, P, C に対応します。したがって SOS は AWPC に暗号化されます。
フラクショネイテッド・モールスのメッセージはどう復号しますか?
手順を逆にたどります。各暗号文字を調べてその3記号グループを得て、それらのグループを1本の短点-長点-x 文字列につなぎ、区切り記号(文字間は1つの x、単語間は2つの xx)で分割し、短点と長点の各連なりをモールス表で読み戻します。このツールでは「復号」を選び、暗号化に使われたものと同じキーワードを入力します。
なぜ埋め字は短点や長点ではなく x で行うのですか?
モールス符号の連なりが3記号の倍数でない場合、最後のグループが完成するように末尾を埋めます。x で埋めるのは、x が区切り記号だからです。末尾の区切り記号は単に最後の文字や単語の終わりを示すだけで、メッセージが復号されると消えます。短点や長点で埋めると、代わりに本物のモールス記号として読み戻され、偽の余分な文字が加わってしまう可能性があります。
数字や句読点には対応していますか?
文字と数字は暗号化されます。どちらにも標準的なモールス符号があるからです。句読点やその他の記号は取り除かれ、連続するスペースは1つの単語区切りになります。つまり、"it's" のような短縮形は単一の単語 ITS として扱われ、これはこの暗号の一般的な参照実装と一致します。
3記号グループ(トライグラフ)とは何ですか?
ここでの3記号グループとは、単に3つのモールス記号のまとまりであり、それぞれが短点、長点、または区切り記号の x です。あり得ない xxx を除くと26個あり、常に同じ固定された順序で並べられます。この暗号の唯一の秘密は、各3記号グループにどの文字を割り当てるかであり、それをキーワードが制御します。
これは通常のモールス符号とどう違いますか?
通常のモールス符号は各文字を短点と長点に置き換えるだけなので、モールスを知っている人なら誰でもすぐに読めてしまい、文字のリズムも一目瞭然です。フラクショネイテッド・モールスはさらに2つの段階、すなわちモールスを3つずつにまとめ、各グループをキー付きの文字で置換する段階を加えます。その結果、出力は普通に見える文字となり、モールスの構造はメッセージ全体に散らされます。
フラクショネイテッド・モールス暗号は安全ですか?
いいえ。フラクショネイションは単純な頻度数えを無力化しますが、土台にあるモールスが強い統計的パターンを残すため、この暗号は古典的な解読法やコンピュータに破られてしまいます。特にキーワードが推測されたり再利用されたり、十分な量の暗号文が手に入る場合はなおさらです。パズルや学習には最適ですが、本当の保護には AES のような現代的なアルゴリズムを使ってください。
私のテキストはサーバーにアップロードされますか?
いいえ。暗号化と復号はすべて完全にあなたのブラウザ内で行われるため、あなたのテキストがアップロード、記録、保存されることは決してありません。共有リンクでさえ、あなたのテキストとキーワードを URL の # 記号より後ろの部分に保持します。ブラウザはこの部分を決してサーバーに送信しないので、あなたがリンクを共有することを選ぶまで、メッセージはプライベートに保たれます。

関連ツール

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

モービット暗号

ポルックス暗号

ストラドリング・チェッカーボード

モールス信号変換

シーザー暗号

ヴィジュネル暗号