麦利耶斯密码系统的高效攻击分析
1. 方案安全性分析
1.1 改进攻击
对方案安全性进行初步分析,之前的攻击虽能破解 [LJ12] 提出的第二个方案,但并非最有效。下面介绍一种更优攻击及大致分析。
该方案的实际威胁源于公钥码 $C_{pub}$ 中存在一个支持集非常小(此处大小为 $2c$)的子码 $C$,它由秘密生成矩阵 $G_{sec}$ 的最后 $b$ 行经秘密置换矩阵 $P$ 置换后生成。例如,约有 $2^{b - 1}$ 个重量小于等于 $c$ 的码字,可通过低重量码字搜索算法找到,进而揭示子码 $C$ 的支持集,这是攻击的基本思路。
此外,还有一些支持集较小的子码 $C_s$,由 $G$ 的最后 $s×b$ 行生成($s$ 取值范围为 2 到 $L$),其支持集大小为 $(s + 1)c$。随着 $s$ 增大,$C_s$ 的码率逐渐接近最终码率 $\frac{2}{3}$,这一现象有助于低重量码字算法,后续会详细解释。
改进攻击方法是使用低重量码字算法找到 $C_s$ 中的一个码字 $c$,以此为基础找到 $C_s$ 的整个支持集。这与针对 KKS 方案的攻击思路类似,通过已找到的码字 $c$,在寻找低重量码字时,选择信息集的位置避开 $c$ 的支持集位置,这样更容易找到同一子码中支持集较小的新码字。
整个攻击的复杂度主要取决于在有有效方法识别 $C$ 中的候选码字(可通过检查 $c$ 的重量实现)时,在 $C$ 中找到一个码字的复杂度。很可能 $C$ 是 $C$ 中维度为 $b$ 且支持集最小的子码,这一概念与码的广义汉明重量相关,$w_i$ 定义为维度为 $i$ 的子码的最小支持集。在本方案中,可能有
超级会员免费看
订阅专栏 解锁全文
58

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



