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

Мгновенно получайте хеш MD5 любого текста в браузере. Ввод UTF-8, hex или Base64; вывод в hex или Base64. Бесплатно, приватно, без загрузки.

MD5 криптографически взломан (коллизии можно подобрать). Используйте его только для контрольных сумм или совместимости со старыми системами, но не для защиты.
MD5

Работает полностью в вашем браузере. Ваши данные никуда не загружаются.

Что такое Генератор хеша MD5?

MD5 — 128-битный хеш из RFC 1321, который по-прежнему широко используется для контрольных сумм, ключей кэша и дедупликации. Инструмент вычисляет 128-битный дайджест MD5 текста или сырых байтов (hex или Base64) по мере ввода и показывает его как 32 hex-символа или Base64.

Как пользоваться Генератор хеша MD5

  1. Введите или вставьте данные в Текст для хеширования — дайджест обновляется по мере ввода (пустое поле показывает хеш пустого ввода).
  2. Выберите Кодировка ввода: Текст (UTF-8) хеширует символы как UTF-8, Байты в hex или Base64 хешируют декодированные сырые байты.
  3. Выберите Формат вывода (hex строчными, hex прописными или Base64) и нажмите Копировать.

Пример

Ввод
abc
Вывод
900150983cd24fb0d6963f7d28e17f72

MD5 от 3 ASCII-байтов "abc" (UTF-8, вывод hex строчными) — стандартный тестовый вектор.

Когда использовать Генератор хеша MD5

Используйте текстовый инструмент MD5 для хеширования строк: воспроизвести значение из документации или кода, подготовить тестовые векторы, сверить вход подписи API или проверить, что должна выдавать программа. Не используйте его для защиты от злоумышленников — он криптографически взломан. Не используйте его и для проверки скачанного файла: при копировании содержимого файла в текстовое поле меняются окончания строк и кодировка, поэтому берите инструмент контрольной суммы файла MD5. Если данные может подставить злоумышленник, используйте SHA-256.

Как работает Генератор хеша MD5

MD5 дополняет сообщение до длины, кратной 512 битам (единичный бит, нули, затем 64-битная длина в порядке little-endian), и обрабатывает каждый блок четырьмя раундами по 16 шагов над четырьмя 32-битными словами. На каждом шаге подмешиваются слово сообщения, константа, полученная из синуса, и циклический сдвиг. Итоговое состояние в порядке little-endian — это 128-битный дайджест (32 hex-символа). Текст сначала преобразуется в байты (по умолчанию UTF-8), поэтому одни и те же символы всегда дают один и тот же хеш.

Распространенные Случаи Использования

  • Проверить ожидаемый MD5 строки в юнит-тесте или фикстуре
  • Хешировать hex-байты, скопированные из отладчика, дампа пакетов или спецификации протокола
  • Сравнить вывод MD5 в двух языках программирования, которые дают разные результаты
  • Генерировать детерминированные идентификаторы или ключи кэша из текста
  • Воспроизвести старые значения MD5, сохранённые устаревшей системой

Примечание по Безопасности

MD5 взломан для целей безопасности. Существуют практические атаки на коллизии (например, поддельный сертификат УЦ 2008 года и вредонос Flame), поэтому два разных файла могут иметь одинаковый MD5. Он по-прежнему годится для обнаружения случайных повреждений, но не используйте его для подписей, сертификатов или паролей — берите SHA-256 или SHA-3. Обычные хеши также не подходят для хранения паролей: используйте медленный хеш паролей с солью, например Argon2, scrypt или bcrypt. Все вычисления выполняются локально в браузере; введённые данные никуда не отправляются.

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

Можно ли расшифровать хеш MD5?

Нет. Хеш — это не шифрование, поэтому расшифровывать нечего. Сайты, которые «обращают» MD5, просто ищут хеш в огромных таблицах ранее хешированных строк, и это работает для коротких или распространённых входов.

Почему два инструмента дают разные значения MD5 для одного текста?

Обычно потому, что различаются байты: перевод строки в конце, окончания строк Windows (CRLF) или другая кодировка. Этот инструмент хеширует ровно байты UTF-8 того, что в поле, или сырые байты, если выбран ввод hex или Base64.

Почему хеш полностью меняется при изменении одного символа?

Это лавинный эффект, на который рассчитан любой криптографический хеш: изменение одного бита входа меняет около половины из 128 бит выхода, поэтому похожие входы дают несвязанные дайджесты.

Важен ли пробел или перевод строки в конце?

Да. Хеш охватывает каждый байт, поэтому abc и abc с переводом строки дают разные значения MD5. Убедитесь, что ввод содержит ровно те байты, которые вы хотите хешировать.

Другие категории