0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

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

汽车电子技术 来源:嵌入式系统 作者: 嵌入式系统 2023-01-20 11:26 次阅读

1、国家商用密码

数据加密和解密涉及的算法大致可分为以下三大类:单向散列算法(杂凑算法),对称加密算法,公开密钥加密算法(非对称加密算法)。大部分算法出自国外,事实上我国国家密码管理局也发布了一系列国产商用密码算法,即SM系列,但是简称国密算法,命名上太过随意。

国密算法包括 SM1、SM2、SM3 、SM4、SM7、SM9、ZUC(祖冲之加密算法),其中SM1 和 SM7 算法不公开,其余算法已成为 ISO/IEC 国际标准。

2、国密算法

SM1、SM4、SM7、ZUC是对称算法,SM2、SM9是非对称算法,SM3是哈希算法,与国际通用算法的关系如下:

微信截图_20230105161930.png

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、小节

密码算法作为国家战略资源,在大数据和云计算的时代,对信息的保护尤其重要。国家商密算法可以替代部分常用的非国产算法,但应用不是很普及。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 加密算法
    +关注

    关注

    0

    文章

    215

    浏览量

    25547
  • 数据加密
    +关注

    关注

    0

    文章

    52

    浏览量

    12714
  • 国密算法
    +关注

    关注

    0

    文章

    7

    浏览量

    8544
收藏 人收藏

    评论

    相关推荐

    嵌入式AES算法CBC模式

    嵌入式AES算法CBC模式
    发表于 08-18 07:28

    加密芯片带国密算法

    本帖最后由 feijack8 于 2015-6-23 19:42 编辑 加密芯片的安全性:1、芯片本身硬件的安全,采用U盾芯片2、算法安全,可以采用国家商用密码算法,如
    发表于 06-21 13:50

    加密芯片使用手册

    加密芯片的安全性:1、芯片本身硬件的安全,采用U盾芯片2、算法安全,可以采用国家商用密码算法,如SM1,
    发表于 07-09 04:35

    嵌入式小波编码算法的原理是什么?

    Partitioned Embedded bloCK coder),可逆嵌入小波压缩算法(CREW:Compression with Reversible Embedded Wavelets)[3] 。本文对这些算法进行了原理
    发表于 08-15 08:27

    SM2算法芯片在嵌入式系统安全设计有什么用?

    PKI技术的支持。随着PKI密码技术的发展,SM2算法(国际上称之为ECC算法)应用越来越广,效率较之前的算法更高,破解难度更大、更安全。本
    发表于 03-31 07:29

    密码标准有哪些

    众所周知,为了保障商用密码的安全性,国家商用密码管理办公室制定了一系列密码标准,包括SM1(SC
    发表于 07-22 08:37

    密码学系列 - 国密算法 精选资料分享

    国密即国家密码局认定的国产密码算法。主要有SM1,SM2,S
    发表于 07-23 07:07

    加密芯片的接口进行调用

    众所周知,为了保障商用密码的安全性,国家商用密码管理办公室制定了一系列密码标准,包括SM1(SC
    发表于 07-26 08:18

    嵌入式系统中语音算法的基本原理是什么

    嵌入式系统中语音算法的基本原理是什么?嵌入式系统中语音算法有何功能?
    发表于 12-23 08:49

    恩智浦获颁国家密码管理局商用密码产品生产定点单位证书

    中国上海,2017年4月20日讯——恩智浦半导体(纳斯达克代码:NXPI,以下简称“恩智浦”)今日宣布恩智浦(中国)管理有限公司正式获得由国家密码管理局颁发的《商用密码产品生产定点单位
    发表于 04-21 15:19 950次阅读

    嵌入式开发的crc算法知识精选

    CRC校验(循环冗余校验)是数据通讯中最常采用的校验方式。在嵌入式软件开发中,经常要用到CRC 算法对各种数据进行校验。因此,掌握基本的CRC算法应是嵌入式程序员的基本技能。可是,
    的头像 发表于 11-08 11:28 4438次阅读
    <b class='flag-5'>嵌入式</b>开发的crc<b class='flag-5'>算法</b>知识精选

    好消息!国密算法终被Linux内核社区接受了

    国密,是国家商用密码的简称,由国家密码管理局制定算法标准,同时也制定了大量的产品及接口规范以及应用场景。
    的头像 发表于 10-27 09:28 2231次阅读

    基于KCF的目标跟踪算法研究及嵌入式系统实现

    基于KCF的目标跟踪算法研究及嵌入式系统实现(嵌入式开发公司如何接项目)-该文档为基于KCF的目标跟踪算法研究及嵌入式系统实现总结文档,是一
    发表于 08-04 10:07 8次下载
    基于KCF的目标跟踪<b class='flag-5'>算法</b>研究及<b class='flag-5'>嵌入式</b>系统实现

    密码算法如何保护嵌入式设计

      这些只是为提供设计安全性而出现的一些加密算法。通过阅读改编本博文的教程“密码学:深入了解算法”,了解有关其他人的更多信息(包括 RSA 公钥密码系统、椭圆曲线数字签名
    的头像 发表于 05-27 17:09 1973次阅读
    <b class='flag-5'>密码</b><b class='flag-5'>算法</b>如何保护<b class='flag-5'>嵌入式</b>设计

    北斗短报文手持终端如何确保数据安全性?

    北斗短报文手持终端支持的加密算法主要包括SM4算法和AES算法SM4算法是一种对称加密
    的头像 发表于 03-12 17:35 595次阅读