(计算机应用技术专业论文)ikev2协议在linux环境下的实现.pdf_第1页
(计算机应用技术专业论文)ikev2协议在linux环境下的实现.pdf_第2页
(计算机应用技术专业论文)ikev2协议在linux环境下的实现.pdf_第3页
(计算机应用技术专业论文)ikev2协议在linux环境下的实现.pdf_第4页
(计算机应用技术专业论文)ikev2协议在linux环境下的实现.pdf_第5页
已阅读5页,还剩62页未读 继续免费阅读

下载本文档

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

文档简介

海南大攀研究生硕士学位论文第1 页摘要i n t e m e t 的设计者们开始并没有考虑到安全问题,随着i n t e m e t 的迅速发展,网络安全阉邃显得越来越突出。为了提高网络豹安全性,鑫特潮工理任务组 e t f( i n t e m e te n g i n e e r i n gt a s kf o r c e ) 于1 9 9 8 年1 1 月公布了i p 安全标准,即i p s e c协议族。i p s e c 提供了一种标准豹、健壮豹、包容广泛的机翻,可以在臻及其上层协议中使用,提供身份验证、机密性和密铜管理等安全保证。因特网密钥交换协议i k e ( i n t e m e tk e ye x c h a n g e ) 是i p s e c 协议族的熏要缀成鬻分,其主要功能是实现i p s e c 安全参数的协商与管理。i k e v l 协议是由i s a k m p 、o a k l e y 秘s k e m e 三个协议缓成翡一穆混合型按议。髓羞对性能、安全惶的更高要求。又增加了许多内容,以致熬个协议越来越庞杂,缺乏一致性。为此,i e t f工 乍组于2 0 0 5 年1 0 月发布了i k e 貉议抟第二舨,邸i k e v 2 。i k e v 2 简化了i k e v l中冗余的功能,增强了安全性,将所有协议整合在了一个文档( r f c 4 3 0 6 ) 中。目前,淫内关于i k e v 2 豹研究工作大多还笼子初多的理论阶段,其萨的实现很少。为此,本文将研究重点放在了i k e v 2 协议的设计与实现方面。通过与i k e强议第一版i k e v l 的比较,深入分析了i k e v 2 ,包括i k e v 2 协议的缀成、i k e v 2协商流程、i k e v 2 消息格式、i k e v 2 密钥协商等,并着蕻讨论了协议的安全性。在研究i k e v 2 协议概念体系秘实现鼓本的基础上,本文提出了一个切实可行的i k e v 2 实现方案,参考蓿名开源程序o p e n i k e v 2 ,采用面向对蒙的c + 十程序设计语畜,基于l i n u x 平台实现了一个安全的、具有基本功能并其有良好扩震牲的i k e v 2系统。本系绞出系统管理予系统、网络通传子系绞、消息协商子系统、载萄处理子系统、加密算法子系统和内核通信子系统等6 个子系统组成。采用p fk e y v 2 套接字与擐l 乍系统内垓安全数据痒邋信。本文对各个子系统的设计思想鄄功能划分进行了描述,并介绍了其工作流程。测试结果表明,能够完成密钥的协商并建立s a 。关键词:i p s e c ;i k e v 2 ;安全联勰:载葡第1 i 页河南大学研究生硕士学位论文a b s t r a c ti nt h eb e g i n n i n g ,t h ed e s i g n e r so fi n t e r a c tt a k en oa c c o u n to ft h es e c u r i t yp r o b l e m s w i t ht h er a p i dd e v e l o p m e n to fi n t e m e ta n dn e t w o r ks e c u r i t yi s s u e sa r eb e c o m i n gi n c r e a s i n g l yp r o m i n e n t t oe n h a n c en e t w o r ks e c u r i t y , i e t f ( i n t e r n e te n g i n e e r i n gt a s kf o r c e ) a n n o u n c e dt h ei ps e c u r i t ys t a n d a r d s ( i p s e c ) i nn o v e m b e r19 9 8 i p s e cp r o v i d e sas t a n d a r d ,r o b u s ta n di n c l u s i v em e c h a n i s m i tc a np r o v i d es o m es e c u r i t ya s s u r a n c e sf o ri pa n du p p e rp r o t o c o l ,s u c ha sa u t h e n t i c a t i o n ,c o n f i d e n t i a l i t y , a n do t h e rk e ym a n a g e m e n t ,e t c i k e ( i n t e m e tk e ye x c h a n g e ) i sa ni m p o r t a n tc o m p o n e n to fi p s e cp r o t o c o l ,w h o s em a i nf u n c t i o ni st or e a l i z ee x c h a n g ea n dm a n a g e m e n to ft h ei p s e c i k e vli sak i n do fm i x e dp r o t o c o lc o m p o s e do fi s a k m p , o a k l e ya n ds k e m e ,w i t ht h eh i g h e rd e m a n df o rt h ep e r f o r m a n c e ,s e c u r i t y , m a n yc o n t e n ti n c r e a s e da n da sar e s u l tt h ew h o l ep r o t o c o lm o r ea n dm o r ec o m p l e x ,l a c ko fc o n s i s t e n c y t h e r e f o r e ,i no c t o b e r2 0 0 5t h ei e t fw o r k i n gg r o u pi s s u e dt h es e c o n de d i t i o no fi k e ,i k e v 2 i k e v 2s i m p l i f i e st h er e d u n d a n tf u n c t i o no fi k e v l ,e n h a n c e st h es e c u r i t y , i n t e g r a t ea l lt h ep r o t o c o l si no n ed o c u m e n t ( r f c 4 30 6 ) a tp r e s e n t ,t h es t u d yo ni k e v 2i nc h i n ai ss t i l li nt h ep r e l i m i n a r yt h e o r ys t a g e ,a n dt h er e a lr e a l i z a t i o ni sr a r e l y 。t h e r e f o r e ,t h i sp a p e rw i l lf o c u so nt h ea s p e c t so fd e s i g na n dr e a l i z a t i o no ft h ei k e v 2p r o t o c 0 1 t h i sp a p e ra n a l y s e si k e v 2d e e p l yt h r o u g hc o m p a r i n gw i t l li k e vl ,i n c l u d i n gt h ec o m p o s i t i o no fi k e v 2p r o t o c o l ,i k e v 2n e g o t i a t i o np r o c e s s ,i k e v 2m e s s a g ef o r m a t ,i k e v 2k e ye x c h a n g ea n dt h es e c u r i t yo ft h ep r o t o c 0 1 o nt h eb a s i so fs t u d yo fi k e v 2p r o t o c o lm e c h a n i s m sa n di m p l e m e n t i o nt e c h n o l o g y ,t h i sp a p e rp r e s e n t sap r a c t i c a lr e a l i z a t i o np r o j e c to fi k e v 2 w i t hr e f e r e n c eo ff a m o u so p e ns o u r c e ,o p e n i k e v 2 ,a d o p t i n go b j e c t o r i e n t e dc + + p r o g r a m m i n gl a n g u a g e ,a n db a s e do nt h el i n u xp l a t f o r mt oa c h i e v eas a f ei k e v 2s y s t e mw i t hb a s i cf u n c t i o n sa n dg o o de x p a n s i o n t h es y s t e mc o n s i s t so ft h ef o l l o w i n gf i v es u b s y s t e m s :s y s t e mm a n a g e m e n t ,n e t w o r kc o m m u n i c a t i o n ,m e s s a g ee x c h a n g e ,p a y l o a dh a n d l i n g ,e n c r y p t i o na l g o r i t h ma n dk e r n e lc o m m u n i c a t i o n i ta d o p t st h ep f k e y v 2s o c k e tf o rc o m m u n i c a t i o nb e t w e e ni k ea n dt h eo p e r a t i n gs y s t e mk e r n e ls e c u r ed a t a b a s e i nt h i sp a p e r , t h ed e s i g nc o n c e p t河臻大学磷突生硕士学位论文第1 i l 菱a n df u n c t i o no ft h ev a r i o u ss u b s y s t e m sa r ed e s c r i b e da n dt h e i rw o r kp r o c e s s e sa r ei n t r o d u c e d t h et e s tr e s u l t ss h o wt h a te x c h a n g eo ft h ek e yc a nb ec o m p l e t e da n ds ac a l lb ee s t a b l i s b e d k e yw o r d s :i p s e c ;i k e v 2 ;s e c u r i t ya s s o c i a t i o n ;p a y l o a d美寻学位论文独立完成弄肺 j 喜创新的罩眶友人嘲i i 南大拳提出硕士学位年请。末,一、郑重声明:所呈夏酊攀证论工置本人置导师鳓指导下独立完成桶,对所研究的课题有帮锏见解。据我所每:瞽文幸特别加阻说明标注和致谢的地方,? ,论工章不包括其他人已经发丧或撰写辽的研元威泉,也不包措兵他人为获得恬何数t 、科研机构鲋掌住或正毒舌段保存汇编学位论文( 纸质文盘帝鬯亍文本) 。i 涉及保客内容酌学位论文在解藿后适用不授权书)攀住获得者( 拳1 圭论麦作者) 釜名:圣d 疆辱学位论王端导教噼茎名鲨生墨2 。叼车,e ,尹昌j,河南大学研究生硕士学位论文第1 页1 1选题背景第1 章绪论网络环境为信息共享、信息交流、信息服务创造了理想空间,网络技术的迅速发展和广泛应用,为人类社会的进步提供了巨大推动力。但必须看到,随之而来的网络信息安全问题日渐突出。据有关统计,目前美国每年由于网络安全问题而遭受的经济损失超过1 7 0 亿美元,德国、英国也均在数十亿美元以上,法国为1 0 0 亿法郎,日本,新加坡问题也很严重【l l 。网络安全问题的日益突出,已经影响了h 鹏m d 在某些领域的深入应用,也在一定程度上影响了信息技术的发展。网络信息安全已成为人们关注的核心问题。虽然网络安全技术的发展日新月异,但仍然跟不上网络发展的步伐,网路攻击手段层出不穷,网络安全的整体水平有待提高。如果没有安全设置,公用网络与专用网络就易于遭受未经授权的监视与访问。目前,出现了一些新的网络安全技术,其中虚拟专用网( v p n ) 技术f 2 】就是解决信息安全问题的一个最新、最成功的安全应用技术课题之一。v p n 技术就是在公共网络上建立专用网络,数据通过安全的“加密管道”在公共网络中传播。目前v p n 主要采用了如下四项技术来保障安全:隧道技术( t u n n e l i n g ) 、加解密技术( e n c r y p t i o n & d e c r y p t i o n ) 、密钥管理技术( k e ym a n a g e m e n t ) 和身份认证技术( a u t h e n t i c a t i o n ) 。口安全协议i p s e e ( i ps e c u r t yp r o t c 0 1 ) 协议族【3 ,4 】是组建v p n 所使用的一种主要协议,也是m t f 为了弥补i i i 啪e t 的安全性缺陷而设计的。i p s e c 是一组开放标准集,协同工作来确保对等设备之间的数据机密性、数据完整性以及数据认证。这些对等实体可能是一对主机或是一对安全网关( 路由器,防火墙等) ,或者它们可能在一个主机和一个安全网关之间,就像远程访问v p n 这种情况。i p s e 宅能够保护对等实体之间的多个数据流,并且一个单一网关能够支持不同的成对合作伙伴之间的多条并发安全i p s e c 隧道。i p s e c 在i s o 参考模型第三层,即网络层上实施安全保护,其范围涵盖了t c p i p 协议族中的p 协议及上层协议,如t c p 、u d p 、i c m p ,甚至包括在网络层发送数据的客户自定义协议。在第三层上提供数据安全保护的主要优点在于:所有使用i p 协议进行数据传输的应用系统和服务都可以使用i p s e e ,第2 页河南大学研究生硕士学位论文而不必对这些应用系统和服务本身做任何修改。i p s e c 使用封装安全载荷( e s p ) 协议【5 】或者认证头( a h ) 协议【6 】来对i p 数据报或上层协议进行保护,使用i k e 协议【7 】作为密钥管理协议为e s p 或a h 等安全协议协商建立安全联盟、加密、验证密钥。而i k e 协议因其复杂性已成为整个i p s e c体系的瓶颈。于是出现了i k e v 2 。由于其推出时间段,国际国内还没有很完善的实现方案出现。本文正是在此基础上对i k e v 2 的实现进行尝试。1 2 研究现状i k e 协议在整个i p s e c 体系中起着至关重要的作用。它是一种混合协议,建立在由n t c m e t 安全联盟和密钥管理协议( i s a k m p ) 定义的框架上。i k e 使用两个阶段的i s a k m p ,定义了四种模式。第一阶段中,不论使用主模式还是野蛮模式,都可以使用四种身份认证方法:预共享密钥、数字签名、公钥加密和改进的公钥加密。i k e 的复杂性一直受到业界广泛的批评。另外,它还存在易受攻击、功能冗余等不足。很多学者对i k e 进行研究,认为与其对现有的1 k e 协议进行修改,不如开发一个新的密钥交换协议,其中比较著名的有j f k t s 9 i 和i k e v 2 1 10 】。j f k 提出了一种新的密钥交换体制,在j f k 中取消了两个阶段交换的思想,只保留了一个阶段,并且采取了更为有效的方式来防止d o s 攻击和重放攻击。虽然与i k e v 2 比较而言,j f k 协议有着效率更高、更安全、实现更简单的特点,但由于其与i k e 协议的兼容性问题,i p s c c 工作组更加倾向于i k e v 2 。j f k 草案只更新至第四版本。虽然如此,j f k 协议的优点仍然吸引了众多学者对其进行研究。i i v 2 的正式r f c 文档在2 0 0 5 年1 0 月公布,它的目标是修正i k e 协议中存在的问题,同时继承了i k e 协议的很多特征,包括身份隐藏、完美向前保护( p f s ) ,两个阶段、加密协商等。同时重新设计协议,保证协议的安全性、有效性、健壮性和灵活性。虽然在其还是草案时,国际上就有很多学者对其进行研究,但因为它当时还不是一个成熟的协议,很少有人研究工程实现。直到正式的r f c 文档公布前后,才有一些学者和机构研究如何实现问题。由于开发时间短,很多功能和结构还不完善。在我国,对i k e v 2 的研究尚处于起步阶段,只有很少的学者和科研单位对其进行研究。在这种情况下对该协议及其实现进行研究更有着重要的实际意义。河南大学研究生硕士学位论文第3 页1 3 论文工作本文首先介绍了i p s e c 体系的整体结构、操作模式、工作原理和主要组件a h和e s p 安全协议、i k e 协议等方面,以及这些组件如何相互协作来共同完成对口层数据的安全保护。然后通过与i k e 协议第一版的比较,深入分析了i k e v 2 协议,包括i k e v 2 协议的组成、i k e v 2 协商的流程、i k e v 2 消息的格式、i k e v 2 密钥的协商、抵御d o s 攻击的机制等方面。在此基础上,提出一个可行的i k e v 2 设计方案,基于l i n u x 平台实现了一个安全的、具有基本功能并具有良好扩展性的i k e v 2 系统。该系统包括如下几个子系统:1 系统管理子系统,对整个系统进行管理,配置。2 网络通信子系统,提供i k e v 2 系统的网络接口,完成i k e v 2 消息的接收和发送。3 消息协商子系统,能够完成i n i t i a l 交换、c r e a t ec h i l ds a 交换和信息交换等协商交换,实现密钥的协商。4 载荷处理子系统,能够对载荷进行处理和生成。5 加密算法子系统,完成i k e v 2 密钥协商和i p s e c 安全通信所使用的密码算法的实现,包括3 d e s 、a e s 等加密算法、d h 交换算法、h m a c 算法等。6 内核通信子系统,采用p fk e y v 2 协议实现i k e v 2 系统与内核的通信。通过系统测试,证明本文所设计的系统达到了预期目标,协商双方能够进行通信,对密钥进行协商。本文共分六章:第1 章绪论,介绍论文设计的课题背景和所做的工作;第2章i p s e c 体系概述,介绍i p s e c 体系的基本理论,对体系中a h 、e s p 、s a 等协议及概念进行了介绍;第3 章1 k e v 2 协议分析,与i k e 协议第一版进行了比较,并深入分析了i k e v 2 协议;第4 章i 巳v 2 系统设计与实现,本章提出了【e v 2 实现的总体设计方案,并描述了该方案各个部分的设计思想和功能划分,对工作流程进行了介绍;第5 章系统测试;第6 章结束语,对论文所作工作进行总结,并对下一步工作进行展望。第4 页河南大学研究生硕士学位论文第2 章lp s e c 体系概述i p s e c ( i ps e c u r i t y ) 是一组开放协议的总称,由因特网工程任务组i e t f ( i n t e m e te n g i n e e r i n gt a s kf o r c e ) 于1 9 9 8 年1 1 月颁布【3 】,并于2 0 0 5 年1 0 月更新1 4 。目标是为i p v 4 和i p v 6 提供较强互操作能力、高质量和基于密码的安全。i p s e c 对于i p v 4是可选的,对于i p v 6 是强制的。2 1i p s e c 体系结构2 1 1l p s e c 框架结构特定的通信方之间使用i p s e c 在i p 层通过加密与数据源验证,来保证数据包在h t e r n e t 网上传输时的私有性、完整性和真实性。i p s e c 的体系结构如图2 - 1 所示【1 l 】。图2 - 1i p s e c 体系结构i p s e c 协议族包括安全协议部分和密钥协商部分。安全协议部分定义了对通信的安全保护机制。密钥协商部分定义了如何为安全协议协商保护参数,以及如何对通信实体的身份进行鉴别。i p s e c 安全协议包括封装安全载荷( e n c a p s u l a t i o n河南大学研究生硕士学位论文第5 页s 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 为通信提供完整性保护。i p s e c 协议使用i k e ( i n t o n e tk e ye x c h a n g e ) 协议实现安全协议的自动安全参数协商。i k e 协商的安全参数包括加密及认证算法、加密及认证密钥、通信的保护模式( 传输或隧道模式) 、密钥的生存期等。i k e 将这些安全参数构成的安全参数集合称为安全联盟( s e c u r i t y a s s o c i a t i o n ,s a ) 。i k e 还负责这些安全参数的刷新。此外,i p s c c 协议族还包括加密和认证算法、安全策略等。2 1 2l p s e c 安全服务i p s c c 提供了以下几个方面的安全服务f j 2 】:1 基于无连接的数据完整性使用i p s e c 能在不参照其他数据包的情况下,对任一单独的i p 包进行完整性校验,此时每个包都是独立的,可以通过自身来确认。此功能可以通过使用安全散列技术来完成,它可靠性很高,并且不容易被未授权实体所篡改。2 数据机密性数据机密性是指只允许身份验证正确者访问数据,对其他任何人一律不准,它是通过使用加密来实现的。3 数据源认证+ i p s e c 提供的一项安全性服务是对i p 包内包含的数据的来源进行标识。此功能通过使用数字签名算法来完成。4 访问控制如果没有正确的密码就不能访问一个服务或系统,可以调用安全性协议来控制密钥的安全交换,用户身份验证可以用于访问控制。5 抗重播作为无连接协议,m 很容易受到重播攻击的威胁。重播攻击是指攻击者发送多个目的主机己接收过的包,通过占用接收系统的资源,使系统的可用性受到损害。为此,i p s c c 提供了消息i d 等机制。2 2i p s e c 工作模式i p s e c 的安全协议有两种工作模式:传输模式( t r a n s p o r tm o d e ) 和隧道模式( t u n n e lm o d e ) 。传输模式用来保护口数据包的上层协议,它是在m 头与上层协第6 页河南大学研究生硕士学位论文议头之间插入一个特殊的i p s e c 头。隧道模式用来保护整个i p 数据包,在隧道模式下,要传输的整个i p 包都需封装到另一个i p 数据包里,同时在外部与内部i p头之间插入一个i p s e e 头。两种i p s e c 安全协议( a h 和e s p ) 均能同时以传输模式和隧道模式工作。只有在要求端到端的安全保障时,才使用i p s e c 的传输模式。在通信双方任何一方是安全网关时必须使用隧道模式。2 3 安全联盟和安全数据库2 3 1 安全联盟安全联盟( s e c u r i t ya s s o c i a t i o n , s a ) 是i p s e c 的基础。s a 是两个通信实体经协商建立起来的一种协定,它们决定了用来保护数据包的i p s e c 安全协议、协议的操作模式( 传输模式和隧道模式) 、密码算法、密钥以及密钥的有效存活时间等。s a 是“与协议相关”的。i p s e e 的a h 和e s p 协议都有一个s a ,如果主机a和b 同时通过a h 和e s p 进行安全通信,每个主机都会针对每一种协议构建一个独立的s a 。s a 是单向的。如果两个主机( a 和b ) 正在通过e s p 进行安全通信,那么主机a 需要有一个s a ,即s a ( o u t ) ,用来处理外发的数据包,还需要有一个不同的s a ,即s a ( h a ) ,用来处理进入的数据包。主机a 的s a ( o u t ) 和主机b 的s a ( i n ) 将共享相同的加密参数( 如密钥) 。类似地,主机a 的s a ( i n ) 和主机b 的s a ( o u t ) 也会共享同样的加密参数。由于s a 是单向的,所以针对外发和进入处理使用的s a ,分别需要维护一张单独的数据表。i k e 协议的主要功能就是对s a 管理和维护。s a 由一个三元组唯一地标识,该三元组包括安全参数索引( s e c u r i t yp a r a m e t e ri n d e x ,s p i ) ,源目的i p 地址及安全协议( a h 或e s p ) 。s p i 是唯一标识s a 的一个3 2 位整数,在a h 和e s p 头中传输。在i p s e c 保护个i p 包之前,必须先建立一个安全联盟( s a ) 。s a 的建立和管理有手工创建和动态建立两种方式。手工管理是最简单的也是必须的管理形式,管理员可以手工地为系统配置密钥和与其他系统通信所需的s a 。手工管理适用于小型的、静态的环境,但不易于扩展。在大规模的、可扩展的网络环境中就需要一个协议来动态的建立和管理s a 。河南大学研究生硕士学位论文第7 页2 3 2 安全数据库对于i p s e c 数据流处理而言,有三个主要的安全数据库:安全联盟数据库( s e c u r i t y a s s o c i a t i o nd a m b a s e ,s a d ) ,安全策略数据库( s e c u r i t yp o l i c yd a t a b a s e ,s p d ) 和对等方认证数据库( p e e r a u t h o r i z a t i o n d a t a b a s e ,p a d ) 。1 安全联盟数据库( s a d )任何i p s e c 实施方案都会构建一个安全联盟数据库,由它来维护活动的s a 记录。每个s a 都包括一个三元组索引,除此之外s a 还包含下面的域:s p i :s a 的接收端选择的一个3 2 位值,用来唯一确定一个s a 。s e q u e n c en u m b e r :6 4 位整数,用来产生a h 或e s p 的序列号,初始值为0 ,每处理一个数据包就加1 。a n t i r e p l a yw i n d o w :6 4 位计数器,用来确认a h 或e s p 封包是否发生重播情况。l i f e t i m e :s a 的存活时间,当时间到时,此s a 将无法继续使用。m o d e :i p s e c 的工作模式,有t r a n s p o r tm o d e 和t u n n e lm o d e 两种。t u n n e ld e s t i n a t i o n :使用t u n n e lm o d e 时目的口的外部h e a d e r 。p m t up a r a m e t e r s :当使用t u n n e lm o d e 时需要维护p m t u 以便能够对封包进行对照分割。a ha u t h e n t i c a t i o na l g o r i t h ma n da s s o c i a t e dk e y :a h 认证算法及密钥。e s pe n c r y p t i o na l g o r i t h ma n da s s o c i a t e dk e y :e s p 加密算法及密钥。e s pa u t h e n t i c a t i o nm g o f i t h r aa n da s s o c i a t e dk e y :e s p 认证算法及密钥。2 安全策略数据库( s p d )安全策略( s e c u r i t yp o l i c y ,s p ) 是i p s e c 协议族的重要组成部分,它决定了为一个数据包提供的安全服务。i p s , c 的策略由安全策略数据库维护,每个s p d 定义了通信如何保护,当每个口封包由m 层送出时,s p d 必须决定它可能运用的安全,s p d 可做出放弃、通行或保护3 种选择中的一种。当s p d 要保护某个m 封包时,它会去s a d b 中寻找相对应的s a ,s a d b 中的s a 可以手工建立或由i k e 自动建立,当选择手工建立时,若s a d b 里找不到相关s a ,则i p s e c 终止执行;当选择i k e 自动建立时,若s a d b 里找不到相关s a ,则i k e 开始进行s a 协商,以建立s a 。i p s e 所有封包的流通都必须遵循s p d ,包括外出数据包和进入数据包。在外出和进入数据包处理过程中,需查阅s p d ,以判断为这个包提供的安全服务有哪第8 页河南大学研究生硕士学位论文些。对外出通信而言,在s a d b 中进行s a 检索的结果是一个指针,指向s a 或s a 集合,s a 或s a 集合需要根据策略的要求,按指定的顺序依次对外出包进行处理,若s a 尚未建立,就会调用密钥管理协议来建立s a 。对进入通信来说,首先要对包进行安全处理,然后根据选择符( s e l e c t o r ) 对s p d 进行检索,证实对数据包采取的策略是否正确。选择符的任务就是从网络层和传输层的包头中将相关信息取出,再由s p d 决定封包的安全服务,选择符的选择条件包括:l o c a li p a d d r e s s :源地址,可以是一个3 2 位的i p v 4 地址或1 2 8 位的i p v 6地址,源地址从a h 或e s p 来源字段中取得,当数据包没有使用i p s e c 时,从i ph e a d e r 中取得。r e m o t ei p a d d r e s s :目的地址,同s o u r c ea d d r e s s 。n a m e :系统名称,可以是一个完整的d n s 名称、电子邮件或x 5 0 0d n地址。n e x tl a y e rp r o t o c o l :下层所使用的协议,从i p v 4 的“p r o t c o l ”域或i p v 6的“n e x th e a d e r ”域获得,i p s e c 将a h 和e s p 看作下一层协议。u p p e r l a y e r p o r t s :i p s e c 策略使用的源端口与目的端口。构建一个策略系统,需要解决策略的定义、存取、管理、交换、认证、发现机制等问题以及系统自身的安全性问题,其中策略的表示和策略在动态交换中的安全性问题是系统的核心问题。3 对等方认证数据库( p d )p a d 是一个新定义的数据库,它提供了s p d 与安全联盟管理协议例如i k e 之间的链接。p a d 具有如下几个关键功能:确定被相应i p s e c 实体认证的对等方或多组对等方;表明每个对等方所使用的认证协议和认证方法;为每个对等方提供认证数据;限制与该c h i l ds a 有关的对等方所确定的i d 的类型和值。为对等方的网关确定地址信息,例如口地址,d n s 名字。为了实现这些功能,p a d 为每个对等方维护一个条目,其中包括认证协议( 如:i k e v l ,i k e v 2 ) 、认证方法( 如:证书,预共享秘密) ,认证数据( 如:使用的证书,使用的预共享秘密) 。注意,p a d 的信息可以用于在两个对等方之间同时建立多个隧道模式的s a 。河南大学研究生硕士学位论文第9 页2 4i p s e c 安全协议i p s e c 采用两个安全协议来为口数据包提供一系列的安全服务:认证头( a u t h e n t i c a t i o nh e a d e r ,a i i ) 协议和封装安全载荷( 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 ) 协议。2 4 1 认证头协议( a h )认证头协议a l l 定义在r f c 2 4 0 2 ,作用是为i p 数据流提供高强度的密码认证,以确保被修改过的数据包可以被检查出来。a l l 定义保护方法、头的位置,身份验证的覆盖范围以及输入输出处理规则,但不对所用的身份认证算法进行定义。a l l 协议提供无连接的完整性、数据源认证和抗重放保护服务。它使用消息认证码( m e s s a g ea u t h e n t i c a t i o nc o d e s ,m a c ) 对p 进行认证,其认证范围包括整个i p 包。a h 默认并强制实施的h m a c 算法0 3 是h m a c m d 5 9 6 t 1 4 】和h m a c s h a 1 9 6 1 15 1 ,两者均被截短为9 6 比特。然而,a h 不提供任何保密性服务,不加密所保护的数据包。a h 协议可以单独使用,也可以和e s p 一起使用,当和e s p 一起使用时,先插入e s p ,再插入a h 。1 h 头部格式a h 分配到的协议号为5 1 。a h 头包含了5 个固定长度字段和1 个不固定长度认证数据字段,协议结构如图2 - 2 所示。各个字段的具体意义如下所述:o81 62 43 1下一个报头l负载长度l保留安全参数索引( s p i )序列号认证数据( 可变长)图2 - 2a l l 协议头结构下一个报头:字段长度8 位,标明a h 后的下一个负载类型。在传输模式下a h 后接传输协议报头,如果是一个t c p 报文,它的值是6 ,如果是u d p 报文,则为1 7 ;在隧道模式下a l l 后接球报头,如果是口v 4 报文,它的值是4 ,如果是i p v 6 报文,则为4 1 。负载长度:字段长度8 位,里面是a h 值以3 2 位的长度除以2 ,除以2第1 0 页河南大学研究生硕士学位论文的原因是因为a l l 原本是一个i p v 6h e a d e r ,在r f c 2 4 6 0 1 16 】中规定长度计算必须减去一个6 4 位长度,但是a h 以3 2 位长度计算,两个3 2 位长度等于一个6 4 位。保留:字段长度1 6 位,保留以备将来扩展功能使用,目前设为0 。安全参数索引( s p i ) :字段长度3 2 位,是一个3 2 位的伪随机数,由通信的对等实体生成,用以与报文的源p 地址、目的i p 地址和安全协议类型( a h e s p )等一起形成s a ( s e c u r i t ya s s o c i a t i o n ) 标识符( s a i d ) ,唯一标识该报文所属的数据流。序列号:字段长度3 2 位,相当于一个单向递增计数器。当一个s a 建立时,发送者和响应者序列号被初始化为0 ,通信双方每使用s a 发送1 个数据包,序列号加1 ,它用于防止数据包的重播攻击。认证数据:字段长度可变( 取决于采用的认证算法) ,其中包含该数据报的完整性校验值( i n t e g r i t yc h e c k i n gv a l u e ,i c v ) ,i c v 用来提供认证和数据完整性验证,i p s e c 支持采用m d 5 1 刀或s h a 1 1 1 8 1 算法生成i c v 。2 a h 的操作模式a h 操作模式包括传输模式和隧道模式,这两种模式简要介绍如下:传输模式:在传输模式中,a h 头被插在i p 头之后但在所有的传输层协议之前。图2 3 说明了传输模式中a h 头相对于其他头部域的位置。应用a h 前的i p 数据包区巫工瑁a h 认证后的i p 数据包- y -图2 - 3a h 传输模式隧道模式:在隧道模式中,a h 头插在原始的口头之前,另外生成一个新的i p 头放在a h 头之前。图2 - 4 说明了隧道模式中a h 头相对于其他头部域的位置。河南大学研究生硕士学位论文第11 页应用a h 前的i p 数据包匝巫工珂a h 认证后的i p 数据包图2 - 4a h 隧道模式2 4 ,2 封装载荷协议( e s p )封装安全载荷协议e s p 是另一种i p s e c 协议,它定义在r f c 2 4 0 6 中,用来加强p 数据包的安全性,与a h 协议相比,e s p 协议提供了m 数据包的机密性、数据源认证、无连接的完整性、抗重播服务和有限信息流机密性。e s p 除采用认证算法提供与a h 类似的认证服务之外,还增加了采用加密算法提供数据机密性服务,e s p 支持的加密算法有d e s c b c t l 9 1 、3 d e s c b c 2 0 j 等。e s p 的加密与认证服务是可选的,即或提供加密服务、或提供认证服务、或同时提供两种服务。1 e s p 头部格式e s p 分配到的协议号为5 0 。e s p 协议结构分为h e a d e r 和t r a i l e r ,包含4 个固定长度字段和3 个不固定长度字段,协议结构如图2 - 5 所示。各个字段的具体意义如下所述:081 62 43 l安全参数索引序列号初始化向量( 可选)负载数据( 变长)填充域( o - 2 5 5 字节)填充长度下一个报头认证数据( 可变长)图2 - 5e s p 协议结构安全参数索引( s p i ) :同a h 一样,字段长度3 2 位,用以与报文的源口第12 页河南大学研究生硕士学位论文地址、目的i p 地址和安全协议类型( a h e s p ) 等一起形成s a 标识符( s a i d ) ,唯一标识该报文所属的数据流。序列号:同a f t 一样,字段长度3 2 位,相当于一个单向递增计数器,用于防止对数据包的重播。初始化向量( ) :e s p 根据选用的加密算法决定其是否可选,初始化向量的长度由加密算法决定,此字段是不加密的。负载数据:字段长度可变,但必须为8 的整数倍,如果e s p 使用机密性服务,负载数据为该数据包采用加密算法加密后的密文。填充域:字段长度0 2 5 5 字节,提供给加密算法使用,或用于对齐填充长度。填充长度:字段长度8 位,标明填充域中所填充的比特长度。下一个报头:同a h 一样,字段长度8 位,标明e s p 封装的协议数据类型。验证数据:同a h 一样,字段长度可变( 取决于采用的认证算法) ,i p s e c采用m d 5 或s h a 1 算法生成该数据报的完整性校验值i c v ,用来提供认证和数据完整性验证服务。2 e s p 操作模式和a h 协议情况一样,e s p 在数据包中的位置取决与e s p 的两种操作模式。传输模式:在传输模式下,e s p 被插在口头和所有的选项之后,但是在传输层协议之前。图2 6 说明了传输模式中a h 头相对于其他头部域的位置。图2 - 6 中,e s p 的头部域由s p i 和序列号域组成,而e s p 尾部由填充域、填充长度和下一个头部组成。加密图2 - 6e s p 传输模式隧道模式:在隧道模式中,e s p 被插在原始i p 头之前,并且生成一个新的i p 头并将其插在e s p 之前。图2 7 对这种情况进行了说明。河南大学研究生硕士学位论文第1 3 页加密图2 - 7e s p 隧道模式2 5i n t e r n e t 密钥交换协议( i k e )i n t e m e t 密钥交换协议( i k e ) 用来在通信双方之间建立和维护s a 。它结合了i s a k m p t m 丑1 包格式,o a l d e y 密钥确定协议 2 3 1 的交换模式和部分s k e m e 的共享和密钥更新技术。i s a k m p 集中了安全联盟管理,减少了连接时间;o a k l e y 生成并管理用来保护信息的密钥。为保证通信的成功和安全,i k e 采用两个阶段来完成协商操作。i k e 为i p s e c 通信双方提供用于生成加密密钥和认证密钥的密钥信息。同样,i k e 使用 s a k m p 为其他i p s e e 协议( a h 和e s p ) 协商s a 。通常称定义在r f c 2 4 0 7 、2 4 0 8 、2 4 0 9 t 2 4 , 2 1 刀的i k e 协议为i k e v l 。后来随着对性能、安全性的更高要求,又需要增加n a t 穿越( n a tt r a v e r s a l ) 1 2 5 , 2 6 , 2 7 , 2 s 1 、遗传认证( l e g a c ya u t h e n t i c a t i o n ) 、远程地址采集( r e m o t ea d d r e s sa c q u i s i t i o n ) 等内容,以致整个协议内容越来越庞杂,缺乏一致性1 2 9 。i k e 在整个i p s e c 架构中的位置至关重要,使用非常频繁,所以其低效的性能已经成为系统的瓶颈。因此,迫切需要对i k e v l 进行精简来降低其复杂性t 3 0 l 。为此,m t f 自2 0 0 2 年2 月开始,组织i k e 第二版( i k e v 2 ) 的起草工作,于2 0 0 5 年1 0 月发布了1 k e v 2 的正式版本。第14 页河南大学研究生硕士学位论文第3 章lk

温馨提示

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

评论

0/150

提交评论