The Secure Hash Algorithms are a family of cryptographic hash functions published by the National Institute of Standards and Technology (NIST) as a U.S. Federal Information Processing Standard (FIPS), including:
The corresponding standards are FIPS PUB 180 (original SHA), FIPS PUB 180-1 (SHA-1), FIPS PUB 180-2 (SHA-1, SHA-256, SHA-384, and SHA-512). NIST has updated Draft FIPS Publication 202, SHA-3 Standard separate from the Secure Hash Standard (SHS).
In the table below, internal state means the "internal hash sum" after each compression of a data block.
Algorithm and variant | Output size (bits) |
Internal state size (bits) |
Block size (bits) |
Rounds | Operations | Security against collision attacks (bits) |
Security against length extension attacks (bits) |
Performance on Skylake (median cpb) | First published | ||
---|---|---|---|---|---|---|---|---|---|---|---|
Long messages | 8 bytes | ||||||||||
MD5 (as reference) | 128 | 128 |
512 | 64 | And, Xor, Rot, Or | ≤ 18 (collisions found) |
0 | 4.99 | 55.00 | 1992 | |
160 | 160 |
512 | 80 | And, Xor, Rot, Or | < 34 (collisions found) |
0 | ≈ SHA-1 | ≈ SHA-1 | 1993 | ||
< 63 (collisions found) |
3.47 | 52.00 | 1995 | ||||||||
SHA-224 SHA-256 |
224 256 |
256 |
512 | 64 | And, Xor, Rot, Or, Shr | 112 128 |
32 0 |
7.62 7.63 |
84.50 85.25 |
2004 2001 | |
SHA-384 SHA-512 |
384 512 |
512 |
1024 | 80 | And, Xor, Rot, Or, Shr | 192 256 |
0 |
5.12 5.06 |
135.75 135.50 |
2001 | |
224 256 |
112 128 |
288 256 |
2012 | ||||||||
SHA3-224 SHA3-256 SHA3-384 SHA3-512 |
224 256 384 512 |
1600 |
1152 1088 832 576 |
And, Xor, Rot, Not | 112 128 192 256 |
448 512 768 1024 |
8.12 8.59 11.06 15.88 |
154.25 155.50 164.00 164.00 |
2015 | ||
SHAKE128 SHAKE256 |
1344 1088 |
min(d/2, 128) |
7.08 8.59 |
155.25 155.50 |
Template:Adb
All SHA-family algorithms, as FIPS-approved security functions, are subject to official validation by the CMVP (Cryptographic Module Validation Program), a joint program run by the American National Institute of Standards and Technology (NIST) and the Canadian Communications Security Establishment (CSE).