Идентификатор шифрования

Нашли подозрительную строку в головоломке CTF, файле журнала или старом документе и не можете определить, является ли она Base64, шестнадцатеричной, двоичной, азбукой Морзе или чем-то еще? Вставьте текст, и идентификатор проверит набор символов и структуру, чтобы ранжировать наиболее вероятные кодировки и шифры. Хороший первый шаг, прежде чем обращаться к специализированным декодерам.

Как работает шифр-идентификатор

  1. 1

    Вставьте зашифрованный текст

    Любая длина. Очень короткие строки (< 20 символов) дают более слабые сигналы; более длинный текст обеспечивает более строгую классификацию.

  2. 2

    Анализ набора символов

    Распределение букв, цифр и символов сужает кандидатов (все шестнадцатеричные, все алфавиты Base64, все прописные латинские буквы и т. д.).

  3. 3

    Сопоставление сигнатур

    b$) сверяются с известными сигнатурами.

  4. 4

    Ранжированные предположения

    Все подходящие кандидаты сортируются по достоверности и показываются в процентах, чтобы вы знали, какой декодер попробовать первым.

Эвристика обнаружения

Подсказка Вероятный шифр/кодировка
Только A-Z a-z 0-9 + / =, длина кратна 4 Base64
Только 0-9 a-f, четная длина Шестнадцатеричный
Только 0-1, 8 или более цифр Двоичный
Только точки, тире, косые черты и пробелы Азбука Морзе
Только заглавные латинские буквы, 5+ букв Шифр Цезаря или подстановки
20+ латинских букв, без пробелов Моноалфавитный шифр
Латинские буквы в верхнем и нижнем регистре Открытый текст, вероятно не шифр
Три сегмента через точку, начинается с eyJ Токен JWT
Начинается с $2a$, $2b$ или $2y$ Хеш bcrypt
Ровно 32 шестнадцатеричных символа Хеш MD5
Ровно 40 шестнадцатеричных символов Хеш SHA-1
Ровно 64 шестнадцатеричных символа Хеш SHA-256

Признаки помимо набора символов

  • Base64: блоки по 4, заполнение = в конце, включая + и /.
  • Цезарь или подстановка: заглавные латинские буквы, без цифр. Частоты такие же, как у открытого текста, просто сдвинуты.
  • Азбука Морзе: только точки, тире, косые черты и пробелы.
  • JWT: три сегмента, разделенных точками, обычно начинается с eyJ.
  • Хеши (MD5/SHA): шестнадцатеричные значения фиксированной длины (32 символа для MD5, 40 для SHA-1, 64 для SHA-256). Необратимы, идентификатор отмечает это, чтобы вы не пытались «декодировать».
  • Двоичный: длинные последовательности из 0 и 1, часто сгруппированные по восемь.

Ограничения автоматической идентификации

  • Короткие входные данные (<10 символов): достоверность низкая по всем направлениям. Может быть что угодно.
  • Пользовательский XOR с одноразовым блокнотом: без ключа неотличим от случайного. Идентификатор не вернет совпадений.
  • Несколько слоев: распространенный трюк CTF, Base64 → обратный → Caesar → шестнадцатеричный. Снимайте по одному слою.
  • Исходный язык не английский: проверки латинских букв по-прежнему работают, но «открытый текст» это лишь догадка; идентификатор не определяет язык.

Оценка уверенности

Каждый кандидат получает фиксированную достоверность в зависимости от того, насколько специфична его сигнатура. Более 80%: вероятно. 50-80%: правдоподобно. Ниже 50%: маловероятно. Несколько совпадений обычно означают короткий ввод или гибридный шифр.

Часто задаваемые вопросы

Любой метод идентификации шифра основан на статистических закономерностях, а для достоверности статистике необходимо достаточно данных. При длине менее 20 символов многие шифры выглядят одинаково; более 50 символов дают четкие сигналы.

Он лишь предлагает наиболее вероятную схему. Декодирование происходит в специальных инструментах-декодерах, а для некоторых декодирований требуется ключ, который вы должны предоставить.

Сначала проверьте набор символов (какие буквы/символы появляются), затем длину и структуру. Если это все еще неясно, попробуйте один за другим декодеры, которые вызывают подозрения (Base64, hex, Caesar), на CTF частота + угадывание обычно взламывают его за несколько попыток.

Вероятно, не как именованное совпадение: он не возвращает кандидатов или возвращает догадку с низкой достоверностью. Сравните алфавит и структуру вашего шифротекста с таблицей эвристик выше, чтобы перепроектировать простые самодельные схемы.

Сопутствующие инструменты

Генератор ключей PGP

Создайте пару ключей OpenPGP в текстовом формате ASCII и сертификат отзыва с Curve25519, RSA 2048 или RSA 4096.

Генератор SSL-сертификатов

Создайте самоподписанный сертификат SSL/TLS и закрытый ключ RSA полностью в браузере. Свои Common Name, SAN и срок действия, экспорт в PEM.

Шифрование / расшифровка AES

Шифруйте и расшифровывайте текст низкого риска с AES-шифрами OpenSSL. Парольная фраза хэшируется SHA-256, а Base64-вывод содержит IV плюс шифротекст.

Генератор JWT

Создавайте подписанные токены JWT с пользовательским заголовком, полями полезной нагрузки, подписью HMAC или RSA, а также ограничениями по сроку действия и аудитории для тестирования.

Генератор MD5

Создайте хеш MD5 для любого текста или файла. Результат, 128-битное значение в шестнадцатеричном формате, вычисляемое полностью в вашем браузере.

Генератор хешей

Создавайте хеши MD5, SHA-1, SHA-256, SHA-384, SHA-512 и CRC32 из текста, с готовым для копирования дайджестом для контрольных сумм и сравнений.

Инструмент доступен на других языках