本发明属于网络信息安全技术领域,特别是涉及一种物联网节点信任度评估方法。
背景技术:
物联网(internetofthings,iot)是一种通过信息传感设备,按照约定的协议,把任何物品与互联网连接起来,进行信息交换和通信,以实现智能化识别、定位、跟踪、监控和管理的网络,它是在互联网基础上延伸和扩展的网络。物联网能够获取客观物理信息,具有十分广阔的应用前景,能应用于城市管理、生物医疗、环境检测、智能家居等领域,因此目前已经引起了学术界和工业界的高度重视。
在iot中,节点间通过一系列终端设备实时采集各类数据,其中不乏隐私和保密信息,因此用户格外重视iot的安全性问题。一方面,由于传统的安全认证和加密技术难以应用,iot节点更容易成为被攻击的对象;另一方面,由于iot内信任关系复杂,容易被恶意节点利用,从而实施以获取服务或资源为目标的恶意行为。因此,在iot中,充分挖掘节点信任关系并有效识别恶意节点,对保障iot的服务质量具有重要意义。信任管理作为有效防御网络内部攻击和识别恶意节点的方法之一,可提高iot应用系统的安全性、可靠性和公平性。但目前尚缺少有效的方法。
技术实现要素:
为了解决上述问题,本发明的目的在于提供一种物联网节点信任度评估方法。
为了达到上述目的,本发明提供的物联网节点信任度评估方法包括按顺序进行的下列步骤:
1)查询直接交互节点列表的s1阶段:在此阶段中,物联网中的服务请求节点首先查询直接交互节点列表中是否存在服务提供节点的记录,若存在该服务提供节点的记录,则进入s2阶段;否则进入s3阶段;
2)计算直接信任度值的s2阶段:在此阶段中,首先,根据服务提供节点的数据包转发率和重复率,计算该服务提供节点的服务质量值及相同质量服务持续强度,然后利用上述结果计算服务提供节点的质量服务评分值,最后计算服务提供节点的直接信任度值,进入s4阶段;
3)计算推荐信任度值的s3阶段:在此阶段中,首先,服务请求节点向其通信范围内的所有节点请求查询本地是否存在服务提供节点的信任度值记录,若有,则该节点作为推荐节点,同时发送本地信任值列表至服务提供节点;其次,根据推荐节点与服务请求节点的共同通信节点数和对共同通信节点的评分相似度,计算得到用户相似度;然后,计算各推荐节点对服务提供节点的评价差异度;最后,通过对推荐节点的用户相似度、评价差异度的融合处理,得到该推荐节点的推荐信任度权重,并最终计算出推荐节点的推荐信任度值,进入s4阶段;
4)计算综合信任度值的s4阶段:在此阶段中,融合步骤2)和步骤3)获得的直接信任度值和推荐信任度值,计算节点的综合信任度值
5)根据上述综合信任度值更新信任度值列表的s5阶段:在此阶段中,根据上述综合信任度值,采取时间触发和事件触发机制更新信任度值列表。
在步骤2)中,所述的根据服务提供节点的数据包转发率和重复率,计算该服务提供节点的服务质量值及相同质量服务持续强度,然后利用上述结果计算服务提供节点的质量服务评分值,最后计算服务提供节点的直接信任度值的具体方法如下:
i)计算服务提供节点j的数据包转发率服务质量值
其中,precieve与psend分别为服务提供节点j实际接收和成功转发的数据包数量,δ为保证节点间通信正常时应转发的最低数据包的数量,k为服务提供节点j实际转发的数据包数量;
ii)计算服务提供节点j的数据包重复率服务质量值qijr:
其中,εth=2,ε、th为常数,由网络控制环境确定;
iii)根据上述数据包转发率服务质量值
其中,0≤ω1,ω2≤1且ω1+ω2=1;ω1和ω2分别表示数据包转发率服务质量和数据包重复率服务质量的权重;
iv)将步骤iii)中计算得到的服务质量值qijd与用户设定的服务质量阈值t进行比较,以判断本次服务性质,并更新该服务提供节点j在本监测周期内提供的高质量服务次数
当本次服务质量值qijd<服务质量阈值t时,判定服务提供节点j提供的服务为低质量服务,并由公式(4)更新低质量服务次数
其中,ser′jn为历史低质量服务次数;
当本次服务质量值qijd≥服务质量阈值t,判定服务提供节点j提供的服务为高质量服务,并由公式(5)更新高质量服务次数
其中
v)根据上述低质量服务次数或高质量服务次数计算服务提供节点j在监测周期内的相同质量服务持续强度fja,其中a=r、p,并分别作为该节点本次服务的惩罚因子和奖励因子:
其中,a=r、p,type=n、p,
vi)若此次服务提供节点j提供的服务为高质量服务,则根据公式(6)更新相同质量服务持续强度
其中,
vii)若此次服务提供节点j提供的服务为低质量服务,则根据公式(6)更新相同质量服务持续强度
其中,
ⅷ)根据上述高质量服务评分值αij和低质量服务评分值βij计算服务提供节点j的直接信任度值:
在步骤3)中,所述的根据推荐节点与服务请求节点的共同通信节点数和对共同通信节点的评分相似度,计算得到用户相似度;然后,计算各推荐节点对服务提供节点的评价差异度;最后,通过对推荐节点的用户相似度、评价差异度的融合处理,得到该推荐节点的推荐信任度权重,并最终计算出推荐节点的推荐信任度值的具体方法如下:
ⅰ)计算通信范围内所有推荐节点所属用户和服务请求节点所属用户在共同通信节点数、对共同通信节点的评分相似度这两个属性上的用户相似度:
其中,dx、dy分别为与属于用户x、y的所有设备发生直接通信行为的设备列表;txi、tyi分别为用户x与用户y的信任度值评分列表,连接于同一指定高智能终端设备的所有设备视为一个用户;
ⅱ)选取上述用户相似度sim(x,y)user较高的前n个节点作为推荐节点集simn;
ⅲ)计算推荐节点集simn中各推荐节点的评价差异度diffk:设
ⅳ)根据上述第k个推荐节点的用户相似度和评价差异度diffk计算第k个推荐节点的推荐信任度权重weightkre
其中,tkcom为服务请求节点j对第k个推荐节点的信任度评估值,即推荐节点自身信任度值。
v)根据上述第k个推荐节点的推荐信任度权重weightkre,计算第k个推荐节点的推荐信任度值:
在步骤4)中,所述的计算节点的综合信任度值tjtotal的公式如下:
其中,wd+wre=1且0≤wd,wre≤1,wd、wre分别为直接信任度值、推荐信任度值的权重,由网络实际情况设定。
在步骤5)中,所述的根据上述综合信任度值更新信任度值列表的s5阶段:在此阶段中,根据上述综合信任度值,采取时间触发和事件触发机制更新信任度值列表的具体方法如下:
ⅰ)无事件触发时,根据上述综合信任度值将信任度值列表滑动窗口以△t的时间间隔向右滑动,滑动窗口外的记录失效,同时更新仍然有效的信任度值记录,更新后的综合信任度值为:
tjcom=fr×tjtotal(15)
其中,fr=α/α+△t为信任衰减因子;
ⅱ)服务结束后,若信任度值列表中无关于服务提供节点j的信任度值记录且信任度值列表仍有存储空间,则在列表中插入服务提供节点j的综合信任度值;
ⅲ)若信任度值列表中有关于服务提供节点j的信任度值记录,则更新该记录;
ⅳ)若无服务提供节点j的信任度值记录但信任度值列表已满,则在信任度值列表滑动窗口的队列尾部插入关于服务提供节点j的综合信任度值,此时最左端的综合信任度值失效。
与现有技术相比,本发明提供的物联网节点信任度评估方法在进行节点直接信任度评估时,采用改进基于beta的直接信任度评估方法,并通过融合用户相似度、评价差异度及节点自身的信任度值,优化推荐信任度权重计算方法,计算节点推荐信任度值。最后,采取基于直接信任度值和推荐信任度值的组合方法计算节点综合信任度值,可提高信任度评估的准确性。实验结果表明,与其它方法相比,本发明方法对节点的恶意行为具有较高的敏感度,且在保证信任度计算准确率的同时可有效降低传输能耗。
附图说明
图1为本发明提供的物联网节点信任度评估方法流程图
图2为本发明提供的物联网节点信任度评估方法中直接信任度值计算方法流程图。
图3为本发明提供的物联网节点信任度评估方法中推荐信任度值计算方法流程图。
图4为节点信任度更新方法示意图。
图5为采用不同直接信任度值计算方法时节点直接信任度值仿真图。
图6为采用不同节点推荐信任度值计算方法时计算准确率仿真图。
图7为采用不同节点信任度评估方法时的传输能耗仿真图。
具体实施方式
下面结合附图及具体实施例对本发明做进一步的说明,但下述实施例绝非对本发明有任何限制。
如图1所示,本发明提供的物联网节点信任度评估方法包括按顺序进行的下列步骤:
1)查询直接交互节点列表的s1阶段:在此阶段中,物联网中的服务请求节点首先查询直接交互节点列表中是否存在服务提供节点的记录,若存在该服务提供节点的记录,则进入s2阶段;否则进入s3阶段;
2)计算直接信任度值的s2阶段:在此阶段中,首先,根据服务提供节点的数据包转发率和重复率,计算该服务提供节点的服务质量值及相同质量服务持续强度,然后利用上述结果计算服务提供节点的质量服务评分值,最后计算服务提供节点的直接信任度值,进入s4阶段;
如图2所示,具体方法如下:
i)计算服务提供节点j的数据包转发率服务质量值
其中,precieve与psend分别为服务提供节点j实际接收和成功转发的数据包数量,δ为保证节点间通信正常时应转发的最低数据包的数量,k为服务提供节点j实际转发的数据包数量;
ii)计算服务提供节点j的数据包重复率服务质量值qijr:
其中,εth=2,ε、th为常数,由网络控制环境确定;
iii)根据上述数据包转发率服务质量值
其中,0≤ω1,ω2≤1且ω1+ω2=1;ω1和ω2分别表示数据包转发率服务质量和数据包重复率服务质量的权重;
iv)将步骤iii)中计算得到的服务质量值qijd与用户设定的服务质量阈值t进行比较,以判断本次服务性质,并更新该服务提供节点j在本监测周期内提供的高质量服务(合法行为)次数
当本次服务质量值qijd<服务质量阈值t时,判定服务提供节点j提供的服务为低质量服务,并由公式(4)更新低质量服务次数
其中,ser′jn为历史低质量服务次数;
当本次服务质量值qijd≥服务质量阈值t,判定服务提供节点j提供的服务为高质量服务,并由公式(5)更新高质量服务次数
其中
v)根据上述低质量服务次数或高质量服务次数计算服务提供节点j在监测周期内的相同质量服务持续强度fja(a=r、p),并分别作为该节点本次服务的惩罚因子和奖励因子:
其中,a=r、p,type=n、p,
vi)若此次服务提供节点j提供的服务为高质量服务,则根据公式(6)更新相同质量服务持续强度
其中,
vii)若此次服务提供节点j提供的服务为低质量服务,则根据公式(6)更新相同质量服务持续强度
其中,
ⅷ)根据上述高质量服务评分值αij和低质量服务评分值βij计算服务提供节点j的直接信任度值:
3)计算推荐信任度值的s3阶段:在此阶段中,首先,服务请求节点向其通信范围内的所有节点请求查询本地是否存在服务提供节点的信任度值记录,若有,则该节点作为推荐节点,同时发送本地信任值列表至服务提供节点;其次,根据推荐节点与服务请求节点的共同通信节点数和对共同通信节点的评分相似度,计算得到用户相似度;然后,计算各推荐节点对服务提供节点的评价差异度;最后,通过对推荐节点的用户相似度、评价差异度的融合处理,得到该推荐节点的推荐信任度权重,并最终计算出推荐节点的推荐信任度值,进入s4阶段;
如图3所示,具体方法如下:
ⅰ)计算通信范围内所有推荐节点所属用户和服务请求节点所属用户在共同通信节点数、对共同通信节点的评分相似度这两个属性上的用户相似度:
其中,dx、dy分别为与属于用户x、y的所有设备发生直接通信行为的设备列表;txi、tyi分别为用户x与用户y的信任度值评分列表,连接于同一指定高智能终端设备的所有设备视为一个用户;
ⅱ)选取上述用户相似度sim(x,y)user较高的前n个节点作为推荐节点集simn;
ⅲ)计算推荐节点集simn中各推荐节点的评价差异度diffk:设
ⅳ)根据上述第k个推荐节点的用户相似度和评价差异度diffk计算第k个推荐节点的推荐信任度权重weightkre
其中,tkcom为服务请求节点j对第k个推荐节点的信任度评估值,即推荐节点自身信任度值。
v)根据上述第k个推荐节点的推荐信任度权重weightkre,计算第k个推荐节点的推荐信任度值:
4)计算综合信任度值的s4阶段:在此阶段中,融合步骤2和步骤3获得的的直接信任度值和推荐信任度值,计算节点的综合信任度值tjtotal:公式如下:
其中,wd+wre=1且0≤wd,wre≤1,wd、wre分别为直接信任度值、推荐信任度值的权重,由网络实际情况设定。
5)根据上述综合信任度值更新信任度值列表的s5阶段:在此阶段中,采取时间触发和事件触发机制更新信任度值列表。
如图4所示,具体方法如下:
ⅰ)无事件触发时,根据上述综合信任度值将信任度值列表滑动窗口以△t的时间间隔向右滑动,滑动窗口外的记录失效,同时更新仍然有效的信任度值记录,更新后的综合信任度值为:
tjcom=fr×tjtotal(15)
其中,fr=α/α+△t为信任衰减因子,该信任衰减函数使得信任度值前期衰减速率低于指数函数,较好地保留了近期服务的评价,且随着时间的增加历史综合信任度值不会衰减为0;
ⅱ)服务结束后,若信任度值列表中无关于服务提供节点j的信任度值记录且信任度值列表仍有存储空间,则在列表中插入服务提供节点j的综合信任度值,如图4中的1;
ⅲ)若信任度值列表中有关于服务提供节点j的信任度值记录,则更新该记录,如图4中的2;
ⅳ)若无服务提供节点j的信任度值记录但信任度值列表已满,则在信任度值列表滑动窗口的队列尾部插入关于服务提供节点j的综合信任度值,如图4中的3,此时最左端的综合信任度值失效。
图5为在仿真环境中,模拟恶意节点首先通过持续提供合法服务得到高信任度值,随后产生恶意行为的情况下,通过智能beta信誉和动态信任值计算方法(ibrdt)、基于节点行为的物联网信任度评估方法和恶意行为检测方法(bitem)及本发明方法(nbtem),共三种不同方法得到的节点的直接信任度值。由图5可知,当节点进行合法通信时,由本发明方法计算得到的直接信任度值增速较慢,能够防止具有低信任度值的恶意节点,通过提供少数几次高质量服务快速增加自身信任度值。当t=45min时,节点开始产生恶意行为,由发明方法计算得到的直接信任度值下降较快,表明本发明方法能有效防止节点采取以低代价行为骗取信任度后提供异常服务并导致网络异常。当节点持续产生恶意行为时,本发明方法计算得到的直接信任度值低于其它两方法,由此可见,本发明方法对恶意节点的敏感度较高。
图6为网络中存在实施不实推荐行为的恶意节点时,智能beta信誉和动态信任值计算方法(ibrdt)、基于节点行为的物联网信任度评估方法和恶意行为检测方法(bitem)及本发明方法(nbtem)在相同仿真环境下,计算得到的推荐信任度值的准确率,以验证本发明方法是否能够提高推荐信任度值的准确性,并有效抑制节点的恶意推荐行为。由图6可见,随着恶意节点数量的不断增加,三种方法得到的推荐信任度评估的准确率均呈下降趋势,当网络中存在不同数量恶意节点的情况下,由本发明方法得到的推荐信任度的准确率始终高于其它两种方法,故本发明方法可以提高推荐信任度评估的准确性,有效抑制物联网中的策略性欺骗行为,以防止恶意节点获取服务影响网络节点的服务质量。
图7为ibrdt、bitem及本发明方法(nbtem)在物联网环境中存在不同数量节点时的传输能耗,由图7可知,当节点数量小于200时,本发明方法的节点传输能耗略高于其它两种方法;但是,随着节点数量的增多,本发明方法在传输能耗上的表现优于其它两种方法,由此可见,本发明方法在网络中存在大量节点时,可以有效降低传输能耗。