CyberGlossary

Криптография

SHA-256

Также известно как: SHA-2 (256 бит), FIPS 180-4 SHA-256

Определение

256-битная криптографическая хеш-функция семейства SHA-2, широко используемая для цифровых подписей, TLS, блокчейнов и контроля целостности.

SHA-256 входит в семейство SHA-2, стандартизированное NIST в FIPS 180-4, и преобразует вход длиной до 2^64 бит в 256-битный (32-байтовый) дайджест. Она использует конструкцию Меркла–Дамгора с функцией сжатия типа Дэвиса–Мейера, обрабатывающей 512-битные блоки в 64 раундах. SHA-256 лежит в основе TLS 1.2/1.3, сертификатов X.509, Proof-of-Work в Bitcoin, подписи кода и HMAC-SHA-256. Практических атак, превосходящих общие границы 2^128 (коллизии) и 2^256 (прообраз), не существует, поэтому функция остаётся стойкой; для хеширования паролей её следует оборачивать в медленную KDF (Argon2, scrypt, PBKDF2).

Примеры

  • Bitcoin применяет двойной SHA-256 для хеширования блоков и Proof-of-Work.
  • Современные сертификаты X.509 подписываются SHA-256 (sha256WithRSAEncryption).

Связанные термины