SHA-1
| Secure Hash Algorithms | |
|---|---|
| Concepts | |
| hash functions, SHA, DSA | |
| Main standards | |
| SHA-0, SHA-1, SHA-2, SHA-3 | |
| General | |
|---|---|
| Designers | National Security Agency | 
| First published | 1993 (SHA-0), 1995 (SHA-1) | 
| Series | (SHA-0), SHA-1, SHA-2, SHA-3 | 
| Certification | FIPS PUB 180-4, CRYPTREC (Monitored) | 
| Cipher detail | |
| Digest sizes | 160 bits | 
| Block sizes | 512 bits | 
| Structure | Merkle–Damgård construction | 
| Rounds | 80 | 
| Best public cryptanalysis | |
| A 2011 attack by Marc Stevens can produce hash collisions with a complexity between 260.3 and 265.3 operations. The first public collision was published on 23 February 2017. SHA-1 is prone to length extension attacks. | |
In cryptography, SHA-1 (Secure Hash Algorithm 1) is a hash function which takes an input and produces a 160-bit (20-byte) hash value known as a message digest – typically rendered as 40 hexadecimal digits. It was designed by the United States National Security Agency, and is a U.S. Federal Information Processing Standard. The algorithm has been cryptographically broken but is still widely used.
Since 2005, SHA-1 has not been considered secure against well-funded opponents; as of 2010 many organizations have recommended its replacement. NIST formally deprecated use of SHA-1 in 2011 and disallowed its use for digital signatures in 2013, and declared that it should be phased out by 2030. As of 2020, chosen-prefix attacks against SHA-1 are practical. As such, it is recommended to remove SHA-1 from products as soon as possible and instead use SHA-2 or SHA-3. Replacing SHA-1 is urgent where it is used for digital signatures.
All major web browser vendors ceased acceptance of SHA-1 SSL certificates in 2017. In February 2017, CWI Amsterdam and Google announced they had performed a collision attack against SHA-1, publishing two dissimilar PDF files which produced the same SHA-1 hash. However, SHA-1 is still secure for HMAC.
Microsoft has discontinued SHA-1 code signing support for Windows Update on August 3, 2020, which also effectively ended the update servers for versions of Windows that have not been updated to SHA-2, such as Windows 2000 up to Vista, as well as Windows Server versions from Windows 2000 Server to Server 2003.