关于RSA质数生成的侧信道攻击及随机延迟生成方法
1. RSA质数生成侧信道攻击原理
1.1 攻击基础理论
在RSA质数生成过程中,攻击的步骤依赖于 (p - 1 \pmod{e}) 或 (p \pmod{e}) 的余数。对于 (j \in \mathbb{N}_0) 且 (p \not\equiv 0 \pmod{e}),定义集合:
[M’(j) = {x \in \mathbb{Z}_e^* \mid \text{对于 } (e, x - 1) \text{,欧几里得算法在 } j \text{ 步后终止}}]
假设攻击者观察到 (d_p) 和 (d_q) 的计算分别需要 (v_p) 和 (v_q) 步。根据定义,(p \pmod{e} \in M’(v_p - 1)) 且 (q \pmod{e} \in M’(v_q - 1))。进一步定义:
[M_p := M’(v_p - 1) \cap \left{(M’(v_q - 1))^{-1} \pmod{e}\right}]
最终有 ((p \pmod{e}, q \pmod{e}) \in {(a, n a^{-1} \pmod{e}) \mid a \in M_p})。
若 (e) 与 (s) 或 (s \cdot s_1) 互质(例如 (e = 2^{16} + 1)),攻击者可对 (s \cdot e) 或 (s \cdot s_1 \cdot e) 应用定理1,信息增益为 (I(e) = \log_2(e) - \log_2(|M_p|))。若 (\gcd(s, e) > 1) 或 (\gcd(s \cdot s_1, e) > 1),则用 (e’ := e / \gc
超级会员免费看
订阅专栏 解锁全文
533

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



