本发明属于网络安全技术领域,特别是一种隐私保护的移动社会网络路由方法。
背景技术:
随着移动手机等智能设备的大量普及,目前的社会网络进入了一个新的领域—移动社会网络(mobilesocialnetworks,msns)。msns是由多个具有相似兴趣或共同点的用户通过移动电话或平板电脑等移动终端互连的社会网络。msns结合了社会网络和移动通信网络,兼有社会网络的社会性和移动通信网络的移动性,它创造了一种新的社交方式,使虚拟社交和现实社交更为接近,为虚拟世界和现实世界构筑了一座交互的桥梁。不同于传统网络通信模式,msns移动节点相遇时通过wifi、蓝牙等高速、短距离、低成本无线通信技术,以“存储-携带-转发”的路由模式逐跳传输消息,使移动用户有效共享和传递新闻、图片、音乐、视频等数据信息。
msns中一种常用的路由协议是基于效用值的路由协议,该协议中,节点间相遇时通过相遇信息计算路由效用值,然后根据效用值大小进行消息转发。但路由中如果采用真实标识通信会泄露相遇次数、时间、位置、轨迹等隐私信息。为保护节点的路由效用值隐私,miaojw等提出一种隐私保护和基于预测的概率路由协议4pr,其比较整个节点社区的聚合信息而不是单个节点信息来转发消息,从而保护每个节点的效用值隐私(参见文献:miaojw,hasano,mokhtarsb,etal.4pr:privacypreservingroutinginmobiledelaytolerantnetworks.computernetworks,2016(111):17-28)。shenhy等提出一种通过可交换加密算法和保序哈希函数来保护效用值的隐私分布式策略rehider,和能够抵抗探测攻击与暴力攻击等恶意行为的升级版本(参见文献:chenk,shenhy.distributedprivacy-protectingroutingindtn:concealingtheinformationindispensableinrouting.the14thannualieeeinternationalconferenceonsensing,communication,andnetworking(secon),sandiego,usa,2017:1-9)。magaian等提出一种隐私保护的路由协议privo。privo通过保护每个节点的敏感信息来保护隐私,并通过加密策略比较路由效用值大小(参见文献:privo:aprivacy-preservingopportunisticroutingprotocolfordelaytolerantnetworks.ifipnetworkingconference(ifipnetworking)andworkshops,stockholm,sweden,2017:1-9)。上述隐私保护方法虽然能够实现节点真实标识的匿名,却没有考虑如何收集节点间相遇信息,并计算节点路由效用值进行消息转发。为此,chenk等提出一种facechange策略。facechange中节点在连接时匿名通信,防止节点识别其要攻击节点的真实标识;在网络断开时通过其他中间节点将相遇信息转发给对方节点。虽然facechange能够阻止节点在相遇时被识别攻击,但节点离开后通过中间节点获得的相遇信息是基于真实节点标识的,从而泄露隐私信息(参见文献:chenk,shenhy.facechange:attainingneighbornodeanonymityinmobileopportunisticsocialnetworkswithfine-grainedcontrol.ieee/acmtransactionsonnetworking,2017,25(2):1176-1189)。
综上所述,现有技术存在的问题是:现有隐私保护的移动社会网络路由方法,采用基于效用值的路由协议,为保护节点隐私信息,难以获得节点相遇信息并计算真实效用值,从而影响消息转发准确。
技术实现要素:
本发明的目的在于提供一种隐私保护的移动社会网络路由方法,不但有效保护节点隐私信息,还可获得相遇信息并计算真实效用值,准确进行消息转发。
实现本发明目的的技术解决方案为:
一种隐私保护的移动社会网络路由方法,包括如下步骤:
(10)网络参数设置:对包括可信机构、固定网络、移动节点的移动社会网络进行参数设置;
(20)匿名节点相遇记录生成:相遇匿名节点生成包含节点伪随机标识、相遇时刻的相遇记录;
(30)路由效率值获取:根据匿名节点相遇记录,计算得到各相遇匿名节点效率值;
(40)相遇节点匿名消息转发:比较相遇匿名节点效率值大小,将消息由效率值小的节点转发到效率值大的节点。
本发明与现有技术相比,其显著优点为:
本发明采用伪随机标识策略保护节点隐私,生成匿名节点相遇记录信息。利用可信的ta通过自身私钥对节点相遇记录信息进行解密,并获得节点真实标识,然后计算节点的路由效率值,将值返回给该节点。使得节点保护隐私信息的同时,还可获得相遇信息并计算真实效用值,进行消息转发。
下面结合附图和具体实施方式对本发明作进一步的详细描述。
附图说明
图1是本发明隐私保护的移动社会网络路由方法的主流程图。
图2是移动社会网络模型图。
图3是图1中网络参数设置步骤的流程图。
图4是图1中匿名节点相遇记录生成步骤的流程图。
图5是相遇记录信息示例。
图6是图1中路由效率值获取步骤的流程图。
具体实施方式
如图1所示,本发明隐私保护的移动社会网络路由方法,包括如下步骤:
(10)网络参数设置:对包括可信机构、固定网络、移动节点的移动社会网络进行参数设置。
移动社会网络模型图如图2所示。
移动社会网络(mobilesocialnetworks,msns)中,可信机构ta(trustauthority)ta具有丰富的系统资源并且是可信的,其作为授权中心负责为每个移动节点颁发公、私密钥证书,另外还完成生成节点伪随机标识等隐私保护工作。固定网络包括有线的internet和无线访问点ap,负责连接ta和移动节点。移动节点n1~n8代表携带具有wifi、蓝牙等高速短距离无线通信功能的移动设备。移动节点通过固定网络从ta处获取密钥和节点标识,并将节点相遇信息发给ta,接收由ta计算的效率值。
ta首先采用双线性映射技术由安全参数k生成双线性参数
当移动节点ni向系统注册时,ta首先生成随机数r,然后通过对称加密算法enc()和主密钥s生成节点唯一的伪随机标识pidi=encs(ni||r)。节点公钥为h1(pidi),基于伪随机标识pidi和节点公钥h1(pidi),ta通过主密钥s和哈希函数h1生成节点私钥ski=sh1(pidi),以对消息进行数字签名。当移动节点和ta通信时一次获得包含多个伪随机标识的集合pidi={pidi1,pidi2,…pidin},定期采用新的伪随机标识进行节点通信和消息的签名,从而隐藏自身的真实标识。由于ta拥有主密钥s,所以可以由节点的伪随机标识获得其真实标识,进行节点追踪。
如图3所示,所述(10)网络参数设置步骤包括:
(11)系统参数发布:可信机构采用双线性映射技术、aes等对称加密算法、哈希函数发布系统参数;
(12)移动节点注册:当移动节点通过固定网络向系统注册,可信机构通过随机数、对称加密算法和主密钥生成包含多个伪随机标识的集合。
(20)匿名节点相遇记录生成:相遇匿名节点生成包含节点伪随机标识、相遇时刻的相遇记录;
如图4所示,所述(20)匿名节点相遇记录生成步骤包括:
(21)相遇记录生成:匿名节点ni和nj相遇时,生成包含节点伪随机标识、相遇时刻的相遇记录;
(22)摘要签名:通过哈希函数生成摘要,通过匿名节点自身私钥进行签名;
(23)会话秘钥生成:匿名节点ni和nj通过自身伪随机标识和私钥生成会话秘钥;
(24)相遇记录加密:通过会话秘钥对相遇记录进行加密。
相遇记录信息示例如图5所示。
假设两个节点ni和nj相遇,将生成如图5所示的相遇记录信息etij。其中,pidi和pidj为由标识匿名技术生成的节点伪随机标识;
通过哈希函数生成摘要,然后通过节点自身私钥进行签名,保证消息完整性。节点ni和nj通过自身伪随机标识和私钥生成会话秘钥
(30)路由效率值获取:根据匿名节点相遇记录,计算得到各相遇匿名节点效率值;
如图6所示,所述(30)路由效率值获取步骤包括:
(31)相遇记录解密:可信机构通过自身私有秘钥和节点伪随机标识生成的会话秘钥,对收到的匿名节点相遇记录进行解密,获得匿名节点真实标识;
(32)路由效率值计算:可信机构计算匿名节点到达其他节点的路由效率值,并将路由效率值返回给该匿名节点。
所述(32)路由效率值计算步骤中,代表两节点相遇概率的匿名节点到达其他节点的路由效率值按下式计算:
uij=uij(cold)+(1-uij(old))×uinit’0<uinit≤1,0≤uij≤1
式中,uij为匿名节点ni和nj相遇更新后的效率值,uij(old)为更新前的效率值,uinit为初始化常量。
节点相遇时匿名收集相遇记录信息,然后将信息转发给ta,ta收到节点相遇记录信息时,通过自身私有秘钥和节点伪随机标识生成会话秘钥对信息进行解密,并获得节点真实标识,然后计算节点的路由效率值。
ta将计算结果返回给该节点。这样节点只知道自身和其他节点的真实效率值大小,却无法获得其他节点的真实标识等隐私信息。
如果ta收到的相遇信息集合中多个伪随机标识都对应一个真实节点,那么提交相遇信息的节点会根据返回的变化效率值推测出伪随机标识和真实标识的对应关系。为防止节点由效率值变化结果和相遇信息获得其他节点的真实标识,ta只有在相遇信息集合中多个伪随机标识对应n(根据安全需要设置n的值)个真实节点时才会返回路由效率值,这样节点由效率值变化结果推测出其他节点真实标识的概率只有1/n。
(40)相遇节点匿名消息转发:比较相遇匿名节点效率值大小,将消息由效率值小的节点转发到效率值大的节点。
两节点相遇进行消息转发时,根据由ta获得的效率值进行效率值大小比较,将消息由效率值小的节点转发到效率值大的节点。两节点相遇时可以直接比较,而多个节点间则进行效率值排序,将消息转发给效率值最大的节点。
两节点相遇时,为实现节点间效率关系大小的比较,而不泄露彼此的真实效率值信息,将效率值信息保护问题抽象为姚百万富翁问题。姚百万富翁问题是一种安全多方计算smc(securemulti-partycomputation)问题,可以使拥有私有数据的多个参与者能够合作利用他们的私有数据进行计算,同时又不泄露各自私有数据。节点将转发目的节点为自身的消息的效率值设为最大值1,这样可以收到到达自身的消息,并且不泄露自身真实标识。
由于节点间通过会话秘钥对相遇记录信息进行加密