安全生产_密码编码学与网络安全培训教材

上传人:F****n 文档编号:91288426 上传时间:2019-06-27 格式:PPT 页数:60 大小:1.18MB
返回 下载 相关 举报
安全生产_密码编码学与网络安全培训教材_第1页
第1页 / 共60页
安全生产_密码编码学与网络安全培训教材_第2页
第2页 / 共60页
安全生产_密码编码学与网络安全培训教材_第3页
第3页 / 共60页
安全生产_密码编码学与网络安全培训教材_第4页
第4页 / 共60页
安全生产_密码编码学与网络安全培训教材_第5页
第5页 / 共60页
点击查看更多>>
资源描述

《安全生产_密码编码学与网络安全培训教材》由会员分享,可在线阅读,更多相关《安全生产_密码编码学与网络安全培训教材(60页珍藏版)》请在金锄头文库上搜索。

1、密码编码学与网络安全,电子工业出版社 2006 - 2007,第3章 对称算法DES,3.1 分组密码算法原理 3.2 DES算法 3.3 DES强度 3.4 差分分析和线性分析 3.5 分组密码设计原理 * 3.A DES in /etc/passwd * 3.B DES in OpenSSL ,密码技术发展,1918,William F. Friedman,The Index of Coincidence and Its Applications in Cryptography 1949,Claude Shannon,The Communication Theory of Secrecy

2、Systems 1967,David Kahn,The Codebreakers 1970s,NBS/NIST,DES (90s, AES) 1976,Diffie, Hellman,New Directory in Cryptography 1984,C.H. Bennett,Quantum Cryptography: Public Key Distribution and Coin Tossing 1985,N. Koblitz,Elliptic Curve Cryptosystem 2000,AES,3.1 分组密码算法原理,分组密码算法 Block Cipher 明文被分为固定长度的块

3、(即分组),对每个分组用相同的算法和密钥加解密 分组一般为n64比特,或更长 (Padding) 密文分组和明文分组同样长 对某个密钥可以构造一个明密文对照表 Codebook (Substitution Table) 所以分组的长得至少64比特才好 密钥空间2k 可逆映射个数(2n)!,序列密码算法(流密码算法),流密码算法 Stream Cipher 每次可以加密一个比特 适合比如远程终端输入等应用 流密码可用伪随机数发生器实现 密钥做为随机数种子,产生密钥流keystream (不重复,或极大周期) XOR (plaintext,key-stream ) One-time Pad,比较,

4、基本区别 粒度 8字节分组 vs. 1比特或1字节 各自适应不同的应用数据格式 Padding 对相同的明文分组,总是输出相同的密文分组; 而流密码却输出不同的密文比特 流密码一般快很多 分组密码多些,是主流 分组密码也可以用作流模式 安全性对比,Block Cipher Principles,0000 1110 0001 0100 0010 1101 0011 0001 0100 0010 0101 1111 0110 1011 0111 1000 1000 0011 1001 1010 1010 0110 1011 1100 1100 0101 1101 1001 1110 0000 11

5、11 0111 0000 1110 0001 0011 0010 0100 0011 1000 0100 0001 0101 1100 0110 1010 0111 1111 1000 0111 1001 1101 1010 1001 1011 0110 1100 1011 1101 0010 1110 0000,乘积密码: 重复使用代替和置换,实现混乱和扩散。,Feistel(DES)加密框架,明文分组的长n2w 分左右两半L0 R0 密钥K产生子钥:Kk1,k2,kr r是轮数,比如16轮 是异或函数XOR pxx = p 函数F是散列混乱函数 可以是手工精心构造的查表函数,Feistel

6、网络,Feistel解密,Feistel for Loop,加密计算序列 L0左半 R0右半 L1R0 R1L0F(k1,R0) L2R1 R2L1F(k2,R1) L3R3 R3L2F(k3,R2) LiRi-1 RiLi-1F(ki,Ri-1) LnRn-1 RnLn-1F(kn,Rn-1) 密文即(Ln,Rn) 解密计算,2轮解密举例,假设n2轮,C (L2,R2) 加密 明文半半L0+R0 L1R0 R1L0F(k1,R0) L2R1 R2L1F(k2,R1) 解密 密文半半L2R2 R1L2 L1R2F(k2,R1) R0L1 L0R1F(k1,R0) 明文L0R0,L1 R2F(k

7、2,R1) L1F(k2,R1)F(k2,R1) L1,L0 R1F(k1,R0) L0F(k1,R0)F(k1,R0) L0,Feistel伪代码,明文m 长度n2t,记为m0m1,每个长度为t 密钥k 产生r个子密钥k1,k2 ,.,kr 加密E m: for i=2 to r+1 do 0, 1 mimi-2 XOR f(mi-1, ki-1) i, i+1 - ki 得密文(mr,mr+1) r, r+1 - kr 解密D for i=r to 1 do mi-1mi+1 XOR f(mi, ki) 或 for i=r-1 to 0 do mimi+2 XOR f(mi+1, ki+1

8、) mi XOR f(mi+1, ki+1) XOR f(mi+1, ki+1) mi,唯一的非线性结构就是F,可以重复使用两个变量即可,Feistel参数特性,分组大小 密钥大小 循环次数 一般仅几轮是不够的,得十几轮才好,如16轮 子钥产生算法 越复杂越好 轮函数Round 关键 其他考虑 速度(尤其是软件实现的速度) 便于分析(使用简洁的结构),Feistel类算法举例,DES、CAST、Blowfish/(Twofish?)、RC6(/5) 不是Feistel结构的 AES、IDEA * 绝大数分组密码属于或类似Feistel结构 多轮 每轮有XOR(或能恢复的操作) 轮函数,3.2

9、DES,Data Encryption Standard 1971 IBM Horst Feistel Lucifer DES,key由128bit56bit 1973 NBS,77 NIST FIPS-46 NBS/NIST、IBM、NSA 1994 最后一次延长到1999年 AES取代之 参数 Feistel体制分组密码 分组大小 64bit,密钥大小 56bit,轮数 16轮 S-Boxes *,DES,密钥置换选择-1 Key Permuted Choice One (PC-1),57 49 41 33 25 17 9 8 1 58 50 42 34 26 18 16 10 2 59

10、51 43 35 27 24 19 11 3 60 52 44 36 32 63 55 47 39 31 23 15 40 7 62 54 46 38 30 22 48 14 6 61 53 45 37 29 56 21 13 5 28 20 12 4 64,78,K的56比特重新排列,成为C0D0,1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53

11、 54 55 56 57 58 59 60 61 62 63 64,Keyi (48bit),C0D0 C15D15,PC-2,14 17 11 24 1 5 3 28 15 6 21 10 23 19 12 4 26 8 16 7 27 20 13 2 41 52 31 37 47 55 30 40 51 45 33 48 44 49 39 56 34 53 46 42 50 36 29 32,86 未入选的: 9、18、22等,每轮从56比特中选取48比特即为Ki,并同时左移,Round number 1 2 3 4 5 6 7 8 910111213141516 Bits rotated

12、 1 1 2 2 2 2 2 2 1 2 2 2 2 2 2 1,初始置换及逆置换,Initial Permutation (IP/IP-1),58 50 42 34 26 18 10 2 60 52 44 36 28 20 12 4 62 54 46 38 30 22 14 6 64 56 48 40 32 24 16 8 57 49 41 33 25 17 9 1 59 51 43 35 27 19 11 3 61 53 45 37 29 21 13 5 63 55 47 39 31 23 15 7,40 8 48 16 56 24 64 32 39 7 47 15 55 23 63 31

13、 38 6 46 14 54 22 62 30 37 5 45 13 53 21 61 29 36 4 44 12 52 20 60 28 35 3 43 11 51 19 59 27 34 2 42 10 50 18 58 26 33 1 41 9 49 17 57 25,初始明文按照IP重排;16轮后的密文按照IP-1重排即为最后密文,odd,even,轮 One Round,扩展置换 Expansion Permutation,32 1 2 3 4 5 4 5 6 7 8 9 8 9 10 11 12 13 12 13 14 15 16 17 16 17 18 19 20 21 20 2

14、1 22 23 24 25 24 25 26 27 28 29 28 29 30 31 32 1,Ri的32bit 48bit 两边的是重复选中的,68,轮函数 Round Function,S盒 S-Boxes:1/4,两边2比特选择行号 中间4比特选择列号,S-Boxes:5-8,从S盒出来后重排:Permutation Function,P 84 16 7 20 21 29 12 28 17 1 15 23 26 5 18 31 10 2 8 24 14 32 27 3 9 19 13 30 6 22 11 4 25,DES,Review,一个DES计算实例,p=0123456789AB

15、CDEF k=133457799BBCDFF1 c=85E813540F0AB405,使用OpenSSL库的DES函数,明文 64bit “plaintxt” 8字节 Key 56bit “password” 取低7bits8 手工运算 vs. void DES_ecb_encrypt(const_DES_cblock *input, DES_cblock *output, DES_key_schedule *ks, int enc); 密文 8B 32 97 23 0f 81 3e da af,3.3 DES安全强度,对DES的争议集中在 密钥空间太小 Key space 从Lucifer的

16、2128降到DES的256 DES Challenge III, 22 hours 15 minutes S盒 S-Boxes S盒的设计准则? 陷门? trapdoors by NSA (?) “Form surprise to suspicion” 从惊喜(甚至能够抵御很后来才发现的各种攻击) 到怀疑(n年前就如此厉害的NSA现在究竟有多厉害),密钥大小 Key Size,256 71016 1Mkeys/Second means 1000 years Special machine designed Wiener http:/www3.sympatico.ca/wienerfamily/Michael/ Cost/time table Recent new

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 其它办公文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号