[发明专利]基于余数系统的RSA密码处理方法及协处理器有效
申请号: | 201110161204.X | 申请日: | 2011-06-16 |
公开(公告)号: | CN102231102A | 公开(公告)日: | 2011-11-02 |
发明(设计)人: | 郭炜;白松辉;苏蛟;刘亚灵;魏继增 | 申请(专利权)人: | 天津大学 |
主分类号: | G06F7/72 | 分类号: | G06F7/72 |
代理公司: | 天津市北洋有限责任专利代理事务所 12201 | 代理人: | 刘国威 |
地址: | 300072*** | 国省代码: | 天津;12 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 余数 系统 rsa 密码 处理 方法 处理器 | ||
技术领域
本发明涉及信息技术安全及微处理器设计。具体讲,涉及基于余数系统的RSA密码协处理器。
背景技术
RSA公钥加密算法是1977年由Ron Rivest、Adi Shamirh和LenAdleman在(美国麻省理工学院)开发的。RSA取名来自开发他们三者的名字。
随着计算机网络和信息技术的发展,信息安全在各领域发挥着越来越重要的作用,其中密码学已经成为信息安全技术的核心。RSA是目前公认的在理论和实际应用中最为成熟和完善的一种公钥密码体制,它是基于大整数因子分解的困难性来确保RSA算法的安全性。目前大多数使用公钥密码进行加密和数字签名都是使用RSA算法。
大数模幂运算是RSA算法的核心运算,它是由一系列大数模乘运算构成,大数位数需要在数百bit到上千bit,因此运算量非常大,是加解密运算速度慢的主要瓶颈。RSA密码系统的算法并不复杂,但它依赖于长整数的模乘幂运算,很难获得比较高的数据处理度。模幂运算由一系列的模乘法运算完成,在实现长整数的模乘法运算的所有算法中,Montgomery算法不依赖于长整数的比较和除法,是一种便于硬件实现的算法,所以应用最为广泛。
发明内容
为克服现有技术的不足,能够加速RSA模乘运算速度;扩展额外的数据通路,增加FU之间的级联,有效地避免了大量的冗余数据写回过程,充分发掘了指令级并行性,提高RSA加解密性能。为达到上述目的,本发明采取的技术方案是,基于余数系统的RSA密码处理方法,采用RSA算法进行加解密运算,采用L-R二进制扫描模幂算法进行RSA算法的大数模幂运算,所述L-R二进制扫描模幂算法将大数模幂运算转化成大数模乘运算,具体为:从左到右扫描幂指数的每一个二进制比特位,每扫描一个比特位,进行一次大数模平方,如果当前比特位为1,则继续进行一次大数模乘,否则,扫描下一比特位,采用改进的基于余数系统的Montgomery算法进行大数模乘运算,所述改进的Montgomery算法具体为:将1024bit的大数表示成余数系统下的数,即两组33个32bit的小数,以及1个冗余基下表示的32bit的数,表示过程即求模过程,分解成的32bit小数分别独立参与32bit的模乘、模乘累加、模加运算,并且各个32bit数据之间不存在依赖,进行并行执行运算。
所述算法具体包括下列步骤:
输入:x,y,N在两组基和在冗余基mr下的表示,M′=(M′1,M′2,...,M′k)B′,Mr=Mmodmr;
输出:r=xyM-1(modN)在两组基和冗余基下的表示,r≤(k+2)N;
Step1:
Step1.1:zi=(xi×yi)modmi;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于天津大学,未经天津大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110161204.X/2.html,转载请声明来源钻瓜专利网。
- 上一篇:三维地震数据管理及组织方法
- 下一篇:一种电力表计的智能生产系统