Хэш Whirlpool онлайн — калькулятор и разбор алгоритма | lavarden.ru
Войти

Хэш Whirlpool онлайн

512-битный хэш на основе блочного шифра, похожего на AES — стандарт ISO/IEC 10118-3. Считается прямо в браузере — текст никуда не отправляется.

Вычислить Whirlpool

Результат пересчитывается сам, пока вы печатаете. В режиме «По строкам» пустые строки тоже хэшируются — результат всегда совпадает по числу строк со входом. Нужна другая функция — на полной странице калькулятора их 32.

История Whirlpool

Whirlpool опубликован в 2000 году бельгийским криптографом Винсентом Рэйменом — соавтором AES (Rijndael) — вместе с бразильским исследователем Паулу Баррету. Алгоритм подавался на европейский конкурс NESSIE (New European Schemes for Signatures, Integrity and Encryption) — аналог NIST-конкурсов, только на стороне Евросоюза, — и позже был принят как международный стандарт ISO/IEC 10118-3.

Участие одного из авторов AES в разработке Whirlpool — не совпадение: алгоритм сознательно построен на тех же идеях, что и AES, только «увеличенных» под гораздо больший размер блока.

Как устроен алгоритм

В основе Whirlpool — не набор раундовых функций поверх регистров, как у MD5/SHA, а полноценный блочный шифр (в спецификации называется W), спроектированный по образцу AES: состояние представлено как матрица 8×8 байт (512 бит — против матрицы 4×4 байта, то есть 128 бит, у самого AES), и каждый из 10 раундов состоит из тех же по духу шагов — замена байт через S-box, перестановка строк/столбцов, линейное перемешивание, добавление раундового ключа.

Но Whirlpool — хэш-функция, а не шифр, и шифр W используется не для шифрования данных, а как «двигатель» внутри схемы Миягути — Пренеля: очередной блок сообщения становится «ключом» для шифрования текущего состояния, а результат дополнительно складывается по XOR и со входом, и с состоянием до шифрования. Такая обвязка превращает обратимый блочный шифр в необратимую функцию сжатия — из результата нельзя восстановить ни блок сообщения, ни предыдущее состояние.

Hᵢ₋₁ (состояние) Mᵢ (блок) Шифр W 10 раундов, 8×8 байт данные "ключ" ⊕ + Hᵢ₋₁ и + Mᵢ ещё раз (Миягути-Пренель) Hᵢ (новое состояние)
Обратимый блочный шифр + необратимая обвязка XOR = необратимая функция сжатия

Характеристики

ПараметрЗначение
Длина хэша512 бит (128 hex-символов)
Размер блока512 бит
Раундов10
Внутреннее состояниематрица 8×8 байт (по образцу AES)
КонструкцияМиягути — Пренеля поверх блочного шифра W
Опубликован2000, стандарт ISO/IEC 10118-3
АвторыВинсент Рэймен (соавтор AES), Паулу Баррету

Где применяется

Криптостойкость

Whirlpool не взломан. Академические работы находили атаки типа rebound против уменьшенного числа раундов, но полная 10-раундовая версия остаётся без практических атак. Как и у AES, происхождение от тщательно изученной SP-сети (замена — перестановка) даёт хорошую теоретическую базу анализа стойкости.

Пример

СтрокаHello, world!
Whirlpoola1a8703be5312b139b42eb331aa800ccaca0c34d58c6988e44f45489cfb16beb4b6bf0ce20be1db22a10b0e4bb680480a3d2429e6c483085453c098b65852495
Пустая строка19fa61d75522a4669b44e39c1d2e1726c530232130d407f89afee0964997f7a73e83be698b288febcf88e3e03c4f0757ea8964e59b63d93708b138cc42a66eb3