勵志

勵志人生知識庫

sm3算法

SM3是一種密碼散列函式標準,由中華人民共和國國家密碼管理局在2010年發布,正式名稱為「GM/T 0004-2012《SM3密碼雜湊算法》」。SM3算法主要用於數字簽名訊息認證碼生成隨機數生成等,其安全性及效率與SHA-256相當。

SM3算法是一種分組加密算法,其處理過程包括訊息填充、訊息分組、訊息擴展、疊代壓縮和輸出結果。在執行過程中,首先將訊息按每512比特(64位元組)進行分組,然後對每組進行訊息擴展和訊息壓縮,最後一組進行訊息填充後再壓縮,最後輸出結果。SM3使用8個字暫存器來存儲每一輪疊代壓縮的過程數據及結果,這些暫存器的初始值在算法開始執行前被定義為特定數值。

SM3算法的輸出是一個256比特的哈希值,這比MD5和SHA-1的輸出長度要長,因此提供了更高的安全性。其安全性建立在計算上不可行性上,即在沒有密鑰的情況下,從給定的哈希值恢復出原始訊息是極其困難的。