[发明专利]乘法器无效
申请号: | 200610064225.9 | 申请日: | 2006-12-29 |
公开(公告)号: | CN101149675A | 公开(公告)日: | 2008-03-26 |
发明(设计)人: | V·戈帕尔;G·沃尔里希;W·费格哈利;R·奥塔维 | 申请(专利权)人: | 英特尔公司 |
主分类号: | G06F7/72 | 分类号: | G06F7/72 |
代理公司: | 中国专利代理(香港)有限公司 | 代理人: | 程天正;陈景峻 |
地址: | 美国加利*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 乘法器 | ||
背景技术
密码系统保护数据免受有害的接入。密码系统通常包括数据上的数学运算(加密)使得原始数据(明码文本)无法理解(密码文本)。反向数学运算(解密)可从密码文本中恢复原始数据。密码系统覆盖了加密和解密数据的各种应用。例如,密码系统通常用于认证(即,可靠的确认通信方的身份),数字签名的产生,等。
目前,密码技术严重依赖于密集的数学运算。例如很多方案使用一种被认为模幂(modular exponentiation)算法的模运算,其涉及把较大数字自乘某些次,并且针对一个模来进行简化(即当被给定模数相除时的剩余部分)。数学地,模幂可以被表示为ge mod M,其中e是指数并且M是模。
因此,乘法和模降低是简易(Straight forward)运算。然而,通常,在这些系统中使用的数字非常大。例如,ge中的“e”可以长达几百甚至几千比特。对如此大的数字执行运算在时间和计算资源方面都非常昂贵。
附图说明
图1是乘法器的框图;
图2是阐明由该乘法器所确定的部分乘积的框图;
图3是阐明由并行乘法器所确定的部分乘积的框图;
图4是具有耦合到乘法器的乘法处理单元的部件的框图。
具体实施方式
多种密码运算依靠乘法器。例如,模幂(例如,确定ge mod M)是例如RSA(以Rivest,Shamir和Adelman命名的密码算法)和Diffie-Helman的各种密码算法的核心。例如,在RSA中,公钥是由公指数e-public和模数M构成。私钥是由私指数e-private和模数M构成。为了加密一个消息(例如,分组或分组净荷),执行下面的运算:
ciphertext=cleartexte-public mod M
为了解密一个消息,执行下面的运算:
cleartext=ciphertexte-private mod M
cleartext(明文)、ciphertext(密文)、以及公和私指数可以是非常大的数字,使得这些运算在计算方面非常昂贵。
执行模幂的一般方法以例如从左到右的顺序处理指数e中的比特。对于指数串中的每个“0”比特,程序平方当前结果。对于每个“1”比特,程序平方并乘以g。当较大的数字已经被累计时模降低可以在末端执行或者模降低可以被交织在乘法运算中,例如在处理每个指数比特或每几个指数比特之后。在该示例方案中,尽管指数比特的某些部分可能引起非平方乘法,运行时间被发生在每个比特的平方运算所支配。
上述示例模幂算法示意了加密系统实施的性能严重依赖于乘法的效率,尤其是平方运算的效率。图1阐明了乘法器120的实现例子,其在最合适的时钟速率具有较高性能并且是面积有效的。使用乘法器120可以有效地实现对较大数字的各种模幂算法。除了有效的处理一般的操作数乘法,乘法器120还包括逻辑以提高平方运算的性能,潜在的,降低用于执行平方的时钟周期的数量以及在降低时钟周期外降低功率。
如图1所示,乘法器120对两个操作数A 100a和B 100b进行运算。图1显示了操作数A 100a和B 100b由一组片断ai和bj组成。对于规则大小的片断,操作数可以表示为和。例如,在图1所示的例子中,其中n=3,A=a3x3+a2x2+a1x1+a0以及B=b3x3+b2x2+b1x1+b0。ai和bj的宽度(例如,x的值)可以基于A 100a和B 100b的宽度以及下面的乘法器120部件的数据路径大小进行选择。例如,对于512比特的A 100a和B 100b,x可以被设定为2128产生的统一128比特大小的片断。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于英特尔公司,未经英特尔公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200610064225.9/2.html,转载请声明来源钻瓜专利网。
- 上一篇:治疗妊娠恶阻之胃阴虚的中药
- 下一篇:治疗妊娠膀胱炎的中药