- 1、本文档共44页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
(教案)高级加密标准AES
高级加密标准AES( Advanced Data Standard) AES的由来 由于DES作为数据加密标准自1977年颁布以来,已超期服役了很长时间,1997年美国国家标准技术研究所NIST向密码学界征寻一个用于新的数据加密标准,名为高级加密标准AES候选算法的提议. NIST规定候选算法必须满足下面的要求: 1)密码必须是没有密级的,绝不能像商业秘密那样来保护它。 2)算法的全部描述必须公开披露。 3)密码必须可以在世界范围内免费使用。 4)密码系统支持至少128bit长的分组。 5)密码支持的密钥长度至少为128bit、192bit和256bit。 6)安全性不低于3DES. 15 个候选算法 1998 年8 月20 日:NIST 召开了第一次候选大会,并公布了15 个候选算法 Rijndael算法AES算法 在Rijndael算法中,分组长度和密钥长度均能分别指定为128位、192位、和256位, 在AES高级加密标准中,密钥的长度可以使用三者中的任意一种,但分组长度只能是128位,算法的许多参数与密钥长度相关: AES Life of AES 群,环,域有限域 半群 群 交换群 + 半群 · 环 有限域 有限域也叫伽罗瓦域,最早由法国数学家伽罗瓦(1811-1832)在1830年证明五次方程不可解时引入的,他提出的”伽罗瓦域”,”伽罗瓦理论”是近世代数研究的重要课题.伽罗瓦的工作是19世纪数学中最杰出的成就之一. 数学家伽罗瓦简介 伽罗瓦,E.(Galois, Evariste) 1811--1832年 在19世纪末以前,解方程一直是代数学的中心问题。早在古巴比伦时代,人们就会解二次方程。在许多情况下,求解的方法就相当于给出解的公式。但是自觉地、系统地研究二次方程的一般解法并得到解的公式,是在公元9世纪的事。三次、四次方程的解法直到16世纪上半叶才得到。从此以后、数学家们转向求解五次以上的方程。 伽罗华用群论彻底解决了根式求解代数方程的问题,而且由此发展了一整套关于群和域的理论,为了纪念他,人们称之为伽罗华理论。 域 域的概念 域是由一个非空集合F组成,在集合F中定义了两个二元运算符:“+”和“· ”,并满足: 域记为{F,+,·} 有限域的两个定理 GF(5)有限域中的加 ,乘 有限域GF(2m) GF(2m)表示有限域的阶(元素个数)为2m, 其中元素通常用长度为m的二进制串表示. GF(2m)={(am-1,am-2,…a1,a0)} 其中 ai∈{0,1} 还可表示成多项式形式: 有限域GF(28) 在AES中,使用的是有限域GF(28),AES对有限域GF(28)上的元素采用多项式表示法: 一个由b7b6b5b4b3b2b1b0组成的字节b可表示成系数为{0,1}的二进制多项式。 b7x7+b6x6+b5x5+b4x4+b3x3+b2x2+b1x1+b0 GF(28)上的加法 在GF(28)上的加法定义为二进制多项式的加法,等同于按位异或运算。 在GF(28)上的乘法 ·=? 在GF(28)上的乘法 在GF(28)上的乘法定义为二进制多项式的乘积模一个次数为8的不可约二进制多项式,此不可约二进制多项式为m(x)=x8+x4+x3+x+1: 乘法“?” 一个乘法例子 73*95=· 在GF(28)上的乘法例子2 定义4:在GF(28)上的二进制多项式b(x)的乘法逆为满足下列方程式的二进制多项式a(x),记为b-1(x) a(x)b(x)modm(x)=1 AES算法: 在Rijndael算法中,分组长度和密钥长度均能分别指定为128位、192位、和256位, 在高级加密标准中,密钥的长度可以使用三者中的任意一种,但分组长度只能是128位,算法的许多参数与密钥长度相关: AES的基本运算 字节代替SubBytes 列混淆MixColumns 轮密钥加AddRoundKey 行移位ShiftRows “三代替、一换位” AES的加密和解密(以密钥为128为例) 1 算法的输入分组和输出,分组为128位, 轮数为10, 2、AES的结构不是个Feistel结构,而是每一轮并行地处理每一个分组。 3 密钥长度128位。扩展密钥长度为44字, 每轮使用4字
文档评论(0)