PET SNAKE:专用架构解析
在密码学领域,对于现代块密码的密钥恢复攻击是一个重要的研究方向。PET SNAKE作为一种专用架构,旨在为这类攻击提供高效的解决方案。本文将深入探讨PET SNAKE架构的原理、实现选择、整体架构以及各阶段的处理流程。
1. 非齐次线性方程的提取与变量猜测
从三角矩阵VL中,我们可以判断全1向量是否在L的行向量张成的空间中。若满足条件,就能得到非齐次线性方程(zA)x = 1(其中z是长度为k的行向量,且zL = (1, …, 1))。得到的r或r + 1个URHS方程可组合成一个收集符号,添加到当前符号系统中。
在某些情况下,由于所选阈值的限制,系统可能处于两两一致状态,无法计算URHS方程,也不能再对符号进行粘合操作。此时,就需要对变量的值进行猜测。在进行猜测之前,会先存储当前的符号系统状态。猜测通过构建一个新符号来实现,该符号的A部分除猜测变量位置为1外其余均为0,L部分的值根据猜测结果为0或1。将这个新符号插入系统后,继续进行两两一致检查、URHS方程计算和符号粘合操作。
若在这个过程中发现对变量的猜测错误(表现为在两个符号一致化过程中,至少一个符号的所有右侧项被删除),则需要将状态回滚到之前的状态,并做出不同的猜测。这种变量猜测的过程类似于深度优先搜索。
2. 实现选择
PET SNAKE架构的基本设计参数是为了能够处理现代块密码(如AES - 128)密钥恢复攻击所需的完整符号系统。对于AES - 128,相关符号系统涉及1600个变量,初始系统仅需320个符号。相比之下,具有31轮的PRESENT初始系统包含超过500个符号,变量数量也更多。
一般来
超级会员免费看
订阅专栏 解锁全文
23

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



