第九章安全通信协议与交易协议9.1IPV6安全9.2安全套接层协议(SSL)9.3安全电子交易协议(SET)9.1IPV6安全IPV4的局限性:IPv4协议是我们目前正在使用的IP协议IPv4地址空间危机位数32位,可用地址仅232(约40多亿)网络安全没有考虑到网络层的安全性IPV4地址空间危机IPV6的发展历程1992年,Internet工程任务组(IETF)成立IPng工作组:IP–TheNextGeneration;1994年,IPng工作组提出了IPng的草案;1995年,IPng工作组确定了IPng的协议规范,称为“IP版本6”(IPv6);1995-1999年完成了IETF要求的协议审定和测试,IPv6的协议文本成为标准草案。IPV6的主要特点扩展的地址空间:地址长度由32位扩展到128位;简化了报头格式;安全特性的支持:IPSec(IPSecurity);自动配置特性;对移动特性的支持。IPV6的地址地址的写法使用点分十进制104.230.140.100.255.255.255.255.0.0.17.128.150.10.255.255使用冒号16进制的写法68E6:8c84:FFFF:FFFF:0:1180:96A:FFFFIPV6和IPV4报文比较IPv4PDUminimum20octetsmaximum65535octetsIPv4HeaderDataFieldFixed40octetsmaximum65535octetsIPv6PDU0ormoreTransport-levelPDUIPv6HeaderExtensionHeaderExtensionHeader20Octets+Options:13字段,包括3个标志位flags0bits31VerIHLTotalLengthIdentifier32bitSourceAddress32bitDestinationAddress482416ServiceTypeOptionsandPaddingTimetoLiveHeaderChecksumFlagsFragmentOffset删除字段Protocol改动字段IPV4的报头40Octets,8fieldsIPV6的报头031VersionTrafficClassFlowLabelPayloadLengthNextHeaderHopLimit128bitSourceAddress128bitDestinationAddress4122416DestinationAddressSourceAddressVerIHLServiceTypeIdentificationFlagsOffsetTTLProtocolHeaderChecksumSourceAddressDestinationAddressOptions+PaddingTotalLengthVerFlowLabelPayloadLengthNextHeaderHopLimitTrafficClass32bitsIPv4PacketHeaderIPv6PacketHeaderIPV6和IPV4报头比较IP安全标准IPSecIPSec(IPSecurity)是IPv6的一个组成部分IPSec在网络层上提供安全服务弥补IPv4在协议设计时缺乏安全性考虑的不足IPSec提供的两种安全机制认证——使IP通信的数据接收方能够确认数据发送方的真实身份以及数据在传输过程中是否被篡改加密——对数据进行加密来保证数据的机密性IPSec在IPV6中是强制的,在IPV4中是可选的IPSecurity示意图IP安全标准IPSecIP网络层的要求:认证性、完整性和机密性IPSec的基本要素:认证协议头(AH)封装安全载荷(ESP)互联网密钥管理协议:SA、IKE安全关联(SA)SA(SecurityAssociation)是发送者和接收者两个IPSec系统之间的一个简单的单向逻辑连接,是一组与网络连接相关联的安全信息参数集合,用于实现安全策略;因为SA是单个方向的,所以,对于一个双向通信,则需要两个SA。每个SA通过三个参数来标识安全参数索引SPI(SecurityParametersIndex)目标地址IP安全协议标识认证协议头(AH)AH(AuthenticationHeader)为IP包提供的功能数据完整性认证功能认证算法由SA指定认证的范围:整个包两种认证模式:传输模式:不改变IP头,插入一个AH隧道模式:生成一个新的IP头,把AH和原来的整个IP包放到新IP包中封装安全载荷(ESP)ESP(EncapsulatingSecurityPayload)提供保密功能,也可以提供认证服务将需要保密的用户数据进行加密后再封装到IP包中,ESP只认证ESP头之后的信息认证算法也由SA指定也有两种模式:传输模式和隧道模式IPSec的模式IPSec使用的模式:传输模式隧道模式9.2安全套接层协议(SSL)SSL(SecureSocketLayer)协议的产生背景HTTP协议缺少安全保障SSL提供数据加密、数据完整性和认证机制SSL协议的发展历程1994年,Netscape开发了SSL协议,专门用于保护Web通讯,SSL1.0,不成熟SSL2.0,基本上解决了Web通讯的安全问题SSL3.0,1996年发布,增加了一些算法,修改了一些缺陷安全套接层协议(SSL)SSL协议的设计目标SSL协议被设计用来使用TCP提供一个可靠的端到端安全服务为两个通讯个体之间提供保密性和完整性SSL协议的使用使用SSL协议的浏览器:Netscape的Navigator微软的InternetExplorerInternetExplorer中的SSL设置SSL的体系结构协议分为两层底层:SSL记录协议上层:SSL握手协议、SSL密码变化协议、SSL警告协议SSL提供的服务身份认证用数字证书实现的服务器认证(防止冒名顶替)保密性加密传输信息(防止窃听)数据完整性保证数据信息完整性(防止对数据的损坏)9.3安全电子交易协议(SET)SET(SecureElectronicTransaction)协议的产生背景电子商务交易的广泛应用需要保护Internet上信用卡交易的安全性SET协议的发展历程1995年,VISA和MasterCard两大信用卡公司联合推出SET协议SET协议得到了IBM、Netscape、Microsoft、Oracle、VeriSign等公司的支持安全电子交易协议(SET)SET协议的设计目标SET主要为了解决用户、商家和银行之间通过信用卡支付的交易而设计。SET协议的要求支付信息的机密订单信息和个人帐号信息的隔离商户及持卡人的合法身份互可操作性购物者商家支付网关银行发卡行认证中心1定单及信用卡号6确认认证认证认证5确认2审核3审核4批准使用SET进行银行卡支付交易的工作流程使用SET进行银行卡支付交易的工作流程客户商家服务器$银行支付网关发卡机构Internet信息浏览订单/支付信息处理订单/支付信息结算和支付信息支付和授权信息确认授权商品和服务信息发布/订单处理/支付管理/货款结算付款卡管理和确认信息浏览订单/支付信息处理协议转换和数据接口安全及鉴别管理SET的安全技术消息摘要——是一个唯一对应一个消息或文本的值,它由哈希(Hash)加密算法对一个消息摘要生成一串密文,由此验证消息在传输过程中没有被修改。数字签名——SET中使用RSA算法来实现数字签名,保证发送者对所发信息不能抵赖。数字信封——在SET中使用对称密钥来加密数据,然后将此对称密钥用接收者的公钥加密,称为消息的“数字信封”,将其和数据一起送给接收者。双重签名——SET要求将订单信息和个人信用卡账号信息分别用商家和银行的公钥进行数字签名,保证商家只能看到订货信息,而银行只能看到账户信息。SET和SSL协议的比较安全套接层(SSL)协议提供了两个端点之间的安全链接,能对信用卡和个人信息提供较强的保护;SSL协议被大部分Web浏览器和web服务器所内置,比较容易被应用。SET协议比SSL协议复杂,在理论上安全性也更高,因为SET协议不仅加密两个端点间的连接,还可以加密和认定三方的多个信息,而这是SSL协议所未能解决的问题。SET标准的安全程度很高,它结合了数据加密标准DES、RSA算法和安全超文本传输协议,为每一项交易都提供了多层加密。SET和SSL协议的比较SET与SSL相比主要有以下4个方面的优点:(1)SET对商家提供了保护自己的手段,使商务免受欺诈的困扰,使商家的运营成本降低。(2)对消费者而言,SET保证了商家的合法性,并且用户的信用卡号不会被窃取。(3)SET使得信用卡网上支付具有更低的欺骗概率,使得它比其他支付方式具有更大的竞争力。(4)SET对于参与交易的各方定义了互操作接口,一个系统可以由不同厂商的产品构筑。SET的主要缺陷:SET协议过于复杂,对商户、用户和银行的要求比较高;处理速度慢,支持SET的系统费用较大。