加密中两个大素数的乘积

时间:2015-08-11 14:44:51

标签: primes public-key-encryption prime-factoring

好的,所以我理解使用两个大质数的产品的重要性,但为什么不使用三个大质数的产品呢?

这会以某种方式使加密变弱吗?

如果答案不是一个简单的答案,那么如果可能,我会很感激技术答案。

4 个答案:

答案 0 :(得分:1)

假设您有一个1024位密钥。有两个素数,每个素数约为512位;有三个素数,每个约为341位。当前的分解方法需要指数时间,因此每个附加位需要大约两倍的时间来找到因子。因此,两个素数基本上强于三个素数。

具体而言,768位密钥已被考虑在数学文献中,并且在数学文献中有所报道,这意味着可以找到341位因子(768位因子分解需要大约2000个PC年,所以它&# 39;不容易,但可能)。还没有人报告过1024位密钥的分解(尽管无疑有人在研究它)。

答案 1 :(得分:0)

素数越大,加密越好。

给定特定数量的可用处理能力,最佳素数加密依赖于两个大素数。

答案 2 :(得分:0)

答案很简单,真的。对于给定大小(例如1024位)的数字,最难分解的问题是当数字因子成为两个素数时(假设它们不太接近总数的平方根)。直观地说,在含有更多鱼类的海洋中捕鱼更容易。找到三个素数中的一个比两个中的一个更容易。

答案 3 :(得分:0)

  

公钥和私钥生成算法最多   RSA密码学的复杂部分。两个大素数,p和q,   使用Rabin-Miller素性测试算法生成。一个   模数n通过乘以p和q来计算。这个号码用于   公钥和私钥都提供了它们之间的链接。

在发件人和收件人之间,您需要2个公钥和私钥。但为此您可以使用任意数量的素数,但通常使用2。

  • 但到目前为止,由于算法强度的进一步增加,算法的性能没有提高。
  • 对攻击者来说也不会有任何困难。
  • 加密和解密的处理时间会更高。您可以查看一些有关密码分析的书籍。
相关问题