國密算法是國家商用密碼管理辦公室制定的一系列密碼標準,包括SM1(SCB2)、SM2、SM3、SM4、SM7、SM9、祖沖之密碼算法(ZUC)那等等。在終端設備上通常需要使用內嵌國密算法的安全芯片配合使用,倚靠安全芯片的安全性來實現密鑰的存儲和安全防護。
密碼算法是保障信息安全的核心技術,在一些重要的行業例如:銀行業、游戲業、互聯網業以前長期以來都是沿用3DES、SHA-1、RSA等國際通用的密碼算法體系及相關標準。2010年底,國家密碼管理局公布了我國自主研制的“橢圓曲線公鑰密碼算法”(SM2算法)。為保障重要經濟系統密碼應用安全,國家密碼管理局于2011年發布了《關于做好公鑰密碼算法升級工作的通知》,要求“自2011年3月1日起,在建和擬建公鑰密碼基礎設施電子認證系統和密鑰管理系統應使用國密算法。自2011年7月1日起,投入運行并使用公鑰密碼的信息系統,應使用SM2算法。”經過多年的發展這些國密算法在國內各行各業都有了廣泛的應用,為國內各行業的信息安全提供了可靠的保障。
常用國密算法概述:
SM1算法: 對稱加密算法其加密強度與AES相當。該算法不公開,僅以IP核的形式存在于芯片中。需要通過加密芯片的接口進行調用。
SM2算法:非對稱算法其實現基于ECC算法。SM2橢圓曲線公鑰密碼算法是我國自主設計的公鑰密碼算法,包括SM2-1橢圓曲線數字簽名算法,SM2-2橢圓曲線密鑰交換協議,SM2-3橢圓曲線公鑰加密算法,分別用于實現數字簽名密鑰協商和數據加密等功能。SM2算法與RSA算法不同的是,SM2算法是基于橢圓曲線上點群離散對數難題,相對于RSA算法,256位的SM2密碼強度已經比2048位的RSA密碼強度要高。SM2以其高安全性和運算快速的特點在數據安全領域應用越來越廣泛。
SM3算法:該算法為摘要算法,可以用MD5作為對比理解。校驗結果為256位。適用于商用密碼應用中的數字簽名和驗證消息認證碼的生成與驗證以及隨機數的生成,可滿足多種密碼應用的安全需求。
SM4算法: 無線局域網標準的分組數據算法。對稱加密,密鑰長度和分組長度均為128位。 由于SM1、SM4加解密的分組大小為128bit,故對消息進行加解密時,若消息長度過長,需要進行分組,要消息長度不足,則要進行填充。
SM7算法:是一種分組密碼算法,分組長度為128比特,密鑰長度為128比特。SM7適用于非接觸式IC卡,應用包括身份識別類應用(門禁卡、工作證、參賽證),票務類應用(賽事門票、展會門票),支付與通卡類應用(校園一卡通、企業一卡通等)。