Алгоритмы безопасного хеширования

редактировать
Семейство криптографических хеш-функций

Алгоритмы безопасного хеширования являются семейством из криптографических хэш-функций, опубликованных Национальным институтом стандартов и технологий (NIST) как US Федеральный стандарт обработки информации (FIPS), включая:

  • SHA-0 : ретроним, примененный к исходной версии 160-битной хеш-функции, опубликованной в 1993 году под названием «SHA». Он был отозван вскоре после публикации из-за нераскрытого «существенного недостатка» и заменен слегка измененной версией SHA-1.
  • SHA-1 : 160-битная хеш-функция, напоминающая более раннюю Алгоритм MD5. Он был разработан Агентством национальной безопасности (АНБ) как часть алгоритма цифровой подписи. В SHA-1 были обнаружены слабые места в криптографии, и после 2010 года стандарт больше не одобрялся для большинства криптографических применений.
  • SHA-2 : семейство двух похожих хеш-функций с разными размерами блоков, известных как SHA-256 и SHA-512. Они различаются размером слова; SHA-256 использует 32-байтовые слова, а SHA-512 - 64-байтовые слова. Существуют также усеченные версии каждого стандарта, известные как SHA-224, SHA-384, SHA-512/224 и SHA-512/256. Они также были разработаны АНБ.
  • SHA-3 : хеш-функция, ранее называвшаяся Keccak, выбрана в 2012 году после открытого конкурса среди дизайнеров, не связанных с АНБ. Он поддерживает ту же длину хэша, что и SHA-2, и его внутренняя структура значительно отличается от остальной части семейства SHA.

Соответствующие стандарты: FIPS PUB 180 (исходный SHA), FIPS PUB 180- 1 (SHA-1), FIPS PUB 180-2 (SHA-1, SHA-256, SHA-384 и SHA-512). NIST обновил проект публикации 202 FIPS, стандарт SHA-3 отдельно от стандарта безопасного хеширования (SHS).

Сравнение функций SHA

В таблице ниже внутреннее состояние означает «внутреннюю хеш-сумму» после каждого сжатия блока данных.

Сравнение функций SHA
  • view
  • talk
Алгоритм и вариантРазмер вывода. (биты)Размер внутреннего состояния. (биты)Размер блока. (биты)ОкругляетОперацииБезопасность (в битах) против атак коллизий Емкость. против атак с расширением длины Производительность на Skylake (медиана cpb )Первые опубликованные
длинные сообщения8 байтов
MD5 (для справки)128128. (4 × 32)51264And, Xor, Rot, Add (mod 2), Или≤18. (обнаружены коллизии)04,9955,001992
SHA-0 160160. (5 × 32)51280And, Xor, Rot, Add (mod 2) или<34. (обнаружены коллизии)0≈ SHA-1≈ SHA-11993
SHA-1 <63. (обнаружены коллизии)3,4752,001995
SHA-2 SHA-224. SHA-256224. 256256. (8 × 32)51264And, Xor, Rot, Add (mod 2), Or, Shr112. 12832. 07.62. 7.6384.50. 85.252004. 2001
SHA-384. SHA-512384. 512512. (8 × 64)102480И, Xor, Rot, Add (mod 2), Or, Shr192. 256128 (≤ 384). 05,12. 5,06135,75. 135,502001
SHA-512/224. SHA-512/256224. 256112. 128288. 256≈ SHA-384≈ SHA-3842012
SHA-3 SHA3-224. SHA3-256. SHA3-384. SHA3-512224. 256. 384. 5121600. (5 × 5 × 64)1152. 1088. 832. 57624И, Xor, Rot, Not112. 128. 192. 256448. 512. 768. 10248,12. 8,59. 11,06. 15,88154,25. 155,50. 164,00. 164,002015
SHAKE128. SHAKE256d (произвольно). d (произвольно)1344. 1088мин (d / 2, 128). мин (d / 2, 256)256. 5127,08. 8,59155.25. 155.50
Проверка

Все алгоритмы семейства SHA, как функции безопасности, одобренные FIPS, подлежат официальной проверке CMVP, a jo int (Программа проверки криптографических модулей), выполняемая Американским Национальным институтом стандартов и технологий (NIST) и Канадским учреждением безопасности связи (CSE).

Ссылки
Последняя правка сделана 2021-06-07 08:32:43
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте