下一代安全工具:SHA-3

jopen 9年前發布 | 5K 次閱讀 安全工具
 

美國國家標準與技術研究(NIST)所在今年8月公布了安全哈希算法3(Secure Hash Algorithm-3,SHA-3),并稱其為保護電子信息完整性的下一代安全工具。

那么,它會是嗎?

探討對SHA-3的需求

加密哈希函數廣為用于安全的許多方面,比如數字簽名、數據完整性檢查,不過與其他加密算法的作用是有區別的。它們把電子文件、消息或數據塊生成簡短的數字指紋,這稱為消息摘要或哈希值。散列法通過哈希函數中的運算實現,使用非常多的密鑰和塊,能夠有效地改變每個塊的密鑰,可抵抗密鑰相關的攻擊。

加密使用的通用運算往往有不同的設計目的。例如,對稱密鑰分組運算AES可以用于生成哈希值,不過其密鑰和塊的大小使其重要卻低效。

安全加密哈希函數的關鍵屬性包括:

· 輸出長度小于輸入長度

· 對于任何輸入都快速和高效的計算

· 任何輸入改變都會影響大量的輸出位

· 單向值:輸入不由輸出決定

· 強抗沖突性:兩個不同的輸入不能產生相同的輸出

2012年,NIST宣布Keccak是加密哈希算法競賽之冠,其選擇了一種下一代密碼安全哈希算法,該競賽于2007開始,共收到了64個提交。彼時極為流行的AES算法被選用于類似的過程,以確保對每個提交進行徹底且透明的分析。新標準SHA-3(Permutation-Based哈希和 Extendable-Output函數)可從NIST網站上下載,與2014年5月公布征求意見的試行版本沒有明顯區別。

NIST表示雖然SHA-2仍舊是安全的,適合大眾使用的,但有了SHA-3作補充,可滿足更多多樣性需求。MD5和SHA-1曾廣泛使用哈希算法,不過現在已輝煌不再,為SHA-2所取代。例如,微軟在2005宣布禁止開發人員使用DES、MD4、MD5,某些情況下會禁用任何SHA-1加密算法。盡管并沒有關于SHA-2攻擊的報道,然與SHA-1類似,總有SHA-3的用武之地,它與SHA-2設計非常不同。如果SHA-2一經攻擊,行業還可以有可更換的方案。

SHA-3帶來了什么

SHA-3系列由四個加密哈希函數(SHA3-224、SHA3-256、SHA3-384以及SHA3-512),兩個可擴展輸出函數(SHAKE128和SHAKE256)組成。

可擴展輸出函數不同于哈希函數,因為其可以擴展至任意需要的長度,這對于全域散列、隨機散列、流加密以及生成消息身份驗證代碼是非常理想的。在硬件部署中,Keccak明顯快于其他參與者,一些SHA-3函數可以不需要更多額外的電路部署在芯片上。

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!