SHA-1
什么是SHA-1?
SHA-1是一种加密哈希函数,可用于身份验证和数字签名等应用。它由美国国家安全局(NSA)设计,并于1995年由美国国家标准与技术研究院(NIST)通过FIPS PUB 180-4实现标准化。
哈希函数是一种生成数值(哈希值)来表示给定数据的函数。具有适用于安全应用的密码学属性的哈希函数称为密码哈希函数。密码哈希函数生成的值称为消息摘要。交换消息时,发送方和接收方都会根据原始数据生成消息摘要并进行比较,以检测传输过程中可能发生的篡改。
SHA是安全哈希算法(Secure Hash Algorithm)的缩写,共有4个版本:SHA-0、SHA-1、SHA-2和SHA-3。SHA-1于1993年发布,作为SHA-0的后继版本,用于解决SHA-0中发现的问题,已被众多采用加密技术的应用和协议广泛使用,例如IPsec、SSL/TLS、SSH和S/MIME。后续版本SHA-2和SHA-3分别于2001年和2015年发布。
尽管SHA-1曾得到广泛应用,但2005年发现的一种攻击方法表明其安全性不足。美国政府建议相关系统在2013年年底前停止使用SHA-1。在Web浏览器领域,Microsoft于2016年6月宣布,将对使用SHA-1的SSL服务器证书显示警告;Google则表示,将对2016年1月1日之后签发的SHA-1服务器证书显示错误。仍在使用SHA-1 SSL服务器证书的网站应立即迁移到SHA-2。
