970 likes | 1.08k Views
计算机网络. 第 9 章 计算机网络的安全. 第 9 章 计算机网络的安全. *9.1 网络安全问题概述 9.1.1 计算机网络面临的安全性威胁 9.1.2 计算机网络安全的内容 9.1.3 一般的数据加密模型 * 9.2 常规密钥密码体制 9.2.1 替代密码与置换密码 9.2.2 数据加密标准 DES. 第 9 章 计算机网络的安全(续). *9.3 公开密钥密码体制 9.3.1 公开密钥密码体制的特点 9.3.2 RSA 公开密钥密码体制 9.3.3 数字签名 * 9.4 报文鉴别
E N D
计算机网络 第 9 章 计算机网络的安全 课件制作人:谢希仁
第 9 章 计算机网络的安全 *9.1 网络安全问题概述 9.1.1 计算机网络面临的安全性威胁 9.1.2 计算机网络安全的内容 9.1.3 一般的数据加密模型 *9.2 常规密钥密码体制 9.2.1 替代密码与置换密码 9.2.2 数据加密标准 DES 课件制作人:谢希仁
第 9 章 计算机网络的安全(续) *9.3 公开密钥密码体制 9.3.1 公开密钥密码体制的特点 9.3.2 RSA 公开密钥密码体制 9.3.3 数字签名 *9.4 报文鉴别 *9.5 密钥分配 课件制作人:谢希仁
第 9 章 计算机网络的安全(续) 9.6 电子邮件的加密 9.6.1 PGP 9.6.2 PEM 9.7 链路加密与端到端加密 9.7.1 链路加密 9.7.2 端到端加密 课件制作人:谢希仁
第 9 章 计算机网络的安全(续) 9.8 因特网商务中的加密 9.8.1 安全插口层 SSL 9.8.2 安全电子交易 SET 9.9 因特网的网络层安全协议族 IPsec *9.10 防火墙 课件制作人:谢希仁
9.1 网络安全问题概述9.1.1 计算机网络面临的安全性威胁 • 计算机网络上的通信面临以下的四种威胁: (1) 截获——从网络上窃听他人的通信内容。 (2) 中断——有意中断他人在网络上的通信。 (3) 篡改——故意篡改网络上传送的报文。 (4) 伪造——伪造信息在网络上传送。 • 截获信息的攻击称为被动攻击,而更改信息和拒绝用户使用资源的攻击称为主动攻击。 课件制作人:谢希仁
对网络的被动攻击和主动攻击 源站 目的站 源站 目的站 源站 目的站 源站 目的站 中断 篡改 伪造 截获 被动攻击 主 动 攻 击 课件制作人:谢希仁
被动攻击和主动攻击 • 在被动攻击中,攻击者只是观察和分析某一个协议数据单元 PDU 而不干扰信息流。 • 主动攻击是指攻击者对某个连接中通过的 PDU 进行各种处理。 • 更改报文流 • 拒绝报文服务 • 伪造连接初始化 课件制作人:谢希仁
计算机网络通信安全的目标 (1) 防止析出报文内容; (2) 防止通信量分析; (3) 检测更改报文流; (4) 检测拒绝报文服务; (5) 检测伪造初始化连接。 有可能发生 分组丢失 课件制作人:谢希仁
恶意程序(rogue program) (1) 计算机病毒——会“传染”其他程序的程序,“传染”是通过修改其他程序来把自身或其变种复制进去完成的。 (2) 计算机蠕虫——通过网络的通信功能将自身从一个结点发送到另一个结点并启动运行的程序。 (3) 特洛伊木马——一种程序,它执行的功能超出所声称的功能。 (4) 逻辑炸弹——一种当运行环境满足某种特定条件时执行其他特殊功能的程序。 课件制作人:谢希仁
9.1.2 计算机网络安全的内容 • 保密性 • 安全协议的设计 • 接入控制 课件制作人:谢希仁
9.1.3 一般的数据加密模型 截获 篡改 截取者 明文 X 明文 X E 加密算法 D 解密算法 密文 Y = EK(X) 加密密钥 K 解密密钥 K 安全信道 密钥源 课件制作人:谢希仁
一些重要概念 • 密码编码学(cryptography)是密码体制的设计学,而密码分析学(cryptanalysis)则是在未知密钥的情况下从密文推演出明文或密钥的技术。密码编码学与密码分析学合起来即为密码学(cryptology)。 • 如果不论截取者获得了多少密文,但在密文中都没有足够的信息来惟一地确定出对应的明文,则这一密码体制称为无条件安全的,或称为理论上是不可破的。 • 如果密码体制中的密码不能被可使用的计算资源破译,则这一密码体制称为在计算上是安全的。 课件制作人:谢希仁
9.2 常规密钥密码体制 • 所谓常规密钥密码体制,即加密密钥与解密密钥是相同的密码体制。 • 这种加密系统又称为对称密钥系统。我们先介绍在常规密钥密码体制中的两种最基本的密码。 课件制作人:谢希仁
9.2.1 替代密码与置换密码 • 替代密码(substitution cipher)的原理可用一个例子来说明。(密钥是 3) abcdefghijklmnopqrstuvwxyz DEFGHIJKLMNOPQRSTUVWXYZABC 明文 密文 caesar cipher FDHVDU FLSKHU 明文 c 变成了密文 F 课件制作人:谢希仁
9.2.1 替代密码与置换密码 • 替代密码(substitution cipher)的原理可用一个例子来说明。(密钥是 3) abcdefghijklmnopqrstuvwxyz DEFGHIJKLMNOPQRSTUVWXYZABC 明文 密文 caesar cipher FDHVDU FLSKHU 明文 a 变成了密文 D 课件制作人:谢希仁
9.2.1 替代密码与置换密码 • 替代密码(substitution cipher)的原理可用一个例子来说明。(密钥是 3) abcdefghijklmnopqrstuvwxyz DEFGHIJKLMNOPQRSTUVWXYZABC 明文 密文 caesar cipher FDHVDU FLSKHU 明文 e 变成了密文 H 课件制作人:谢希仁
置换密码 • 置换密码(transposition cipher)则是按照某一规则重新排列消息中的比特或字符顺序。 密钥 顺序 明文 CIPHER 145326 attack begins atfour 根据英文字母在 26 个字母中的先后顺序,我们可以得出密钥中的每一个字母的相对先后顺序。因为密钥中没有 A 和 B,因此 C 为第 1。同理,E 为第 2,H 为第 3,……,R 为第 6。于是得出密钥字母的相对先后顺序为 145326。 课件制作人:谢希仁
置换密码 • 置换密码(transposition cipher)则是按照某一规则重新排列消息中的比特或字符顺序。 密钥 顺序 明文 CIPHER 145326 attack begins atfour 根据英文字母在 26 个字母中的先后顺序,我们可以得出密钥中的每一个字母的相对先后顺序。因为密钥中没有 A 和 B,因此 C 为第 1。同理,E 为第 2,H 为第 3,……,R 为第 6。于是得出密钥字母的相对先后顺序为 145326。 课件制作人:谢希仁
置换密码 • 置换密码(transposition cipher)则是按照某一规则重新排列消息中的比特或字符顺序。 密钥 顺序 明文 CIPHER 145326 attack begins atfour 根据英文字母在 26 个字母中的先后顺序,我们可以得出密钥中的每一个字母的相对先后顺序。因为密钥中没有 A 和 B,因此 C 为第 1。同理,E 为第 2,H 为第 3,……,R 为第 6。于是得出密钥字母的相对先后顺序为 145326。 课件制作人:谢希仁
置换密码 • 置换密码(transposition cipher)则是按照某一规则重新排列消息中的比特或字符顺序。 密钥 顺序 明文 CIPHER 145326 attack begins atfour 根据英文字母在 26 个字母中的先后顺序,我们可以得出密钥中的每一个字母的相对先后顺序。因为密钥中没有 A 和 B,因此 C 为第 1。同理,E 为第 2,H 为第 3,……,R 为第 6。于是得出密钥字母的相对先后顺序为 145326。 课件制作人:谢希仁
置换密码 • 置换密码(transposition cipher)则是按照某一规则重新排列消息中的比特或字符顺序。 密钥 顺序 明文 CIPHER 145326 attack begins atfour 根据英文字母在 26 个字母中的先后顺序,我们可以得出密钥中的每一个字母的相对先后顺序。因为密钥中没有 A 和 B,因此 C 为第 1。同理,E 为第 2,H 为第 3,……,R 为第 6。于是得出密钥字母的相对先后顺序为 145326。 课件制作人:谢希仁
置换密码 • 置换密码(transposition cipher)则是按照某一规则重新排列消息中的比特或字符顺序。 密钥 顺序 明文 CIPHER 145326 attack begins atfour 根据英文字母在 26 个字母中的先后顺序,我们可以得出密钥中的每一个字母的相对先后顺序。因为密钥中没有 A 和 B,因此 C 为第 1。同理,E 为第 2,H 为第 3,……,R 为第 6。于是得出密钥字母的相对先后顺序为 145326。 课件制作人:谢希仁
密文的得出 密钥 顺序 明文 CIPHER 145326 attack begins atfour 先读顺序为 1 的明文列,即 aba 课件制作人:谢希仁
密文的得出 密钥 顺序 明文 CIPHER 145326 attack begins atfour 再读顺序为 2 的明文列,即 cnu 课件制作人:谢希仁
密文的得出 密钥 顺序 明文 CIPHER 145326 attack begins atfour 再读顺序为 3 的明文列,即 aio 课件制作人:谢希仁
密文的得出 密钥 顺序 明文 CIPHER 145326 attack begins atfour 再读顺序为 4 的明文列,即 tet 课件制作人:谢希仁
密文的得出 密钥 顺序 明文 CIPHER 145326 attack begins atfour 再读顺序为 5 的明文列,即 tgf 课件制作人:谢希仁
密文的得出 密钥 顺序 明文 CIPHER 145326 attack begins atfour 最后读顺序为 6 的明文列,即 ksr 因此密文就是:abacnuaiotettgfksr 课件制作人:谢希仁
接收端收到密文后按列写下 收到的密文:abacnuaiotettgfksr 密钥 顺序 明文 CIPHER 145326 attack begins atfour 先写下第 1 列密文 aba 课件制作人:谢希仁
接收端收到密文后按列写下 收到的密文:abacnuaiotettgfksr 密钥 顺序 明文 CIPHER 145326 attack begins atfour 再写下第 2 列密文 cnu 课件制作人:谢希仁
接收端收到密文后按列写下 收到的密文:abacnuaiotettgfksr 密钥 顺序 明文 CIPHER 145326 attack begins atfour 再写下第 3 列密文 aio 课件制作人:谢希仁
接收端收到密文后按列写下 收到的密文:abacnuaiotettgfksr 密钥 顺序 明文 CIPHER 145326 attack begins atfour 再写下第 4 列密文 tet 课件制作人:谢希仁
接收端收到密文后按列写下 收到的密文:abacnuaiotettgfksr 密钥 顺序 明文 CIPHER 145326 attack begins atfour 再写下第 5 列密文 tgf 课件制作人:谢希仁
接收端收到密文后按列写下 收到的密文:abacnuaiotettgfksr 密钥 顺序 明文 CIPHER 145326 attack begins atfour 最后写下第 6 列密文 ksr 课件制作人:谢希仁
接收端从密文解出明文 收到的密文:abacnuaiotettgfksr 密钥 顺序 明文 CIPHER 145326 attack begins atfour 最后按行读出明文 课件制作人:谢希仁
接收端从密文解出明文 收到的密文:abacnuaiotettgfksr 密钥 顺序 明文 CIPHER 145326 attack begins atfour 最后按行读出明文 课件制作人:谢希仁
接收端从密文解出明文 收到的密文:abacnuaiotettgfksr 密钥 顺序 明文 CIPHER 145326 attack begins atfour 最后按行读出明文 得出明文:attackbeginsatfour 课件制作人:谢希仁
序列密码与分组密码 • 序列码体制是将明文 X 看成是连续的比特流(或字符流)x1x2…,并且用密钥序列 K k1k2…中的第 i 个元素 ki 对明文中的 xi 进行加密,即 课件制作人:谢希仁
序列密码体制 发端 收端 种子 I0 种子 I0 密钥序列产生器 密钥序列产生器 ki ki 明文序列 明文序列 xi yi yi xi 密文序列 在开始工作时种子 I0 对密钥序列产生器进行初始化。 按照模 2 进行运算,得出: (9-1) 课件制作人:谢希仁
序列密码体制 发端 收端 种子 I0 种子 I0 密钥序列产生器 密钥序列产生器 ki ki 明文序列 明文序列 xi yi yi xi 密文序列 在收端,对 yi 的解密算法为: (9-2) 序列密码又称为密钥流密码。 课件制作人:谢希仁
序列密码体制的保密性 • 序列密码体制的保密性完全在于密钥的随机性。 • 如果密钥是真正的随机数,则这种体制就是理论上不可破的。这也可称为一次一密乱码本体制。 • 严格的一次一密乱码本体制所需的密钥量不存在上限,很难实用化。 • 密码学家试图模仿这种一次一密乱码本体制。目前常使用伪随机序列作为密钥序列。关键是序列的周期要足够长,且序列要有很好的随机性(这很难寻找)。 课件制作人:谢希仁
分组密码 • 它将明文划分成固定的 n 比特的数据组,然后以组为单位,在密钥的控制下进行一系列的线性或非线性的变化而得到密文。这就是分组密码。 • 分组密码一次变换一组数据。 • 分组密码算法的一个重要特点就是:当给定一个密钥后,若明文分组相同,那么所变换出密文分组也相同。 • 分组密码的一个重要优点是不需要同步 课件制作人:谢希仁
分组密码体制 密文 明文 输入 输入 n bit n bit 密钥 密钥 加密 算法 解密 算法 n bit n bit 明文 密文 输出 输出 课件制作人:谢希仁
9.2.2 数据加密标准 DES • 数据加密标准 DES 属于常规密钥密码体制,是一种分组密码。 • 在加密前,先对整个明文进行分组。每一个组长为 64 bit。 • 然后对每一个 64 bit 二进制数据进行加密处理,产生一组 64 bit 密文数据。 • 最后将各组密文串接起来,即得出整个的密文。 • 使用的密钥为 64 bit(实际密钥长度为 56 bit,有 8 bit 用于奇偶校验)。 课件制作人:谢希仁
输入 明文 X (64 bit) DES 加密标准 IP X0 (64 bit) X0 的右半边 (32 bit) X0 的左半边 (32 bit) L0 R0 K1 (48 bit) f L1 = R0 R1 = L0 f (R0, K1) K2 (48 bit) f L2 = R1 R2 = L1 f (R1, K2) L15 = R14 R15 = L14 f (R14, K15) K16 (48 bit) f R16 = L15 f (R15, K16) L16 = R15 R16L16 (64 bit) IP1 输出 密文 Y (64 bit)
DES 实际上就是一种单字符替代,而这种字符的长度是 64 bit。 也就是说,对于 DES 算法,相同的明文就产生相同的密文。这对 DES 的安全性来说是不利的。 为了提高 DES 的安全性,可采用加密分组链接的方法。 DES 的明显缺点 课件制作人:谢希仁
加密分组的链接 加密 解密 明文 X0 X1 X2 X3 密文 Y0 Y1 Y2 Y3 初始 向量 密钥 D D D D … … 初始 向量 密钥 E E E E 密文 明文 Y0 Y1 Y2 Y3 X0 X1 X2 X3 课件制作人:谢希仁
DES的保密性 • DES的保密性仅取决于对密钥的保密,而算法是公开的。尽管人们在破译 DES 方面取得了许多进展,但至今仍未能找到比穷举搜索密钥更有效的方法。 • DES 是世界上第一个公认的实用密码算法标准,它曾对密码学的发展做出了重大贡献。 • 目前较为严重的问题是 DES 的密钥的长度。 • 现在已经设计出来搜索 DES 密钥的专用芯片。 课件制作人:谢希仁
三重 DES(Triple DES) • 三重 DES 使用两个密钥,执行三次 DES 算法。下图中的方框 E 和 D 分别表示执行加密和解密算法。因此加密时是 E-D-E,解密时是 D-E-D。 K1 K2 K1 K1 K2 K1 明文 密文 密文 明文 E D E D E D 加密 解密 课件制作人:谢希仁