[发明专利]一种基于网络编码的WMN匿名通信方法有效
| 申请号: | 201710790796.9 | 申请日: | 2017-09-05 | 
| 公开(公告)号: | CN107426248B | 公开(公告)日: | 2020-05-26 | 
| 发明(设计)人: | 高天寒;于爽 | 申请(专利权)人: | 东北大学 | 
| 主分类号: | H04L29/06 | 分类号: | H04L29/06;H04L9/08 | 
| 代理公司: | 沈阳东大知识产权代理有限公司 21109 | 代理人: | 胡晓男 | 
| 地址: | 110169 辽*** | 国省代码: | 辽宁;21 | 
| 权利要求书: | 查看更多 | 说明书: | 查看更多 | 
| 摘要: | |||
| 搜索关键词: | 一种 基于 网络 编码 wmn 匿名 通信 方法 | ||
1.一种基于网络编码的WMN匿名通信方法,其特征在于,包括:
步骤1:系统初始化,具体包括:网络中的每个节点i预先产生公私钥对并共享其公钥;网络中的每个节点i与其所有邻居节点间共享一个对称密钥作为自己的广播密钥,用于在转发过程中对数据包的会话流标识信息进行点对点加密;
步骤2:初始路由建立:信源节点计算转发节点列表,并将会话流标识通过初始路由建立包IRSP匿名发送给网络中的各个节点;
步骤2.1:信源节点根据节点与信宿节点之间的最短路径成功传输一个数据包所需要的平均传输次数ETX来选择转发节点:
寻找信源节点S到信宿节点D的最短路径;
计算信源节点S到信宿节点D的最短路径成功传输一个数据包所需要的平均传输次数ETX(S-D);
对于信源节点S到信宿节点D之间的每个节点i,寻找节点i到信宿节点D的最短路径i-D;
计算节点i到信宿节点D的最短路径i-D成功传输一个数据包所需要的平均传输次数ETX(i-D);
如果ETX(i-D)ETX(S-D),将节点i加入转发节点列表Forward_list();
输出转发节点列表Forward_list();
步骤2.2:根据转发节点构建初始路由建立包IRSP;所述初始路由建立包IRSP由多个数据段组成,每一个数据段的结构是相同的,每个数据段采用信源节点S为对应节点i生成的临时对称加密密钥Keyi进行加密,临时对称加密密钥Keyi和对应节点i标识携带在每个数据段的头部,并采用节点i的公钥进行加密;
步骤2.3:信源节点将初始路由建立包IRSP以网络泛洪的方式广播至各个节点,并通过设置合适的TTL值以防止广播风暴;
步骤3:网络中的节点i收到初始路由建立包IRSP后,判定自己是转发节点、信宿节点还是非转发节点;若是转发节点,存储会话流标识到存储列表并转发初始路由建立包IRSP;若是信宿节点,存储会话流标识和信源节点与信宿节点间的用于置换加解密的共享密钥P_key,并转发初始路由建立包IRSP;若是非转发节点,直接转发初始路由建立包IRSP;
步骤3.1:网络中的节点i用自己的私钥对初始路由建立包IRSP中的每个数据段头部进行解密:如果能够成功解密得到临时对称加密密钥Keyi,则说明该节点在转发节点列表中,执行步骤3.2;否则当前节点不在转发节点列表中,当前节点i为非转发节点,直接转发初始路由建立包IRSP;
步骤3.2:采用临时对称加密密钥Keyi解密数据段的后续部分,查看标志位:若标志位为R则说明当前节点是转发节点,存储会话流标识到存储列表并转发该初始路由建立包IRSP;若标志位为D则说明当前节点是信宿节点,存储会话流标识和信源节点与信宿节点间的用于置换加解密的共享密钥P_key,并转发该初始路由建立包IRSP;
步骤4:信源编码:信源节点采用线性随机网络编码对消息M进行编码得到编码包,并采用置换加密保护编码包和全局编码向量GEV;
步骤4.1:信源节点将原始的消息M分为h个数据片;
步骤4.2:信源节点给每个数据片头部追加全局编码向量GEV;
步骤4.3:信源节点采用置换加密PE对整个数据片进行加密,PE所使用的密钥为信源节点与信宿节点间的用于置换加解密的共享密钥P_key;
步骤4.4:随机选择编码系数,对数据片进行线性编码,生成h个编码包;
步骤4.5:对整个编码包进行置换加密;
步骤5:信源节点将编码包头部附上会话流标识,并采用自己的广播密钥对该会话流标识进行加密,持续广播这些编码包,直到收到消息确认包MAP为止;
步骤6:转发节点转发;
步骤6.1:网络中节点i在收到一个邻居节点i-1广播的编码包后,采用该邻居节点的广播密钥BKi-1解密得到该编码包的会话流标识;
步骤6.2:若节点i的存储列表中有该会话流标识,则说明该节点为转发节点,则随机选择编码系数将该编码包与之前收到的来自于同一会话流的编码包编码在一起形成新的编码包,否则直接丢弃;
步骤6.3:由于置换加密对转发节点的透明性,转发节点在重编码前无需对收到的编码包进行解密操作,而是直接选择编码系数得到新的编码包;
步骤6.4:在转发节点i进行转发前,首先采用自己的广播密钥对消息的会话流标识进行加密,然后广播该编码包;
步骤7:信宿节点解码;
步骤7.1:信宿节点收到编码包后,采用信源节点与信宿节点间的用于置换加解密的共享密钥P_key对编码包进行解密,得到编码包内容和GEV;
步骤7.2:在收到h个线性独立的编码包后,将这h个编码包的GEV组成一个h×h的矩阵G;
步骤7.3:求得G的逆矩阵G-1,再根据M=G-1·G·M解码得到原消息M;
步骤8:匿名消息确认:信宿节点在接收到数据包后返回消息确认包MAP进行消息确认;
步骤8.1:信宿节点构建与初始路由建立包IRSP结构相同的消息确认包MAP;
步骤8.2:信宿节点将该消息确认包MAP以网络泛洪的方法发送出去,并通过设置适当的TTL值防止广播风暴的产生;
步骤8.3:网络中节点根据收到的消息确认包MAP判断自己是否为转发节点:是,则将与旧的会话流标识S_old相关的数据包清空,存储新的会话流标识S_new,新的会话流标识S_new为空时会话结束;否则直接转发;
步骤8.3.1:当网络中节点收到此消息确认包MAP时用自己的私钥对该消息确认包MAP中的每个数据段头部进行解密:若能够成功解密得到临时对称加密密钥Keyi,则该节点在转发节点列表中,执行步骤8.3.2;若无法成功解密,则说明该节点不在转发列表中,直接转发;
步骤8.3.2:采用临时对称加密密钥Keyi解密该数据段的后续部分得到相关信息,将与旧的会话流标识S_old相关的数据包清空,存储新的会话流标识S_new,若新的会话流标识S_new为空,则表示会话结束;
步骤8.4:当信源节点收到此消息确认包MAP时,表示之前发出的消息已经被信宿节点成功收到,则不再继续广播编码包,并存储新的共享密钥和新的会话流标识S_new;
步骤9:若信源节点还有新的消息要发送,则使用信源节点与信宿节点间的用于置换加解密的共享密钥P_key和新的会话流标识S_new从步骤4开始继续通信。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于东北大学,未经东北大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710790796.9/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种基于UDP的气动及液压动感影院设备控制方法
 - 下一篇:一种电子化访客机
 





