Кубический хеш
-
Обзор CubeHash
- CubeHash — это криптографическая хэш-функция, разработанная Дэниелом Дж. Бернштейном.
- Она имеет 128-байтовое состояние и использует конструкцию с широкими каналами.
- Она основана на ARX и преобразует блоки сообщений в начальные биты состояния.
-
Изменения в предложении NIST
- Первоначальное предложение NIST требовало около 200 циклов на байт.
- После разъяснений от NIST автор предложил Cubehash16/32, который быстрее SHA-256 и SHA-512.
-
Прохождение конкурса и последующие доработки
- CubeHash прошел во второй раунд конкурса, но не стал финалистом.
- Бернстайн доработал параметры и рекомендует CubeHash512.
-
Структура и процесс работы
- CubeHash имеет 5 параметров, определяемых как CubeHash+r/b+f-h.
- Внутреннее состояние инициализируется и проходит через i раундов, после чего становится вектором инициализации.
- Сообщение дополняется и разбивается на блоки, которые вводятся в состояние через XOR и r циклов преобразования.
- Финальные f раундов преобразования дают хэш-значение в первых h/8 байтах состояния.
-
Круглая функция и примеры хэшей
- Круглая функция состоит из десяти шагов и влияет на внутреннее состояние.
- Примеры хэшей демонстрируют различные параметры и их влияние на результат.
-
Безопасность и рекомендации
- Безопасность CubeHash увеличивается с уменьшением b и увеличением r.
- Существуют компромиссы между безопасностью и временем вычисления хэш-значения.
- Внешние ссылки ведут на веб-сайт CubeHash.