杭州论坛网

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1110|回复: 1
打印 上一主题 下一主题

嵌入式设备中支持國密算法的方法

[复制链接]
跳转到指定楼层
楼主
发表于 2020-3-11 16:12:17 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
    如今国密系列算法的应用已不仅仅局限于金融和电信等领域,诸如车载设备,消费MIRACL(MultiprecisionIntegerandRatio使用Openssl库来使我们的嵌入式设备支持国密算法的功能,其开发步骤和我们都知道国密算法是国家密码局制定标准的一系列算法,即SM1,SM2,S




如今国密系列算法的应用已不仅僅局限于金融和电信等领域,諸如车载设备,消费类电子设备等越来越多的产品开始要求有国密算法的支持。但是國密算法的开源资料和应用案例少之又少,如何快速高效的在自己的设备中加入國密算法已經成為众多开发者必须要面對的难题。现在为大家准备了一个系列文章,介绍嵌入式设備中移植国密算法的方法。
简单来说,分為三种方法:
1、移植Miracl库
2、移植Openssl庫
3、使用加密芯片
下面進行简介:
1、移植Miracl库
    MIRACL(Multiprecision Integer and Rational Arithmetic C/c++ Library)是一套大數运算函数庫,用来設计与大數运算相关的密码學之應用,包含了RSA 公开密码学、AES、DSA,ECC,同時支持Diffie-Hellman密钥交换和數字签名功能。我们可以將这個库移植到我们的工程中,并在此基础上實现SM2,SM3,SM4的功能。
2、移植Openssl库
Openssl同样是支持加密算法的库,相比于Miracl,Openssl应用更加广泛,同时還支持常用的密鑰和证書封裝管理功能,支持SSL协议。
使用Openssl库来使我们的嵌入式设備支持国密算法的功能,其開发步骤和使用Miracl库的步骤类似,我们只需要将Openssl库中密码算法库的部分移植到我們的程序中,利用其函数接口,开发出国密算法的功能即可。
3、算法支持芯片
我们都知道国密算法是国家密码局制定标准的一系列算法,即SM1,SM2,SM3,SM4等。其中SM1是对称加密算法是采用硬件实现的,假如我們的应用需求中必须使用SM1,那么通过上面两種移植支持库的形式就实现不了了,這种情况下我們就要使用专门进行加密运算的加密芯片了。使用加密芯片的開發流程要比上述兩种方式容易很多,我们只需要在硬件设计上添加加密芯片,即完成了开发,使用时也只需要發送固定格式的指令来調用加密芯片的功能即可。
以上三种方法各有優缺點,下一期详細介绍三种实現方法。


分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享
回复

使用道具 举报

沙发
发表于 2020-3-11 16:12:23 | 只看该作者
国密算法和RSA等国際通用算法哪个更安全呢?软件实现的话,是国密几级的安全呢?有客户曾經问过
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|联系我们|杭州网

GMT+8, 2024-5-7 23:32 , Processed in 0.156250 second(s), 17 queries .

Powered by Discuz! X3

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表