车载网中基于区块链的路况预警方法和系统与流程

文档序号:17333974发布日期:2019-04-05 22:17阅读:217来源:国知局
车载网中基于区块链的路况预警方法和系统与流程

本发明涉及车载网中基于区块链技术的路况预警方案,具体涉及一种车载网中基于区块链的路况预警方法和系统。



背景技术:

车载网是一种具有移动自组织网络大部分特性的特殊移动自组织网,在车载网中装配无线通信作用的节点(这些节点大多数情况下由车辆和路边单元构成)有数千个,这些无线节点在车载网中采用多跳的方式通信。在车载网中,每一个车辆节点都具有3个角色(发送者、接收者和路由器)在车辆网络中收发信息,为人们搭建了便捷舒适的交通路况,这增加了车辆之间沟通方式的积极性,也能准确发现道路状况(车辆拥堵、交通事故等)。在车载网节点之间采用无线通信方式的包括:车辆节点之间、路边单元rsu之间以及车辆节点和路边单元rsu之间。车载网是物联网的一部分,它在实现车辆间无线通信的同时还可以对车载网中的数据进行存储处理,以及大数据分析,使网络系统得到很大程度的改善、信息服务的质量大幅度地提高,使大数据等行业得到发展的同时,也对国家经济和社会的发展有促进作用。如今,车载自组织网络正在朝着人-车-事物-环境深度融合的方向发展,改善了交通状况,缩短了出行时间,给人们的出行带来了极大的便利。

21世纪初,我国国民经济以惊人的速度增长,国民生活水平不断提高,使我国机动车的数量不断增长。酒后驾车、违反交通规则等行为的增多也增加了道路拥堵的严重性。交通堵塞问题给我国公民的生活带来了严重不便,交通堵塞、交通事故等问题是车载网中亟待解决的问题。如果能够提前知道哪条路的交通不畅,使更少的车辆行驶在交通不畅的路段就可以缓解车载网中的交通问题。因此,提出一种有效的预警方案可以缓解交通状况。

目前现有的实现路况预警消息的传播,大多采用多播路由协议,难以满足路况预警消息的实时性和可靠性。例如,最优中继算法,中继算法的基本思想是当车辆收到周围邻居广播的告警消息后采用中继算法选出最优中继车辆进一步转发。



技术实现要素:

本发明的实施例提供了一种车载网中基于区块链的路况预警方法和系统,能够有效的对路况进行预警。

一种车载网中基于区块链的路况预警方法,包括:

步骤1,当监测到道路出现交通事故或道路拥堵状况时,车载网中的所述道路上的至少两个车辆分别生成路况信息,并争夺路况信息转发权;

步骤2,争夺到路况信息转发权的第一车辆将生成的所述路况信息的摘要转发给所述道路上的其他车辆,以请求所述其它车辆为所述路况信息的摘要进行签名,且将签名后的所述路况信息的摘要转发给归属所述道路的第一路边单元;

步骤3,所述第一路边单元接收签名后的所述路况信息的摘要,且对签名后的所述路况信息的摘要进行验签;

步骤4,当验签成功时,所述第一路边单元将所述路况信息的摘要转发给所述车载网中的其它路边单元,使得所述其它路边单元将所述路况信息的摘要发送给所管辖范围内的车辆,以便车辆动态地规划行车路线。

所述方法还包括:

步骤5,所述第一路边单元将所述路况信息的摘要转发到云端,使得所述云端以区块链的结构存储所述路况信息的摘要。

所述步骤1包括:

所述至少两个车辆对所述路况信息进行打包;

所述至少两个车辆分别对各自打包后的所述路况信息进行第一次hash运算,得到至少两个车辆各自的路况信息的摘要;所述至少两个车辆分别根据各自的路况信息的摘要,计算一个随机数,且对所述路况信息的摘要和所述随机数进行第二次hash运算,得到第二hash运算值,使得所述第二hash运算值满足路况信息预定难度值,所述路况信息预定难度值由车辆管理中心设置;

第一个计算出满足所述路况信息预定难度值的随机数的车辆作为所述第一车辆,获得路况信息转发权。

所述步骤2包括:

所述第一车辆将所述路况信息的摘要作为原始路况信息的摘要,发送给所述其它车辆;

所述其它车辆分别用本地私钥对所述原始路况信息的摘要进行加密,生成签名;并将签名后的所述原始路况信息的摘要发送给所述第一车辆;

所述第一车辆将所述原始路况信息的摘要和接收到的所有签名后的所述路况信息的摘要一起发送给所述第一路边单元。

所述步骤3包括:

所述第一路边单元根据所述车辆对应的公钥,对签名后的所述路况信息的摘要进行解密,生成解密后的路况信息的摘要;

所述第一路边单元判断解密后的路况信息的摘要与所述原始路况信息的摘要是否相同;如果相同,则判断解密后的所述路况信息的摘要通过验签;

当通过验签的解密后的所述路况信息的摘要的数量与所有签名后的所述路况信息的摘要的数量之间的比值大于预定比例时,则所述第一路边单元判断所述原始路况信息的摘要正确。

所述步骤5包括:

所述第一路边单元将所述原始路况信息的摘要发送给云端,使得所述云端定时将所述原始路况信息的摘要打包为区块;

所述第一路边单元将打包所述原始路况信息的摘要的区块,链接到区块链上;且更新所述云端的区块链账本。

所述步骤1之前,所述方法还包括:

车辆到所述车载网的车辆管理中心进行注册;

所述车辆管理中心对车辆的身份进行验证;

验证通过时,所述车辆管理中心将所述车辆加入到所述车载网。

所述车辆管理中心对车辆的身份进行验证的步骤包括:

步骤a,所述车辆管理中心生成一个二进制随机数,发送给所述车辆,作为所述车辆的私钥;

步骤b,所述车辆管理中心将所述私钥进行椭圆曲线乘法处理,生成所述车辆的公钥。

所述步骤b之后,所述方法包括:

所述车辆管理中心根据所述公钥进行sha256和ripemd160两次hash函数处理,生成所述车辆的用户名;

所述车载网中的所述道路上的至少两个车辆分别生成路况信息的步骤具体为:车载网中的所述道路上的至少两个车辆分别生成路况信息,所述路况信息携带所述车辆的用户名。

所述第一路边单元根据所述车辆对应的公钥,对签名后的所述路况信息的摘要进行解密,生成解密后的路况信息的摘要的步骤包括:

所述第一路边单元根据所述路况信息携带的所述车辆的用户名,查找所述用户名对应的公钥;

所述第一路边单元根据所述用户名对应的公钥,对携带所述用户名的签名后的所述路况信息的摘要进行解密,生成解密后的路况信息的摘要。

由上述本发明的实施例提供的技术方案可以看出,本发明实施例中不需要可信任的第三方处理路况信息,就可辨别出正确路况并将正确的路况广播给其它车辆节点,能够进行有效的对路况进行预警。

本发明附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本发明的实践了解到。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。

图1为本发明的车载网中基于区块链的路况预警方法的流程示意图;

图2为本发明的车载网中基于区块链的路况预警系统的连接示意图;

图3为本发明的车载网中路况预警方法中区块结构示意图;

图4为本发明的hyperledgerfabric架构示意图;

图5为本发明的hyperledgerfabric交易流程示意图;

图6为本发明的仿真结果示意图。

具体实施方式

下面详细描述本发明的实施方式,所述实施方式的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施方式是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。

为便于对本发明实施例的理解,下面将结合附图以几个具体实施例为例做进一步的解释说明,且各个实施例并不构成对本发明实施例的限定。

图1为本发明的车载网中基于区块链的路况预警方法的流程示意图;图2为本发明的车载网中基于区块链的路况预警系统的连接示意图;图3为本发明的车载网中路况预警方法中区块结构示意图;图4为本发明的hyperledgerfabric架构示意图;图5为本发明的hyperledgerfabric交易流程示意图;图6为本发明的仿真结果示意图。以下结合各图进行描述。

如图1,为本发明所述的一种车载网中基于区块链的路况预警方法,包括:

步骤10,车辆到所述车载网的车辆管理中心进行注册;所述车辆管理中心对车辆的身份进行验证;验证通过时,所述车辆管理中心将所述车辆加入到所述车载网。

其中,所述车辆管理中心对车辆的身份进行验证的步骤包括:

步骤a,所述车辆管理中心生成一个256bits二进制随机数,发送给所述车辆,作为所述车辆的私钥;

步骤b,所述车辆管理中心将所述私钥进行椭圆曲线乘法处理,生成所述车辆的公钥。

步骤c,所述车辆管理中心根据所述公钥进行sha256和ripemd160两次hash函数处理,生成所述车辆的用户名.

步骤11,当监测到道路出现交通事故或道路拥堵状况时,车载网中的所述道路上的至少两个车辆分别生成路况信息,并争夺路况信息转发权;其中,所述路况信息携带所述车辆的用户名。

其中,所述步骤11包括:

所述至少两个车辆对所述路况信息进行打包;

所述至少两个车辆分别对各自打包后的所述路况信息进行第一次hash运算,得到至少两个车辆各自的路况信息的摘要;所述至少两个车辆分别根据各自的路况信息的摘要,计算一个随机数,且对所述路况信息的摘要和所述随机数进行第二次hash运算,得到第二hash运算值,使得所述第二hash运算值满足路况信息预定难度值,所述路况信息预定难度值由车辆管理中心设置;

第一个计算出满足所述路况信息预定难度值的随机数的车辆作为所述第一车辆,获得路况信息转发权。

步骤12,争夺到路况信息转发权的第一车辆将生成的所述路况信息的摘要转发给所述道路上的其他车辆,以请求所述其它车辆为所述路况信息的摘要进行签名,且将签名后的所述路况信息的摘要转发给归属所述道路的第一路边单元;

其中,所述步骤12包括:

所述第一车辆将所述路况信息的摘要作为原始路况信息的摘要,发送给所述其它车辆;

所述其它车辆分别用本地私钥对所述原始路况信息的摘要进行加密,生成签名;并将签名后的所述原始路况信息的摘要发送给所述第一车辆;

所述第一车辆将所述原始路况信息的摘要和接收到的所有签名后的所述路况信息的摘要一起发送给所述第一路边单元。

可选的,所述述其它车辆分别用本地私钥对所述原始路况信息的摘要进行加密,生成签名的步骤之前,所述方法还包括:

所述其它车辆比较本地生成的原始路况信息携带的路况信息与接收的所述原始路况信息的摘要中携带的路况信息是否一致,如果不一致,则拒绝进行签名。

步骤13,所述第一路边单元接收签名后的所述路况信息的摘要,且对签名后的所述路况信息的摘要进行验签;

其中,所述步骤13包括:

所述第一路边单元根据所述车辆对应的公钥,对签名后的所述路况信息的摘要进行解密,生成解密后的路况信息的摘要;该步骤具体为:所述第一路边单元根据所述路况信息携带的所述车辆的用户名,查找所述用户名对应的公钥;所述第一路边单元根据所述用户名对应的公钥,对携带所述用户名的签名后的所述路况信息的摘要进行解密,生成解密后的路况信息的摘要。

所述第一路边单元判断解密后的路况信息的摘要与所述原始路况信息的摘要是否相同;如果相同,则判断解密后的所述路况信息的摘要通过验签;

当通过验签的解密后的所述路况信息的摘要的数量与所有签名后的所述路况信息的摘要的数量之间的比值大于预定比例时,则所述第一路边单元判断所述原始路况信息的摘要正确。

步骤14,当验签成功时,所述第一路边单元将所述路况信息的摘要转发给所述车载网中的其它路边单元,使得所述其它路边单元将所述路况信息的摘要发送给所管辖范围内的车辆,以便车辆动态地规划行车路线。

步骤15,所述第一路边单元将所述路况信息的摘要转发到云端,使得所述云端以区块链的结构存储所述路况信息的摘要。

其中,所述步骤15包括:

所述第一路边单元将所述原始路况信息的摘要发送给云端,使得所述云端定时将所述原始路况信息的摘要打包为区块;

所述第一路边单元将打包所述原始路况信息的摘要的区块,链接到区块链上;且更新所述云端的区块链账本。

以下描述本发明的应用场景:

本发明提出了一种基于区块链技术的车载网中路况预警方案。每条道路上的车辆争夺路况信息的传递权力,争夺到路况信息记账权的车辆,需要该条路上其它车辆为该条路况信息进行签名,避免车辆对路况信息造假,争夺到路况信息的传递权力的车辆将路况信息转发给距离其最近的路边单元,路边单元接收到路况信息后,一方面将路况信息转发给其他路边单元,其他路边单元将路况信息转发给其管辖范围道路上的车辆,车辆接收到路况信息后动态改变自己的行车路线;另一方面路边单元接收到路况信息后发送到云端以区块链的形式进行存储,当路况信息出现错误时,可以在云端查询到发送该条错误路况信息的车辆,对该车辆进行一定的惩罚。本发明能够实现在保证路况信息正确的条件下达到路况预警的目的,从而缓解了城市环境下道路拥堵等状况。

假设存在firstroad、secondroad、thirdroad、fourthroad路段,根据路况信息有效的条件可知,每条路段若发生拥堵或者交通事故时,此段路上至少有4辆车发送相同路况信息,现假设每条路段各有10辆车(允许10辆车中至多存在6辆故障车),此时,firstroad出现拥堵,在fabric联盟链上的仿真步骤如下:

1)用go语言编写链码chaincode002.go,链码中的主要内容如下。

第一步,采用import方法引入依赖包“fmt”“shim”“peer”。

第二步,构建firstroadcongestion结构体。

第三步,采用init方法进行初始化。

第四步,构建invoke方法实现firstroadcongestion(第一条路拥堵)路况信息。

2)将链码部署到fabric网络中。打开3个终端,第一个终端用于启动网络,第二个终端用于编译启动链码,第三个终端用于操作链码。

本发明提出的路况告警消息是由此路段的车辆节点采用区块链技术对同一条路况告警消息达成共识后,转发给路边单元,由路边单元发送给其管辖范围的车辆。本发明为了保证路况信息的正确性,引入区块链技术实现在保证路况信息正确的条件下,达到路况预警的效果。

区块链技术具有以下特性:

1)分散控制:在区块链技术中不需要可信任的第三方制定规则。

2)数据透明性和可审查性:系统中执行的每个事务的完整副本都存储在区块链的每个节点上,且所有节点都是对等公开的。

3)分布式共识:在区块链技术中打破了集中共识的范式,采用所有网络节点共同参与交易的方式。

4)安全性:当区块链被恶意操纵时,所有区块结构都需要改变,这种改变使其它节点知道此节点被别人篡改,能够立即察觉到,此外,区块链还能对交易进行验证。

本发明具有以下有益效果:

1)不需要可信任的第三方处理路况信息,就可辨别出正确路况并将正确的路况广播给其它车辆节点;

2)区块链技术的应用,使存储在区块内的正确的路况信息不能被篡改;

3)车辆节点发送的路况信息具有可追溯性,如果路况信息出现问题,可查找出有问题车辆节点。

如图2所示,本发明还提供一种车载网中基于区块链的路况预警系统,包括:车载网中的车辆、车载网中的路边单元;

所述车辆用于,当监测到道路出现交通事故或道路拥堵状况时,车载网中的所述道路上的至少两个车辆分别生成路况信息,并争夺路况信息转发权;争夺到路况信息转发权的第一车辆将生成的所述路况信息的摘要转发给所述道路上的其他车辆,以请求所述其它车辆为所述路况信息的摘要进行签名,且将签名后的所述路况信息的摘要转发给归属所述道路的第一路边单元;

所述第一路边单元用于,接收签名后的所述路况信息的摘要,且对签名后的所述路况信息的摘要进行验签;当验签成功时,所述第一路边单元将所述路况信息的摘要转发给所述车载网中的其它路边单元,使得所述其它路边单元将所述路况信息的摘要发送给所管辖范围内的车辆,以便车辆动态地规划行车路线。

所述系统还包括:云端(服务器),用于接收所述第一路边单元将所述路况信息的摘要,使得所述云端以区块链的结构存储所述路况信息的摘要

以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1