國密算法sm2.sm3.sm4

 

小組成員:劉霄,任逸飛,曹貽森html

國密即國家密碼局認定的國產密碼算法。主要有SM1,SM2,SM3,SM4。密鑰長度和分組長度均爲128位。git

SM1 爲對稱加密。其加密強度與AES至關。該算法不公開,調用該算法時,須要經過加密芯片的接口進行調用。github

SM2爲非對稱加密,基於ECC。該算法已公開。因爲該算法基於ECC,故其簽名速度與祕鑰生成速度都快於RSA。ECC 256位(SM2採用的就是ECC 256位的一種)安全強度比RSA 2048位高,但運算速度快於RSA。web

SM3 消息摘要。能夠用MD5做爲對比理解。該算法已公開。校驗結果爲256位。算法

SM4 無線局域網標準的分組數據算法。對稱加密,密鑰長度和分組長度均爲128位。canvas

因爲SM一、SM4加解密的分組大小爲128bit,故對消息進行加解密時,若消息長度過長,須要進行分組,要消息長度不足,則要進行填充。安全

sm2

SM2算法:SM2橢圓曲線公鑰密碼算法是我國自主設計的公鑰密碼算法,包括SM2-1橢圓曲線數字簽名算法,SM2-2橢圓曲線密鑰交換協議,SM2-3橢圓曲線公鑰加密算法,分別用於實現數字簽名密鑰協商和數據加密等功能。SM2算法與RSA算法不一樣的是,SM2算法是基於橢圓曲線上點羣離散對數難題,相對於RSA算法,256位的SM2密碼強度已經比2048位的RSA密碼強度要高。ruby

 

SM3

SM3算法:SM3雜湊算法是我國自主設計的密碼雜湊算法,適用於商用密碼應用中的數字簽名和驗證消息認證碼的生成與驗證以及隨機數的生成,可知足多種密碼應用的安全需求。爲了保證雜湊算法的安全性,其產生的雜湊值的長度不該過短,例如MD5輸出128比特雜湊值,輸出長度過短,影響其安全性SHA-1算法的輸出長度爲160比特,SM3算法的輸出長度爲256比特,所以SM3算法的安全性要高於MD5算法和SHA-1算法。markdown

SM4

SM4算法:SM4分組密碼算法是我國自主設計的分組對稱密碼算法,用於實現數據的加密/解密運算,以保證數據和信息的機密性。要保證一個對稱密碼算法的安全性的基本條件是其具有足夠的密鑰長度,SM4算法與AES算法具備相同的密鑰長度分組長度128比特,所以在安全性上高於3DES算法。``app

SM的算法實現

 

 

相關文章
相關標籤/搜索