嵌入式的国家商用密码SM算法

1、国家商用密码数据加密和解密涉及的算法大致可分为以下三大类:单向散列算法(杂凑算法),对称加密算法,公开密钥加密算法(非对称加密算法)。大部分算法出自国外,事实上我国国家密码管理局也发布了一系列国产商用密码算法,即sm系列,但是简称国密算法,命名上太过随意。
国密算法包括 sm1、sm2、sm3 、sm4、sm7、sm9、zuc(祖冲之加密算法),其中sm1 和 sm7 算法不公开,其余算法已成为 iso/iec 国际标准。
2、国密算法sm1、sm4、sm7、zuc是对称算法,sm2、sm9是非对称算法,sm3是哈希算法,与国际通用算法的关系如下:
2.1 sm1对称加密算法sm1 算法是分组密码算法,对称加密,分组长度和密钥长度都为 128 位,算法安全保密强度及相关软硬件实现性能与 aes 相当。该 算法不公开 ,仅以ip核的形式存在于芯片中,需要通过加密芯片的接口进行调用,诸如智能ic卡、智能密码钥匙、加密卡等安全产品,广泛应用于电子政务、电子商务及国民经济的各个应用领域。
2.2 sm2公钥密码算法sm2为椭圆曲线(ecc)公钥加密算法,非对称加密,用来替换 rsa 算法,在不少政府网站会见到此类加密算法。
2.3 sm3杂凑算法sm3 为密码杂凑算法,采用密码散列(hash)函数标准,用于替代 md5/sha-1/sha-2 等国际算法,是在 sha-256 基础上改进实现的一种算法,消息分组长度为 512 位,摘要值长度为 256 位。在商用密码体系中,sm3 主要用于数字签名及验证、消息认证码生成及验证、随机数生成等。据国家密码管理局表示,其安全性及效率要高于 md5 算法和 sha-1 算法,与 sha-256 相当。在sm2,sm9标准中使用。
2.4 sm4对称加密算法sm4 为无线局域网标准的分组加密算法,对称加密,用于替代 des/aes 等国际算法,sm4 算法与 aes 算法具有相同的密钥长度和分组长度,均为 128 位,故对消息进行加解密时,若消息长度过长,需要进行分组,要消息长度不足,则要进行填充。加密算法与密钥扩展算法都采用 32 轮非线性迭代结构,解密算法与加密算法的结构相同,只是轮密钥的使用顺序相反,解密轮密钥是加密轮密钥的逆序。
2.5 sm7对称加密算法sm7 算法不公开 ,是一种分组密码算法, 分组长度为128比特,密钥长度为128比特。sm7适用于非接触式ic卡,应用包括身份识别类应用(门禁卡、工作证、参赛证),票务类应用(大型赛事门票、展会门票),支付类应用(积分消费卡、校园一卡通、企业一卡通等)。
2.6 sm9标识密码算法sm9 为标识加密算法(identity-based cryptography),非对称加密,标识加密将用户的标识(如微信号、邮件地址、手机号码等)作为公钥,省略了交换数字证书和公钥过程,使得安全系统变得易于部署和管理,适用于互联网应用的各种新兴应用的安全保障,如基于云技术的密码服务、电子邮件安全、智能终端保护、物联网安全、云存储安全等等。这些安全应用可采用手机号码或邮件地址作为公钥,实现数据加密、身份认证、通话加密、通道加密等。在商用密码体系中,sm9 主要用于用户的身份认证,据新华网公开报道,sm9 的加密强度等同于 3072 位密钥的 rsa 加密算法。
2.7 zuc祖冲之流密码算法zuc 为流密码算法,对称加密,该机密性算法可适用于 3gpp lte 通信中的加密和解密,该算法包括祖冲之算法(zuc)、机密性算法(128-eea3)和完整性算法(128-eia3)三个部分。用来替换rc4算法。
3、源码商密算法中除sm1和sm7不公开外,其他几个开源。商用密码源码地址:
http://www.scctc.org.cn/templates/general/index.aspx?nodeid=73包括源码、范例,免责声明等信息,可以很方便的移植到c嵌入式软件中。
4、小节密码算法作为国家战略资源,在大数据和云计算的时代,对信息的保护尤其重要。国家商密算法可以替代部分常用的非国产算法,但应用不是很普及。

基于PIC单片机和GPS接收模块的手持式GPS定位系统
消息称台积电 3nm 初期产能被苹果包下:用于生产 M、A 系列处理器
怎么使用LTspice教程进行噪声分析?
数字王国宣布成立一个新的合作伙伴公司——Iconic Engine
微软携手谷歌将Cortana变成其智能助理的技能
嵌入式的国家商用密码SM算法
芯闻3分钟:为何华为手机热销全球在美国却乏人问津?
配电站系统多种线路接线图解
选择热敏电阻温度传感器的考虑因素
深圳海芝通是定制锂电池组和定制户外家用储能电源为主
智能家居能为何够有如此增速?
浅谈AGV/AMR领域的传感器解决方案
移远通信发布GNSS单频定位模组LC76G,实现高性能精准导航新体验
基于智能卡的动态身份认证协议
两个相同电路的电流是否相等?
出售Agilent86102U光/电模块
iPhone手机电池使用维护指南
滴滴出行和软银集团合资企业滴滴日本 网约车服务扩展日本13个城市
EGAX-5-C20007加速度传感器在汽车ABS系统中的应用
什么是覆铜?网格覆铜还是实心覆铜?