

字节代换(SubBytes())是一个非线性的字节代换
它独立地将状态中的每个字节利用代换表(S盒)进行运算
S盒被设计成能够抵挡所有已知的攻击
S盒(如图3.24所示)是由16×16个字节组成的矩阵,包含了8位值所能表达的256种可能的变换
State中的每个字节按照如下的方式映射为一个新的字节:将该字节的高4位作为行值,低4位作为列值,然后取出S盒中对应行列交叉处的元素作为输出
例如,十六进制{95}对应的S盒的行值是9,列值是5,S盒中此处的值是{2A}。因此{95}被映射为{2A}

| 各省软考办 | ||||||||||