欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    【教学课件】第5章高级加密标准(AES).ppt

    • 资源ID:5659073       资源大小:230KB        全文页数:37页
    • 资源格式: PPT        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    【教学课件】第5章高级加密标准(AES).ppt

    第5章 高级加密标准(AES),AES的起源AES的设计原则AES算法描述,1.AES的起源,1997年9月,NIST征集AES方案,以替代DES。1999年8月,以下5个方案成为最终候选方案:MARS,RC6,Rijndael,Serpent,Twofish。2000年10月,由比利时的Joan Daemen和Vincent Rijmen提出的算法最终胜出。(Rijndael 读成Rain Doll。)http:/www.esat.kuleuven.ac.be/rijmen/rijndael/,2.AES的设计原则,能抵抗所有已知的攻击;在各种平台上易于实现,速度快;设计简单。,Rijndael是一个分组密码算法,其分组长度和密钥长度相互独立,都可以改变。,表 1.分组长度和密钥长度的不同取值,3.AES 算法的一般描述,Rijndael Round的构成,ByteSubstitution,ByteRotation,MixColumn,+,RoundKey,一般的轮变换,ByteSubstitution,ByteRotation,+,RoundKey,最后一轮的轮变换,3.AES 算法加密部分的实现,明文分组和密钥的组织排列方式,Fig 1.以明文分组为128bits为例组成的阵列,Fig 2.以明文分组(或密钥)为128bits、192bits、256bits为例组成的阵列,一些相关的的术语定义和表示,状态(State):密码运算的中间结果称为状态。State的表示:状态用以字节为基本构成元素的矩阵阵列来表示,该阵列有4行,列数记为Nb。Nb=分组长度(bits)32 Nb可以取的值为4,6,8,对应的分组长度为128,192,256 bits。密码密钥(Cipher Key)的表示:Cipher Key类似地用一个4行的矩阵阵列来表示,列数记为Nk。Nk=密钥长度(bits)32 Nk可以取的值为4,6,8,对应的密钥长度为128,192,256 bits。,Fig 3.当Nb=6时的状态和Nk=4时的密钥布局,Nb=6Block Length=192 bits,Nk=4Key Length=128 bits,Fig 4.分组长度和密钥长度均为128 bits时的Rijndael加密算法框图,Data/Key Addition,Rnd0,Rnd1,Rnd8,FinalRnd,KeySchedule,CipherText,Key,PlainText,表 2.轮数(Round)的不同取值,用伪代码表示的Rijndael轮变换,一般的轮变换Round(State,RoundKey)ByteSubstitution;ByteRotation;MixColumn;AddRounKey;,结尾轮变换FinalRound(State,RoundKey)ByteSubstituion;ByteRotation;AddRoundKey;,ByteSubstitution(字节替代),ByteSubstitution是一个非线性的字节替代,独立地在每个状态字节上进行运算。它包括两个变换。1.在有限域GF(28)上求乘法逆,00映射到它自身。2.在GF(2)上进行下面的仿射变换:,y0 1 1 1 1 1 0 0 0 x0 0y1 0 1 1 1 1 1 0 0 x1 1y2 0 0 1 1 1 1 1 0 x2 1y3 0 0 0 1 1 1 1 1 x3 0y4 1 0 0 0 1 1 1 1 x4 0y5 1 1 0 0 0 1 1 1 x5 0y6 1 1 1 0 0 0 1 1 x6 1y7 1 1 1 1 0 0 0 1 x7 1,Fig 6.ByteSubstitution该变换可以用一个256字节的表来实现,取逆仿射变换,ByteRotation(字节移位),在ByteRotation变换中,状态阵列的后3行循环移位不同的偏移量。第1行循环移位C1字节,第2行循环移位C2字节,第3行循环移位C3字节。偏移量C1、C2、C3与分组长度Nb有关,如下表所示:,Fig 7.ByteRotation,循环左移1字节,循环左移2字节,循环左移3字节,MixColumn(列混合),将状态的列看作是有限域GF(28)上的多项式a(x),与多项式c(x)=03 x3+01 x2+01 x+02相乘(模x41)。令b(x)=c(x)a(x),写成矩阵形式为:,b0 02 03 01 01 a0 b1=01 02 03 01 a1 b2 01 01 02 03 a2 b3 03 01 01 02 a3,Fig 8.MixColumn这一运算作用在每一列上,C(X),2.4 AddRoundKey(轮密钥加),将轮密钥与状态按比特异或。轮密钥是通过Key Schedule过程从密码密钥中得到的,轮密钥长度等于分组长度。,A3,3 K3,3 B3,3(mod 2),Fig 7.Rijndael加密及解密的标准结构Block,Key Length=128 bits,Plaintext(128 bits),ByteSubstitution,MixColumn,Ciphertext(128 bits),K0,Ki,i=10,ByteRotation,for i=1 to 10,Ciphertext(128 bits),K10,InvMixCoumn,InvByteRotation,InvByteSubstitution,Ki,Plaintext(128 bits),i=9,for i=9 to 0,加密,解密,用伪代码表示的Rijndael加密算法,Rijndael(State,CipherKey)KeyExpansion(CipherKey,ExpandedKey);AddRoundKey(State,ExpandedKey);For(i=1;iRnd;i+)Round(State,ExpandedKey+Nb*i);FinalRound(State,ExpandedKey+Nb*Rnd);,提前进行密钥扩展后的Rijndael加密算法描述,Rijndael(State,ExpandedKey)AddRoundKey(State,ExpandedKey);For(i=1;iRnd;i+)Round(State,ExpandedKey+Nb*i);FinalRound(State,ExpandedKey+Nb*Rnd);,AES 的密钥调度 密钥调度包括两个部分:密钥扩展和轮密钥选取。,密钥bit的总数分组长度(轮数Round1)例如当分组长度为128bits和轮数Round为10时,轮密钥长度为128(101)1408bits。将密码密钥扩展成一个扩展密钥。从扩展密钥中取出轮密钥:第一个轮密钥由扩展密钥的第一个Nb个4字节字,第二个圈密钥由接下来的Nb个4字节字组成,以此类推。,密钥扩展,+,+,+,ByteSubstitution,ByteRotate,+,Rcon,Wi-4,Wi-3,Wi-2,Wi-1,Wi,ByteSubstituion,ByteRotate,+,Rcons,+,Key expansion,4=i 4(Rnd+1),i mod 4=0,i mod 4!=0,轮密钥选取,轮密钥0,轮密钥1,轮密钥2,AES的解密算法,解密算法与加密算法不同每个阶段均可逆,因此易证解密函授的确可以恢复明文见图5.7,P.121,AES 算法的设计原理,GF(28)中乘法使用的多项式是8次不可约多项式列表中的第一个多项式。ByteSubstitution(称为S盒)在设计时考虑到抵抗差分密码分析、线性密码分析的要求,应满足以下条件:1.可逆性;2.输入比特的线性组合与输出比特的组合之间的最大非平凡相关性的极小化;3.异或差分表中最大非平凡值的极小化;4.GF(28)中代数表示的复杂性;5.描述的简单性。,满足前3条准则的S盒的构造方法已被给出,AES的作者从众多候选构造中选择将x映射到它的逆的S盒。该映射过于简单,为了抵抗插入攻击,加入仿射变换:b(x)=(x7+x6+x2+x)+a(x)(x7+x6+x5+x4+1)mod x8+1模数多项式x8+1选择为可能是最简单的模数多项式。可以找到其它的S盒满足以上准则。,MixColumn变换符合以下准则:1.可逆性;2.GF(2)中的线性性;3.适当的扩散性能;4.8位处理器上实现速度快;5.对称性;6.描述的简单性。选择模数多项式x41可满足准则2、5、6。准则1、3、4要求系数的值要小,故选00、01、02、03。ByteRotation符合以下准则:1.4个位移量互不相同且C00;2.能抵抗差分截断攻击;3.能抗Square攻击;4.简单。从满足准则2和准则3出发,AES的作者选取了最简单的组合。,与一些其它算法的比较:,与DES相比:1.无DES中的弱密钥和半弱密钥;2.紧凑的设计使得没有足够的空间来隐藏陷门。与IDEA相比:无IDEA中的弱密钥。具有扩展性:密钥长度可以扩展到为32bits倍数的任意密钥长度,分组长度可以扩展到为64bits倍数的任意分组长度。圈数和循环移位偏移量作为参数,要重新定义。,关于有限域G(28)的一些解释,G(28)可看为8位二进制比特串的集合直观上有限域的运算可为密码算法的实现带来方便只有满足一些规则后,G(28)才是有限域(参加第4章,p.95),G(28)上的运算,加法按位异或乘法可通过对多个中间结果的移位运算和异或一个特定的比特串(比如00011011)实现。,

    注意事项

    本文(【教学课件】第5章高级加密标准(AES).ppt)为本站会员(牧羊曲112)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开