RSA的安全性
RSA的安全性[复制链接]RSA的安全性 在RSA密码应用中,公钥KU是被公开的,即e和n的数值是可以被第三方得到的。
破解RSA密码的问题就是从已知的e和n的数值(n等于pq),想办法求出d的数值,这样就可以得到私钥来破解密文。
从RSA的原理中我们知道(d*e)mod((p-1)*(q-1)) =1,可以推导出d≡e-1(mod((p-1)(q-1)))或de≡1(mod((p-1)(q-1)))由此我们可以看出。
密码破解的实质问题是:从p、q的数值,去求出(p-1)和(q-1)。
换句话说,只要求出p和q的值,我们就能求出d的值而得到私钥。
当p和q是一个大素数的时候,从它们的积p*q去分解因子p和q,这是一个公认的数学难题。
比如当p*q大到1024位时,迄今为止还没有人能够利用任何计算工具去完成分解因子的任务。
因此,RSA从提出到现在已近二十年,经历了各种攻击的考验,逐渐为人们接受,普遍认为是目前最优秀的公钥方案之一。
但是RSA除了上述优点之外,也是有缺点的,RSA的缺点如下:1)虽然RSA的安全性依赖于大数的因子分解,但并没有从理论上证明破译RSA的难度与大数分解难度等价。
2)产生密钥很麻烦,受到素数产生技术的限制,因而难以做到一次一密。
3)分组长度太大,为保证安全性,n至少也要600bits以上,使运算代价很高,尤其是速度较慢,较对称密码算法慢几个数量级;且随着大数分解技术的发展,这个长度还在增加,不利于数据格式的标准化。
因此,使用RSA只能加密少量数据,大量的数据加密还要靠对称密码算法。
4)同样安全级别的加密算法,RSA需要更长的密钥。
这就使运算速度较慢,较对称密码算法慢几个数量级。
且随着大数分解技术的发展,这个长度还在增加,不利于数据格式的标准化。
因此,使用RSA只能加密少量数据,大量的数据加密还要靠对称密码算法。
实际应用中一般用来加密对称算法的密钥,而密文多用对称加密算法加密传输。
此帖出自综合技术交流论坛|||谢谢分享!|||一下子没看明白