SHA-1
一种密码散列函数 / 維基百科,自由的 encyclopedia
SHA-1(英語:Secure Hash Algorithm 1,中文名:安全散列算法1)是一種密碼散列函數,美國國家安全局設計,並由美國國家標準技術研究所(NIST)發布為聯邦資料處理標準(FIPS)[3]。SHA-1可以生成一個被稱為消息摘要的160位(20字節)散列值,散列值通常的呈現形式為40個十六進制數。
Quick Facts 概述, 設計者 ...
概述 | |
---|---|
設計者 | 美國國家安全局 |
首次發布 | 1993年(SHA-0) 1995年(SHA-1) |
系列 | 安全散列算法家族 |
認證 | FIPS PUB 180-4,CRYPTREC(英語:CRYPTREC)(監測) |
密碼細節 | |
摘要長度 | 160位元 |
分組長度 | 512位元 |
結構 | Merkle–Damgård結構(英語:Merkle–Damgård construction) |
重複回數 | 80 |
最佳公開破解 | |
2011年,Marc Stevens的攻擊,可以通過複雜度260.3至265.3的操作產生散列碰撞。[1]2017年2月23日,首次公開碰撞。[2]SHA-1容易受到長度擴展攻擊。 |
Close
2005年,密碼分析人員發現了對SHA-1的有效攻擊方法,這表明該算法可能不夠安全,不能繼續使用[4],自2010年以來,許多組織建議用SHA-2或SHA-3來替換SHA-1[5][6][7]。Microsoft[8]、Google[9]以及Mozilla[10][11][12]都宣布,它們旗下的瀏覽器將在2017年停止接受使用SHA-1算法簽名的SSL證書。
2017年2月23日,CWI Amsterdam(英語:CWI Amsterdam)與Google宣布了一個成功的SHA-1碰撞攻擊(英語:Collision_attack)[13][14],發布了兩份內容不同但SHA-1散列值相同的PDF文件作為概念證明。[15]
2020年,針對SHA-1的選擇前綴衝突攻擊已經實際可行。建議盡可能用SHA-2或SHA-3取代SHA-1。[16][17]