
1.SM4分組密碼算法(GMT0002)
SM4分組密碼算法的結構與描述,在密碼應用中用分組密碼的需求適用。
SM4算法的分組長度與密鑰長度分別是128、128比特。加密與密鑰擴展算法用的都是32輪非線性疊代結構,數據加、解密算法結構一樣,解密輪密鑰與加密輪密鑰順序相反。
本規範詳細介紹了輪函數F和算法。輪函數F包括輪函數結構與合成置換T,算法描述含加密、解密和密鑰擴展3種。
2.SM2橢圓曲線公鑰密碼算法(GMT0003)
總則給出了本算法必要的數學基礎知識和有關的密碼技術,來促使實現其他各部分規定的密碼機制,對基域是素域與二元擴域的橢圓曲線公鑰密碼算適用。
數字簽名算法有數字簽名生成算法與驗證算法,對商用密碼應用中的簽名和驗證適用,可達到多種身份認證與數據完整性、真實性的安全需求。
密鑰交換協議可支持通信雙方經兩或三次信息傳遞過程,計算得到一個由雙方一起決定的共享秘密密鑰。
公鑰加密算法有消息加解密示例和相應的流程。對商用密碼應用中的消息加解密合適,消息發送者可用接收者的公鑰加密消息,接收者用對應私鑰解密,得到消息。
參數定義有本算法的曲線參數。
3.SM3密碼雜湊算法(GMT0004)
本算法的計算方法和步驟對商用密碼應用中的數字簽名與驗證、消息認證碼的生成與驗證及隨機數的生成適用,可支持多種密碼應用的安全需求。同時,還能給安全產品生產商給出產品與技術的定位及標準化的參考,提高產品的可信性與互操作性。
SM3算法可概述為:對長為n(n<2^64)位的消息m,本算法顺利获得經與疊代壓縮,得到雜湊值,雜湊值長度為256位。
