暗号識別子
CTF の問題やログファイル、古い文書で見つけた怪しい文字列が、Base64 なのか、16進数なのか、2進数なのか、モールス信号なのか、それとも別の何かなのか分からない。そんなときはテキストを貼り付けてください。識別ツールが文字セットと構造をチェックし、可能性の高いエンコーディングと暗号をランク付けします。専用のデコーダーに進む前の最初の一歩に最適です。
暗号識別子の仕組み
-
1
暗号文を貼り付けます
任意の長さ。非常に短い文字列 (< 20 文字) は弱い信号を与えます。テキストが長いほど、より強力な分類が可能になります。
-
2
文字セット分析
文字、数字、記号の分布によって候補が絞り込まれます (すべて 16 進数、すべて Base64 アルファベット、すべて大文字のラテン文字など)。
-
3
シグネチャ照合
b$) を既知のシグネチャと照合します。
-
4
ランク付けされた候補
一致した候補すべてを信頼度順に並べ、パーセンテージで表示するので、最初に試すデコーダーが分かります。
検出ヒューリスティック
| 手がかり | 可能性の高い暗号/エンコーディング |
|---|---|
A-Z a-z 0-9 + / = のみ、長さが 4 の倍数 |
Base64 |
0-9 a-f のみ、長さが偶数 |
16進数 (Hex) |
0-1 のみ、8 桁以上 |
2進数 |
| ドット、ダッシュ、スラッシュ、スペースのみ | モールス信号 |
| 大文字のラテン文字のみ、5 文字以上 | シーザー暗号または換字式暗号 |
| ラテン文字 20 文字以上、スペースなし | 単一換字式暗号 |
| 大文字と小文字の混在するラテン文字 | 平文の可能性が高い |
ドット区切りの 3 つのセグメント、eyJ で始まる |
JWT トークン |
$2a$、$2b$、$2y$ のいずれかで始まる |
bcrypt ハッシュ |
| ちょうど 32 文字の16進数 | MD5 ハッシュ |
| ちょうど 40 文字の16進数 | SHA-1 ハッシュ |
| ちょうど 64 文字の16進数 | SHA-256 ハッシュ |
文字種以外の手がかり
- Base64: 4 文字ごとのブロック、末尾に
=パディング、+と/を含む。 - シーザーまたは換字式: 大文字のラテン文字のみ、数字なし。頻度は平文と同じで、ずれているだけです。
- モールス: ドット、ダッシュ、スラッシュ、スペースのみ。
- JWT: ドット区切りの 3 つのセグメントで、通常は
eyJで始まります。 - ハッシュ (MD5/SHA): 固定長の16進数 (MD5 は 32 文字、SHA-1 は 40 文字、SHA-256 は 64 文字)。不可逆なので、識別ツールはこれを明示し、無駄に「デコード」を試さずに済むようにします。
- 2進数: 0 と 1 の長い並びで、8 桁ごとに区切られることが多い。
自動識別の限界
- 短い入力 (10 文字未満): どの候補も信頼度が低くなります。何である可能性もあります。
- ワンタイムパッドを使ったカスタム XOR: 鍵がなければランダムと区別できません。識別ツールは一致なしと表示します。
- 多重レイヤー: CTF の定番トリックは Base64 → 反転 → シーザー → 16進数。一度に 1 層ずつ剥がしましょう。
- 英語以外の原文言語: ラテン文字のチェックは引き続き有効ですが、「平文」はあくまで推測です。識別ツールは言語の検出は行いません。
信頼度スコア
各候補には、シグネチャの特異性に基づく固定の信頼度が付きます。80% 以上: 有力。50-80%: あり得る。50% 未満: 可能性は低め。複数が一致する場合は、入力が短いか、複数の暗号が組み合わされていることがほとんどです。
よくある質問
すべての暗号識別技術は統計的な規則性に依存しており、統計が信頼できるためには十分なデータが必要です。20 文字未満では多くの暗号が同じに見えますが、50 文字以上あれば確かなシグナルが得られます。
最も可能性の高い方式を示唆するだけです。デコードは専用のデコーダーツールで行います。一部のデコードには鍵の指定が必要です。
まず文字セット (どのような文字/記号が表示されるか) を確認し、次に長さと構造を確認します。それでも不明な場合は、一般的に疑わしいデコーダ (Base64、hex、Caesar) を 1 つずつ試してください。CTF では、周波数 + 推測により、通常は数回の試行以内に解読できます。
名前付きの一致としてはおそらく無理です。候補なし、または低い信頼度の推測を返します。上のヒューリスティック表と暗号文のアルファベットや構造を照らし合わせれば、単純な自作方式の逆解析ができます。
関連ツール
GweiからEtherへの変換ツール
Gwei単位の金額をEther(ETH)に最大18桁の小数で変換します。ガス料金の推定や取引データの読み取りに役立ちます。
チェックサム検証
任意のファイルやテキストの MD5、SHA-1、SHA-256、SHA-384、SHA-512、CRC-32 チェックサムを計算し、公開者が掲載している値と比較して一致・不一致を明確に判定します。
JWTジェネレーター
カスタムのヘッダー、ペイロードのクレーム、HMACまたはRSA署名、有効期限、オーディエンス制限を備えた、署名済みJWTをテスト用に生成します。
MD5ジェネレーター
任意のテキストまたはファイルからMD5ハッシュを生成します。128ビットの出力を16進数で表示し、すべてブラウザー内で計算します。
暗号化識別子
暗号文またはハッシュ値を貼り付けると、識別子からMD5、SHA、bcrypt、AES、RSA、Base64などの推定されるアルゴリズムや符号化方式が示されます。
HMACジェネレーター
メッセージと秘密鍵から、API認証やWebhook向けのHMAC署名(SHA-256、SHA-384、SHA-512、SHA-1、MD5)を生成します。
このツールは他の言語でも利用できます
- Pengidentifikasi Cipher [ID]
- Identyfikator szyfrów [PL]
- Chifferidentifierare [SV]
- ตัวระบุรหัส [TH]
- Cipher-Identifikator [DE]
- 암호 식별기 [KO]
- Identificador de Cifrados [ES]
- Identificador de Cifras [PT]
- Nhận diện mật mã [VI]
- Identificateur de chiffre [FR]
- معرف التشفير [AR]
- Cipher-identificatie [NL]
- Cipher Identifier [EN]
- Identificatore di Cifrari [IT]
- Идентификатор шифрования [RU]
- Şifre Tanımlayıcı [TR]
- 密码类型识别器 [ZH]