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

技术编号:20868923 阅读:13 留言:0更新日期:2019-04-17 09:49
本申请提供一种区块链出块时间的确定方法、装置、设备及存储介质,该方法包括:每完成一次出块后,基于本次出块时刻与前一次出块时刻之间的第一时间段内的用户成本及系统成本,确定本次出块最佳时间;基于本次出块最佳时间及所述本次出块时刻对应的历史时间梯度,确定下一次出块时间,以使区块链系统基于所述下一次出块时间进行下一次出块。由于考虑了用户成本和系统成本,并结合了历史时间梯度动态调整出块时间,可以准确地估算下一次出块时间,使用户成本和系统成本达到最优,解决现有技术用户成本和系统成本不平衡导致成本较高的问题。

【技术实现步骤摘要】
区块链出块时间的确定方法、装置、设备及存储介质
本申请涉及区块链
,尤其涉及一种区块链出块时间的确定方法、装置、设备及存储介质。
技术介绍
区块链是指通过去中心化和去信任的方式集体维护一个可靠数据库的技术。区块链是把一段时间内发生的事务处理以区块为单位进行存储,并以密码学算法将区块按时间先后顺序连接成链条的一种数据结构。在一个区块链系统中,交易事务在区块链出块前并不能被确定执行,一般的区块链系统都是要等到出块之后才能确定交易事务成功(有的还需等待多个块)。所以在区块链出块之前,交易事务提交方必须等待区块链出块才能确定交易成功,而等待的过程无疑为交易多方增加了巨大的成本。所以在一个区块链系统中,快速出块让交易事务快速执行成功,可大大减少交易成本。但出块的速度会对整个区块链系统的软硬件系统造成负担,造成系统成本的增加。
技术实现思路
本申请提供一种区块链出块时间的确定方法、装置、设备及存储介质,以解决现有技术出块效率低等缺陷。本申请第一个方面提供一种区块链出块时间的确定方法,包括:每完成一次出块后,基于本次出块时刻与前一次出块时刻之间的第一时间段内的用户成本及系统成本,确定本次出块最佳时间;基于本次出块最佳时间及所述本次出块时刻对应的历史时间梯度,确定下一次出块时间,以使区块链系统基于所述下一次出块时间进行下一次出块,所述历史时间梯度为历史相邻两次的出块最佳时间的梯度。可选地,所述基于本次出块时刻与前一次出块时刻之间的第一时间段内的用户成本及系统成本,确定本次出块最佳时间,包括:获取所述第一时间段内提交交易事务的用户信息和系统信息;基于所述用户信息,确定所述第一时间段内的用户成本;基于所述系统信息,确定所述第一时间段内的系统成本;基于所述第一时间段内的用户成本及系统成本,获得使用户成本和系统成本平衡的出块时间T’作为所述本次出块最佳时间。可选地,基于所述用户信息,确定所述第一时间段内的用户成本,包括:基于所述用户信息,采用如下公式一确定所述用户成本Cu:其中,L’为用户等级系数,是常数;n为所述第一时间段内提交交易事务的用户数量;Li为第i个用户的用户等级;T为出块时间;ti为第i个用户的提交时间。可选地,基于所述系统信息,确定所述第一时间段内的系统成本,包括:基于所述系统信息,采用如下公式二确定所述系统成本Cs:其中,m为系统中主机的数量;Tm为主机成本系数,是常数;T为出块时间;Pj为第j个主机Mj的出块成本;Tn为网络成本系数,是常数;d为瓶颈网络的数量;Qk为第k个瓶颈网络Nk的出块成本。可选地,所述基于本次出块最佳时间及所述本次出块时刻对应的历史时间梯度,确定下一次出块时间,包括:从历史最佳出块时间梯度曲线获取与所述本次出块时刻对应的历史时间梯度;所述历史最佳出块时间梯度曲线的点代表历史本次出块最佳时间与历史上次出块最佳时间的差值;对所述本次出块最佳时间与所述本次出块时刻对应的历史时间梯度的平均值进行求和,得到所述下一次出块时间。可选地,在对所述本次出块最佳时间与所述本次出块时间对应的历史时间梯度的平均值进行求和之前,所述方法还包括:对各所述历史时间梯度进行排序;获取排在中间的一个历史时间梯度作为参考梯度;计算各所述历史时间梯度与所述参考梯度的差值的绝对值;删除与所述参考梯度的差值的绝对值较大的至少一个历史时间梯度。可选地,在所述基于本次出块时刻与前一次出块时刻之间的第一时间段内的用户成本及系统成本,确定本次出块最佳时间之后,所述方法还包括:计算所述本次出块最佳时间与前一次出块最佳时间的差值,作为所述第一时间段的起始时刻对应的出块最佳时间梯度,并进行记录以生成所述历史最佳出块时间梯度曲线。本申请第二个方面提供一种区块链出块时间的确定装置,包括:确定模块,用于每完成一次出块后,基于本次出块时刻与前一次出块时刻之间的第一时间段内的用户成本及系统成本,确定本次出块最佳时间;处理模块,用于基于本次出块最佳时间及所述本次出块时刻对应的历史时间梯度,确定下一次出块时间,以使区块链系统基于所述下一次出块时间进行下一次出块,所述历史时间梯度为历史相邻两次的出块最佳时间的梯度。可选地,所述确定模块,具体用于:获取所述第一时间段内提交交易事务的用户信息和系统信息;基于所述用户信息,确定所述第一时间段内的用户成本;基于所述系统信息,确定所述第一时间段内的系统成本;基于所述第一时间段内的用户成本及系统成本,获得使用户成本和系统成本平衡的出块时间T’作为所述本次出块最佳时间。可选地,所述确定模块,具体用于:基于所述用户信息,采用如下公式一确定所述用户成本Cu:其中,L’为用户等级系数,是常数;n为所述第一时间段内提交交易事务的用户数量;Li为第i个用户的用户等级;T为出块时间;ti为第i个用户的提交时间。可选地,所述确定模块,具体用于:基于所述系统信息,采用如下公式二确定所述系统成本Cs:其中,m为系统中主机的数量;Tm为主机成本系数,是常数;T为出块时间;Pj为第j个主机Mj的出块成本;Tn为网络成本系数,是常数;d为瓶颈网络的数量;Qk为第k个瓶颈网络Nk的出块成本。可选地,所述处理模块,具体用于:从历史最佳出块时间梯度曲线获取与所述本次出块时刻对应的历史时间梯度;所述历史最佳出块时间梯度曲线的点代表历史本次出块最佳时间与历史上次出块最佳时间的差值;对所述本次出块最佳时间与所述本次出块时刻对应的历史时间梯度的平均值进行求和,得到所述下一次出块时间。可选地,所述处理模块,还用于:对各所述历史时间梯度进行排序;获取排在中间的一个历史时间梯度作为参考梯度;计算各所述历史时间梯度与所述参考梯度的差值的绝对值;删除与所述参考梯度的差值的绝对值较大的至少一个历史时间梯度。可选地,所述处理模块,还用于:计算所述本次出块最佳时间与前一次出块最佳时间的差值,作为所述第一时间段的起始时刻对应的出块最佳时间梯度,并进行记录以生成所述历史最佳出块时间梯度曲线。本申请第三个方面提供一种计算机设备,包括:至少一个处理器和存储器;所述存储器存储计算机程序;所述至少一个处理器执行所述存储器存储的计算机程序,以实现第一个方面提供的方法。本申请第四个方面提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,所述计算机程序被执行时实现第一个方面提供的方法。本申请提供的区块链出块时间的确定方法、装置、设备及存储介质,通过每完成一次出块后,基于本次出块时刻与前一次出块时刻之间的第一时间段内的用户成本及系统成本,确定本次出块最佳时间;基于本次出块最佳时间及所述本次出块时刻对应的历史时间梯度,确定下一次出块时间,以使区块链系统基于所述下一次出块时间进行下一次出块,由于考虑了用户成本和系统成本,并结合了历史时间梯度动态调整出块时间,可以准确地估算下一次出块时间,使用户成本和系统成本达到最优,解决现有技术用户成本和系统成本不平衡导致成本较高的问题。附图说明为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1为本申请一实施例提供的区块本文档来自技高网...

【技术保护点】
1.一种区块链出块时间的确定方法,其特征在于,包括:每完成一次出块后,基于本次出块时刻与前一次出块时刻之间的第一时间段内的用户成本及系统成本,确定本次出块最佳时间;基于本次出块最佳时间及所述本次出块时刻对应的历史时间梯度,确定下一次出块时间,以使区块链系统基于所述下一次出块时间进行下一次出块,所述历史时间梯度为历史相邻两次的出块最佳时间的梯度。

【技术特征摘要】
1.一种区块链出块时间的确定方法,其特征在于,包括:每完成一次出块后,基于本次出块时刻与前一次出块时刻之间的第一时间段内的用户成本及系统成本,确定本次出块最佳时间;基于本次出块最佳时间及所述本次出块时刻对应的历史时间梯度,确定下一次出块时间,以使区块链系统基于所述下一次出块时间进行下一次出块,所述历史时间梯度为历史相邻两次的出块最佳时间的梯度。2.根据权利要求1所述的方法,其特征在于,所述基于本次出块时刻与前一次出块时刻之间的第一时间段内的用户成本及系统成本,确定本次出块最佳时间,包括:获取所述第一时间段内提交交易事务的用户信息和系统信息;基于所述用户信息,确定所述第一时间段内的用户成本;基于所述系统信息,确定所述第一时间段内的系统成本;基于所述第一时间段内的用户成本及系统成本,获得使用户成本和系统成本平衡的出块时间T’作为所述本次出块最佳时间。3.根据权利要求2所述的方法,其特征在于,基于所述用户信息,确定所述第一时间段内的用户成本,包括:基于所述用户信息,采用如下公式一确定所述用户成本Cu:其中,L’为用户等级系数,是常数;n为所述第一时间段内提交交易事务的用户数量;Li为第i个用户的用户等级;T为出块时间;ti为第i个用户的提交时间。4.根据权利要求2所述的方法,其特征在于,基于所述系统信息,确定所述第一时间段内的系统成本,包括:基于所述系统信息,采用如下公式二确定所述系统成本Cs:其中,m为系统中主机的数量;Tm为主机成本系数,是常数;T为出块时间;Pj为第j个主机Mj的出块成本;Tn为网络成本系数,是常数;d为瓶颈网络的数量;Qk为第k个瓶颈网络Nk的出块成本。5.根据权利要求1所述的方法,其特征在于,所述基于本次出块最佳时间及所述本次出块时刻对应的历史时间梯度,确定下一次出块时间,包括:从历史最佳出块时间梯度曲线获取与所...

【专利技术属性】
技术研发人员:金志宇何光宇金铸武二亮
申请(专利权)人:东软集团股份有限公司
类型:发明
国别省市:辽宁,21

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

1