RSA在选择密文攻击面前很脆弱。一般攻击者是将某一信息作一下伪装(Blind),让拥有私钥的实体签署。然后,经过计算就可得到它所想要的信息。实际上,攻击利用的都是同一个弱点,即存在这样一个事实:乘幂保留了输入的乘法结构:
( XM )^d = X^d *M^d mod n
前面已经提到,这个固有的问题来自于公钥密码系统的最有用的特征--每个人都能使用公钥。但从算法上无法解决这一问题,主要措施有两条:一条是采用好的公钥协议,保证工作过程中实体不对其他实体任意产生的信息解密,不对自己一无所知的信息签名;另一条是决不对陌生人送来的随机文档签名,签名时首先使用One-Way Hash Function对文档作HASH处理,或同时使用不同的签名算法。在中提到了几种不同类型的攻击 *** 。
RSA的公共模数攻击。
若系统 *** 有一个模数,只是不同的人拥有不同的e和d,系统将是危险的。最普遍的情况是同一信息用不同的公钥加密,这些公钥共模而且互质,那末该信息无需私钥就可得到恢复。设P为信息明文,两个加密密钥为e1和e2,公共模数是n,则:
C1 = P^e1 mod n
C2 = P^e2 mod n
密码分析者知道n、e1、e2、C1和C2,就能得到P。
因为e1和e2互质,故用Euclidean算法能找到r和s,满足:
r * e1 + s * e2 = 1
假设r为负数,需再用Euclidean算法计算C1^(-1),则
( C1^(-1) )^(-r) * C2^s = P mod n
另外,还有其它几种利用公共模数攻击的 *** 。总之,如果知道给定模数的一对e和d,一是有利于攻击者分解模数,一是有利于攻击者计算出其它成对的e'和d',而无需分解模数。解决办法只有一个,那就是不要共享模数n。
RSA的小指数攻击。 有一种提高RSA速度的建议是使公钥e取较小的值,这样会使加密变得易于实现,速度有所提高。但这样作是不安全的,对付办法就是e和d都取较大的值。
RSA算法是之一个能同时用于加密和数字签名的算法,也易于理解和操作。RSA是被研究得最广泛的公钥算法,从提出到现在已近二十年,经历了各种攻击的考验,逐渐为人们接受,普遍认为是目前更优秀的公钥方案之一。RSA的安全性依赖于大数的因子分解,但并没有从理论上证明破译RSA的难度与大数分解难度等价。即RSA的重大缺陷是无法从理论上把握它的保密性能如何,而且密码学界多数人士倾向于因子分解不是NPC问题。
RSA的缺点主要有:A)产生密钥很麻烦,受到素数产生技术的限制,因而难以做到一次一密。B)分组长度太大,为保证安全性,n 至少也要 600 bits以上,使运算代价很高,尤其是速度较慢,较对称密码算法慢几个数量级;且随着大数分解技术的发展,这个长度还在增加,不利于数据格式的标准化。目前,SET(Secure Electronic Transaction)协议中要求CA采用2048比特长的密钥,其他实体使用1024比特的密钥。
近日《怪物猎人:世界》Steam上打开了优惠主题活动,售价203元,如今只需133元,有兴趣爱好的客户能够了解一下。 《怪物猎人:世界》 《怪物猎人:世界》是怪猎系列产品的一个里程碑式,手...
如果一个人没钱了,他可以通过工作赚钱。但一男子在陕西西安一家物流公司工作29天,不但钱没有赚到,反而欠公司4000多元。该事件一经报道,引发舆论的广泛关注。这究竟是什么情况?下面,我们一起来具体了...
这其间要求项的细节改变能够比照新旧规范自己看一下,可见通用部分的要求项又削减了,三级削减了19项(230->211),二级削减了12项(147->135)。 1. 以.pipeMSSE--...
华为微信聊天记录找回(华为手机能恢复微信聊天记录吗)vivo手机是许多小伙伴都在使用的一款智能手机,vivo手机和其他手机一样在使用的过程中,多多少少会遇到一些问题,比如我们在使用vivo手机的时候误...
太多的SEOER期待自己的网站权重飙升,为了百度权重二字苦恼太久,其实提升百度权重并不是一件非常困难的事情,懂得SEO优化的思路,是完全没有问题来解决百度权重的问题。 什么是权重 很多人喜欢使...
中新网12月1日电 据新加坡《联合早报》报道,当地时间12月1日晚8时整,新加坡滨海湾将举行名为“闪耀星光”(Shine a Light)的灯光秀,开启跨年倒计时活动。 据报道,12月1日晚...