- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第十二讲RSA和abin算法(下)
6 Rabin加密的执行 6.1 计算平方根 6.2 关于效率 Rabin加密过程的效率非常高,这是因为仅需要1次模平方计算。比较而言,RSA加密使用加密指e=3需要1次模乘和模平方计算。Rabin解密速度要比加密慢,但是与RSA解密在一个数量级上。 6.3 冗余问题 Rabin公钥加密方案的一个缺点是接收者需要从4种可能情况中选择一个正确的解密明文消息。这一解密中的不确定问题在实践中可以通过预先增加定义原始明文消息冗余来解决。 (例如,明文消息的最后 64比特需要被复制。) 这样,将有非常高的概率解密出来的4个可能明文消息中仅有一个符合冗余的规则。如果4个平方根中没有一个符合冗余规则,则接收者就认为出错而拒绝密文消息。 (1) Rabin公钥加密方案存在类似RSA加密中的小指数加密和前项搜索问题。前项搜索问题可以通过明文消息加盐来解决。 (2) 作为被动攻击者的任务是从密文消息c恢复出明文消息m。这就是平方根SQROOT问题。分解n和计算模n的平方根问题在计算上是等价的。因此,假定分解n在计算上不可能,Rabin公钥加密方案就可以证明能够抵抗被动攻击者的攻击。 7 Rabin加密的安全 理由.假定有一个多项式时间的算法R可以解决SQROOT问题。这个算法就可以用来解决合数n的分解问题。随机选择一个整数x 满足(x,n)=1,并计算a?x2(mod n)。接下来,算法R在输入为a和n的情况下运行,返回模n平方根y。如果y??x(mod n),分解尝试失败,随机选择另一个整数x重复上述过程。否则,(x-y,n)就可以得到n的一个非平凡因子,p或q。由于a有4个模n的平方根,每次尝试成功的可能性为1/2。 (3) 对于主动攻击者,Rabin公钥加密存在选择密文攻击问题。这样的攻击可以按如下步骤进行。攻击者选择一个随机整数m并计算c?m2(mod n)。攻击者提交c给A的解密机,它将解密c并返回某个明文消息y。由于A不知道明文消息m,并且m为随机选择,明文消息y未必就是同一个消息m。如果随机返回,将有1/2可能性,y不等于?m(mod n),在这种情况下,(m-y,n)就是n的一个素数因子。否则,攻击可以换新的m重复以上过程。 (4) 如果将冗余规则用于以上情况,则Rabin 公钥加密方案将不在存在选择密文攻击问题。 如果攻击者选择一条消息m并具有规定的冗余并将c?m2(mod n)提交给A的加密机,加密机将以非常高的概率返回消息m本身给攻击者(由于其它3个c的模平方根有非常大的概率不包含规定的冗余),则将不会提供给攻击者任何信息。另一方面,如果攻击者选择不包含冗余的消息m,则有非常高的可能性4个模平方根都不具有需要的冗余形式。在这种情况下,解密机将认为对c的解密失败并对攻击者不做答复。因此,Rabin公钥加密通过增加适当的冗余规则将提高其实用价值。 8 公钥加密的总结 8.1 公钥加密的要求 在一个公钥系统中,消息集合M,密钥集合K,和加/解密函数E/D,必须满足如下要求: (1) 对于任何消息m?M,满足Dk(Ek(m))=m。 (2) 对于每一个消息m?M和密钥k?K,值 Ek(m)和Dk(m)容易计算。 8.1 公钥加密的要求(续) (3) 给定密钥k?K,很容易找到函数Ek和Dk。 (4) 对于几乎所有密钥k?K,如果仅仅知道函数Ek,不可能发现一个算法有效计算函数Dk。 8.1 公钥加密的要求(续) 8.2 关于认证和不可否认 (1) 在对称密码系统中,认证是容易的,但不存在不可否认问题。 (2) 在公钥密码系统中,认证和不可否认都不能自然成立。但是,这些目标容易实现。例如,在RSA系统中计算并发送消息Ekb(Ska(m))=Ekb(Dka(m))。 8.3 陷门单向函数 8.3 陷门单向函数(续) 谢谢! 第十二讲 RSA和Rabin算法(下) 本讲提要 RSA加密的安全(续) RSA加密实践 Rabin加密算法 Rabin加密的执行 Rabin加密的安全 公钥加密的总结 3.8 循环攻击 3.8 循环攻击 (续) 3.8 循环攻击 (续) 3.9 消息隐藏问题 3.9 消息隐藏问题(续) 3.10 前项搜索攻击 3.11 RSA-OAEP 3.11 RSA-OAEP (续) 3.11 RSA-OAEP (续) 3.12 定时攻击 对RSA算法的攻击,可能不仅仅来自算法本身,对其的不恰当执行同样可能导致系统的漏洞。攻击者将可能利用这些执行的弱点来危及整个RSA系统的安全。对密码系统的执行攻击受到安全工程师和用户的极大关注。 执行攻击包括:定时攻击,电耗分析攻击,出错攻击,和电磁辐射攻击
文档评论(0)