物联网技术与应用:ch3 分组密码与数据加密标准_第1页
物联网技术与应用:ch3 分组密码与数据加密标准_第2页
物联网技术与应用:ch3 分组密码与数据加密标准_第3页
物联网技术与应用:ch3 分组密码与数据加密标准_第4页
物联网技术与应用:ch3 分组密码与数据加密标准_第5页
已阅读5页,还剩32页未读 继续免费阅读

下载本文档

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

文档简介

1、Chapter 3 分组密码与数据加密标准 23.1 分组密码原理流密码与分组密码的比较3密钥流产生器密钥k明文m密文c流密码体制模型异或运算流密码模型流密码每次加密数据流的一位或一个字节例如:Vigenere密码4分组密码将一个明文组作为整体加密且通常得到的是与之等长的密文组。典型分组大小:64位或128位。分组密码的应用范围比流密码要广泛。绝大部分基于网络的对称密码应用使用的是分组密码。分组密码5分组密码的一般设计原理: 分组密码是将明文消息编码表示后的数字(简称明文数字)序列,划分成长度为n的组(可看成长度为n的矢量),每组分别在密钥的控制下变换成等长的输出数字(简称密文数字)序列。解密

2、算法加密算法密钥k=(k0, k1, kt-1 )密钥k=(k0, k1, kt-1 )明文x=(x0, x1, xn-1)明文x=(x0, x1, xn-1)密文y=(y0, y1, ym-1)2022/7/15Cryptography and Network Security - 26/36Feistel密码结构的设计动机Feistel密码结构的设计动机分组密码对n比特的明文分组进行操作,产生一个n比特的密文分组,共有2n个不同的明文分组,每一种都必须产生一个唯一的密文分组,这种变换称为可逆的或非奇异的。 可逆映射 不可逆映射 00 11 00 11 01 10 01 10 10 00 1

3、0 01 11 01 11 01 Feistel密码结构的设计动机理想分组密码2022/7/15西安电子科技大学计算机学院7缺点:n太小的话,就是单表代换 n太大的话,密钥长度太长。对策:Feistel指出我们所需要的是对应较大n的理想分组密码体制的一种近似体制而已,它可以在容易实现部件的基础上逐步建立起来。具体方法:利用乘积密码的概念来逼近简单代换密码。所得结果的密码强度将强于所有单个密码的强度。2022/7/15西安电子科技大学计算机学院9Feistel密码结构的设计动机乘积密码乘积密码:密码长为k比特,分组为n比特,采用2k个变换,而不是理想分组密码的(2n)!个可用变化。特别地,Fei

4、stel建议交替地使用代换和置换。这是Shannon提出的交替使用混淆和扩散乘积密码的实际应用。2022/7/15西安电子科技大学计算机学院102022/7/15西安电子科技大学计算机学院11扩散(diffusion):明文的统计特征消散在密文中,让每个明文数字尽可能多地影响多个密文数字,使得明文和密文之间的统计关系尽量复杂。混淆(confusion):使得密文的统计特性与密钥的取值之间的关系尽量复杂,以阻止攻击者发现密钥。2022/7/15Cryptography and Network Security - 212/363.1.3 Feistel密码结构1973年,Horst Feiste

5、l提出了基于可逆乘积加密器概念的Feistel Cipher:将输入分组分成左右两部分,实施Shannons的substitution-permutation network 概念对左半部数据实施多回合的替代操作(substitution)对右半部数据和子密钥应用轮函数F,其输出与左一半做异或将这两部分进行互换(permutation swapping) 2022/7/15西安电子科技大学计算机学院13Feistel 密码结构第i轮的输出: LEi = REi-1 REi = LEi-1 F(REi-1, ki) 2022/7/15Cryptography and Network Securi

6、ty - 214/36分组长度:分组越长则安全性越高,但加/解密速度越低,分组长度为64位是一个合理的折衷密钥长度:密钥越长越安全,但加/解密速度越低,64位长的密钥已被证明是不安全的,128位是常用的长度迭代次数:迭代越多越安全,通常为16次迭代子密钥产生算法:越复杂则密码分析越困难轮循环函数:越复杂则抗密码分析的能力越强快速的软件加密/解密:算法的执行速度很重要简化分析难度:算法简洁清楚,易于分析弱点,发现问题Feistel解密算法:以密文作为算法的输入,以相反的次序使用密钥Ki,Kn、Kn1、.、K0.Feistel加密器设计原则Feistel 密码结构2022/7/15西安电子科技大学

7、计算机学院15Feistel结构的具体实现依赖于一下安全参数:分组长度 密钥长度 迭代轮数 子密钥生成算法轮函数Feistel密码还有两个其他方面的考虑: 快速软件加解密易于分析:DES不符合Feistel 密码结构:解密规则:将密文作为算法的输入,但逆序使用子密钥kiRi-1 = Li Li-1 = RiF(Ri-1,Ki) = RiF(Li,Ki)2022/7/15西安电子科技大学计算机学院162022/7/15西安电子科技大学计算机学院173.3 数据加密标准(DES)20世纪60年代,IBM公司成立了由Horst Feistel负责的计算机密码学研究项目。1971年设计出了算法LUCI

8、FER,后来给出了修订版:Tuchman-Meyer。1973年,美国国家标准局NBS征求国家密码标准方案, IBM提交了该算法。1977 年正式颁布为数据加密标准(DES - Data Encryption Standard)。1979 年,美国银行协会批准使用 DES。DES的发展历程 1980 年,DES 成为美国标准化协会 (ANSI) 标准。1984 年,ISO 开始在 DES 基础上制定数据加密的国际标准。美国国家安全局NSA每隔年对该算法进行评估 ,1994年,决定1998年12月之后不再使用DES 。现已经确定了选用Rijndael算法作为高级加密算法AES。 2022/7/1

9、5西安电子科技大学计算机学院182022/7/15西安电子科技大学计算机学院19DES加密3.2 数据加密标准(DES)2022/7/15202022/7/15212022/7/1522注意:分别对C0,D0左移位2022/7/15232022/7/1524选择扩展运算E:将输入的32 bit Ri-1扩展成48 bit的输出,令s表示E原输入数据比特的原下标,则E的输出是将原下标s0或1(mod 4)的各比特重复一次得到的,即对原第32, 1, 4, 5, 8, 9, 12, 13, 16, 17, 20, 21, 24, 25, 28, 29各位都重复一次,实现数据扩展。将表中数据按行读出

10、得到48 bit输出。2022/7/15西安电子科技大学计算机学院25S盒中不能超过152022/7/15西安电子科技大学计算机学院260101112022/7/15西安电子科技大学计算机学院272022/7/15西安电子科技大学计算机学院283.3.2 DES解密与加密算法相同,子密钥倒序。293.2.3 雪崩效应明文或密钥的微小改变将对密文生成很大的影响。这是任何加密算法需要的一个好的性质。2022/7/15西安电子科技大学计算机学院3056密钥的使用256 = 7.2 x 10161998年出现了“DES破译机”计时攻击:利用加密算法或解密算法对于不同的输入所花的时间的细微的差异。3.4

11、 DES的强度2022/7/15西安电子科技大学计算机学院31DES的设计准则主要针对S盒及P函数的设计。Feistel密码的密码强度来自于三个方面迭代轮数迭代轮数的选择标准是使密码分析的难度大于简单穷举攻击的难度。16轮时,255.1 255 函数F的设计非线性度要高较好的雪崩效应(严格雪崩效应)独立准则3.6 分组密码的设计原理3.6 分组密码的设计原理S盒的设计本质上,我们希望输入向量的任何变化导致S盒的输出近乎随机的变化。Mister和Adams提出一系列S盒的设计标准:应该满足严格的雪崩效应和独立准则。【Heys95】提出S盒的一个相关设计标准:严格雪崩准则。Nyberg提出了下列方

12、法:随机方法,随机加预测方法,人工构造方法,数学构造方法。2022/7/15西安电子科技大学计算机学院32严格雪崩准则(Strict Avalanche Criterion,SAC)是雪崩效应的形式化。它指出,当任何一个输入位被反转时,输出中的每一位均有50%的概率发生变化。严格雪崩准则建立于密码学的完全性概念上,由Webster和Tavares在1985年提出。3.6 分组密码的设计原理密钥扩展算法没有受到向S盒那样的关注。一般来说,子密钥的选择应该加大推导子密钥及密钥的难度。Hall指出该算法至少应保证密钥和明文符合严格雪崩准则和位独立准则。2022/7/15西安电子科技大学计算机学院33

13、位独立准则(Bit Independence Criterion,BIC)指出,对于任意输入位i和输出位j、k,当输入位i被反转时,输出位j和k应当互不影响地独立变化。求出用DES的8个S盒将48比特串70a990f5fc36压缩置换输出的32比特串(用16进制写出每个S盒的输出)。比特串70a990f5fc36用二进制表示为011100 001010 100110 010000 111101 011111 110000 110110,每6比特一组共8组,分别用8个S盒变换2022/7/15西安电子科技大学计算机学院342022/7/15西安电子科技大学计算机学院35使用DES加密,明文M=(0123456789ABCDEF)16=(0000000100100011010001010110011110001001101010111100110111101111)2,密钥K=(133457799BBCDFF1)16=(0001001100110100010101110111

温馨提示

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

评论

0/150

提交评论