下载此文档

有限域GF上的字节运算.pptx


文档分类:IT计算机 | 页数:约22页 举报非法文档有奖
1/22
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/22 下载此文档
文档列表 文档介绍
该【有限域GF上的字节运算 】是由【junjun2875】上传分享,文档一共【22】页,该文档可以免费在线阅读,需要了解更多关于【有限域GF上的字节运算 】的内容,可以使用淘豆网的站内搜索功能,选择自己适合的文档,以下文字是截取该文章内的部分文字,如需要获得完整电子版,请下载此文档到您的设备,方便您编辑和打印。在AES中,把每个字节看成是GF(28)上的元素。
字节(b7b6b5b4b3b2b1b0)对应的多项式为:
b7x7+b6x6+b5x5+b4x4+b3x3+b2x2+b1x+b0
bi取GF(2)={0,1}.
01
03
02
04
有限域GF(28)上的字节运算
04
03
01
02
对应有限域GF(28),选定不可约多项式m(x)=x8+x4+x3+x+1就可进行以下运算:
加法:字节的按位异或运算。
即 (a7a6a5a4a3a2a1a0)+(b7b6b5b4b3b2b1b0)=(c7c6c5c4c3c2c1c0)
其中 ci = ai ⊕ bi , i=0,…,7.
有限域GF(28)
例 a(x)=x6+x4+x2+x+1,b(x)=x7+x+1,求a(x)+b(x).
a(x)+b(x) = (x6+x4+x2+x+1)+(x7+x+1)
= x7+x6+x4+x2
⊕ (10000011) = (11010100)
两个多项式相加,其结果是一个多项式,其系数是两个元素中对应系数模2相加
乘法:先进行多项式相乘,再将结果模不可约多项式m(x)=x8+x4+x3+x+1
例 a(x)=x6+x5+x4+x+1,b(x)=x7+x4+x2+x+1,求a(x)b(x).
a(x)b(x)=(x6+x5+x4+x+1)(x7+x4+x2+1)
=x13+x12+x11+x10+x9+3x8+2x7+2x6+2x5+2x4+x3+x2+x+1
=x13+x12+x11+x10+x9+x8+x3+x2+x+1
=(x5+x4+x3+x2+1)(x8+x4+x3+x+1)+(x6+x5+x4)
=x6+x5+x4 mod (x8+x4+x3+x+1)
(01110011)(10010111)=(01110000)
01
02
03
04
05
06
例 a(x)=x6+x4+x2+x+1,b(x)=x7+x+1,求a(x)b(x).
=x13+x11+x9+x8+2x7+x6+x5+x4+x3+2x2+2x+1
=x13+x11+x9+x8+x6+x5+x4+x3+1
a(x)b(x)=(x6+x4+x2+x+1)(x7+x+1)
=(x5+x3)(x8+x4+x3+x+1)-x7+x6+1
=x7+x6+1 mod (x8+x4+x3+x+1)
有限域GF(28)上的乘法
字运算 —— 系数在有限域GF(28)上的多项式运算
字加法
(a3a2a1a0)+(b3b2b1b0)=(c3c2c1c0)
ci = ai + bi , i = 0, 1, 2, 3. ci = ai + bi 是GF(28) 中的字节运算。
字乘法
(a3a2a1a0)(b3b2b1b0) = (c3c2c1c0)
c3x3 + c2x2 + c1x + c0 = (a3x3 + a2x2 + a1x + a0)(b3x3 + b2x2 + b1x + b0)
mod (x4 + 1)
ci , i = 0, 1, 2, (28)上的运算。
c3x3 + c2x2 + c1x + c0
=
(a3•b3)x6+(a3•b2+a2•b3)x5+(a3•b1+a2•b2+a1•b3)x4+
(a3•b0+a2•b1+a1•b2+a0•b3)x3+(a2•b0+a1•b1+a0•b2)x2+
(a1•b0+a0•b1)x+(a0•b0)
mod (x4 + 1)
c3 = (a3•b0+a2•b1+a1•b2+a0•b3)
1
c2 = (a3•b3) + (a2•b0+a1•b1+a0•b2)
2
c1 = (a3•b2+a2•b3) + (a1•b0+a0•b1)
3
c0 = (a3•b1+a2•b2+a1•b3) + (a0•b0)
4
AES 中字的乘法运算被转化为字节的乘法运算。
5
字节代换(SubBytes)
1) 把S盒中的每个字节映射为它在有限域GF(28)中的乘法逆,“0”被映射为自身。
2) 将S盒中每个字节(上一步得到的乘法逆)做仿射变换:
b0
b1
b2
b3
b4
b5
b6
b7
1 0 0 0 1 1 1 1
1 1 0 0 0 1 1 1
1 1 1 0 0 0 1 1
1 1 1 1 0 0 0 1
1 1 1 1 1 0 0 0
0 1 1 1 1 1 0 0
0 0 1 1 1 1 1 0
0 0 0 1 1 1 1 1
a0
a1
a2
a3
a4
a5
a6
a7
1
1
0
0
0
1
1
0
=

字节代换(SubBytes)
例 输入95, 95的逆为8a,二进制位10001010
b0
b1
b2
b3
b4
b5
b6
b7
1 0 0 0 1 1 1 1
1 1 0 0 0 1 1 1
1 1 1 0 0 0 1 1
1 1 1 1 0 0 0 1
1 1 1 1 1 0 0 0
0 1 1 1 1 1 0 0
0 0 1 1 1 1 1 0
0 0 0 1 1 1 1 1
0
1
0
1
0
1
0
0
1
1
0
0
0
1
1
0
=
=
1
0
0
1
0
0
1
0
1
1
0
0
0
1
1
0
=
0
1
0
1
0
1
0
0

有限域GF上的字节运算 来自淘豆网m.daumloan.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数22
  • 收藏数0 收藏
  • 顶次数0
  • 上传人junjun2875
  • 文件大小1.86 MB
  • 时间2025-01-29
最近更新