AES中加法、乘法、xtime运算详述
注意:文中数字均为2进制或16进制,不要与10进制混淆。
AES中的运算为面向字节的运算,有加法和乘法两种。
AES中的运算包含面向字节(8位)或4字节(双字,32位)运算,本文只介绍面向字节(8位)。
1.加法
加法可以理解为对应位的异或运算,如:
57⊕83 ---------------------------16进制
=01010111⊕10000011-------2进制
异或运算具体步骤(对应位相同则为0,不相同则为1)
0 1 0 1 0 1 1 1
1 0 0 0 0 0 1 1
————————
1 1 0 1 0 1 0 0
=11010100-----------------------2进制
=D4---------------------------------16进制
2.乘法
乘法类似多项式乘法,再结合类似mod m(x)方式计算。
之所以说类似,是因为运用多项式乘法后,需要消去系数为偶数的项,系数为奇数的项则将系数设置为1。因为2进制计算,系数只能