[发明专利]分层洋葱环路由方法无效
申请号: | 200910023640.3 | 申请日: | 2009-08-19 |
公开(公告)号: | CN101635918A | 公开(公告)日: | 2010-01-27 |
发明(设计)人: | 庞辽军;李茹;裴庆祺;焦李成;李慧贤;刘思伯;赵晓辉 | 申请(专利权)人: | 西安电子科技大学 |
主分类号: | H04W12/00 | 分类号: | H04W12/00;H04W88/16 |
代理公司: | 陕西电子工业专利中心 | 代理人: | 张问芬 |
地址: | 71007*** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 分层 洋葱 环路 方法 | ||
1.一种分层洋葱环路由方法,其特征在于:将无线Mesh网络中的节点分为三类:网 关G,可信任节点OP和普通节点Fi,OP节点和网关G是诱导节点,OP节点在环的初始化 过程中起选择路由的作用,所有OP节点和网关G的集合构成匿名集;把网络的洋葱路由 分为两层环路,第一层路由:由匿名集的不相邻可信节点OP和网关G组成的环形路径;第 二层路由:在可信节点OP之间由普通节点Fi填充构成的环路,也称为下一层路由;第二层 路由在初始化过程中由OP节点和网关随机选择,通过洋葱环路由的分层环路实现Mesh网 络匿名安全通信;
所述的分层洋葱环路由方法,其特征在于:采用分层洋葱环路由进行匿名通信首先进行 环的初始化,所述环的初始化过程包括如下步骤:
第1步:封装过程
首先:OP节点选择第一层路由,也就是有标号的匿名集,按照匿名集中节点的顺序 封装洋葱包,并在其后附加一个dummy包,封装的洋葱包格式如下:
{build},Ekpop1[(RI,kop1,OP2),Ekpop2[(RI,kop2,G),Ekpg(RI,t)]],dummy;
{build}:包头,表示建环信息,告诉节点要进行环的初始化;
Ekp:公钥加密,用于封装洋葱包;OP1节点用自己的公钥Ekpop1加密最外层包,即 环号RI、自己的会话密钥kop1、下一条地址OP2,以及匿名集中第二个节点封装的第二 层洋葱包,这样当OP2节点收到这个洋葱包时,就可以确定下一跳发往地址,以此类推;
RI:环号,由匿名集号和建环时间构成;
ki:普通节点Fi与网关的会话密钥;
t:表示时间戳,用来检测消息的实时性;
dummy:诱导信息;
然后:OP节点再选择到匿名集中第二个元素的第二层路由,按照第二层路由的顺序
封装洋葱包,并且分配此次通信过程中环中上行链路的一次性会话密钥kop1,k1,k2,…,kop2;
将分配好的一次性会话密钥告诉网关,让网关知道上行链路路径,而下行链路的一次性 密钥由网关分配;
从匿名集中第一个节点发送到第二个节点的包格式如下:
{build},Ekp1[(RI,k1,F2),Ekp2[(RI,k2,F3),…,Ekpop2((RI,k2,G),
Ekpg(RI,kop1,k1,k2,…,kop2,t))…]],dummy
Fi:网络中的普通节点,
将包的简化格式如下:
{build},Ekpop1(Ekp1(Ekp2,…,(Ekpop2(Ekpg(m1)))…)),dummy,其中
m1={RI,t,kop1,k1,k2,…,kop2};
环中的所有OP节点都是如此进行封装洋葱包的;
当匿名集中的第二个节点OP2接收到初始化信息时,它同理第一个元素的进行路径
选择和封装洋葱包,但是直接转发dummy包如下:
{build},Ekpn(Ekp(n+1)(…(Ekpop3(Ekpg(m2),Ekpg(m1)))…)),
其中m2={kop2,kn,kn+1…,t},公钥解密;
第2步:信息转发过程
在信息转发过程中,路由环中没有数据发送的普通Fi节点只解密收到的洋葱包和 dummy包,然后把解密后的消息发给下一个节点如下:
{build},Ekp2(…(Ekpop2(Ekpg(m1)))…),
第3步:会话接入请求过程
当普通节点Fi想进行通信时,用接入请求信息替代层层解密的dummy包如下:
{build},Ekp(i+1)(Ekp(i+2)(…Ekpg(m)…)),
第4步:网关处理过程
当网关收到从OP1节点发过来的包,就确定了会话发起者,如果网关同意这个请求, 它根据环号和匿名集来确定另一半环路径也就是从网关到会话发起者的下行链路,网关封装 一个洋葱包发送给会话发起者,这个洋葱包包含从会话发起者到距其最近的OP节点或网关 的上行链路的所有会话密钥,这样同意请求信息就从网关到达会话发起者进行通信,包格式 如下:
{build},Ekpm(…Ekpop(…(Ekpg(ki,…,kop,grant))…)…);
所述的分层洋葱环路由方法,其特征在于:采用分层洋葱环路由进行环间通信包括会 话发起者到网关的通信过程和网关到节点Fi通信过程,OP节点或网关用会话密钥加密洋葱 包,每次建立环时,都要重新分配会话密钥,节点Fi用会话密钥封装一个到距其最近的OP 节点或网关洋葱包,与其进行会话;当距其最近的OP节点收到包,同理选择第二层路由与 匿名集中下一个元素进行通信,除了网关和会话发起者,环中的每个节点都只进行转发解密 后的洋葱包,会话发起者到网关的通信过程如下:
Fi→Fi+1:{RI},Ek(i+1)(Ek(i+2)(…(Ekop(Ekg(Esi(data,ack))))…));
Fi+1→Fi+2:{RI},Ek(i+2)(…(Ekop(Ekg(Esi(data,ack))))…);
……:……
FOP-1→OP:{RI},Ekop(Ekg(Esi(data,ack)));
OP→FoP+1:{RI},Ek(op+1)(Ek(op+2)(…(Ekg(Esi(data,ack)))…));
FOP+1→FOP+2:{RI},Ek(op+2)(…(Ekg(Esi(data,ack)))…);
……:……
FG-1→G:{RI},Ekg(Esi(data,ack));
其中,{RI}是包头,它表示环已经建立,开始进行通信,Esi表示用节点Fi的私钥加密, data是发送信息内容,ack表示正确收到包后发送的消息认证码,用来证明通信双方确实收 到了包;
当网关收到这个载体包后,用自己的私钥和节点Fi的公钥解密这个包,来确定这个包是 发给自己的和这个包是节点Fi发送过来的,并计算ack值,如果双方ack的值不相同,证明 它们没有正确收到包;反之,如果双方ack的值相同,网关就可以与会话发起者进行通信, 这时网关根据环号和匿名集封装一个到节点Fi的包{RI},Ekg(Ekop1(Eki(Esg(data))));网关到节 点Fi通信过程如下:
G→Fm:{RI},Ekm(Ek(m+1)(…(Eop1(Eki(Esg(data))))…));
Fm→Fm+1:{RI},Ek(m+1)(…(Eop1(Eki(Esg(data))))…);
……:……
FOP1-1→OP1:{RI},Ekop1(Ekg(Esi(data,ack)));
OP1→F1:{RI},Ek1(Ek2(…(Eki(Esg(data)))…));
F1→F2:{RI},Ek2(…(Eki(Esg(data)))…);
……:……
Fi-1→Fi:{RI},Eki(Esg(data))。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安电子科技大学,未经西安电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200910023640.3/1.html,转载请声明来源钻瓜专利网。