2.1密码学的历史 网络安全 NETWORK SECURITY 现代密码 前面介绍了古典密码和近代密码,事实上还称不上是一门科 学。直到1949年香农发表了一篇题为“保密系统的通信理 论”的著名论文,该文首先将信息论引入了密码,从而把已 有数千年历史的密码学推向了科学的轨道,奠定了密码学的 理论基础。该文利用数学方法对信息源、密钥源、接收和截 获的密文进行了数学描述和定量分析,提出了通用的秘密钥 密码体制模型。 主要特点 >把算法和密钥分开 >密码算法可以公开,密钥保密 >密码系统的安全性在于保持密钥的保密性 12
12 2.1 密码学的历史 • 现代密码 ▪ 前面介绍了古典密码和近代密码,事实上还称不上是一门科 学。直到1949年香农发表了一篇题为“保密系统的通信理 论”的著名论文,该文首先将信息论引入了密码,从而把已 有数千年历史的密码学推向了科学的轨道,奠定了密码学的 理论基础。该文利用数学方法对信息源、密钥源、接收和截 获的密文进行了数学描述和定量分析,提出了通用的秘密钥 密码体制模型。 ▪ 主要特点 ➢把算法和密钥分开 ➢密码算法可以公开,密钥保密 ➢密码系统的安全性在于保持密钥的保密性
22密码学的基本概念 网络安全 NETWORK SECURITY 1.密码学的概念 密码学这个词是从两个意为“秘密书写”的希腊字演化而来 的,它是一门隐匿消息的艺术和科学。 ·密码学包括密码编码学和密码分析学两部分,这两部分相互 对立,但也相互促进,相铺相成。 >密码编码学研究的是通过编码技术来改变被保护信息的形式,使得编 码后的信息除指定接收者之外的其他人都不可理解 >密码分析学研究的是如何攻破一个密码系统,恢复被隐藏起来的信息 的本来面目 如 数学定义:密码系统是一个5元组(E,D,M,K,C),M 是明文集,K是密钥集,C是密文集,E:MxK→C是加密函 数集,D:CxK→M是解密函数集
13 2.2 密码学的基本概念 1.密码学的概念 ▪ 密码学这个词是从两个意为“秘密书写”的希腊字演化而来 的,它是一门隐匿消息的艺术和科学。 ▪ 密码学包括密码编码学和密码分析学两部分,这两部分相互 对立,但也相互促进,相辅相成。 ➢密码编码学研究的是通过编码技术来改变被保护信息的形式,使得编 码后的信息除指定接收者之外的其他人都不可理解 ➢密码分析学研究的是如何攻破一个密码系统,恢复被隐藏起来的信息 的本来面目 ▪ 数学定义:密码系统是一个5元组(E,D,M,K,C),M 是明文集,K是密钥集,C是密文集,E:MK→C是加密函 数集,D:CK→M是解密函数集
2.2密码学的基本概念 网络安全 NETWORK SECURITY 2.保密通信模型 加密密钥K。 解密密钥Ka 发送方 明文m 密文c 明文m 加密算法E 解密算法D 不安全信道 接收方 加密:c=EK(m) 密码分析 解密:m=Dk,(c) (Cryptanalysis) 14
14 2.2 密码学的基本概念 2. 保密通信模型 c E (m) Ke = 发 送 方 接 收 方 加密算法E 解密算法D 加密: 解密: 不安全信道 密码分析 (Cryptanalysis) 明文m 密文c 明文m 加密密钥Ke 解密密钥Kd m D (c) Kd =
2.2密码学的基本概念 网络安全 NETWORK SECURITY 3.基本术语 明文(plain text):即原始的或未加密的信息、报文(message) 密文(cipher text):指明文经过加密后得到的信息。 加密(encrypt,encryption):指通过编码将信息从一个可理解的明 文形式变换成一个错乱的、不可理解的密文形式的过程。 解密(decrypt,decryption):将密文还原成明文的过程。 密码算法(Algorithm)、密码(Cipher):加密和解密变换的规则 (数学函数),有加密算法和解密算法。 C=E(m),m=D(c),D(E(m))=m ·密钥(Key):密码算法中的一个变量 C=Eke(m),m=Dkd(c),Dkd(Eke(m))=m ·密码编码(Cryptography):通过信息编码使信息保密。 密码分析(Cryptanalysis).:用分析方法解密信息。 15
15 2.2 密码学的基本概念 3. 基本术语 ▪ 明文(plain text):即原始的或未加密的信息、报文(message)。 ▪ 密文(cipher text):指明文经过加密后得到的信息。 ▪ 加密(encrypt, encryption):指通过编码将信息从一个可理解的明 文形式变换成一个错乱的、不可理解的密文形式的过程。 ▪ 解密(decrypt, decryption):将密文还原成明文的过程。 ▪ 密码算法(Algorithm)、密码(Cipher):加密和解密变换的规则 (数学函数),有加密算法和解密算法。 c=E(m), m=D(c) , D(E(m))= m ▪ 密钥(Key): 密码算法中的一个变量 c=EKe(m), m=DKd(c), DKd(EKe(m))= m ▪ 密码编码(Cryptography):通过信息编码使信息保密。 ▪ 密码分析(Cryptanalysis):用分析方法解密信息
一个简单的加密算法一异或 网络安全 NETWORK SECURITY 异或运算(不带进位加法) 明文: 加密: 密钥: 0 0 密文: 0 1 1 0 C=P⊕K 密文: 11 解密: 密钥: 01 0 1 明文: 0 0 1 1 P=C⊕K ·已知明文、密文,怎样求得密钥? K=C⊕P 16
16 密文: 0 1 1 0 解密: 密钥: 0 1 0 1 明文: 0 0 1 1 • 已知明文、密文,怎样求得密钥? C=P K P=C K 异或运算(不带进位加法): 明文: 0 0 1 1 加密: 密钥: 0 1 0 1 密文: 0 1 1 0 K=C P 一个简单的加密算法—异或