CN101208931B - 给与通信节点会话的移动节点提供匿名性 - Google Patents
给与通信节点会话的移动节点提供匿名性 Download PDFInfo
- Publication number
- CN101208931B CN101208931B CN2006800228420A CN200680022842A CN101208931B CN 101208931 B CN101208931 B CN 101208931B CN 2006800228420 A CN2006800228420 A CN 2006800228420A CN 200680022842 A CN200680022842 A CN 200680022842A CN 101208931 B CN101208931 B CN 101208931B
- Authority
- CN
- China
- Prior art keywords
- address
- care
- mobile node
- sequential value
- expectation
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Mobile Radio Communication Systems (AREA)
Abstract
一种方法、通信节点和移动节点,用于在与通信节点的会话中给移动节点提供匿名性和不可链接性。根据秘密数据而计算的序列值被添加到从移动节点向通信节点发送的更新并且被所述通信节点使用来认证来自所述移动节点的更新。移动节点的归属地址并未被明显地公开。期望转交地址在通信节点被计算出来并且被通信节点使用来向移动节点发送数据分组。
Description
发明背景
技术领域
本发明涉及一种方法、移动节点和通信节点,用于当移动节点与通信节点会话时支持移动节点的匿名。
背景技术
移动IP版本4(移动IPv4、移动IP、MIPv4或MIP)和移动IPv6的当前版本被构建以便给主机或移动节点(Mobile Node MN)提供移动性。通常被称为通信节点(Correspondent Node CN)的其它节点通常被视为固定主机。现在参考图1,示出了在因特网工程任务组(Internet Engineering Task Force IETF)的请求注解(Request ForComment RFC)号3775中找到的当前MIPv6规范所建议的MIPv6网络体系结构。如在图1中所看到的,IP网络100包括在提供直接通路122的链路上与CN 120通信的MN 110。直接通路122不可能只由一个直接物理连接组成,而是表示彼此间能够透明地通信的路由设备之间的一系列链路。只要MN 110和CN 120之间的IP通信能够被建立,那么使用一系列链路来在它们之间传输通信业务的方式就是不相关的。
MN 110具有在其归属网络127中有效的永久分配的128位归属地址,当在所述归属网络127中初始化MN 110时分配所述归属地址。归属地址包括64位长的子网前缀以及也是64位长的接口标识符。分配机制在现有技术中是公知的。MN 110进一步与位于其归属网络127中的归属代理(Home Agent HA)130通信。除了其它功能以外,HA
130保持在归属网络127外有效的MN 110的外部地址的记录。外部地址在MIPv6情境下被称作转交地址(Care-of-Address CoA),并且还包括128个比特。被分配给MN 110的CoA及时随着MN 110从一个网络移动到另一个而改变。由HA 130所保持的记录——在MIPv6的情境下被称为绑定(binding)——把CoA与归属地址相联系。为了到达MN 110,还在CN 120中保持绑定高速缓存条目(Binding CacheEntry BCE),所述绑定高速缓存条目包括移动节点的归属地址和CoA。HA 130还负责把在归属地址接收的通信业务路由到MN 110。所接收的通信业务在链路125上被HA 120转发到MN 110。依照MIPv6,在链路125上发送的所有通信业务都被加密以便尤其确保在MN 110和HA 130之间定期交换的凭证(credential)的保密性。
以下内容概括了在典型情况下怎样应用MIPv6原理。例如,MN110在直接通路122上与CN 120进行双向IP会话。当MN 110从第一归属网络移动到受访网络时,如图1上的箭头135所示,所述MN110获取第一CoA。MN 110的寻址状态的此修改必须向CN 120通知。为了通知其第一CoA的获取,MN 110在直接通路122上向CN 120发送第一BU,所述第一BU包括HoA、第一CoA和64位序列号(sequence number SQN)。CN 120在接收到第一BU时创建用于会话的BCE,其中它存储着HoA、第一CoA和SQN。然后CN 120向MN110发送第一BA。在MN 110接收到第一BA表明成功完成了寻址状态修改的通知。
当MN 110在会话仍然进行中时移动到第二受访网络的时候,它获取第二CoA并且向CN 120发送携带有第二CoA的第二BU。第二BU还包括HoA和新的SQN,所述新的SQN的值在早先的SQN上单调增加。CN 120通过使用HoA来辨认用于会话的BCE。CN 120通过利用第二CoA重写第一CoA并且通过利用新接收的SQN重写SQN来更新BCE。如果第二BU包括不在先前存储在BCE中的序列值上单调增加的SQN,那么CN 120就拒绝该第二BU。SQN意在提供保护以防御恶意节点,所述恶意节点可能想要通过发送具有MN 110的HoA的BU以及用于恶意节点的不同CoA来接管该会话。恶意节点不会发送正确的SQN,由此会被检测出来。然而,由SQN提供的保护充其量也是有限的:恶意节点可以发送具有各种SQN值的任意数目的假BU直到一个BU被接受并且用BA作出响应为止。
用于向CN 120通知MN 110移动的上述方法的另一问题在于:在携带有各种BU消息的直接通路122上公开了被分配给所述MN 110的HoA和各种CoA值。位于此路径上的恶意节点可能会识别出MN110并且实时跟踪它在因特网上的移动。此类活动将构成对MN 110的保密性的严重侵犯。
因此,一种如下的方法、移动节点和通信节点将是明显有好处的,所述方法、移动节点和通信节点用于给所述通信节点提供避免向任何第三方公开移动节点的身份并且避免来自冒充合法移动节点的节点的攻击的能力。
发明内容
因此本发明的广义目标是提供一种方法、移动节点和通信节点,用于在移动节点与通信节点的会话中给移动节点提供匿名性和不可链接性。从移动节点向通信节点发送的更新消息包括只有所述移动节点和通信节点才知道的序列值,所述序列值无法被恶意的第三方预测。
本发明的第一方面针对一种用于在通信节点和移动节点处于会话中时向移动节点提供不可链接性的方法,所述移动节点向通信节点发送更新消息。第一更新包括由移动节点设置的序列值。通信节点使用算法至少部分基于所接收的序列值来计算期望序列值,并且把它存储在用于会话的表条目中。当发送第二更新时,移动节点使用与当接收到第一更新时由通信节点使用的相同的算法和相同的先前序列值来计算新的序列值。通信节点接收包括新序列值的第二更新并且使用它来定位表条目。如果所接收的新序列值与在表条目中的期望序列值相匹配,那么通信节点就接受第二更新。这样,找到包括期望序列值的表条目就会认证第二更新,所述期望序列值与所接收的新序列值相匹配。第二更新中的其它数据(例如包括新的地址数据)被用来更新表条目的内容。
本发明的第二方面针对一种用于隐藏更新消息中移动节点的归属地址的方法。
本发明的第三方面针对一种用于通过在每次更新时改变发送到通信节点的地址值来进一步使移动节点在会话中匿名的方法。
本发明的第四方面针对一种用于保持匿名性和不可链接性以防御潜在恶意的第三方的移动节点。
本发明的第五方面针对一种用于给移动节点提供匿名性和不可链接性以防御潜在的恶意第三方的通信节点。
附图说明
为了更详细地理解本发明及其进一步的目的和优点,现在可以结合附图来参考以下描述,在所述附图中:
图1是移动网际协议版本6体系结构的现有技术表示;
图2示出了用于利用在移动节点和通信节点之间的秘密认证密钥来建立会话的方法的表示;
图3a、3b、3c和3d示出了用于在与通信节点的会话中给移动节点提供匿名性的示例性方法的顺序图;
图4示出了依照本发明构建的示例性移动节点;和
图5示出了依照本发明构建的示例性通信节点。
具体实施方式
如下将特别参考优选实施例的各种示例性使用和方面来描述本发明的创新教导。然而应当理解,此实施例仅提供了本发明创新教导的许多有益用处中的几个例子。通常,在本申请说明书中所进行的陈述不必限制本发明所要求的各方面中的任何一个。此外,一些陈述可以适用于一些发明性特征而不适用于其它特征。在附图说明中,同样的附图标记表示本发明的同样的元素。
本发明提供了一种方法、移动节点(MN)和通信者节点(CN),用于在与所述CN的会话中给所述MN提供匿名性和不可链接性。当会话首先被建立时,不管MN是否位于归属网络中,所述MN都向CN发送更新以请求为所述会话创建表条目。如果所述MN位于外部网络中,那么它就从所述外部网络获取转交地址(CoA)并且在更新中把该地址发送出去。CN把CoA存储在它的表条目中。然而如果MN位于其归属网络中,那么它就发送其归属地址(HoA)作为‘伪CoA’,就好像此地址是CoA一样。除非另有说明,本发明的MN对CN动作,就好像它始终位于外部网络中,以便始终在所述CN设立表条目。
当MN在外部网络中时,本发明的MN并不公开它的HoA。当它位于其归属网络中时,它还伪装其HoA是CoA。所产生的‘伪CoA’值随每次更新而改变。因此,CN不能够依赖MN的稳定HoA值来识别用于会话的表条目。现在就需要用于识别表条目的新指针。本发明的MN和CN使用新的序列值(SQV)来代替序列号(SQN)。从一次更新到下一次更新,SQV不会单调增加。相反,具有与SQN相同的64位长度的SQV是通过使用只有MN和CN才知道的秘密信息随每次新的更新而被重新计算的。这防止了恶意第三方跟随各个更新的轨迹以试图跟踪单调增加的SQN值。在本发明的一个方面中,SQV由MN在每个新的更新中发送。CN使用所接收的SQV来定位用于与MN进行的会话的表条目。实际上,现在在CN,SQV被用作识别用于会话的表条目的新指针。
本发明的MN和CN还使用只有它们自己才知道的秘密信息来修改所述MN的地址值。这进一步给MN提供了保密性和匿名性。
在本发明的情境下内,MN可以包括移动蜂窝式电话、个人助理、膝上型计算机等,其中所述MN包括至少一个访问接口并且优选支持MIPv6。
CN可以是服务器,例如网络服务器或会话启动协议(SessionInitiation Protocol SIP)服务器,或任何计算机。CN还可以是另一MN,可选地其本身也可以是另一MN。CN优选支持MIPv6。
为了向本发明的优选实施例的描述提供基础,现在参考图2,图2示出了用于利用MN和CN之间的秘密认证密钥来设立会话的方法的表示。MN 110是与归属网络相关联的,所述归属网络是IPv6网络100的归属部分(也被称为归属网络127)。MN 110具有在IPv6网络100的归属部分中有效的第一IPv6地址或HoA。HoA还用来使MN110与位于归属网络中的归属代理(HA)相关联。HA是归属网络中的节点,其中MN具有预订(subscription)。当在归属网络中建立MN 110的预订时,HA 130定义HoA并且把它分配给所述MN 110。寻址到HoA的所有通信业务都首先被路由到HA 130,所述HA 130把它转发到MN 110。
MN 110还具有一对非对称密钥,包括私钥(K-)和公钥(K+)。双密钥加密的详细作用在现有技术中是公知的。理所当然的是MN110对K+的所有权是可证明的。例如可以使用认证机构来证明所有权,所述认证机构是用于确保K+所有权的可信任的第三方。并不要求使用第三方的另一解决方案是使用已经用于其它密码机制的K+。这种机制的例子是加密生成地址(crypto-graphically generated addressCGA)机制,这种机制也能够证明使用该机制生成的IPv6地址的所有权。
当MN 110移动到IPv6网络100的受访部分中时(步骤220),通过受访部分的服务节点来向所述MN 110提供在所述受访部分中有效的转交地址(CoA)或第二IPv6地址(步骤222)。除HoA之外,CoA也被设置。CoA被用来直接到达MN 110。其中为MN 110设置CoA的方式在本领域中是公知的。
MN 110需要向CN 120通知其新获取的CoA。这通过经由HA 130将建立消息224从所寻址的MN 110发送到CN 120(即从HA 130路由到CN 120)来实现。建立消息224还可以被称作为预先绑定更新(Pre-Binding Update)或PBU。建立消息224通知所述CoA。建立消息包括MN的HoA和CoA,并且可以进一步包括MN的K+。
当接收到建立消息224时,CN 120就测试MN 110的CoA的可到达性和MN 110的HoA的可到达性。这通过将寻址到HoA的第一地址测试228从CN 120发送到MN 110来实现。寻址到CoA的第二地址测试230是从CN 120发送的。
当接收到第一地址测试228和第二地址测试230时,MN 110就发送单个更新232。所述更新232由MN 110使用K-来签名。所述更新232还可以被称作绑定更新(Binding Update BU)。在所述更新232中包括HoA、CoA和SQN。因为所述更新232是为此会话发送的第一更新,所以SQN可以被MN 110设置为任何值。
在CN 120接收到所述更新232就完成了对CoA和HoA的测试。当接收所述更新232时,CN 120创建其中存储有HoA、CoA和SQN的BCE。
CN 120进一步向MN 110发送寻址到CoA的确认234。所述确认234包括在所述确认234中使用MN 110的K+加密的秘密认证密钥(secret authentication key SKbm)。SKbm可能由CN 120来产生。确认234还可以被称作为绑定确认(Binding Acknowledgment BA)。当接收所述确认234时,MN 110使用K-来对SKbm进行解密。此后,在步骤236,CN 120和MN 110使用相同的SKbm来对它们之间的通信进行认证。
可以通过在建立消息224中、在所述更新232中或在消息224和232的任何组合中发送K+来通知MN 110的K+。
现在,在上文已经描述了用于在MN和CN之间建立会话的一般方法,现在将参考图3a、3b、3c和3d来描述本发明的优选实施例的一个方面,图3a、3b、3c和3d示出了用于在与通信节点的会话中给移动节点提供匿名性的示例性方法的顺序图。在建立会话之前,首先在步骤300确定MN 110是在归属网络中还是在外部网络中。如果MN 110在归属网络中,那么它就在步骤302把伪转交地址(pCoA)设置为等于其归属地址(HoA)。如果MN 110在外部网络中,那么它就必须首先在步骤304获取转交地址(CoA)继而在步骤306将它的pCoA设置为等于所述CoA。MN 110然后在步骤308计算虚拟归属地址(VHoA)。用于计算VHoA的优选方法是使用公知的散列机制,其中按照公式(1)来计算VHoA:
VHoA=SHA(pCoA)(1)
其中:
‘SHA’是散列函数。
其它计算VHoA的方法也是可以的。除公知的安全散列标准(Secure Hash Standard SHA)算法之外,这还包括使用其它散列机制。出于保密性原因,优选的是:被分配给MN 110的实际HoA或CoA不能很容易地通过分析在步骤308获得的VHoA值而被检测到。
在步骤310,MN 110进一步设置保密性指示-即P比特。MN 110然后在步骤312向CN 120发送建立消息,例如在MIPv6实现方式的情境下的预先绑定更新(PBU)消息。所述建立消息包括VHoA和pCoA并且优选包括P比特。
虽然如图2所示的建立消息包括MN 110的HoA和CoA,然而此建立消息在其中所发送的地址类型方面有所不同。代替HoA而发送的VHoA不是可路由的地址。代替CoA而发送的pCoA是可路由的地址并且实际上可以具有等于HoA或CoA的值。
在步骤312,CN 120接收建立消息。在步骤314,CN 120根据P比特的存在得知VHoA并不是真正的归属地址从而决定跳过任何归属地址测试。在没有P比特的情况下,CN 120可能试图进行归属地址测试、检测故障,根据所述故障来确定VHoA不是真正的归属地址,并且简单地继续进行下一步骤。因此P比特是本发明的可选方面。在步骤316,CN 120向MN 110发送转交地址测试,或者在MIPv6实现方式的情境下发送预先绑定测试(PBT)。
在步骤318,MN 110设置用于会话的第一序列值(SQV)。此时SQV的值可以被设置为任何值,但是其优选被这样选择以便它匹配于标准字段的格式,例如MIPv6中绑定更新(BU)的序列号(SQN)。在步骤320MN 110向CN 120发送诸如BU消息之类的更新,包括P比特、pCoA、VHoA、SQV并且优选地还有MN 110的公钥(K+)。在本发明优选实施例的可替换的方面中,可以通过按照SQV重写pCoA的64个较低有效位(包括接口标识符部分)来修改该pCoA。在这种情况下,有利地是SQV只作为pCoA的一部分来发送。在步骤322,CN 120优选地通过使用K+来验证BU消息的可靠性。在步骤324,CN 120计算共享的秘密密钥(SKbm)。CN 120还按照公式(2)优选地根据SKbm和所接收的SQV来计算期望序列值(eSQV):
eSQV=SHA((SQV)+First(128,SHA(SKbm)))(2)
此处:
‘SQV’是先前的SQV,即在上次更新中接收的SQV;
‘First(大小,输入)’是用于指示对输入数据的截取以便只有第一大小的比特仍被使用的函数。
其它计算eSQV的方法也落入本发明的范围内,这是由于eSQV值不能很容易地根据SQV值来预测。
在步骤326,CN 120为与MN 110的会话创建表条目,所述表条目在MIPv6实现方式的情境下为绑定高速缓存条目(BCE)。表条目存储着eSQV、pCoA、VHOA、K+和SKbm。在步骤328,CN 120向MN 110发送包括SKbm的确认。在MIPv6实现方式的情境下,确认会采取绑定确认(Binding Acknowledge BA)的形式。在步骤330,MN 110对SKbm进行解密和存储。此后如同在步骤332所示,CN 120可以使用pCoA作为路由地址来向MN 110发送数据分组。优选地通过使用SKbm来加密数据分组。
在步骤334,在与CN 120的会话仍然进行时,MN 110改变位置。在步骤336,MN 110使用与CN 120在步骤324所使用的相同方法来计算新的SQV,这优选使用公式(2)。然后在步骤338、340、342和344MN 110依照与最初设置会话时相同的方式来为pCoA设置新值。依照与在第一更新的情况下相同的方式,可以通过利用新的SQV重写pCoA的64个较低有效位来选择性地修改所述pCoA。在这种情况下,SQV也只作为pCoA的一部分来发送。因为在步骤334 MN 110改变了位置,所以新的pCoA必须不同于分配给pCoA的先前值。在步骤346,重新使用与步骤308相同的方法来计算VHoA的新值。
在步骤348,MN 110向CN 120发送新的更新,包括用于pCoA、VHoA和SQV的新值和相同的P比特。优选地是,K+也被包含。
在步骤350,CN 120试图找到这样的表条目,其中eSQV值与新接收的SQV相匹配或相等。如果一个都没有找到,那么就忽略更新消息并且所述过程在步骤352结束。所找到的匹配表明CN 120已经正确地认证了新接收的更新消息,这是因为只有MN 110通过使用秘密信息才能够计算具有相等值的SQV。在步骤354,CN 120计算新值以输入到表条目中。根据新接收的SQV依照与步骤324相同的方式来计算新的eSQV值。在步骤354还按照公式(3)来计算期望转交地址(eCoA):
eCoA(iid)=First(64,SHA((SHA(SKbm)|pCoA Subnet Prefix)))(3)
其中:
‘iid’是eCoA的接口标识符部分;
‘pCoA’是在更新中发送的MN的伪转交地址;并且
‘pCoA Subnet Prefix(子网前缀)’变为eCoA的子网前缀。
eCoA值需要保留可路由的IP地址。公式(3)计算所需的eCoA的接口标识符部分。实际的eCoA值是通过把eCoA(iid)值预先挂到(pre-pend)pCoA子网前缀来获得的。从而,eCoA包括可路由的子网前缀并且只有iid部分被修改过。
仍然在步骤354,按照公式(4)来计算期望虚拟归属地址(eVHoA):
eVHoA=SHA(eCoA)(4)
可以利用其它方法来计算eCoA和eVHoA,只要所获得的值赋予MN 110以合理的匿名性并且只要eCoA保留来自pCoA的子网前缀即可。在优选实施例中,如在公式(4)中所阐明的,用于计算eVHoA的机制与如在公式(1)中用于计算VHoA的机制相同。
在步骤356,CN 120通过利用eSQV的新值重写先前的eSQV、利用eCoA重写先前的pCoA以及利用eVHoA重写先前的VHoA来更新表条目。
在步骤358,CN 120向MN 110发送新的确认。响应于新的确认的接收,在步骤360,MN 110使用与CN 120所使用的那些完全相同的算法来计算eCoA的拷贝和eVHoA的拷贝。
此后如在步骤362所示,CN 120可以使用eCoA作为路由地址来向MN 110发送数据分组。
根据图3a-3d的以上描述,可以看出尽可能多地不向CN或任何恶意的窃听者公开MN 110的真正身份。如果MN 110首次已经从其归属网络建立了会话,那么它的归属地址就仅在第一更新中被公开过,在第一更新中,该归属地址就伪装成为是转交地址。用于表示移动节点的移动和活动的随后更新就不会被恶意的窃听者链接或相关,这是因为本发明使用并不单调增加的序列值。同样,通过从第三方发送更新来劫持会话变得几乎不可能,这是因为第三方无法预测将由CN 120接受的下一序列值。
现在参考图4描述如在先前图中所使用的MN 110的示例性构造,其示出了依照本发明构建的示例性MN 110。所述MN 110可以用硬件、软件或其组合来实现。MN 110包括访问接口410、存储器420、处理器430、通信逻辑模块440、分组处理机450和应用460。
访问接口410用来经由到归属网络的连接以及当其远离归属网络时经由到外部网络的连接来与CN通信。在示例性的MN 110中,访问接口410可以是CDMA2000接口、WLAN接口、宽带码分多址接口、通用分组数据服务接口、WiMAX接口、EV-DO接口等。
存储器420用于存储永久归属地址(HoA)、转交地址(CoA)、伪转交地址(pCoA)、虚拟归属地址(VHoA)、实际上是在CN 120计算的eCoA的拷贝的期望转交地址(eCoA)、实际上是在CN 120计算的eVHoA的拷贝的虚拟归属地址(e VHoA)、解密的共享秘密密钥(SKbm)、公钥(K+)和私钥(K-)以及序列值(SQV)。
处理器430设置保密性比特(P比特)并且优选包括三种不同的散列机制,这三种不同的散列机制用于实现用来计算VHoA、SQV以及eCoA和eVHoA的拷贝的公式(1)、(2)和(3)的算法。
当MN 110在外部网络中时,通信逻辑模块440获取CoA。该通信逻辑模块还控制经由访问接口410对建立消息、PBT、更新和BU的发送,另外它从访问接口410接收地址测试、PBT、确认和BA。
分组处理机450经由访问接口410向CN 120发送有效载荷并且还经由所述访问接口410从CN 120接收进一步的有效载荷。分组处理机450向应用460提供所接收的有效载荷并且从应用460接收要向CN 120发送的有效载荷。应用460包括在移动节点上普遍可见的任何应用并且在本领域中是公知的。
当MN 110设立与CN 120的会话时,通信逻辑模块440首先确定访问接口410是经由归属网络还是外部网络来连接的。如果MN 110在外部网络中,那么通信逻辑模块获取CoA并且把它存储在存储器420中。在任何情况下,通信逻辑模块都把pCoA设置为等于CoA(如果存在的话)或者等于HoA,并且把它存储在存储器420中。然后处理器430优选地使用公式(1)来计算VHoA,并且把它存储在存储器420中。处理器430还设置P比特。通信逻辑模块440经由访问接口410向CN 120发送建立消息。所述建立消息包括P比特、pCoA和VHoA。
当地址测试消息从CN 120经由访问接口410到达时,通信逻辑模块440对所述消息进行解码。它请求处理器430提供SQV。因为在那时没有先前的SQV值存储在存储器420中,所以处理器430把所述SQV设置为符合更新中SQV字段的格式的任何值。通信逻辑模块440从存储器420读取K+并且请求访问接口410向CN 120发送更新,包括P比特、pCoA、VHoA、SQV和K+。
当确认从CN 120经由访问接口410到达时,通信逻辑模块440对所述消息进行解码。处理器430使用从存储器420读取的K-来对SKbm进行解密,并且把结果存储在存储器420中。
现在在MN 110和CN 120之间完全地设置了会话,分组数据在两个节点之间被交换。MN 110经由访问接口410接收并发送分组数据。分组处理机450处理所接收的分组并向应用460提供所接收的数据。分组处理机450中的处理可以进一步包括使用从存储器420读取的SKbm来加密输出分组以及解密输入分组。应用460还向分组处理机450提供数据以用于经由访问接口410向CN 120发送。
如果访问接口410向服务网络报告用于表示MN 110位置变化的连接变化,那么通信逻辑模块440再次估计访问接口410现在是经由归属网络还是新的外部网络来连接的。如果MN 110在新的外部网络中,那么通信逻辑模块获取新的CoA并且把它存储在存储器420中。在任何情况下,通信逻辑模块都把新的pCoA设置为等于新的CoA(如果存在的话)或者等于HoA,并且把它存储在存储器420中。通信逻辑模块440请求处理器430提供SQV。处理器430从存储器420读取SQV值并且使用它作为用于计算新的SQV的基础,优选地使用公式(2)来计算。通信逻辑模块440配置成向CN 120发送新的更新,特别包括新的SQV和新的pCoA。当通信逻辑模块440在第二更新之后检测到已经接收到确认时,它请求处理器430优选地使用公式(3)来计算eCoA的拷贝以及优选地使用公式(4)来计算eVHoA的拷贝。然后处理器430把eCoA和eVHoA的拷贝存储在存储器420中。
现在参考图5描述如在先前图中所使用的CN 130的示例性构造,其示出了依照本发明构建的示例性的CN 120。如在本领域中所公知的,所述CN 120可以用硬件、软件或其组合来实现。CN 120本身可以是移动节点。
CN 120包括输入端口510、输出端口520、表530、表530中的条目540、处理器550、通信逻辑模块560、分组处理机570和应用580。
输入端口510接收诸如建立消息、更新、PBU或BU之类的消息。输出端口520发送诸如地址测试、确认、PBT或BA之类的消息。取决于CN 120所使用的接入技术,输入端口510和输出端口520可以形成一单个实体。
表530对于与MN 110的每个会话都包括一个条目540,所述条目540例如可以是BCE。每个表条目包括期望序列值(eSQV),所述期望序列值(eSQV)也被用作识别整个表530内的一个条目的指针542。每个表条目进一步包括:也可以采用期望转交地址(eCoA)的值的伪转交地址(pCoA)、也可以采用期望虚拟归属地址(e VHoA)的值的虚拟归属地址(VHoA)、用于MN 110的共享密钥(SKbm)和公钥(K+)。
处理器550计算SKbm并且执行消息认证。处理器550优选地还包括三种不同的散列机制,这三种不同的散列机制用于实现用来计算eSQV、eCoA和eVHoA的公式(2)、(3)和(4)的算法。
通信逻辑模块560控制经由输入端口510对建立消息、PBT、更新和BU的接收,它还经由输出端口520发送地址测试、PBT、确认和BA。为了定位条目540之一以便处理在消息中接收的数据,通信逻辑模块560扫描表530并且搜索包括eSQV的一个条目540,所述eSQV与作为消息一部分而接收的SQV相匹配或相等。
分组处理机570经由输出端口520向MN 110发送有效载荷并且经由所述输入端口510从MN 110接收进一步的有效载荷。分组处理机570向应用580提供所接收的有效载荷并且从应用580接收要向MN 110发送的有效载荷。应用580包括在通信节点上普遍可见的任何应用并且在本领域中是公知的。
当经由输入端口510接收建立消息时,通信逻辑模块560检测P比特的存在。由于该指示器的存在,所以通信逻辑模块560选择不测试建立消息的归属地址字段,其包括VHoA。通信逻辑模块560命令输出端口520以由建立消息的pCoA字段所表明的地址向MN 110发送诸如PBT之类的地址测试。
当经由输入端口510接收到更新时,通信逻辑模块560再次检测P比特的存在。该P比特表明正被设立的会话请求匿名。它进一步表明更新消息的归属地址字段包含不可路由的VHoA。它还表明已经利用这样的SQV来替换序列号字段,所述SQV需要被用作识别会话的表条目的指针542。通信逻辑模块560命令处理器550使用在更新中接收的K+来认证所述更新。通信逻辑模块560进一步命令处理器550计算SKbm。然后通信逻辑模块560命令处理器550优选使用公式(2)根据在更新中所接收的SQV值来计算eSQV。然后通信逻辑模块在表530中创建条目540,所述条目540包括eSQV、SKbm、K+并且进一步包括作为更新一部分而接收的VHoA值和pCoA值。然后通信逻辑模块560命令输出端口520以由现在存储于表条目540中的pCoA所表明的地址向MN 110发送诸如BA之类的确认。所述确认进一步包括SKbm。
现在在MN 110和CN 120之间完全地设置了会话,分组数据在两个节点之间被交换。CN 120经由输入端口510接收分组数据并且经由输出端口520发送分组数据。通过使用在表条目540中所存储的pCoA值来向MN 110发送分组。分组处理机570处理所接收的分组并向应用580提供所接收的数据。分组处理机570中的处理可以进一步包括使用从表条目540读取的SKbm来加密输出分组以及解密输入分组。应用580还向分组处理机570提供数据以用于经由输出端口520向MN 110发送。
作为CN 110位置变化的结果,可以经由输入端口510接收进一步的更新。通信逻辑模块560再次检测P比特的存在。通信逻辑模块560从所述更新读取新的SQV值并且扫描表530以便找到这样的条目540,所述条目540的指针542等于新接收SQV。如果没有找到任何条目,那么这就可以表明新的会话正由另一移动节点设立。然而如果该进一步的更新是恶意节点尝试劫持会话的结果,那么该进一步更新就无法认证并且该消息被忽略。
当找到这样的表条目540时(所述表条目540的指针由先前存储的eSQV组成并且与新接收的SQV相匹配)时,通信逻辑模块命令处理器550根据先前的eSQV值来计算新的eSQV值。新的eSQV被存储在表条目540中。然后,通信逻辑模块560请求处理器550计算eCoA和eVHoA,优选使用公式(3)和(4)来计算。通信逻辑模块560在表条目540中利用新的eCoA来重写早先的pCoA并且利用新的eVHoA来重写早先的VHoA。然后通信逻辑模块560命令输出端口520以由现在存储于表条目540中的eCoA所表明的地址向MN 110发送确认。
MN 110和CN 120之间的会话继续进行,现在通过使用在表条目540中所存储的eCoA值来向MN 110发送分组数据。
尽管本发明的方法、移动节点和通信节点的优选实施例的若干方面已经在附图中示出并且在上述具体实施方式中描述,然而应当理解本发明不局限于所公开的实施例,而是能够在不脱离由以下权利要求所阐明并限定的本发明精神的情况下进行许多重新配置、修改和替换。
Claims (19)
1.一种用于在与通信节点的会话中向移动节点提供不可链接性的方法,所述方法包括步骤:
从所述移动节点向所述通信节点发送第一更新,所述第一更新包括第一序列值;
在所述通信节点处使用第一散列机制至少部分地根据所述第一序列值来计算期望序列值;
在所述通信节点处为所述会话创建表条目,所述表条目用于存储所述期望序列值;
在所述移动节点处使用所述第一散列机制至少部分地根据所述第一序列值来计算第二序列值;
从所述移动节点向所述通信节点发送包括所述第二序列值的第二更新;以及
在所述通信节点处通过在所述表中查找所述期望序列值和所述第二序列值之间的匹配来识别所述表条目。
2.根据权利要求1所述的方法,还包括步骤:
响应于所述第一更新,在所述通信节点处计算用于所述移动节点的共享秘密密钥;
把所述共享秘密密钥存储在所述表条目中;
从所述通信节点向所述移动节点发送确认,所述确认包括所述共享秘密密钥;以及
在发送所述第二更新之前在所述移动节点处存储所述共享秘密密钥。
3.根据权利要求2所述的方法,其中:
所述第一更新进一步包括第一伪转交地址,如果所述移动节点在所述移动节点的归属网络中,那么所述第一伪转交地址等于归属地址,如果所述移动节点在外部网络中,那么所述第一伪转交地址等于转交地址;
所述表条目进一步存储所述第一伪转交地址;
所述第二更新进一步包括第二伪转交地址,如果所述移动节点在所述移动节点的归属网络中,那么所述第二伪转交地址等于所述归属地址,如果所述移动节点在新的外部网络中,那么所述第二伪转交地址等于新的转交地址;
所述第二更新是响应于所述移动节点的位置的变化而被发送的;并且
所述表条目利用所述第二伪转交地址来重写所述第一伪转交地址。
4.根据权利要求3所述的方法,其中:
所述第一序列值被包括在所述第一伪转交地址中;并且
所述第二序列值被包括在所述第二伪转交地址中。
5.根据权利要求3所述的方法,还包括提供匿名性的步骤,所述提供匿名性的步骤包括:
所述移动节点至少部分地根据所述第一伪转交地址来计算虚拟归属地址;
所述第一更新进一步包括所述虚拟归属地址和保密性指示;
在所述通信节点处计算所述期望序列值的所述步骤是对所述第一更新中的所述保密性指示的响应;
所述通信节点把所述虚拟归属地址存储在所述表条目中;并且
所述通信节点使用所述第一伪转交地址和所述虚拟归属地址来向所述移动节点发送分组,直到所述通信节点接收所述第二更新为止。
6.根据权利要求5所述的方法,进一步包括步骤:
响应于包括所述保密性指示的所述第二更新,在所述通信节点处至少部分地根据所述第二序列值来计算进一步的期望序列值;
在所述通信节点处至少部分地根据所述第二伪转交地址来计算期望转交地址;
在所述通信节点处至少部分地根据所述期望转交地址来计算期望虚拟归属地址;
通过存储所述进一步的期望序列值、所述期望转交地址和所述期望虚拟归属地址来更新所述表条目;
从所述通信节点向所述移动节点发送进一步确认;
在所述移动节点处至少部分地根据所述第二伪转交地址来计算所述期望转交地址的拷贝;
在所述移动节点处至少部分地根据所述期望转交地址的所述拷贝来计算所述期望虚拟归属地址的拷贝;以及
在所述通信节点处使用所述期望转交地址和所述期望虚拟归属地址来向所述移动节点发送分组。
7.根据权利要求6所述的方法,其中:
在所述通信节点处计算所述期望序列值的所述步骤进一步包括至少部分地根据所述共享秘密密钥来进行计算;
在所述移动节点处计算所述第二序列值的所述步骤进一步包括至少部分地根据所述共享秘密密钥来进行计算;
在所述通信节点处计算所述进一步的期望序列值的所述步骤进一步包括至少部分地根据所述共享密钥并且使用所述第一散列机制来进行计算;
在所述通信节点处计算所述期望转交地址的所述步骤进一步包括至少部分地根据所述共享秘密密钥并且使用第二散列机制来进行计算;
在所述移动节点处计算所述期望转交地址的所述拷贝的所述步骤进一步包括至少部分地根据所述共享秘密密钥并且使用所述第二散列机制来进行计算;
在所述移动节点处计算所述虚拟归属地址的所述步骤使用第三散列机制;
在所述通信节点处计算所述期望虚拟归属地址的所述步骤使用所述第三散列机制;并且
在所述移动节点处计算所述期望虚拟归属地址的所述拷贝的所述步骤使用所述第三散列机制。
8.根据权利要求1所述的方法,其中:
如果所述第二序列值与任何表条目中的任何期望序列值都不相匹配,那么所述通信节点就忽略所述第二更新。
9.根据权利要求1所述的方法,其中:
所述第一更新进一步包括所述移动节点的公钥;并且
所述通信节点根据所述公钥来认证所述第一更新。
10.一种移动节点,包括:
用于存储第一序列值和第二序列值的存储器;
处理器,用于计算所述第一序列值,用于把所述第一序列值存储在所述存储器中,用于从所述存储器读取所述第一序列值,用于通过使用第一散列机制至少部分地根据所述第一序列值来计算所述第二序列值,并且用于把所述第二序列值存储在所述存储器中;
访问接口,用于向通信节点发送包括所述第一序列值的第一更新和包括所述第二序列值的第二更新;和
通信逻辑模块,用于控制与所述通信节点的会话,所述通信逻辑模块请求所述处理器来计算所述第一、所述第二序列值并且请求所述访问接口发送所述第一、所述第二更新。
11.根据权利要求10所述的移动节点,其中:
所述访问接口用于接收来自所述通信节点的确认,所述确认包括共享秘密密钥;
所述处理器用于解密所述共享秘密密钥;并且
所述存储器用于存储被解密的共享秘密密钥。
12.根据权利要求11所述的移动节点,其中:
所述第一散列机制进一步至少部分地根据所述共享秘密密钥来计算所述第二序列值;
所述处理器进一步使用第二散列机制,所述第二散列机制用于至少部分地根据伪转交地址来计算虚拟归属地址,如果所述会话由外部网络来服务,那么所述伪转交地址等于转交地址,而如果所述会话由归属网络来服务,那么所述伪转交地址等于所述移动节点的归属地址;
所述处理器进一步使用第三散列机制,所述第三散列机制用于至少部分地根据所述伪转交地址以及至少部分地根据所述共享秘密密钥来计算期望转交地址;并且
所述第二散列机制进一步用于至少部分地根据所述期望转交地址来计算期望虚拟归属地址。
13.根据权利要求10所述的移动节点,其中:
所述通信逻辑模块用于控制在设立所述会话时对所述第一更新的发送;
所述通信逻辑模块用于检测所述移动节点的位置变化;并且
所述通信逻辑模块用于响应于所述位置变化而控制对所述第二更新的发送。
14.根据权利要求13所述的移动节点,其中:
所述通信逻辑模块用于确定所述会话是所述访问接口与归属网络或者与外部网络的连接而设立的;
所述通信逻辑模块用于在所述会话由所述外部网络服务的情况下获取转交地址;
所述通信逻辑模块用于设立伪转交地址,如果所述会话是由所述外部网络来服务的,那么所述伪转交地址等于所述转交地址,而如果所述会话是由所述归属网络来服务的,那么所述伪转交地址等于所述移动节点的归属地址;并且
所述第一更新包括所述伪转交地址。
15.根据权利要求14所述的移动节点,其中:
所述通信逻辑模块用于响应于所述位置变化而设立新的伪转交地址;
如果现在所述移动节点响应于所述位置变化而由新的外部网络来服务,那么所述新的伪转交地址等于新的转交地址,而如果所述会话现在响应于所述位置变化而由所述归属网络来服务,那么所述伪转交地址等于所述移动节点的所述归属地址;并且
所述第二更新包括所述新的伪转交地址。
16.一种通信节点,包括:
输入端口,用于接收包括第一地址和第一序列值的第一更新,所述第一更新用于与移动节点的会话,并且用于接收用于所述会话的第二更新,所述第二更新包括第二地址和第二序列值;
处理器,用于使用第一散列机制至少部分地根据所述第一序列值来计算期望序列值,并且用于至少部分地根据所述第二序列值来计算新的期望序列值;
表,用于存储用于与所述移动节点的会话的表条目,其中,所述表条目包括所述第一地址和所述表条目的指针,所述指针等于所述期望序列值,用于利用所述新的期望序列值来在所述表条目中重写所述指针,并且用于至少部分地根据所述第二地址而利用期望转交地址来在所述表条目中重写所述第一地址;和
用于控制所述会话的通信逻辑模块,所述通信逻辑模块用于在所述表中查找包括与所述第一序列值相等的所述指针的表条目,用于在所述表中没有找到与所述第一序列值相等的所述指针的情况下创建所述表条目,用于请求所述处理器计算所述期望序列值,用于寻找包括与所述第二序列值相等的所述指针的表条目,以及用于请求所述处理器计算所述新的期望序列值。
17.根据权利要求16所述的通信节点,其中:
所述处理器用于进一步计算用于与所述移动节点的会话的共享秘密密钥;
所述表条目用于进一步存储所述共享秘密密钥;
所述通信节点进一步包括输出端口,所述输出端口用于响应于所述第一、第二更新而向所述移动节点发送确认,所述确认包括所述共享秘密密钥。
18.根据权利要求17所述的通信节点,其中:
所述第一散列机制至少部分地根据所述共享秘密密钥来计算所述期望序列值;
所述处理器进一步使用第二散列机制,所述第二散列机制用于至少部分地根据所述共享秘密密钥来计算所述期望转交地址;
所述处理器进一步使用第三散列机制,所述第三散列机制用于至少部分地根据期望转交地址来计算虚拟归属地址;并且
所述表条目用于进一步存储所述虚拟归属地址。
19.根据权利要求17所述的通信节点,进一步包括:
分组处理机,用于使用所述期望转交地址经由所述输出端口向所述移动节点发送数据分组。
Applications Claiming Priority (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US67378605P | 2005-04-22 | 2005-04-22 | |
US60/673,786 | 2005-04-22 | ||
US68539605P | 2005-05-31 | 2005-05-31 | |
US60/685,396 | 2005-05-31 | ||
US11/396,706 | 2006-04-04 | ||
US11/396,706 US7907948B2 (en) | 2005-04-22 | 2006-04-04 | Providing anonymity to a mobile node in a session with a correspondent node |
PCT/IB2006/051233 WO2006111938A2 (en) | 2005-04-22 | 2006-04-20 | Providing anonymity to a mobile node in a session with a correspondent node |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101208931A CN101208931A (zh) | 2008-06-25 |
CN101208931B true CN101208931B (zh) | 2012-11-14 |
Family
ID=39567900
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2006800228420A Expired - Fee Related CN101208931B (zh) | 2005-04-22 | 2006-04-20 | 给与通信节点会话的移动节点提供匿名性 |
CNA2006800228401A Pending CN101208930A (zh) | 2005-04-22 | 2006-04-20 | 多宿主节点的移动性支持 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2006800228401A Pending CN101208930A (zh) | 2005-04-22 | 2006-04-20 | 多宿主节点的移动性支持 |
Country Status (1)
Country | Link |
---|---|
CN (2) | CN101208931B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2004001520A2 (en) * | 2002-06-20 | 2003-12-31 | Nokia Corporation | QoS SIGNALING FOR MOBILE IP |
US20040157619A1 (en) * | 2003-02-10 | 2004-08-12 | Corson M. Scott | Methods and apparatus for updating mobile node location information |
US20040236937A1 (en) * | 2003-05-20 | 2004-11-25 | Nokia Corporation | Providing privacy to nodes using mobile IPv6 with route optimization |
-
2006
- 2006-04-20 CN CN2006800228420A patent/CN101208931B/zh not_active Expired - Fee Related
- 2006-04-20 CN CNA2006800228401A patent/CN101208930A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2004001520A2 (en) * | 2002-06-20 | 2003-12-31 | Nokia Corporation | QoS SIGNALING FOR MOBILE IP |
US20040157619A1 (en) * | 2003-02-10 | 2004-08-12 | Corson M. Scott | Methods and apparatus for updating mobile node location information |
US20040236937A1 (en) * | 2003-05-20 | 2004-11-25 | Nokia Corporation | Providing privacy to nodes using mobile IPv6 with route optimization |
Also Published As
Publication number | Publication date |
---|---|
CN101208930A (zh) | 2008-06-25 |
CN101208931A (zh) | 2008-06-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8175037B2 (en) | Method for updating a routing entry | |
EP1978698B1 (en) | A COMMUNICATION METHOD FOR MIPv6 MOBILE NODES | |
JP4917596B2 (ja) | 対応ノードとセッション中にある移動ノードへの匿名性の提供 | |
US7793098B2 (en) | Providing privacy to nodes using mobile IPv6 with route optimization | |
US20060251044A1 (en) | Mobility support for multihome nodes | |
JP5102372B2 (ja) | 通信ネットワークにおいて使用する方法および装置 | |
US8724553B2 (en) | Route optimization with location privacy support | |
KR20050122221A (ko) | 사설 네트워크와 로밍 모바일 단말 사이의 통신 | |
US20090213797A1 (en) | Method for binding update in mobile ipv6 and mobile ipv6 communication system | |
US8705439B2 (en) | Delegation based mobility management | |
US9179318B2 (en) | Delegation based mobility management | |
CN101208931B (zh) | 给与通信节点会话的移动节点提供匿名性 | |
Calderon et al. | Securing route optimisation in NEMO | |
CN102484659A (zh) | 用于生成移动ip网络中密码生成地址的方法和网络节点 | |
Oryema et al. | Secure mobility management using CoAP in the Internet of Things | |
Brian et al. | Security scheme for mobility management in the internet of things | |
Deng et al. | Protecting location information of mobile nodes in mobile ipv6 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20121114 Termination date: 20170420 |