RSA与因式分解问题的深入剖析
1. 计算d与因式分解的关联
在RSA算法中,计算秘密指数d和对模数N进行因式分解是两个关键问题。已知RSA模数$N = pq$,公钥指数$e$和私钥指数$d$满足$ed \equiv 1 \pmod{\varphi(N)}$。若已知公钥信息$(N, e)$以及$N$的因式分解,可使用欧几里得算法在多项式时间内计算出$d$。反之,给定$(N, e, d)$,也能通过Miller算法在概率多项式时间内对$N$进行因式分解。
2004年的研究表明,利用Coppersmith方法可以实现从计算$d$到因式分解$N$的确定性归约,这确立了两个问题在确定性多项式时间内的等价性。
我们的目标是计算$\varphi(N) = N - (p + q - 1)$。由于$p$和$q$具有相同的比特长度,$N$是$\varphi(N)$的一个近似,误差约为$N^{\frac{1}{2}}$。因此,多项式$f(x) = N - x \pmod{\varphi(N)}$有一个根$x_0 = p + q - 1$,其大小为$N^{\frac{1}{2}}$。设$M = ed - 1 = N^{\alpha}$($\alpha \geq 2$),且$M$是$\varphi(N)$的倍数。
通过设置参数$\delta; c = 1$,$b = \varphi(N)$,$M = N^{\alpha}$,$\beta = \frac{1}{\alpha}$,应用LLL算法,我们可以找到所有满足$|x_0| \leq M^{\frac{\beta^2}{\delta}} = (N^{\alpha})^{\frac{1}{\alpha^2}} = N^{\frac{1
超级会员免费看
订阅专栏 解锁全文
1517

被折叠的 条评论
为什么被折叠?



