(计算机系统结构专业论文)基于ipsec的安全传输平台的研究.pdf_第1页
(计算机系统结构专业论文)基于ipsec的安全传输平台的研究.pdf_第2页
(计算机系统结构专业论文)基于ipsec的安全传输平台的研究.pdf_第3页
(计算机系统结构专业论文)基于ipsec的安全传输平台的研究.pdf_第4页
(计算机系统结构专业论文)基于ipsec的安全传输平台的研究.pdf_第5页
已阅读5页,还剩61页未读 继续免费阅读

(计算机系统结构专业论文)基于ipsec的安全传输平台的研究.pdf.pdf 免费下载

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

文档简介

华中科技大学硕士学位论文 摘要 作为一种广泛应用的安全传输平台,实施于传输层之上的t l s s s l 协议在抗攻 击、身份保护、完美向前保密等方面存在着诸多安全性问题,其中有协议设计的缺陷, 也有安全实施层次过高的因素;而在更低的网络层上实施的i p s e c 协议具有完备的安 全特性,应用程序却无法直接使用i p s e c 的安全特性。在综合两者优点的基础上力本 文提出了基于 s e e 安全传输平台的新体系结构。 针对i p s e c 现有的本地实施和网关实施框架,提出了基于i p s e c 的安全传输平台 的总体框架和模块结构,使之能够和现有的基于i p s e c 的v p n 系统并存。在分析了 w i n d o w s 网络体系结构和n d i s 规范,以及总结了应用程序的安全需求的基础上,利 用n d i s 中间层驱动程序框架,设计并实现了一个w i n d o w s 下的i p s e c 本地实施的原 型:i p s e c a p i 。 , 在实现中,针对p 包分片,p m t u 的发现,对n a t 的支持等方面的难题提出了 更优的解决方案;为满足应用层调用的灵活性要求,扩展了i k e 在n a t 发现、匿名 验证和动态算法更新等方面的功能。 将用户间的认证关系和它们之间的通信连接紧密的结合起来,提出了会话和连接 的概念,同时获得了安全性和高效性;摒弃了效率低下的阻塞式接1 2 1 调用模型,设计 了一套调用和事件通知相结合的接口模型,使程序设计更高效直观。7 最后,对i t s e ca p i 在吞吐率和协商时延上的性能特性进行了测试和分析,并与 0 p e n s s l 进行了比较,结果表明 p s e c a p i 和o p e n s s l 在性能上基本相当。 f 通过安全性分析、模型设计和原型的实现,证明了基于i p s e c 的安全传输平台这 种新结构不仅在理论上安全性更高,在实践上也是完全可行的,有着广泛的应用前景。4 关键词:安全传输平台? i p s e c ;s s l :t l s ;v p n :安全性评 华中科技大学硕士学位论文 a b s t r a c t a sad o p u l a rs e c u r et r a n s p o r tp l a t f o r m ,t h et l s s s lp r o t o c o li m p l e m e n t e da b o v e t r a n s p o r tl a y e rh a ss e c u r i t yd e f i c i e n c i e si na n t i a t t a c k ,i d e n t i t yp r o t e c t i o n ,p e r f e c tf o r w a r d s e c r e t ,e ta l ,p a r to fw h i c ha r ea t t r i b u t e dt oi m p e r f e c t i o no f t h ep r o t o c o ld e s i g n ,p a r to f w h i c ha r ed e r i v e df r o mt h et o oh j i 曲s e c u r i t y - e n f o r c e dl a y e r ;t h ei p s e ci m p l e m e n t e di n l o w e rn e t w o r kl a y e ri sf e a t u r e dw i t hc o m p l e t es e c u r i t yc o n s i d e r a t i o n ,b u td o e sn o tp r o v i d e t h e s e c u r i t y a w a r e da p p l i c a t i o n s w i t h f i n e g r a i n e ds e c u r i t y i n t e r f a c e t h u san e w i p s e c b a s e ds e c u r et r a n s p o r tp l a t f o r mi sp r o p o s e d a ni n f r a s t u r c t u r ea n dm o 血l a rs t r u c t u r eo fi p s e c b a s e ds e c u r et r a n s p o r tp l a t f o r mi s d e s i g n e d w h i c h i sc o m p a t i b l ew i t he x i s t e de v i r o n m e n to fi p s e ce n f o r c e m e n t :碑s e ev p n a t i e ra n a l y s i n gt h ew i n d o w sn e t w o r ka r c h e c t u r ea n dt h en d i s ( n e t w o r kd e v i c ei n t e r f a c e s p e c i f i c a t i o n ) ,ap r o t o t y p e ,i p s e ca p i ,h a sb e e ni m p l e m e n t e d u n d e rw i n d o w so s ,u s i n g t h ef r a m e w o r ko f n d i si n t e r m e d i a t ed r i v e r d u r i n gt h ei m p l e m e n t a t i o n ,b e t t e r s o l u t i o n sh a v eb e e n p r o v i d e d t ot h ep u z z l e ss u c ha s i pf r a g m e n t a t i o n p m t ud i s c o v e r y , a n dn a t c o m p a t i b i l i t y :江f u n c t i o n s h a v eb e e n e x t e n d e di na u t o m a t i cn a t a g r e e m e n t ,a n o n y m o u sa u t h e n t i c a t i o n ,a n dd y n a m i ca l g o r i t h m c h a n g ei no r d e r t os a r i s f ym o r ef l e x i b l er e q u i r e m e n t so f u p p e r a p p l i c a t i o n s t ob i n dt h et r u s tr e l a t i o n s h i p sb e t w e e nu s e r sw i t ht h e i rf o l l o w i n gc o m u n i c a t i o n ,t w o c o n c e p t s ,s e s s i o na n dc o n n e c t i o n ,h a v eb e e nc r e a t e d ,r e c o n c i l i n gt h ec o n 仃a d i c f i o n b e t w e e n s e c u r i t ya n de f f i c i e n c y d i s c a r d i n gt h eb l o c k i n gc a l l i n t e r f a c em o d e l ,ac a l f n o t i f i c a t i o n i n t e r f a c em o d e lh a sb e e nd e s i g n e da n di m p l e m e n t e di n s t e a dt oa c h i e v em o r ee f f i c i e n ta n d i n t u i t i v ep r o g r a m m i n g f i n a l l y , b ye x p e r i m e n t i n ga n da n a l y s i n go n s e ca p i st h r o u g h p u ta n da g r e e m e n t l a t e n c y , i nc o m p a r i s o n w i t h o p e n s s l ,i t i sf o u n dt h a ti p s e ca p i so v c r h e a do n p e r f o r m a n c ei sr e a s o n a b l e a sac o n c l u s i o n , t h i sn e wa r c h i t e c t u r eo fi p s e c - b a s e ds e c u r et r a n s p o r t p l a t f o r mp r o v e s t ob em o r es e c u r ei nt h e o r ya n df e a s i b l ei np r a c t i c e ,t h e r e f o r em a yb et h en e x t g e n e r a i o n s e c u t et r a n s p o r tp l a t f o r mi nn e a rf u t u r e n 华中科技大学硕士学位论文 k e yw o r d s :s c c u r et r a n s p o r tp l a t f o r m ;i p s c c ;s s l ;t l s ;v p n ;s e c u r i t y e v a l u a t i o n i i l 华中科技大学硕士学位论文 1 1 课题背景 1 1 1 传统安全传输平台的缺陷 1 绪论 传统的安全传输平台往往是建立在传输层以上,在应用层和传输层之间插入一 层安全增强层,提供身份验证,以及通信数据的加密和完整性检查。这种实施方式 中最典型的一个例子就是s s l 。 s s l 【1 4 】( s e c u r es o c k e tl a y e r , 安全套接字层) 是由n e t s c a p e 公司提出的在传输 层之上保护通信双方安全通信的协议,现在的版本是3 0 。i e t f ( i n t e r n e te n g i n e e r i n g t a s k f o r c e ,因特网工程任务组) 在s s l v 3 0 的基础上提出了t l s 【5 j ( t r a n s p o r tl a y e r s e c u r i t y ,传输层安全) 标准。t l s 和s s lv 3 0 很相似,但并不兼容。因此,在这 里将t l s 和s s l 放在一起来讨论。 t l s s s l 为用户层提供了一个安全的传输层接口,通过使用安全接口,应用程 序就可以获得通信的双方的身份验证、密钥交换和通信的安全性和完整性保护。 t l s s s l 被广泛用于w e b 系统和其他安全应用程序的开发,为它们提供安全性保 障。如图1 1 所示。 应用程序 t l s s s l s o c k e t t c p lu d p i f 用户态 核心态 围1 1t l $ s s l 在协议栈中的位置 华中科技大学硕士学位论文 t l s s s l t l s s s l 随着的广泛应用,人们开始意识到了 在安全性上的缺陷,有 一些是由于协议设计的不完善造成的,如不支持完美向前保密、身份保护、抗攻击 能力差;而另一些是由于安全实施的层次太高,无法避免攻击者针对传输层进行攻 击,如针对t c p 的s y nf l o o d i n g 攻击、序列号猜测攻击,和流量分析攻击。 t l s s s l 的安全性问题会在第二章得到详细的论述。 为了从根本上解决t l s s s l 的安全性问题,就需要在更低的层次上实施安全性 保障。在传输层以下,有网络层和数据链路层( 物理层不予考虑) 。数据链路层由于 涉及的是点到点的通信,安全的实施会涉及到通信经由的每个节点,很难扩展。因 此实施通信安全的最佳层次是网络层。 1 1 2 现有v p n 体系对应用的支持不足 v p n 6 q 4 1 是通过实现跨越公网的安全通道,连接远地的子网和客户机,来构建一 个虚拟的安全网络。现有的协议包括i p s e c 1 5 】协议、l 2 t p 1 6 】协议、p p t p 1 7 1 协议等。 其中i p s e c 协议以完整的安全性保护得到了大多数专家和使用者的认可,成为了今 后构建v p n 的主要协议。 在v p n 体系中,管理员为每个v p n 主机或网关配置具体的安全策略,例如本 机的某端口和某个子网的所有网络流量需要加密。因此某些应用程序通过管理员配 置的特定策略可以透明地获得安全性保护。但是,v p n 的实现方案不能适合于所有 的安全应用,因为: 第一,管理员配置的策略缺乏灵活性。管理员不可能考虑到所有安全应用的安 全需求,而且由于策略配置和应用程序是隔离的,因此应用程序不可能在运行时向 v p n 提出它的安全需求。 第二,无法提供用户级的认证。v p n 的认证是主机级( 或子网级) 的,即它可 以确认远程的通信主机( 或安全网关) 是真实可信的,而安全应用程序往往需要用 户级的认证。由于一台通信主机可以有多个用户在同时使用,因此v p n 无法提供用 户级的认证。 第三,v p n 现在而言只是作为一个私有系统,各个厂家的v p n 产品还很难实现 互连,即使它们可能都使用相同的安全协议( 如i p s e c ) 来实现v p n 。因此,v p n 无法提供公开的安全服务,例如网上交易等。 华中科技大学硕士学位论叉 这就会导致安全应用程序仍然会使用传输层的安全接口( 如。i l s s s l 协议米保 证通信双方的身份验证、通信的机密性和完整性,从而出现v p n 安全实施和传输层 安全实施共存的情况。这是资源的重复设置和浪费。 这就有必要利用网络层的安全实施为用户提供接口,使上层应用和网络层的安 全实施之间有所交互,来满足上层应用对用户级认证和用户间的安全通信的需求。 1 1 3 基于i p s e c 的安全传输平台的提出 在上面对传统安全传输平台和现有v p n 体系的分析中都显示了在网络层进行安 全实施并为上层应用提供可编程接口的需求。那么新的安全体系就如图1 2 所示。 应用 图1 2 基于网络层安全服务的安全体系 图1 2 中,在引入了网络层安全接口之后,一部分应用程序像以前一样通过网络 层的透明安全性获得安全服务,还有一部分应用程序通过网络层提供的安全接口, 请求相应的安全服务( 这部分的应用在现阶段往往是通过调用s s l t l s 等传输层安 全服务接口获得安全服务的) 。这样既充分利用了现有v p n 的实旖框架,解决了v p n 在应用中的局限性,又解决了传输层安全实施的安全性缺陷。 由于i p s e c 成为了专家和使用者公认的网络层的安全协议,所以利用和实现 i p s e c 的安全功能,为上层应用实现端到端的安全通信接口,实现网络层安全和应 用层安全的无缝连接,就成了本文的主要研究内容。在此,我将这套安全接口命名 为i p s e ca p i ( 网络层安全应用程序编程接口) 。 3 华中科技大学硕士学位论文 1 2 国内外概况 1 2 1t l s s s l 对t l s s s l 协议有很多种不同的实现,其中应用最广泛的是o p e n s s l 【l ,它是 由自愿者开发的一套源代码公开的工具集。它被广泛的应用于w e b 服务器系统, 例如a p a c h e 。o p e n s s l 是一套工具集,因此它不仅实现了t l s s s l 协议,为应 用程序提供安全通信功能,而且还包括加密函数库、证书管理库、控制台等模块。 它为安全应用程序的编写提供了一个很好的开放性平台。 s s l 硬件加速器。由于t l s s s l 的加解密运算会占用大量的c p u 计算周期, 在服务器端t l s s s l 的计算能力就成了整个系统的瓶颈,为了提高性能,许多厂家 生产出了s s l 的硬件加速器,将s s l 加解密运算交给专用硬件处理,使c p u 可以 处理其它的计算任务,从而提高整个系统的性能。s s l 硬件加速器包括m m 的 e - b u s i r e s sc r y p t o g r a p h i ca c c e l e r a t o r 、s u n 公司的c r y p t oa c c e l e r a t o rlb o a r d 等。 1 2 2i p s e cv p n 目前国内外已有多家厂商开发出了基于i p s e c 的v p n 产品。如:b a y 公司的v p n 产品主要是b a yc o n t i v i t ye x t r a n e ts w i t c h ,该产品采用r s a 数字签名和r a d i u s 认证方式,使用的是d e s 、3 d e s 加密算法和h m a c s h a l 、h m a c - m d 5 摘要算法,提供 多种管理方式,同时还具有c a p 、r s v p 等q o s 服务。n e t s c r e e n 公司的基于i p s e c 的v p n 产品,加密算法为d e s 和3 d e s ,摘要算法为m d 5 ,密钥交换为i k e ,同时基 于p k ix 5 0 9 证书作为身份认证的手段。此外,c h e c kp o i n t 公司的f i r e w a l l i 系列 产品、c i s c o 公司和i n t e l 公司等都有相关的v p n 产品或功能。 为了能够是用于更多的应用环境,i p s e cv p n 产品开始向管理的方便化、灵活 性、更多的验证方式,以及移动设备支持等方面发展 1 9 - 2 2 】。s s h 公司的s e n t i n e lv p n 客户端以及i p v i a v p n 安全网关支持证书、预共享密钥、r a d i u s 、i k e x a u t h 、c h a p 等多种认证方式,并且可以通过一个中心策略服务器分发策略,是用户既可以进行 高级复杂的配置,直接从策略服务器获取策略。i m p e r i t o 公司开发的i n s r a n tv p n 可 以通过数据中心( d a t ac e n t e r ) 对策略进行统一的配置,对v p n 进行集中管理,网 关和客户端v p n 程序的分发采用邮件方式,因此配置和安装都相当灵活。另外这些 4 华中科技大学硕士学位论文 i pn a t 产品往往都支持动态 的分配,支持,因此适压各种复杂阴恻络情况。随看 移动通信的兴起,各种移动设备连接i n t e m e t 成为今后发展的趋势,将v p n 应用到 移动设备当中,以解决移动通信安全的问题,引起了普遍的关注。 在国内外的针对传输层的安全协议以及v p n 的研究中,主要还是在如何使用现 有的安全协议来满足各种各样的安全需求。本文的设计思路在国内外暂时还没有相 近的或者可比的研究。 1 3 课题主要研究工作 本课题的主要研究工作包括: 首先,要深入分析t l s i s s l 和i p s e c 协议在安全特点,并进行比较,着重分析 t l s s s l 协议在那些方面有安全性缺陷,而i p s e c 在这方面作了那些改进。 要分析i p s e c 在现有的v p n 实施中的实旅环境和结构,并在继承现有v p n 中 的i p s e c 实施结构的基础上,设计基于口s e c 的安全传输平台的总体框架和模块结 构。 最后,在w i n d o w s 环境中实现一个基于口s e c 的安全传输平台的原型,并对性 能进行简单的测试和分析,和传统的基于s s l 的安全传输平台的性能进行比较,对 结果进行比较和分析。 华中科技大学硕士学位论文 2t l s s s l 和i p s e e 协议的安全性研究分析 本章对t l s s s l 和i p s e c 协议进行深入分析,然后针对各种安全性问题对两者 进行比较,得出一个总体的分析结论。 2 1s s l ( 和t l s ) 协议的研究和安全性分析 2 1 1s s l 的结构 s s l 分为两层,低层是s s l 记录协议层( t h es s l r e c o r dp r o t o c o ll a y e r ) ,高层 是s s l 握手协议层( t h es s lh a n d s h a k ep r o t o c o ll a y e r ) 。握手层允许通信双方在应 用协议传送数据之前相互验证、协商加密算法、生成密钥( k e y s ) 、s e c r e t s 、初始向 量( i v s ) 等。记录层封装各种高层协议,具体实施压解压缩、:j i 解密、计算校验 m a c 等与安全有关的操作。 2 1 2s s l 中的状态 2 1 。2 1 待定状态和当前操作状态 握手层协议协商的结果何时对记录层生效? 客户和服务器如何协调起来同时实 施新的协商结果? 这些工作主要靠s s l 中定义的状态和握手协议中的某些特殊消息 来实现。 1 待定状态和当前操作状态。 s s l 用两个状态有效实现了握手协议的协商结果对记录层生效。 待定状态( t h ep e n d i n gs t a t e ) 包含了当前握手协议协商好的压缩、加密、摘 要算法以及密钥等。 当前操作状态( t h ec u r r e n to p e r a t i n gs t a t e ) 包含了记录层正在实施的压缩、 华中科技大学硕士学位论文 加密、摘要算法以及密钥等。 2 读状态和写状态 客户和服务器都有各自独立的读状态( r e a ds t a t e ) 和写状态( w r i t es t a t e ) 。 读状态中包含解压、解密、验证摘要的算法和解密密钥等:写状态中包含压缩、加 密、计算m a c 的算法和解密密钥等。客户f i e 务器接收到c h a n g ec i p h e rs p e c 消息 后,立即把待定读状态中的内容拷贝进当前读状态:客户朋艮务器在发送了c h a n g e c i p h e rs p e c 消息后,立即把待定写状态中的内容拷贝进当前写状态。 2 1 2 2会话状态和连接状态 一个s s l 连接( c o n n e c t i o n ) 是指提供一种合适的服务的传送。个s s l 连接 是瞬时的。每个s s l 连接与一个s s l 会话关联。一个s s l 会话( s e s s i o n ) 是指客户 和服务器间的一个关联。会话由握手协议创建,它定义了一套安全加密参数 ( c r y p t o g r a p h i cs e c u r i t yp a r a m e t e r s ) 。这套加密参数可被多个连接共享。 1 会话状态 会话状态( t h es e s s i o ns t a t e ) 包含了标识会话特征的信息和握手协议的协商 结果等。客户和服务器都需要记住已建立的会话的状态。会话状态包括如下元素: 会话i d ( s e s s i o ni d e n t i f i e r ) 、同等实体证书、压缩算法、密码选择( c i p h e rs p e c ) 、 主秘密( m a s t e rs e c r e t ) 、是否可恢复标志。 其中c i p h e rs p e c 和m a s t e rs e c r e t 组成一个安全会话的主要加密参数,c i p h e r s p e c 包括握手协议协商好的加密算法、m a c 算法、h a s h 长度、密钥长度、初始向量 长度等加密参数。 2 连接状态 连接状态( t h ec o n n e c t i o ns t a t e ) 包含了客户和服务器在传输数据过程中使 用的密钥、s e c r e t s 、初始化向量( 1 v s ) 、随机数等。客户和服务器只需在一个连接 存在时记住这个连接的连接状态。连接状态包括如下元素:服务器随机数和客户随 机数、服务器写摘要s e c r e t 、客户写摘要s e c r e t 、服务器写密钥、客户写密钥、 初始向量、序列号。 s s l 使用两个相互独立的1 2 8 位的密钥,即服务器写密钥和客户写密钥,分别用 于两个方向的m 解密:使用两个相互独立的1 2 8 位摘要s e c r e t s ,即服务器写摘要 s e c r e t 、客户写摘要s e c r e t ,分别用于两个方向的摘要操作。 7 华中科技大学硕士学位论文 2 1 3 记录层( t h es s lr e c o r dp r o t o c o il a y e r ) 记录层位于s s l 的其它层次以下 压缩、生成摘要和加密等一系列工作 接收它们的数据,在发送前对其进行分段、 接收时则作相反的处理。工作过程如下: 1 发送方的工作过程 从上层接收要发送的信息( 包括各种消息和数据) ; 将信息分段成记录: 用当前会话状态中指定的压缩算法压缩数据( 此步可选) : 用当前c i p h e rs p e c 中指定的摘要算法生成摘要; 用当前c i p h e rs p e c 中指定的加密算法加密数据; 发送数据。 2 接收方的工作过程 接收数据; 用当前c i p h e rs p e c 中指定解密算法解密数据: 用当前c i p h e rs p e c 中指定的摘要算法校验摘要: 用当前会话状态中指定的压缩算法对数据解压缩( 视发送方压缩与否而定) 数据重组: 将信息送给高层。 2 1 4 握手层( t h eh a n d s h a k ep r o t o c o il a y e r ) 握手层的作用是协商一个安全的密码选择( c i p h e rs p e c ) 和生成密钥( k e y s ) 、 秘密( s e c r e t s ) 、初始化向量( i v s ) 等。该层有4 类协议:c h a n g ec i p h e rs p e c p r o t o c o l 、a l e r tp r o t o c o l 、a p p l i c a t i o nd a t ap r o t o c o l 和h a n d s h a k ep r o t o c o l , 其中前三类协议需要用当前连接状态中指定的算法压缩、计算n i a c 、加密等:而 h a n d s h a k ep r o t o c o l 用明文传送。 2 1 4 1 c h m n g ec i p h e rs p e cp r o t o c o 该协议的作用:通知加密策略的改变。通知接收方即该消息后发送的记录层将 采用握手协议刚协商好的算法、密钥等进行压缩、计算m a c 和加密。 华中科技大学硕士学位论文 2 i 4 2a i e r rp r o t o c o i a 1 e r t 协议的作用:当通信过程中出错或发生异常情况时给出警告或终止连接。 a l e r t 消息根据消息的严重程度分为w a r n i n ga l e r t 消息和f a t a la l e r t 消息两类。 f a t a la l e r t 消息导致立即终止连接,并将与这个连接相关联的会话的s e s s i o ni d 作废,以免这个会话被继续用来建立连接。 2 i 4 3 a p p ii c a t i o nd a t ap r o t o c o 应用数据( a p p l i c a t i o nd a t a ) 指从应用层来的信息,对记录层是透明的。 a p p l i c a t i o nd a t a 消息在记录层被分段、压缩、加密。 2 1 4 4h a n d s h a k ep r o t o c o 会话状态中的加密参数由握手协议产生,它位于记录层之上。当客户端和服务 器开始通信之前,他们必须在协议版本上取得一致,选择密码算法,可选择的验证 对方,并且使用公钥加密技术产生共享秘密。 握手协议包括了以下步骤: 1 ) 交换h e l l o 消息,协商算法,交换随机数等; 2 ) 交换必须的加密参数使客户端和服务器获得一致的预主秘密( p r e m a s t e r s e c r e t ) ; 3 ) 交换证书和密码信息,让客户端和服务器相互认证: 4 ) 从预主秘密( p r e m a s t e rs e c r e t ) 和交换的随机数中产生一个主秘密( m a s t e r s e c r e t ) 5 ) 将安全参数提供给记录层: 6 ) 允许客户端和服务器确认对方拥有相同的安全参数,以及握手过程被攻击者 窜改。 、 客户端向服务器发送一个c l i e n th e l l o 消息,服务器响应一个s e r v e r h e l l o 消息, 否则会产生一个f a t a le r r o r ,连接被中断。c l i e n t h e l l o 和s e r v e r h e l l o 建立以下属性: 协议版本、会话i d 、密码选择( c i p h e rs p e c ) ,和压缩算法。另外,产生和交换两个 华中科技大学硕士学位论文 随机数:c l i e n t h e l l o r a n d o m 和s e r v e r h e l l o r a n d o m a 实际的密钥交换有下面四条消息完成:服务器证书( s e r v e r c e r t i f i c a t e ) 、服务器 密钥交换( s e r v e rk e ye x c h a n g e ) 、客户端证书( c l i e n tc e r t i f i c a t e ) 和客户端密钥交换 ( c l i e n tk e ve x c h a n g e ) 。新的密钥交换方法可以通过定义这些消息的格式和使用方法 来获得一致的共享秘密。在h e l l o 消息之后,如果服务器需要被认证的话,它会发 送自己的证书。另外,如果需要的话,服务器可能会发送一个服务器密钥交换( s e r v e r k e ye x c h a n g e ) 消息。( 例如,服务器没有证书,或者它的证书仅仅用于签名。) 如果 服务器被认证了,在密码算法方案允许的情况下,他可能要求获得客户端的证书。 然后,服务器会发送s e r v e rh e l l od o n e 消息,表明握手的h e l l o m e s s a g e 阶段已经完 成。服务器就会等待客户端的响应。如果服务器发送了一个证书请求消息,客户端 就必须发送证书消息( c e r t i f i c a t em e s s a g e ) 。然后,客户端发送密钥交换消息( c l i e n t k e ye x c h a n g e ) ,消息的内容取决于双方所选择的公钥算法。如果客户端发送了一个 有签名能力的证书,一个被数字签名的证书检验消息会被发送用来检验证书。 在这个时候,客户端发送一个c h a n g ec i p h e rs p e c 消息,并且客户端将待定的 c i p h e rs p e c 拷贝到当前的c i p h e rs p e c 中。然后客户端会立即经过新的算法、密钥 和秘密的处理发送一个完成消息( f i n i s h e dm e s s a g e ) 。作为响应,服务器会发送它自 己的c h a n g ec i p h e rs p e c 消息,将待定的c i p h e rs p e c 拷贝到当前的c i r l h e rs p e c 中,并 且在新的c i p h e rs p e c 的处理下发送它的完成消息( f i n i s h e d m e s s a g e ) 。这时,握手完 成,客户端和服务器可以开始交换应用层数据了。如图2 1 所示。 当客户和服务器决定恢复以前的一个对话或复制一个已存在的对话时,消息流 程如图2 2 所示。 客户端在发送的c l i e n t h e l l o 消息中使用想要恢复的会话的会话i d ,服务器就 会检查它的会话缓存。如果这个会话找到了,服务器就会用这个会话的状态重建这 个连接。这时,他会在发送的s e r v e r h e l l o 消息中使用相同的会话i d 。在这时候, 服务器和客户端就发送c h a n g ec i p h e rs p e c 消息,然后以完成消息f i n i s h e d m e s s a g e 结束这次握手。一旦重建过程完成,客户端和服务器就可以开始交换应用 层数据了。如果服务器没有找到这个会话密钥,服务器就会生成一个新的会话i d , 这样双方就会进行一次完整的握手。 华中科技大学硕士学位论文 c 1 i e n t c l i e n t h e l l 0 c e r t i f i c a r e * c l i e n t k e y e x c h a n g e 丰 c e r t i f i c a t e v e r i f y * c h a n g e c i p h e r s p e c f i n i s h e d a p p l i c a t i o nd a t a 圈2 1 一次完整握手的消息流程 s e r v e r s e r v e r h e li o c e r t i f i c a t e * s e r v e r k e y e x c h a n g e 术 c e r t i f i c a t e r e q u e s t 木 s e r v e r h e ll o d o n e c h a n g e c i p h e r s p e c f i n i s h e d a p p l i c a t i o nd a t a 表示可选择发送的消息或是根据具体情况而决定发与否的消息 注意:握手消息必须按照流程图中制定的顺序发送,否则会导致f a t a le r r o r s 。 c i i e n t c 1 i e n t h e l l 0 c h a n g e c i p h e r s p e c f i n i s h e d a p p l i c a t i o nd a t a 图2 2 一次简化的握手消息流程 s e r v e r s e r v e r h ell o c h a n g e c i p h e r s p e c f i n i s h e d a p p li c a t i o nd a t a 当通过恢复一个会话建立一个连接时,这个新连接继承被恢复会话的会话状态。 此连接产生新的c i i e n t h e l i o r a n d o m 和s e r v e r h e l i o r a n d o m ,用这两个随机数和 会话的m a s t e rs e c r e t 做h a s h 计算,产生它使用的m a cs e c r e t s 、加密k e y s 、i v s 。 华中科技大学硕士学位论文 2 1 4 5加密参数计算 在握手协议中,通信双方协商了协议版本、密码选择( c i p h e rs p e c ) 、两个随机 数、以及一个预主秘密。预主秘密的产生是通过c l i e n tk e ye x c h a n g e 和s e r v e rk e y e x c h a n g e 消息( 可选择) 完成的。预主秘密的产生有两种途径,一种是r s a 加密的 预主秘密,它或者是用服务器公钥加密,或者是用服务器发送的s e r v e r k e ye x c h a n g 消息中携带的i 临时r s a 公钥加密,由客户端发送给服务器;一种是通过 d i f f i e h e l l m a n 交换产生,服务器和客户端通过各自的k e ye x c h a n g e 消息发送各自的 d i m e h e l l m a n 的公共值,这个公共值可以是动态产生的,也可以是证书中携带的静 态值。总之,采用何种方式交换预主秘密由双方的证书类性决定。 获得了预主秘密后,双方就可以使用预主秘密和两个随机数,通过伪随机函数 产生主秘密,并将主秘密( m a s t e rs e c r e t ) 交给记录层。计算公式如式( 2 1 ) 。 m a s t e r _ s e c r e t= p r f ( p r e _ m a s t e rs e c r e t “m a s t e r s e c r e t “ c l i e n t h e t l o r a n d o m + s e r v e r h e l l o r a n d o m l( 式2 1 ) 记录层使用主秘密产生当前连接状态所需要的m a cs e c r e t s 、密钥( k e y s ) 和初 始化向量( i v s ) 。密码选择需要一个客户端写m a cs e c r e t 、一个服务器写m a cs e c r e t 、 一个客户端写密钥、一个服务器写密钥、一个客户端写初始向量,和一个服务器初 始向量。详细的产生算法请参见r f c2 2 4 6 。 2 2ip s e c 的研究和安全性分析 i p s e c 2 3 1 协议,是i e t f 的i p s e c 工作组提出的将安全机制引入t c p i p 网络的一 系列标准,包括安全协议( 认证头a h 和封装安全载荷e s p ) ,安全联盟,密钥管理 和安全算法等。i p s e c 协议可用来保护一个完整的p 载荷,也可以用来保护某个 载荷的上层协议。而且这两方面的保护分别是由i p s e c 的两种模式来提供的,其封 装形式如图2 3 。 2 2 1 i p s e c 结构 在图2 4 中,l p s e c 结构的第一个主要的部分是安全结构。i n t e r n e t 草案文件 华中科技大学硕士学位论文 i p 协议的安全结构描述了用于i p v 4 和i p v 6 的安全机制和服务。它提供了对i p s e c 包的介绍并且描述了结构的每一个组件。i p s e c 的安全结构由三个主要的协议组成, 它由上图的第二层的e s p 协议、a h 协议、密钥管理协议以及加密和认证算法组成。 臣亟口 互 二互囝 圈 互 三丑三二圊 臣盈 互 三丑j 二工玉二工困 图2 3 传送模式和通道模式下受i p s e c 保护的i p 包 封装安全载荷( e n c a p s u l a t i n gs e c u r i t yp a y l o a d ,e s p ) 。”提供了加密服务。 认证头( a u t h e n t i c a t i o nh e a d e r ,a h ) 。”提供数据报认证服务。e s p 和a h 协议都有 一个确定的特定的算法和可选功能的支持文献集。 图2 4 i p s e c 结构 华中科技大学硕士学位论文 i n t e r n e t 安全协会和密钥管理协义1 ( i s a k m p ) 是i p s e c 的另一个主要组件。 i s a k m p 提供了用于应用层服务的通用格式,它支持i p s e c 协议和密钥管理需求。i e t f 设计了o a k l e y 密钥确定协义”7 1 ( k e yd e t e r m i n a t i o np r o t o c 0 1 ) 来实施i s a k m p 功 能。这个协议在通信系统之间建立一个安全联盟,它是一个产生和交换 p s e c 密钥 材料并且协调i p s e c 参数的框架。 最后,解释域d o i 3 ( d o m a i no fi n t e r p r e t a t i o n ) 将所有的i p s e c 小组的文献 捆绑在一起。它可以被认为是所有的i s p e c 安全参数的主数据库,这些参数可以被 与i p s e c 服务相关的系统参考调用。 因为i s a k m p 协议是设计在协议栈的所有层而不只是i p 层上,所以,每个安全 协议必须有自己的d o i 或存放相关参考数的数据库。目前,只有i p s e c 的d o i 进行 了定义。 2 2 2i p s e c 加密 封装安全载荷( e s p ) 包头提供口数据报的完整性和可信性服务。在i p v 4 和 i p v 6 两种实现中,e s p 都采取包头放在p 数据中所有其它的婵包头后面的方式。 下面列出用于i p v 4 的数据格式,如图2 5 。 l i p v 4 包头l e s p 包头i 高程协议帧l 图2 5 i p v 4 中e s p 头的插入位置 在隧道方式中每一跳的包头由中间系统( 如路由器) 在每一跳上进行处理,而 目的地包头只在最后的终端系统上进行处理。e s p 加密必须不影响用来保证包的正 确传输所必需的p 包

温馨提示

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

评论

0/150

提交评论