计算机网络的安全-2ed_第1页
计算机网络的安全-2ed_第2页
计算机网络的安全-2ed_第3页
计算机网络的安全-2ed_第4页
计算机网络的安全-2ed_第5页
已阅读5页,还剩73页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

计算机网络教程(第2版)第10章计算机网络的安全课件制作人:曾志峰第10章计算机网络的安全10.1网络安全问题概述

10.1.1计算机网络面临的安全性威胁

10.1.2计算机网络安全的内容

10.1.3一般的数据加密模型10.2常规密钥密码体制

10.2.1替代密码与置换密码

10.2.2数据加密标准DES课件制作人:曾志峰第10章计算机网络的安全(续)10.3公钥密码体制

10.3.1公钥密码体制的特点

10.3.2RSA公钥密码体制

10.3.3数字签名10.4报文鉴别10.5密钥分配课件制作人:曾志峰第10章计算机网络的安全(续)10.6链路加密与端到端加密

10.6.1链路加密

10.6.2端到端加密10.7防火墙课件制作人:曾志峰10.1网络安全问题概述

10.1.1计算机网络面临的安全性威胁

计算机网络上的通信面临以下的四种威胁:

(1)截获——从网络上窃听他人的通信内容。

(2)中断——有意中断他人在网络上的通信。

(3)篡改——故意篡改网络上传送的报文。

(4)伪造——伪造信息在网络上传送。截获信息的攻击称为被动攻击,而更改信息和拒绝用户使用资源的攻击称为主动攻击。课件制作人:曾志峰对网络的被动攻击和主动攻击截获篡改伪造中断被动攻击主动攻击目的站源站源站源站源站目的站目的站目的站课件制作人:曾志峰被动攻击和主动攻击在被动攻击中,攻击者只是观察和分析某一个协议数据单元PDU而不干扰信息流。主动攻击是指攻击者对某个连接中通过的PDU进行各种处理。更改报文流拒绝报文服务伪造连接初始化

课件制作人:曾志峰(1)防止析出报文内容;(2)防止通信量分析;(3)检测更改报文流;(4)检测拒绝报文服务;(5)检测伪造初始化连接。计算机网络通信安全的目标课件制作人:曾志峰(1)计算机病毒——会“传染”其他程序的程序,“传染”是通过修改其他程序来把自身或其变种复制进去完成的。(2)计算机蠕虫——通过网络的通信功能将自身从一个结点发送到另一个结点并启动运行的程序。(3)特洛伊木马——一种程序,它执行的功能超出所声称的功能。(4)逻辑炸弹——一种当运行环境满足某种特定条件时执行其他特殊功能的程序。恶意程序(rogueprogram)课件制作人:曾志峰10.1.2计算机网络安全的内容保密性安全协议的设计接入控制课件制作人:曾志峰10.1.3一般的数据加密模型E加密算法D解密算法加密密钥K解密密钥K明文X明文X密文Y=EK(X)截取者截获篡改密钥源安全信道课件制作人:曾志峰一些重要概念密码编码学(cryptography)是密码体制的设计学,而密码分析学(cryptanalysis)则是在未知密钥的情况下从密文推演出明文或密钥的技术。密码编码学与密码分析学合起来即为密码学(cryptology)。如果不论截取者获得了多少密文,但在密文中都没有足够的信息来唯一地确定出对应的明文,则这一密码体制称为无条件安全的,或称为理论上是不可破的。如果密码体制中的密码不能被可使用的计算资源破译,则这一密码体制称为在计算上是安全的。课件制作人:曾志峰10.2常规密钥密码体制所谓常规密钥密码体制,即加密密钥与解密密钥是相同的密码体制。这种加密系统又称为对称密钥系统。我们先介绍在常规密钥密码体制中的两种最基本的密码。课件制作人:曾志峰10.2.1替代密码与置换密码替代密码(substitutioncipher)的原理可用一个例子来说明。(密钥是3)abcdefghijklmnopqrstuvwxyzDEFGHIJKLMNOPQRSTUVWXYZABCcaesarcipherFDHVDUFLSKHU明文密文明文c变成了密文F课件制作人:曾志峰10.2.1替代密码与置换密码替代密码(substitutioncipher)的原理可用一个例子来说明。(密钥是3)abcdefghijklmnopqrstuvwxyzDEFGHIJKLMNOPQRSTUVWXYZABCcaesarcipherFDHVDUFLSKHU明文密文明文a变成了密文D课件制作人:曾志峰10.2.1替代密码与置换密码替代密码(substitutioncipher)的原理可用一个例子来说明。(密钥是3)abcdefghijklmnopqrstuvwxyzDEFGHIJKLMNOPQRSTUVWXYZABCcaesarcipherFDHVDUFLSKHU明文密文明文e变成了密文H课件制作人:曾志峰CIPHER145326attackbeginsatfour置换密码置换密码(transpositioncipher)则是按照某一规则重新排列消息中的比特或字符顺序。密钥顺序明文根据英文字母在26个字母中的先后顺序,我们可以得出密钥中的每一个字母的相对先后顺序。因为密钥中没有A和B,因此C为第1。同理,E为第2,H为第3,……,R为第6。于是得出密钥字母的相对先后顺序为145326。课件制作人:曾志峰CIPHER145326attackbeginsatfour置换密码置换密码(transpositioncipher)则是按照某一规则重新排列消息中的比特或字符顺序。密钥顺序明文根据英文字母在26个字母中的先后顺序,我们可以得出密钥中的每一个字母的相对先后顺序。因为密钥中没有A和B,因此C为第1。同理,E为第2,H为第3,……,R为第6。于是得出密钥字母的相对先后顺序为145326。课件制作人:曾志峰CIPHER145326attackbeginsatfour置换密码置换密码(transpositioncipher)则是按照某一规则重新排列消息中的比特或字符顺序。密钥顺序明文根据英文字母在26个字母中的先后顺序,我们可以得出密钥中的每一个字母的相对先后顺序。因为密钥中没有A和B,因此C为第1。同理,E为第2,H为第3,……,R为第6。于是得出密钥字母的相对先后顺序为145326。课件制作人:曾志峰CIPHER145326attackbeginsatfour置换密码置换密码(transpositioncipher)则是按照某一规则重新排列消息中的比特或字符顺序。密钥顺序明文根据英文字母在26个字母中的先后顺序,我们可以得出密钥中的每一个字母的相对先后顺序。因为密钥中没有A和B,因此C为第1。同理,E为第2,H为第3,……,R为第6。于是得出密钥字母的相对先后顺序为145326。课件制作人:曾志峰CIPHER145326attackbeginsatfour置换密码置换密码(transpositioncipher)则是按照某一规则重新排列消息中的比特或字符顺序。密钥顺序明文根据英文字母在26个字母中的先后顺序,我们可以得出密钥中的每一个字母的相对先后顺序。因为密钥中没有A和B,因此C为第1。同理,E为第2,H为第3,……,R为第6。于是得出密钥字母的相对先后顺序为145326。课件制作人:曾志峰CIPHER145326attackbeginsatfour置换密码置换密码(transpositioncipher)则是按照某一规则重新排列消息中的比特或字符顺序。密钥顺序明文根据英文字母在26个字母中的先后顺序,我们可以得出密钥中的每一个字母的相对先后顺序。因为密钥中没有A和B,因此C为第1。同理,E为第2,H为第3,……,R为第6。于是得出密钥字母的相对先后顺序为145326。课件制作人:曾志峰CIPHER145326attackbeginsatfour密文的得出密钥顺序明文先读顺序为1的明文列,即aba

课件制作人:曾志峰CIPHER145326attackbeginsatfour密文的得出密钥顺序明文再读顺序为2的明文列,即cnu

课件制作人:曾志峰CIPHER145326attackbeginsatfour密文的得出密钥顺序明文再读顺序为3的明文列,即aio

课件制作人:曾志峰CIPHER145326attackbeginsatfour密文的得出密钥顺序明文再读顺序为4的明文列,即tet

课件制作人:曾志峰CIPHER145326attackbeginsatfour密文的得出密钥顺序明文再读顺序为5的明文列,即tgf

课件制作人:曾志峰CIPHER145326attackbeginsatfour密文的得出密钥顺序明文最后读顺序为6的明文列,即ksr

因此密文就是:abacnuaiotettgfksr

课件制作人:曾志峰CIPHER145326attackbeginsatfour接收方收到密文后按列写下密钥顺序明文先写下第1列密文aba

收到的密文:abacnuaiotettgfksr

课件制作人:曾志峰CIPHER145326attackbeginsatfour接收方收到密文后按列写下密钥顺序明文再写下第2列密文cnu

收到的密文:abacnuaiotettgfksr

课件制作人:曾志峰CIPHER145326attackbeginsatfour接收方收到密文后按列写下密钥顺序明文再写下第3列密文aio

收到的密文:abacnuaiotettgfksr

课件制作人:曾志峰CIPHER145326attackbeginsatfour接收方收到密文后按列写下密钥顺序明文再写下第4列密文tet

收到的密文:abacnuaiotettgfksr

课件制作人:曾志峰CIPHER145326attackbeginsatfour接收方收到密文后按列写下密钥顺序明文再写下第5列密文tgf

收到的密文:abacnuaiotettgfksr

课件制作人:曾志峰CIPHER145326attackbeginsatfour接收方收到密文后按列写下密钥顺序明文最后写下第6列密文ksr

收到的密文:abacnuaiotettgfksr

课件制作人:曾志峰CIPHER145326attackbeginsatfour接收方从密文解出明文密钥顺序明文最后按行读出明文收到的密文:abacnuaiotettgfksr

课件制作人:曾志峰CIPHER145326attackbeginsatfour接收方从密文解出明文密钥顺序明文最后按行读出明文收到的密文:abacnuaiotettgfksr

课件制作人:曾志峰CIPHER145326attackbeginsatfour接收方从密文解出明文密钥顺序明文最后按行读出明文收到的密文:abacnuaiotettgfksr

得出明文:attackbeginsatfour

课件制作人:曾志峰序列密码与分组密码序列码体制是将明文X看成是连续的比特流(或字符流)x1x2…,并且用密钥序列

K

k1k2…中的第i个元素ki

对明文中的xi进行加密,即课件制作人:曾志峰序列密码体制密钥序列产生器种子

I0发端ki密钥序列产生器种子

I0收端ki

密文序列明文序列明文序列xixiyiyi

在开始工作时种子I0对密钥序列产生器进行初始化。按照模2进行运算,得出:

(10-1)课件制作人:曾志峰序列密码体制密钥序列产生器种子

I0发端ki密钥序列产生器种子

I0收端ki

密文序列明文序列明文序列xixiyiyi

在收端,对yi

的解密算法为:(10-2)序列密码又称为密钥流密码。课件制作人:曾志峰序列密码体制的保密性序列密码体制的保密性完全在于密钥的随机性。如果密钥是真正的随机数,则这种体制就是理论上不可破的。这也可称为一次一密乱码本体制。严格的一次一密乱码本体制所需的密钥量不存在上限,很难实用化。密码学家试图模仿这种一次一密乱码本体制。目前常使用伪随机序列作为密钥序列。关键是序列的周期要足够长,且序列要有很好的随机性(这很难寻找)。课件制作人:曾志峰分组密码它将明文划分成固定的n位的数据组,然后以组为单位,在密钥的控制下进行一系列的线性或非线性的变化而得到密文。这就是分组密码。分组密码一次变换一组数据。分组密码算法的一个重要特点就是:当给定一个密钥后,若明文分组相同,那么所变换出密文分组也相同。分组密码的一个重要优点是不需要同步课件制作人:曾志峰密文加密算法密钥明文n

位输入输入输出输出n

位解密算法n

位n

位明文密钥发送方加密接收方解密分组密码体制课件制作人:曾志峰10.2.2数据加密标准DES数据加密标准DES属于常规密钥密码体制,是一种分组密码。在加密前,先对整个明文进行分组。每一个组长为64位。然后对每一个64位二进制数据进行加密处理,产生一组64位密文数据。最后将各组密文串接起来,即得出整个的密文。使用的密钥为64位(实际密钥长度为56位,有8位用于奇偶校验)。课件制作人:曾志峰64位明文56位密钥密钥处理器置换迭代1置换迭代1664位密文迭代2

48位密钥DES

课件制作人:曾志峰DES的明显缺点DES实际上就是一种单字符替代,而这种字符的长度是64位。也就是说,对于DES算法,相同的明文就产生相同的密文。这对DES的安全性来说是不利的。为了提高DES的安全性,可采用加密分组链接的方法。课件制作人:曾志峰加密分组的链接

X0Y0

X1Y1

X2Y2

X3Y3

X0Y0

X1Y1

X2Y2

X3Y3……初始向量初始向量密钥密钥明文明文密文密文加密解密EEEEDDDD课件制作人:曾志峰DES

的保密性DES

的保密性仅取决于对密钥的保密,而算法是公开的。尽管人们在破译DES方面取得了许多进展,但至今仍未能找到比穷举搜索密钥更有效的方法。DES是世界上第一个公认的实用密码算法标准,它曾对密码学的发展做出了重大贡献。目前较为严重的问题是DES的密钥的长度。现在已经设计出来搜索DES密钥的专用芯片。

课件制作人:曾志峰三重DES

(TripleDES)三重DES使用两个密钥,执行三次DES算法。下图中的方框E和D分别表示执行加密和解密算法。加密时是E-D-E,解密时是D-E-D。EDEK1K2K1明文密文DEDK1K2K1密文明文加密E-D-E解密D-E-D课件制作人:曾志峰10.3公钥密码体制

10.3.1公钥密码体制的特点公钥密码体制使用不同的加密密钥与解密密钥,是一种“由已知加密密钥推导出解密密钥在计算上是不可行的”密码体制。公钥密码体制的产生主要是因为两个方面的原因,一是由于常规密钥密码体制的密钥分配问题,另一是由于对数字签名的需求。现有三种公钥密码体制,其中最著名的是RSA体制,它基于数论中大数分解问题的体制,由美国三位科学家Rivest,Shamir

和Adleman

于1976年提出并在1978年正式发表的。课件制作人:曾志峰加密密钥与解密密钥在公钥密码体制中,加密密钥(即公钥)PK是公开信息,而解密密钥(即私钥)SK是需要保密的。加密算法E和解密算法D也都是公开的。虽然私钥SK是由公钥PK决定的,但却不能根据PK计算出SK。课件制作人:曾志峰应当注意任何加密方法的安全性取决于密钥的长度,以及攻破密文所需的计算量。在这方面,公钥密码体制并不具有比传统加密体制更加优越之处。由于目前公钥加密算法的开销较大,在可见的将来还看不出来要放弃传统的加密方法。公钥还需要密钥分配协议,具体的分配过程并不比采用传统加密方法时更为简单。课件制作人:曾志峰公钥算法的特点(1)发送者用加密密钥PK对明文X加密后,在接收者用解密密钥SK解密,即可恢复出明文,或写为:

DSK(EPK(X))

X(10-3)解密密钥是接收者专用的私钥,对其他人都保密。加密和解密的运算可以对调,即

EPK(DSK(X))

X课件制作人:曾志峰公钥算法的特点(续)(2)加密密钥是公开的,但不能用它来解密,即

DPK(EPK(X))

X(10-4)(3)在计算机上可容易地产生成对的PK和SK。(4)从已知的PK实际上不可能推导出SK,即从PK到SK是“计算上不可能的”。(5)加密和解密算法都是公开的。课件制作人:曾志峰公钥密码体制接收方发送方E加密算法D解密算法加密密钥PK解密密钥SK明文X密文Y=EPK(X)密钥对产生源明文X=DSK(EPK(X))课件制作人:曾志峰10.3.2RSA公钥密码体制RSA公钥密码体制所根据的原理是:根据数论,寻求两个大素数比较简单,而将它们的乘积分解开则极其困难。每个用户有两个密钥:加密密钥PK

{e,n}和解密密钥SK

{d,n}。用户把加密密钥公开,使得系统中任何其他用户都可使用,而对解密密钥中的d则保密。N为两个大素数p和q之积(素数p和q一般为100位以上的十进数),e和d满足一定的关系。当敌手已知e和n时并不能求出d。课件制作人:曾志峰(1)加密算法若用整数X表示明文,用整数Y表示密文(X和Y均小于n),则加密和解密运算为:加密:Y

Xemodn(10-5)

解密:X

Ydmodn(10-6)课件制作人:曾志峰(2)密钥的产生①计算n。用户秘密地选择两个大素数p和q,计算出n

pq。n称为RSA算法的模数。明文必须能够用小于n的数来表示。实际上n是几百位长的数。②计算

(n)。用户再计算出n的欧拉函数

(n)

(p

1)(q

1)(10-7)

(n)定义为不超过n并与n互素的数的个数。③选择e。用户从[0,

(n)

1]中选择一个与

(n)互素的数e作为公开的加密指数。课件制作人:曾志峰(2)密钥的产生(续)④计算d。用户计算出满足下式的d

ed

1mod

(n)(10-8)

作为解密指数。⑤得出所需要的公钥和私钥:公钥(即加密密钥)PK

{e,n}

私钥(即解密密钥)SK

{d,n}课件制作人:曾志峰(3)正确性的例子说明设选择了两个素数,p

7,q

17。计算出n

pq

7

17

119。计算出

(n)

(p

1)(q

1)

96。从[0,95]中选择一个与96互素的数e。选e

5。然后根据(9-10)式,

5d

1mod96解出d。不难得出,d

77,因为ed

5

77

385

4

96

1

1mod96。于是,公钥PK

(e,n)

{5,119},

私钥SK

{77,119}。课件制作人:曾志峰(3)正确性的例子说明(续)对明文进行加密。先把明文划分为分组,使每个明文分组的二进制值不超过n,即不超过119。设明文X

19。用公钥加密时,先计算

Xe

195

2476099。再除以119,得出商为20807,余数为66。这就是对应于明文19的密文Y的值。在用私钥SK

{77,119}进行解密时,先计算

Yd

6677

1.27...

10140。再除以119,得出商为1.06...

10138,余数为19。此余数即解密后应得出的明文X。课件制作人:曾志峰10.3.3数字签名数字签名必须保证以下三点:(1)接收者能够核实发送者对报文的签名;(2)发送者事后不能抵赖对报文的签名;(3)接收者不能伪造对报文的签名。现在已有多种实现各种数字签名的方法。但采用公钥算法要比采用常规密钥算法更容易实现。课件制作人:曾志峰数字签名的实现DSKAPKA用A的公钥核实签名用A的私钥签名X发送方A接收方BDSK(X)XE课件制作人:曾志峰数字签名的实现A用其私钥SKA对报文X进行运算,将结果DSKA(X)传送给B。A的运算并非想将报文X加密而是为了进行数字签名。B收到DSKA(X)后,用A的公钥对报文DSKA(X)进行运算,得出EPKA(DSKA(X))

X。因为除A外没有别人能具有A的解密密钥SKA,所以除A外没有别人能产生密文DSKA(X)。这样,B就核实了报文X的确是A签名发送的。课件制作人:曾志峰B相信报文X是A签名发送的B用已知的A的公钥得出EPKA(DSKA(X))

X。因为除A外没有别人能具有A的解密密钥SKA,所以除A外没有别人能产生密文DSKA(X)。这样,B相信报文X是A签名发送的。若A要抵赖曾发送报文给B,B可将X及DSKA(X)出示给第三者。第三者很容易用PKA去证实A确实发送X给B。反之,若B将X伪造成X‘,则B不能在第三者前出示DSKA(X’)。这样就证明了B伪造了报文。课件制作人:曾志峰具有保密性的数字签名DSKAPKA用A的公钥核实签名用A的私钥签名X发送方A接收方BDSKA(X)XEEPKB用B的公钥加密EPKB(DSKA(X))DSKB用B的私钥解密DSKA(X)密文课件制作人:曾志峰10.4报文鉴别

(messageauthentication)

在信息的安全领域中,对付被动攻击的重要措施是加密,而对付主动攻击中的篡改和伪造则要用报文鉴别。报文鉴别使得通信的接收方能够验证所收到的报文(发送者和报文内容、发送时间、序列等)的真伪。使用加密就可达到报文鉴别的目的。但在网络的应用中,许多报文并不需要加密。应当使接收者能用很简单的方法鉴别报文的真伪。课件制作人:曾志峰报文摘要MD

(MessageDigest)发送方将报文m经过报文摘要算法运算后得出固定长度的报文摘要H(m)。然后对H(m)进行加密,得出EK(H(m)),并将其追加在报文m后面发送出去。接收方将EK(H(m))解密还原为H(m),再将收到的报文进行报文摘要运算,看得出的是否为此H(m)。如不一样,则可断定收到的报文不是发送方产生的。报文摘要的优点就是:仅对短得多的定长报文摘要H(m)进行加密比对整个长报文m进行加密要简单得多。M和EK(H(m))合在一起是不可伪造的,是可检验的和不可抵赖的。课件制作人:曾志峰报文摘要算法必须满足

以下两个条件任给一个报文摘要值x,若想找到一个报文y使得H(y)=x,则在计算上是不可行的。若想找到任意两个报文x和y,使得

H(x)=H(y),则在计算上是不可行的。课件制作人:曾志峰10.5密钥分配密钥管理包括:密钥的产生、分配、注入、验证和使用。密钥分配是密钥管理中最大的问题。密钥必须通过最安全的通路进行分配。目前常用的密钥分配方式是设立密钥分配中心KDC(KeyDistribution),通过KDC来分配密钥。课件制作人:曾志峰常规密钥分配协议用户B用户主密钥

A

KAB

KB……用户私有主密钥文件KDC用户A③EKB(A,R1)B知道了密钥R1①EKA(A,B)②EKA(R1,EKB(A,R1))A知道了密钥R1A和B用密钥R1

通信课件制作人:曾志峰10.

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论