SHA-2 is a family of cryptographic hash functions hash, the de facto standard for current developments. It was originally published by NIST in 2001. It is based on a merkle-damgard construction. It is replacing the older SHA-1 sha-1 hash function and the even older MD5 md5.
The family comprises 6 functions with different output lengths.
- SHA-256 sha256 and SHA-512 sha512 are the most commonly used hash functions. Their internal state and output size are both 256 for SHA-256 and both 512 for SHA-512. The algorithms are similar, but SHA-256 is expressed in terms of computations on 32-bit words while SHA-512 uses 64-bit words. SHA-512 has more rounds (80) than SHA-256 (64).
- SHA-224 and SHA-384 are very similar to SHA-256 and SHA-512 respectively, but with output truncated to a smaller size, and different constants.
- SHA-512/224 and SHA-512/256 (added in 2012) are truncated versions of SHA-512, also with different constants.
In 2012, NIST selected proposal for a SHA-3 sha-3 algorithm. Although SHA-3 was initially intended as a replacement for SHA-2, it is now planned that SHA-2 and SHA-3 will coexist.
- FIPS 180-4, the NIST Secure Hash Standard