[发明专利]在线社会网络中Sybil攻击检测方法有效

专利信息
申请号: 201410037921.5 申请日: 2014-01-26
公开(公告)号: CN103812864A 公开(公告)日: 2014-05-21
发明(设计)人: 朱培栋;陈侃;郑倩冰;陈亮;曹华阳;胡罡;任浩;曹介南;蔡开裕;邵成成 申请(专利权)人: 中国人民解放军国防科学技术大学
主分类号: H04L29/06 分类号: H04L29/06;H04L12/26
代理公司: 国防科技大学专利服务中心 43202 代理人: 郭敏
地址: 410073 湖*** 国省代码: 湖南;43
权利要求书: 查看更多 说明书: 查看更多
摘要: 发明公开了一种在线社会网络中Sybil攻击检测方法,目的是提供一种在社会网络中Sybil攻击检测方法。技术方案是选取某一节点为验证节点,以成员关系为依据进行路径通告,构建到达验证节点的关系路径;通告过程中采用基于路径k相似的路径选择方法剔除冗余路径和共享路径;通告结束后将所有可达路径聚集到验证节点进行可信性检验,以防止私造或篡改路径;最终以每个节点可信路径的数量作为验证标准,由验证节点对其它节点是否为Sybil节点进行验证。本发明利用每个节点的可达路径数量判断该节点是否为Sybil节点,真实还原并利用了节点关系的差异性,准确性高、误报率低,且无需依靠关键基础设施或其它辅助设备的支持,具有轻量级、易部署的优势。
搜索关键词: 在线 社会 网络 sybil 攻击 检测 方法
【主权项】:
1.一种在线社会网络中Sybil攻击检测方法,其特征在于包括以下步骤:第一步,选取某一节点为验证节点,标记为v,任意节点都可以作为验证节点,除验证节点之外的所有节点都为待验证节点,各节点进行初始化操作,方法是:1.1所有节点定义自己的加解密算法;1.2验证节点创建关系表,并定义任意的字符串T0作为初始化的标识;所有待验证节点创建关系表和路径表;其中关系表存储已经与自己建立起可信关系的其他节点,表中每一项都是一个节点标识;路径表用来存储到达验证节点的可达路径,表中每一项是一个二元组,表示为<Pi,Sign(Pi)>,1≤i≤M,其中M为网络中总路径数,Pi表示第i条路径,Sgin(Pi)表示Pi的标识,每一条路径都是一个有序的节点序列,每一个标识是一个加密后的字符串,关系表由各节点根据历史经验自己定义,路径表初始为空;第二步,由验证节点v对其它节点进行可达路径通告,方法是:2.1v发送通告信息M0给v的关系表中所有成员,M0的内容包括到达v的可达路径、可达路径的标识、可接受的最大差异系数K以及可接受的最大路径长度L,以v的加密算法对T0加密作为路径{v}的标识;可接受的最大差异系数K和可接受的最长路径长度L都由验证节点自己确定。2.2接收到了通告信息M0的节点uj首先对M0中路径的有效性进行检查,设M0中路径为P,标识为Sign(P),如果P相对于uj是有效的,执行步骤2.3,否则转步骤2.5;2.3uj将P添加到自己的路径表中,并删除路径表中与P的差异系数大于K且比P长的其它路径;2.4uj构造新的路径和标识:uj将自己添加到P的尾部构成新的路径P′,若P={u1,u2...ul},则P′={u1,u2...ul,uj},1≤l≤N,N为网络中节点个数,并使用uj自己的加密算法Cryptuj()对Sign(P)加密,构成新的路径标识,即Sogn(P′)=Cryptuj(Sign(P));2.5uj发送新的通告信息M1:使用原通告信息M0中K和L的值,与新的路径P′和标识Sign(P′)一起构成新的通告信息M1并发送给uj关系列表中的成员,并发送通告提醒给v,转步骤2.6;通告提醒的内容为uj的节点标识uj;2.6如果uj接收到新的通告信息M1,将M0的内容更新为M1,转步骤2.2,否则转步骤2.7;2.7验证节点v根据网络规模定义提醒时间间隔,并初始化提醒计时器并开始计时;设置提醒时间间隔τ,如果在τ时间内接收到了通告提醒,则重置计时器为零并转步骤2.2;如果计时器超出提醒时间间隔且没有接收到任何通告提醒,则执行第三步;第三步,所有待验证节点发送包含可达路径的验证请求给验证节点v,使所有的可达路径聚集到验证节点v处,然后由验证节点v检查所有可达路径是否可信,方法是:3.1所有待验证节点采用步骤2.4的方法构造新的路径和标识,并将新的路径和标识发送给验证节点v;3.2接收到来自所有待验证节点的验证请求后,验证节点v对所有路径按照长度排序,并依次进行路径可信性验证,方法为:3.2.1验证节点v将接收到的所有路径按照长度排序,加入待验证表unverified_table中,unverified_table的数据结构与路径表相同,每一项都由路径和标识组成,区别是unverified_table是按照路径长度排序的;3.2.2从unverified_table中取出最短路径Ps及其对应的标识Sign(Ps),设Ps={u1,u2...ut},2≤t≤N,首先验证Ps是否可信,方法为:3.2.2.1如果u1为验证节点v,转步骤3.2.2.2,否则转步骤3.2.2.8;3.2.2.2如果Ps的长度等于2,转步骤3.2.2.3;否则转步骤3.2.2.4;3.2.2.3如果u2存在于v的关系表中,由u2利用自己的解密算法()对Sign(Ps)解密,并令结果Res(Ps)=Decryptu2(Sign(Ps)),]]>如果结果Res(Ps)等于初始字符串T0,则验证成功,转3.2.2.7;否则验证失败转步骤3.2.2.8;如果ut不存在于v的关系表中,说明有人假冒路径,验证失败,转步骤3.2.2.8;3.2.2.4检查Ps-1={u1,u2,...,ut-1}是否存在于verified_table中,如果不存在,验证失败转步骤3.2.2.8;否则进入步骤3.2.2.5;3.2.2.5将Ps-1和Sign(Ps)发送给Ps的最末端节点ut;3.2.2.6ut首先检查Ps-1={u1,u2...ut-1}是否在ut的路径表中,然后使用ut的解密算法对Sign(Ps)进行解密,方法为Ren(Ps)=(Sign(Ps)),并将结果与Ps-1的标识Sign(Ps-1)对比,如果Res(Ps)=Sign(Ps-1)则说明该路径未被篡改过,返回正反馈消息给v,转步骤3.2.2.7;否则说明路径被篡改,给出负反馈,转步骤3.2.2.8。3.2.2.7验证成功,转3.3;3.2.2.8验证失败,转3.4;3.3将Ps从unverified_table移动到verified_table中,转步骤3.5;3.4将Ps从unverified_table中删除,转步骤3.5;3.5如果unverified_table非空,转步骤3.2.2,否则转第四步;第四步,由验证节点根据每个节点的可信路径数量判断该节点是否为Sybil节点:4.1验证节点v将所有提交验证请求的节点加入待验证集合unverified_set,初始化Sybil集合sybil_set为空集,并设定判断阀值α,α根据需求自由调整;4.2从unverified_set取出一个节点u,计算可信路径集trusted_table(u)=path_table(u)∩verified_table,其中path_table(u)为u提交的路径表,如果trusted_table(u)中元素个数大于α则转步骤4.3,否则转步骤4.4;4.3验证成功即u不是Sybil节点,将u从unverified_set删除,转4.5;4.4验证失败即u是Sybil节点,将u从unverified_set删除并加入sybil_set中,转4.5;4.5如果unverified_set非空,转4.2,否则转4.6;4.6结束,集合sybil_set中的节点都为Sybil节点。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国人民解放军国防科学技术大学,未经中国人民解放军国防科学技术大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/patent/201410037921.5/,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top