我正在阅读区别攻击从斯丁森-密码:理论和实践的一个玩具例子S-盒(分组密码)与Nr=n=m=4。
我主要是对以下定义感到困惑
定义3.1 :让\pi_S:\{0,1\}^m\rightarrow \{0,1\}^n成为S盒子.考虑(有序的)一对长度为m的位串,比如(x,x^*)。我们说S框的输入异或是x\oplus x^*,输出异或是\pi_S(x)\oplus\pi_S(x^*).
现在,混淆的问题是,当输入是\pi_S(x)\oplus\pi_S(x^*)时,S框的输出如何被分隔为x\oplus x^*?
例如:
我们选择两个明文x_1和x_2。然后我们有了x_{12}=x_1\oplus x_2
现在,我们有了圆形的1键K^1,我们得到了^1u^1=x_1\oplus K^1和^2u^1=x_2\oplus K^1
然后,将\pi_S应用到上面,得到了^1v^1=\pi_S(^1u^1)=\pi_S(x_1\oplus K^1)和^2v^1=\pi_S(^2v^1)=\pi_S(x_2\oplus K^1)。
因此,^1v^1\oplus\enspace ^2v^1=\pi_S(^1u^1)\oplus \pi_S(^2v^1)=\pi_S(x_1\oplus K^1)\oplus \pi_S(x_2\oplus K^1)
我不明白这是怎么回事,^1v^1\oplus\text{ }^2v^1=\pi_S(x_1)\oplus\pi_S(x_2)?
而且,我也不知道我是否有这个定义?
编辑:注释说明:
表示ith明文(如果为j=1则为明文,或在j-1第四轮之后为cypertext ),XOR-ed和jth Round K^j。
另外,请注意^iu^j=\pi_P(^iv^{j-1}) if j>1,其中\pi_P是置换,即扩散层。
发布于 2020-04-16 22:58:33
定义3.1 :让\pi_S:\{0,1\}^m\rightarrow \{0,1\}^n成为S盒子.考虑(有序的)一对长度为m的位串,比如(x,x^*)。我们说S框的输入异或是x\oplus x^*,输出异或是\pi_S(x)\oplus\pi_S(x^*).现在,混淆的问题是,当输入是\pi_S(x)\oplus\pi_S(x^*)时,S框的输出如何被分隔为x\oplus x^*?
你问题的症结在上面。差分密码分析是一种选择性的明文攻击。
攻击者使用两组选择的明文(更一般是完整的密码)显示带有选择差异d的明文。
并计算与此输入差对应的一组输出分布。
https://crypto.stackexchange.com/questions/80002
复制相似问题