T

Text Machine

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

暗号識別ツール

目の前の暗号が何か分からない? 謎のテキストを貼り付けるだけで、このツールが文字種・文字頻度・一致指数を分析し、最も可能性の高い暗号を順位付けします — そして対応するデコーダーへ直接リンクします。すべてブラウザ内で動作します。

サンプルを試す:

識別する暗号文

上にテキストを貼り付けると、最も可能性の高い暗号が確度順にここに表示されます。

暗号識別ツール の使い方

  1. 1

    謎のテキストを貼り付ける

    不明なコードや暗号文をコピーしてボックスに貼り付けます。文字、Morse のドットとダッシュ、Base64、数字など、ほとんど何でも構いません。

  2. 2

    分析の概要を読む

    文字数、含まれるアルファベットの数、検出された文字種、そして暗号が1つのアルファベットを使ったか複数かを示唆する一致指数を確認します。

  3. 3

    ランク付けされた推測を確認する

    最も可能性の高い暗号がカードとして、「非常に高い」から「低い」まで確度順に並びます。それぞれに、反応した手がかりを説明する短い理由が付いています。

  4. 4

    対応するデコーダーを開く

    上位候補の専用デコーダーへ進んで復号を仕上げます。複数提案された場合は、リストの上から順に試してください。

  5. 5

    共有またはクリア

    あなたのテキストそのままでツールを再び開く共有リンクをコピーするか、ボックスをクリアしてやり直します。すべてはブラウザ内に留まります。

不明な暗号を識別する方法

暗号識別ツールとは?

暗号識別ツールとは、謎のテキストを入力すると、それを生み出した可能性が最も高い暗号やエンコードを教えてくれるツールです。やみくもに推測したり、デコーダーを片っ端から試したりする代わりに、暗号文を一度貼り付けるだけで候補のランク付きリストが得られます — シーザー、Vigenère、Base64、Morse など — それぞれに確度の評価と適切なデコーダーへの直接リンクが付いています。

これは、作り方を知らされないままエンコードされたテキストを見つけたときの自然な出発点です。キャプチャー・ザ・フラッグ(CTF)の課題、脱出ゲームのヒント、ジオキャッシングのパズル、代替現実ゲーム(ARG)、暗号化されたメモなどです。暗号の系統が分かれば数十の可能性が1つか2つに絞られるので、探すのをやめて復号を始められます。

暗号識別ツールの仕組み

この識別ツールは機械学習ではなく古典的な暗号解読を使うため、すべての判定に理由を説明できます。最も明白なものから最も微妙なものへと、一連のテストにテキストを通します。まず文字種を調べます。ドットとダッシュだけのテキストは Morse、0 と 1 だけは二進数、十六進数の桁だけは十六進数、Base64 のアルファベットで長さが4の倍数なら Base64 です。小さな数字の並びは Polybius 方陣、A1Z26 の文字番号、または ASCII コードを示唆します。

テキストが通常の文字の場合、ツールは統計に切り替えます。一致指数を測定して、1つのアルファベットが使われたのか(単一換字式)、複数なのか(多表式)を判断し、続いて英語の文字頻度に対するカイ二乗スコアを用いてシーザーシフトのテストと Atbash のテストを実行します。文字種・頻度のプロファイル・長さや繰り返しパターンといった構造的な手がかりの組み合わせが、ご覧のランク付きリストを生み出します。

一致指数の解説

一致指数(IoC)は、テキストから無作為に選んだ2文字が同じである確率を測る指標です。通常の英語のテキストは IoC が約 0.067 です。E や T のように一部の文字が他よりはるかに多く現れるためです。完全にランダムなテキストは、どの文字も等しく出現する 0.038 付近に位置します。

この1つの数値は、文字ベースの暗号にとって最も役立つ手がかりです。シーザー、Atbash、キーワード換字式の暗号は1文字を別の文字に置き換えるだけなので、英語特有の偏った頻度プロファイルが残り、IoC は 0.066 付近の高い値を保ちます。Vigenère のような多表式暗号は複数のアルファベットを同時に使うため頻度が平坦になり、IoC は 0.04 に向かって下がります。つまり、IoC が高ければ単一換字式、低ければ多表式、その中間の値なら両方を試すべきというヒントになります。

文字種の手がかりを読み解く

多くのエンコードは、そのアルファベットだけで正体を明かします。Morse 符号はドット・ダッシュ・区切り記号のみを使います。二進数は 0 と 1 の数字だけを、通常は8桁ずつのグループで使います。十六進数は 0 から 9 の数字と A から F の文字を使い、文字数は偶数です。Base64 は大文字・小文字・数字・プラスとスラッシュを使い、しばしば末尾に1つか2つの等号をパディングとして付け、合計の長さが4の倍数になります。

数字はそれ自体に意味を持ちます。1 から 5 の間の数字のペアは Polybius 方陣の座標です。すべて 1 から 26 の範囲に収まる数字は、1 が A、26 が Z となる A1Z26 である可能性が最も高いです。32 から 126 の範囲のより大きな数字は十進の ASCII 文字コードです。A、D、F、G、V、X の文字だけで構成されたテキストは、第一次世界大戦で使われた ADFGX または ADFGVX 野戦暗号の紛れもない特徴です。

単一換字式 対 多表式の暗号

テキストが文字で IoC が高ければ、ほぼ確実に単一換字式の暗号です。これは各平文の文字が常に同じ暗号文の文字に対応するものです。最も単純なのはシーザー暗号で、すべての文字を同じ量だけずらします。ちょうど1つのシフトでテキストが英語になるとき、識別ツールはそれを確認します。Atbash は A が Z になるようにアルファベットを逆順にする特別なケースです。シフトでも逆順でもうまくいかないのに IoC がなお高い場合は、換字ソルバーを必要とする一般的なキーワード式またはアフィン換字です。

IoC が低ければ、その暗号は複数のアルファベットを使っています。典型例は Vigenère で、繰り返しのキーワードを適用して各位置で異なるシフトを使えるようにします。その仲間には Beaufort、Gronsfeld、Porta があります。別の手がかり — 長さが偶数でペア内に重複文字がないこと — はむしろ、2文字ずつ暗号化する Playfair のような多字式暗号を示します。

暗号を識別したあとにすべきこと

識別は最初のステップにすぎません。結果の各候補は、その暗号専用のデコーダーにリンクしており、そこで仕上げができます。シーザー暗号なら、デコーダーは25通りのシフトすべてを総当たりし、頻度分析で最良のものを選べます。Base64、Morse、二進数、十六進数なら、対応するコンバーターがコードをそのままテキストに戻します。Vigenère や換字式の暗号では通常、鍵かソルバーが必要ですが、系統が分かればどの手法を使うべきかが正確に分かります。

複数の候補が現れたら、最も確度の高いものからリストを下へとたどってください。証拠が曖昧なときは、識別ツールはあえて2つ以上の可能性を表に出します。短いメッセージが決定的な答えを与えることはめったにないからです。上位のデコーダーを試せば、ほぼ常に数秒で推測の正否が確認できます。

心に留めておくべき限界

自動の識別ツールに完璧なものはありません。非常に短いメッセージには統計が信頼できるほどの文字数がないため、段落なら明白なものでも、5文字のサンプルでは曖昧になることがあります。シーザー暗号にかけてから Base64 に変換したように何層にもエンコードされたメッセージは、最初は一番外側の層しか明かしません。それを復号してから、その結果に対して再び識別ツールを実行してください。

このツールは古典暗号と一般的なエンコード、すなわちパズル・ゲーム・歴史に登場する系統に重点を置いています。AES や RSA のような現代暗号の認識は試みません。これらの出力は完全にランダムに見えるよう設計され、識別できる構造をまったく持たないからです。結果は適切なデコーダーへ導く専門家のヒントとして扱い、保証された判定とは考えないでください。

よくある質問

暗号識別ツールとは何ですか?
暗号識別ツールは、不明なテキストを分析して、それを作り出した可能性が最も高い暗号やエンコードを教えてくれます。デコーダーを手作業で片っ端から試す代わりに、暗号文を一度貼り付けるだけで候補のランク付きリストが得られ、それぞれに確度の評価と適切なデコーダーへのリンクが付きます。
どうやって何の暗号か分かるのですか?
古典的な暗号解読を使います。まず文字種を調べます。Morse、二進数、十六進数、Base64、数値コードはそれぞれ特徴的なアルファベットを使うからです。文字ベースのテキストには文字頻度と一致指数を測定し、続いてシーザーと Atbash のテストを実行して、すべての証拠を組み合わせてランク付きリストにします。完全にルールベースなので、どの結果にも説明が付きます。
一致指数とは何ですか?
一致指数は、テキストから無作為に選んだ2文字が同じである確率を測ります。英語は約 0.067、ランダムなテキストは約 0.038 です。単一換字式の暗号はこの値を高く、0.066 付近に保ち、Vigenère のような多表式の暗号は 0.04 に向けて平坦にします。これが2つの系統を見分けるうえで最も役立つ単一の手がかりです。
あらゆる暗号を識別できますか?
いいえ。パズル・ゲーム・歴史に登場する古典暗号と一般的なエンコード、合わせて15を超える系統をカバーします。AES や RSA のような現代暗号は認識しません。これらの出力はランダムに見えて構造を持たないよう設計されているからです。結果は保証された答えではなく、適切なデコーダーへ導く強力なヒントとして扱ってください。
なぜ複数の暗号を提案するのですか?
証拠が曖昧なとき、このツールはあえて複数の可能性を確度順に並べ、答えを見逃さないようにします。特に短いメッセージは決定的な判定を与えることがめったにないので、2つか3つの候補が出るのは普通です。最も確度の高いものから始めて、リストを下へたどってください。
テキストが平文だと表示されます。どういう意味ですか?
文字の分布がすでに通常の英語と一致している、という意味です。つまり、そもそも暗号化されていないか、通常の頻度を保つ暗号を使っているかのどちらかです。暗号を期待していたなら、メッセージがそのまま読めるものか、あるいは英語らしい統計を保つ方法でエンコードされているかを確認してください。
このツールはメッセージの復号もしますか?
識別ツールは、あなたが持っているのが何の暗号かを教えることに重点を置いています。復号するには、上位候補のリンクをクリックすると、その暗号専用のデコーダーが開きます。シーザー、Base64、Morse、二進数、十六進数などは即座に復号できます。Vigenère などは通常、鍵かソルバーが必要ですが、どのツールを使えばよいかは正確に分かります。
テキストはサーバーにアップロードされますか?
いいえ。すべての分析は完全にブラウザ内で行われるため、テキストがアップロード・記録・保存されることはありません。共有リンクでさえ、テキストを URL のハッシュより後ろの部分に保持します。ブラウザはこの部分をサーバーに送信しないため、あなたが共有を選ぶまで非公開のままです。
どんな暗号やエンコードを検出できますか?
とりわけ、Morse 符号、二進数、十六進数、Base64、Baconian、Polybius 方陣、A1Z26 と ASCII の数値コード、ADFGX と ADFGVX、シーザーと ROT のシフト暗号、Atbash、キーワード式とアフィン換字、Vigenère やその他の多表式暗号、そして Playfair 系の二字暗号を認識します。
なぜ非常に短いメッセージは識別できないのですか?
頻度分析や一致指数といった統計的テストは、信頼できるだけのアルファベットの数を必要とします。ほんの数文字では1つの暗号を別の暗号と区別するだけの情報が含まれないため、短いサンプルはしばしば曖昧、または識別不能として返ってきます。メッセージが長いほど識別の確度は高まります。
手作業で暗号を識別するにはどうすればよいですか?
まずアルファベットを見ます。ドットとダッシュなら Morse、0 と 1 なら二進数、A・D・F・G・V・X のアルファベットなら ADFGX です。文字の場合は頻度を確認します。英語の E のように1つの暗号文字が支配的なら、おそらく単純なシフトか換字式で、頻度が平坦に見えるなら多表式の可能性が高いです。このツールはまさにそれらのチェックを自動化します。
暗号とエンコードの違いは何ですか?
Base64、十六進数、Morse のようなエンコードは、テキストを別の形で表現するだけで、元に戻すのに秘密の鍵を必要としません。シーザーや Vigenère のような暗号は、メッセージを意図的に隠し、復号するのに鍵を必要とします。識別ツールは両方に対応します。謎のテキストに直面したとき、まずその2つのどちらを扱っているのかを知る必要があるからです。

関連ツール

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

シーザー暗号

ヴィジュネル暗号

アトバシュ暗号

レールフェンス暗号

プレイフェア暗号

アフィン暗号