本发明涉及区块链领域,特别是一种基于车联网的区块链分布式数据共享方法。
背景技术:
最近,区块链技术与车联网(iov)的集成由于区块链的分散化、匿名性和信任等特点,越来越受到研究者和开发者的关注。现在两者结合的越发紧密,其效果也可见一斑。
如:专利号为cn109068299b的专利文件1《一种基于区块链的车联网架构及其工作方法》、专利号为cn111447177a的专利文件2《一种基于区块链的车联网信任管理方法》、专利号为cn111967051a的专利文件3《一种基于区块链的车辆间数据安全共享方法以及系统》,三者都是区块链技术+车联网技术,都实现了较为明显和优秀的技术效果。
但是专利文件1使用的区块链公式算法还存在着区块链节点的共识效率低,当网络规模较大时,仍然面临难以满足计算密集型业务需求及时延过长的问题,并不能适用于真实的物理场景的问题;专利文件2中还存在着以下两个问题:(1)贝叶斯推断的方式计算事件发生概率,参考维度低,信誉值也只有0、1两个维度的映射,并不能做出更加细粒度的筛选,(2)没有涉及到共识节点选择,在网络规模较大时,依然存在共识效率低,时延高的问题;专利文件3没有考虑到区块链共识节点选择的问题,使得存在着随着节点数量增加,区块链节点的共识效率降低、时延增加的问题,也即是,三者在区块链节点的共识效率上都存在不能满足要求的问题。
因此本发明提供一种的新的方案来解决此问题。
技术实现要素:
针对现有技术存在的不足,本发明的目的是提供一种基于车联网的区块链分布式数据共享方法,有效的解决了在现有技术中存在的区块链节点的共识效率不能满足要求的问题。
其解决的技术方案是,一种基于车联网的区块链分布式数据共享方法,所述数据共享方法包括以下步骤:
s1、车辆i利用传感器来采集数据,将数据通过无线通信上传至若干个节点j上,车辆i作为数据提供者,通过无线通信将数据与数据请求者共享,并将数据共享记录传输至节点j上,其中,节点j指路侧单元rsu,路侧单元rsu均部署在道路沿线,数据请求者是包括其他车辆在内的设备;
s2、采用车辆i与节点j主观逻辑模型计算节点j的信誉值,并从中选择信誉高的节点j作为共识节点;
s3、通过步骤s2筛选出来的共识节点执行dpos共识方法;
s4、将车辆数据共享记录存储为块数据,并添加到区块链中,此时区块验证者验证区块管理者生成的区块,其中,共识节点作为区块验证者,车辆i所在的节点j作为区块管理者,块数据包含在区块内。
进一步地,所述步骤s2中的车辆i与节点j的主观逻辑模型为:ωi→j:={bi→j,di→j,ui→j},即:
其中,bi→j,di→j,ui→j分别表示主观逻辑的信任、不信任和不确定三种程度,αi为积极评价数目,βi为消极评价数目,si→j为数据包成功传输的概率,表示数据传输的可靠性对主观逻辑模型的影响,车辆i在节点j所在地的信誉值t表示为:ti→j=bi→j+γui→j,其中γ为表示主观逻辑模型中的不确定程度的常数参数。
进一步地,所述步骤s2从以下方面来选择信誉高的节点作为共识节点:
a、车辆i与节点j之间的交互时效性:
令交互时效性总值为1,则
b、车辆i与节点j之间的交互效果:
令交互效果的总值为1,χ+τ=1,χ<τ,其中χ为积极评价的权值,σ为消极评价的权值;
c、车辆i与节点j之间的交互频率:
交互频率是一段时间窗口t内车辆i与节点j交互的次数ni→j与车辆i与其他节点交互的平均次数
ni→j=(αi+βi)
交互频率的公式即为:
其中,if为车辆i与节点j的交互频率,s是节点j的一个集合,s是车辆i的集合,经加权后的节点j的信誉值为:δi→j=ρi*ifi→j,其中ρi为权重,根据信誉值δi→j来筛选出共识节点。
进一步地,所述步骤s4进行区块验证包括步骤:
x1、区块管理者确认和发布区块;
x2、区块验证者对区块进行验证;
x3、步骤x2产生的验证结果需进行广播和比较验证;
x4、验证反馈结果到区块链管理者;
对于区块验证者m,经步骤x1-x4产生的延迟定义如下:
其中,
其中,b为传输带宽,
进一步地,所述区块验证者在进行验证时,区块管理者为区块验证者提供合约
ubm(q)=π[φq(lq)]-lrq
l是区块验证者m获得的奖励rq的权重参数,π[φq(lq)]是区块管理者的收益,定义安全延迟度量来平衡网络规模和验证者的块验证时间,表示如下:
其中,e1>0,e2>0分别为网络规模和验证延迟的预定义系数,pq是区块验证者的先验概率,tmax表示区块链用户可容忍的最大块验证延迟,z1>=1,z2>=1分别代表网络规模和验证延迟对区块验证的影响参数;
对于信誉排序为q的区块验证者m,定义区块验证者的收益函数为:
其中,η(rq)是关于区块验证者收益rq的单调递增估值函数,l'为区块验证过程的单位资源开销,其中单位资源开销是指计算资源开销和网络资源开销。
进一步地,所述区块验证者的等级由步骤s2得到信誉值时得到,根据信誉值,将区块验证者划分为不同的等级。
由于以上技术方案的采用,本发明与现有技术相比具有如下优点:
本发明在进行具体使用的时候,利用车辆i与节点j之间的交互时效性、交互效果和交互频率得到节点j的信誉值δi→j,进而筛选出共识节点,积极评价数目αi和消极评价数目βi利用车辆i与节点j之间的交互时效性、交互效果和交互频率得到,增加筛选出共识节点的效率,同时将车辆数据共享记录存储为块数据,并添加到区块链中,以实现数据共享的有效验证,避免在现有技术中存在的区块链节点j的共识效率不能满足要求的问题出现。
具体实施方式
为有关本发明的前述及其他技术内容、特点与功效,在以下实施例的详细说明中,将可清楚的呈现。
下面描述本发明的各示例性的实施例。
一种基于车联网的区块链分布式数据共享方法,所述数据共享方法包括以下步骤:
s1、车辆i利用传感器来采集数据,将数据通过无线通信上传至若干个节点j上,车辆i作为数据提供者,通过无线通信将数据与数据请求者共享,并将数据共享记录传输至节点j上,其中,节点j指路侧单元rsu,路侧单元rsu均部署在道路沿线,数据请求者是包括其他车辆在内的设备;
s2、采用车辆i与节点j主观逻辑模型计算节点的信誉值,并从中选择信誉高的节点作为共识节点;
s3、通过步骤s2筛选出来的共识节点执行dpos共识方法;
s4、将车辆数据共享记录存储为块数据,并添加到区块链中,此时区块验证者验证区块管理者生成的区块,其中,共识节点作为区块验证者,车辆i所在的节点j作为区块管理者;
所述步骤s2中的车辆i与节点j的主观逻辑模型为:ωi→j:={bi→j,di→j,ui→j},即:
其中,bi→j,di→j,ui→j分别表示主观逻辑的信任、不信任和不确定三种程度,αi为积极评价数目,βi为消极评价数目,si→j为数据包成功传输的概率,表示数据传输的可
靠性对主观逻辑模型的影响;
信誉值t计算公式为:ti→j=bi→j+γui→j,γ为表示主观逻辑模型中的不确定程度的常数参数;
所述步骤s2从以下方面来选择信誉高的节点作为共识节点:
a、车辆i与节点j之间的交互时效性:
令交互时效性总值为1,则
b、车辆i与节点j之间的交互效果:
令交互效果的总值为1,χ+τ=1,χ<τ,其中χ为正相互作用的权值,τ为负相互作用的权值,正相互作用χ增加节点j的信誉,负相互作用τ降低节点j的信誉,
c、车辆i与节点j之间的交互频率:
是一段时间窗口t内车辆i与节点j交互的次数ni→j与车辆i与其他节点交互的平均次数
ni→j=(αi+βi)
交互频率的公式即为:
其中,if为车辆i与节点j的交互频率,s是节点j的一个集合,s是车辆i的集合,其中积极评价数目αi和消极评价数目βi由车辆i与节点j之间的交互时效性、交互效果和交互频率决定;
节点j的信誉值公式为:δi→j=ρi*ifi→j,其中ρi为权重,根据信誉值δi→j来筛选出共识节点,其中信誉值δi→j高于信誉值阈值时,才能被筛选为共识节点,信誉值阈值可根据不同的安全级别要求进行设置。
所述步骤s4进行区块验证包括步骤:
x1、区块管理者确认和发布区块;
x2、区块验证者对区块进行验证;
x3、步骤x2产生的验证结果需进行广播和比较验证;
x4、验证反馈结果到区块链管理者;
对于区块验证者m,经步骤x1-x4产生的延迟定义如下:
其中,
其中,b为传输带宽,
所述区块验证者在进行验证时,区块管理者为区块验证者提供合约
ubm(q)=π[φq(lq)]-lrq
l是区块验证者m获得的奖励rq的权重参数,π[φq(lq)]是区块管理者的收益,若区块验证者更快完成验证就会得到更小的延迟lq,参与区块验证的区块验证者越多,区块验证阶段就越安全,但这将导致更大的延迟,因为区块验证者可能需要通过多跳中继与验证者通信,定义安全延迟度量来平衡网络规模和验证者的块验证时间,表示如下:
其中,e1>0,e2>0分别为网络规模和验证延迟的预定义系数,pq是区块验证者的先验概率,tmax表示区块链用户可容忍的最大块验证延迟,z1>=1,z2>=1分别代表网络规模和验证延迟对块验证的影响参数;
对于信誉排序为q的区块验证者m,定义区块验证者的收益函数为:
其中,η(rq)是关于区块验证者收益rq的单调递增估值函数,l'为块验证过程的单位资源开销,其中单位资源开销是指计算资源开销和网络资源开销,具有较高的信誉的区块验证者具有较大的收益,区块验证者也希望通过在块验证中利用最小化资源消耗来得到最大化其收益,具体来说,区块验证者的目标是使区块验证所获得的效用最大化;
所述区块验证者的等级由步骤s2得到信誉值时得到,根据信誉值,将区块验证者划分为不同的等级。
本发明在进行具体使用的时候,车辆i与节点j之间的交互时效性、交互效果和交互频率得到节点j的信誉值δi→j,进而筛选出共识节点,积极评价数目αi和消极评价数目βi利用车辆i与节点j之间的交互时效性、交互效果和交互频率得到,增加筛选出共识节点的效率,同时将车辆数据共享记录存储为块数据,并添加到区块链中,以实现数据共享的有效验证,避免在现有技术中存在的区块链节点j的共识效率不能满足要求的问题出现。