(通信与信息系统专业论文)对在internet2上密钥交换和确定技术的实现与研究.pdf_第1页
(通信与信息系统专业论文)对在internet2上密钥交换和确定技术的实现与研究.pdf_第2页
(通信与信息系统专业论文)对在internet2上密钥交换和确定技术的实现与研究.pdf_第3页
(通信与信息系统专业论文)对在internet2上密钥交换和确定技术的实现与研究.pdf_第4页
(通信与信息系统专业论文)对在internet2上密钥交换和确定技术的实现与研究.pdf_第5页
已阅读5页,还剩71页未读 继续免费阅读

(通信与信息系统专业论文)对在internet2上密钥交换和确定技术的实现与研究.pdf.pdf 免费下载

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

文档简介

对在i n t e r n e t 2 上密钥交挟和确定技术的实现与研究 对在i n t e r n e t 2 上密钥交换和确定技术的实现与研究 摘要 为了在i n t e m e t 2 上建立i p s e c 等安全连接业务,双方必须首先 协商安全策略,鉴别对方身份,并交换和确定通信密钥。而这些工 作都可以由因特网密钥交换协议( i k e ) 来完成。因此i k e 协议对 于在i n t e r n e t 2 上建立安全连接业务是非常重要的。 i k e 协议是o a k l e y 密钥确定协议和s k e m e 在i s a k m p 框 架下结合的产物。其中o a k l e y 密钥确定协议定义了一组针对各种通 信方式的密钥交换模式。s k e m e 则描述了一个普遍通用的密钥交换 技术,可以提供匿名服务,并支持快速密钥刷新。而i s a k m p 则定 义了在i n t e r n e t 2 上协商建立安全连接的基本框架。 i k e 协议通过将o a k l e y 协议和s k e m e 协议的各一部分有机 地结合在一起,在i s a k m p 框架下实现了能鉴别双方身份的安全连 接协商和密钥交换体系,从而能够用来建立其它具体的安全连接业 务,如i p s e c 中的a h 和e s p 等。 i k e 协议将建立安全连接的过程分成了两个阶段,第一阶段有 两种实现方法,即主模式和激进模式,而第二阶段则是快速模式, 另外还有位于第一阶段后面的新组模式。在第一阶段中,i k e 主要 是建立了i s a k m p 安全连接。然后在i s a k m p 安全连接的保护 下,i k e 再通过新组模式和快速模式来建立具体业务的安全连接。 在第阶段协商中,i k e 协 义需要进行鉴别。鉴别的主要手段 有数字签名、公开密钥加密、双方预先共享密钥等方法。而在鉴别 的同时,双方也必须进行密钥的交换。为了在不安全的信道上实现 安全的密钥交换,i k e 协议使用了d i f i l e h e l l m a n 密钥交换算法。 因此,i k e 协议的密钥交换功能主要是也基于d i f i l e h e l l m a n 密钥 第l 页共7 8 页 对在| n t e r n e t 2 上密钥交换和确定技术的实现与研究 交换算法的。 d i f f i e h e l l m a n 密钥交换算法的数学基础是计算离散对数的困难 性( 不可计算性) ,而它的主要部分其实就是模指数算法,同著名的 r s a 公开密钥加密算法几乎是一样的。由于r s a 公开密钥加密算 法同时还能实现数字签名,所以在身份鉴别上它被广泛地使用。但 是,作为d i f i l e h e l h n a n 算法和r s a 算法核心的模指数算法,其 时间开销一般是非常大的。因此,为了更好地实现l i c e 的密钥交换 和鉴别功能,实现高效率的模指数算法是非常必要的。本文对提高 模指数算法效率的方法作了相当深入细致的分析工作,提出了一系 模式、鉴别方法的特点都作了分析和研究。并且还特别针对i k e 协 议通信流程中可能出现的各种攻击和安全隐患及它们的防范方法进 行了详细的讨论。要指出的是,本文所研究的i k e 安全问题其主要 方向不是算法的漏洞和可靠性,而是i k e 协议本身的安全性,尤其 是在遭受各种主动或被动攻击时的安全系数。在通过试图寻找i k e 叻议- = j 各种可能的安全漏洞后,提出了一些i k e 安全性改进上的参 考方案。 关键字:i k e ,安全连接,鉴别,密钥交换,模指数算法 第2 页帮8 页 对在i n t er n e t 2 上密钥交换和确定技术的实现与研究 i m p l e m e n t a t l o na n dr e s e a r c h0 f k e ye x c h a n g eo ni n t e r n e t 2 a b s t r a c t t oe s t a b l i s has e c u r i t ya s s o c i a t i o ns u c ha si p s e co ni n t e r n e t 2 b o t l l p a r t i e ss h o u l dn e g o t i a t ef o rt h es e c u r i t yp o l i c i e s ,a u t h e n t i c a t et h ei d e n t i t i e s o fe a c ho t h e r , a n de x c h a n g es e c r e tk e y sw h i c hw i l lb eu s e dt oe n c r y p tt h e c o m m u n i c a t i o n a l it h e s ec a nb ed o n ev i at h ei n t e r n e tk e ye x c h a n g e p r o t o c o l ( i k e ) s oi k e i sv e r yi m p o r t a n tf o rt h ee s t a b l i s h m e n to f s e c u r i t y a s s o c i a t i o n so ni n t e r n e t 2 i k ei sa h y b r i dp r o t o c o l t h a ti sd e r i v e df r o mt h e o a k l e yk e y d e t e r m i n a t i o np r o t o c o la n ds k e m ef av e r s a t i l es e c u r ek e ye x c h a n g e m e c h a n i s mf o ri n t e r n e t ) o a k l e yd e s c r i b e sas e r i o u so fk e ye x c h a n g e s m o d e sf o rv a r i o u sc o m m u n i c a t i o n a n ds k e m ed e s c r i b e sav e r s a t i l ek e y e x c h a n g et e c h n i q u e ,w h i c hp r o v i d ea n o n y m i t ya n dq u i c kk e y r e f r e s h m e n t i s a k m p p r o v i d e saf r a m e w o r kf o re s t a b l i s t u n e n to fs e c u r i t ya s s o c i a t i o n s o ni n t e r n e t 2 一 i k et a k e sp a r t so f o a k l e y a n d p a r t so fs k e m e ,a n d d e f i n e sas e c u r i t y m e c h a n i s mu n d e ri s a k m p , w h i c hc a np r o v i d ea u t h e n t i c a t i o na n dk e y e x c h a n g e s oi k e c a nb eu s e dt oe s t a b l i s hs e c u r i t ys e r v i c e s ,s u c ha sa h a n de s pi ni p s e c t h e r ea r et w o p h a s e s i ni k e p h a s e1i n c l u d e sm a i nm o d ea n d a g g r e s s i v em o d e q u i c k m o d ei si np h a s e2 ,a n dn e w g r o u pm o d e i sa f t e r p h a s ei i np h a s e1 ,t h em a i np u r p o s e i st oe s t a b l i s ha ni s a k m p s e c u r i t y a s s o c i a t i o n n e w g r o u p m o d ea n dq u i c km o d ea r eu s e dt o n e g o t i a t e 第3 曩共7 8 页 牛 对在i n t e r n e t 2 上密钥交换和确定技术的实现与研究 s e c u r i t y a s s o c i a t i o n su n d e rt h e p r o t e c t i o n o fi s a k m p s e c u r i t y a s s o c i a t i o n 、 a u t h e n t i c a t i o ni sr e q u i r e di np h a s e1 n e g o t i a t i o n t h e r ea r es e v e r a l m e t h o d su s e dt oa u t h e n t i c a t e d i g i t a ls i g n a t u r e ,p u b l i ck e ye n c r y p t i o n , a n dp r e - s h a r e dk e y s k e ye x c h a n g ei sa l s op r o c e s s e dd u r i n gt h ep h a s el n e g o t i a t i o n i no r d e rt os h a r es e c r e tk e y sv i aa nu n s e c u r e di n t e r n e t i k e u s e sd i f i l e h e l h n a n k e ye x c h a n g ea l g o r i t h m i n o t h e rw o r d s i k e r e a l i z e sk e ye x c h a n g e sm a i n l yb a s e do nt h ed i f f i e - h e l l m a nk e y e x c h a n g e a l g o r i t h m t h em a t h e m a t i c sg r o u n d w o r ko ft h ed i f i l e h e l h n a nk e ye x c h a n g e a l l ;o r i t h l ni st h ed i f f i c u l t i e st oc o m p u t ed i s p e r s el o g a r i t h n l a n dt h em a i n p a r to f d i f i l e h e l h n a na l g o r i t h mi st h em o d u l a r p o w e r , ;u s ta st i l es a n l ea s r s ap u b l i c k e ye n c r y p t i o na l g o r i t h m b e c a u s e r s ap u b l i c k e y e n c r y p t i o na l g o r i t h mc a nb eu s e df o rd i g i t a ls i g n a t u r e ,r s ai sw i d e l y u s e df o ra u t h e n t i c a t i o n b u ta st h ec o r eo fb o t hd i 伍e - h e l l m a na l g o r i t h m a n dr s a a l g o r i t h m ,m o d u l a rp o w e ra l g o r i t h n li sq u i t es l o w , a n d o f t e nc o s t m u c hs p e n d i n g s o i no r d e rt oa c h i e v eb e r e rp e r f o r m a n c ei nb o t hk e y e x c h a n g e s a n d a u t h e n t i c a t i o n ,i t i s v e r yi m p o r t a n t t o i m p r o v e t h e e f ! f i c i e n c y o fm o d u l a rp o w e ra l g o r i t h m t h i sd i s s e r t a t i o n a n a l y s e sa n d r e s e a r c h e sv a r i o u sw a y st o i l n p r o v e t h em o d u l a rp o w e ra l g o r i t h m ,a n d 0 f f e r sas e r i o u so fa d v a n c e da l g o r i t h m s ,w h i c hc a ni r e p r o v et h es p e e do f m o d u l a r p o w e ra l g o r i t h mg r e a t l y b a s e do nt h e h n p l e m e n t a t i o no fs o m ei k ec o r et e c h n i q u e ,t h i s d i s s e r t a t i o na n a l y s e sa n dr e s e a r c h e so i lt h e p h a s e s ,m o d e s ,a n dv a r i o u s m e t h o d so fa u t h e n t i c a t i o ni ni k e e s p e c i a l l yf o rt h es e c u r i t yb u g s t h e t a r g e to f t h er e s e a r c hi sn o tt h es e c u r i t yo ft i l ea l g o r i t h n l b u tt h es e c u r i t y o fi k e p r o t o c o li t s e l f , u n d e rw h e t h e ra c t i v ea t t a c ko rp a s s i v ea t t a c k a n d f i n a l l yo f f e r ss o m ea d v i c eo nt h es e c u r i t yo f i k ei m p l e m e n t a t i o n k e y w o r d s :i k e ,s e c u r i t ya s s o c i a t i o n ,a u t h e n t i c a t i o n ,k e ye x c h a n g e , m o d u l a r p o w e ra l g o r i t h m 第4 页共7 8 页 对在i n t e r n e t 2 上密钥交换和确定技术的实现与研究 符号说明 下面是列本文中常用的一些符号和术语的简单既明: h d r :是指i s a k m p 消息的头部。如果写成h d r * ,则表示i s a k m p 消 息的内容已经被加密保护。 c k y i 和c k y r :包含在i s a k m p 头部中的标识信息,分别是发起者和 回应者各自选择的c o o k i e 。这两个值是协商双方建立的i s a k m p 安全连接的 标识符,在几乎所有的i s a k m p 消息中都会出现( 作为i s a k m p 头部信息的 一部分) 。 m i d :包含在i s a k m p 头部中的消息标识符,在i k e 第一阶段协商中不 起作用,但在第二阶段中可以用来唯一标识一次胁商交换过程或通知信息。 s a :是指安全连接的m 商内容,它一般可以包含一个或多个协商提议。安 全连接的发起者可以提供多个协商提议,而回应者只能以其中的一个提议作为 回应。 - b :这罩 泛指一般的载荷内容, b 则指的是它的本体( 除了 头部以外的部分) 。比如s a i b 就是指发起者s a 的全部本体,包括了自治域 ( d o i ) 标识符、位罱、发起者提供的全部协商提议以及其所有允许的变形等 内容。 和g ( 或g “x i 和g “x r ) :这是在d i f f i e - h e l l m a n 算法中发起者与回应者 进行交换的公开数值,其具体含义可以参见附录l 中关于d i f i l e h e l l m a n 密钥 交换算法的说明。 g ”( 或g “x y ) :是在d i f f i e h e l l m a a a 算法中双方交换后共同得到的秘密数值, 可以用来生成安全密钥,其具体含义可以参见附录1 中关于d i f f i e h e l l m a n 密 钥交换算法的说明。 k e :是密 ;j j 交换的有效载* i ,包括了在d i f f i e h e l l m a n 算法中双方交换的 公开数值等内容。因为这是公丌信息,因此对它的数据一般并没有采用特别的 编码方式来加以保护。 n x :发起者和回应者各自选择的随机数n o n c e ,分别汜做n i 和n r ,一 般长度为8 字节到2 5 6 字节不等。 第页共7 8 页 对在i n t e r n e | 2 上密钥交换和确定技术的实现与研究 i d x :这是双方各自的标以符。这里x 可以有四种选择:对i k e 协商的第 一阶段来说,i d i i 和i d i r 分别表示i s a k m p 的发起者标识和回应者标识。 而对协商的第二阶段来说,i d u i 和i d u r 分别用来表示用户发起者标识和回应 者标识。 s i g :表示经过数字签名的信息,一般用于身份鉴别。 c e r t :数字证书,一种鉴别信息,一般用来指出应该使用哪一个数字签名 或公开密钥。( 因为每个实体都有可能有多种数字签名或多个公开密钥,证书可 以指出所用的到底是哪一个)。 h a s h :表示用敝列算法计算的消息摘要,即敞列载荷,可以用于消息的完 整性鉴别。 p r f ( k e y ,m s g ) :一个带参数的伪随机数函数( 通常就是一个h m a c 模式 的散列函数) ,用来列固定的输入对( k e y ,m s g ) 产生确定的输出。而且从整体 上( 如m s g 随机变化) 来看,其输出能表现出比较好的“随机性”特征。p r f 在 鉴别和密钥生成中都起很大的作用。 s k e y i d :是在第一阶段协商和交换后双方得到的仅有双方知道的秘密字符 串,它一般是山d i f f i e h e l l m a n 算法交换得到的秘密数值衍生而来的。 s k e y i d e :被i s a k m p 安全连接用来进行加密消息的密钥。 s k e y i d a :被i s a k m p 安全连接用来进行豁别消息的密钥。 s k e y i d d :用来产生非i s a k m p 安全连接的通信密钥。 y :表示对消息x 用密钥y 加密后的密文。 专:表示从发起者到回应者的消息流,即请求。 :表示从刚应者到发起者的消息流,i 向应。 x 【y :表示把x 的内容和y 的内容串联起来。 x 】:表示x 是可选的内容。 第8 页共7 8 页 对在i n t e r n e t 2 上密钥交换和确定技术的实现与研究 第一章绪论 1 、密钥交换和确定技术的任务和作用 在i n t e r n e t 上进行机密信息传输、电子商务、私密通信等业务时,常常需 要保护通信数据的安全。而现代保护通信数掘安全的基本实现方法主要是通过 加密。出于在当前i n t e r n e t 的发展中,安全问题已经日益突出,因此在下一代 互联网i n t e r n e t 2 的设计思想中更是特别强调了提高网络通信的安全性这一点, 比较典型的就是1 p s e c 等安全连接业务。 但所有在i n t e r n e t 2 上建立的安全连接业务都其实是由通信双方经过协商约 定的一系列安全策略和通信密钥构成的。双方在丌始建立安全连接时就要协商 约定采用的安全策略集,而剥安全性至关重要的通信密钥则不作为安全策略协 商的一部分,它必须在双方通过身份鉴别的基础上刊能交换和确定。 也就是说,双方建立安全连接时,除了要协商安全策略外,主要还需解决 两个问题:鉴别和密钥交换。 所谓鉴别,一般包含两重含义,即身份鉴别和完整性鉴别。身份鉴别,就 是指通信双方都能够通过某些方法,认定对方的身份是真实的,而不是假冒的。 完整性鉴别则是指通信的任一方都能证明所有对方发送的消息都是完整的,未 被篡改的。 为了进行身份鉴别,一般有采用数字签名,公开密钥算法加密或预先共享 密钥等方法,而且只需要在连接建立时进行一次就够了。如在i k e 协议中,仅 在第一阶段协商时需要进行身份鉴别。而完整性鉴别就不同了,它是需要贯穿 协商过程始终的,基本上对双方每一条消息都需要进行确认,因此多采用散列 算法来完成。如在i k e1 办议中,笫二阶段协商的所有消息都各自带有完整性鉴 别载荷,而第一阶段则一般只在最后一回合消息交换时才对前面协商和密钥交 换的结果进行总体确认。 在鉴别的基础上,双方就可以进行密钥交换了,也就是共同协商秘密的通 信密钥。由于密钥交换是在丌放的i n t e r n e t 上以明文的形式进行的( 因为通信 密钥还没协商出来) ,所以一般只能采用d i f f i e h e l l m a n 密钥交换算法( 参见附 录1 ) ,它是一个可以用明文协商秘密密钥的重要算法,在i k e 协议中有着难 以替代的作用。 9 9 页共7 8 页 对在i n t e r n e t 2 上密钥交换和确定技术的实现与研霓 2 、i k e 协议和模指数算法 阿面已经提到的i k e 协议就是指因特网密钥交换协议( i n t e m e tk e y e x c h a n g e ,缩写为i k e ) ,它是用于建立安全连接的重要手段,能够很好地实 现鉴别和密钥交换功能。 1 k e 协议实际上是多个协议的混合产物:它将o a k l e y 密钥确定协议和 s k e m e 有机地结合起来,并统一在1 s a k m p 框架下。其中o a k l e y 密钥确定 协议定义了一组针划各种通信方式的密钥交换的方式,在i k e 中对应于各交换 模式。s k e m e 则描述了一个普遮通用的密钥交换技术,可以提供匿名服务,并 支持快速密钥刷新等,其思想被体现在i k e 第二阶段的密钥刷新中。而因特网 安全连接和密钥管理协议( i n t e r n e ts e c u r i t ya s s o c i a t i o na n dk e ym a n a g e m e n t p r o t o c o l ,缩写为i s a k m p ) 则是一个在i m e r n e t 2 上协商建立安全连接的基本 框架协议。这样结合的结果,使得i k e 协议成为一个博采众家之长,适用范围 广泛的综合性协议,但也无形中增加了安全隐患的可能性。 在i k e 协议的身份鉴别方法中,不论是用公丌密钥加密算法鉴别还是用数 字签名,其中最常使用的都是r s a 算法,而i k e 协议的密钥交换又一定是由 d i f f i e h e l l m a n 密钥交换算法来实现的。这两个算法虽然安全系数都很高,但不 幸的却是它们的主要算法部分都是模指数算法,而模指数算法的速度又是非常 慢的。这样就导致在很多高速的安全应用中,模指数算法的效率成了限制速度 的主要瓶颈之一。 3 、模指数算法限制了v p n 的应用 i k e 在很多安全应用方面都有着广泛的使用。比如对虚拟专用网( v i r t u a l p r i v a t en e t w o r k ,缩写为v p n ) 来说,通信双方需要在公用网络上建立虚拟的 专用安全信道,就必须解决身份鉴别和密钥交换问题,因此就可以使用i k e 技 术来帮助实现。 下面的图1 1 就显示了一个腆型的l a n t o l a n 的v p n 结构。从图上 面可以看如,这个v p n 应用是通过在i n t e r n e t 上建立安全的信道连接多个 l a n ( 也即v p n 子网) 来实现虚拟专用网络的。 在这里,每个l a n 都需要有一个v p n 接入网关。对于不同v p n 子网 中主机的通信连接要求,它们各自的网关之间需要先在i n t e r n e t 上建立一条安 全连接,然后将主机发送的明文信息加密后发送到目的子网的网关,在那里密 文被解密为明文,最后再发送到目的主机。 第l o 页共7 8 页 时在i n t e r n e t 2 上密钥交换和确定技术的实现与研究 名 吾 “= 沁 委 旨 塞 誊 州 f i g i 。1l a n t o l a nv p n s t r u c t u r e 图1 - i 局域网互联v p n 结构 在这样的通信模式下,v p n 接入网关必须完成建立安全连接的主要任务, 即安全策略的协商和密钥交换。一般的处理是它们先作为i s a k m p 实体进行第 一阶段密钥交换,建立一条i s a k m p 安全连接,然后再利用该安全连接来为主 机之阳j 建立安全连接业务。 这样一来,v p n 网关实际上将承受几乎所有子网内部主机建立安全连接的 请求,当主机数量成倍增加时,v p n 网关的容量也必须要成倍地增加才能满足 要求。而要提高v p n 的通信速度,实现高速v p n 应用,也必须对v p n 网 关的效率作出较高的要求。 而| j 面已经提到,模指数算法是相当费时的,密钥交换的主要开销都是花 在模指数算法上的。因此在要求处理几乎同时发生的多个安全连接请求时,如 果模指数算法是相当低效的,那么这两台网关可能一直在忙于计算建立安全连 接所需要的大量的模指数算法,而根本没有时间来处理正常的通信业务。 当然这种情况也可以通过增加服务器的数量或容量来解决问题,但提高模 指数算法的速度无疑是一个性价比最佳的方法。 因此,本文第六章专门对模指数算法进行了深入细致的分析研究工作,指 出传统模指数算法效率低下的主要原因,并试图从多个方面进行分析改进,提 出了一系列的改进方案,以删获得高效率的模指数算法。模指数算法在经过了 这样的改进后,将可以使i k e 实现的运行速度大大提高,从而能够在同样的硬 件环境下取得更理想的效率,以最廉价的方式提高服务器的容量。 4 、本文各章节内容 本文第二章先对在i k e 协议中使用的基本算法、技术和协议框架作了一定 的阐述,然后在第三章和第四章分别就密钥交换的第一阶段和第二阶段具体的 交换方式和交换内容作了具体的说明和分析。在第五章中则通过举了一个实际 第l l 页共7 8 页 对在i n t e r n e t 2 上密钥交换和确定技术的实现与研究 密钥交换的例子来说明i k e 技术的具体应用方式。 第六章是本文的重点之一,就是通过详细分析模指数算法的步骤和效率, 提出了一系列简化算法、提高效率的措施,并分析各方案具体的改进成果和为 此可能付出的代价。这样就为实现高效率的模指数算法奠定了基础。 本文最后还在第七章对i k e 技术中存在的各种实现问题和安全漏洞做了一 定的分析,考虑了在攻击者进行各种主动或被动攻击的情况下,i k e 的安全强 度。分析指出,i k e 的安全强度远并不是完美的,为了在现有的基础上尽量加 强其安全程度,本文还提出了一些改进建议。 第1 2 丽共7 8 页 对在i n t e r n e t 2 上密钥交换和确定技术的实现与研究 第二章i k e 技术综述 在f j 言中已经提到:i k e 协议的主要任务建立安全连接业务,而其最重要 的功能则是鉴别和密钥交换。其中鉴别又包括身份鉴别和完整性鉴别两重含义, 分别由不同的算法支持实现。而密钥交换则主要依赖于d i f i l e h e l l m a n 密钥交 换算法( 参见附录1 ) 。 出于i k e 协议是结合在i s a k m p 的框架下的,因此在整个密钥交换过程 中都必须遵守标准i s a k m p 的载荷语法结构、属性编码方式,超时设定和消息 重传机制、以及告警消息等规定。 1 、术语的详细解释和说明 ( 1 ) 安全连接 所谓安全连接( s e c u r i t ya s s o c i a t i o n ,缩写为s a ) ,实际上就是由一组 安全策略和通信密钥。安全策略主要包含下面几个属性:鉴别身份的方法、加 密用的算法( 及其加密的模式) 、密钥长度、初始向量( 如果加密算法是c b c 模 式的) 等。而一个安全连接一般可采用多个通信密钥( 如上行连接的密钥和下 行连接的密钥) ,也可以通过删新密钥获得更“新鲜”的通信密钥。 而i s a k m p 安全连接既具有一般安全连接的特点,又有其特殊性,那就是 i s a k m p 安全连接是用来保护其它具体的安全连接业务的协商和交换过程的。 在i k e | 力、议中,为了建立安全连接,双方先要协商建立一个i s a k m p 安全连 接或者利用一个已经建立的i s a k m p 安全连接,然后在该i s a k m p 安全连接 的保护下进行具体业务的协商和密钥交换。正因如此,身份鉴别在建立i s a k m p 安全连接的过程中完成后,在第二阶段协商过程中就可以省略身份鉴别了。在 第二阶段协商中甚至还可以省略密钥交换部分,商直接用i s a k m p 安全连接中 的s k e y i dd 来衍生出通信密钥( 参见第四章) 。 第1 3 页共7 8 页 对在i n t e r n e t 2 上密钥交挟和确定扶术的实现与研究 - ( 2 ) i s a k m p 头部 。 i s a k m p 头部( i s a k m ph d r ) 就是指i s a k m p 消息的头部载荷。出 于在i k e 协议中,所有的消息都是以i s a k m p 消息的格式发送的,因此 i s a k m p 头部对每条消息都是必须的。在i s a k m p 头部中,包含了c k y - 1 和 c k y r ,它们分别是发起者和回应者选择的c o o k i e ,唯一标识了该i s a k m p 安全连接。 另外,对于每个第二阶段的协商和交换过程以及通知信息,i s a k m p 头部 中还包含了消息标u 符m i d ,可以唯一标识该交换过程或通知信息。在第一 阶段协商过程中,消息标识符m i d 则一直是0 。i s a k m p 头部中包含的交 换类型就是i k e 中的各模式。 如果写成h d r * ,表示该i s a k m p 消息的内容已经被加密保护,这时必 须将除i s a k m p 头部以外的载荷全部加密。加密时使用的密钥是s k e y i de , 而加密方式则是在i s a k m p 安全连接中约定的加密算法。 特别要注意的是n o n c e 与c o o k i e 虽然都是随机数,但它们的含义和作用 是完全不同的:c o o k i e 在一次安全连接中都是固定的,它的作用主要是标识该 次安全连接,以帮助双方电录当前协商进行的阶段和已经协商得到的结果等信 息,从而起到化无状态协议为有状态协议的功能;而n o n c e 则主要是双方任意 。 选择的随机数,在各次交换过程中都各不相同,且一般的“寿命”只有很短的 时间( 如一小时或几分钟) 。n o n c e 主要是为防止攻击者采用重放攻击等方法来 破坏协议的安全性,同时可以完成快速密钥刷新等功能。 ( 3 ) 完美的前向保密性 所谓完美前向保密性( p e r f e c tf o r w a r ds e c u r i t y ,缩写为p f s ) ,是指一种 安全连接中的概念:当某个通信密钥被泄露或破译,安全性受到破坏的时候, 仅仅只有用该密钥加密的信息的安全性遭到了破坏,而其它加密信息的安全性 则不应该受到威胁。换句话u 3 ,就是不能一损俱损。 4 要实现完美前向保密性,首要的一条就是每个用于保护消息的通信密钥都 不能t r | :f 于生成任何其它的通信密钥。这样爿可能使得当该密钥变得不安全时, 其他密钥还能保持安全性。另外还要注意的是,如果用于加密的通信密钥是从 某个秘密字出或数值衍生1 f | j 米的,那么该秘密字串或数值就不能再用于衍生任 何其它的通信密钥。 i k e 协议对生成的通信密钥和双方的身份标识符都能提供完美的_ | j i 向保密性 保护。这样,就不会发生攻击者破译了一个密钥就可以破译所有通信消息的情 趣豳戳童。潮矗氩蕊童a 蔷j , 第1 4 页共7 8 页 时在i n t e r n e t 2 上密钥交换和确定技术的实现与研究 况了。除非攻击者能逐个地将所有通信密钥都破译出来,否则是得不到全部消 息内容的。 2 、模式和阶段 在o a k l e y 协议定义了各种密钥交换的模式,而i s a k m p 则定义了建立安 全连接的两个阶段。i k e 协议将它们两者结合起来,通过在各阶段使用不同的 模式来建立安全连接。下面图2 1 所示的就是i k e 建立安全连接的两个阶段 的示意图: t c p ,u d p i p s e c 皿 t c p ,u d p i p s e c d f i g 2 - lo v e r v i e w o f i k e 图2 - 1i k e 综述 在i k e 协议中,双方为了建立安全连接,首先必须有一个i s a k m p 安全 连接。如果双方尚未建立可用的i s a k m p 安全连接,那么就需要用一次第一阶 段f ! 【f j 、商和交换过程来建立它。第一阶段i 办商和交换可以在身份鉴别的基础上为 两个i s a k m p 实体之间建立了一个i s a k m p 安全连接。主模式和激进模式密 钥交换过程都能完成第一阶段的密钥交换,而且主模式和激进模式也只能被用 于第一阶段。 在建立i s a k m p 安全连接后,双方就可以在该i s a k m p 安全连接的保护 下进行具体安全连接业务的协商和密钥交换过程,这就是第二阶段协商。第二 阶段的协商和交换目标是建立具体的安全连接业务,如i p s e c 等。快速模式密 钥交换过程可以完成第二阶段的密钥交换,而且快速模式也只能被用于第二阶 段交抉过程。 第ts 页共7 8 页 对在i n t e r n e t 2 上密钥交换和确定技术的实现与研究 另外,新组模式交换过程并不是属于第一阶段或第二阶段的,但它的使用 必须是在放在第一阶段交换完成之后进行。新组模式可以建立一个新的d i f f i e h e l l m a n 组以用于以后的叭商和交换过程。 因为i s a k m p 安全连接是双向性连接,双方的地位是平等的,所以只要一 旦建立了i s a k m p 安全连接,双方中任何一方都可以发起快速模式或新组模式 的交换过程。这就使得第二阶段的发起者可能是第一阶段的回应者。因此在后 面的讨论和实现中都必须注意发起者( 或回应者) 所指的都是当时那个阶段的 发起者( 或回应者) 。 根掘i s a k m p 协议文本,i s a k m p 安全连接是由c k y - iic k y - r 来标 识的,驯标识符是山发起者的c o o k i e 后接回应者的c o o k i e 来构成( 注意这是 第一阶段的发起者和回应者) 。不论在快速模式或新组模式中谁是发起者,该标 识符都将保持不变。这就是说哪怕在第二阶段中的发起者是第一阶段中的回应 者,c k y i 和c k y r 的顺序也不会发生改变。 在使用了i s a k m p 的阶段似念后,一个i k e 的实现就可以在需要的时候 实现快速密钥更新。由于一次第一阶段协商建立的i s a k m p 安全连接可以支持 多个第二阶段协商,而一次第二阶段阶段的协商也可以同时建立多个具体的安 全连接,所以i k e 实现有可能使得平均每建立一次安全连接只需要少于一个回 合的协商过程。 这样,用i k e 防议每建立一个安全连接平均就只需要少于一次的d i f i l e h e l l m a n 算法。而d i f f i e - h e l l m m a 算法的次数是影响密钥交换速度的重要参数, 因此意l 睐着用i k e 建立安全连接的速度应该说足比较迅速的。在第六章将详细 分析提高d i f f i e - h e l h n a n 算法中模指数运算效率的问题,这也有利于将建立安全 连接的速度再次优化。 在第一阶段中,如果使用主模式将可以提供身份保密功能。而如果不需要 身份保密,可以采用激进模式以减少协商所需要的回合数。但是如果在激进模 式中采用公丌密钥算法加密的方法实现身份鉴别,那么同样也可以提供身份保 密功能。但是由于大多数公丌密钥加密算法跟d i f f i e h e l l m a n 算法一样都需要 相当多的计算机时刚,因此虽然可以减少协商回合数,却往往是以大大增加计 算机的汁算开销为代价的。 3 、i s a k m p 安全连接的各种属性 在i k e 第一阶段吣商建立i s a k m p 安全连接时,至少需要协商约定下面 的4 利,屈性: 第1 6 页共7 8 页 对在i n t e r n e t 2 上密钥交换和确定技术的实现与研究 ( 1 ) 加密算法 ( 2 ) 敝列算法 ( 3 ) 身份鉴别方法 ( 4 ) d i f f i e h e l l m a n 密钥交换算法的( 参数) 组 所有这4 种属性都是强制性的,必须被阱商约定。 另外,作为一种可选的协商内容是一个伪随机函数( p r f ) ,如果双方没有 协商选择伪随机函数算法,那么就使用i 办商约定的散列算法的h m a c 版本作为 伪随机函数。因此,要求l 办商提议的敞列算法- p 每一个都必须在本身的特性外 还能支持h m a c 模式。 而所谓的d i f f i e h e l h n a n 密钥交换算法的( 参数) 组,其耿值必须要么是 预定义组的标识符,要么是一个定义了所有属性的新组。新组的类型和参数不 能通过引用已经定义的组的属性的方式来间接给出,而只能直接给出。一般 d i f f i e h e l l m m l 组的类型可以有传统的m o d p 组,e c 2 n 组和e c p 组,其参 数形式则根据组类型的不同而有所区别。i k e 协议中已经预定义了5 个d i m e h e l l m a n 组,其中有3 个是m o d p 组,、2 个是e c 2 n 组,使用它们时可以直 接引用标识符( 参见附录2 ) 。 、 i k e 协议的实现必须支持下述属性值: ( 1 ) 加密算法:d e s 算法的c b c 模式。需要注意的是,在该算法中 应先包含一个剥d e s 的弱密钥、半弱密钥的检查( 参见附录3 ) ( 2 )散列算法: m d 5 算法和s h a 算法 ( 3 ) 身份鉴别方法:用预先共享的密钥进行鉴别的方法 ( 4 ) d i f f i e - h e l l m a n 组:缺省的预定义o a k l e y 第一组( 参见附录2 ) 另外,1 k e 的实现应该能够支持的属性值有: ( 1 )_ j j l l 密卵:法:3 d e s 算法 ( 2 ) 散列算法:t i g e r 算法 ( 3 ) 身份鉴别方法:采用数字签名标准( d s s ) ,r s a 签名的数字签名 鉴别方法,用r s a 公开密钥加密算法进行鉴别的方法 ( 4 ) d i f i l e h e l l m a n 组:预定义的o a k l e y 第二组 第1 7 页共7 8 委 对在i n t e r n e t 2 上密钥交换和确定技术的实现与研究 1 、主模式和激进模式 第三章第一阶段 要在第一阶段实现鉴别和密钥交换有两种基本的方法,即主模式和激进模 式的密钥交换。其中每种模式都会通过一次d i f f i e h e l l m a n 交换算法来产生秘 密的通信密钥。但是在交换过程中,不能转换交换的模式。 主模式是i s a k m p 身份保密密钥交换的一种具体的实现: 主模式中第一回合的消息交流即开始的两条消息用于协商安全策略;接着 的两条消息则用于交换d i f f i e h e l l m a n 公丌数值和一些交换中必须的辅助数据 ( 比如n o n c e 等) ;而最后的两条消息则用来鉴别双方的身份以及前面的协商 过程。其中作为i s a k m p 初始交换的一部分,协商得到的安全策略中,身份的 鉴别方法将影响到以后密钥交换的载荷构成情况。也即是说,对于主模式中协 商约定的不同的鉴别方法,以后的交换过程也会不同,当然消息载荷的内容及 其含义也都不会一样。 类似的,激进模式则是i s a k m p 激进交

温馨提示

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

评论

0/150

提交评论