基于模幂运算的低成本客户端谜题技术解析
1. RSA密码系统基础
RSA密码系统是应用最为广泛的公钥密码系统。设 $N = pq$ 是两个大且不同素数的乘积,$e$ 和 $d$ 是模 $\varphi(N) = (p - 1)(q - 1)$ 的逆元。在后续讨论中,假设 $p$ 和 $q$ 是平衡素数,即 $|p| = |q|$。对于 $k \in N^+$($N^+ = N - {0}$),公钥 $e$ 和私钥 $d$ 满足 $e \cdot d - 1 = k \cdot \varphi(N)$。
不过,当 $e \leq N^{1.875}$ 且 $d$ 较小时,RSA 是不安全的。现有的针对这类“弱”RSA 密钥的攻击大多基于 Wiener 攻击和/或 Boneh 与 Durfee 的攻击:
- Wiener 连分数攻击 :当 $e \leq N$ 且 $d < N^{\frac{1}{4} - \epsilon}$ 时,可有效分解 $N$。
- Boneh 和 Durfee 的基于格的攻击 :当 $e < N^{1.875}$ 时,私钥指数达到 $N^{0.2929}$ 都是不安全的。
- Blömer 等人的扩展攻击 :对于满足 $ex + y \equiv 0 \mod \varphi(N)$($x$ 和 $y$ 较短)且 $e \leq N$ 的情况,能在多项式时间内分解 $N$。
- Gao 等人的扩展攻击 :在多个具有公共模数的 RSA 实例中,当 $d < N^{0.4}
超级会员免费看
订阅专栏 解锁全文
1427

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



