AES中加法、乘法、xtime运算详述 您所在的位置:网站首页 80后的感慨句子上有老下有小 AES中加法、乘法、xtime运算详述

AES中加法、乘法、xtime运算详述

2023-08-04 23:16| 来源: 网络整理| 查看: 265

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进制计算,系数只能为0和1。mod m(x)同样不是一般的除法取余,而是要使用异或运算。 m(x)=x8+x4+x3+x+1 至于为什么是这个表达式,我也不清楚,希望有数学大咖解释一下~ 具体步骤可以参考下列例题: 面向字节的运算-乘法

3.xtime 3.1 xtime推导

xtime()算法可用于面向字节的乘法运算,在程序开发中应用广泛,各种语言的实现代码在网上都可以查到,就不再赘述。仅在此详述算法的推导以及笔算解题时的使用方法。 根据定义,xtime()运算是最高项指数不大于7的多项式b(x)乘以多项式x的乘法运算。 因为是面向字符的运算,根据上述乘法原理,可以推出下列bi(i=0,1,…7)为0或1。 即: b(x)=b7x7+b6x6+b5x5+b4x4+b3x3+b2x2+b1x+b0 xtime(b(x))=x·b(x)=(b7x8+b6x7+b5x6+b4x5+b3x4+b2x3+b1x2+b0x )mod m(x) =(b7x8+b6x7+b5x6+b4x5+b3x4+b2x3+b1x2+b0x )mod (x8+x4+x3+x+1) 接下来要分类讨论,当b7=0 分类讨论-b7=0 当b7=1 分类讨论-b7=1 xtime运算公式

3.2 xtime应用

根据面向字节运算的定义,多项式x就是仅有一项且最该项指数为1的多形式,可以理解为00000010(2进制)或02(16进制)。 xtime(b(x))=b(x)·x=b(x)·00000010=b(x)·02 也就是说,xtime()可以用于计算字节与02(00000010)的乘法。 根据公式,当b7=0,xtime()就是将字节左移一位,末位补0; 当b7=1,xtime()就是将字节左移一位,末位补0,再与1B(00011011)异或。

3.3 xtime计算举例

以下均为2进制或16进制,计算过程中应用交换律与结合律。 57·01=57=01010111 57·02=xtime(57)=xtime(01010111)=10101110=AE---------------------------------------------(b7=0,左移一位,末位补0) 57·03=57·(01+02)=57⊕xtime(57)=01010111⊕10101110=11111001=F9 57·04=57·02·02=AE·02=xtime(AE)=xtime(10101110)=01000111=47---------------------(b7=1,左移一位,末位补0,异或1B) 57·08=57·04·02=47·02=xtime(47)=xtime(01000111)=10001110=8E----------------------(b7=0,左移一位,末位补0) 57·10=57·08·02=8E·02=xtime(8E)=xtime(10001110)=00000111=07----------------------(b7=1,左移一位,末位补0,异或1B) 所以 57·13 =57·(10+02+01) =57·10⊕57·02⊕57·01 =00000111⊕10101110⊕01010111 =11111110 =FE

4.参考文献

施游,朱小平.信息安全工程师5天修炼.中国水利水电出版社

1.该文仅供学习参考,请勿转载; 2.文中若有侵权,请评论或私信指出; 3.如有错误或表述不当,欢迎批评指正。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

      专题文章
        CopyRight 2018-2019 实验室设备网 版权所有