《计算机网络与通信第10章.ppt》由会员分享,可在线阅读,更多相关《计算机网络与通信第10章.ppt(59页珍藏版)》请在三一办公上搜索。
1、第10章 网络安全,10.1 概述10.2 两种密码体制10.3 数字签名和报文摘要10.4 身份认证和密钥分发10.5 Internet网络安全技术,10.1 概述,对网络的攻击可分为下面几类:截取(interception)篡改(Modification)伪造(fabrication)中断(interruption)网络安全结构SA(Security Architecture):身份认证(authentication)访问控制(access control)数据保密(data confidentiality)数据完整(data integrity)不可否认(nonrepudiation),
2、10.2 两种密码体制,10.2.1 密码学基础10.2.2 对称密钥密码体制与DES算法10.2.3 公开密钥密码体制与RSA算法,10.2.1 密码学基础,密码编码学(cryptography)和密码分析学(cryptanalysis)明文(plaintext),密文(ciphertext),加密(encryption),解密(decryption),密钥(key),加密密钥,解密密钥。早期的密钥密码体制:替换密码(substitution cipher)替换密码是将明文中每个(或每组)字母由另一个(或另一组)字母所替换。变位密码(transposition cipher)变位密码是按照某
3、一规则重新排列报文中的字符顺序。,10.2.1 密码学基础,例子,使用密钥bridge对明文timebomb will blowup at five 进行加密:,10.2.1 密码学基础,现代密码学对称密钥密码体制(symmetric key cryptography),典型算法是DES公开密钥密码体制(public key cryptography),典型算法是RSAKerckoff原则(Kerckoffs principle)加密和解密算法是公开的,而密钥是保密的。密钥的穷举猜测是一种重要攻击手段 计算上不可破译:实用的密码体制一般是计算上不可破译的,而不是理论上不破译的。,10.2.2
4、对称密钥密码体制与DES算法,对称密钥密码体制特点是解密时使用的解密密钥和加密时使用的加密密钥是通信双方共享的同一密钥,它称为共享密钥(shared key)。C=EK(P)P=DK(C)DK(EK(P)=P,10.2.2 对称密钥密码体制与DES算法,数据加密标准(DES)块密码(block cipher)算法:明文被分成64比特的块,逐 块进行加密。密钥长64比特,有效长度是56比特。,10.2.2 对称密钥密码体制与DES算法,DES算法,10.2.2 对称密钥密码体制与DES算法,(1)初始置换IP(Initial Permutation)IP(P)将64比特的排列顺序变换,打乱ASC
5、II码字划分的关系。,10.2.2 对称密钥密码体制与DES算法,(2)16次迭代加密:,Ki是48比特密钥,从原64比特的种子密钥经过变换生成。1)计算:,将32b的Ri1经扩展变换E(),扩展为48b的E(Ri1)将E(Ri1)与密钥Ki(均48b)进行模2加,得结果B,并将B顺序地划分为8个6b长的组B1 B8:,10.2.2 对称密钥密码体制与DES算法,扩展变换E(),10.2.2 对称密钥密码体制与DES算法,将B1 B8经S()变换分别转换为4b的组G1 G8,即:,S盒(S-box):固定的416矩阵,元素为015的整数,例如 S1():,10.2.2 对称密钥密码体制与DES
6、算法,由Sj()矩阵的第 p 行第 q列元素就得到Gj,4比特长度。得到32b的G=G1G2G3G4G5G6G7G8。,对于Bj=b1b2b3b4b5b6,由它求Gj:,将G进行一次P()置换:至此,函数变换 f()完成。,10.2.2 对称密钥密码体制与DES算法,P()置换,10.2.2 对称密钥密码体制与DES算法,2)生成K i 的过程如下:,10.2.2 对称密钥密码体制与DES算法,10.2.2 对称密钥密码体制与DES算法,解密过程和加密过程使用的算法相同,输入密文C,但以逆顺序生成16个密钥,即K16 K15 K1,输出将是明文P。DES算法主要使用异或、位循环、替代置换等初级
7、运算,运算很快,可以用于大量数据的加密。,10.2.2 对称密钥密码体制与DES算法,IP逆置换,10.2.2 对称密钥密码体制与DES算法,DES的发展(1)DES-CBC(DES Cipher Block Chaining)DES是一种长度为64b的块替代:电子代码本ECB(Electronic CodeBook)。缺点:相同的明文块生成相同的密文块。,DES-CBC加密过程,DES-CBC解密过程,10.2.2 对称密钥密码体制与DES算法,(2)三重DES(Triple DES)使用两个密钥,长度共112bit 加密:C=EK1(DK2(EK1(P)解密:P=DK1(EK2(DK1(C
8、)对称密钥密码体制的其它加密算法 国际数据加密算法IDEA:128比特的密钥 Rijndael:128256比特的密钥,10.2.3 公开密钥密码体制与RSA算法,公开密钥密码体制使用一对不相同的加密密钥与解密密钥,也称为非对称密钥密码体制(asymmetric key cryptography)。公钥PK(Public Key),私钥(Private Key),记为SK。DSK(EPK(P)P 公开密钥密码体制的特点:加密密钥是公开的,但不能解密,即:DPK(EPK(P)P;解密密钥是接收者专用的秘密密钥,对其他人必须保密;加密和解密算法都是公开的;加密和解密的运算可以对调,即:EPK(DS
9、K(P)P;在计算机上可以容易地产生PK和SK对;从已知的PK推导出SK在计算上是不可能的。,10.2.3 公开密钥密码体制与RSA算法,公开密钥密码体制,10.2.3 公开密钥密码体制与RSA算法,RSA算法基于数论中大数分解的原理:寻求两个大素数比较简单,而将它们的乘积分解开则极其困难。PK=e,n,SK=d,n。n为两个大素数 p 和 q 的乘积,素数 p 和 q 一般为100位以上的十进数,e 和 d 满足一定的关系。第三者已知 e 和 n 时并不能求出 d。(1)加密和解密算法 C=Pe Mod n(加密)P=Cd Mod n(解密),10.2.3 公开密钥密码体制与RSA算法,(2
10、)密钥的生成 计算 n:秘密地选择两个大素数 p 和 q,计算出n=pq;计算(n):欧拉函数(n)=(p1)(q1);选择 e:从0,(n)1中选择一个与(n)互素的数 e;计算 d:d 应满足:ed=1 Mod(n)上式表示ed和1对模(n)同余。得出密钥:PKe,n,SKd,n。,10.2.3 公开密钥密码体制与RSA算法,RSA算法的例子:选择p=3,q=11,计算出n=pq=33;计算(n)=(p1)(q1)=20;从0,(n)1=0,19中选择一个与 20 互素的数 e=7;7d 1 Mod 20,可求得一个d=3;PKe,n=7,33,SK d,n=3,33。,10.2.3 公开
11、密钥密码体制与RSA算法,10.3 数字签名和报文摘要,数字签名(digital signature)数字签名应满足以下三点要求:报文认证 接收者能够核实报文确实是由发送者签发;报文完整性 无法被中途窃取者和接收者所篡改、伪造;不可否认 发送者事后无法否认是他签发的报文。数字签名一般采用公开密钥算法。,10.3 数字签名和报文摘要,数字签名满足上述三点要求:因为P要用A的PK-A才能解密,所以报文是用A的加密密钥SK-A加密的,因此,B可以认证P一定是A签发的。因为P只能用A的私钥SK-A进行签名,中途窃取者和接收者无 法进行篡改和伪造。若A欲否认曾签发P给B,B可将P及DSK-A(P)出示给
12、第三者,第三者很容易用PK-A 由DSK-A(P)得到P,证实是A签发了P,A无法否认。,10.3 数字签名和报文摘要,具有加密的数字签名:,10.3 数字签名和报文摘要,报文摘要数字签名存在问题:加密和解密处理花费时间长,有时应用 中某些报文并无加密要求(但也需防止篡改、伪造和否认)。报文摘要MD(Message Digest,整个报文映射的一个短的位串,是一种单向的散列函数(one-way Hash function)。MD(P)一般是128512比特。为使MD(P)可以充分地代表P,MD算法应具有如下特点:给定一个报文P,容易计算MD(P),但反过来,给定一个报文摘要X,由X找到一个报文
13、P使得MD(P)=X,在计算上是不可行的;若想找到任意两个报文P和P,使得MD(P)=MD(P),在计算上也 是不可行的。,10.3 数字签名和报文摘要,报文认证码MAC(Message Authentication Code)MAC=DSK-A(MD(P)报文摘要算法保证了MD(P)能充分地代表,对报文P来说,同样也起到了数字签名安全性的3个作用,相当于没有加密的数字签名。它却有一个非常明显的优点:仅对短的报文摘要MD(P)而不是对整个报文P进行数字签名,可以大大节省处理时间。MD5,128比特的MAC,散列算法SHA(Secure Hash Algorithm),MAC为160 比特,新版
14、本是SHA-1。,10.3 数字签名和报文摘要,使用报文摘要的数字签名,10.4 身份认证和密钥分发,身份认证简介身份认证(authentication)也称身份鉴别,是识别通信对方身份的技术。身份认证和报文认证有所区别:后者是指对每一个收到的报文的发送者都要认证,而前者是指通过一次通信过程对对方进行一次身份认证,一般是在数据传输前进行认证。简单的认证可以通过用户名和口令实现。但口令是可重用的,容易被攻击者窃听。身份认证系统需要解决的一个重要问题是如何在网上安全地分发密钥。,10.4 身份认证和密钥分发,基于对称密钥的身份认证和密钥分发密钥分发与密钥分发中心网外分发方式 网内分发方式 密钥分发
15、中心KDC(Key Distribution Center):为通信双方生成和分发密钥。基于对称密钥的身份认证和密钥分发机制Needham-Schroeder协议:基于质询-响应(challenge-response)方式。,10.4 身份认证和密钥分发,基于KDC的Needham-Schroeder 身份认证和密钥分发,10.4 身份认证和密钥分发,一次性随机数(nonce,number once):可以防止窃听者利用以前截取的报文进行重放攻击(replay attack)。会话密钥(session key):一次一密,由机器随机产生,一般使用速度快的对称密码体制。基于公钥的身份认证和公钥分
16、发 基于公钥的认证基于如下质询-响应方式:,10.4 身份认证和密钥分发,公钥分发公钥基础设施PKI(Public Key Infrastructure)公钥证书(PK certificate):基本功能就是将一个公钥与安全体的名字绑定在一起。证书中不包含私钥。PKIX基于所谓的证书权威机构CA(Certification Authority)。CA负责生成和签发电子公钥证书。CA用自己的私钥对公钥证书进行数字签名,用户使用CA的公钥验证其他用户证书上CA的签名,以核实证书的有效性。这样,通信双方就可以使用对方证书上的公钥认证对方的身份。,10.4 身份认证和密钥分发,X.509版本3公钥证书
17、结构,10.5 Internet网络安全技术,10.5.1 防火墙10.5.2 网际层安全技术10.5.3 传输层安全技术10.5.4 应用层安全技术,10.5.1 防火墙(firewall),防火墙技术包过滤技术:由包过滤路由器(packet filtering router)实现IP级防火墙。包过滤路由器位于内部和外部网络的连接处,根据IP包的源地址、目的地址、源端口号、目的端口号等对IP包进行过滤,结构和实现简单。只能控制到IP地址和端口级,无法做到用户级的身份认证和访问控制。代理服务技术:由应用网关(application gateway)实现应用级防火墙。通过应用代理服务程序对应用层
18、数据进行安全控制和信息过滤,还有用户级的认证、日志、计费等功能。只能针对特定的应用构建,内部网络通常需要有多个应用网关。,10.5.1 防火墙(firewall),两种防火墙技术可以组合在一起,形成某种结构的火墙系统。防火墙的例子,10.5.1 防火墙(firewall),防火墙系统结构防火墙系统的结构主要分为以下4种:(1)包过滤防火墙(packet filtering firewall)(2)双穴主机网关防火墙(dual-homed gateway firewall)(3)屏蔽主机网关防火墙(screened host gateway firewall)(4)屏蔽子网防火墙(screene
19、d subnet firewall)堡垒主机(bastion host),10.5.1 防火墙(firewall),(1)包过滤防火墙,10.5.1 防火墙(firewall),(2)双穴主机网关防火墙,10.5.1 防火墙(firewall),(3)屏蔽主机网关防火墙,10.5.1 防火墙(firewall),非军事区DMZ(DeMilitarzed Zone):作为一个额外的缓冲区以进一步隔离内部网络和外部网络。企业对外信息服务器,如Web、Email服务器等可放在DMZ,包含重要内部信息的 File和DB服务器等则放在内部网络。,(4)屏蔽子网防火墙,10.5.2 网际层安全技术,IP安
20、全(IPSec)IP协议存在很大的安全隐患:没有提供数据源的认证没有为数据提供强有力的完整性保护 没有为数据提供加密性保护 还存在着针对IP协议的其他攻击 IPSec主要包括以下几个部分:安全协议:认证首部AH(Authentication Header)和封装安全载荷ESP(Encapsulating Security Payload);安全关联SA(Security Association);密钥交换IKE(Internet Key Exchange);认证和加密算法。,10.5.2 网际层安全技术,安全协议AH和ESPAH:提供IP数据报的源站身份认证和完整性校验,但不提供数据报加密。A
21、H对IP数据报(除传输中会发生变化的字段)计算报文摘要后再进行数字签名,即MAC,也称为完整性校验值ICV(Integrity Check Value),ICV存于AH的一个字段中,供对方进行校验。AH标准规定必须支持报文摘要算法MD5和SHA-1。ESP:可以实现IP数据报的源站身份认证和完整性校验,还可以实现数据报的加密。,10.5.2 网际层安全技术,AH和ESP格式,10.5.2 网际层安全技术,IPsec的两种使用模式:传输模式和隧道模式,传输模式中的AH和ESP,10.5.2 网际层安全技术,隧道模式中的AH和ESP,10.5.2 网际层安全技术,安全关联(SA)SA指定进行安全通
22、信的参数。使用AH/ESP之前,要通过密钥交换IKE在通信双方方之间协商建立SA。在它们的安全关联数据库SAD中存储SA的参数。SAD中的SA参数主要有:序号计数器 用于生成AH/ESP首部中的序号;AH认证算法和所需的密钥;ESP认证算法和所需的密钥;ESP加密算法、密钥、初始向量IV;IPSec协议操作模式(传输模式/隧道模式);SA的生存期TTL(Time To Live)。安全策略数据库SPD(Security Policy Database),10.5.2 网际层安全技术,因特网密钥交换(IKE)IKE是自动进行SA的创建、管理和删除的协议。IKE是一个混合型的协议,因特网安全关联和
23、密钥管理协议ISAKMP(Internet Security Association and Key Management Protocol)以及Oakley和SKEME两个密钥交换协议构成了IKE的基础。IKE的密钥协商分为两个阶段:第1阶段:对IPSec对等方进行认证并生成会话密钥供后续使用,在IPSec两个端点生成ISAKMP SA。第2阶段:在ISAKMP SA的保护下,双方协商IPSec 安全服务,建立IPSec SA。,10.5.2 网际层安全技术,DH(Diffie-Hellman)密钥生成算法:生成一个共享密钥,作为会话密钥,用于随后的IKE 数据交换加密。,10.5.3 传输
24、层安全技术,传输层安全协议TLS1.0(Transport Layer Security)TLS有以下特点:使用X.509证书进行身份认证;TLS连接是保密性的;TLS连接是可靠的。TLS协议工作在传输层,在TCP之上,应用层之下。TLS对TCP的安全进行扩充,但不包括UDP。TLS由两层协议组成,上层主要是TLS握手协议,还有密码变更规范协议和报警协议,下层是TLS记录协议。TLS握手协议与密码变更规范协议及报警协议用于建立安全连接,协商记录层的安全参数,进行身份认证和报告错误信息。TLS记录协议使用安全连接,封装高层协议的数据。,10.5.3 传输层安全技术,TLS记录协议的操作,10.5
25、.4 应用层安全技术,安全电子邮件S/MIME(Secure MIME)、PGP(Pretty Good Privacy)和PEM(Privacy-Enhanced Mail),PGP加密过程,10.5.4 应用层安全技术,www安全标准HTTPS是由Netscape公司提出的WWW安全标准,它基于SSL,实际上是HTTP over SSL。SHTTP可以对文档进行加密、完整性校验和数字签名等。通用安全服务API中间件(middleware)实现所有的身份认证、数据加密和访问控制等安全功能,并通过个通用的安全服务应用程序接口向应用程序提供这些安全服务,使得应用程序不作修改就可以使用不同的安全服务。通用安全服务应用程序接口GSS-API(Generic Security Service API),