Перейти к содержимому
ecdsa.com

SHA-2

Семейство хеш-функций из FIPS 180-4 (SHA-224, SHA-256, SHA-384, SHA-512, SHA-512/224 и SHA-512/256), разработанное NSA и опубликованное в 2001 году; сегодня это хеши по умолчанию почти везде.
Другие написанияSHA2SHA-384SHA-512SHA-224SHA-512/256

SHA-224 и SHA-256 используют 32-битные слова и 64 раунда; SHA-384, SHA-512 и усечённые варианты SHA-512/t — 64-битные слова и 80 раундов. SHA-224 и SHA-384 — усечённые версии SHA-256 и SHA-512 с другими начальными значениями. Стойкость к коллизиям равна половине длины дайджеста: 112, 128, 192 и 256 бит для SHA-224, SHA-256, SHA-384 и SHA-512.

На практике выбор определяется алгоритмом, с которым хеш работает в паре: SHA-256 — с P-256, RSA-2048/3072 и HMAC (ES256, RS256, HS256 в JOSE); SHA-384 — с P-384 (ES384, CNSA); SHA-512 — внутри Ed25519. Усечённые варианты (SHA-384, SHA-512/256) не подвержены атаке удлинения сообщения, а SHA-256 и SHA-512 с выходом полной длины подвержены.

NIST IR 8547 (черновик) оставляет SHA-2 в числе одобренных алгоритмов, но указывает для SHA-224 стойкость к коллизиям 112 бит, что ниже постквантовой категории 1, и сообщает, что 112-битные симметричные стандарты NIST будут запрещены в 2030 году.

Стандарты и ссылки

Все термины