(计算机科学与技术专业论文)轻量级tcpip协议中安全技术研究.pdf_第1页
(计算机科学与技术专业论文)轻量级tcpip协议中安全技术研究.pdf_第2页
(计算机科学与技术专业论文)轻量级tcpip协议中安全技术研究.pdf_第3页
(计算机科学与技术专业论文)轻量级tcpip协议中安全技术研究.pdf_第4页
(计算机科学与技术专业论文)轻量级tcpip协议中安全技术研究.pdf_第5页
已阅读5页,还剩69页未读 继续免费阅读

下载本文档

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

文档简介

国防科孕扳术人学研究生院学何论文摘要随着网络技术和电子技术的发展,将各种小型设备如嵌入式系统与传统的网络进行互联己成为流行趋势,嵌入式系统的网络化使得人们很方便地获取和交流信息从而可以在智能交通、信息家电、工业控制和环境检测等广泛的领域提供广阔的应用。山f 嵌入式系统等设备受到资源的严重限制,直接将传统的t c p 仃p 协议移植到嵌入式系统中是不现实的。为此,我们需要对传统的t c p ,l p 协议进行改造,使其适合在资源有限的设备中使用,但是玎放的网络环境并不保证所接入系统的安全性,如果在轻量级t c p i p 协议中不能很好地解决安全问题,那么所接入系统的安全性很容易受到威胁,所以轻量绂t c p i p 协议的安全性是一个必须要解决的问题。论文首先介绍了课题研究的背景和意义以及当前的研究现状,简述了安全协议、各种安全算法以及t p i p 协议的安全体系结构。然后提出了一种基于可信第三方的安全扔议以及一种轻量级i p 层的安全机制,对它们进行了详细的分析。并使用网络模拟工具n s 2对安全机制的性能进行评测。鼹后总结全文,并指出了下一步的研究工作。关键词:轻量级t c p ,i p ,安全协议,形式化分析,安全机制,网络模拟国舫科学技术人学研究生院学伉论文a b s t r a c tw i t ht l l ed c v e l o p m e mo fn e 咖r kt e c t l i l o l o g y 锄de 】e c t r o n ct e c l l j l o l o g y m u t l l a lc o 加e c t i o nb e t 、v e e | 1v a r i o u sm i c r o - d c v i ss u c h 船锄b e d d e ds y s t a na n dn 划i t i o n a ln c t w o r ki sb c c o m i n gt 1 1 ef 如h i o nt r c n d 1 tj sv e r ye x p e d i e n tf o rp e 叩l et oa c q u i r ca n de x c h a n g ei n f o 硼a t i o nb yu s i n go fi n t e r n e t w o 出n ge m b e d d e ds y s t e md e v i c e s a t l dt h e s ed e v i c e sc a l lg e tw i d ea p p l j c a t i o ni nt h ea r e 鹅o fi n t e l l i g e n tt m l l s p o n a t j o n ,i n f 嘶n a t i o na p p 】i a i l c e ,i n d u s 仃- a lc o n n d l ,c n v i r o l l n l e n ti n s p e c t i o na n ds oo n a se m b e d d e ds y s t e mi ss 甜o u s l yl i m i t e db yi t sr e s o u r c ea n ds ow a so t h e rs i m i l a rd e v i c e ,i t sn o tp m c t i c a lt o 胁s p l 衄tt t l et m d i t j o 脚t c m pp r o t o c o li m ot l l e m n u s ,w en e e dt or e c o n s t m c tt h et r a d i t i o n a lt c p 王pp r o t o c o 】t om a k ei tm o r es u i t a b i ef o rr e s o u r c ei i m i t e dd e v j c e s b u tl h eo p c nn e t w d r ke n v i m 砌e n tc 如n o te n s u r ct l i es e c 面t yo ft i l ec o n n e c t i v es y s t 锄i f t h es c c u r i t yp r o b l e mc 强n o tb es o l v e db e n e ri nt l l e1 i 曲t w e i 曲tt c m pp m t o c o l ,t l l es e c 谢t yo f t h ec o 肿e c t i v es y s t e mi sv e r ye 嬲yt ob et h r e a t e l l e d n u ss e c u r i t yo fl i g j l f w e i 曲tp r o t o c o li sab i gi 髂u el h a tn e e d st ob es o l v e di nt h e1 i 曲t 、v e i 曲tt c p i pp m t o c 0 1 t h i st h e s i si n t m d u c o dt l l eb a c k 掣o u n d ,s i g i l i f i c a n c ea n dt l l ec u i r e mr e s e a r c hc o n d i t i o n矗r s t l y ,a i i ds j m p l yd i s c u s s e dm es e c “t yp r o t o c o l ,v 丽o u ss c c 血t y 商t l l m e t i ca i l dt h es e c u r i t ya r c h i t c c t u r co f t c m pp m t o c 0 1 n e i lt 1 1 et h c s i sp u tf o n v a f dt oak i n do f s e c l l r i t ) rp r o t o c o lb a s e do nt m s t e dl h i r dp a n y 卸dak i n do f 肛g h t w e i g h ti pi a y e rs e c u r i l ym e c h a l l i s m ,a n d 趾a l y s e dt h e mi nd e t a i l s w ea l s oc v a l u a t e dt h ep e 响r n l a l l c eo fl h es e c u r i 廿m e c h a n i s m 、v i t ht h en e t w o r ks i m u l a t i o nt o o ln s 2 f i n a l l 弘t 1 1 et h e s j ss u 唧a r i z c do u rw o r ka l l dp o i n t e do u tt 1 1 er e s e a r c hd i r e c t i o ni nt 1 1 e j t l l r e k e y w o r d s :l j g h t w e i g h tt c p ,i p s e c u r i t yp m t o c o l ,f o r m a i i z a t i o na n a i y s 咄s 卵u r j 哪m e c h a n i s m n e t w o r ks j m u l a t i o ni i国防科学技术大学研究生院学位论文图目录图2 1 主动攻击和被动攻击2 0图2 2i p s e c 体系结构2 2图2 3s s l 结构图2 4图3 1 安全协议中的消息构成2 9图3 2m a l i c e 对安全协议的威胁3l图4 1 实体之间通信流程图4 3图4 2 密钥的层次图4 5图4 3 加密密钥的使用图4 6图4 4 存储加密密钥的b u f f e r 变迁4 7图4 5 存储解密密钥的b u f f e r 变迁4 8图4 6t t p 与a 交换密钥4 8图5 1n s 2 的总体结构5 3图5 2c + + 类与o t c l 类的对应关系5 4图5 3 扩展n s 2 的网络模拟过程i 5 7图5 4 网络模拟环境5 7图5 5 安全机制使用前后的比较5 9独创性声明本人声明所呈交的学位论文是我本人在导师指导下进行的研究工作及取得的研究成果。尽我所知,除了文中特别加以标注和致谢的地方外,论文中不包含其他人已经发表和撰写过的研究成果,也不包含为获得国防科学技术大学或其它教育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均已在论文中作了明确的说明并表示谢意。学位论文题日整量! 坠兰! 塑塑:坠主叠垒挝塑垫学位论文作者签名:逛因盎日期:j 。玉年i 二月1 日学位论文版权使用授权书本人完全了解国防科学技术大学有关保留、使用学位论文的规定。本人授权国防科学技术大学可以保留并向国家有关部门或机构送交论文的复印件和电子文档,允许论文被查阅和借阅;可以将学位论文的全部或部分内容编入有关数据库进行捡索,可以采用影印,缩印或扫描等复制手段保存、汇编学位论文。( 保密学位论文在解密后适用本授权书。)学位论文题目:堑量缝垦 望盐:i 墨生宝垒整查堑塾1 _ 学位论文作者签名:立呈型j l日期:2 口。s 年f 2 月7 日作者指导教师签名:互避日期:瓣l 硼7 日国防科学技术人学研究生院学位论文协议、1 c m p 协议、i p 协议、u d p 协议和t c p 协议等,但重点应该是i p 协议。引入轻量级t c p i p 协议的目的是为了解决小型设备与传统的计算机网络通信的问题,但是丌放的网络环境并不保障接入系统的安全性,而安全性问题往往给企业带来巨大损失,据2 0 0 1 年c s i f b i 计算机犯罪与安全调查结果显示,大部分企业都遭受过来自企业网内部和外部的双重攻击。调查中的18 6 位受访者由于遭受攻击而带来的直接财产损失共约3 亿7 8 0 0 万美元。所以在使用轻量缴t c p ,i p 协议进行通信的网络中同样存在着安全问题。同时由于设备的资源受限等特性,使得在传统网络中经常采用的安全机制如i p s e c t 】、s s l l 2 8 - 2 9 1 等并不能直接应用于这种网络中。不难想象,如果接入网络的嵌入式系统等被“黑客”所控制,将会带来严重的后果,所以安全性是一个必须要首先解决的问题。如果轻量级t c p b p 协议不能很好的解决安全问题,那么嵌入式系统尤其是军用设备是不会贸然与传统的计算机网络组网的,可以这样浇,安全问题直接关系到轻量级t c p h p 协议的发展及其应用前景。由于各种移动计算设备和嵌入式系统设备在c p u 、存储器、通信部件等硬件配置方面存在着很大的差异。通过研究和实现一种可裁减的安全轻量级t c p b p 协议并加以实现,从而支持不同的设各,满足不同应用场合的通信和组网需求;这样使得嵌入式系统等设备具有安全的、高效的t c p h p 组网和通信能力,具有较强的理论意义和重要的实用价值。1 2 研究现状国外对轻量级t c p i p 协议研究的工作开展较早,其中最典型的代表人物是瑞士联邦技术院a d a md u n k e l s ,主要的研究成果有1 w i p 协议栈【l j ,该协议栈与底层的a dh o c 网络相结合,实现了嵌入式操作系统与传统操作系统的网络级互联,并应用于实时l i n u x 和b r i c ko s 。此外一些相关的产品,如t i 的m s p 4 3 0t c p 1 p 协议栈【5 】、c m x 公司提出的c m x t c p i p协议栈f 6 】、k a d a k 公司提出的k w i k n e t - t c p i p 协议栈7 1 和v x w o r k s 公司在其嵌入式产品中集成的t c p i p 网络组件等。但这些协议栈中往往存在以下的缺点:没有实现协议栈和应用的分离,可移植性不强,在实际应用中有很多限制。国内的相关大学和科研院所等也丌展了相关课题的研究,如东北大学的t h i nt c p i p 栈【g j 、西南计算中心的b i p 协议栈1 9 等。在嵌入式系统等这种资源受限环境中的安全机制研究主要集中在传感器网络、w l a n和g s m 等基于物理链路层的安全机制如s p i n s l ,l i s p l l ”和t i n y s e c l l 2 1 等,以及a dh o c安全路由协议的研究方面。这些研究工作更关注于通信技术层次上的安全而不是传输层上的安全,而且在g s m 等系统中除了需要相应的软件支持外,还需要有专门的硬件来支持。第2 页国防科学技术火学研究生院学位论文嵌入式安全协会c e e s ( c o n s o n i u mf o re f f i c i e n te m b e d d e ds e e u r i t y ) 在2 0 0 3 年推出了有效嵌入式安全标准( 第二舨) ( e e s s i j ,e f f i c i e n te m b e d d e ds e c u r i t ys t a n d a r dv e r s i o n2 o ) ,然而和大多数安全解决方案一样,这个标准是基于非对称密钥体制的安全标准,所以e e s s 对于嵌入式系统的应用来说是不适合的。至于如何在轻量级t c w i p 协议中引入安全机制,从查阅的大量国内外研究文献来看,对于轻量级t c p i p 协议中安全工作的研究还很不够。目前有相当一部分工作是对i p s e c进行相应的改造以便适应资源受限的环境,如k a d a k 公司研制的k w i k n e tt c p i p 协议栈的安全解决方案就是采用了兼容i p s e e 的方式,以及e m b e d d e ds o l u t i o np a r t n e r s 研制的v - i p s e c ,但是由于i p s e c 自身的复杂性和嵌入式设备资源约束的特点,实现起来非常困难,并且效果也不是很理想。浙江大学王勇博士在相关课题中有过这方面的研究工作【j 4 1 ,并提出了嵌入式i n t e m e t 安全协议( e i a c p ) ,但该安全协议只考虑了主控设备和被控设备这两者的通信,也就是说该协议只考虑了类似服务器与节点之间的通信,而没有考虑到如何保护节点之间通信的安全。然而在网络中,节点之间的通信是很频繁的:同时该安全协议也缺乏对网络中的节点进行认证。1 3 主要研究内容和工作1 3 1 主要研究内容在硕士课题期间,作者在研究轻量级t c p i p 协议的基础上,对如何构造轻量级t c p i p协议的安全机制方面进行了大量的理论准备工作。其中主要对以下几个方面的工作进行了研究:l 、对网络的安全体系结构进行了相应的分析。因为t c p p 协议族是分为四层的概念模型,所以基于t c p f t p 分层模型的网络安全服务也是分层的,应该在t c p i p 协议中不同层次提供不同的安全服务,采用轻量级t c p i p 协议通信的网络也是如此。在t c p i p 协议的哪个层次上增加安全性比较合适曾经引起过很大的争论,最终在网络层进行认证和加密等安全服务的观点得到了足够的支持。因此i n t e m e t 工程任务组( i e t f )定义了网络层安全标准i p s e c ,并定义相关的r f c 文档。在i p 层增加安全性的主要优点在于它的透明性,也就是说,安全服务的提供不需要应用程序、其他通信层次和网络部件做任何改动,这样既不妨碍那些了解安全性的用户正确地使用这些安全特性,而且又可以帮助那些对安全性一无所知的用户。基于以上原因的考虑,本课题对如何保护轻量级i p 层的第3 页国防科学技术大学研究生院学位论文安全进行了大量的研究和分析工作。2 、对安全协议的概念、类型和设计准则等进行了广泛的分析和总结,同时对协议的形式化分析方法进行了深入的研究。安全协议是以密码学为基础的消息交换协议,其目的是在网络中提供安全的服务。安全协议的设计非常容易出错,即使是参女u 协议运行的主题只有两三个,协议的消息总数只有3 5 条,要设计一个具有正确的、符合目标的和没有冗余的等特征的协议也不是十分容易的。安全协议设计的困难性主要在于:安全协议运行的环境充满了各种恶意攻击,这些攻击可能是系统外部攻击者发起的,也可能是系统内部的合法用户发起的,需要充分估计到攻击者的能力。同时安全协议自身具有高度并发的特点,因此安全协议的设计更加困难和具有挑战性。根据安全协议的功能可以将安全协议分为四类:密钥交换协议、认证协议、认证和密钥交换协议以及电子商务协议。在论文中提出的安全协议属于认证和密钥交换协议。设计准则i 驯是通过总结各种安全协议中难以分析的共性而得出的。准则是一种非形式化的指导方案,尽管设计准则对于安全协议来说既非充分条件,也非必要条件,但对于安全协议的设计却是非常有帮助的;采用良好的设计准则来对安全协议的设计进行指导,有助于减少安全协议中容易被人为忽略的漏洞。因为在安全协议的设计中往往会遇到许多困难,所以我们需要借助形式化的分析方法来证明安全协议的正确性。目前,研究比较广泛和深入的方法主要有以下几类:基于知识与信念推理的模态逻辑方法、基于通信状态机模型的模型检验方法和基于知识推理的定理证明方法。在本课题中主要深入研究了基于知识与信念推理的s v o 逻辑1 2 1 ,翻。并使用s v o逻辑对我们在课题中提出的基于可信第三方的安全协议进行了形式化分析,结果表明该安全协议能够达到预期目标。3 、对网络协议中各种常用的攻击手段进行了系统的研究。首先需要注意的是,对于协议的攻击主要是指那些不涉及破解底层密码算法的攻击。通常协议的不安全不是因为该协议所用的底层密码算法很弱,而是因为扔议设计上的缺陷,这些缺陷使得攻击者能够在不需要破解密码算法的条件下达到破坏协议安全性的目的。在协议中常用的攻击手段可以分为两种:主动攻击和被动攻击。主动攻击主要采取窃取、篡改、假冒和破坏消息等手段,主要的攻击方法包括消息重放攻击、中问人攻击和平行会话攻击等。而被动攻击是指网络窃听,截取数据包并进行分析,从中窃取重要的敏感信息。第4 页国防科学技术大学研究生院学位论文4 、对密码算法和单向散列算法进行了详细地分析。一般来说,安全机制是与具体的底层算法相独立的,这样可以避免由于算法被破解而导致整个安全机制被破坏但是安全机制必须根据具体的环境来确定哪些相应的算法能够被采用。由于本课题的目的是保护轻量级t c p f l p 协议的安全,为了避免安全机制耗费较多的资源,在课题中选取的是加解密速度较快、对资源耗费较少的对称密码算法和单向敝列算法。5 、研究并总结了网络模拟工具n s 2 1 2 3 1 在本课题中的应用。在网络技术迅速发展的今天,网络研究人员一方面要不断思考新的网络协议和算法,为网络的发展做前瞻性的基础研究;另一方面也要研究如何利用和整合现有的网络资源,使网络达到最高性能。无论是哪一方面都需要对新的网络方案进行验证和分析。进行网络技术的研究大致有以下三种方法:i 、分析方法,对所要研究的对象和所依存的网络系统进行初步分析,根据限定条件和合理假设,对研究对象和系统进行描述,抽象出研究对象的数学分析模型,利用数学分析模型对问题进行求解。i i 、实验方法,设计出研究所需要的合理硬件和软件配置环境,在现实的网络环境中对网络协议、网络行为和网络性能进行研究。i i i 、模拟方法,应用网络模拟软件,建立所研究的网络系统的模拟模型,运行这个模型,并分析运行的输出结果。由于分析方法的有效性和精确性受到假设限制的影响很大,实验方法存在着成本很高,重新配置或共享资源很难。而模拟方法在很大程度上可以弥补前两种方法的不足。模拟方法可以根据需要设计所需的网络模型,用相对较少的时间和费用了解网络在不同条件的特性,获取网络中有效的数据。基于以上几个方面的考虑,在课题中选取了网络模拟工具n s 2 对安全机制的性能进行了分析和研究。1 3 2 主要工作本文的研究重点是轻量级t c p 】p 协议中i p 层的安全性问题,对安全协议以及安全算法等相关问题进行了研究,尤其是针对在资源受限的环境如何将i p 协议的安全性与嵌入式等资源受限系统的特点相结合进行了深入的研究,展后研究了n s 2 技术在网络模拟中的应用。本课题主要完成了以下四个方面的工作。1 、提出了一种基于可信第三方的安全协议,该协议同时具有f a i l s a f e 2 4 1 的特性。利用该协议可以达到对网络中各个节点进行认证的目的,同时为进行通信的节点之间第5 页国防科学技术大学研究生院学位论文完成密钥的分配。2 、通过使用形式化分析方法s v o 逻辑,对安全协议的性质进行了相关分析,分析结果表明该安全协议能够达到预期目标。3 、在基于可信第三方的安全协议的基础上,并结合轻量级1 p 层的特点,对如何保障网络通信的节点问的机密性,提出了轻量级】p 层安全o t n 。该安全机制可以抵御来自攻击者的恶意攻击、达到通信双方加解密的同步,能较好地保障轻量级i p 层的通信安全。4 、采用网络模拟工具n s 2 对轻量级l p 层的安全机制进行了模拟,结果表明该安全机制对嵌入式等类似设备带来的资源消耗是轻微的,能够满足轻量级i p 层所处环境的限制。1 4 论文的组织结构论文的内容组织如下:第一章,绪论,阐述课题的背景、意义、研究现状、研究内容以及完成的工作。第二章,首先介绍了密码算法和单向散列算法的相关特点与性质。其次对安全协议的相关理论进行了研究和分析,简单介绍了安全协议的概念、类型和设计准则,并确定了在本课题中需要使用的安全协议。然后介绍了网络安全体系结构的相关概念,以及在网络攻击中常用的攻击手段,并给出了相对应的预防措施。最后对课题中轻量级t c p i p 协议的安全体系结构进行了描述。第三章,提出了一种基于可信第三方的安全协议,介绍了该安全协议的相关性质,并采用形式化的分析方法对该安全协议进行了分析。第四章,提出了针对轻量级l p 层的安全机制,对该方案的设计进行了详细的阐述和分析。第五章,首先介绍了网络模拟工具n s 2 ,并采用n s 2 工具对轻量级i p 层的安全机制的性能进行了模拟测试。第六章,总结全文,并指出了下一步的研究工作和主要方向。其中第二章是论文的理论基础和相关领域的技术,本文的核心技术和研究工作体现在第三章、第四章和第五章。第6 页国防科学技术大学研究,j 三院学何论文第二章相关技术与相关研究工作2 1 密码学理论在信息安全领域中,要达到保密等相关目的,则必须使用密码学中相应的算法:否则“安全”就是无源之水,无从谈起。密码学可以提供以下主要服务:l 、保密。通过使用密码算法对信息进行加密,将信息表述为不可读的方式,并且可以使用密码算法和相关的密钥对信息进行解密,将信息恢复过来。2 、完整性校验。使得接收信息的人员能够确信信息从一个合法的信息源产生之后一直未被非法篡改。3 、身份认证。验证某人或某物的身份。为了在轻量级t 肋p 协议中提供对安全性的保护同样也必须使用密码学中的若干算法,下面对各种算法进行简要介绍。2 1 1 密码算法密码算法可以分为两种形式:对称密码算法和非对称密码算法。对称密码算法使用一个密钥由通信双方共享,也可以称为私钥密码算法。对于一个给定的消息( 称为明文) 和一个密钥,使用对称密码算法运算后产生不可读的数据( 称为密文) ,其长度和明文大致相同;而解密则与加密相反,但使用的密钥和加密使用的密钥相同,并且加密和解密的运算量大致相当。与对称密码算法不同的是,非对称密码算法并不要求通信双方共享密钥,而是每个通信实体拥有两个密钥:一个不能向任何通信实体公开的私钥以及一个可以向任何通信实体公开的公钥,因此非对称密码算法也可以称为公钥密码算法。一、对称密码算法对称密码技术是从使用简单换位、代替等操作的传统古典密码技术发展而来的。自1 9 7 7 年美国颁布了d e s 2 5 博法作为美国数据加密标准以来,对称密码算法得到了迅猛的发展,在世界各国得到广泛关注和使用。对称密码算法一般可分为两类:序列密码算法和分组密码算法。a 、序列密码算法序列密码的主要原理是通过有限状态机产生性能优良的伪随机序列,也可以称为流密码算法,使用该序列加密信息流,逐位加密得到密文序列。它的工作步骤如下:第7 页国防科学技术人学研究生院学位论文1 、首先利用密钥k 产生一个密钥流,2 、然后使用如下规则对明文串x = x o x i 加密:y = y o y l y 2 = e z ( x o ) e :( xj ) e z ( x 2 ) 。密钥流由密钥流发生器f 产生:z = f f l ( ) ,这旱田是加密器中存储部件在时刻i 的状态( 也就是一系列伪随机序列) 。序列密码算法的安全强度完全取决于它所产生的伪随机序列的随机性和不可预知性,所以一般不能重复使用伪随机序列。序列密码的优点是运算速度快,密文传输中的错误不会在明文中产生扩散。其缺点是密钥变换过于频繁,密钥分配较难。这类密码算法的代表有r c 4 2 6 1 算法和s e a l 【2 7 1 算法。由于r c 4 算法的加密或解密速度均非常快,又提供了相当的强度,所以得到了广泛应用。其最重要的应用就是s s l ( s e c u r i t ys o c k e tl a y e r ) 协议和w e p ( w l m de q u i v a 】e mp r i v a c y )协议【。目前r c 4 算法主要存在的问题是弱密钥。所谓弱密钥,就是密钥与输出之问存在超出一个好密码所应具有的相关性。在2 4 位的l v 值中,有9 0 0 0 多个弱密钥。攻击者收集到足够的使用弱密钥的包后,就可以对它们进行分析,只须尝试很少的密钥就可以接入到网络中。然后利用认证与加密的安全漏洞,在很短的时间内,密钥即可被破解。b 、分组密码算法分组密码算法的工作方式是将明文分为固定长度的组( 如6 4 位一组) ,用同一密钥和算法对每一块进行加密,输出固定长度的密文。般采取以下方法来设计分组密码算法:在相信复杂函数可以通过简单函数迭代若干圈得到的原则下,利用简单圈函数以及对合等运算,充分利用非线性运算。分组密码算法和序列密码算法不同之处在于输出的每位数字不是只与相应时刻输入的明文数字有关,而是与一组长为n 的明文数字有关。分组密码算法的优点是:密钥可以在一定时间内固定,不必每次变换,因此给密钥配发带来了方便。但由于分组密码存在着密文传输错误在明文中扩散的问题,因此在信道质量较差的情况下无法使用。目前比较常见的分组密码算法有d e s 、r i j n d a e l l 3 2 】、r c 5 1 3 3 1 和i d e a l 3 4 1 算法等。其中d e s 算法是由美国国家标准和技术研究院吖j s d 在1 9 7 7 年公布的数据加密标准。到了9 0年代后期,随着计算机运算速度的提高和对d e s 破解方法的深入研究,d e s 算法已经很容易被破译,攻击者能够在2 4 小时之内找到d e s 的密钥。随着d e s 算法的被破解,1 9 9 7年n i s t 开始向全世界公开征集新的高级加密标准a e s ( a d v a n e e de n c r y p t i o ns t a n d a r d ) 。直到2 0 0 0 年1 0 月,n i s t 才选择r i j n d a e l 算法作为新的高级加密标准算法。第8 页国防科学技术火学研究生院学 c i = 论文r c 5 算法是由r r i v e s t 在1 9 9 4 年设计的分组密码算法,它有着可变长度的分组、可变长度的密钥长度以及运算轮数也是可变的特点。这种变长的特点使得它可以适应各种环境下对安全性的要求和运算效率的要求,并且可以很容易使用软件或硬件实现。一个典型的r c 5 算法可以表示为r c 5w r b ,其中w 为字长,以比特为单位,r 为运算轮数,b 是密钥的字节数。因为分组密码算法是将消息作为数掘分组来处理的( 加密或解密) 。而通常大多数消息的长度大于分组密码算法的消息分组长度,因此需要采用运算模式来对这种消息进行处理。目前比较常见的运算模式有电码本( e c b ) 模式、密码分组链接( c a t ) 模式、密码反馈( c f b ) 模式、输出反馈( o f b ) 模式和计数器( c t r ) 模式。在下面对这些运算模式的描述中,将使用到下面的符号:e ( ) :分组密码的加密算法:d ( ) :分组密码的解密算法;r l :分组密码算法的消息分组的二进制长度:p 段,p 。:输入到运算模式中明文消息的m 个连续分段;c t c 2 ,c 。:从运算模式输出密文消息的m 个连续分段:l s b 。( b ) ,m s b ,( b ) :分别是分组b 中最低u 位比特和最高v 位比特ia | | b :数据分组a 和b 的链接:i v :初始化向量。目前常用的运算模式可以分为以下几种:1 、电码本( e c b ) 模式是将需要进行加密( 解密) 操作的一系列连续排列的消息段逐个分别进行加密( 解密) 。它的运算如下:e c b 加密c i e ( p i ) ,i = l 2 m 。e c b 解密p i - - e ( c 0 ,一】2 m 。e c b 模式是确定性的,也就是说,在相同的密钥下将p l ,p 2 ,p 。加密两次,那么输出的密文分组也是相同的。所以这会导致两个严重的问题:能够看到密文的人能够从重复的分组中分析出一些有用的信息;攻击者可以修改分组或者重新排列分组来达到其目的。2 、密码分组链接( c b c ) 模式是将密码分组链接在一起使得每个密码分组不仅依赖于所对应的原文分组,而且依赖于所有以前的数据分组,输出的是n 比特密码分组的一个序列。c b c 模式的运算如下:第9 页国防科学技术大学研究生院学能论文c i p p i 0 0 ii = 1 2 ,m 。o f b 解密输入:i v , c l ,c 。:输出:i v p l ,p 。;i i 。i v :i i + 一o i li = 2 ,m ;0 i pe ( i i )i 21 ,2 m :p i c i o o ii - 1 ,2 ,m 。在o f b 模式中,加密和解密是相同的。o f b 模式的优点在于如果密码分组发生了传输错误,那么只有相应位置上的明文分组会发生错乱,而不会像其它模式会影响到后面的分组。o f b 的缺点在于:如果攻击者知道明文和密文,就可以将明文修改为他所需要的任意消息。o f b 模式适宜于对不可能重发的消息进行加密。5 、计数器( c t r ) 模式的特点是将计数器从初始值开始计数所得到的值反馈给基础分组密码算法,使用计数器得到的值和密钥流进行异或运算。c t r 模式的运算如下( c t r l 是计数器初始的非保密值) :c t r 加密输入:c t r l p 1 。,p r o ;输出:c t r l ,c i ,c 。;c j _ p i oe ( c t r 0i = 1 ,2 ,mac t r 解密输入:c t r l c l ,c m ;输出:c t r i ,p 1 ,p r o ;p i - c i 毋e ( c t r 0i = 1 ,2 ,m 。和o f b 模式类似,c t r 模式的加密和解密是相同的,并且某个位置上的分组错误不会影响到其它分组。由于没有反馈,c t r 模式的加密和解密自鲁够同时进行,这是c t r 模式比c f b 模式和o f b 模式优越的地方。该模式适用于处理加密和解密的平行性,以及处理无序到达的分组解密。二、非对称密码算法目前比较流行的非对称密码算法主要有两类:一类是基于大整数因子分解问题,其中最典型的代表是r s a 算法1 3 5 1 。另一类是基于离散对数问题,如e 1 g a m a l 算法【3 6 】和影响比较大的椭圆曲线( e c c ) 算法1 3 7 j 。一般来随,非对称密码算法运算速度要慢于对称密码算法,但对称密码算法存在着密钥分发的问题,面非对称密码算法由于可以公丌加密密钥,则不存在这种问题。在非对称密码算法中,加密和解密的速度是不一样的,通常加密速度要快于解密速度;而对称密码算法中,加密和解密的速度大致是一样的。第1 l 页国防科学技术大学研究生院学位论文2 1 3 相关攻击方法对密码算法的攻击方法有许多种类,以下是三种使用比较普遍的攻击方法:1 、已知密文攻击。一般情况下,密码攻击者拥有一些消息的密文,这些消息都用同一算法和密钥进行加密。攻击者希望恢复尽可能多的明文,或者最好能推算出) j l j密消息的密钥来,以便采用相同的密钥来解密其他被加密的消息。2 、已知明文攻击。密码攻击者不仅可以得到一些消息的密文,而且也知道这些消息的明文。攻击者的任务是对明文进行加密来推出用来加密的密钥或者推导出一个算法,用该算法可以对同一密钥加密的任何新的消息进幸亍解密。3 、选择明文攻击。攻击者不仅可以得到一些消息的密文和相应的明文,而且他们还可以选择任意的明文输入系统中并获得该明文相对应的密文。这种攻击方法比已知明文攻击更为有效,因为密码攻击者可以选择特定的明文去加密,那些明文可能产生更多关于密钥的信息。攻击者可以利用这些相关消息推出用来加密的密钥或者推导出一个算法,该算法可以对同一密钥加密的任何新的消息进行解密。目前,还没有一种完善的评价密码安全性的理论,但一般设计密码系统时,应该遵守k e m h o f f s 原则:即密码系统中算法即使为密码攻击者所知,也应该无助于用来推导出明文和密钥。2 2 安全协议2 2 1 安全协议概述所谓协议就是指两个或两个以上的参与者为完成某项特定的任务而采取的系列步骤。这个定义包含三层含义:1 、协议自始自终是有序的过程,每一步骤必须依次执行。在前一步没有执行之前,不可能执行后面的步骤。2 、协议至少需要两个参与者。安全协议的参与者可以是可信任的通信实体,也可以是攻击者或完全不信任的通信实体。3 、通过执行协议必须能够完成某项任务。此外协议还有以下特点:1 、协议中的每个参与者都必须了解协议,并且预先知道完成协议的所有步骤。2 、协议中的每一步必须有明确定义,不会引起误解。第1 3 页国防科学技术大学研究生院学位论文3 、协议必须是完整的,对每种可能的情况必须规定具体的动作。而安全协议则是为了完成某种安全任务的协议,也可以称为密码协议。它运行在计算机通信网或分布式系统中,并以密码学为基础上的一种消息交换协议,其目的是在网络环境中提供密钥分配、身份认证等安全服务。安全协议的运行,经常要使用密码算法和单向散列算法。在安全协议的发展史上,最著名的安全协议是由r m n e e d h a m 和m d s c h r o e d e r 设计的n e e d h a m s c h r o e d e r 协议h 。后_ 柬的很多安全协议都是在n e e d h a m s c h r o e d e r 协议的基础上设计的。除了n e e d h a m s c h r o e d e r 协议之外,早期著名的经典安全协议还有o t w a y - r e e s协议【4 2 1 和d e n n i n g - s a c c o 协议m 1 等。以及一些重要的实用协议,如k e r b e r o s 协议f 1 和s s h协议【4 5 】等。安全协议的目标是多种多样的。例如,认证协议的目标是认证参加协议的主体的身份。此外,许多认证协议还有一个附加的目标,即在主体之间安全地分配密钥或其他各种秘密。而非否认协议的目标有两个:一个是确认发方非否认( n o n - r e p u d i a t i o no f o r i g i n ) ,另一个是确认收方非否认( n o n - r e p u d i a t i o no fr e c e i p t ) 。电子商务协议的目标除认证性和非否认性之外,还有可追究性、公平性等。2 2 2 安全协议类型从不同的角度出发,可以有若干种对安全协议的分类方法。目前。般来说是按照安全协议的功能将其分为以下四类:1 、密钥交换协议这种协议一般用于完成会话的建立。通常是在参与协议的两个或多个实体之间建立共享的秘密。2 、认证协议认证协议包括实体认证( 身份认证) 协议、消息认证协议和数据源认证协议等,它通常用来防止假冒、篡改和否认等攻击。3 、认证和密钥交换协议这类协议是认证协议和密钥交换协议的结合,是目前网络通信中应用最普遍的安全协议。它首先对通信实体的身份进行认证,并在此基础上为下一步的安全通信分配会话密钥。4 、电子商务协议与上述协议不同的是,电子商务协议中主体的利益目标往往是不一致的或者根本就是第1 4 页国防科学技术入学研究生院学俺论文矛盾的。因此,电子商务协议的关键是要保证各主体的公平性,即协议应该交易双方都不能通过损害对方利益而得到它不应得的利益。2 2 3 安全协议设计准则安全协议的设计极易出错,即使参加协议的主体只有两三个,交换的消息只有3 5 条,设计一个正确的、符合认证目标的认证协议也是十分困难的。所以在设计安全协议的过程中经常容易产生错误,如著名的n e e d h a m s c h r o e d e r 协议在发表后不久就被发现存在安全缺陷。为了在设计安全协议的过程中尽可能避免出现漏洞,应该要遵守一系列相关准则。尽管这些准则对于安全协议的正确性来说既不是必要条件,也不是充分条件,但对于安全协议的设计是非常有帮助的,因为遵守它们可以简化协议的设计并防止许多已经公布的错误和混淆的产生。以下是安全协议的主要设计准则:l 、设计目标明确,无二义性;2 、最好应用描述协议的形式语言,对安全协议本身进行形式化描述;3 、通过形式化分析方法证明安全协议实现设计目标;4 、安全性与具体采用的密码算法无关;5 、保证临时值和会话密钥等重要消息的新鲜性,防止重放攻击:6 、尽量采用异步认证方式,避免采用同步时钟( 时戳) 的认证方式;7 、具有抵抗常见攻击,特别是防止重放攻击的能力:8 、进行运行环境的风险分析,作尽可能少的初始安全假设;9 、实用性强,可用于各种网络的不同协议层;l o 、即使通信主体为攻击者提供预言机服务( 指通信主体无意中为攻击者执行了一个密码运算) ,协议也应该是安全的。2 2 4 安全协议所受的威胁在对安全协议的安全性进行分析时,最主要的威胁来自攻击者,安全协议的设计者永远不能低估攻击者的攻击能力。d o l e v 和y a o 于1 9 8 3 年提出了d o l e v - y a o 攻击者模型 4 6 , 4 7 1 ,它是对攻击者的知识和能力进行概括的最早的模型,这一模型被广泛地采纳为安全协议的标准威胁模型。在这个模型中,攻击者有着如下特征:l 、攻击者能获得经过网络的任何消息。2 、攻击者也是网络中的合法使用者,因而能够发起与网络中任何其他用户的对话。第1 5 页国防科学技术大学研究生院学位论文3 、攻击者有机会成为任何主体发出消息的接收者。4 、攻击者能冒充任何别的主体给任意主体发消息。因此,在d o l e v y a o 攻击者模型中,发送到网络中的任何消息都可看成是发送给攻击者处理的( 根据它的计算能力) 。因而从网络中接收到的任何消息都可以看成是经过攻击者处理过的。可以这样认为,攻击者已经完全控制了整个网络。但是攻击者也不是万能的,还有一些攻击者不能做到的事情,比如,攻击者在没有掌握正确的密钥的情况下,它是不能由给定的密文恢复出明文;攻击者不能猜到从足够大的空问选出的随机数;同时攻击者也不能控制网络环境中的许多私有区域,如离线主体的存储器。攻击者可以采取很多种攻击方法来对安全协议进行攻击,虽然不可能全部了解攻击者所使用的攻击方法( 因为攻击者可以寻找新的攻击方法) ,但是知道一些典型的攻击方法可以帮助我们了解如何设计好安全协议以防止这些攻击。下面是若干种攻击者经常使用的攻击方法:l 、消息重放攻击消息重放攻击是指攻击者预先记录某个协议先前的某次运行中的某条消息,然后在该协议新的运行中重放记录的消息,被记录的消息可以被修改。为了防止重放攻击,实际的协议中常采用序列号或者时问戳来指示当前消息的新鲜度。2 、中间人攻击这种方法适合于攻击缺少双方认证的通信协议。在进行攻击时,攻击者能够把安全协议的某参与者所提出的困难问题交给另外的参与者来回答,然后把答案交给提问的主体,反之亦然。为了防止中间人攻击,应该在消息交换的两个方向上都提供对数据源认证服务。3 、平行会话攻击平行会话攻击是指在攻击者的特意安排下,一个协议的两个或者多个运行并发执行。并发的多个运行使得攻击者能够从一个运行中得到另外某个运行中困难问题的答案。平行会话攻击往往也能使攻击者达到假冒其他主体进行通信的目的。4 、归因于姓名泄漏攻击。在认证协议中,一般与某条消息相关的名字可以从该消息上下文的其他部分或者从使用的加密密钥中推断出来。然而,当这些消息不能推断出时,姓名遗漏就是很大的错误,会导致严重的后果。如在d e r m i n g - s a c c o 协议中,a b a d i 和n e e d h a m 就发现了可以采用这种攻击的漏洞。第1 6 页国防科学技术人学研究生院学位论文2 2 5 安全协议分析方法要设计一个可靠的安全协议是很困难的,安全协议设计与分析的困难性在于:l 、安全目标本身的微妙性。例如,表面上十分简单的“认证目标”,实际上十分微妙。关于认汪性的定义,至今存在各种不同的观点。2 、协议运行环境的复杂性。实际上,当安全协议运行在一个十分复杂的公开环境时,攻击者处处存在。3 、攻击者模型的复杂性。我们必须形式化地描述攻击者的能力,对攻击者和攻击行为进行分类和形式化的分析。4 、安全协议本身具有“高并发性”的特点。园此,安全协议的分析变得更加复杂并具有挑战性。因此,我们必须借助于相关的分析方法,来证明安全协议的正确性。常采用的分析方法有攻击检验方法和形式化分析方法。攻击检验方法也称为非形式化分析方法,它是采用各种已知的攻击手段对安全协议进行攻击,来检验该协议是否安全。而由于协议分析人员不可能知道所有的攻击方法,因为攻击者可以发明新的攻击方法,所以这样对安全协议的分析只能检测到是否存在己知的攻击,而不能全面地分析安全协议,容易导致对协议的安全性做出错误的判断。近年来,研究人员主要是采用形式化的分析方法来分析安全协议的正确性。形式化分析方法的出发点是将安全协议形式化,然后借助于人工推导,甚至包括计算机的辅助分析,来判断安全协议是否安全可靠和达到安全协议的设计

温馨提示

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

评论

0/150

提交评论