Table 3.1 Encryption and Decryption Tables for Substitution Cipher of Figure 3.4 加国海存8黑大 1050 Plaintext Ciphertext Ciphertext Plaintext 0000 1110 0000 1110 0001 0100 0001 0011 0010 1101 0010 0100 0011 0001 0011 1000 0100 0010 0100 0001 0101 1111 0101 1100 0110 1011 0110 1010 0111 1000 0111 1111 1000 0011 1000 0111 1001 1010 1001 1101 1010 0110 1010 1001 1011 1100 1011 0110 1100 0101 1100 1011 1101 1001 1101 0010 1110 0000 1110 0000 1111 0111 1111 0101 ¥四, 道道性 2022/10/9 Cryptography and Network Security -3 7/35
2022/10/9 Cryptography and Network Security - 3 7/35
Plaintext (2w bits) 3.1.3FE1sTEL密码结构 Round 1 w bits Ro 1973年,Horst Feistel提出了 基于可逆乘积加密器概念的 Feistel Cipher: Roundi 将输入分组分成左右两部分, 实施Shannon's的substitution- permutation network概念 对左半部数据实施多回合的替 Round n 代操作(substitution) ● 对右半部数据和子密钥应用轮 函数F,其输出与左一半做异或 将这两部分进行互换 (permutation swapping) Ciphertext (2w bits) 甲风=可 Figure 3.5 Classical Feistel Network 2022/10/9 Cryptography and Network Security-3 8/35
2022/10/9 Cryptography and Network Security - 3 8/35 3.1.3 Feistel密码结构 ⚫ 1973年,Horst Feistel提出了 基于可逆乘积加密器概念的 Feistel Cipher : ⚫ 将输入分组分成左右两部分, 实施Shannon’s 的substitution - permutation network 概念 ⚫ 对左半部数据实施多回合的替 代操作(substitution) ⚫ 对右半部数据和子密钥应用轮 函数 F,其输出与左一半做异或 ⚫ 将这两部分进行互换 (permutation swapping )
FEISTEL加密器设计原则 15 分组长度:分组越长则安全性越高,但加/解密速度越 低,分组长度为64位是一个合理的折衷 密钥长度:密钥越长越安全,但加/解密速度越低,64 位长的密钥已被证明是不安全的,128位是常用的长度 迭代次数:迭代越多越安全,通常为16次迭代 子密钥产生算法:越复杂则密码分析越困难 ● 轮循环函数:越复杂则抗密码分析的能力越强 快速的软件加密解密:算法的执行速度很重要 简化分析难度:算法简洁清楚,易于分析弱点,发现 问题 Feistel解密算法:以密文作为算法的输入,以相反的次 序使用密钥K,Kn、Kn-1、.、Ko 道道道 2022/10/9 Cryptography and Network Security-3 9/35
2022/10/9 Cryptography and Network Security - 3 9/35 ⚫ 分组长度:分组越长则安全性越高,但加/解密速度越 低,分组长度为64位是一个合理的折衷 ⚫ 密钥长度:密钥越长越安全,但加/解密速度越低,64 位长的密钥已被证明是不安全的,128位是常用的长度 ⚫ 迭代次数:迭代越多越安全,通常为16次迭代 ⚫ 子密钥产生算法:越复杂则密码分析越困难 ⚫ 轮循环函数:越复杂则抗密码分析的能力越强 ⚫ 快速的软件加密/解密:算法的执行速度很重要 ⚫ 简化分析难度:算法简洁清楚,易于分析弱点,发现 问题 ⚫ Feistel解密算法:以密文作为算法的输入,以相反的次 序使用密钥Ki,Kn、Kn-1、...、K0 . Feistel加密器设计原则
FEISTEL CIPHER ENCRYPTION AND DECRYPTION Output(plaintext) 1950 Input (plaintext) RD16=LEo LD16=REG LE REo LD16=REo RDI6=LE RE LE RDjs=LEl LDIs=RE RE LD14=RE:RD14=LE: K RE14 LD:=REI4 RD2=LE RDI=LE]sT LDI=REjs K15 E LDo=RE1s RDo=LE16 K16 RE16 LE16 Input (ciphertext) 2022/10/9 Output(ciphertext) 10/35 Figure 3.3 Feistel Eneryption and Decryption
2022/10/9 Cryptography and Network Security - 3 10/35 Feistel Cipher Encryption and Decryption
3.2数据加密标准DES 15 ·历史的回顾 IBM公司在1971年由Horst Feistels领导开发了 Lucifer Cipher,使用128位密钥加密64位的分组 Tuchman-Mayer2在此基础上开发了一个商用密码, 使用56位密钥加密64位分组,容易在单个芯片上 硬件实现 ● 1973美国国家标准局NBS全面征集加密方案,作 为国家密码标准 IBM提交了经过修改的Lucifer加密器,并最终在 1976年被接受,公布为数据加密标准DES ·DES加密 道置道9 2022/10/9 Cryptography and Network Security-3 11/35
2022/10/9 Cryptography and Network Security - 3 11/35 ⚫ 历史的回顾 ⚫ IBM公司在1971年由Horst Feistel领导开发了 Lucifer Cipher,使用128位密钥加密64位的分组 ⚫ Tuchman-Mayer在此基础上开发了一个商用密码, 使用56位密钥加密64位分组,容易在单个芯片上 硬件实现 ⚫ 1973美国国家标准局NBS全面征集加密方案,作 为国家密码标准 ⚫ IBM提交了经过修改的Lucifer加密器,并最终在 1976年被接受,公布为数据加密标准DES ⚫ DES加密 3.2 数据加密标准DES