加速 F2 上格罗布纳基计算的灵活部分扩展方法
1. 引言
在多元多项式求解算法的发展下,代数密码分析对许多密码系统构成了潜在威胁。不过,理论复杂度估算表明,这种攻击在大多数实际应用中并不可行。本文提出了一种计算格罗布纳基的策略,对传统的复杂度估算提出了挑战。该策略运用灵活的部分扩展技术以及简化行阶梯形式,生成低次元素——突变体。这种新策略突破了以往的界限,促使我们重新思考格罗布纳基计算复杂度的估算范式。新提出的算法仅使用 30GB 内存,就计算出了一个具有 32 个变量和 32 个方程的二次随机系统的格罗布纳基,这是以往已知的任何格罗布纳基求解器都未曾做到的。
求解多元多项式方程组是格罗布纳基的重要应用之一。计算理想的格罗布纳基的算法复杂度,取决于计算过程中所使用的理想元素子集的大小。因此,最小化这个子集的大小是该领域研究的一个重要目标。
设 $P$ 是一个有限的二次多项式集合。对于 $d \geq 2$,考虑集合:
$H_d := {t \cdot p | t 是项, p \in P, deg(tp) \leq d}$
当 $d$ 足够大时,$H_d$ 的行阶梯形式就是 $\langle P \rangle$ 的格罗布纳基。然而,在代数密码分析中出现的系统及其求解所需的相应次数非常大,构建 $H_d$ 变得不可行,内存通常是主要的限制因素。我们采用的关键策略是,在 $d$ 足够大的情况下探索并在 $H_d$ 中进行计算,但在任何给定时间都不存储整个 $H_d$ 集合。
2. 相关概念突破
- 突变多项式 :非正式地说,如果多项式 $p \in span(H
超级会员免费看
订阅专栏 解锁全文
9

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



