国密即国家密码局认定的国产密码算法,即商用密码。
国密算法是国家密码局制定标准的一系列算法。其中包括了对称加密算法,椭圆曲线非对称加密算法,杂凑算法。具体包括SM1,SM2,SM3,SM4等,其中:SM4为对称加解密算法与AES相似,模式也相同,开发时可以对比研究。
SM4算法主要包含5种基本模式:ECB、CBC、CFB、OFB,CTR(后4种都是ECB算法模块衍生而来);与MAC结合还诞生了GCM,CCM等高级模式;
CCM是CTR加密模式和CMAC认证算法的混合使用,常用在需要同时加密和认证的领域,比如WiFi安全中的WPE协议,它就使用了AES-CCM模式
所有SM4衍生的算法模式都基于SM4的基础轮函数。
经过验证的SM4国密算法代码:
ECB,CBC模式:
https://download.csdn.net/download/htx1020/13072638
CCM模式: