您好, 登录| 注册|
论坛导航
您好, 登录| 注册|
子站:
商城:
论坛首页    单片机MCU/嵌入式
  •  发帖
  • 收藏

RSA算法特点与应用注意事项
阅读: 215 |  回复: 12 楼层直达

2017/08/10 15:20:23
1
lingkes2006
电源币:3 | 积分:0 主题帖:16 | 回复帖:3
LV2
班长

QQ截图20160321155901  高效、易用、便捷的电源调试助理——是德科技E36313A可编程直流电源测评

QQ截图20160321155901  在测试完智能手表的功耗之后,我发现了两个比较严重的问题……

QQ截图20160321155901  有几个人知道Tag 在不同工作状态下背后隐藏的秘密!


3DES、AES等对称算法虽有运算速度快、加密强度高等优点,但密钥存储与传递却是其最大的弱点,这也对它的应用场景造成了一定的限制。而RSA非对称算法利用非对称公私钥对,解决了密钥传递中的安全问题。在一些对实时性要求不是非常严格的系统中,RSA算法还是可以弥补对称算法的弱点。当然,若两者结合使用,既能提升运算效率,又能保证密钥安全,是个不错的选择。

我们并不需要多关心RSA的算法原理与安全强度,因为它是目前最主流的非对称算法,且短时间内地位是不可替代的。对于初次了解该算法并准备使用的工程师来说,只需要注意几点:

1、RSA算法的公钥是公开的,任何人都可获取保留,因此其存储与传递不需要特殊处理。私钥不公开,必须安全存储,嵌入式行业一般存放于加密芯片或其他硬件安全载体中。

2、公钥先对明文运算生成密文称为加密操作,私钥后对密文运算还原出明文称为解密操作;私钥先对明文运算生成密文称为签名,公钥后对密文运算生成明文成为验签。即公钥只进行加密和验签工作,私钥只进行解密和签名工作,适其介入运算的先后顺序而定。

3、根据公钥模长度的不同,RSA算法又分为RSA512、RSA1024、RSA1280等。公钥模长度即为单次运算数据的长度。以RSA1024为例,当使用公钥加密时,单次输入的明文长度不能超过1024bit = 1024bit / 8 = 128byte,私钥运算亦是如此。

4、RSA算法的公私钥参数提供方式分为两种。第一种模式NDE模式,NE是公钥,ND是私钥。第二种CRT模式:NE是公钥,P Q dP dQ Qinv这5个参数构成私钥。上述参数中P、Q为两个大素数,如果使用RSA1024算法,则二者长度均为1024/2=512bit =64byte,dP、dQ两个参数长度也和P、Q长度相等。N=P*Q长度为1024bit,即128byte,D为私钥参数;E为公钥指数(一般使用0x010001)。

目前LKT加密芯片能支持CRT模式的RSA算法。加密芯片可自动生成公私钥对。用户在开发过程中可以放开公私钥文件读写权,但是应用阶段必须将私钥文件读权限封住。若用户已有公私钥对,在向加密芯片中写入的过程中,需要先将P Q dP dQ Qinv这5个参数解析出来,然后按照手册中规定的格式写入到芯片中,才可以进行RSA运算。

经过本期的介绍后,相信大家对RSA算法的基本概念和应用都有了初步了解,如果通过阅读本文,能让各位顺利过渡进入到RSA的了解和应用中,那就达到了作者的本意。

四通道3MHz低功耗低噪1.8V CMOS运算放大器 IO-Link数字输入集线器参考设计 低噪声稳压开关电容电压逆变器
单电流限流配电开关5-SOT-23 -40至85 带音频附件支持的USB Type-C™电源通道保护 具有40μA静态电流的 2A SIMPLE SWITCHER®、降压稳压器
12位,2.7-GSPS,RF采样模数转换器 单USB车载充电器带电缆补偿和电池短路保护 LP38798-ADJ Hi PSRR超低噪声 800mA低输入电压稳压器
2017/08/14 07:35:46
2
lingyan
电源币:3650 | 积分:34 主题帖:15 | 回复帖:523
LV7
旅长
学习一下
2017/08/15 09:42:49
3
miniminimini
电源币:0 | 积分:3 主题帖:0 | 回复帖:9
LV2
班长
学习了
2017/08/15 09:43:26
4
miniminimini
电源币:0 | 积分:3 主题帖:0 | 回复帖:9
LV2
班长
对称算法和非对称算法有什么区别?
2017/08/15 13:42:01
5
114W1
电源币:3 | 积分:3 主题帖:0 | 回复帖:18
LV2
班长
简而言之,对称算法的加解密密钥是相同的,而非对称算法的加解密密钥是不同的。
2017/08/16 08:58:37
6
人称福爷
电源币:0 | 积分:3 主题帖:0 | 回复帖:3
LV1
士兵
那为什么非对称算法的密钥存储与传递更安全呢?
2017/08/18 10:05:29
7
邓女士
电源币:0 | 积分:3 主题帖:0 | 回复帖:10
LV2
班长
很好理解啊,因为公钥是公开的,只需要保护好私钥既可,而对称算法的加解密秘钥,都要好好保管,泄露一个,就等于两个密钥都泄露了。
2017/08/18 10:58:19
8
Hex315
电源币:0 | 积分:3 主题帖:1 | 回复帖:18
LV2
班长
那为什么3DES、AES等算法还在用,没有被淘汰呢?
2017/08/18 14:28:20
9
haozhuang0205
电源币:0 | 积分:3 主题帖:0 | 回复帖:2
LV1
士兵
文中不是说了吗,对称算法运算速度快,RSA算法用在一些对实时性要求不是非常严格的系统中,就是说RSA的运算速度要慢一些
2017/08/18 17:43:36
10
Hex315
电源币:0 | 积分:3 主题帖:1 | 回复帖:18
LV2
班长
哦,我是初学者,还要努力学习啊。RSA512、RSA1024、RSA1280有什么区别?
2017/08/22 21:21:26
11
BLoun
电源币:0 | 积分:3 主题帖:0 | 回复帖:7
LV1
士兵
公钥模长度不一样。RSA512的公钥长度是64字节,RSA1024的公钥长度是128字节,RSA1280的公钥长度是160字节。
2017/08/25 10:11:29
12
Mr_Wang_
电源币:0 | 积分:3 主题帖:0 | 回复帖:19
LV2
班长
如果我用RSA算法,NDE模式和CRT模式,我应该选哪个?
2017/08/25 14:04:44
13
小屁孩456
电源币:0 | 积分:3 主题帖:0 | 回复帖:9
LV2
班长
都可以,没有区别。具体您可以上网研究一下RSA算法原理就明白了。
关注我们
新浪微博
官方Q群
客服热线
服务时间:周一至周五9:00-18:00
微信关注
免费技术研讨会
获取一手干货分享