如何使用RSA算法仅从公钥中找到私钥?

本文来自:IT宝库(https://www.itbaoku.cn)

推荐答案1

公共密钥是一个整数模量 n n n .

步骤1:计算还原的基本函数 λ ( n ) λ ( n ) λ ( n ) 是最不常见的倍数1比每个素数少.

步骤2:使用欧几里得算法找到 e mi> mod λ ( n ) " crom ="呈现"样式=" font-size:font-size: 122%; mod λ ( n ) e mod> mod> mod> λ ( n ) 使得 d e + k λ ( n n )) = 1 " cole ="呈现"样式=" font-size:122%:相对; > d e + k态/span> ) = 1 SPAN> d + k λ ( n ) = 1 对于某些整数 k k d 是私钥.

诀窍是trocoring很难,这就是为什么RSA是安全的.

推荐答案2

这是完成的方式,分为三个简单的步骤:

  1. 因素模量 [1] .模量是两个质数的产物.因此,找到大于一个分为模量的数字.商将是另一个因素.此步骤是Asker的练习.
  2. 找到模量的Euler Tocient [2] .超级容易.如果一个数字是两个素数的乘积,那么基准是一个小于那些素数的乘积.
  3. 找到模块化逆 [3] 公钥.这并不是很明显的方法,但是"扩展的欧几里得"算法是有效的多项式时间方法.可以在Wikipedia上找到代码.

好运! 257 "角色="示例=" font-size:122%; E = 257 e = 257 257