已阅读5页,还剩87页未读, 继续免费阅读
(计算机应用技术专业论文)小设备中安全功能的设计和实现——基于ipsec和ike.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
论文摘要 随着嵌入式通信网络技术的发展和良好的应用前景,特别是i p v 6 协议的逐 步完善和应用需求,越来越多的“小设备”( l o wc o s tn e t w o r k a p p i i a i l c e ) 进入 了应用场合。出于网络设备共同的安全需求以及小设备的基本特性,如硬件资源 有限、应用目的单一等,针对小设备这种应用环境下安全功能的研究,成为了当 前嵌入式通信领域的研究热点之一。其中基于i p s e c i k e 的安全功能是这些研究 中的一个分支。 本文针对小设备的设备特性,以及小设备上协议栈实现的要求进行了讨论, 并从i p s e c ,i k e 的协议冗余性出发,提出了以i p s e c 珏 协议精简为出发点的安 全功能设计方案。 首先,本文介绍了小设备的概念、基本特点、对协议栈实现的基本要求及对 安全功能的需要,从而引出i p s e c i k e 协议,并介绍了论文的课题背景、前期工 作等。 其次,本文分析了碑s e c 协议的各个模块提供的安全功能,其中包括对a h ( 认证头) 和e s p ( 封装安全载荷) 的分析和协议精简、对传输模式和隧道模式 的应用模型分析和协议精简。并在协议精简方案的基础上,阐述了具体的实现方 法,包括总体框架及安全策略库、安全关联库、出入栈报文的协议处理、抗重 播窗口等模块的具体实现,并给出了主要数据结构和主要函数的处理流程。 然后,本文又针对i k e 协议进行了分析、简化和实现。其中包括e 阶段1 中主模式和积极模式、四种验证方式的分析和简化,阶段2 的协议分析,新组模 式的分析和简化,完美前向保密的分析和简化、安全策略协商的分析和简化。并 在分析的基础上阐述了具体的实现方法,包括总体框架及协议处理的实现。其中 包括各个模块的主要数据结构及协议处理流程。 最后,通过对比本实现方案和传统实现方案所提供的安全功能及对完整协议 栈的支持程度分析了实现的效果,验证了本实现方案在小设备中的可行性和实用 性,也描述了本实现方案的一些局限。通过对应用i p s e c 后协议报文处理能力的 测量,分析了应用i p s e c 前后对小设备的影响。同时,对实现本协议栈所占用的 代码区存储空间进行了测量,供同类的研究做参考。 关键字:小设各,i p s e c ,蛐,嵌入式系统,i p v 6 第l 页 a b s t r a c t w i t ht h e d e v e l o p m e n t o fe m b e d d e ds y s t e ma i l dc o m m u i l i c a t i o nn e t w o r k , e s p e c i a i l yt h ed e v e l o p m e n to fi p v 6 ,m o r ea n dm o r ea p p l i c a d o n sf o rl o wc o s t n e t w o r ka p p l i a n c e ( l c n a ) 印p e 跹f o rt h ec o t m o ns e c u r i t yp m b l e mt on e 似o r k a p p l i a l l c ea n dt h ec h a r a c t e l j s t i co fl o wc o s tn e t w o r ka p p l i a n c e ( f o re x 锄p l e ,t 1 1 e i i m i t e dr e s o l l r c ea 1 1 dt h ec e r t a i na p p l i c a t i o nb o u n dt ot h ed e v i c e ) ,s o m er e s e a r c h e so n t h es e c 嘶t y 丘m c t i o n sa p p e a r e d t h er e s e a r c hb a s e do ni p s e c i k ei so n eo ft h e b 瑚c h e s 1 1 l i st h e s i sp r 0 v i d c sas i m p l m c a t i o ns o l u t i o nb a s e do nt h ef e a t u r eo fl c n aa 1 1 d i p s e c i k ea n dg i v e so u tt 1 ed e t a i l so f t l ei i i l p l e m e n i a t i o na sw e l l f i r s t ,t h i st 1 1 e s i si n t r o d u c e st h ec o n c e p t 柚df e a m r co fl c n aa 1 1 da n 触y s i st 1 1 e r e q u i r e m e mo ni m p l e m e n t i n gt h es t a c ko nl c n a a r c rt l l em o d u c t i o no fs e c 嘶t y r e q u i r c m e n tf o rl c n a ,i p s e c i k ei si n t r o d u c e d t h eb a c k g m u n da n dt h ep r e w o r k o f t l l i st h e s i sa r ei i l 缸o d u c e da s 、 吧1 1 s e c o n d ,t h i st h e s i sa l l a l y s i se a c hp a r to fi p s e ca n dp r o v i d e st h es n n p l i 矗c a t i o n s o l u t i o n t h e s ep a r ti n c l u d ea ha n de s p t r a n s p o r ta n d1 、m e lm o d e ,e t c a r e rt 1 1 e d e t a i l e ds i m p l m c a t j o ns o l “o n ,t 1 1 et h e s i s 西v e so mt h ei 瑚p l e m e n 诅t i o no fi p s e c , i 1 1 c l u d i i l gt h em a j o r 出旺as 廿u c t u r ea i l dt 1 1 ep r o c e s so f m a i nf i l l l c t i o n 1 1 1 i r d ,t h i st l l e s i s 姐a l y s i s 正a i l dp r o v i d e st h es i 唧1 m c a t i o ns o l u 廿o n 1 km a i n c o n t e n t sa r ea b o u tt h e s i m p l i c a t i o no fm a i l l m o d ea 1 1 d a g 酽e s s i v em o d e , s i m p l i f i c a t i o n o ff o u r 呻e so fa u t h e n d c a t i o nm e m o df o rp h a s e1 n e g o t i a t i o n , i n t r o d u c t i o no f p h a s e2n e g o t i a t i o n ,s i m p l i 矗c a t i o no f p e r f b c tf o r w a r ds e c u r i 可( p f s ) , s i m p l i 矗c a t i o no fs e c u r i t yp a r a m e t e r sn e g o t i a l i o na j l dn e wg f o u pm o d e 1 k sn l c s i s g i v e so u t 出em 旬o rd a t as 衄1 c t l l r ea n dl h ep r o c e s so fm a i nf h n c t i o n sa sw e l l a tl a s t ,t h i st h e s i s c o m p a r e s t i l e s 抽l p l i f i e d s o l u t i o na i l dt 1 1 e 仃a d i t i o n a l i m p l e m e n t a t i o ni ns u c hf i e l da ss e c u m y 如n c t i o n sp m v i d e d ,c a p a b i l i t yt ot h ee n t i r e p r o t o c 0 1 1 1 l i st h e s i sc o m p a r e st h eo v e r 1 e a do f p m t o c o lp r o c e s s i n g 谢mi p s e ct o 山e o n e 、析也o u ti p s e c ,s om a tt h ei m p a c to fi p s e cc a nb ee v a l u 砒e d t h e 也e s i sp r e s e n t s t h es i z eo ft h es o u r c ec o d ea 1 1 d 出eb i n a r ye x e c u t a b kc o d e ss ot l l a tm er e s u l tc 锄b e r e f e r e n c eb y 池rr e s e a r c h e s 1 “y w o r d s :l o wc o s tn e t 、v o r ka p p i j a n c e ( l c n a ) 。i p s e c ,i k e ,e m b e d d e ds y s t e m ,i p v 6 第页 学位论文独创性声明 本人所呈交的学位论文是我在导师的指导下进行的研究工作 及取得的研究成果据我所知,除文中已经注明引用的内塞外, 本论文不包含其他个人已经发表或撰写过的研究成果对本文的 研究做出重要贡献的个人和集体,均已在文中作了明确说明并表 示谢意 作者签名:墨:l 盗日期:匕:主:兰z 学位论文授权使用声明 本人完全了解华东师范大学有关保留、使用学位论文的规定,学 校有权保留学位论文并向国家主管部门或其指定机构送交论文的电 子版和纸质版有权将学位论文用于非赢利目的的少量复钥并允许论 文进入学校图书馆被查阅有权将学位论文的内容编入有关数据库进 行检索有权将学位论文的标题和摘要汇编出版保密的学位论文在 解密后适用本规定 学位论文作者签名:袁1 勰 日期:型f z :! :! ! 导师签名: 日期: 华东师范大学硕上学位论文 小设备中安全功能的设计和实现一基于i p s e c 和i k e 第一章绪论 本章给出课题的研究背景。首先简要介绍小设备( l o wc o s tn e t w o r k a p p l i a n c e ) 的基本概念及相关内容,对小设备的基本特点、安全需求做出简 要说明。其次介绍本课题的课题来源及先期的工作,为后文的具体描述奠定基础。 然后会简略介绍本文研究的主要内容:即针对小设备如何实现i p s e c i k e 这一 安全功能。最后,会概述撰写本文所作的主要工作和本文的创新点,并给出论文 的结构。 1 1 课题背景 本课题的工作重点是在熟悉i p s e c 和i k e 协议理论基础上,通过分析小设 备( l o wc 。s tn e t w o r ka p p l i a n c e ) 1 1 的基本特点和现有平台( 即后文会 介绍的自主研发的无操作系统环境的i p v 4 i p v 6 双栈) 对协议实现的要求,并 讨论i p s e c i k e 协议中存在的冗余性及不适合小设备应用背景的部分,提出 i p s e c i k e 协议的简化方案,并设计和实现这两者。目标是提供满足小设备安 全需求及资源限制的i p s e c i k e 协议栈。故本节首先介绍这一课题的相关背 景。 1 1 1 小设备的概念和应用背景 近年来,随着嵌入式系统和通信网络技术的发展,嵌入式通信网络设备的应 用越来越广泛。嵌入式系统正逐渐融合更多的网络通信技术和其他各类新技术。 集移动通信、网络技术和嵌入式计算机系统等多种关键技术于一体的系统的出 现,使得通信服务和基于通信网络的各种服务在任何时候、地点都成为可能。 l c n a ( l o wc 。s tn e t w o r ka p p l i a n c e ) 设备1 1 ,即小设备,是此背 景下一类设备的统称。可以将其定义为:一种嵌入式的、基于特定应用、具有网 络功能的低成本主机端设备。它是嵌入式系统和网络通信结合的一个发展方向, 正影响和改变着我们的生活方式。 从实际应用角度,小设备的典型应用包括: 能接入网络的家庭电器:如报警器、微波炉、电冰箱等。 具有上网功能的娱乐影音设备等:例如电子宠物,m p 3 。 具有网络功能的手持设备也可以看作高端的小设备:如个人数字助理 第l 丽 华东师范丈学硕士学位论文小设备中安全功能的设计和实现一基十i p s e c 和i k e ( p d a ) 、智能化手机和移动电话等。 可以进一步将小设备的概念和及其表征的属性抽象成如下几点: 小设备基于嵌入式设备。即小设备的可用资源是受限的。 小设备是基于特定应用的,而非用于通用系统。即某种小设备针对某个特定 应用。 小设备具备网络功能。作为主机端设备,它必须有网络互连的功能,也具有 网络设备的共有特征,例如本文所研究的安全性问题。 小设备是低成本的,其设计要考虑性价比。 一些建议草案n3 也对小设备的硬件资源作了描述和限制:小设备常使用8 位、1 6 位或低端3 2 位嵌入式处理器,主频为几十m h z ,配置几十k 到几m 的 内存( r o m + r a m ) 。使用以太网或者无线接入i n t e r n e t 由于现有i p v 4 网络存在的一些局限性,现有的针对小设备的前瞻性研究都 将i p v 6 作为网络层协议,或者同时提供i p v 4 i p v 6 双栈以解决过渡时期的问 题。i p v 6 解决了地址短缺的问题,同时还兼顾考虑了安全性、组播、移动性等 问题。故本文是基于i p v 6 进行研究工作的,一些讨论针对i p v 6 ,但对i p v 4 也有指导意义。 1 1 2 小设备中的安全要求及i p s e c i k e 的基本概念 小设备和其他网络设备样面临一个问题,即安全问题。随着人们越来越重 视网络设备的安全性,实现一个适合小设备特点的安全性解决方案对小设备的应 用前景有着深刻意义。 t c p i p 协议栈在各层都提供了一定的安全机制,本文以i p 层的安全协议, 即i p s e c i k e 为研究对象。 i p s e c 工k e 是i e t f ( 工n t e r n e te n q i n e e rt a 8 kf o r c e ) 给出的安 全标准,它把多种安全技术相结合构成个完整的安全体系结构。i p s e c 通过 对数据加密、认证和完整性检查来保证传输的可靠性和机密性。i p s e c 协议由 认证头协议( a u t h e n t i c a t i 。nh e a d e r ,a h ) 、封装安全载荷协议 ( e n c a p s u l a t e ds e c u r i t yp a y l o a d , e s p ) 和密钥交换协议( i n t e r n e t k e ye x c h a n g e , 工k e ) 组成。 i p s e c i k e 作为一种基于i p 网络的安全标准,同时也是i p v 6 中必须实 第2 页 华东师范大学硕士学位论文 小设各中安牟功能的设计和实现一基于l p s e c 和i k 正 施的委奎胜机制。它提供了可行的安全措施,这些措掩包括: 数据起源地验证 无连接数据的完整性验证 数据内容的机密性 抗重播保护等 密钥交换和协商 本文以i p s e c i k e 为研究对象而非其它层的安全措施为研究对象主要基 于如下考虑: 1 ) 工p s e c 是工e t f ( 工n t e r n e te n g i n e e rt a s kf 。r c e ) 制定给的工业标 准,其应用得到了广泛的支持。 2 ) i p s e c 是i p v 6 协议要求必须实现的安全机制,本文研究的课题是前期i p v 6 相关研究工作( 后文将详细介绍) 的继续,故从对i p v 6 协议支持的完整性考虑, 应该以i p s e c 为主要研究对象。 3 ) 由于小设备可自g 支持有线、无线等多种链路,不同的链路对安全协议的要求 不同,故本文不讨论针对某个特殊链路层的安全功能。传输层及应用层的安全协 议在使用时,常会和特定应用关联( 如s s l 与h t t p 常联系使用) ,故也不具有 通用性。而网络层作为承上启下的一层,在网络层提供安全,对上下层都不需要 很多的修改,对应用的类型也没有限制。 鉴于以上论述,本文的主要研究目标是通过对小设备的特点、安全性需求、 i p v 6 协议特征和i p s e c i k e 协议本身的特点等多方面的问题进行分析和讨 论,提出适合小设备的i p s e c i k e 实现方案,并提供具体的设计和实现。需要 注意的一点是,本文研究i p s e c i k e ,并不代表其他安全手段不适合小设备。 1 1 3 小设备的特点及其对协议栈实现的要求 在小设备中实现协议栈( 包括t c p i p 协议及安全协议) 或应用程序不同于 通用系统的实现。这主要是由于如下的特性决定的: 小设备是面向低成本( 低端) 的系统,和具备高配置的嵌入式系统( 如路由 器) 不同,本文的小设备环境没有操作系统的支持,而仅实现了一些基本的操作 系统功能。 小设备受到成本和硬件条件的限制,计算能力不能和通用平台或专业设备相 第3 砸 华东师范大学硕士学位论文小设备中安全功能的设计和实现一基于i p s e c 和i k e 比。小设备的存储资源有限。其代码区( r o m ) 和动态内存区( r a m ) 都受到限制。 弱可配置性。小设备往往没有与使用者交流的界面,故其对参数的配置和动 态修改能力不如通用系统。 小设备是面向某种应用的,实现时可以弱化通用性的考虑。 小设备是种主机设备( 端设备) ,而非网络中间设备( 如路由器) 。 同时,在小设备上进行开发,无论是协议栈或者应用程序的开发,通常需要 注意以下几个方面: 代码的效率,即代码的执行时间。通用系统虽然也要求高的代码执行效率, 但在小设备中,执行效率更加敏感。 代码量,即对于代码区内存的使用。避免次要功能,突出主要功能是设计时 的基本理念。 动态内存的使用。动态内存使用的峰值也决定了有多少余下内存可以保留用 作缓冲区( 如输入队列) ,这些缓冲区对协议的实现效果影响较大。 能源的节省( 小设备可能使用电池供电) 。 一般执行效率高的程序,也能比较好地节省能源。因此需要着重考虑的足前 几方面的问题。故小设备中的协议栈应该具有如下特点: 代码量小,能存放在r o m 区中,并且占尽可能小的比例。这一要求决定了小 设备不可能具有太复杂的功能,程序开发的思路不能追求”大而全“,而应该综 合考虑程序大小和应用需求的平衡,对常用或者重要的功能序应该优先实施,对 次要或不常用功能则应该考虑简化。 执行效率较高,即代码应避免不必要的处理流程。这一要求决定了小设备有 时需要做出代码耦合度和代码执行效率间的权衡,即用模块间的紧耦合来提高执 行效率。本文3 2 节考察i p s e c 的部署位置,即为这种原则的一个应用。 动态内存和缓存区大小需要平衡,不同的c p u 处理能力和内存配置决定了应 更多动态分配内存还是更多使用缓冲区或静态内存。 程序可装卸化,即通过编译时环境变量的设置,可以裁减程序模块。针对特 定类型应用,可以根据应用的特点进行“量体裁衣”,进行特殊设计。例如本文 所述的i p v 6 实现同时支持i p v 4 v 6 双栈,也可以根据需要选编译其中之一, 生成的可执行代码体积就较小。 按以上要求考察本文涉及的i p s e c i k e 协议,其通用平台上的实现( 如 箱4 页 华东师范人学硕士学位论文小设备中安争功能的设计和实现一基于i p s e c 和i k e w i n d 。w s 、l i n u x 上的实现是从大而全的角度出发的,其协议功能非常完整, 但需要小设备无法承受的资源消耗( 代码区、动态内存和c p u 处理时间等) 。故 在小设备中部署i p s e c i k e 要根据上述原则进行协议精简,在保留协议的主要 功能、保持协议兼容性的同时,简化掉冗余和较少使用的功能。 1 1 4 国内外的研究现状 在国外( 如日本) 对小设备的研究十分重视。一些研究机构或者厂商已经开 始提供基于小设备的应用产品。这些产品大多基于i p v 6 协议栈或者i p v 6 v 4 双栈。 同时,这些研究机构和厂商也提出了一些针对小设备的协议栈及安全措施的 实现建议和草案。针对i p s e c i k e 或类似安全协议,这些建议和草案集中从 以下几个个角度研究小设备中安全功能的实现: 完全采用现有协议。这种方案会造成协议栈过于庞大,往往需要通过硬件手 段来提高效率并减少代码空间。这种方法的好处是协议实现的完整性和高的协议 处理效率,缺点是成本较高。 对现有协议进行协议改造或提出新的协议,使之适合小设备。例如一些研究 提出了新的密钥分发和管理的协议以取代i k e ( 2 】。这种方案可能和目前的协议 栈兼容性较弱。同时,这些修改后的或者新产生的协议没有形成标准和大规模的 部署,故实用性还不得而知。 对现有协议进行协议精简,使之适合小设备。这种方法实现的协议栈是标准 协议栈的子集,具有高兼容性。然而到目前为止,并没有产生完整详细的方案或 建议。例如,一些草案1 1 也仅从宏观上给出了笼统的i p s e c i k e 简化建议,不 具有实际的可操作性。 也有一些研究集中论述了小设备中实现安全性的基本原则和面临的困境,而 没有针对某种特别的协议】。 本文主要从i p s e c i k e 协议的冗余性入手,提出了详细的简化方案,其思 路和上述第三点一脉相承。不同的是,本文对协议的大多数模块都提出了较完整 的简化建议,而并非针对整个安全框架给出宏观的简化思想,同时本文还提供了 具体的实现。 国内还较少有针对小设备的安全性讨论。一些对嵌入式系统的安全性研究或 者i p s e c i k e 的研究主要针对路由器或者网关设备,其系统配置往往是高端 第5 页 | f ;东9 币范大学硕士学位论文小设备中安全功能的设计和实现一基于i p s e c 和i k e 的,应用背景也和小设备作为终端设备有一定区别,故设计思想和实现方法都会 有一些区别。 1 2 课题来源和前期工作 本课题是上海市科委科技攻关计划项目( 编号:0 3 5 1 1 5 0 4 0 ) :“小设备中 i p v 4 i p v 6 协议栈的实现”的延续,由于项目本身的特点对本文的实现有一定 的影响,故本节将主要介绍此项目的背景资料,并给出其对本课题的影响和指导 作用。 1 2 1 前期工作的项目背景 前期项目的目的是在小设备中设计和实现个支持i p v 4 i p v 6 的协议栈。 前期项目的研究目标为; 在通用嵌入式c p u 上实现i p v 6 协议栈,使安装了嵌入式c p u 的小设备( 不 需要操作系统) 可接入运行i p v 6 协议的因特网:根据小设备多样性的特点,i p v 6 协议栈的实现程序可以根据实际需要对协议功能进行灵活裁剪,以满足不同的应 用需求。 利用通用嵌入式c p u 实现高效和小尺寸的i p v 4 v 6 双栈运行。 实现一个基于i p v 6 协议的概念性应用系统,验证在通用嵌入式c p u 上运 行的i p v 6 协议栈的功能和性能。 在ip v 6 协议栈上实现t c p u d p 协议,建立协议栈的应用开发平台,提供 规范有效的程序调用接口和程序库。 前期项目研究了下述内容: 1 ) i p v 6 i p v 4 双协议栈及其上层协议的实现,在嵌入式c p u 上,无操作系统 的环境下实现工p v 6 、工c m p v 6 、t c p 、u d p 、工p v 4 、工c m p v 4 、a r p 、h t t p 等协议。 2 ) 协议栈接口技术。实现类似于目前常用的s o c k e ta p i 接口,同时考虑协 议栈的总体运行性能,提供直接调用核心代码的接口方式。两个接口共同支 持了应用开发平台。 3 ) 概念性应用系统:基于i p v 6 的数字有线广播系统和可直接上因特网的扬声 器装覆。 第6 页 华东师范大学硕士学位论文小跬备中安全功能的垃计和实现一基于i p s e c 和f k e 1 2 2 前期工作中i p 、r 4 i p v 6 双栈的主要架构 前期实现的i p v 4 i p v 6 双栈的主要架构如图所示 图1 1 i p v 4 i p v 6 双栈架构图 其中单向细箭头表示函数的单向调用关系;双向细箭头表示函数的双向调用 关系;单向粗箭头表示函数对存储缓冲区的读取关系;灰色部分表示缓存区。 限于本文的研究方向和篇幅,故不对此协议栈架构做进一步的阐述,一些模 块对本文的研究有影响,则会在后文具体描述。 1 。2 3 前期工作对本文论题的影响 本课题是前期工作的延续,即在前期研究的基础上进一步研究小设备中如何 实现r p s e c i k e 协议,故会受到前期项目设计框架的影响,这种影响体现在如 下几个方面: 前期的设计是在个无操作系统的环境中实现了协议栈,整个协议可以看作 是一个单进程的程序,其优先级的区分是靠不同级别的中断来实现的。也就是说, 本文的实现仍要在这种无操作系统的背景中进行,不能利用诸如消息机制、进程 问通讯、进程切换、守护进程等操作系统提供的功能。 第7 砸 华东师范大学硕十学位论文 小设备中安全功能的设计和实现一基于i p s e c 和i k e 前期的s 。c k e t 设计本质上是阻塞模式的模型,而其内部实现的阻塞模式和 非阻塞模式本质上是把阻塞点放到了协议栈中不同的位置。例如阻塞模式的 s e n d 函数是把阻塞点放到函数内部,非阻塞的s e n d 是把阻塞点放到了s e l e c t 程序中。故应用层程序( s 。c k e t 程序) 的阻塞点仅能在s 。c k e t 函数集中,并 只有一个阻塞点。这样,当有多个应用层程序的时候,他们必须使用s e l e c t 来作为唯一阻塞点,也就是说应用程序的代码必须混合在一起,这种处理对只支 持有限应用程序的小设备是简约而合适的。而i k e 协议这一应用层协议是在 s 。c k e t 基础上的,按普通s o c k e t 程序来处理,必须将其和其他应用程序混合, 形成唯一的阻塞点,即i k e 协议对应用程序不透明。这种不透明性对应用程序 开发者提出了非常高的要求,即开发者必须熟悉i k e 协议的对其影响,这显然 是不合适的。所以本文采用了特别的处理方法,将i k e 融合到协议栈中,第五 章中会详细介绍这种设计。 前期设计的协议栈出于效率的考虑,在各个层次之间没有明显的抽象接口, 例如没有在i p 层和网络接口层之间增加独立的网络层协议驱动,也没有提供诸 如r a wi p 这样的接口,当新的实现要求对某层报文作特殊处理的时候( 例如直 接操控i p 报文) ,要么设计独立的接口( 例如增加用户接口使之能直接处理i p 报文) ,要么修改现有协议栈。 前期的设计在协议上下层间有一定耦合,出于效率的考虑,协议栈上下层对 传递的数据结构都会直接进行修改,有时还会修改内存管理模块的数据结构,而 非使用固定的接口来完成。例如在t c p 协议处理外出报文时,会估算i p 层的报 文头长度并为之预留内存空间,当估算的长度和实际长度不符合时( 例如本文设 计中i p s e c 会在传输层头部之前插入新的载荷) ,就需要调整i p v 6 协议模块 和内存管理模块的部分数据结构,同时还要对上层操作这些数据结构的行为进行 修改。故本文设计i p s e c i k e 时,必须考虑对其他层的影响,即不能完全做到 不同层协议间的完全透明。 1 3 本文的技术路线、主要研究内容和创新点 1 3 1 技术路线 本文采用的技术路线是在针对现有协议的冗余性和小设备的具体需求,在协 议功能分析的基础上,使用协议精简的方法来设计和实现适合小设备的 i p s e c i k e 协议栈,即实现一个轻量级( 1 i g h t w e i g h t ) 的i p s e c i k e 协 议栈。 第8 页 华东师范大学硕十学位论文小设备中安全功能的酸汁和实现一蓦于i p s e c 和i k e 这样做的目的在于: 和目前的实现兼容,使小设备能和大多数现存设备的i p s e c i k e 协议互连。 现有安全协议经过了一定时间的考验,具有良好的安全性和可信度。 i p s e c i k e 本身存在较大冗余性( 后文会详细分析) ,有简化的空间。 更好的延续先期工作的设计思想。 1 3 2 主要研究内容 本文根据小设备的特点,通过分析和讨论i p s e c i k e 协议的基本原理和其 存在的冗余性,提出协议精简的方案。同时,提出可行的设计方案并实现之。主 要研究内容包括: 小设备的设备特性对协议实现的要求。 i p s e c i k e 影响协议处理的关键问题。 i p s e c i k e 协议的基本原理及其协议冗余性。 i p s e c i k e 协议的简化方案和实现方法。 项目前期工作对本文实现的影响 简化实现方案和现有实现方案的对比分析。 简化实现方案的效果分析。 研究目标是:简化、设计并实现i p s e c i k e 协议栈,使其占用较少的代码 区,协议执行效率较高、对原本的协议处理影响较小、内存开销少、具备基本的 安全功能、与标准协议栈保持一致性。 1 3 3 创新点 本文的研究具有如下创新点: 提出了针对“小设备”这种资源受限、作为终端主机的应用背景下的安全功 能解决方案。解决方案的指导思想是“简化的协议和处理流程”、“提供基本安 全功能”、“支持少量并发”、“适合低端设备”。而目前些i p s e c i k e 的 嵌入式实现,均为针对嵌入式的高端设备,如路由器、网关等,它们的目标是“协 议完整”、“多并发时的高性能处理”、“适合多种应用环境”。 提出详细的适合“小设备”的协议精简方案。本文分析了i p s e c i k e 的协 撼9 厦 华东师范大学颁上学位论文 小设备中安全功能的设计和实现一基于i p s e c 和i k e 议功能,对每个模块都提出了详细的简化方案。而己有的讨论多为提出指导性的 意见,而非详细描述协议的简化方案。 实现的i p s e c i k e 可以在无操作系统的单进程环境中使用,提供了与传统 实现不同的架构设计。而目前嵌入式系统中的实现均为使用操作系统的背景下的 实现。这种新的实现架构提供了一种低成本的解决方案。 对i p s e c i k e 的执行效果进行了分析,对同类研究有参照和对比意义。 1 4 论文结构 本篇论文共分为7 章,下面给出其组织结构: 第章介绍课题的研究背景,简要给出小设备的定义,并引出i p s e c i k e 的基本概念,然后介绍论文主要的前期工作、研究内容和组织结构。 第二章对i p s e c 协议进行了详细说明和简化分析,提出了完整的简化建议 及设计方案。 第三章描述了i p s e c 的具体实现,包括总体框架、模块设计等,一些模块 还讨论了针对小设备及相应环境下的的特殊处理。 第四章详细介绍了i k e 协议的基本概念,并对其作了具体分析,提出了完 整的简化建议和设计方案。 第五章描述了i k e 的具体实现,包括总体框架、模块设计和小设备中的特 殊考虑。 第六章描述了i p s e c i k e 协议实现后的效果分析,包括实现后功能简化分 析、实现功能的验证、代码大小的分析,协议处理能力等的定性描述。 第七章对论文的工作做了总结,并提出进一步的努力方向。 1 5 小结 本章主要介绍了本文的立论背景和前期的主要工作,论述了小设备这种特殊 应用环境中对协议实现的要求,并引出了对i p s e c i k e 协议的介绍,同时描述 了前期的主要的工作及其为本文提供的基础,最后介绍了本文的结构。 第1 0 页 华东师范大学硕士学位论文小殴蔷中安全功能的设计和实现一摹于i p s e c 和i k e 第二章i p s e c 协议的分析和简化 本章从i p s e c 协议的描述入手,分析每个模块的基本功能,并根据分析结 果提出简化建议。 2 1i p s e c 概述 i p s e c 是i e t f 制定的一组安全的i p 层协议集,是在i p 报文级别为i p 业务提供保护的安全协议标准,其基本目的就是把安全机制引入i p 协议,通过 使用现代密码学方法支持机密性和认证性服务,使用户能有选择的使用,并得到 所期望的安全服务。 i p s e c 被设计成为能够为i p v 4 和i p v 6 提供可交互操作的高质量的基于加 密的安全性。安全服务集提供包括访问控制、无连接的完整性、数据源认证、抗 重播( r e p l a y ) 保护、保密性和有限传输流保密性在内的服务。这些服务是基于 i p 层的,提供对i p 及其上层协议的保护。 i p s e c 各个组件之间的相互作用可以使用下图来表示: l p 。畦垒体熏l 厂一上二二一二二1 一 一竺寻与罩兰卜 一一 | i : 基 _ 鲞 : f = l 一一f 二一 一一一l 竺一l 卜 1 石商丽i 硝i 1 l 辈一一 ;j 一, 一, 安全关联s 卜f 安全关联( s p r 一j 从图中可以看出,i p s e c 的安全功能是通过如下协议和模块:头部认证 第1 1 页 华东师范大学硕士学位论文小设备中安全功能的设计和实现一肇于l p s c c 和l k e ( ah ) 、封装安全载荷( e s p ) 、密钥管理模块( 手工密钥管理或密钥交换协议i k e ) 以及认证和加密算法来完成的。 其中i p 头部认证( a h ) 提供无连接的完整性验证、数据源认证、可选择的抗 重播服务。封装安全载荷( e s p ) 提供加密、有限传输流加密。它也提供无连接的 完整性验证、数据源认证、抗重播服务。对于a h 和e s p 都有两种操作模式:传 输模式( t r a n s p o r tm o d e ) 和隧道模式( t u n n e lm o d e ) 。i k e 的主要功能 是建立和维护安全关联( s e c u r i t va s s o c i a t i o n ,s a ) ,即协商所使用的 i p s e c 协议( 如a h 和e s p ) 及协议所使用的密码算法,并将密码算法对应的密 钥放在合适的位置。i p s e c 被设计成算法无关的,算法的选择在安全策略数据 库( s p d ) 中指定。 2 2安全关联和安全策略 安全关联( s e c u r i t ya s s 。c i a t i o n ,s a ) 和安全策略( s e c u r i t y p o l i c y ,s p ) 是r p s e c i k e 的基本概念,故本节首先介绍这两者。 2 2 1 安全关联和安全关联数据库 安全关联s a ( s e c u r i t ya s s o c i a t i o n ) 是i p s e c 机制中的个关键的 概念。s a 是两个通信实体经协商建立起来的一种协定,它决定了用来保护数据 包安全的i p s e c 协议( a h 或e s p ) 、协议的操作模式( 传输模式或隧道模式) 、 密码算法、密钥以及密钥的有效存在时间等等。 s a 是单向的,如果两个主机( 比如a 和b ) 通过e s p 进行安全通信,那么主 机a 就需要有一个出栈s a ( o u t b 。u n ds a ) ,用来处理外发的数据包;另外还 需要有一个不同的入栈s a ( i n b o u n ds a ) ,用来处理进入的数据包。主机a 的 出栈s a 和主机b 的入栈s a 将共享相同的加密参数( 比如密钥) 。类似地,主机 a 的入栈s a 和主机b 的出栈s a 也会共享同样的加密参数。由于s a 是单向的, 所以针对外发和进入处理使用的s a 分别需要维护一张单独的s a 表。 另外,s a 还是“与协议相关”的。每种协议都有一个s a 。如果主机a 和b 同时通过a h 和e s p 进行安全通信,那么双方主机都会针对每一种协议来构建一 个独立的s a 。 s a 是通过类似i k e 这样的密钥管理协议在通信对等方之间协商的。当一个 s a 的协商完成时,两个对等方都在它们的安全关联数据库( s a d ) 中存储该s a 参数。 第1 2 页 华东师范大学硕上学位论文小设备中安牟功能的设计和实现一甚于l p s e c 和i k e s a 由一个三元组唯一的标识,该三元组包含一个安全参数索引( s p i ) ,一 个用于出栈s a 的目的i p 地址或者一个用于入栈s a 的源i p 地址以及一个特定 的协议( a h 或e s p ) 。s p i 是为了唯一标识s a 而生成的一个3 2 位整数,它在 a h 和e s 载荷头中传输。 安全关联数据库( s a d ) 包含了现有的s a 的条目,每个s a 由其三元组标识。 一个s a d 的条目通常包括如下属性: 序列号。一个3 2 位的整数,用于生成a h 或e s p 头部中的序列号。 抗重播窗口。使用一个3 2 位计数器和位图确定一个输入的a h 或者e s p 数 据包是否是一个重播包。 a h 认证密码算法和需要的密钥。 e s p 认证密码算法和需要的密钥。 e s p 加密算法、密钥、初始化向量( i v ) 等。 i p s e c 协议的模式( 传输模式或隧道模式) 。 s a 生存期( l i f ed u r a t i o n ) 。 i p s e c 处理输入和输出报文时,使用独立的s a d 。对于输入或者输出通信, i p s e c 搜索各自的s a d 来查找与从数据包头部中解析出来的选择符相匹配的 s p i 、源或目的地垭三l 及i p s e c 协议。如果找到一个匹配的条目,则将该s a 的 参数与a h 或e s p 头中的适当域相比较。如果头部相关字段与数据库中的s a 参 数一致,就处理该数据包。如果有任何差别,就丢弃该数据包。如果没有s a 条 目与选择符相匹配,并且如果数据包是一个输入包,就将它丢弃。如果是输出包, 就建立新的s a 。 2 2 2 安全策略和安全策略数据库 安全策略( s p ) 指定了用户到达或者源自特定主机或者网络的数据流的策 略。安全策略数据库( s p d ) 是存储安全策略( s p ) 的物理场所,与安全关联数 据库( s a d ) 相同,s p d 也使用独立的输入和输出s p d 。 i p s e c 协议要求在所有通信处理的过程中必须查询s p d ,不管通信流是输 入还是输出。s p d 中包含一个策略条目的有序列表。通过使用一个或者多个选择 符来确定每一个条目。i p s e c 当前允许的常用选择符包括: 目的i p 地址:目的i p 地址可以是目的主机的i p 地址、广播地址、组播地 第1 3 页 华东师范大学硕士学位论文小设备中安全功能的设计和实现一基于i p s e c 和l k e 址、任播地址( a n v c a s ta d d r e s s ) 等。也可以是地址范围、地址加子网掩码 或者通配地址。 源i p 地址:和目的地址一样,源i p 地址可以是类似的值。 传输层协议:即使用i p 服务的各种协议。如t c p u p d i c m p ,也可以通过 端口号来区分。 系统名,如d n s 名。 用户i d 。 每个s p 都包含了对匹配报文的处理方法:丢弃( d i s c a r d ) 、绕过 ( b y p a s s ) 、执行i p s e c 。如果对数据包进行i p s e c 处理,则s p 条目必须包 含指向s a 的指针,s a 中详细说明了应用于该策略条目的数据包的i p s e c 协议、 操作模式以及密码算法。 选择符与数据包相匹配的第一个条目将被应用到该通信中。如果没有发现匹 配的条目,被检验的数据包将被丢弃。因此,s p d 中的条目应该按照应用程序希 望的优先权排序。同时,s p d 中的条目决定了处理通信流的粒度。例如,策略可 能规定与某个s a 对应的i p s e c 服务应该应用到某个子网的所有通信对端,甚 至任何目的对端上。实现中,使用i p 地址结合子网掩码的方式来表达这种粒度。 2 3 a h 和e s p 的协议分析和简化 2 3 1 认证头( a h ) 协议的介绍 2 3 1 1认证头( a h ) 概述 认证头( a u t h e n t i c a t i o nh e a d e r ,a h ) 协议用于为i
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2030欧洲节能窗技术引进与本土化发展策略研究报告
- 买房签正式合同
- 2025-2030核糖核酸钠环保生产工艺与可持续发展研究
- 2025-2030机场高铁场景高价水消费心理与定价策略研究
- 2025-2030智慧餐厅行业投资趋势分析及风险融资策略研究报告
- 余泥销售合同
- 养金蝉签合同
- 2025有关网络建设的借款合同模板
- 生物医疗供应链升级
- 小班有营养的土豆
- 蒸汽管道安装施工方案
- 2024-2025学年北京市通州区五年级上学期期中数学试卷(含答案)
- 《课程理论-课程的基础、原理与问题》施良方
- 4.2.1指数函数及其图像与性质省公开课获奖课件说课比赛一等奖课件
- 全国一等奖人音版一年级音乐上册《口哨与小狗》课件
- Unit 1 Food for Thought 词汇教学设计-2023-2024学年高中外研版(2019)英语必修第二册
- JT∕T 1477-2023 系列2集装箱 角件
- 临床技术操作规范骨科分册
- 《9.1.2-不等式的性质》说课稿
- 国际音标发音口型图解
- (高清版)DZT 0426-2023 固体矿产地质调查规范(1:50000)
评论
0/150
提交评论