大虾们请详细的讲解下AES对称加密算法原理中的有限域GF(28)的加法和乘法

yaphet007 2010-06-08 12:05:14
如题目,在AES算法中,很难理解 有限域GF(28)的加法和乘法。
请大虾们详细的安步骤讲解,越细越好。感谢了!

...全文
2086 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
向立天 2010-06-08
  • 打赏
  • 举报
回复 2
这个28是2的8次方吧
呵呵
如果你对伽罗华域的理解上不去
那给你讲解也是没有意义的啊
不过我试试吧
=================================================================
伽罗华域GF(2m)就是有m个本原元素,并且加、减、乘、除法等四则运算在域内封闭。
下面首先给出伽罗华域中两个基本的概念:
(1) 不可约多项式:GF(2)上的m次多项式p(x)若不能被GF(2)上任意次数小于m大于0的多项式整除,则称p(x)在GF(2)上是不可约的。
(2) 本原多项式:m次不可约多项式p(x)若满足能被p(x)整除的xn+1的最小正整数n为n=2m-1,则称p(x)为本原多项式。
GF(28)表示域中有256个元素,除0,1之外的254个元素由本原多项式p(x)生成。而GF(28)域中的本原多项式为1+x2+x3+x4+x8。
下面以构造GF(23)为例子说明域的构造。
多项式p(x)=1+x+x3是GF(23)上的一个本原多项式。设p(x)=1+x+x3=0,即x3=1+x,用这个关系式可以构造GF(23)。
例如:


表4-4给出了GF(23)中元素的三种表示法
表4-4由p(x)=1+x+x3生成GF(23)的元素的三种表示法
幂表示 多项式表示 向量表示
0 0 000
1 1 100
x x 010
x2 x2 001
x3 1+x 110
x4 x+x2 011
x5 1+x+x2 111
x6 1+x2 101
这样一来就建立了GF(23)域中的元素与3位二进制数之间的一一对应关系。用同样的方法可建立GF(28)域中的256个元素与8位二进制数之间的一一对应关系。在纠错编码运算过程中,加、减、乘和除的运算是在伽罗华域中进行。幂表示对乘法运算比较方便,多项式表示对加法运算比较方便。现仍以GF(23)域中运算为例。将元素xi和xj相乘,只要简单的把它们的指数相加并且使用关系式x7=1。如, 。用xi去除xj,只需简单的将xj和xi的乘法逆元x7-i相乘即可。例如, 。将xi和xj相加,采用表中的多项式表达式或向量表达式,采用位的异或。例如, 。这些运算的结果仍然在GF(23)域中。
yunfeng7854 2010-06-08
  • 打赏
  • 举报
回复
GF(28)是GF(2)在一个不可约多项式f(x)下的扩域,加法和乘法运算是mod(2,f(x))下的运算。
f(x)好像是x^7+x^4+^x^3+x+1
你想当“李逍遥”式的“大侠”吗? 这里无需计算机基础,无需编程经验,你也不必是计算机专业的在校大学生....只要爱好游戏,怀揣梦想! 有一定自主学习能力,跟着刘老师从“编程小白”修炼为游戏研发“大虾”吧!!!学习好Unity,其先决条件是一定要有稳固、扎实的编程基础!课程 《C# For Unity系列之入门篇》配套学习资料链接:http://pan.baidu.com/s/1gflxreN 密码:sou5;刘老师讲Unity学员群(2) 497429806一、热更新系列(技术含量:高级):A:《lua热更新技术级篇》https://edu.csdn.net/course/detail/27087B:《热更新框架设计之Xlua基础视频课程》https://edu.csdn.net/course/detail/27110C:《热更新框架设计之热更流程与热补丁技术》https://edu.csdn.net/course/detail/27118D:《热更新框架设计之客户端热更框架(上)》https://edu.csdn.net/course/detail/27132E:《热更新框架设计之客户端热更框架()》https://edu.csdn.net/course/detail/27135F:《热更新框架设计之客户端热更框架(下)》https://edu.csdn.net/course/detail/27136二:框架设计系列(技术含量:级): A:《游戏UI界面框架设计系列视频课程》https://edu.csdn.net/course/detail/27142B:《Unity客户端框架设计PureMVC篇视频课程(上)》https://edu.csdn.net/course/detail/27172C:《Unity客户端框架设计PureMVC篇视频课程(下)》https://edu.csdn.net/course/detail/27173D:《AssetBundle框架设计_框架篇视频课程》https://edu.csdn.net/course/detail/27169三、Unity脚本从入门到精通(技术含量:初级)A:《C# For Unity系列之入门篇》https://edu.csdn.net/course/detail/4560B:《C# For Unity系列之基础篇》https://edu.csdn.net/course/detail/4595C: 《C# For Unity系列之级篇》https://edu.csdn.net/course/detail/24422D:《C# For Unity系列之进阶篇》https://edu.csdn.net/course/detail/24465四、虚拟现实(VR)与增强现实(AR):(技术含量:初级)A:《虚拟现实之汽车仿真模拟系统 》https://edu.csdn.net/course/detail/26618五、Unity基础课程系列(技术含量:初级) A:《台球游戏与FlappyBirds—Unity快速入门系列视频课程(第1部)》 https://edu.csdn.net/course/detail/24643B:《太空射击与移动端发布技术-Unity快速入门系列视频课程(第2部)》https://edu.csdn.net/course/detail/24645 C:《Unity ECS(二) 小试牛刀》https://edu.csdn.net/course/detail/27096六、Unity ARPG课程(技术含量:初级):A:《MMOARPG地下守护神_单机版实战视频课程(上部)》https://edu.csdn.net/course/detail/24965B:《MMOARPG地下守护神_单机版实战视频课程(部)》https://edu.csdn.net/course/detail/24968C:《MMOARPG地下守护神_单机版实战视频课程(下部)》https://edu.csdn.net/course/detail/24979

64,637

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧