

在加密函数计算过程中使用了8个S盒
S盒是DES保密性的关键所在
S盒是一种非线性变换,也是DES中唯一的非线性运算
S盒有6 位输入,4 位输出
48位数据经过8个S盒后输出32位数据
每个S盒都由4行(表示为0,1,2,3)和16列(0,1,…,15)组成,如图3.10所示

每行都是全部的16个长为4比特串的一个全排列
每个比特串用它对应的二进制整数表示,如1001用9表示。
对每个S盒,将6位输入的第一位和最后一位组成一个二进制数,用于选择S盒中的一行。用中间的4位选择S盒16列中的某一列,行列交叉处的十进制数转换为二进制数可得到4位输出。
例如对于S1盒而言, 如果输入为011001,则行是01(十进制1,即S盒的第2行),列1100(12,即S盒的第13列),该处的值是9,转换为二进制数为1001,即为该S盒的输出
| 各省软考办 | ||||||||||