多元右部等式系统(MRHS)的求解方法及应用
1. 引言
在密码分析和线性代数领域,多元右部等式系统(MRHS)的求解是一个重要的问题。本文将介绍求解 MRHS 方程系统的相关算法,包括同意算法、提取线性方程、粘合操作以及一个完整的求解算法,并通过 DES 实验展示这些算法的应用,最后探讨 S 盒密码的安全性问题。
2. 求解 MRHS 方程的基本算法
2.1 同意算法
同意算法用于处理 MRHS 方程对,以消除不一致的右侧。对于方程 (Cx = [T_i] + [T_j]),如果矩阵 (\begin{bmatrix}A_i\A_j\end{bmatrix}) 不满秩,(C) 的最后 (r>0) 行将全为零。只有在这种情况下才继续处理。由于 (C) 的最后 (r) 行全为零,只有 (T_i) 和 (T_j) 中最后 (r) 个坐标相等的列才能相加,以构成 (Cx) 的可能右侧,其他选择会导致不一致的系统。
设 (Pr_i) 和 (Pr_j) 分别是 (T_i) 和 (T_j) 在最后 (r) 个坐标上的投影。(T_i) 中投影不在 (Pr_j) 中的任何列都不可能来自 (B_i) 中的正确列,因为将其与 (T_j) 中的任何列相加都会产生与 (Cx) 不一致的右侧。同理,(T_j) 中投影不在 (Pr_i \cap Pr_j) 中的列也会导致不一致,相应的 (B_i) 和 (B_j) 中的列可以删除。
同意方程对可能会导致右侧删除的多米诺效应。我们对系统中的每对方程运行同意操作,直到不再有删除操作发生,且所有方程对都达成一致。这个过程称为同意算法。
超级会员免费看
订阅专栏 解锁全文
549

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



