1. 首页
  2. 文档大全

《应用密码学》DES

上传者:2****5 2022-07-27 04:40:17上传 PPT文件 1.16MB
《应用密码学》DES_第1页 《应用密码学》DES_第2页 《应用密码学》DES_第3页

《《应用密码学》DES》由会员分享,可在线阅读,更多相关《《应用密码学》DES(48页珍藏版)》请在文档大全上搜索。

1、数据加密标准数据加密标准(DES)应用密码学应用密码学背景资料背景资料1973年年NBS国家标准局国家标准局 (NIST国家标准与技术研究所)国家标准与技术研究所)算法要求:算法要求: 算法公开,安全性依赖于密钥而不是算法算法公开,安全性依赖于密钥而不是算法 算法应能测试和验证算法应能测试和验证 不同的设备可以相互通信不同的设备可以相互通信背景资料背景资料19681974,IBM研制研制1976 被定为联邦标准被定为联邦标准 并命名为并命名为DES(Data Encryption Standard)1981、1987、1993 分别被分别被NIST再次认证再次认证Feistel网络网络加密过程

2、:加密过程:1. 把一个分组分成长度相等的把一个分组分成长度相等的 左右两部份:左右两部份:L,R2. 进行进行n次叠代,次叠代, 其第其第i 轮的输出取决于前一轮的输出:轮的输出取决于前一轮的输出: Li=Ri-1 Ri=Li -1 (Ri-1,Ki) Ki是第是第i轮使用的子密钥轮使用的子密钥 是任意的轮函数是任意的轮函数3. 最后交换左右两部分最后交换左右两部分Feistel网络网络解密过程与加密过程的区别解密过程与加密过程的区别: 子密钥的顺序正好相反:子密钥的顺序正好相反:加密:加密: K1, K2, K3, K(n-1), Kn 解密:解密: Kn, K(n-1), K3, K2,

3、 K1L0R0R2L2L2=R1R2L1=R0R1(R0,K1)(R1,K2)K1K2加密加密R2L2L0R0R0L0L2R0(L2,K2)(R0,K1)K2K1解密解密1010,11100011,11100001,10011111,1010加密加密1010,11100011,11100100,11011000,10011000,10010100,11010011,11101000,10010010,01110111,00110001,10011111,1010加密加密0100,11011000,10011111,10100001,1001解密解密0100,11011000,10011010,

4、11100011,11100011,11101010,11101000,10010011,11100111,00110010,01111111,10100001,1001解密解密采用采用Feistel网络的著名的分组密码网络的著名的分组密码DESFEAL:由日本电报电话公司的:由日本电报电话公司的 Akihiro Shimizu 和和 Shooji Miyaguchi 设计设计 LOKI: 由澳大利亚人于由澳大利亚人于 1990 年首先提出作为年首先提出作为DES的一种潜的一种潜在替换算法在替换算法 GOST 是前苏联设计的分组密码算法是前苏联设计的分组密码算法 CAST 由加拿大的由加拿大的

5、 C.Adams 和和 S.Tavares 设计设计 Blowfish 由由 Bruce Schneier 设计设计 DES的参数:的参数:分组长度:分组长度:64位位密钥长度:密钥长度:64位位 其中第其中第8,16,24,56,64为校验位为校验位有效密钥长度:有效密钥长度:56位位密钥空间:密钥空间:256DES的加密过程:的加密过程: 64位明文位明文初始置换初始置换乘积变换乘积变换逆初始变换逆初始变换64位密文位密文初始置换初始置换58504234261810260524436282012462544638302214664564840322416857494133251791595

6、143352719113615345372921135635547393123157逆初始置换逆初始置换40848165624643239747155523633138646145422623037545135321612936444125220602835343115119592734242105018582633141949175725乘积变换乘积变换16次叠代的次叠代的Feistel网络网络需要解决的问题:需要解决的问题: 1. 函数的构造函数的构造 2. 把把64位主密钥转换为位主密钥转换为16个个48位的子密钥位的子密钥函数函数 P盒置换盒置换子密钥子密钥Ki48bit48bit32

7、bit32bit扩展置换扩展置换 下图显示了扩展置换,有时它也叫做下图显示了扩展置换,有时它也叫做E盒。对每个盒。对每个4位输入分组,第位输入分组,第1和第和第4位分别表示输出分组中的两位分别表示输出分组中的两位,而第位,而第2和第和第3位分别表示输出分组中的一位。位分别表示输出分组中的一位。扩展置换扩展置换下表是从下表是从32位到位到48位的扩展置换,给出了哪一输出位对应于位的扩展置换,给出了哪一输出位对应于哪一输入位。例如,处于输入分组中第哪一输入位。例如,处于输入分组中第3位的位置的位移到位的位置的位移到了输出分组中第了输出分组中第4位的位置,而输入分组中第位的位置,而输入分组中第21位

8、的位置的位的位置的位移到了输出分组中第位移到了输出分组中第30和第和第32位的位置。位的位置。尽管输出分组大于输入分组,但每一个输入分组产生唯一的尽管输出分组大于输入分组,但每一个输入分组产生唯一的输出分组。输出分组。3212345456789891011121312131415161716171819202120212223242524252627282928293031321S-S-盒代替盒代替S1S2S3S4S5S6S7S848位输入位输入32位输出位输出6bit4bitSi: 416矩阵矩阵S10123456789abcdef014413121511831061259071015741

9、42131106121195382411481362111512973105031512824917511314100613b0b1b2b3b4b5行号:行号:03列号:列号:015S盒的设计准则盒的设计准则没有一个没有一个S的输出位是接近输入位的线性函数的输出位是接近输入位的线性函数如果将输入位的最左及最右端的位固定,变化中间如果将输入位的最左及最右端的位固定,变化中间的的4位,每个可能的位,每个可能的4位数出只能得到一次位数出只能得到一次如果如果s盒的两个输入仅有盒的两个输入仅有1位的差异,则输出至少必位的差异,则输出至少必须有须有2位不同位不同如果如果s盒的两个输入仅有中间盒的两个输入仅

10、有中间2位不同,则输出至少位不同,则输出至少必须有必须有2位不同位不同如果如果s盒的两个输入仅前盒的两个输入仅前2位不同,后位不同,后2位已知则输出位已知则输出必不同必不同对于输入之间的任何非零的对于输入之间的任何非零的6位差分,位差分,32对中至多有对中至多有8对显示出的差分导致了相同的输出差分对显示出的差分导致了相同的输出差分P盒置换盒置换 S盒代替运算后的盒代替运算后的32位输出依照位输出依照P盒进行置换。该置换把每盒进行置换。该置换把每输入位映射到输出位,任意一位不能被映射两次,也不能输入位映射到输出位,任意一位不能被映射两次,也不能被略去,这个置换叫做直接置换。下表给出了每位移到的被


文档来源:https://www.renrendoc.com/paper/212733254.html

文档标签:

下载地址