基于自等价编码的白盒Speck实现
1. 自等价实现概述
通过自等价编码和外部编码对Speck加密函数的所有仿射层进行编码,可得到Speck的自等价实现。自等价实现的定义如下:设 $E_k$ 为具有 $n_r$ 轮、字长为 $n$ 的Speck密码的加密函数,当满足 $E_k = AL(n_r) ◦ SL ◦ ··· ◦ AL(1) ◦ SL ◦ AL(0)$ 时,称 $E_k$ 为Speck的自等价实现。并且,自等价实现 $E_k$ 在外部编码的意义下与原始的 $E_k$ 功能等价,由于自等价性质,中间编码会被抵消,如下所示:
[
\begin{align }
E_k &= AL(n_r) ◦ SL ◦ ··· ◦ AL(1) ◦ SL ◦ AL(0)\
&= (⊕o(n_r) ◦ O(n_r)) ◦ AL(n_r) ◦ SL ◦ ··· ◦ AL(1) ◦ (⊕i(1) ◦ I(1)) ◦ SL ◦ AL(0)\
&= (⊕o(n_r) ◦ O(n_r)) ◦ AL(n_r) ◦ SL ◦ ··· ◦ AL(1) ◦ SL ◦ AL(0) ◦ (⊕i’(1) ◦ I’(1))\
&= (⊕o(n_r) ◦ O(n_r)) ◦ E_k ◦ (⊕i’(1) ◦ I’(1))
\end{align }
]
这个性质在两轮Speck SPN加密的图中也有体现,虚线表示被自等价包围的替换层 $SL$ 可简化为 $SL$,点线标记的是编码后的仿射层 $AL(r)$ 和 $AL(r + 1)$。
2. 替换层 $SL$ 的自等价性
使用特定方法
基于自等价编码的白盒Speck安全分析
超级会员免费看
订阅专栏 解锁全文

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



