SHA

From Crypto++ Wiki

Jump to: navigation, search

SHA is the Secure Hash Algorithm and specifies a family of one way functions. SHA is standardized by NIST in FIPS 180-3, Secure Hash Standard (SHS). SHA-0 is the original 160 bit hash which was found to be defective by the NSA. SHA-1 is the revised version of SHA-0 which many typically use when a hash is needed. SHA-2 refers to a collection of hashes: SHA-224, SHA-256, SHA-384, and SHA-512.

Note to implementers: the security level of SHA-1 has been reduced to approximately 250 using a boomerang attack. Please see McDonald, Hawkes, and Pieprzyk's Eurocrypt 2008 paper, SHA-1 collisions now 252. In addition, SHA-1 is no longer recommended by NIST for use in digital signatures in the Federal arena. See SP 800-57, Recommendation for Key Management, Table 3 on page 64.

[edit] Crypto++ Validation

Crypto++'s fipstest.cpp test file performs SHA validation in function SecureHashKnownAnswerTest.

[edit] Sample Program

[edit] Downloads

Personal tools