關於國密算法 SM1,SM2,SM3,SM4 的筆記

關於國密算法 SM1,SM2,SM3,SM4 的筆記

 

摘自:https://www.cnblogs.com/TaiYangXiManYouZhe/p/4317519.html php

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

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

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

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

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

 

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

 

SM2,SM3,SM4的相關文檔能夠參考以下連接:線程

http://218.241.108.63/wiki/index.php/首頁htm

 

SM2,SM3,SM4的C代碼以下:blog

http://files.cnblogs.com/files/TaiYangXiManYouZhe/Sm2_sm3_sm4_c%E8%AF%AD%E8%A8%80%E5%AE%9E%E7%8E%B0.zip

 

補充:

當使用特定的芯片進行SM1或其餘國密算法加密時,若用多個線程調用加密卡的API時,要考慮芯片對於多線程的支持狀況。

相關文章
相關標籤/搜索