赵跃华 郑南南
摘 要:信任是MP2P网络安全中要解决的关键问题。MP2P与P2P的网络环境有本质上的区别,原有适应P2P网络信任模型并不适用MP2P网络。在已有信任模型基础上,针对移动网络中常见的恶意攻击,采用混合式拓扑结构,提出一种基于动态等级判定的MP2P信任模型。根据不同时刻的时间经验值和全局贡献值,动态赋予网络节点不同的等级,并根据等级的高低决定计算信任值时的权重和资源下载量。研究和仿真分析表明,该模型可有效区分网络中稳定和不稳定节点,并有效延长稳点节点在网络中的地位,同时减少“搭便车”节点以及“诋毁”节点的不良影响,提高节点的交互成功率。
关键词:MP2P;信任模型;动态等级;网络安全
DOI:10. 11907/rjdk. 181747
中图分类号:TP309文献标识码:A文章编号:1672-7800(2019)001-0169-05
Abstract: Trust is the key technical issue for MP2P networks security. MP2P and P2P network environment is essentially different so that the original P2P network trust model does not apply to MP2P network. This paper is based on the existing trust model,in which a hybrid topology is proposed aiming at the common malicious attacks in mobile networks. A trust model based on dynamic rank judgement is proposed. Different levels of network nodes are dynamically assigned according to time experience value and global contribution value in different times. The research and simulation results show that this model can effectively distinguish between stable and unstable nodes in the network and effectively extend the position of the stable node in the network. It can reduce the adverse impact of free-riding nodes and hypocritical nodes in order to improve the node's mutual success rate.
0 引言
无线通信技术的快速发展,给人们的生产生活带来了便捷,但同时也带来了各种安全隐患[1]。因移动终端存储有限、网络资源短缺、节点移动频繁等特点,使移动对等网络(Mobile P2P,MP2P)管理的难度远大于P2P网络[2]。为确保系统安全运行,研究MP2P网络安全成为一个重要课题[3]。由于节点的动态性高和稳定性低等特征,传统P2P网络信任模型很难适用MP2P网络。同时,已有的安全信任模型计算复杂度较高,不适用于节点计算能力有限的MP2P网络。为此,很多学者在研究P2P网络信任模型基础上,根据MP2P网络特点,给出了各种信任模型。Stephen Paul Marsh[4]首次提出信任问题,为信任模型在P2P网络中的应用奠定了基础。后来Blaze[5]提出信任管理,设计了PolicyMaker信任管理系统。
P2P信任模型有:
PKI信任模型。PKI信任模型是由可信任度高的管理决策者制定的统一行为[6]。主要优点是在相同模式约束下,可预测用户的行为特征。但该方法下设计的信任系统失效后,可控性非常差。
Poblano信任模型[7]。该模型把用户提供的内容作为重要参考依据,优势是为P2P网络提供多种管理机制,满足用户安全需求,但在解析用户数据时可靠性较低[8]。
基于声誉的信任模型。该模型依靠管理机制收集用户声誉信息,然后对协作节点采取信任值评估。具体可设置监听模块,以监听协作节点的交易行为,并以此作为信任评估的依据[9]。该模型的优点是符合人类社会学中信任关系,动态适应性较强,但不能有效抑制诋毁节点和共谋节点的攻击行为。
基于Fuzzy Mathematics的信任模型[10]。该模型以模糊数学知识为理论依据,按照一定规则将信任划分为不同等级。优点是采用模糊数学方法划分节点等级,信任关系的推测更加符合信任属性,但需要建立隶属函数,信任关系维护较复杂[11]。
MP2P网络信任模型有:
基于反馈机制的信任模型[12]。2009年,陈世平等[13]提出基于反馈机制的信任模型,引用推荐因子控制信任链的规模大小,以提高推荐信任度的准确性,提高了模型的动态适应性。但惩罚因子较小,没有很好地抑制节点搭便车行为,系统开销较大。
基于分布式存储的信任模型。2011年,冯景瑜等[14]提出一种基于分布式存储信任模型MobTrust。该模型提高了評价信任度的准确性,双反馈机制设计保证了系统安全性,抑制节点搭便车行为。但该模型容易受到恶意节点攻击,难以保证得到安全可靠的信任值。
动态安全信任模型。2012年,李致远等[15]提出一种动态安全信任模型。该模型根据节点行为的不同提出两种方案:一种是节点行为已知,给出对节点行为状况的识别安全管理机制;另一种是节点行为未知,给出通过贝叶斯博弈方法获取网络资源的选择策略。信任值的安全性得到保证且动态适应性强,但该模型没有很好地考虑移动终端设备的差异性。
基于代理安全反馈的信任模型。2014年,曹晓梅等[16]提出基于代理反馈的信任模型PSTM。该模型针对不同种类移动设备为其分配不同的代理服务器,以屏蔽终端设备之间的差异,但代理服务器开销大且资源查询效率较低。
基于动态分组的信任模型。2017年,Jia等[17]提出基于动态分组的信任模型DGTM。该模型将所有节点划分为不同的组,组内和组间两种信任能更好地度量等体之间的信任度,以保证节点之间的交易成功率及相对较小的系统开销。但该模型的分组规则相对简单,很难有效抑制伪善节点的攻击行为。
本文研究目标是在系统开销较小且较好适应网络拓扑变化的情况下,有效防御恶意节点的攻击行为,提出一种基于动态等级判定的MP2P信任模型(Dynamic Rank Judgement Based Trust Model for MP2P Networks),以保证MP2P网络安全。
1 信任模型
本模型采用混合式网络拓扑结构,每组之间都有一个超级节点,超级节点主要负责节点等级判定、节点信任值计算、节点反馈评价等,同时还存储组内普通节点的资源列表和节点的身份信息。普通节点负责维护自身资源和身份信息。超级节点综合考虑普通节点的全局贡献值和时间经验值两个因素,动态赋予网络节点不同的等级,并根据等级的高低赋予不同权重,等级越高的节点所占权重越大。MP2P网络中节点获取资源时,首先请求节点以广播的形式向移动网络发送资源搜索消息,超级节点之间迅速转发消息。当请求节点获得超级节点提供的目標节点身份信息时,同时也会获得目标节点所拥有的资源列表。请求节点根据目标节点的全局信任值大小和目标节点等级高低,选择合适的节点进行交易。当节点等级相同时,请求节点优先考虑全局信任值大的目标节点进行交易。交易完成后请求节点对本次服务进行评价,并将交易评价反馈给目标节点所在组的超级节点。
本模型主要处理过程:
(1)当普通节点i进行交易时,超级节点采集历史交易中节点i的成功交易次数St和失败交易次数Ft,由二者的值得出节点i的交易稳定度TSt,同时超级节点采集以往其它节点对节点i的历史评价满意度Et,计算交易区间内平均满意度,得出节点i的本地信任值Li,然后超级节点根据TSt和Li计算出节点i的时间经验值Tt。
(2)超级节点根据普通节点i在网络中上传或下载资源的表现行为,得出该节点的全局贡献值At。
(3)超级节点根据Tt和At对节点i进行等级判定,等级高的节点享受的下载权限大。
(3)节点i计算与其交易目标节点的全局信任值,节点i优先选择节点等级高的节点进行交易。当节点等级相等时,对比目标节点的全局信任值大小,全局信任值越大越值得信任。
本模型包括动态等级判定和信任值计算两个部分。
2 动态等级判定
2.1 DRJTM_MP2P相关概念
2.2 节点等级判定流程
t时刻交易时,超级节点对节点i进行等级判定,见图1。
(1)等级判定开始,超级节点分别采集节点i在t时刻之前的[St]和[Ft],并计算交易总次数[St+Ft]。
(2)超级节点判断交易总次数是否大于预先给出的阈值,如果小于阈值则结束判定。阈值的设定在一定程度上鼓励节点积极参与网络交易,如果恶意节点退出后再次加入到MP2P网络中,其等级不会发生变化。
(3)当交易总次数大于阈值时,超级节点采集节点i的满意度Et、交易稳定度TSt、本地信任值Li、贡献值Ct值的大小并校验上述数据完整性。
(4)若采集的数据不完整,则超级节点结束等级判定,如数据完整则计算出节点i的时间经验值[Tt]和全局贡献值[At]。根据数学的模糊推理[18],判定规则如表1所示。
(5)成功判定节点等级并赋予节点i等级权重值,判定结束。
3 信任值计算
3.1 直接信任值
现有很多信任模型中,仅将节点评价满意度作为直接信任值计算的参考因子。本文信任模型考虑到MP2P网络中节点的历史交易评价会随时间的推移而衰减,因此引入了时间衰减因子,使直接信任值计算更为合理可靠。
3.2 间接信任值
计算信任值时不仅要考虑节点间的直接信任值,还要间接参考其它节点推荐的信任值。社交网络中人们更加相信与自己评价结果相同的人,会信任其推荐信息。
3.3 全局信任值
变异系数[V=σχ],其值越小越稳定,其中[χ]为信任值的平均数,[σ]为信任值的标准差。当直接信任值波动较大时,则间接信任值所占权重较大,即节点更依赖于推荐节点的判断;间接信任值波动较大时,则直接信任值所占权重较大,即节点更相信自身的判断。
3.4 节点信任值计算流程
节点i计算交易目标节点j的全局信任值:①节点i采集目标节点j的历史交易满意度[Et(i,j)]和节点i自身的等级权重值[Rit]以及时间衰减因子[Qt],然后根据式(8)计算直接信任值[TDij];②节点i根据交易满意度评价的相似程度,计算推荐节点的相似度[ζij],选择相似度高的节点推荐的信任信息;由[ζij]和推荐稳定度[βij]计算间接信任因子[γij],根据式(12)计算间接信任值[TIij];③最后综合节点i对节点j的直接信任值[TDij]和间接信任值[TIij],根据式(13)计算得到全局信任值[GTij]。
4 仿真
4.1 仿真参数设置
本文采用PeerSim1.0.5仿真软件搭建仿真环境。仿真场景是文件共享应用,仿真实验参数见表2。等级判定阈值和等级权重值及其允许下载量见表3。仿真实验的硬件环境为3.30GHz双核处理器和4GB内存计算机。