第8章 对称密码体制_第1页
第8章 对称密码体制_第2页
第8章 对称密码体制_第3页
第8章 对称密码体制_第4页
第8章 对称密码体制_第5页
已阅读5页,还剩57页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第第8章章 对称密码体制对称密码体制1 第八章第八章 对称密码体制对称密码体制8.1 8.1 对称密码概述对称密码概述8.2 DES8.2 DES8.3 AES8.3 AES2一、对称密码体制概述一、对称密码体制概述第第8章章 对称密码体制对称密码体制3对称密码体制简介对称密码体制简介n对于一个密码体制(M,C,K,E,D)中的K,若加密密钥Ke与解密密钥Kd相同或者二者之间很容易互相推出,由于加密密钥和解密密钥地位是对等的,因此称其为对称密码体制。n而在实际应用中,往往加密密钥和解密密钥都是相同的,即只有一个密钥,既作为加密密钥又作为解密密钥,因此又称为单钥体制。而且一般加密算法和解密算法也

2、是一样的。第第8章章 对称密码体制对称密码体制4对称密码体制简介对称密码体制简介n对称密码体制是历史最为悠久的密码体制,古代和近代使用的都是这种体制。n根据对明文的加密方式不同,对称密码算法又分为分组加密算法(Block Cipher)和流密码算法。n分组加密算法将明文分为一组一组的固定长度进行加密。n流密码算法则将明文按字符逐位加密。n二者之间也不是有着不可逾越的鸿沟,很多时候,分组加密算法也可以用于构建流密码算法。 第第8章章 对称密码体制对称密码体制5分组密码概述分组密码概述 明文序列明文序列 x1, x2, xi, 将明文划分为m比特长的组 加密函数加密函数E: VmKVn各组分别在密

3、钥K的控制下变换成等长的输出 这种密码实质上是字长为这种密码实质上是字长为m的数字序列的代换密码的数字序列的代换密码。 解密算法加密算法密钥k=(k0, k1, kt-1 )密钥k=(k0, k1, kt-1 )明文明文x=(x0, x1, xm-1)明文明文x=(x0, x1, xm-1)密文密文x=(y0, y1, yn-1)第第8章章 对称密码体制对称密码体制6分组密码设计问题分组密码设计问题 分组密码的设计问题在于找到一种算法,分组密码的设计问题在于找到一种算法,能在密钥控制下从一个足够大且足够好的置能在密钥控制下从一个足够大且足够好的置换子集中,简单而迅速地选出一个置换,用换子集中,

4、简单而迅速地选出一个置换,用来对当前输入的明文的数字组进行加密变换。来对当前输入的明文的数字组进行加密变换。第第8章章 对称密码体制对称密码体制7分组密码设计准则n混淆混淆:尽可能使密文和加密密钥间的统计关系更加复杂,以阻止攻击者发现密钥。n扩散扩散:明文的统计特征消散在密文中,可以让每个明文数字尽可能地影响多个密文数字,等价于说每个密文数字被许多明文数字影响。 第第8章章 对称密码体制对称密码体制8分组密码算法应满足的要求分组密码算法应满足的要求n分组长度分组长度n要足够大:要足够大: 防止明文穷举攻击法奏效。防止明文穷举攻击法奏效。n密钥量要足够大:密钥量要足够大: 尽可能消除弱密钥并使所

5、有密钥同等地位,以防止密尽可能消除弱密钥并使所有密钥同等地位,以防止密钥穷举攻击奏效钥穷举攻击奏效。n由密钥确定置换的算法要足够复杂:由密钥确定置换的算法要足够复杂: 充分实现明文与密钥的扩散和混淆,没有简单的关系充分实现明文与密钥的扩散和混淆,没有简单的关系可循可循,要能抗击各种已知的攻击。要能抗击各种已知的攻击。 n加密和解密运算简单加密和解密运算简单: 易于软件和硬件高速实现易于软件和硬件高速实现。 98.2 美国数据加密标准美国数据加密标准DES(Data Encryption Standard)第第8章章 对称密码体制对称密码体制10美国制定数据加密标准简况美国制定数据加密标准简况n

6、目的目的 通信与计算机相结合是人类步入信息社会的一个阶梯,通信与计算机相结合是人类步入信息社会的一个阶梯,它始于六十年代末,完成于它始于六十年代末,完成于90年代初。计算机通信网的形年代初。计算机通信网的形成与发展,要求信息作业标准化,安全保密亦不例外。成与发展,要求信息作业标准化,安全保密亦不例外。只只有标准化,才能真正实现网的安全有标准化,才能真正实现网的安全,才能推广使用加密手,才能推广使用加密手段,以便于训练、生产和降低成本。段,以便于训练、生产和降低成本。 第第8章章 对称密码体制对称密码体制11美国制定数据加密标准简况美国制定数据加密标准简况n美国美国NBS在在1973年年5月月1

7、5公布了征求建议。公布了征求建议。1974年年8月月27日日NBS再次出公告征求建议,对建议方案提出如下再次出公告征求建议,对建议方案提出如下要求:要求:(1)算法必须提供高度的安全性算法必须提供高度的安全性(2)算法必须有详细的说明算法必须有详细的说明,并易于理解并易于理解(3)算法的安全性取决于密钥算法的安全性取决于密钥,不依赖于算法不依赖于算法(4)算法适用于所有用户算法适用于所有用户(5)算法适用于不同应用场合算法适用于不同应用场合(6)算法必须高效、经济算法必须高效、经济(7)算法必须能被证实有效算法必须能被证实有效(8)算法必须是可出口的算法必须是可出口的第第8章章 对称密码体制对

8、称密码体制12美国制定数据加密标准简况美国制定数据加密标准简况nIBM公司在公司在1971年完成的年完成的LUCIFER密码密码 (64 bit分组,分组,代换代换-置换,置换,128 bit密钥密钥)的基础上,改进成为建议的的基础上,改进成为建议的DES体制体制n1975年年3月月17日日NBS(美国国家标准局)公布了这个算(美国国家标准局)公布了这个算法,并说明要以它作为联邦信息处理标准,征求各方法,并说明要以它作为联邦信息处理标准,征求各方意见。意见。n1977年年1月月15日建议被批准为联邦标准日建议被批准为联邦标准FIPS PUB 46,并设计推出并设计推出DES芯片。芯片。n198

9、1年美国年美国ANSI(美国国家标准协会)将其作为标准,(美国国家标准协会)将其作为标准,称之为称之为DEAANSI X3.92n1983年国际标准化组织年国际标准化组织(ISO)采用它作为标准,称作采用它作为标准,称作DEA-1 第第8章章 对称密码体制对称密码体制13美国制定数据加密标准简况美国制定数据加密标准简况nNSA(美国国家安全局)宣布每隔(美国国家安全局)宣布每隔5年重新审议年重新审议DES是否继是否继续作为联邦标准,续作为联邦标准,1988年(年(FIPS46-1)、)、1993年年(FIPS46-2),),1998年不再重新批准年不再重新批准DES为联邦标准。为联邦标准。n虽

10、然虽然DES已有替代的数据加密标准算法已有替代的数据加密标准算法,但它仍是迄今为止,但它仍是迄今为止得到最广泛应用的一种算法,也是一种最有代表性的分组加得到最广泛应用的一种算法,也是一种最有代表性的分组加密体制。密体制。n1993年年4月,月,Clinton政府公布了一项建议的加密技术标准,政府公布了一项建议的加密技术标准,称作密钥托管加密技术标准称作密钥托管加密技术标准EES(Escrowed Encryption Standard)。算法属美国政府。算法属美国政府SECRET密级。密级。第第8章章 对称密码体制对称密码体制14美国制定数据加密标准简况美国制定数据加密标准简况nDES发展史确

11、定了发展公用标准算法模式,而发展史确定了发展公用标准算法模式,而EES的制定的制定路线与路线与DES的背道而驰。人们怀疑有陷门和政府部门肆意的背道而驰。人们怀疑有陷门和政府部门肆意侵犯公民权利。此举遭到广为反对。侵犯公民权利。此举遭到广为反对。n1995年年5月月AT&T Bell Lab的的M. Blaze博士在博士在PC机上用机上用45分分钟时间使钟时间使SKIPJACK的的 LEAF协议失败,伪造协议失败,伪造ID码获得成码获得成功。功。1995年年7月美国政府宣布放弃用月美国政府宣布放弃用DES来加密数据,只将来加密数据,只将它用于语音通信。它用于语音通信。n1997年年1月美

12、国月美国NIST着手进行着手进行AES(Advanced Encryption Standard)的研究,成立了标准工作室。)的研究,成立了标准工作室。2001年年Rijndael被批准为被批准为AES标准。标准。第第8章章 对称密码体制对称密码体制15nDES(Data Encryption Standard)算法于1977年得到美国政府的正式许可,是一种用56位密钥来加密64位数据的方法。这是IBM的研究成果。nDES是第一代公开的、完全说明细节的商业级现代算法,并被世界公认。美国制定数据加密标准简况美国制定数据加密标准简况第第8章章 对称密码体制对称密码体制16DES 算法算法n分组长度

13、为分组长度为64 bits (8 bytes)n密文分组长度也是密文分组长度也是64 bits。n密钥长度为密钥长度为64 bits,有,有8 bits奇偶校验,有效密钥长奇偶校验,有效密钥长度为度为56 bits。n算法主要包括:初始置换算法主要包括:初始置换IP、16轮迭代的乘积变换、轮迭代的乘积变换、逆初始置换逆初始置换IP-1以及以及16个子密钥产生器。个子密钥产生器。 第第8章章 对称密码体制对称密码体制17DES算法框图算法框图 输入 64 bit明文数据 初始置换IP 乘积变换 (16轮迭代) 逆初始置换IP-1 64 bit密文数据 输出 标准数据加密算法第第8章章 对称密码体

14、制对称密码体制18 Li-1(32bit) Ri-1(32bit) 选择扩展运算 E 48 bit寄存器 按bit模2加密 48 bit寄存器 选择压缩运算 S 32 bit寄存器 置换运算 P 按bit模2和 Li (32bit) Ri (32bit)DES算法一轮迭代过程算法一轮迭代过程密钥产生器第第8章章 对称密码体制对称密码体制19Feistel网络示意图网络示意图第第8章章 对称密码体制对称密码体制20 FeistelFeistel加解密过程加解密过程第第8章章 对称密码体制对称密码体制21Feistel密码结构密码结构Feistel还提出了实现代换和置换的方法。还提出了实现代换和置

15、换的方法。代换代换作用在数据的作用在数据的左半部分。它通过用轮函数左半部分。它通过用轮函数F F作用数据的右半部分后,与左作用数据的右半部分后,与左半部分进行异或来完成。每轮迭代的轮函数是相同的,但是半部分进行异或来完成。每轮迭代的轮函数是相同的,但是输入的子密钥输入的子密钥KiKi不同。不同。代换之后代换之后,交换数据的左右两部分完,交换数据的左右两部分完成成置换置换。这种结构是。这种结构是Shannon提出的代换置换网络提出的代换置换网络(SPNSPN,substitution-permutation networkssubstitution-permutation networks)的一

16、种特别形式)的一种特别形式。第第8章章 对称密码体制对称密码体制22SPNnS-P networks are based on the two primitive cryptographic operations we have seen before: nsubstitution (S-box)npermutation (P-box)常见结构及代表算法nSPN网络(例如 AES、Serpent)nFeistel结构(例如DES、 CAST、Skipjack)n其他结构(例如Frog和HPC) 第第8章章 对称密码体制对称密码体制23DES的的安全性安全性S S盒设计盒设计。 DES靠靠S盒实

17、现非线性变换。盒实现非线性变换。密钥搜索机密钥搜索机。 对对DES安全性批评意见中,较为一致的看法是安全性批评意见中,较为一致的看法是DES的的密钥短了些。密钥短了些。IBM最初向最初向NBS提交的建议方案采用提交的建议方案采用112 bits密钥,但公布的密钥,但公布的DES标准采用标准采用64 bits密钥。有人认密钥。有人认为为NSA故意限制故意限制DES的密钥长度。采用穷搜索对已经的密钥长度。采用穷搜索对已经对对DES构成了威胁构成了威胁第第8章章 对称密码体制对称密码体制24DES算法的安全性 nDES算法正式公开发表以后,引起了一场激烈的争论。1977年Diffie和Hellman

18、提出了制造一个每秒能测试106个密钥的大规模芯片,这种芯片的机器大约一天就可以搜索DES算法的整个密钥空间,制造这样的机器需要两千万美元。第第8章章 对称密码体制对称密码体制25n1993年R.Session和M.Wiener给出了一个非常详细的密钥搜索机器的设计方案,它基于并行的密钥搜索芯片,此芯片每秒测试5107个密钥,当时这种芯片的造价是10.5美元,5760个这样的芯片组成的系统需要10万美元,这一系统平均1.5天即可找到密钥,如果利用10个这样的系统,费用是100万美元,但搜索时间可以降到2.5小时。可见这种机制是不安全的。第第8章章 对称密码体制对称密码体制26nDES的56位短密

19、钥面临的另外一个严峻而现实的问题是:国际互联网Internet的超级计算能力。1997年1月28日,美国的RSA数据安全公司在互联网上开展了一项名为“密钥挑战”的竞赛,悬赏一万美元,破解一段用56位密钥加密的DES密文。第第8章章 对称密码体制对称密码体制27n一位名叫Rocke Verser的程序员设计了一个可以通过互联网分段运行的密钥穷举搜索程序,组织实施了一个称为DESHALL的搜索行动,成千上万的志愿者加入到计划中,在计划实施的第96天,即挑战赛计划公布的第140天,1997年6月17日晚上10点39分,美国盐湖城Inetz公司的职员Michael Sanders成功地找到了密钥,在计

20、算机上显示了明文:“The unknown message is: Strong cryptography makes the world a safer place”。第第8章章 对称密码体制对称密码体制28n1998年7月电子前沿基金会(EFF)使用一台25万美圆的电脑在56小时内破译了56比特密钥的DES。n1999年1月RSA数据安全会议期间,电子前沿基金会用22小时15分钟就宣告破解了一个DES的密钥。n尽管DES有这样那样的不足,但是作为第一个公开密码算法的密码体制成功地完成了它的使命,它在密码学发展历史上具有重要的地位。298.3 高级加密标准高级加密标准 AES第第8章章 对称

21、密码体制对称密码体制30 AES提出提出n1997年年1月,美国月,美国NIST向全世界密码学界向全世界密码学界发出征集发出征集21世纪高级加密标准(世纪高级加密标准(AESAdvanced Encryption Standard)算法的)算法的公告,并成立了公告,并成立了AES标准工作研究室,标准工作研究室,1997年年4月月15日的例会制定了对日的例会制定了对AES的评的评估标准。估标准。第第8章章 对称密码体制对称密码体制31AES的要求(1)AES是公开的;是公开的;(2)AES为单钥体制分组密码;为单钥体制分组密码;(3)AES的密钥长度可变,可按需要增大;的密钥长度可变,可按需要增

22、大;(4)AES适于用软件和硬件实现;适于用软件和硬件实现;(5)AES可以自由地使用,或按符合美国国家可以自由地使用,或按符合美国国家标准(标准(ANST)策略的条件使用;)策略的条件使用;第第8章章 对称密码体制对称密码体制32算法衡量条件n满足以上要求的满足以上要求的AES算法,需按下述条算法,需按下述条件判断优劣件判断优劣na. 安全性安全性nb. 计算计算效率效率nc. 内内存要求存要求nd. 使用使用简便性简便性ne. 灵活性。灵活性。第第8章章 对称密码体制对称密码体制33AES的评审的评审n 1998年年4月月15日全面征集日全面征集AES算法的工作结束。算法的工作结束。199

23、8年年8月月20日举行了首届日举行了首届AES讨论会,对涉及讨论会,对涉及14个国家的密码个国家的密码学家所提出的候选学家所提出的候选AES算法进行了评估和测试,初选并算法进行了评估和测试,初选并公布了公布了15个被选方案,供大家公开讨论。个被选方案,供大家公开讨论。 CAST-256, RC-6, CRYPTON-128,DEAL-128, FROG, DFC, LOKI-97, MAGENTA, MARS, HPC, RIJNDAEL, SAFER+, SERPENT, E-2, TWOFISH。n这些算法设计思想新颖,技术水平先进,算法的强度都这些算法设计思想新颖,技术水平先进,算法的强

24、度都超过超过3-DES,实现速度快于,实现速度快于3-DES。 第第8章章 对称密码体制对称密码体制34AES的评审的评审n1999年年8月月9日日NIST宣布第二轮筛选出的宣布第二轮筛选出的5个个候选算法为:候选算法为: MARS(C.Burwick等等,IBM), RC6TM(R. Rivest等等,RSA Lab.), RIJNDEAL(J. Daemen,比比), SERPENT(R. Anderson等,等,英、以、挪威英、以、挪威), TWOFISH(B. Schiener)。n2000年年10月月2日,日,NIST宣布宣布Rijndael作为新的作为新的AES第第8章章 对称密码

25、体制对称密码体制35AES算法设计思想n抵抗所有已知的攻击;n在多个平台上速度快,编码紧凑;n设计简单。nRijndael没有采用Feistel结构,轮函数由3个不同的可逆均匀变换构成的,称为3个层n均匀变换是指state的每个bit都用类似的方法处理第第8章章 对称密码体制对称密码体制36算法说明算法说明n分组和密钥长度可变,各自可独立指定为分组和密钥长度可变,各自可独立指定为128、192、256比特。比特。nstaten算法中间的结果也需要分组,称之为算法中间的结果也需要分组,称之为state,state可以用以字节为元素的矩阵阵列表示,该阵列有可以用以字节为元素的矩阵阵列表示,该阵列有

26、4行,列数行,列数Nb为分组长度除为分组长度除32n种子密钥种子密钥n以字节为元素的矩阵阵列描述,阵列为以字节为元素的矩阵阵列描述,阵列为4行,列数行,列数Nk为密钥长度除为密钥长度除32第第8章章 对称密码体制对称密码体制37主要指标主要指标n速度 3DES, 安全 =3DES n块长 128 BitnKey 长 128,192, 256 Bit 第第8章章 对称密码体制对称密码体制38第第8章章 对称密码体制对称密码体制39第第8章章 对称密码体制对称密码体制40第第8章章 对称密码体制对称密码体制41每轮由四个不同阶段组成每轮由四个不同阶段组成n字节代换字节代换n行移位行移位n列混合列混

27、合n轮密钥加轮密钥加第第8章章 对称密码体制对称密码体制42字节代换字节代换n正向和逆向变换正向和逆向变换n简单的查表操作:定义了一个简单的查表操作:定义了一个S S盒,由盒,由1616* *1616字节组成的矩阵,包含了字节组成的矩阵,包含了8 8位所能表示的位所能表示的256256个数的一个置换。个数的一个置换。nStateState中每个字节按照如下方式映射为一个新中每个字节按照如下方式映射为一个新的字节:把该字节高四位作为行值,低四位的字节:把该字节高四位作为行值,低四位作为列值,从作为列值,从S S盒相应位置取出元素作为输出。盒相应位置取出元素作为输出。43图5.5 字节代换示意图第

28、第8章章 对称密码体制对称密码体制44字节代换的一个例子第第8章章 对称密码体制对称密码体制45S盒的构造方法盒的构造方法(1)(1)按字节的升序逐行初始化按字节的升序逐行初始化S S盒,第一行盒,第一行0000,010F010F,第二行,第二行1010,111F111F,所以行,所以行y y列列x x的字节值为的字节值为yxyx(2)(2)将每个字节映射为它在将每个字节映射为它在GF(2GF(28 8) )中的逆,中的逆,0000被映被映射为射为0000(3)(3)将每个字节做如下的将每个字节做如下的GF(2)GF(2)上变换上变换第第8章章 对称密码体制对称密码体制46字节代换字节代换01

29、10001111111000011111000011111000011111100011111100011111100011111100017654321076543210 xxxxxxxxyyyyyyyy第第8章章 对称密码体制对称密码体制47AES的的S盒盒y0123456789abcdefx0637c777bf26b6fc53001672bfed7ab761ca82c97dfa5947f0add4a2af9ca472c02b7fd9326363ff7cc34a5e5f171d83115304c723c31896059a071280e2eb27b275409832c1a1b6e5aa052

30、3bd6b329e32f84553d100ed20fcb15b6acbbe394a4c58cf6d0efaafb434d338545f9027f503c9fa8751a3408f929d38f5bcb6da2110fff3d28cd0c13ec5f974417c4a77e3d645d1973960814fdc222a908846eeb814de5e0bdbae0323a0a4906245cc2d3ac629195e479be7c8376d8dd54ea96c56f4ea657aae08cba78252e1ca6b4c6e8dd741f4bbd8b8ad703eB5664803f60e61355

31、7b986c11d9eee1f8981169d98e949b1e87e9ce5528dff8ca1890dbfe6426841992d0fB054bb16第第8章章 对称密码体制对称密码体制48逆字节代换逆字节代换InvSubBytes()n逆字节替代变换是字节第替代变换的逆变换,在state的每个字节上应用逆S盒。这是通过应用字节替代变换中的仿射变换的逆变换,再对所得结果应用有限域的乘法逆运算得到的。 第第8章章 对称密码体制对称密码体制49AES的逆的逆S盒盒y0123456789abcdefx052096ad53036a538bf40a39e81f3d7fb17ce339829b2fff

32、87348e4344c4dee9cb2547b9432a6c2233dee4c950b42fac34e3082eA16628d924b2765ba2496d8bd125472f8f66486689816d4a45ccc5d65B69256c704850fdedb9da5e154657a78d9d84690d8ab008cbcd30af7e45805b8b345067d02c1e8fca3f0f02c1afbd0301138a6b83a9111414f67dcea97f2cfcef0b4e673996ac7422e7ad3585e2f937e81c75df6ea47f11a711d29c5896

33、fb7620eaa18be1bbfc563e4bc6d279209adbc0fe78cd5af4c1fdda8338807c731b11210592780ec5fd60517fa919b54a0d2de57a9f93c99cefea0e03b4dae2af5b0c8ebbb3c83539961f172b047eba77d626e169146355210c7d第第8章章 对称密码体制对称密码体制50行移位行移位n将state阵列的各行进行循环移位,不同行的移位量不同n0行:不动n1行:循环左移C1字节n2行:循环左移C2字节n3行:循环左移C3字节n记为:ShiftRow(State)51图3.20 行移位示意图第第8章章 对称密码体制对称密码体制

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论