针对SPN结构的差分故障攻击技术解析
1. SPN结构概述
SPN(Substitution - Permutation Network)结构是一种常见的密码学结构,其轮函数具有特定形式。具体而言,轮函数为 $\sigma[K_r] \circ \theta_r \circ \gamma_r$($r$ 为轮数),各部分含义如下:
- $\gamma_r$ 层 :由 $n$ 个 $8 \times 8$ 的S盒并行应用组成(S盒不一定相同)。这里将S盒设为 $8 \times 8$ 并非攻击的必要条件,只是这种尺寸在实际实现中较为常见。像 $4 \times 4$ 和 $2 \times 2$ 的S盒,可分别将2个或4个组合起来视为 $8 \times 8$ 的S盒。
- $\sigma[k]$ 层 :表示密钥加法层,$\sigma k = b \Leftrightarrow b_j = a_j \oplus k_j$($1 \leq j \leq n$),其中 $\oplus$ 通常为异或运算,不过攻击方法对其他群运算也可能有效。
- $\theta_r$ 层 :扩散层,是关于 $\oplus$ 的线性映射。
- $K_r$ :第 $r$ 轮的密钥。
块大小记为 $N_b = 8n$。密码的最后一轮形式为 $\sigma[K_R] \circ \gamma_R$,因为这一阶段的 $\theta$ 层无密码学意义。并且,第一轮之前还有一个密钥加法层。所以整个密码可描述为 $\sigma
超级会员免费看
订阅专栏 解锁全文
34

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



