轮缩减AES攻击的自动搜索及应用
1. 预备知识
在AES算法中,使用有限域 $F_{256}$ ,其元素个数为256。SubBytes变换的S盒记为 $S: F_{256} \to F_{256}$ 。本文仅考虑128位版本的AES。密钥、明文、密文和密码的内部状态都用 $F_{256}$ 上的 $4 \times 4$ 矩阵表示。在这样的矩阵中,字节编号规则如下:字节0位于左上角,第一列由字节0 - 3组成,最后一列由字节12 - 15组成,字节15位于右下角。用 $M[\cdot, j]$ 表示矩阵 $M$ 的第 $j$ 列。
在 $r$ 轮AES中,主密钥 $K_0$ 通过密钥扩展算法扩展为 $r$ 轮子密钥 $K_1, \cdots, K_r$ ,其由以下方程描述:
[
K_{Si} :
\begin{cases}
K_i[\cdot, j] + K_i[\cdot, j - 1] + K_{i - 1}[\cdot, j] = 0, & j = 1, 2, 3 \
K_i[0] + K_{i - 1}[0] + S(K_{i - 1}[13]) + RCON_i = 0 \
K_i[1] + K_{i - 1}[1] + S(K_{i - 1}[14]) = 0 \
K_i[2] + K_{i - 1}[2] + S(K_{i - 1}[15]) = 0 \
K_i[3] + K_{i - 1}[3] + S(K_{i - 1}[12]) = 0
\end{cases}
]
AES的一轮执行以下操作序列:SubBytes、ShiftRows、MixColumns
超级会员免费看
订阅专栏 解锁全文
22

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



