资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,AES,算法数学基础,主讲人:赵永哲,e_mail:yongzhe,电话:,13180888761,1/24,字节运算:有限域,GF(2,8,),上运算,1.,有限域,GF(2,3,),2.,有限域,GF(2,8,),3.,有限域,GF(2,8,),加法运算,4.,有限域,GF(2,8,),乘法运算,2/24,有限域,GF(2,3,),GF(2,3,),表示域中有,2,3,个元素,除,0,之外,7,个元素由本原多项式结构。,假定其本原多项式为:,m,(,x,)=,x,3,+,x,+1,3/24,有限域,GF(2,3,),多项式表示,GF(2,3,):,000,001,010,011,100,101,110,111,4/24,有限域,GF(2,3,),本原多项式根表示,定义为,本原多项式,m,(,x,)=,x,3,+,x,+1,根,即,3,+,+1=0,和,3,=,+1,GF(2,3,):,0,0,1,2,3,4,5,6,5/24,有限域,GF(2,8,),有限域,GF(2,8,),表示特征为,2,含有,2,8,元素有限域。,这里表示成系数在,0,1,中多项式集合:,b,7,x,7,+b,6,x,6,+b,5,x,5,+b,4,x,4,+b,3,x,3,+b,2,x,2,+b,1,x+b,0,这么任意,8,位二进制数就和有限域中一个多项式建立了一一对应关系。,6/24,加法运算,在多项式表示中,,GF(2,8,),上两个元素和依然是一个次数不超出7多项式,其系数等于两个元素对应系数模2加(比特异或)。,因为每个元素加法逆元等于自己,所以减法和加法相同。,7/24,乘法运算,要计算,GF(2,8,),上乘法,必须先确定一个,GF(2),上8次不可约多项式;,GF(2,8,),上两个元素乘积就是这两个多项式模乘(以这个8次不可约多项式为模)。,在,Rijndael,密码中,这个8次不可约多项式确定为,m(x)=x,8,+x,4,+x,3,+x+1,它十六进制表示为11,B。,8/24,例题,例题,.,计算,GF(2,8,),上两个元素,10010001,和,00100010,乘积。,答案:,10000100,9/24,x乘法,GF(2,8,),上还定义了一个运算,称之为,x,乘法,,其定义为,xb(x)=b,7,x,8,+b,6,x,7,+b,5,x,6,+b,4,x,5,+b,3,x,4,+b,2,x,3,+b,1,x,2,+b,0,x(mod m(x),假如,b,7,=0,,求模结果不变,,不然为乘积结果减去,m(x),,即求乘积结果与,m(x),异或。,由此得出,x(,十六进制数02)乘,b(x),能够,先对,b(x),在字节内左移一位(最终一位补0),,若,b,7,=1,,则再与1,B(,其二进制为00011011)做逐比特异或来实现,,该运算记为,b=xtime(a)。,10/24,AES Logtable,11/24,AES alogtable,12/24,字运算:系数在,GF(2,8,),上多项式运算,字:,4,个字节组成向量。,4个字节组成向量能够表示为系数在,GF(2,8,),上次数小于4多项式。,13/24,字,(,多项式)加法,对应多项式系数相加,14/24,字,(,多项式)乘法,要求多项式乘法运算必须要取模,M(x)=x,4,+1,,这么使得次数小于4多项式乘积依然是一个次数小于4多项式,.,将多项式模乘运算记为 ,设,a(x)=a,3,x,3,+a,2,x,2,+a,1,x+a,0,,b(x)=b,3,x,3,+b,2,x,2,+b,1,x+b,0,,,c(x)=a(x)b(x)=c,3,x,3,+c,2,x,2,+c,1,x+c,0,。,因为,x,j,mod(x,4,+1)=x,j,mod 4,,,所以,c,0,=a,0,b,0,a,3,b,1,a,2,b,2,a,1,b,3,;,c,1,=a,1,b,0,a,0,b,1,a,3,b,2,a,2,b,3,;,c,2,=a,2,b,0,a,1,b,1,a,0,b,2,a,3,b,3,;,c,3,=a,3,b,0,a,2,b,1,a,1,b,2,a,0,b,3,。,15/24,字,(,多项式)乘法,可将上述计算表示为,16/24,例题,例题,.,计算,0 xB7A5662F 0 x03010102 mod M(x)=X,4,+1,得到,0 xC7,?,A0,?,请将,?,?处填满。,例题,.,计算,0 xC7DAA0E6 0 x0B0D090E mod M(x)=X,4,+1,得到,0 x,?,A5,?,2F,,请将,?,?处填满。,例题,.,计算,0 x03010102 0 x0B0D090E mod M(x)=X,4,+1,17/24,产生过程,1997年4月15日,美国,ANSI,发起征集,AES(advanced encryption standard),活动,并为此成立了,AES,工作小组。此次活动目标是确定一个非保密、能够公开技术细节、全球无偿使用分组密码算法,以作为新数据加密标准。,1997年9月12日,美国联邦登记处公布了正式征集,AES,候选算法通告。,对,AES,基本要求是:,比三重,DES,快、,最少与三重,DES,一样安全、,数据分组长度为128比特、密钥长度为128/192/256比特。,18/24,产生过程,1998年8月12日,在首届,AES,候选会议(,first AES candidate conference),上公布了,AES,15个候选算法,任由全世界各机构和个人攻击和评论。,1999,年3月,在第2届,AES,候选会议(,second AES candidate conference),上经过对全球各密码机构和个人对候选算法分析结果讨论,从15个候选算法中选出了5个。,这5个是,RC6、Rijndael、SERPENT、Twofish,和,MARS,10月2日,,NIST,宣告,Rijndael,作为新,AES。,至此,经过3年多讨论,,Rijndael,终于脱颖而出。,19/24,设计思想,Rijndael,密码设计力争满足以下3条标准:,抵抗全部已知攻击。,在多个平台上速度快,编码紧凑。,设计简单。,20/24,设计思想,其轮函数是由3个不一样可逆均匀变换组成,称它们为3个“层”。,所谓“均匀变换”是指状态每个比特都是用类似方法进行处理。,不一样层特定选择大部分是建立在“宽轨迹策略”应用基础上。,简单地说,“宽轨迹策略”就是提供抗线性密码分析和差分密码分析能力一个设计。,21/24,设计思想,为实现宽轨迹策略,轮函数3个层中每一层都有它自己功效:,线性混合层,确保多轮之上高度扩散;,非线性层,将含有最优“最坏情况非线性特征”,S,盒并行使用;,密钥加层,单轮子密钥简单地异或到中间状态上,实现一次性掩盖。,22/24,下次课内容,AES,算法,23/24,谢谢大家,24/24,
展开阅读全文