(计算机应用技术专业论文)基于tcp和ip层的ipsec协议及其ike的研究与实现.pdf_第1页
(计算机应用技术专业论文)基于tcp和ip层的ipsec协议及其ike的研究与实现.pdf_第2页
(计算机应用技术专业论文)基于tcp和ip层的ipsec协议及其ike的研究与实现.pdf_第3页
(计算机应用技术专业论文)基于tcp和ip层的ipsec协议及其ike的研究与实现.pdf_第4页
(计算机应用技术专业论文)基于tcp和ip层的ipsec协议及其ike的研究与实现.pdf_第5页
已阅读5页,还剩55页未读 继续免费阅读

(计算机应用技术专业论文)基于tcp和ip层的ipsec协议及其ike的研究与实现.pdf.pdf 免费下载

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

文档简介

上海大学硬士学位论文 t h ep o s i g r a d u a t et h e s i so fs h a n g h a iu n i v e r s i t y 摘要 i n t e m e t 的发展使各企事业单位利用公共网络传输信息成为可能,然而开放 的i p 协议栈对网络中的数据传输不提供任何保密功能。i p s e c 协议的提出及其在 v p n 上的应用解决了数据传输的安全问题。然而,m s c c 协议是基于“端到端” 的安全传输模型的传输协议,在其“隧道模式”中不允许任何中间路由器访问数 据包的t c p 头信息;这样就与i n t e m e t 上新兴的需要了解传输层信息以便作出进 一步处理的网络应用如:包过滤防火墙、网络地址转换、流量工程等产生冲突。 本文提出了一种基于t c p i p 协议的i p s e c ,称为d l - i p s e c 。d l = i p s e c 分别 对t c p 数据报头和球数据包载荷采用两种不同的加解密方式,其中一种方式由 网络中可信任的中间路由器掌握以便读取传输层协议头的有关信息,但不能读写 其他数据;数据发送端和接收端则掌握两种方式以实现对整个数据包的加解密, 这样便大大增加了i p s e c 协议的灵活性,又不失其安全传输性能。 在d l - i p s e c 的基础之上,本文拓展了密钥交换协议( i k e ) 。众所周知,要 安全高效地实现i p s e c 协议,i k e 是必不可少的一步,它实现了密钥在数据发送 端和接收端的安全交换。但是i k e 仅仅能够实现“端到端”传输的密钥交换, 而不适合超过两个成员参与的密钥交换。鉴于此,本文提出了g r o u pi k e 。在 g r o u pi k e 中摒弃了i k e 中采用的d i f f i e h e l l m a n 算法而采用g d h ( g r o u p d i f l i e - h e l l m a n ) 算法。因此可以说,g r o u pi k e 密钥交换是一种面向“群体”的 密钥交换协议。通过g r o u pi k e 便可以有效解决实施d l = i p s e c 中的密钥交换问 题。 本文中,g r o u p i k e 的实现是建立在r a w s o c k e t 和p fk e y 协议之上的, 采用的系统是r e d i - l a tl i n u x 6 2 操作系统。整个g r o u pi k e 的实现按照功能划分 成三个模块:系统管理模块、i k e 验证模块、事件处理模块。其中事件处理模块 又可分为管理消息处理、内核消息处理、网络消息处理、时钟时间处理等四个子 模块。为了各个模块能对协商的数据进行共享,设计了i k e 运行状态库,提供 统一的查询接口。在d l i p s e c 的实现中,为了尽量减少对l i n u x 协议栈的改动, 我们采用了网络过滤器( n e t f i l t e r ) 的“钩子”( h o o k ) 机制。在数据包经过的 每一个“h o o k ”点上实现有关数据包的接收、发送、转发等功能的程序模块。 关键字:i p s e c ,d l i p s e e ,i n t e m e t 密钥交换,g r o u pi k e ,e s p ,a h 。d i f f i e h e l l m a n , 网络过滤器 上海大学疆士学诬论文 鞲撼p o s t g r a d u a t et h e s i so f s h a n g h a iu n i v e r s 酣 a b s t r a c t s e c u r ea n de f f i c i e n tc o m m u n i c a t i o n & “讷 e 珏c o m p u t e r si sb e c o m i n g 氆o l 罄a n d m o r ee s s e n t i a l 鹪c o m p a n i e sa t t e m p tt ou t i l i z et h ep u b l i cn e t w o r ki n f r a s t r u c t u r ef o r s u p p o r t i n gc o m m u n i c a t i o n b e t w e e nt h e i rv a r i o u ss i t e s t h el p s e c p r o t o c o l sh a v eb e e n p r o p o s e da 3 as o l u t i o nt ob a l a n c et h en e e d so fs e c u r i t ya n dn e t w o r k i n gb e t w e e n c o m p u t e r s t h eb a s i ci p s e ep r o t o c o l s a r cb a s e do nt h ee n d - t o - e n d s e c u r i t ym o d e la n d w h e nu s e di nt h em o s ts e c u r em o d ed on o ta l l o wa n yi n t e r m e d i a t en o d e si nt h e n e t w o r kt oa c c e s sa n do b t a i ni n f o r m a t i o nf r o mp a c k e th e a d e r se n c r y p t e db yt h e s e c u r i t ye n d - p o i n t s h o w e v e r , a d v a n c e s i ni n t e m e t t e c l m o l o g yi n m ) d u e e ar i c hn e ws e t o fs e r v i c e sa n da p p l i c a t i o n s , a l lo fw h i c hr e q u i r ei n t e r m i d i a t en e t w o r kt oa c c e s sa c e r t a i np a r to f a n 即p a c k e hu s u a l l yt h eu p p e rl a y e rp r o t o c o li n f o r m a t i o n 。t op e r f o r m 8 0 m c p r o c e s s i n gs u c h 瓣f l o wc l a s s i f i c a t i o n , c o n s t t a i n t - b i 搭e dr o u t i n g o ro t h e r s t h i s i si nd i r e c tc o n f l i c tw i t ht h ei p s e cm e c h a n i s m s i nt h i sr e s e a r c h , w c p r o p o s e a d o u b l e - l a y e rs e c u r i t yp r o t e c t i o ns c h e m e f o ri p s e c , w h i c hu s e saf r e e r - g r a i na c c e s sc o n t r o lt oa l l o wt r u s t e di n t e r m e d i a t er o u t e t 3t or e a d s e l e c t e dp o r t i o n so f i p p a c k e t si nas e c u r ea n dc o n t r o l l e d 辣埔爨溉w ec a l lt h i ss c h e m e d l - i p s e cw h i c hw o r k so nb o t ht c pa n di pl a y e r s d l - i p s e ca d d sf e l x i b i l i t yt ot h e c u r r e n ti p s e cp r o t o c o lb y p r o v i d i n gt h ea b i l i t yt ou s em u l t i p l ee n c r y p t i o na l g o r i t h m s w i t hs e p a r a t e 尊n 甜y p t i o nk e y sf o rd i f f e r e n tp a r t so fap a c k e t 。w ea l s od e s c r i b ea n e x p e r i m e n t a li m p l e m e n t a t i o no f t h ec o n c e p ta n d p r o v i d et 魄m e a s u r e m e n t s f r o m i l o nt h eb a s i so f d l - i p s e c ,w ee x t e n d e di n t e r a c tk e ye x c h a n g e ( i k e ) t og r o u p i k e i ti sw e l tk n o w nt h a ti k ei st h e k e yd i s t r i b u t i o np r o t o c o lf o ri p s e c ,b u ti td o e s n o ta p p l yt od l - i p s e cb e c a u s ed l - i p s e ci sn o ta ne n d - t o - e n d p r o t o c 0 1 i nt h i sp a p e r w ed i s c a r dd i f f i e - h e l l m a n a l g o r i t h m s b u t u s em o d i f i e d g r o u pd i f f i e - h e l l m a n i n s t e a d ,t h u sm a k ei k et ob ea “g r o u p ”o r i e n t e dp r o t o c o l ,t h r o u g hg r o u pi k ew c r e s o l v e dt h e g r o u pk e yd i s t r i b u t i o np r o b l e mw h i c ha r i s e di nt h ee o u l s eo ft h e i m p l e m e n t i o no f d l - i p s e c t h e p r e s e n ti m p l e m e n t a t i o no fg r o u pi k e i sb a s e do nr a ws o c k e ta n dp f _ k e y p r o t o c o lu s i n gl i n u x i nt h ei m p l e m e n t a t i o no fd l - t p s e cw eu s e dt h en e t f i l t e r s h o o km e c h a n i s mi nl i n u xt om o 鞠lt h em o d u l e st h a tp r o c e s s p a c k e t se n t e r i n gl o c a l g a t e w a yc o m p u t e r k e yw o r t h :i p s e c ,d l - i p s e c ,i k e ,g r o u pi k e ,e s p , a h ,p fk e y , d i f f i e - h e l l m a n , n e f f f l t e r i l 上海大学硕士学位论文 t h ep o s t g r a d u mt h e s i so fs d 怕h a iu n i v e r s n y 第一章i p s e c 综述 随着i n t e r a c t 的迅速发展,政府、企业、金融等各个部门的信息传递越来越 依赖于网络技术。然而,使用i n t e r n v t 进行信息传输,会产生很严重的安全问题, 因为i n t e r n e t 上的信息传递都是以明文方式进行的,只要稍懂一些计算机以及网 络编程技术,便极容易窃取这些明文信息、修改信息内容、重播以前的包。而若 使用专线,则费用巨大。在这样的情况下,v p n 1 】脱颖而出,很好地解决了这两 方面问题。 v p n 可利用i p s c c 、l 2 t p 、p p t p 等协议实现,其中i p s e c ( i n t e m e tp r o t o c o l s e c u r i t y ) 是在i p 层上对数据进行保护,它可提供数据源验证、无连接数据完整 性、数据机密性、抗重播等安全服务。各种应用程序可以享用m 层提供的安全 服务和密钥管理,而不必设计和实现自己的安全机制,从而减少密钥协商的开销。 也降低了产生安全漏洞的可能性。因此近几年i p s e c 成为实现v p n 的主要方法, 并得到越来越多的企业和机构的支持。 1 1i p s e c z l 的组成 1 1 1 协议框架 i p s e c 的协议框架如图i 一1 所示。整个i p s e c 体系由i p s e c 协议、i n t e m e t 密钥管理协议( i n t e r a c tk e ym a n a g e m e n tp r o t o c o l k m p ) 、i p s e c 安全策略( i p s e c u r i t yp o l i c y ,i p s p ) 三个模块以及安全策略数据库( s p d b ) 、安全关联数据 库( s a d b ) 两个数据库组成。 i p s e c 的结构文档r f c 2 4 0 1 定义了i p s e c 的基本结构。所有具体的实施方案 均建立在它的基础之上。 1 1 2 协议设计目标实现 前面提到过:i p s e c 能够对数据的存取控制( a c c e s sc o n t r 0 1 ) 、机密性、完整 上海大学硕士学位论文 n 证p o s t g r a d u a t et h e s i so fs h a n g h a iu n i v e r s r r y 性、真实性、可用性和通信机密性提供保证,并能够防止重发( r e p l a y ) 攻击。 这些服务在网络层上实现,为m 层及上层协议( u d p 和t c p ) 提供了安全保证。 这些目标是通过两个安全协议和密钥管理协议来实现的,其安全协议为鉴别头 ( a u t h e n t i c a t i o nh e a d e r ,a h ) 和封装安全负载( 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 ) 。安全协议和封装模式的选择,是由实施i p s e c 的主机,网关根据本地用户、 应用程序的安全要求和策略来决定的。 ( 1 ) a h 协议 a h 协议为i p 数据包提供无连接的完整性和数据源的身份鉴别。以及反重发 ( a n t i r e p l a y ) 保护。其中后者是可选的。所谓“重发”,就是数据发送方( 或者 第三方) 多次发送已经发送过的数据。受到重发攻击的接收方如果缺乏相应的检 测措施,就会多次处理相同的数据。造成数据错误。a h 反重发保护的方法是在 数据包中加入依次递增的序列号( s e q u e n c e n u m b e r ) ,数据接收方收到数据包时 检查序列号,即可知道该包是否已经收到过,作出处理或丢弃的选择。 a h 协议通过在i p 层头部加入一个附加的a h 头部来实现,此a h 头部包含 数据完整性等安全要求所需的完整性检查值( i n t e g r i t yc h e c kv a l u e i c v ) 。 ( 2 ) e s p 协议 e s p 协议为i p 数据包提供机密性、数据源的鉴别、无连接的完整性、反重 发服务和有限的通信量的机密性。其中数据源的鉴别和无连接的完整性两种安全 服务是可选的。通信量的机密性是指利用隧道模式传输数据,安全网关把通信双 方的所有信息( 包括身份,如球地址、端口号) 隐藏起来,不为第三方所知晓。 e s p 协议通过加密整个传输层数据报来实现。它在球包头部之后加入一个 e s p 头部,之后跟着经过加密的传输层数据报,如果需要提供鉴别服务,则在尾 部再加上完整性检查值i c v 。 ( 3 ) 数据封装模式 i p s c c 协议规定了两种数据封装的模式:传输模式( t r a n s p o r tm o d e ) 和隧道 模式( t u n n e lm o d e ) 。 传输模式。只对球数据包中的上层协议数据部分进行加密或鉴 别。此时,继续使用以前的口头部,只修改i p 头部的部分字段, 而把i p s e c 协议头部插入到礤头部和传输层头部之间。 隧道模式对整个碑数据包进行加密和戚鉴别。此时,需要产 生一个新的p 头部。i p s e c 头部放在新的摩头部和以前的m 数 据包之间。 1 1 3 ( m p i k m p 是i p s e c 中安全关联( s e c u r i t ya s s o c i a t i o n ,s a ) 的管理协议,其管 2 上海大学硕士学位论文 t h ep o s t g r a d u a t et h e s i so fs h a n g h a iu n i v e r s i t y 理功能包括对i p s e c 协议所需的加密算法、密钥等安全参数的产生、更新、删除 等工作。i p s e e 要求支持两种密钥管理方式,b p 手动配置和自动协商。密钥管理 方式的不同,对i p s e c 协议,即a h 和e s p 的使用基本无关,但是会影响这些协 议提供的某些安全服务。例如,为a h 和e s p 提供的反重发服务是可选的,但 只有在自动密钥管理方式下才能提供此项服务。i k e 是i p s e c 工作组规定的标准 的自动密钥协商和管理协议。 1 1 4i p s p i p s p 规定i p s e c 体系中主机网关之问协商安全策略的方法。 安全策略具体描述了两个实体问的安全通信要求。定义了在什么模式下使用 什么协议,以及所使用的算法,等等。一般来说。利用数据包中相关的选择符值 ( s e l e c t o rv a l u e ) 和安全策略数据库中的安全策略项匹配来决定为数据包提供哪 种安全服务。 一条安全策略可以同时包括多种不同的选择,例如加密算法可以为d e s 或 r c 5 等,密钥长度为6 4 或1 2 8 位或一个长度范围等。这样,不同的主机,网关在 使用i 旧协商s a 之前,应该进行安全策略的协商。以获得一致的安全策略。 1 1 5 安全策略数据库( s p 聃) 、安全关联数据库( s a d b ) s p d b 是i p s e c 体系中所有安全策略的集合,它是由有序的策略项( p o l i c y e n t r y ) 组成的表。策略项以一个或多个选择符( s e l e c t o r ) 为关键字,定义符合 此关键字的通信数据应采取的安全策略。如直接通过、丢弃或进行i p s e c 处理。 如果进行1 p s e c 处理,该策略项要包括一个或多个s a 特征的详细定义,包括使 用的i p s e c 协议、封装模式、算法、密钥等安全要求。 s a d b 为进入和外发i p 数据包维持一个活动的s a 队列。外发s a 用来保障 外发包的安全,进入s a 用来处理带有i p s c e 头的进入包。s a d b 是所有s a 的 集合,其管理要么手工,要么通过i k e 之类的一个自动密钥管理系统来进行。 1 2 i p s e e 体系的特点 ( 1 ) 优点 i p s v c 使“端到端”的数据保密成为可能,换言之,进入或离开一 台计算机的任何信息都可确保其安全。亦可在网络的不同部分实 施i p s e c 。构成一个虚拟专用网络( v m u a l p r i v a t e n e t w o r k ,v p n ) 。 在这种网络中,两个全然不同的网络被整合成一个,连接它们的 是一条由i p s e c 提供安全保护的“隧道( t u n n e l ) “: 由于i p s e c 在网络层上实现,它对上层应用来说是透明的,所以 上层应用可以不作任何改动,即可使用在实现i p s e c 的系统中; 安全策略配置好以后。密钥协商可采用自动方式进行,使用过程 上海大学硕士学位论文 1 mp o s t g r a d u 腼1 砸s i so fs h = n g h a iu n n r e r s y 中无需人为参与,便于管理。 ( 2 ) 缺点 i p 协议栈需要重新更新或者扩展。而且由于i p s c c 体系比较复杂, 更新和扩展并不简单; 由于提供的是网络层上的安全,该层上的一切通信均需经过口s e c 安全策略的检查,其中某些数据包需要经过加密、解密、鉴别等 操作,影响机器的效率。对于那些通信量大、网络速度要求高的 关键路由器和网关,这一问题会更加突出: i p s c c 体系过于复杂,使得协议本身和其实现机制可能存在的缺陷 难以发现和防范,可能带来新的安全漏洞。 由于i p s e c 将传输层及其以上的所有数据加密封装,从而导致某 些需要了解t c p 层信息的网络应用不能正常使用。 1 3 i p s e c 的实施 i p s e c 可在终端主机、网关路由器或两者中同时进行实施和配置。至于i p s e c 到底在网络的什么地方配置,则由用户对安全机密的要求来决定。 1 3 1 在主机实施 在主机实施有下列好处: 保障端到端的安全性。 能够实现所有的i p s e c 安全模式。 能够对每个数据包提供安全保障。 在建立i p s c c 的过程中,能够维持用户身份验证的“场景”。 主机实施可分为两类: 1 ) 与操作系统( o s ) 集成实施。 2 ) 在协议堆栈的网络层与数据链路层之间实施,作为两者之间的 “禊子”使用。 1 3 1 1o s 集成 在主机实施方案中,i p s e c 可能与o s 集成在一起。由于i p s e c 是一个网络 协议。所以可当作网络层的一部分来实现。如图i 一2 所示。i p s e c 层需要口层 的服务来构建口头。这个模型与其他网络协议。如i c m p 的实施等同。 1 3 1 2 “堆栈中的块( s r r s ) ”实施 采用o s 集成方案有一个缺陷:对提供v p n 和内联网解决方案的公司而言 在终端主机上不得不使用o s 厂商提供的特性。这样可能会限制提供高级方案的 能力。解决这一限制的方法是将i p s e c 作为一个“禊子”来实施,插入到网络层 4 上海大学硕士学位论文 1 1 ep o s t g r a d u t e1 皿s i so f s h a n g h a iu n n r e r s n y 和数据链路层之间来实现。如图l 一3 所示。 应用层 传输层 网络层+ i p s c c 数据链路层 应用层 传输层 网络层 i p s e c 层 数据链路层 图1 - - 2i p s e c 堆栈的分层图1 - - 3b i t s i p s e c 堆栈的分层 1 3 2 在路由器中实施 如果在路由器中实施,可在网络的一部分中对传输的数据包进行安全保护。 采用路由器实施主要有两种类型: ( 1 ) 原始实施:等同于在主机上进行o s 集成实施方案。在这种情况下, i p s e c 是集成在路由器软件中的。 ( 2 ) 线缆中的块( b i t w ) :等同于b i t s 实施方案。在这种情况下,i p s e c 的实现在一个设各中进行,该设备直接接入路由器的物理接口。此 设备一般不运行任何路由算法,而是只用来保障数据包的安全。但 b i t w 不能作为一种长期方案来使用,因为不可能让一个设各连接路 由器的每个接口。 在路由器中实施i p s c c 有以下优点: ( 1 ) 能对通过公用网络在两个子网络之间流动的数据提供安全保护。 ( 2 ) 能进行身份验证,并授权用户进入私用网络。 1 4i p s e c 的处理 1 4 1 外出处理 外出处理过程中,传输层的数据包流进i p 层。p 层检索s p d b 。判断应为 这个包提供哪些安全服务。需要输入s p d b 的是“选择符”。而s p d b 检索的输 出则要分以下几种情况: ( 1 ) 丢弃这个包。此时包不会得到处理,只是简单地丢弃。 ( 2 ) 绕过安全服务。在这种情况下,m 层会在载荷中添加m 头。然后分 发数据包。 上海大学硕士学位论文 1 1 也p o s t g r a d u 朋限1 匝s i so fs h a n g h a iu n i v e r s n y ( 3 )应用安全服务。在这种情况下,若已经建立了一个安全联盟( s a ) , 就会返回指向这个s a 的指针;若s a 尚未建立,就会调用i k e ,建 立s a 。如果s a 建立成功,s p d b 内便会包含指向s a 或s a 集束的 一个指针。若策略的输出规定强行将i p s c c 应用于数据包,则在s a 正式建立起来之前,包是不会传送出去的。 1 4 2 进入处理 进入处理有别于外出处理。收到数据包后,假如包内根本没有包含i p s c c 头, 那么i p s c c 就会对策略进行检查,判断该如何处理这个包。它会用选择符字段来 检索s p d b 。策略的输出可能是下面三种之一:丢弃、绕过或应用。 如果数据包内包含了l p s 头,就会由i p s e c 层对这个包进行处理,i p s e c 层会从毋数据报中提取安全参数索弓i ( s p 0 、源地址和目标地址。利用 字元组对s a d b 数据库进行检索。协议值就只有a h 或e s p 。根 据此协议值进行相应的处理。协议载荷处理之后,需要查询策略,对载荷进行校 验。选择符则用作获取策略的依据。验证过程包括:检验s a 的使用是否得当, 以及s a 保护的传送层协议是否和要求相符。 i p s c c 完成了对策略的校验之后,会将i p s c c 头剥离下来,并将包传送到下 一层,下一层要么是传输层,要么是网络层。应视数据包内封装的是何种协议而 定。 1 5 s a 管理 s a 管理的两大任务就是创建与删除。s a 管理既可用手工进行,亦可通过一 个i n t e r a c t 标准管理协议来完成,如i k e 。为进行s a 管理,要求用户应用含i k 的一个接口同内核通信,以便实现对s a d b 数据库的管理。 6 上海大学硕士学位论文 1 砸p o s t o r a d u t et h e s i so fs h n g h a lu n n r e r s n y 第二章基于t c p 及i p 层的i p s e c i p s e c 是对网络通信实施保护的标准协议簇。在传送模式中它保护了t c p ( 传 输控制协议) 及其以上层的所有信息:而在隧道模式中它将整个m 数据包封装保 护起来。不论使用何种模式。在数据包传输过程中,i n t e r a c t 上的任何中间网络 节点( 路由器) 都将无法访问t c p 的头信息。这一方面对保证数据安全起到了一 定作用;另一方面又阻碍了i n t e m e ti 一的一系列网络服务如:流量工程t 3 、n a t ( 网 络地址转换) 【4 】、透明代理【5 l 等的应用。原因就在于这些网络服务需要了解t c p 的 部分头信息。为解决这一矛盾在这里采用一种基于t c p 及层的i p s e c 由于它 既能了解t c p 头的部分或全部信息又能知晓口层的头数据,因而可称之为 d l - i p s e c ( d o u b l e - l a y e r 口s e c 、。 2 1i p s e c 的局限 i p s e c 采用a h 和e s p 协议来保证数据传输的安全。同时i p s e c 保护的是整个数 据报的安全它将m 头之后的整个数据报作为一个整体来加密或验证。i p s c c 采用a h 协议保护数据的方式如图2 一l 所示:( 采用t c p 协议的坤v 4 包) 从图2 一l 中可以看出,a h 协议不提供加密保护,因而不需要用于数据加密 的填充块和填充块长度指示器。验证数据字段是一个长度不固定的字段,它包括 完整性校验结果。a h 没有定义身份验证器。但有两个强制实施身份验证器: h m a c s h a 9 6 和 m 认c m d 5 9 6 1 6 1 。这些都是键控式的m a c ( 杂凑函数和消息 认证码) 功能,输出结果被切断成9 6 位。同时i p s e c 也没有针对a h 的使用定义公 7 上海大学硕士学位论文 t h ep o s t g r a d u a t et h e s i so fs h a n g h a i u n i v e r s i t y 共密钥身份验证算法。这是由于公共密钥算法要进行多次的乘幂运算,对大批量 的数据身份验证而言,这种多次的乘幂运算会大大降低数据传输效率。 i p s e c 采用e s p 协议保护数据报的方式如图2 2 所示:( 采用t c p 协议的i p v 4 从图2 2 可以看出,不论是传送模式还是隧道模式,t c p 头都被完全封装到 e s p 中,由于用于加密和验证的密钥只被发送方和接收方所共享,造成中间节点 ( 不管是授权还是未授权节点) 对其中信息不得而知。在传统的网络传输中,中 问路由器仅仅起到了接收和转发数据报的功能,所要了解及改动的信息仅限于毋 头。这样的传输方式非常适合于i p s e c 的“端到端”模式。 但是,现在的i n t e m e tp 的中问路由器在决定如何接收和转发数据包时,需 要了解更多的驯昙以上的信息。尤其是t c p 的头信息。典型的如: 1 ) i n t e m e t 流量工程;由于i n t e m e t 上的数据传输量越来越大,为了满足人 们对流量的需求,保证通信质量,路由器交换机采用一种基于“流” 的方式将每个使用者的网络流量分类,根据类别分配带宽。从而保证付 费用户享受到较好的服务质量( q o s ) 。“流”的分类要求路由器交换 机能够读取t c p 或l i d p ( 用户数据报协议) 头中的端口信息,依据此 信息将数据包分配到所属的“流”中。 2 ) 网络流量分析:网络管理员在进行网络监视时注意的一般是审计信息或 带有入侵意图的数据流量。通常情况下这种监视需要记录下t c p u d p 端口。 3 ) 包过滤防火墙1 7 1 ;包过滤防火墙在决定是否要让一个数据报通过时,经 3 上海大学硕士学位论文 t h ep o s t g r a d u 1 et h e s i so fs h a n g h a iu n i v e r s i t y 常需要了解t c p u d p 端口信息。i p s e e 的加密将其获取端口信息的途径 切断,这也是一个问题。 2 2d l - i p s e c 的工作原理 以上列举了i p s e c 与现有的部分网络应用服务的三个冲突。其他还有诸如 n a t ( n e t w o r k a d d r e s st r a n s l a t i o n ) 服务、w r e d ( 加权随机早期检测) 等存在 同样的问题。为了解决这一系列冲突。我们提出一种基于t c p 及口层的i p s e c ,称 之为d l i p s e c ( d o u b l e l a y e r i p s e c ) ,目的在于给授权的中间节点提供安全可控 的、对数据包特定部分的有限访问能力,同时又能保证用户数据的安全性。采用 d l d p s e c 的网关需要对数据包的数据载荷部分以及t c p u d p 头部分采取不同的 验证加密措施。从而使不同的接收者能够访问数据包的不同部分。d l i p s e c 的工作流程如图2 3 所示。 二三三二工三三三二 二二! i ! ! j j 三 发送者送出的数据 加密o0 加密 未授权节点所能得到的数据 授权节点所能得到的数据 未授权节点所能得到的数据 接收者得到的数据 表示加密数据 图2 - 3d l - i p s e c 的工作原理图 发送者将数据包送到本地网关,网关计算机将对数据包的t c p 头和t c p 载荷 采用不同的加密方式进行加密。然后将其送出。接收者若是授权节点,则可用其 已知密钥解 密t c p 头信息,获得自己所需数据,然后将数据重新加密并转发。在 这里,该授权节点没有打开t c p 载荷的密钥,故载荷信息对它来说属于不可见信 9 上海大学硬士学位论文 1 h ep o s l r a d u m1 1 皿s i s o fs h a n o h a iu 】m v e r s r r y 息。若接收者是未授权节点,则在接收到数据报后,它检测m 源地址与目的地址, 将t t l ( t i m e t ol i v e ) 减一,重新计算完整性检验值,然后将其转发出去。 由于d l i p s e c 允许中间节点对口数据报的有限访问能力,因此必须采取一种 特定的方法来控制中间节点。通常情况下,首先要对中间节点进行身份验证,以 确保该节点身份的合法性,其次要实现密钥的分发功能,以确保所有授权节点对 t c p 头访问的密钥一致性。传统的i k e ( i n t e m e tk e ye x c h a n g e ) 邛1 可实现身份验 证以及“端到端”的密钥交换功能,但没有密钥分发的功能,因而需要对其加以 改进。 采用d l i p s e c 除了可以解除i p s e c 的部分局限以外,同时增强了对选择明文 攻击韵抵抗作用。在原始的i p s e e 协议中,由于t c p 头和m 头的格式相对来说在一 次性数据传输中变化不大,攻击者比较容易根据这些较为固定的信息作为明文, 从网络中取得密文的相应部分进行密码分析。 通常情况下,对载荷加密是采用块加密方式进行的,而块加密的明文和密文 的分布是有序的。示例如下: 若以k :加密密钥; 只:明文; g :密文; 则有g = k 矿d ( 即:用k 对明文尹l 进行加密得到密文c d 。 亦即明文数据 加密后得到的密文数据必为 , 并且排列顺序不变。这种有序性决定了攻击的可行性。而在d l i p s e e 中,这种攻 击方式将变得更为困难。因为这些相对来说比较容易获得的信息与载荷信息的加 密采用的是不同密钥以及不同的加密算法。攻击者即使得到了解密t c p 头信息的 密钥,对加密载荷仍将一无所知。同时,对载荷的选择明文攻击【9 】由于缺少了明 密文的对照将变得更为困难。 2 3d l - i p s e c 的设计 d l - i p s e e 的总体框架与i p s e e 基本一致。d l i p s e c 仅仅在e s p 的头格式上和数 据的外出以及进入处理方法上有所改变。另外,在安全策略数据库中,应当保存 所有被授权节点的i p 地址列表。此列表可用于密钥的分发。 2 3 1e s p 头格式 d l - i p s e c 与i p s e c 的a h 头格式完全一致,它们的区别在于e s p 头格式。与 i p s e e 不同。d l - i p s e e 将e s p 的载荷数据分成两段;每一段用不同的密钥加密。其 格式如图2 4 1 行示。 在图2 4 中,验证数据有两个:验证数据1 和验证数据2 ,分别用于对加密数 据1 和加密数据2 的验证。同s e c 一样,验证数据的长度是由验证算法所决定的。 j 0 上海大学硕士学位论文 1 1 面p o s t g r a d u a t et h e s i so f s h a n g h a iu n i v e r s i t y 但是,它们的长度必须满足“是3 2 位的整数倍”这一条件。 安全参数索引( s p i ) 序列号 加密数据1 填充数据( 1 - - 2 5 5 ) k 充长度下一个 加密数据2 填充数据( 1 - - 2 5 5 ) 填充长度 验证数据1 验证数据2 图2 4d l - i p s e c 中的e s p 格式 2 4d i ,i p s e c 的进入与外出处理 2 4 1 外出处理 数据包的外出处理方法可参照图2 5 ( 以隧道模式为例) 。接收到数据包的 网关计算机首先将t c p 载荷按照预先商定好的密钥和验证算法将完整性验证数 据算出,填入相应位置:然后分别对t c p 的头信息( 如果采用隧道模式。还要包 图2 5d l o i p s e c 数据包的外出处理 上海大学硕士学位论文 里堡丝! 里坠2 坚笪堕里望墅婴翌坐璺型型! ! 堕型一一一 括原始口头信息) 和t c p 载荷信息采用不同的密钥实施加密a 一般情况下,加密 算法也是不一样的。 从图2 5 可以看出,对明文一和明文二的验证以及加密均采用了不同的算 法。另外,在原始i p s e c 协议中,对e s p 的载荷数据的填充仅仅在e s p 的尾部进行, 填充之后再进行验证数据的生成。而在d l i p s e c q a ,要对明文一和咀文二分别进 行填充,以生成各自的填充字段。这样,接收端在收到数据之后,对数据分别进 行验证,从而确保其完整性。 2 4 2 进入处理 数据包的进入处理正好与外出处理相反。( 如图2 - - 6 所示) 图2 6d b 口s e c 数据包的进入处理 整个进入处理可描述如下:接收端网关收到加密数据包后首先分离出处于 不同位置的密文和验证数据。之后将密文用己知的密钥和加密算法将数据分别解 密。完成了解密处理,下一步就利用协商好的哈希函数和验证密钥再次将明文作 一次哈希运算,以确保数据在传输过程中未被人篡改。然后对数据作进一步处理, 如根据填充长度项将有关填充数据去除;将数据重新组合成为一个新的球包等 等。 2 4 3 中间节点对可访问数据的处理 授权的中问节点对数据包的处理包括两方面的内容:一是解密处理,二是转 发数据包。在解密数据包的可访问部分获取有关数据之后,中间节点不允许改变 其中的信息。否则在数据的最终接收端的验证过程将不能通过。实际上,中间授 权节点在这里所做的工作再一次利用了块加密的有序性的特征。它只要将自己所 上海大学硕士学位论文 咖p o s t g r a d u a t et h e s i so fs h a n g h a iu n i v e r s r r y 需要的数据拷贝到内存缓冲区中,解密的同时即可将数据包转发出去。在这里 无需再次加密。这样可以有效提高工作效率。整个过程如图2 7 所示。 明文e s p 加密数据2验证数据j 千解 。l j密 i 一s p 加密数据】i 。一x 。 i l l j e s p 加密数据1e s p 加密数据2验证数据l 转发 图2 7 中间节点对可访问数据的处理 2 4 4r c 5 算法p j r c 5 是一种对称加密算法,它属于参数变量的分组密码算法。这个算法是由 r o n a l dl r i v e s t i 早发明的。i 妇r s a 实验室分析。其加密密钥长度可变,使用起 来非常灵活,同时亦可根据提供的参数生成不同级别的加密。r c 5 在加密时需要 提供的参数有:分组大小、密钥大小和加密轮数。它与数据加密标准d e s ( d a t a e n c r y p t i o ns t a n d a r d ) 【i 川加密不同,d e s 加密相对来说比较固定。而r c 5 加密则可 随着用户对数据机密性要求的提高使用更长的加密密钥,更多的加密轮数等手 段提供更高的机密等级。有分析表明:1 2 轮的r c 5 ,采用6 4 位的加密块,其抗分 析攻击能力基本与标准d e s ( 1 6 轮,6 4 位) 相同。由此可见,r c 5 的抗攻击能力 符合我们的要求。 一般情况下,使用长密钥和更多轮加密可以使数据的机密性提高。但同时又 会降低算法的效率。r c 5 可以通过分组大小、密钥长度、迭代轮数三个参数在安 全性和实现速度上进行灵活的折中选择。r c 5 的加密效率只与加密轮数有关:轮 数越高其加密效率越低。密钥的长短却不会对其加密效率产生影响。r c 5 的这 些灵活性使得它成为d l - i p s e e 加密算法的首选。一般推荐采用的加密字长为3 2 位,轮数1 2 轮,密钥的长度是1 6 。 r c 5 面向字结构,便于在软件和硬件中实现。在软件实现性能上,r c 5 较d e s 和其他加解密算法要好。r c 5 的安全性也较d e s 等加密算法高。r s a 实验室曾对 r c 5 3 2 进行过大量分析,经过5 轮迭代后的统计特性看来已经相当的好。6 轮以 上时即可抵抗线性攻击f l l 】。若采用差分密码分析攻击【l ,r c 5 需要的选择明文数 上海大学硕士学位论文 t ep o s t g r a d u a t et h e s i

温馨提示

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

评论

0/150

提交评论