Identyfikator szyfrów
Znalazłeś podejrzany string w zagadce CTF, logu albo starym dokumencie i nie wiesz, czy to Base64, hex, binarny, kod Morse’a czy coś innego? Wklej tekst, a identyfikator sprawdzi zestaw znaków i strukturę, żeby uszeregować najbardziej prawdopodobne kodowania i szyfry. Dobry pierwszy krok, zanim sięgniesz po dedykowane dekodery.
Jak działa identyfikator szyfrów
-
1
Wklej ciphertext
Dowolnej długości. Bardzo krótkie stringi (< 20 znaków) dają słabsze sygnały; dłuższy tekst pozwala na mocniejszą klasyfikację.
-
2
Analiza zestawu znaków
Rozkład liter, cyfr i symboli zawęża kandydatów (cały hex, cały alfabet base64, sama wielka łacińska itd.).
-
3
Dopasowanie sygnatur
Reguły długości (parzysty hex, bloki base64 po 4, 32/40/64 znaki hex dla hashy), separatory (kropki dla JWT, kropki i kreski dla Morse'a) i znane prefiksy (eyJ, $2b$) są porównywane ze znanymi sygnaturami.
-
4
Uszeregowane typy
Wszystkie pasujące kandydatury są sortowane według pewności i pokazywane w procentach, dzięki czemu wiesz, który dekoder wypróbować najpierw.
Heurystyki detekcji
| Wskazówka | Prawdopodobny szyfr / kodowanie |
|---|---|
Tylko A-Z a-z 0-9 + / =, długość wielokr. 4 |
Base64 |
Tylko 0-9 a-f, parzysta długość |
Hex |
Tylko 0-1, 8 lub więcej cyfr |
Binarny |
| Tylko kropki, kreski, ukośniki i spacje | Kod Morse’a |
| Tylko wielkie litery łacińskie, 5+ liter | Szyfr Cezara lub podstawieniowy |
| 20+ liter łacińskich, bez spacji | Szyfr monoalfabetyczny |
| Litery łacińskie wielkie i małe | Zwykły tekst, prawdopodobnie nie szyfr |
Trzy segmenty oddzielone kropkami, zaczyna się od eyJ |
Token JWT |
Zaczyna się od $2a$, $2b$ lub $2y$ |
Hash bcrypt |
| Dokładnie 32 znaki hex | Hash MD5 |
| Dokładnie 40 znaków hex | Hash SHA-1 |
| Dokładnie 64 znaki hex | Hash SHA-256 |
Sygnały poza zestawem znaków
- Base64: bloki po 4, padding
=na końcu, zawiera+i/. - Caesar lub podstawieniowy: wielkie litery łacińskie, bez cyfr. Częstości są takie jak w tekście jawnym, tylko przesunięte.
- Morse: kropki, kreski, ukośniki, spacje.
- JWT: trzy segmenty rozdzielone kropkami, zwykle zaczyna się od
eyJ. - Hashe (MD5/SHA): hex o stałej długości (32 znaki dla MD5, 40 dla SHA-1, 64 dla SHA-256). Nieodwracalne, identyfikator to oznacza, żebyś nie próbował „dekodować”.
- Binarny: długie ciągi zer i jedynek, często grupowane po osiem.
Granice automatycznej identyfikacji
- Krótkie wejścia (<10 znaków): pewność niska we wszystkim. Może być dowolnie.
- Własny XOR z one-time pad: bez klucza nieodróżnialny od losowego. Identyfikator nie zwróci żadnego dopasowania.
- Wiele warstw: typowy trick CTF to Base64 → reverse → Caesar → hex. Zdejmuj warstwa po warstwie.
- Źródło nieanglojęzyczne: sprawdzenia liter łacińskich nadal obowiązują, ale „zwykły tekst” to tylko zgadywanie; identyfikator nie wykrywa języka.
Punktacja pewności
Każdy kandydat ma stałą pewność zależną od tego, jak specyficzna jest jego sygnatura. Powyżej 80%: prawdopodobne. 50-80%: możliwe. Poniżej 50%: strzał na ślepo. Kilka dopasowań zwykle oznacza krótkie wejście albo szyfr hybrydowy.
Najczęściej zadawane pytania
Każda technika identyfikacji szyfru opiera się na regularnościach statystycznych, a statystyka potrzebuje danych, żeby była wiarygodna. Poniżej 20 znaków wiele szyfrów wygląda identycznie; 50+ znaków daje solidne sygnały.
Sugeruje tylko najbardziej prawdopodobny schemat. Dekodowanie odbywa się w dedykowanych dekoderach, a niektóre dekodowania wymagają klucza, który musisz podać.
Zacznij od zestawu znaków (jakie litery/symbole się pojawiają), potem długość i struktura. Jeśli wciąż niejasne, spróbuj typowych dekoderów (Base64, hex, Caesar) po kolei, na CTF częstość + zgadywanie zwykle łamie szyfr w kilku próbach.
Prawdopodobnie nie jako nazwane dopasowanie: nie zwróci kandydatów albo zgadnięcie z niską pewnością. Porównaj alfabet i strukturę swojego ciphertextu z tabelą heurystyk powyżej, żeby odtworzyć proste domowe schematy.
Powiązane narzędzia
Weryfikator sum kontrolnych
Oblicz sumę kontrolną MD5, SHA-1, SHA-256, SHA-384, SHA-512 lub CRC-32 dowolnego pliku lub tekstu i porównaj ją z wartością podaną przez wydawcę, aby uzyskać jednoznaczny werdykt zgodności lub niezgodności.
Generator kluczy PGP
Wygeneruj parę kluczy OpenPGP w formacie ASCII i certyfikat unieważnienia za pomocą Curve25519, RSA 2048 lub RSA 4096.
Generator JWT
Generuj podpisane JWT-y z dostosowanym nagłówkiem, informacjami o obciążeniu, podpisem typu HMAC lub RSA, terminem ważności oraz ograniczeniami dotyczącymi odbiorców w celach testowych.
Generator MD5
Utwórz skrót MD5 z dowolnego tekstu lub pliku. Wynik ma 128 bitów w formacie szesnastkowym, a całe obliczenie odbywa się w Twojej przeglądarce.
Generator skrótów
Generuj skróty MD5, SHA-1, SHA-256, SHA-384, SHA-512 i CRC32 z tekstu, ze skrótem gotowym do skopiowania dla sum kontrolnych i porównań.
Generator fraz hasłowych
Wygeneruj łatwą do zapamiętania frazę hasłową z losowych, popularnych słów, z regulowaną liczbą słów, separatorem, wielkimi literami i opcjonalnie dołączoną liczbą.
Narzędzie jest dostępne w innych językach
- ตัวระบุรหัส [TH]
- Identificador de Cifrados [ES]
- 暗号識別子 [JA]
- Identificador de Cifras [PT]
- Chifferidentifierare [SV]
- Nhận diện mật mã [VI]
- معرف التشفير [AR]
- Identificateur de chiffre [FR]
- Cipher-Identifikator [DE]
- Pengidentifikasi Cipher [ID]
- 암호 식별기 [KO]
- Cipher-identificatie [NL]
- Şifre Tanımlayıcı [TR]
- 密码类型识别器 [ZH]
- Cipher Identifier [EN]
- Identificatore di Cifrari [IT]
- Идентификатор шифрования [RU]