P2P网络中基于云模型的信任机制研究
2014-08-05冀常鹏王连鹏
王 君,冀常鹏,汪 洋,王连鹏
(1. 辽宁工程技术大学 a. 研究生学院;b. 电子与信息工程学院,辽宁 葫芦岛125105;2. 特变电工沈阳变压器集团有限公司,沈阳 1 10144)
P2P网络中基于云模型的信任机制研究
王 君1a,冀常鹏1b,汪 洋1a,王连鹏2
(1. 辽宁工程技术大学 a. 研究生学院;b. 电子与信息工程学院,辽宁 葫芦岛125105;2. 特变电工沈阳变压器集团有限公司,沈阳 1 10144)
针对近年来对等网络中存在大量不安全服务的问题,提出一种基于云模型的信任机制。在符合查询操作的节点中,根据前若干周期的信任向量,利用灰色预测模型预测各个节点在当前周期的信任向量,设计云模型算法分别建立云模型,依据信任云决策算法和信任云相似度度量算法选出值得信任的节点为请求节点提供服务。仿真结果表明,该机制在选择目标服务节点时,不仅考虑节点信任值的平均值,而且还考虑信任值的离散性,可以从多个角度更全面、合理地选出最值得信任的目标服务节点,达到提高网络服务质量、增强网络安全性的目的。
对等网络;云模型;灰色预测模型;信任向量;网络安全
1 概述
从Napster和Gnutella网络开始,对等(Peer-to-Peer, P2P)网络系统就成为Internet吸引数百万用户不可分割的部分。P2P技术使得资源共享网络结构从传统的C/S模式过渡到P2P模式[1]。由于P2P网络淡化了对中央服务器的依赖,秉承了分布式计算的特点,使得它更加彻底地暴露在攻击者面前。服务质量(Quality of Service, QoS)不可靠、欺诈行为、网络可用性差等问题成为影响P2P网络向安全性能要求更高的应用扩展的主要障碍[2]。调查结果表明,就文件共享而言,有25%的文件是虚假文件,此外也有恶意节点利用网络散播病毒等一系列不良行为,使得QoS无法得到较好的保证[3]。针对诸如此类的情况,建立一个安全、充满信任的P2P网络体系,为用户提供放心、可靠的服务环境势在必行。
通过网络中其他节点对目标节点历史行为的评价信息可以得到该目标节点的信任值,而通过信任值的高低可以判定是否与其进行交易,该信任机制可以在一定程度上区分出好节点与坏节点,提高了P2P网络的安全性[4]。但信任具有很大的主观性、模糊性以及随机性。而传统的信任模型中没有考虑到信任的不确定性,或是将信任的不确定性简单地等同于随机性或模糊性[5]。例如文献[6]中的Eigent Trust模型是经典的解决信任机制的模型,也只考虑了信任的随机性,而没有考虑信任的模糊性。研究发现,文献[7]提出的云模型能将定性概念的主观性、模糊性和随机性有机地结合起来,实现概念的定性与定量间的转换。在基于云模型的信任机制中,信任决策机制通过收集节点在过去时段其他节点对该节点的评价信息(称为信任向量)并为之建立云模型,从而判定出此节点是否值得信任。文献[8-10]都是将云模型应用到信任机制中,但又因为网络中有恶意节点的存在,此类节点并不是每时每刻都向其他节点提供信任的服务。因此,本文提出一种用灰色预测模型[11]预测节点行为的信任机制,以保证查询节点得到安全的服务。
2 云理论
2.1 云的基本概念
云与云滴:设U是一个用精确数值表示的定量论域(一维的,二维的或多维的),C是U上的定性概念,对于论域中的任意一个元素x,且x是定性概念C的一次随机实现,x对C的确定度µ(x)∈[0, 1]是有稳定倾向的随机数:
则将x在论域U上的分布称为云模型,简称为云。每一个x称为一个云滴。
2.2 云的数字特征
云的数字特征用期望Ex、熵En和超熵He这3个数值来表示,它们的定义及特点描述如下:
(1)期望Ex:在论域空间中最能代表这个定性概念的点,是这个概念量化的最典型样本点。
(2)熵En:代表一个定性概念的可度量粒度,熵越大概念越宏观。熵也反映定性概念的不确定性,是定性概念亦此亦彼性的度量。
(3)超熵He:熵的不确定性度量,它反映代表定性概念值的样本出现的随机性,揭示了模糊性和随机性的关联[12]。
2.3 云发生器
云模型中2个最重要的算法是正向云发生器和逆向云发生器。正向云发生器是已知3个数字特征得到一定数量的云滴,是定性概念转化为定量的表示。逆向云发生器是已知一定数量的样本数据得到云模型的3个数字特征,是定量映射到定性的表示。正向云发生器和逆向云发生器简单的算法描述如下:
算法1 正向云发生器
输入 表示定性概念C的Ex,En,He和云滴数N
输出 N个云滴的定量值以及每个云滴代表概念C的确定度
以En为期望值、He为标准差生成一个正态随机数En’,以Ex为期望值、En’为标准差生成正态随机数x,x即为定性概念C的一次具体量化值,称为云滴。计算:
y即为x属于A的确定度,则{x,y}可以完整地反映出这一次定性到定量转换的全部内容,由此重复以上操作,直到产生N个云滴为止[13]。
算法2 逆向云发生器
输入 N个云滴xi(1≤i≤N)
输出 这N个云滴表示的定性概念C的Ex,En和He
根据xi计算这组数据的样本均值x、样本方差S2和样本2阶中心矩B:
3 系统模型
从而计算出期望值Ex、熵En和超熵He:
3.1 信任云的定义
信任云是一种特殊的云模型,它将对信任的表达用云模型的方式反映出来,具体的云模型定义如下:
定义1 信任云是以一维正态云的形式描述实体间的信任关系,形式化表述为:
其中,Ex是期望值,反映信任的一般水平;En是熵,反映信任的不确定性;He是超熵,反映熵的不确定性[14-15]。
3.2 信任向量的定义
通常,实体间的信任评估取决于对对方服务行为满意度的高低。对节点服务质量的评价,本文采用离散标度(1, 0.75, 0.5, 0.25, 0)来描述不同的满意度高低(分别对应为非常满意、满意、一般、不满意、非常不满意)。当查询节点从目标服务节点N获得所需的资源后,对目标服务节点N给出其服务满意度的评价。如此在一段时间T后,可以整理出节点N在时间T内的满意度评价集合,称为节点N在时间T内的信任向量。具体的定义如下:
定义2 信任向量V是一个五维向量,是与满意度评价高低描述相对应的对目标服务节点在时间T内的服务评价的集合。
节点N在周期Ti的信任向量为VNi(10, 20, 15, 0, 0),表示在周期Ti其他节点对N的服务满意度评价中有10次非常满意、20次满意和15次一般。
3.3 信任云的生成
已知节点N在某周期Ti的信任向量为VNi(10, 20, 15, 0, 0),可通过算法2(逆向云发生器)得到信任向量VNi对应的信任云模型CNi的3个数字特征:
从而实现定量到定性概念的转换。再通过算法1(正向云发生器)由CNi的3个数字特征得到信任云模型CNi的云滴图,以此来描述出信任值的分布情况。具体的云滴图如图1所示。
图1 VNi(10, 20, 15, 0, 0)对应的云滴图
3.4 灰色预测模型
每当节点执行完一次查询服务,模型都会对目标服务节点给出其服务质量的满意度评价。如此,每个节点都维持一个信任值表格(Trust-value Neighbor),记录自己在当前周期Ti之前4个周期Ti–1,Ti–2,Ti–3,Ti–4的满意度评价集合。因为信任值表格中总是记录当前周期之前4个周期的信任值,所以信任值表格是每隔时间T更新一次的。节点N在当前周期的信任值如表1所示。
表1 节点在当前时刻的信任值
从表1可以看出,节点N在周期Ti–4的信任向量VNi–4为(5, 20, 18, 3, 0),在周期Ti–3的信任向量为VNi–3为(7, 18, 15, 5, 0),在周期Ti–2的信任向量VNi–2为(10, 18, 20, 5, 0),在周期Ti–1的信任向量VNi–1为(10, 15, 16, 4, 0)。
根据灰色预测模型可以预测出N在当前周期Ti的信任向量VNi。下面以单序列一阶线性微分方程GM(1, 1)为例,介绍灰色预测的具体步骤。
设有原始数据序列S(0)=(S(0)(1), S(0)(2), …, S(0)(n)),n为数据的个数。
(1)为了弱化原始随机序列的波动性和随机性,对原始数据累加得到新的数据序列S(1)为:
(5)对函数表达式S(1)(t+1)及S(1)(t)作差,还原出S(0)序列,得到的S(0)(t+1)为:S(0)(t+1)=S(1)(t+1)–S(1)(t)。
(6)利用该模型对原始数据序列S(0)进行预测,得到的数据如下:
经过上述灰色预测,现对周期Ti信任向量中的非常满意的评价次数进行预测。由表1得到非常满意的初始数据序列为S(0)=(5, 7, 10, 10),经灰色预测模型预测得到S(0)(5)= 12.213 4,四舍五入得S(0)(5)=12。同理可以预测出周期Ti信任向量中的满意、一般、不满意与非常不满意的评价次数,得出VNi(12, 14, 18, 4, 0)。
3.5 信任云决策算法
当节点A执行查询服务后,系统会返回满足查询条件的节点。A要在满足查询操作的节点中选出值得信任的节点作为目标服务节点,本文使用信任云决策算法对多个云模型进行是否信任的选择。本文首先设定作为标准的信任云,称为基准云,表示为CS(Exs, Ens, Hes);要进行比较的云称为比较云,记为Cm(Exm, Enm, Hem)。因此,节点A信任一个目标服务节点与否,需要将此目标服务节点与基准云比较,然后得出是否值得信任的结论。
云模型中的Ex和En参数是决定云形状的2个最直观的参数,分别反映云所代表的知识的平均值和离散程度,而He是En的熵。一般来说,En与He的比值在一定范围内时He对云的影响力较小。因此,在本文的信任云决策算法中,主要比较Ex和En这2个参数。
算法3信任云决策算法
输入基准云CS(Exs, Ens, Hes),比较云Cm(Exm, Enm, Hem)
输出比较云Cm是否值得信任
算法4信任云相似度度量算法
输入信任云C1(Ex1, En1, He1),记为向量V1(Ex1, En1, He1);信任云C2(Ex2, En2, He2),记为向量V2(Ex2, En2, He2)
输出2个云是否相似
该算法中的θ是设定的一个阈值,可以根据具体的情况设置其值大小。
以上算法描述可总结为:源节点A需要某个目标资源,执行查询后若网络中有节点(假设有3个节点B,C,D)存有A所需要的目标资源,故应对3个节点进行是否值得信任的判断。首先从3个节点各自的信任值表格中取出前四个周期的信任向量,然后使用灰色预测模型预测出当前周期Ti的信任向量VBi,VCi,VDi,在利用算法2(逆向云发生器)得到对应云模型分别记为CBi(Ex, En, He)、CCi(Ex, En, He)、CDi(Ex, En, He)。最后通过算法3(信任云决策算法)和算法4(信任云相似度度量算法)判断3个节点哪个节点值得信任,从而选择此节点作为目标服务节点。如在B,C,D中通过判断得出节点D不值得A信任,B、C节点值得信任,则A从B或C中选出一个节点与之发生交互即可。或3个节点都不符合信任要求,则为了保证网络服务安全,节点A放弃下载此资源。
4 仿真实验
为对提出的模型算法进行验证,本文采用Matlab2010b进行仿真。在一个简单的P2P网络(如图2所示)中,假定A需要某文件f,经过查询B,C中有f文件。系统查询到B,C中有目标文件后,从B,C的信任值表格中取出各自前4个周期的信任向量,然后通过灰色预测模型预测出B,C节点在当前周期Ti的信任向量。B,C节点具体的信任值数据如表2、表3所示。
图2 一个简单的P2P网络
表2 节点B的信任值
表3 节点C的信任值
通过灰色预测模型预测出B在Ti的信任向量VBi(5.257 0, 70.010 5, 4.725 5, 0, 0),四舍五入得VBi(5, 70, 5, 0, 0);预测出C在Ti的信任向量VCi(28.241 3, 0, 27.651 4, 0, 0),四舍五入规则得VCi(28, 0, 28, 0, 0)。再通过算法2(逆向云发生器)分别对2个信任向量得出信任云模型CBi(0.75, 0.088 4, 0.009 9)和CCi(0.75, 0.25, 0.033 7)。节点A的基准云设为CS(0.6, 0.1, 0.02),因此,只需对CBi和CCi分别于CS执行算法3(信任云决策算法)即可。对于CBi,调用算法3(信任云决策算法),因为0.088 4<0.1并且0.75>0.6,所以判断出B值得A信任。对于CCi,通过调用算法3(信任云决策算法)和算法4(信任云相似度度量算法)计算出CCi和CS的相似度Sim=0.987 7。而因为0.987 7<0.99(算法4中设置的阈值θ=0.99),所以C不值得A信任。通过算法1(正向云发生器),可以得到CBi和CCi的云滴图,分别与CS的云滴图进行对比,结果如图3和图4所示。从图3可以看出,CBi的云滴图基本上在CS云滴图的右侧,且CBi的离散度也比CS的小。而图4中CCi的云滴图可以看出,虽然期望值比CS大,但是离散性也较大,故不确定性大。对于目标服务节点的信任云模型CBi(0.75, 0.088 4, 0.009 9)和CCi(0.75, 0.25, 0.033 7),如果单从期望值来看,两者的期望值即信任值的平均水平都为0.75,因此,不能判断出哪个更信任。但是本文从云模型的3个特征参数分析,可以更全面合理地判断出哪个节点更值得信任,从而给用户提供更可靠的服务,保证了网络的安全性。
图3 CBi与CS的云滴图对比
图4 CCi与CS的云滴图对比
5 结束语
本文提出一种在P2P网络中基于节点的信任向量建立云模型的算法。当某节点符合某次查询条件时,可以首先利于灰色预测模型根据节点前4个周期的信任向量预测出节点在当前周期的信任向量,再通过逆向云发生器得出当前周期信任向量对应的信任云模型,并依据信任云决策算法和信任云相似度度量算法对若干符合某次查询条件节点的信任云模型进行选择,最终选出值得信任的节点(或一个节点都不信任)给查询节点提供服务,从而保证了网络服务的安全可靠性。从仿真结果来看,本文算法可以更全面、合理地对目标服务节点做出评价选择。但该算法中信任云的相似度阈值以及每个节点的基准云大小设置,将会影响到节点是否得到可靠安全的网络服务,进而影响整个网络的安全性,因此,如何设置信任云的相似度阈值和每个节点的基准云大小是下一步研究的重点内容。
[1] S teinmetz R, Wehrle K. P 2P系统及其应用[M]. 王玲芳, 陈 焱, 译. 北京: 机械工业出版社, 2008.
[2] 孔 杰, 张新有. 一种基于组群的P2P网络信任模型[J].计算机应用研究, 2010, 27(12): 4676-4679.
[3] 陈 灿. P 2P网络中基于信誉的信任模型研究[D]. 长沙:湖南大学, 2010.
[4] 张秋景, 曾凡平. 一种信誉机制与云模型相结合的P2P环境信任模型[J]. 小型微型计算机系统, 20 10, 3 1(7): 1328-1332.
[5] 林 军, 姜文君, 王国军. P 2P环境中基于信誉与云理论的信任模型[J]. 计算机工程, 2012, 38(2): 141-143, 145.
[6] Feldman M, Papadimitriou C, Chuang J, et al. Free Riding and Whitewashing in Peer to Peer Sy stems[J]. IEEE J ournal on Selected Areas in Communications, 2006, 24(5): 1010-1019.
[7] 李德毅, 史雪梅, 孟海军. 隶属云和隶属云发生器[J]. 计算机研究与发展, 1995, 32(6): 15-20.
[8] 蔡红云, 杜瑞忠, 田俊峰, 等. 基于云模型和风险评估的信任模型研究[J]. 计算机工程, 2012, 38(23): 139-142.
[9] 王守信, 张 莉, 李鹤松. 一种基于云模型的主观信任评价方法[J]. 软件学报, 2010, 21(6): 1341-1352.
[10] 任乐华. P 2P网络中基于云模型的信任度评估研究[D].济南: 山东师范大学, 2012.
[11] 邓聚龙. 灰理论基础[M]. 武汉: 华中科技大学出版社, 2002.
[12] 李德毅, 刘常昱. 论正态云的普适性[J]. 中国工程科学, 2004, 6(8): 28-34.
[13] 杨 宇, 周小焕, 宋淑丽. 云理论在高速公路安全评价中的应用[J]. 交通信息与安全, 2011, 29(2): 92-94.
[14] 路 峰, 吴慧中. 基于云模型的信任评估研究[J]. 中国工程科学, 2008, 10(10): 84-90.
[15] 路 峰, 吴慧中. 网格环境下基于云模型的信任评估与决策方法研究[J]. 系统仿真学报, 2009, 21(2): 421-426.
编辑 金胡考
Research on Trust Mechanism Based on Cloud Model in P2P Network
WANG Jun1a, JI Chang-peng1b, WANG Yang1a, WANG Lian-peng2
(1a. Institute of Graduate; 1b. School of Electronics and Information Engineering, Liaoning Technical University, Huludao 125105, China; 2. TBEA Shenyang Transformer Group Co., Ltd., Shenyang 110144, China)
With the rapid development of Peer-to-Peer(P2P) network in recent years, there exist a lot of unsafe service problems. Aiming at this problem, a trust mechanism based on cloud model is proposed. A kind of cloud model algorithm based on node’s trust vector is proposed. For several nodes which matching the query condition, it uses gray theory to predict trust vector of current cycle based on its previous trust ve ctors, and creates cloud mod el for several current t rust vectors, sele cts the trustworthy node to service the source query node depending on the decision algorithm of trust-cloud and the similarity measure algorithm of trust-cloud. Simulation experimental result shows that when selecting the target service nodes, this mechanism can not only depend on node’s mean trust-value, but also take trust-value discreteness into considering. So it can select the most trust node from different angles, improve the quality of network service, and achieve the purpose of enhancing network security.
Peer-to-Peer(P2P) network; cloud model; grey prediction model; trust vector; network security
10.3969/j.issn.1000-3428.2014.05.026
王 君(1989-),女,硕士研究生,主研方向:对等网络安全;冀常鹏,教授;汪 洋,硕士研究生;王连鹏,工程师。
2013-04-10
2013-06-05E-mail:june1016@126.com
1000-3428(2014)05-0124-05
A
TP309