题目:在SM4算法中,若给出“AE260F63”作为线性变换L的输入,输出结果是多少?
题解
1.公式
C=L(B)=B ⊕ (B<<<2) ⊕ (B<<<10) ⊕ (B<<<18) ⊕ (B<<<24)
解释:
C代表输出结果
L代表线性变换
B代表输入
⊕代表异或
<<<2的代表循环左移两位
2.应用(运算结果)
B(原) | A | E | 2 | 6 | 0 | F | 6 | 3 |
B(2进制) | 1010 | 1110 | 0010 | 0110 | 0000 | 1111 | 0110 | 0011 |
B<<<2 | 1011 | 1000 | 1001 | 1000 | 0011 | 1101 | 1000 | 1110 |
B<<<10 | 1001 | 1000 | 0011 | 1101 | 1000 | 1110 | 1011 | 1000 |
B<<<18 | 0011 | 1101 | 1000 | 1110 | 1011 | 1000 | 1001 | 1000 |
B<<<24 | 0110 | 0011 | 1010 | 1110 | 0010 | 0110 | 0000 | 1111 |
L(B)(2进制) | 1101 | 0000 | 1010 | 0011 | 0010 | 0010 | 1100 | 0010 |
C(16进制) | D | 0 | A | 3 | 2 | 2 | C | 2 |