[发明专利]使用RSA公开密钥加密算法的电子部件中的防攻击方法和装置有效
申请号: | 201310128960.1 | 申请日: | 2013-04-15 |
公开(公告)号: | CN103209073B | 公开(公告)日: | 2016-11-30 |
发明(设计)人: | 刘忠志;房伟如 | 申请(专利权)人: | 昆腾微电子股份有限公司 |
主分类号: | H04L9/30 | 分类号: | H04L9/30;G06F21/46 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 100195 北*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 使用 rsa 公开 密钥 加密算法 电子 部件 中的 攻击 方法 装置 | ||
1.一种使用RSA公开密钥加密算法的电子部件中的防攻击方法,其特征在于,每次执行使用中国剩余定理的RSA解密算法时采用所述方法,所述方法将密文c、密钥d、n、p、q作为输入,所述方法包括:
生成三个随机数:u、t、s;
用c′=c+u×n代替密文c;
计算p′=p×t,q′=q×s;
计算cp′=c′modp′和cq′=c′modq′;
计算和
计算mp=cp′dp′modp′,mq=cq′dq′modq′;
计算m=mq+q×[(mp-mq)(q-1modp)(modp)];
用mmodn代替m;
其中,p、q是两个位长相同但大小不等的素数,分别为n、p′、q′的欧拉函数。
2.根据权利要求1所述的方法,其特征在于,在所述生成三个随机数的同时,还生成随机数r;
所述方法还包括:用代替密钥d;
所述计算和具体为:计算和
3.根据权利要求1或2所述的方法,其特征在于,t、s为质数,
4.根据权利要求3所述的方法,其特征在于,生成t、s具体为:
从预先存储的质数中随机选择得到t、s。
5.根据权利要求4所述方法,其特征在于,从预先存储的质数中随机选择得到t、s包括:
从预先存储的质数中随机选择两个以上质数,t等于所述两个以上质数的乘积,等于所述两个以上质数分别减1后的乘积再乘上(p-1);
从预先存储的质数中随机选择两个以上质数,s等于所述两个以上质数的乘积,等于所述两个以上质数分别减1后的乘积再乘上(q-1)。
6.一种使用RSA公开密钥加密算法的电子部件中的防攻击装置,其特征在于,每次执行使用中国剩余定理的RSA解密算法时采用所述装置,所述装置将密文c、密钥d、n、p、q作为输入,所述装置包括:
生成模块,用于生成三个随机数:u、t、s;
第一替代模块,用于用c′=c+u×n代替密文c;
第一计算模块,用于计算p′=p×t,q′=q×s;
第二计算模块,用于计算cp′=c′modp′和cq′=c′modq′;
第三计算模块,用于计算和
第四计算模块,用于计算mp=cp′dp′modp′,mq=cq′dq′modq′;
第五计算模块,用于计算m=mq+q×[(mp-mq)(q-1modp)(modp)];
第二替代模块,用于用mmodn代替m;
其中,p、q是两个位长相同但大小不等的素数,分别为n、p′、q′的欧拉函数。
7.根据权利要求6所述的装置,其特征在于,所述生成模块在生成三个随机数的同时,还生成随机数r;
所述第三计算模块包括:
替代单元,用于用代替密钥d;
第一计算单元,用于计算和
8.根据权利要求6所述的装置,其特征在于,t、s为质数,所述第三计算模块包括:
第二计算单元,用于计算
第三计算单元,用于计算和
9.根据权利要求6所述的装置,其特征在于,t、s为质数,所述生成模块在生成三个随机数的同时,还生成随机数r;
所述第三计算模块包括:
替代单元,用于用代替密钥d;
第二计算单元,用于计算
第四计算单元,用于计算和
10.根据权利要求8所述的装置,其特征在于,所述生成模块包括:
生成单元,用于生成随机数u;
存储单元,用于存储质数;
选择单元,用于从所述存储单元存储的质数中随机选择得到t、s。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于昆腾微电子股份有限公司,未经昆腾微电子股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310128960.1/1.html,转载请声明来源钻瓜专利网。