您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 质量控制/管理 > XXXX第12章安全协议
第12章安全协议主要内容12.1安全协议概述12.2IPsec协议12.3SSL协议12.4安全电子交易协议SET12.1.1安全协议基本概念协议是指两个或多个以上参与者为完成某项特定的任务而采取的一系列步骤。通信协议是指通信各方关于通信如何进行所达成的一致性规则,即由参与通信的各方按确定的步骤做出一系列通信动作,是定义通信实体之间交换信息的格式及意义的一组规则。12.1.1安全协议基本概念安全协议是指通过信息的安全交换来实现某种安全目的所共同约定的逻辑操作规则。网络安全通信协议属于安全协议,是指在计算机网络中使用的具有安全功能的通信协议。12.1.2TCP/IP安全分析由于TCP/IP协议簇在早期设计时是以面向应用为根本目的的,因此未能充分考虑到安全性及协议自身的脆弱性、不完备性,导致网络中存在着许多可能遭受攻击的漏洞。12.1.2TCP/IP安全分析网络层协议的安全隐患IP协议在实现通信的过程中并不能为数据提供完整性和机密性保护,缺少基于IP地址的身份认证机制,容易遭到IP地址欺骗攻击;利用源路由选项;溢出传输层协议的安全隐患TCP协议的安全隐患:服务器端维持大量的半连接列表而耗费一定的资源。序列号可计算UDP协议的安全隐患不确认报文是否到达不进行流量控制不作纠错和重传12.1.2TCP/IP安全分析应用层协议的安全隐患大部分协议以超级管理员的权限运行,一旦这些程序存在安全漏洞且被攻击者利用,极有可能取得整个系统的控制权。许多协议采用简单的身份认证方式,并且在网络中以明文方式传输。12.1.3TCP/IP的安全体系结构SNMPSETX.509PGPIKERIPv2S/MIMETELNETSNMPv3PEMHTTPSBGP-4SSLTLSTCPIPsec(AH)UDPIPsec(ESP)IPPPTPL2TPPPPL2F硬件设备驱动程序及介质介入协议应用层传输层网络层链路层13.2IPsec协议IPsec(IPSecurity)产生于IPv6的制定之中,用于提供IP层的安全性。IPsec(InternetProtocolSecurity,Internet协议安全)通过AH(AuthenticationHeader,验证报头)和ESP(EncapsulatingSecurityPayload,封装安全有效负载)两个安全协议分别为IP协议提供了基于无连接的数据完整性和数据保密性。12.2.1基本概念和术语1.安全关联为了正确封装和提取IPsec的数据包,有必要采取一套专门的方案,将安全服务、密钥等与要保护的通信数据联系在一起,这样的构建方案称为安全关联(SecurityAssociation,SA)。SA是发送者和接收者两个IPsec系统之间的一个单向逻辑连接,若要在一个对等系统间进行源和目的的双向安全通信,则需要两个SA。安全关联SA通过一个三元组(安全参数索引SPI、目的IP地址和安全协议AH或ESP)来唯一标识。实现IPsec必须维护这两个数据库:安全策略数据库:对所有出/入业务应采取的安全策略安全关联数据库:为进入和外出包处理维持一个活动的SA列表12.2.1基本概念和术语2.隧道把一个包封装在另一个新包中,整个源数据包作为新包的有效载荷部分,并在前面添加一个新的IP头。对IPsec而言,IP隧道的直接目标就是对整个IP数据包提供完整的保护。3.Internet安全关联和密钥管理协议InternetSecurityAssociationandKeyManagementProtocol,ISAKMP为Internet环境下安全协议使用的安全关联和密钥的创建定义了一个标准通用框架,定义了密钥管理表述语言通用规则及要求。12.2.1基本概念和术语4.解释域DomainofInterpretation,DOI是Internet编号分配机构IANA给出的一个命名空间。为使用ISAKMP进行安全关联协商的协议统一分配标识符。共享一个DOI的协议从一个共同的命名空间中选择安全协议和密码变换、共享密钥以及交换协议标识符等,从而能使用相同DOI的协议对该DOI下的载荷数据内容做出统一的解释。12.2.2IPsec组成AuthenticationHeader(AH,验证报头)协议定义了认证的应用方法,提供数据源认证和完整性保证;EncapsulatingSecurityPayload(ESP,封装安全有效负载)协议定义了加密和可选认证的应用方法,提供可靠性保证。InternetKeyExchange(IKE,密钥的交换标准)协议。用于密钥交换。1.AH协议AH的工作原理:在每一个数据包上添加一个身份验证报头。此报头包含一个被加密的hash值(可以将其当作数字签名,只是它不使用证书),此hash值在整个数据包中计算,因此对数据的任何更改将导致hash值无效,这样就提供了完整性保护。AH报头位置在IP报头和传输层协议头之间。AH由协议号“51”标识下一个头载荷长度保留安全参数索引序列号认证数据AH报头结构081631(1)下一个头(NextHeader):8位,标识下一个使用IP协议号的报头类型,其取值在RFC1700中定义。(2)载荷长度(PayloadLength):8位,表示以32位为单位的AH头的长度减2。(3)保留(Reserved):16位,供将来使用。值为0。(4)安全参数索引(SecurityParametersIndex,SPI):这是一个为数据报识别安全关联SA的32位伪随机值。(5)序列号(SequenceNumber):从1开始的32位单增序列号,不允许重复,唯一地标识了每一个发送数据包,为安全关联提供反重播保护。(6)认证数据(AuthenticationData,AD):长度可变,但必须是32位的整数倍,默认长度为96位。包含了数据包的完整性校验值ICV。2.ESP协议ESP的作用是提供机密性保护、有限的流机密性保护、无连接的完整性保护、数据源认证和抗重放攻击等安全服务。ESP提供和AH类似的安全服务,但增加了数据机密性保护和有限的流机密性保护等两个额外的安全服务。ESP可以单独使用,也可以和AH结合使用。一般ESP不对整个数据包加密,而是只加密IP包的有效载荷部分,不包括IP头。但在端对端的隧道通信中,ESP需要对整个数据包加密。ESP数据包格式认证覆盖范围保密性覆盖范围08162431安全参数索引认证数据下一个头序列号载荷数据(变长)填充项填充项长度(1)安全参数索引(SPI):32位整数。它和IP头的目的地址、ESP协议一起用以唯一标识对这个包进行ESP保护的SA。(2)序列号(SequenceNumber):从1开始的32位单增序列号,不允许重复,唯一地标识了每一个发送数据包(3)载荷数据:长度不固定,所包含的是由下一个头字段所指示的数据(如整个IP数据包、上层协议TCP或UDP报文等)(4)填充项(Padding):如果加密算法要求明文是某个数字的整数倍,则通过填充可将明文扩充到所需要的长度。另外,通过填充可以隐藏载荷数据的实际长度,从而对流量提供部分的保密性。(5)填充项长度(PaddingLength):8位,表明填充项字段中填充以字节为单位的长度。(6)下一个头(NextHeader):识别下一个使用IP协议号的报头,如TCP或UDP。(7)认证数据(AuthenticationData):长度不固定,存放的是完整性校验值ICV。3.IKE协议IKE的基础是ISAKMP,Oakley和SKEME三个协议,它沿用了ISAKMP的基础,Oakley的模式以及SKEME的共享和密钥更新技术。使用了两个交换阶段,阶段一用于建立IKESA,阶段二利用已建立的IKESA为IPsec协商具体的一个或多个安全关联,即建立IPsecSA。IKE允许四种认证方法,分别是基于数字签名的认证、基于公钥加密的认证、基于修订的公钥加密的认证和基于预共享密钥的认证。12.2.3IPsec的工作模式传输模式采用传输模式时,原IP数据包的首部之后的数据会发生改变,通过增加AH或ESP字段来提供安全性,但原IP首部不变。AH传输模式ESP传输模式隧道模式隧道模式的保护对象是整个IP包。在AH或ESP字段加入到IP分组后,还要加上一个新的首部,原数据包加上安全字段成为新数据包的载荷,因此得到了完全的安全性保护。AH隧道模式ESP隧道模式AH传输模式下IPv4封包:IP头TCP/UDP头数据原IP头数据AH头TCP/UDP头除变长字段外都要认证AH传输模式原IPv4封包:ESP传输模式下IPv4封包:ESP传输模式原IPv4封包:IP头TCP/UDP头数据原IP头数据ESP头TCP/UDP头ESP尾部ESP认证数据加密认证除新IP头变长字段外都要认证AH隧道模式原IPv4封包:IP头TCP/UDP头数据AH传输模式下IPv4封包:新IP头AH头原IP头TCP/UDP头数据ESP传输模式下IPv4封包:ESP隧道模式原IPv4封包:IP头TCP/UDP头数据新IP头数据ESP头ESP尾部ESP认证数据加密认证原IP头TCP/UDP头12.2.4IPsec的应用目前IPsec最主要的应用就是构建安全的虚拟专用网。虚拟专用网(VirtualPrivateNetwork,VPN)是一条穿过公用网络的安全、稳定的隧道。通过对网络数据的封包和加密传输,在一个公用网络(通常是因特网)建立一个临时的、安全的连接,从而实现在公网上传输私有数据,达到私有网络的安全级别。基于IPsec的VPNHTTPTelnetSMTPFTPSSLTCPIP12.3SSL协议SSL协议是一个传输层安全协议。SSL协议由Netscape公司于1994年11月提出并率先实现,即SSLV2.0Internet-Draft版本1996年3月推出了SSLV3.0Internet-Draft版本,最终被IETF所采纳,并制定为传输层安全标准。工作在传输层之上,应用层之下,其底层是基于传输层可靠的流传输协议(如TCP)SSL安全协议主要提供三方面的服务客户和服务器的合法性认证加密数据以隐藏被传送的数据保护数据的完整性SSL安全通信过程(1)接通阶段:客户机通过网络向服务器打招呼,服务器回应;(2)密码交换阶段:客户机与服务器之间交换双方认可的密码,一般选用RSA密码算法,也有的选用Diffie-Hellmanf和Fortezza-KEA密码算法;(3)会谈密码阶段:客户机与服务器间产生彼此交谈的会谈密码;(4)检验阶段:客户机检验服务器取得的密码;(5)客户认证阶段:服务器验证客户机的可信度;(6)结束阶段:客户机与服务器之间相互交换结束的信息。SSL协议的分层结构SSL协议具有两层结构,其底层是SSL记录协议层(SSLRecordProtocolLayer),简称记录层。其高层是SSL握手协议层(SSLHandshakeProtocolLayer),简称握手层。应用层协议(HTTP、Telnet、FTP、SMTP等)SSL握手协议(HandshakeProtocol)SSL记录协议(RecordProtocol)TCP协议IP协议SSL协议会话与连接Connection(连接):一个在传输层协议上的传输媒介,它提供一个适当的服务。连接建立在会话的基础上,每个连接与一个会话相关联,并对应到一个会话。Session(会话):SSL会话建立客户与服务器之间的一个关联(Association)。每一组客户端与服务器之间就是一个SSLsession。这些会话定义一组以密码为基础的安全性参数,这些参数能够由多个连接来共同使用。连接1连接1……连接2……连接n连接2连接n会话SSL握手协议Handshake协议用来让客户端及服务器确认彼此的身份。协助双方选择连接时所使用的加密算法、MAC算法、及相关密钥。Handshake由一些客户与服务器交换的消息所构成,每一个消息都含有以下三个字段:类型(Type),1个字节:表示消息的类型,总共有十种。长度(Length),3个字节:消息的位组长度
本文标题:XXXX第12章安全协议
链接地址:https://www.777doc.com/doc-1250808 .html