This page uses content from Wikipedia and is licensed under CC BYSA.
Secure Hash Algorithm  

Concepts  
hash functions · SHA · DSA  
Main standards  
SHA0 · SHA1 · SHA2 · SHA3


The Secure Hash Algorithm is 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 1801 (SHA1), FIPS PUB 1802 (SHA1, SHA256, SHA384, and SHA512). NIST has updated Draft FIPS Publication 202, SHA3 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) 
Max message size (bits) 
Rounds  Operations  Security bits (Info) 
Example performance^{[2]} (MiB/s) 
First Published  

MD5 (as reference)  128  128 (4 × 32) 
512  Unlimited^{[3]}  64  And, Xor, Rot, Add (mod 2^{32}), Or  <64 (collisions found) 
335  1992  
SHA0  160  160 (5 × 32) 
512  2^{64} − 1  80  And, Xor, Rot, Add (mod 2^{32}), Or  <80 (collisions found) 
  1993  
SHA1  160  160 (5 × 64) 
512  2^{64} − 1  80  <80 (collision found^{[4]}) 
192  1995  
SHA2  SHA224 SHA256 
224 256 
256 (8 × 32) 
512  2^{64} − 1  64  And, Xor, Rot, Add (mod 2^{32}), Or, Shr  112 128 
139  2001 
SHA384 SHA512 SHA512/224 SHA512/256 
384 512 224 256 
512 (8 × 64) 
1024  2^{128} − 1  80  And, Xor, Rot, Add (mod 2^{64}), Or, Shr  192 256 112 128 
154  2001  
SHA3  SHA3224 SHA3256 SHA3384 SHA3512 
224 256 384 512 
1600 (5 × 5 × 64) 
1152 1088 832 576 
Unlimited^{[5]}  24^{[6]}  And, Xor, Rot, Not  112 128 192 256 
  2015 
SHAKE128 SHAKE256 
d (arbitrary) d (arbitrary) 
1344 1088 
min(d/2, 128) min(d/2, 256) 
  2015 