Miklix

Калькулятор хэш-кода MD4

Опубликовано: 16 февраля 2025 г. в 22:53:12 UTC
Последнее обновление: 12 января 2026 г. в 09:07:42 UTC

Калькулятор хеш-кода, использующий хеш-функцию Message Digest 4 (MD4) для вычисления хеш-кода на основе текстового ввода или загрузки файла.

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

MD4 Hash Code Calculator

MD4 (Message Digest 4) — это криптографическая хеш-функция, разработанная Рональдом Ривестом в 1990 году. Она выдает фиксированное 128-битное (16-байтовое) хеш-значение из входных данных произвольной длины. В настоящее время MD4 считается криптографически некорректной из-за уязвимостей, позволяющих осуществлять коллизионные атаки (обнаружение двух разных входных данных, дающих одинаковый хеш), поэтому её не следует использовать при проектировании новых систем. Она включена здесь на случай, если потребуется сгенерировать обратно совместимый хеш-код.

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


Вычислите новый хэш-код

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

Исходные данные:



Представленный текст имеет кодировку UTF-8. Поскольку хэш-функции оперируют двоичными данными, результат будет отличаться от того, если бы текст был в другой кодировке. Если вам нужно вычислить хэш текста в определенной кодировке, вам следует загрузить файл.



О хеш-алгоритме MD4

Я не математик, поэтому постараюсь объяснить эту хеш-функцию так, чтобы мои коллеги, не являющиеся математиками, поняли ;-) Если вам больше нравится объяснение с подробным математическим описанием, вы можете найти его на множестве других сайтов.

Итак, представьте себе MD4 как специальный шредер для бумаги. Но вместо того, чтобы измельчать бумагу, он «измельчает» любое сообщение (например, письмо, пароль или книгу) на небольшой чек фиксированного размера. Независимо от размера вашего сообщения, этот шредер всегда выдает вам крошечный чек длиной ровно 16 байт (128 бит), или 32 символа в шестнадцатеричном формате.

Для правильного уничтожения сообщения необходимо выполнить четыре шага:

Шаг 1: Подготовка сообщения

  • Перед измельчением необходимо правильно расположить бумагу, чтобы она идеально поместилась в шредер.
  • Если ваше сообщение слишком короткое, добавьте немного пустого пространства (например, рисунки или заполнитель), чтобы всё поместилось на листе бумаги.
  • Если текст слишком длинный, его можно разбить на несколько страниц одинакового размера.

Шаг 2: Добавление секретной печати

  • После корректировки сообщения вы добавляете в конце секретную метку, указывающую длину исходного сообщения.
  • Это помогает шредеру отслеживать исходный размер сообщения, независимо от того, сколько наполнителя вы добавили.

Шаг 3: Процесс измельчения (3 раунда волшебства)

  • Теперь сообщение отправляется в шредер.
  • Измельчитель имеет 4 шестерни (A, B, C и D), которые вращаются вместе по особой схеме.
  • Шестерёнки вращаются в 3 этапа, в ходе которых: перемешивают слова, переворачивают некоторые части вверх ногами, крутят их, как кубик Рубика, и сталкиваются разными частями.
  • С каждым раундом сообщение всё больше и больше превращается в бессвязный беспорядок, который невозможно распознать.

Шаг 4: Окончательный чек

  • После всех вращений, переворачиваний и раздавливаний измельчитель выдает чек — короткую последовательность цифр и букв (хеш).
  • Длина этого чека всегда одинакова, независимо от того, измельчили ли вы одно слово или целую книгу!

К сожалению, со временем люди обнаружили, что этот волшебный шредер не идеален. Некоторые находчивые люди придумали, как обмануть шредер, заставив его выдавать одинаковый чек для двух разных сообщений (это называется коллизией), а также предсказать вращение шестеренок и использовать это для создания поддельных чеков. Из-за этого MD4 больше не считается безопасным для важных данных.

Дополнительное чтение

Если вам понравился этот пост, вам также могут понравиться эти предложения:


Поделиться на BlueskyПоделиться на FacebookПоделиться на LinkedInПоделиться на TumblrПоделиться на XПоделиться на LinkedInЗакрепить на Pinterest

Миккель Кристенсен

Об авторе

Миккель Кристенсен
Миккель - создатель и владелец сайта miklix.com. Он имеет более чем 20-летний опыт работы в качестве профессионального программиста/разработчика программного обеспечения и в настоящее время работает на полную ставку в крупной европейской IT-корпорации. Когда он не ведет блог, то тратит свое свободное время на огромное количество интересов, хобби и занятий, что в некоторой степени отражается в разнообразии тем, освещаемых на этом сайте.