APP下载

车联网中基于区块链的信用体系研究*

2019-12-11李凤祥陈秀真

通信技术 2019年12期
关键词:凭证合法比特

李凤祥,陈秀真,马 进

(1.上海交通大学 网络空间安全学院,上海 200240;2.上海市信息安全综合管理技术研究重点实验室,上海 200240)

0 引 言

近年来,随着智慧城市、智能交通的逐步发展,车联网受到了广泛关注。车联网中,车辆接收其他车辆广播的事件、路况等信息来确定行车方案。如果存在恶意车辆散布虚假消息,将对正常车辆造成严重干扰,甚至威胁驾驶员的人身安全。因此,消息接收车辆需要了解消息发送车辆的信用值,通过对消息发送方信用值的分析判断消息的真实性。基于区块链近几年的迅速发展及其在很多领域的引进,车联网领域同样可以借鉴区块链的核心思想,通过一个去中心化的、分布式的、透明的账本来记录、更新车辆的信用值。

目前,关于区块链在车联网中的应用已有一些研究。文献[1]针对车联网中车辆信用值进行研究,但其重点在于讨论区块链的构建,对于信用值的迭代更新没有详细展开。文献[2-4]讨论的是车联网中的隐私保护问题,但这些文献中引入的均是基于工作量证明[5]的区块链。工作量证明这一概念由比特币提出,并且实践证明这一机制可以很好地保证区块链的稳定性。但是,工作量证明需要的强大算力会耗费巨大能源,且需要大量的计算时间。文献[6]指出比特币每年的电力消耗和伊朗每年的电力消耗处于同一数量级。

因此,本文提出了一种车联网中基于位置证明的区块链,以替代基于工作量证明的区块链,并通过基于位置证明的区块链保存、更新车辆的信用值。当车辆接收到其他车辆发送的消息时,车辆会查询区块链中保存的消息发送方车辆的信用值,然后通过贝叶斯概率公式判断消息的真实性。

1 基于位置证明的区块链

1.1 位置凭证

论文提出的基于位置证明的区块链首先要解决位置凭证问题,即车辆如何证明自己当前所处的位置[7]。文献[8]指出GPS可能会被欺骗,并不能作为位置凭证。图1为本文提出的获取位置凭证的解决方案:车辆在t1时刻向RSU发送包含其公钥PKv的申请,RSU将返回一个随机数Nonce,车辆用自己的私钥SKv对Nonce签名,并在t2时刻将签名发送给RSU。RSU将首先计算t2-t1这一时间是否在给定阈值t内,如果超出t,则不颁发凭证。如果没有超出t,则检验其签名的正确性。签名正确则颁发凭证,反之不颁发。凭证包括申请时间t1、车辆的公钥PKv以及位置Pid。凭证的有效期为t1到t1+∆t,即如果当前时间超过t1+∆t,车辆提供的位置凭证为无效凭证。RSU是一种路边固定设备,每一个RSU可以提供一个独一无二的Pid位置证明。

图1 获取位置凭证流程

1.2 位置证明

位置证明如图2所示。区块中包含的是前一个区块计算出的位置Pid,当前区块不再需要寻找Nonce,而是提供Pid的位置凭证。令B为当前区块,B´为B的下一个区块,N为Pid的总数,则由B产生的Pid为Ph(B)modN,h(B)为B的哈希值。B´需要提供Ph(B)modN的位置证明,如果有多个区块同时提供了Ph(B)modN的位置证明,则选取位置证明中t1时间与B区块产生时间最接近的区块为B´。区块最后需要被RSU签名的原因在于:使当前区块无法预测其最终的哈希值,进而无法提前预知下一个区块的Pid。

图2 位置证明

1.3 具体流程

基于位置证明的区块链如图3所示,根据当前区块的哈希值,确定下一个区块的Pid。拥有Pid位置证明的节点负责组装区块,组装后由RSU签名,签名后的区块即为新区块。接下来,需要判断新区块的合法性。首先判断新区块提供的位置凭证是否为Pid的位置凭证,如果不是则丢弃该区块。其次判断位置凭证是否超过其有效期,若超过则丢弃该区块。如果由多个节点同时发布新区块,则需比较这些节点提供的位置凭证申请时间,将最接近于当前区块发布时间的位置凭证的持有区块作为当前区块的下一区块。类似于比特币,合法节点总是在最长合法链后组装区块;在最长合法链中,当一个区块之后有超过10个区块时,则该区块为确认区块。

图3 基于位置证明的区块链

2 车联网信用体系

2.1 基于信用值计算事件真实性

定义车辆接收到的所有消息集合为M={M1,M2,…,Mj,…},其中Mj代表关于事件Ej的所有消息集合。事件Ej代表某种交通事件,如在某地发生了某种事故。对于事件Ej,消息接收车辆可能收到多条来自不同消息发送车辆的消息。这些不同来源、描述同种事件的消息构成了Mj。定义事件Ej的信用值集合为Cj={C1j,C2

j,…,Ckj,…},其中 Ck

j表示发送消息Ej的编号为k的车辆的信用值,Ckj在区块链中查询。在Mj中,只有包含的位置凭证与事件Ej声明的位置相符的消息,才会存在于Cj。

消息接收车辆基于Cj,运用贝叶斯概率公式计算事件Ej发生的概率p(Ej|Cj):

对于不同的事件Ej会有不同的阈值THRj。只有事件Ej发生的概率p(Ej|Cj)超过阈值THRj,消息接收车辆才会认为事件Ej真实存在。

2.2 信用值更新

事件Ej声明的位置内的车辆,将在区块链内上传事件Ej是否发生的信息。假设M台车辆上传事件Ej是真实的,N台车辆上传事件Ej是虚假的。大于阈值THR时,M台车辆的信用值T更新为:

N台车辆的信用值T´更新为:

其中β>α的设定是为了满足建立信任比毁坏信任更困难这一原则[9]。车辆信用值是在区块链中的区块内被更新的。

3 方案性能分析

3.1 实验分析

计算次数结果如表1所示,PoW(n)表示证明类型为难度为n工作量证明,难度n在本实验中代表寻找一个随机值Nonce,使加入Nonce后的哈希值的前n位为0。PoL表示证明类型为位置证明。从表1可以看出,随着工作量证明难度的增加,需要尝试的Nonce数量越来越多。当工作量证明的难度为8时,需要计算超过15亿次才能找到合适的Nonce,而位置证明只需要计算一次位置凭证是否符合要求。因此,基于位置证明的区块链与基于工作量证明的区块链相比,可以大大减少计算次数,从而节省计算消耗的时间和能源。

表1 计算次数结果表

图4、图5分别为正常车辆信用值变化图和恶意车辆信用值变化图,其中的1%、10%、20%为恶意车辆数量占总车辆数量的比值。可以看出,正常车辆随着发送真实消息次数的增多,信用值不断升高,最终趋近于1。恶意车辆随着发送虚假信息次数的增多,信用值不断降低,最终趋近于0。

图4 正常车辆信用值变化

图5 恶意车辆信用值变化

图6、图7分别为真实事件发生概率和虚假事件发生概率,每个图中分为3种场景,分别为车辆总数为100辆车、车辆总数为50辆车和车辆总数为10辆车。在这3种场景中,恶意车辆占10%。由图6可以看出,随着信用值的不断更新,正常车辆发送的消息所包含的事件的正确性概率趋近于1。由图7可以看出,随着信用值的不断更新,恶意车辆发送的消息所包含的事件的正确性概率趋近于0。特别地,如果选择事件Ej的THRj大于0.8,结合图6、图7可以看出,本文提出的信用体系将能较好地判断事件Ej的真实性。

3.2 稳定性理论分析

区块链主要面临51%攻击、分叉和Sybil攻击。本文将从这3个方面分析基于位置证明的区块链的稳定性问题。

3.2.1 51%攻击

51%攻击由比特币提出。在工作量证明的比特币中,如果攻击者的算力超过总算力的51%,意味着攻击者生成区块的速度比合法节点生成区块的速度快。攻击者可以从某一节点进行分叉,由于攻击者生成区块的速度更快,分叉支链的长度最终将超过最长合法链的长度,进而自身变成最长合法链。由于比特币发展迅速、规模大、总算力强,因此对于比特币,51%攻击只是理论上存在。在本文提出的位置证明的区块链中,攻击者无法预测下一个区块需要的位置证明,也无法确保在当前区块确定后最快拿到下一区块需要的位置证明。因此,攻击者若想从某一结点进行分叉,并最终使支链发展成最长合法链,只能通过控制超过51%的节点。由于与RSU申请位置证明的节点为车辆实体,控制超过51%的节点也就意味着需要控制超过51%的车辆。显然,针对位置证明的51%也只是理论上存在。

图6 真实事件发生概率

图7 虚假事件发生概率

3.2.2 分叉

分叉是指区块链中有多条合法的平行链,这些链并不是攻击者造成的,而是自然形成的。分叉不利于区块链的稳定性,因为分叉会将合法节点的总算力分散,使攻击者只需要低于51%算力便可发动51%攻击。在比特币中,节点只会在最长合法链后继续计算区块,因为只有最长合法链才会被认可,计算出区块才会得到比特币作为回报,在其他链上计算区块只会浪费算力,将白白消耗电力能源。在比特币中,由于利益驱动导致不会有大量分叉。在本文提出的位置证明的区块链中,也需要引入奖励机制。当最长合法链中的区块产生时,发布区块的节点会得到一定奖励。当节点向RSU申请位置证明时,需要付出一定的代价。这样当区块链中存在多条合法的平行链时,节点会在最长合法链后发布区块,因为只有这样才能获得奖励,而如果在其他链后发布区块,需要向RSU申请位置证明,从而白白付出代价却获得不到奖励。

3.2.3 Sybil攻击

Sybil攻击是车联网中比较典型的一种攻击。攻击节点通过伪造一个或多个身份广播虚假消息,对合法节点造成干扰。本文提出的位置凭证需要节点,即车辆实体用自己的公钥发出申请,RSU会颁发给节点包含其公钥的位置凭证。当节点广播消息时,需要附带RSU颁发的位置凭证。当攻击节点想要伪造身份发送虚假消息时,由于其无法提供有效的位置凭证,接收消息的节点将忽略此条消息。

4 结 语

论文针对车联网中车辆的信用值问题,提出了基于区块链的信用体系。论文通过基于位置证明的区块链保存、更新车辆的信用值,运用贝叶斯概率公式判断消息内描述的事件的真实性。通过实验和理论分析,证明提出的基于位置证明的区块链可以高速、稳定运行,从而验证了提出的基于区块链的信用体系可以准确判断接收到的消息的真实性。

猜你喜欢

凭证合法比特
锚钉结合编织缝合法在伸肌腱止点损伤中应用的疗效观察
2021年《理财》《财经审计法规选编》征订单
《中国农业会计》(月刊)收款凭证
合法外衣下的多重阻挠
《中国农业会计》(月刊)收款凭证
比特币还能投资吗
比特币分裂
比特币一年涨135%重回5530元
畅捷通T3凭证处理常见问题解析
报告