一种区块链出块时间的确定方法、装置、设备及存储介质制造方法及图纸

技术编号:35159236 阅读:18 留言:0更新日期:2022-10-12 17:17
本发明专利技术公开了一种区块链出块时间的确定方法、装置、设备及存储介质,具体涉及区块链技术领域,本发明专利技术通过获取基于区块链系统中的历史信息进行归一化处理,然后通过建立新的BP算法模型,代入历史信息数据进行训练和计算,当一个出块结束后,再次进行权重更新,剔除差别较大后再次代入训练用于后续区块的最佳出块时间预测,同时获取实时算力和系统算力,调整区块输出难度后将前一个区块生成节点的区块生成周期的终止出块时间和所述节点间过渡时间之和,作为本机节点在本次区块生成周期的起始出块时间,最后由BP算法模型进行计算,得到下一个分区的最佳预测出块时间,从而可以根据历史数据对出块时间进行快速确定。历史数据对出块时间进行快速确定。历史数据对出块时间进行快速确定。

【技术实现步骤摘要】
一种区块链出块时间的确定方法、装置、设备及存储介质


[0001]本专利技术涉及区块链
,更具体地说,本专利技术涉及一种区块链出块时间的确定方法、装置、设备及存储介质。

技术介绍

[0002]区块链是指通过去中心化和去信任的方式集体维护一个可靠数据库的技术,区块链是把一段时间内发生的事务处理以区块为单位进行存储,并以密码学算法将区块按时间先后顺序连接成链条的一种数据结构,从本质上讲,它是一个共享数据库,存储于其中的数据或信息,具有“不可伪造”、“全程留痕”、“可以追溯”、“公开透明”和“集体维护”等特征,基于这些特征,区块链技术奠定了坚实的“信任”基础,创造了可靠的“合作”机制,具有广阔的运用前景。
[0003]随着以比特币为代表的数字加密货币的强势崛起,新兴的区块链技术逐渐成为学术界和产业界的热点研究课题,区块链技术的去中心化信用、不可篡改和可编程等特点,使其在数字加密货币、金融和社会系统中有广泛的应用前景,然而,与蓬勃发展的区块链商业应用相比,区块链的基础理论和技术研究仍处于起步阶段,许多更为本质性的、对区块链产业发展至关重要的科学问题亟待研究跟进,区块链技术的发展被业内人士广泛看好,这个越来越受青睐的趋势会一直持续,这些趋势不一定以区块链的形式直接出现,可能会作为区块链技术的衍生品兴起,区块链应用已经从最初单纯的数字货币过渡到更泛的金融业,并且渗透到社会中的很多领域,比如身份验证、跨境支付、文件存储、物联网等,其中金融领域是目前最成熟、应用最广的领域,区块链技术作为当下最热门的技术之一,值得我们投入更多的时间与精力进行学习和研究。
[0004]在一个区块链系统中,交易事务在区块链出块前并不能被确定执行,一般的区块链系统都是要等到出块之后才能确定交易事务成功,所以在区块链出块之前,交易事务提交方必须等待区块链出块才能确定交易成功,而等待的过程无疑为交易多方增加了巨大的成本,而在一个区块链系统中,新生产节点必须基于上一个区块生产新区块,因此新生产节点必须在指定的时候内接收到上一个区块的内容,否则只能跳过,快速出块虽然可以让交易事务快速执行成功,但是如果出块时间太短,新节点很大可能接收不到上一个区块的内容,进而频繁出现跳块,只要有跳块,系统就会出现临时分叉,尽管EOS的DPOS的定时出块和最长链共识让系统很大可能最终达成共识,但是也会造成更多缺块,进而降低了有效单位出块数量,得不偿失,且出块的速度会对整个区块链系统的软硬件系统造成负担,造成系统成本的增加,而现有技术中难以对出块时间进行快速确定,因此,研究一种新的区块链出块时间的确定方法、装置、设备及存储介质来解决上述问题具有重要意义。

技术实现思路

[0005]为了克服现有技术的上述缺陷,本专利技术提供了一种区块链出块时间的确定方法、装置、设备及存储介质,本专利技术所要解决的技术问题是:最佳出块时间难以快速确定的问
题。
[0006]为实现上述目的,本专利技术提供如下技术方案:一种区块链出块时间的确定方法,包括如下步骤:
[0007]S1、获取区块链系统中的历史交易信息、区块交易相关参数、服务质量信息、区块难度和区块时间戳集合,并基于全网最新区块高度和采样窗口获取下一区块的区块难度,得到历史数据集。
[0008]S2、提取区块链系统中历史数据集内的与出块时间相关的历史数据,并对其进行归一化处理,基于区块时间戳集合计算平均出块时间差集合,计算采样窗口中的区块的平均出块时间间隔。
[0009]S3、获取实时算力和系统算力,计算实时算力和系统算力的算力差,并根据算力差与PID算法公式输出难度调整参数,将前一个区块生成节点的区块生成周期的终止出块时间和所述节点间过渡时间之和,作为本机节点在本次区块生成周期的起始出块时间。
[0010]S4、由区块链中的共识节点接收交易请求和区块链系统中的内部信息,并基于此对下一个最佳出块时间进行预测,确定下一个的最佳预测出块时间。
[0011]作为本专利技术的进一步方案:所述对下一个最佳出块时间进行预测的具体方法为:
[0012]在输入的所有历史数据中选出最大的等待时间。
[0013]输入层归一化处理的公式为:
[0014][0015]其中,hw
max
为所有输入层历史数据中的最大等待时间。
[0016]输出层归一化处理的公式为:
[0017][0018]其中,pw
max
为所有输出层历史数据中的最大等待时间。
[0019]建立一个新的BP算法模型,并确定BP算法的学习率,使用归一化之后的历史数据对BP算法进行训练,以适应当前的情形,调用历史数据查看基础数据相似度较高的以往的最佳出块时间,如果有则采用,否则使用预测出块时间作为该区块的输入层,调用BP算法,显示预测结果,当一个出块结束后,将其实际出块时间与预测出块时间置于BP算法中进行权重更新,剔除数据中参考梯度的差值的绝对值较大的至少一个历史时间,将更新完毕的权重和实际等待时间立刻用于后续区块的最佳出块时间预测。
[0020]作为本专利技术的进一步方案:所述起始出块时间依据前一个区块生成节点的区块生成周期和节点间过渡时间确定,所述节点间过渡时间大于节点内出块时间,所述节点内出块时间为单个节点的区块生成周期内的出块间隔。
[0021]作为本专利技术的进一步方案:所述区块链系统中的交易信息包括区块链网络共识节点中待生成区块的时间戳信息和各交易的交易数据。
[0022]作为本专利技术的进一步方案:所述交易数据包括交易哈希值、待提交到共识节点的交易数量,提交到共识节点的平均时间,所述服务质量信息包括:与服务优先级相关联的优先级别数字和与服务质量相关联的服务响应等级,所述优先级别数字在一个预定的阈值范围之内。
[0023]作为本专利技术的进一步方案:所述获取下一区块的区块难度的方法为:
[0024]计算当前及之前的区块难度平均值Davg,计算当前及之前的区块出块时间的平均值STavg,获取预期出块时间T,得到下一区块的区块难度Dnext=Davg*T/STavg。
[0025]作为本专利技术的进一步方案:所述区块交易数相关参数包括指定N个区块内的平均交易数,其中N为大于或等于1的正整数,所述BP神经网络的学习率设定为0.4。
[0026]一种区块链出块时间的确定装置,所述装置包括:获取模块、计算模块、处理模块、输出模块和确认模块。
[0027]所述获取模块,用于获取区块链中的出块相关历史数据。
[0028]所述处理模块,用于对获取的出块相关历史数据进行归一化处理,具体处理方法为:对于每一种区块链出块相关的历史数据,基于数据解析法及数据字段格式解析,生成数据内容解析结果,并建立每一种网络安全设备的网络安全数据的数据格式与归一化数据格式之间的映射关系,然后基于映射关系,将生成的数据内容解析结果映射至归一化数据格式中,得到符合预设的解析目标格式的数据,最终得到归一化的数据集。
[0029]所述计算模块,用于运用BP算法模型对下一本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种区块链出块时间的确定方法,其特征在于,包括如下步骤:S1、获取区块链系统中的历史交易信息、区块交易相关参数、服务质量信息、区块难度和区块时间戳集合,并基于全网最新区块高度和采样窗口获取下一区块的区块难度,得到历史数据集;S2、提取区块链系统中历史数据集内的与出块时间相关的历史数据,并对其进行归一化处理,基于区块时间戳集合计算平均出块时间差集合,计算采样窗口中的区块的平均出块时间间隔;S3、获取实时算力和系统算力,计算实时算力和系统算力的算力差,并根据算力差与PID算法公式输出难度调整参数,将前一个区块生成节点的区块生成周期的终止出块时间和所述节点间过渡时间之和,作为本机节点在本次区块生成周期的起始出块时间;S4、由区块链中的共识节点接收交易请求和区块链系统中的内部信息,并基于此对下一个最佳出块时间进行预测,确定下一个的最佳预测出块时间。2.根据权利要求1所述的一种区块链出块时间的确定方法,其特征在于:所述对下一个最佳出块时间进行预测的具体方法为:在输入的所有历史数据中选出最大的等待时间;输入层归一化处理的公式为:其中,hw
max
为所有输入层历史数据中的最大等待时间;输出层归一化处理的公式为:其中,pw
max
为所有输出层历史数据中的最大等待时间;建立一个新的BP算法模型,并确定BP算法的学习率,使用归一化之后的历史数据对BP算法进行训练,以适应当前的情形,调用历史数据查看基础数据相似度较高的以往的最佳出块时间,如果有则采用,否则使用预测出块时间作为该区块的输入层,调用BP算法,显示预测结果,当一个出块结束后,将其实际出块时间与预测出块时间置于BP算法中进行权重更新,剔除数据中参考梯度的差值的绝对值较大的至少一个历史时间,将更新完毕的权重和实际等待时间立刻用于后续区块的最佳出块时间预测。3.根据权利要求1所述的一种区块链出块时间的确定方法,其特征在于:所述起始出块时间依据前一个区块生成节点的区块生成周期和节点间过渡时间确定,所述节点间过渡时间大于节点内出块时间,所述节点内出块时间为单个节点的区块生成周期内的出块间隔。4.根据权利要求1所述的一种区块链出块时间的确定方法,其特征在于:所述区块链系统中的交易信息包括区块链网络共识节点中待生成区块的时间戳信息和各交易的交易数据。5.根据权利要求4...

【专利技术属性】
技术研发人员:魏希三谷琼陈虎宁彬胡春阳徐德刚张一博
申请(专利权)人:湖北文理学院
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1