APP下载

基于网络代理的动态IP注册协议研究

2017-05-31赵义

软件导刊 2017年5期

赵义

摘要摘要:在动态IP应用环境中,无线信道的开放性和节点的动态性会给网络安全带来许多新问题。动态IP注册是安全管理的前提与基础,是动态IP协议能够继续执行的关键。提出了一种基于网络代理的动态IP安全注册协议,以解决动态IP安全注册难题,提高动态网络安全性能,减少认证注册开销。

关键词关键词:动态IP;网络代理;安全注册;网络认证

DOIDOI:10.11907/rjdk.162655

中图分类号:TP393

文献标识码:A文章编号文章编号:16727800(2017)005016103

0引言

随着动态网络需求的不断发展,动态IP技术的安全性和可靠性变得越来越重要。动态IP技术能够保证计算机在动态过程中实现对网络的不间断访问。但动态IP极易遭到各种攻击,如果认证过程遭到攻击,将导致动态节点MN(Dynamic Node)无法正常使用网络资源,解决办法是通过安全注册协议防止这些攻击。另一方面,当动态主机远离Home网络时,其注册过程会给网络增加新的负担,解决办法是引入外地代理域网络管理技术,减少动态节点远距离Home注册频度[1]。本文根据网络外地代理管理方案,提出基于代理的动态IP注册协议,有效解决了动态IP安全注册难题。

1符号定义

AA:代理广播;RQ:注册请求;RR:注册回应;FAid:FA的网络地址(MAC和IP)作为其身份标识;TFA:动态注册过程中,不同的nFA汇聚上级FA,有可能是GFA;

COAs:外地代理公告中包含的可用转交地址列表;A → B: M:实体A发送消息M给实体B,实体包括MN、FA、nFA、GFA、HA;RA:实体A产生的一次性随机数;

KA-B:实体A和B之间共享的对称密钥;GK:网络外地代理域中使用的群密钥;

M|N:消息域M和N的组合;EK(M):利用密钥K对消息域M实施对称加密运算得到的密文;Hi(M):用单向函数Hi对消息域M实施杂凑预算得到的哈希值。

2安全假设

为将协议的复杂度控制在合理范围内,同时保证足够的安全性,对于注册协议的应用环境作如下安全假设[2]:①GK是安全的,由GFA對GK进行管理,即GFA可以保证GK的安全性;②GFA承认HA对MN身份的验证结果具有权威性,MN承认HA对GFA身份的验证结果具有权威性;③协议中采用的对称加密算法EK(m)是安全的,即任何人在不知道密钥K时无法获知明文m,或知道明文m和相应的密文EK(m),没有比穷举攻击更有效的办法破解密钥K;④作为询问(Challenge)的一次性随机数选自足够大的空间,攻击者无法预测。

3代理方式

当动态节点MN离开Home网络到达外地网络时,首先要从外地代理FA(Foreign Agent)获取一个转交地址COA(Change Of Address)[3],然后向Home代理HA(Home Agent)注册这个COA。当MN不停地改变它的网络连接点时,它可能离HA变得越来越远,这时向HA注册的过程将会极大增加外地网络和Home网络之间的流量负担,网络延迟将增大,解决方法是进行网络动态性管理,例如网络FA管理方案[12]。在网络FA管理方案中(见图1),MN首先将一个网关外地代理GFA(Gate Foreign Agent)的IP地址向它的HA注册为COA。这里GFA指FA的最高层,即外地代理管理域中的根代理,这个GFA保存当前所有与它注册的访问者列表。HA将GFA的IP地址记录为MN的COA,当MN在同一个访问域中改变接入点时,HA中的记录将不会改变。因此,MN并不需要一直向HA注册。除此之外,FA在区域中是以网络形式排列的,只要MN在同一访问域内,它就不需经过HA同意或重新绑定,就可从一个FA动态到另一个FA,这样极大减少了注册所带来的网络通信负担,提高了网络性能。如果每个被访问的FA都能直接认证MN,则认证过程将大大简化,认证操作也分散到每个FA上。

协议分为Home注册和动态注册[4]两个部分。当MN动态到一个外地代理管理域,接收代理公告中的转交地址列表与MN存储的COA进行比较,如果GFA的COA不同, MN就知道进入了新的外地代理管理域,需要进行Home注册;否则MN认为是动态注册。在Home注册过程中,MN需要与FA、GFA和HA建立认证链,同时完成与HA的共享密钥KHAMN更新。HA不仅会对MN的动态绑定进行更新,也会借此机会更新GFA的共享密钥KGFAHA。在动态注册过程中,MN与nFA(next Foreign Agent)进行双向认证,若认证通过,MN将以新的COA获得由nFA提供的网络服务,nFA将向TFA(Target Foreign Agent)更新MN的动态绑定。这里TFA指访问的FA之间的第一个相同祖先。否则,MN和nFA都丢弃本次动态注册过程中产生的消息,并重新进行动态注册。

4Home注册

Home注册过程如图2所示。其中每一步传输的消息格式与意义如下:

(1) FA MN: AA,COAs,RFA。

(2) MN FA: RQ,MAC,COA,IP,RMN,EKHAMN ( MAC,IP,RMN),RFA。MN收到FA的代理公告后,选定转交地址COA,然后向FA发出一个注册请求以及认证消息。注册请求包括MN的MAC、永久HomeIP地址、RMN和RFA;MN的认证消息包括MN的MAC、IP,以及一次性随机数RMN,用MN和HA的共享密钥KHAMN进行加密。

(3) FA GFA: RQ,MAC,IP,RMN,EKHAMN (MAC,IP,RMN),RFA,EGK(FAid,RFA)。FA收到MN在第(2)部分中发送的消息后,插入用GK加密自己的身份标识的FAid和RFA消息域,然后发送给GFA。

(4) GFA HA: RQ,RMN,EKHAMN(MAC,IP,RMN),RGFA,EKGFAHA(RGFA)。GFA收到FA在第(3)部分中发送的消息后,检查MN是否已经注册。若是,则表明此消息是动态注册的本地绑定更新(GFA恰好为TFA),否则,GFA将通过MN的HA对MN进行认证。此时,GFA去掉消息中的MAC和IP,加入RGFA和与HA共享密钥KGFAHA加密的RGFA发送给HA。

(5) HA GFA: RR,EKGFAHA(RHA,EKHAMN(RHA)),EK′HAMN(RMN),EK′GFAHA(RGFA)。HA收到GFA在第(4)部分中发送的消息后,首先對MN进行认证。HA利用密钥KHAMN解密EKHAMN(MAC,IP,RMN),检查MAC、 IP和RMN的正确性。如果都正确,则HA认为MN是合法用户。HA接下来对GFA进行认证,利用密钥KGFAHA解密EKGFAHA(RGFA)。若RGFA一致,则HA认为GFA是合法的。若对MN和GFA的认证有一个不成功,HA都将拒绝此次注册请求。否则,HA接受MN注册请求。HA会产生一个一次性随机数RHA,并分别进行下列计算:

K′HAMN=H1(KHAMN,H1(RMN||RHA)) (1)

K′GFAHA=H1(KGFAHA,H1(RGFA||RHA)) (2)

这里,K′HAMN和K′GFAHA分别是HAMN、HAGFA之间新的密钥,此时HA还不会改变相应的安全关联,因为还无法确定MN和GFA是否能正确获得各自的新密钥。然后HA向GFA发送注册回应消息,并且插入3个加密的信息域[5]。

(6) GFA FA: RR,ERHA(CR),Z,EKHA-MN(RHA),EK′HAMN(RMN)。GFA收到HA在第(5)部分中发送的消息后,首先对HA实施认证。GFA利用密钥KGFAHA解密EKGFAHA(RHA,EKHAMN(RHA))获得RHA,计算如下:

K″GFAHA=H1(KGFAHA,H1(RGFA||RHA)) (3)

用K″GFAHA解密EK′GFAHA(RGFA),若结果不为RGFA,则GFA认为HA未通过认证,从而拒绝MN的注册请求,否则认为HA通过认证,同时接受MN的认证,为MN建立访问入口,并按如下方法为MN计算证书:

CR=H2(GK,H2(MAC,IP)) (4)

然后GFA用RHA将CR加密为ERHA(CR),并按如下方法计算Z:

Z=H3(GK,MAC,IP,RFA) (5)

最后,GFA将RR、ERHA(CR)、Z、EKHAMN(RHA)和EK′HAMN(RMN)一起发送给FA。

(7) FA MN: RR,ERHA(CR),EKHA-MN(RHA),EK′HA-MN(RMN)。FA收到GFA在第(6)部分中发送的消息后,首先计算H3(GK,MAC,IP,RFA),若结果与Z相等,FA就认为GFA接受了MN的合法性,因而FA承认MN是合法的,并将注册回应消息及ERHA(CR)、EKHA-MN(RHA)和EK′HA-MN(RMN)一起发送给MN。

(8) MN HA : 密钥更新确认,EK″HA-MN(RHA-1)。MN收到FA在第(7)部分中发送的消息,首先对HA进行认证。MN利用密钥EKHA-MN解密 EKHA-MN(RHA),获得RHA,计算如下:

K″HA-MN=H1(KHA-MN,H1(RMN||RHA)) (6)

接着用K″HA-MN解密EK′HA-MN(RMN),若结果不为RMN,则MN认为HA未通过认证,从而丢弃此次注册,否则,MN认为RR是合法的。然后,MN解密获得CR,MN在GFA所在的管理域中用CR完成动态注册。最后MN必须向HA确认已经获得了新的密钥,向HA发送密钥更新确认消息和EK″HA-MN(RHA)。注意此时MN已经能够通过FA接入网络,因此可以直接向HA发送消息。HA收到消息后,更新与MN的安全关联。

(9)GFA HA: 密钥更新确认,EK″GFA-HA (RHA+1)。此操作的目的同样是通知HA对GFA-HA之间的安全关联进行更新。事实上这一步操作可以在第(5)部分完成后任意时刻进行,从图2也可看出这一点。为了叙述方便,这里作为第(9)步。

5动态注册

注册过程如下:

(1) nFA MN : AA,COAs,RnFA。

(2) MN nFA : RQ,σ,MAC,IP,COA,RMN。收到nFA的代理公告后,MN首先判断是否已经动态到一个新的FA域,若是,则MN计算认证因子:

σ = H4(RnFA,CR,COA,MAC,RMN) (7)

然后MN将注册请求、σ、MAC、IP、COA和RMN一起发送给nFA。

(3) nFA MN : H4(RMN,CR′,COA)。收到MN在(2)中发送的消息后,nFA首先对MN进行认证。nFA计算如下:

CR′ = H2(GK,H2(MAC,IP)) (8)

σ′ = H4(RnFA,CR′,COA,MAC,RMN) (9)

将计算值与收到的σ相比较,若不等,则nFA拒绝MN的注册请求,否则,nFA接受MN的注册请求。立即向TFA发送MN的动态绑定更新消息,并向MN发送H4(RMN,CR′,COA)。

(4) MN收到nFA在(3)中发送的消息后,在本地计算H4(RMN,CR,COA),若与收到消息相吻合,则MN认为注册回应消息可信,否则MN放弃本次动态注册。

6结语

本文设计的注册协议结合网络外地代理管理方案特点,引入动态注册,提高了注册效率。协议实现了两个重要密钥的动态更新,提高了协议安全性,同时为解决密钥管理问题提供了解决办法。协议避免使用复杂的算法实现认证和密钥更新,适用于动态节点计算能力受限场合,使协议具有良好的适用性。本协议有效解决了动态IP安全注册难题,提高了动态性网络安全性能,对于动态IP协议分析和设计有一定的参考价值。

参考文献参考文献:

[1]BENNETT C H ,BRASSARD G,EKERT A K.Quantum cryptography,scientific american[EB/OL].http://xueshu.baidu.com/s?wd=paperuri:(2b039c4eee0f401e0dbb4f5de1a8f4c5)&filter=1205040471072631760.

[2]W K WOOTERS,W H ZUREK.A single quantum can't be cloned[J].Nature,1982(299):802803.

[3]A EINSTEIN,B PODOLSKY,N ROSEN.Can quantum mechanical description of physical reality be considered complete[J].Phys,Rev,1935(47):777779.

[4]J S BELL.Physics[J].Long Island City,N Y,1965(1):195196.

[5]MARTIN RUPINSKI,JOHAN ZETTERBERG.Quantum cryptography[J].Project in Nonlinear Optics,2004(5): 96100.

责任编辑(责任编辑:杜能钢)