区块动态生成方法、装置、计算机设备和存储介质制造方法及图纸

技术编号:20590242 阅读:23 留言:0更新日期:2019-03-16 07:34
本申请涉及区块链技术领域,尤其涉及一种区块动态生成方法、装置、计算机设备和存储介质。一种区块动态生成方法,包括如下步骤:根据区块生成节点的产生顺序执行区块中的交易,记录每个交易与上个交易的时间间隔,获得所述区块的交易频率;根据所述交易频率设置交易时间区间,在所述交易时间区间内,调节所述区块的生成时间;根据所述交易时间区间动态生成区块,当一个新交易引入到所述区块后,若总交易时间大于所述交易时间区间的上限,则划分出新的区块,否则将所述新交易放入交易缓冲池中等待其它交易的引入,直到所述总交易时间大于所述交易时间区间的上限。本申请通过交易频率实时改变区块的生成时间提升了区块链的扩展性和易用性。

【技术实现步骤摘要】
区块动态生成方法、装置、计算机设备和存储介质
本申请涉及区块链
,尤其涉及一种区块动态生成方法、装置、计算机设备和存储介质。
技术介绍
区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。所述共识机制是区块链系统中实现不同节点之间建立信任、获取权益的数学算法。狭义来讲,区块链是一种按照时间顺序将数据区块以顺序相连的方式组合成的一种链式数据结构,并以密码学方式保证的不可篡改和不可伪造的分布式账本。广义来讲,区块链技术是利用块链式数据结构来验证与存储数据、利用分布式节点共识算法来生成和更新数据、利用密码学的方式保证数据传输和访问的安全、利用由自动化脚本代码组成的智能合约来编程和操作数据的一种全新的分布式基础架构与计算方式。区块链技术具有去中心化、时序数据、集体维护、可编程和安全可信等特点。目前,在区块链生成的过程中,通过共识节点的产生将区块链进行区块划分,共识节点一般为了提高交易处理效率以及提升网络带宽的利用率,会将在固定时间段内产生的交易合并到一个区块中处理。但是,然而固定时间生成的共生节点,会延长交易的确认时间。这就会使得在某些业务场景下,不得不牺牲交易处理效率和宽带利用率,从而造成在区块链使用频率高时处理效率低,在使用频率低时出现闲置得不到有效利用。
技术实现思路
有鉴于此,有必要针对现有区块链处理效率低和宽带利用率低的问题,提供一种区块动态生成方法、装置、计算机设备和存储介质。一种区块动态生成方法,包括如下步骤:根据区块生成节点的产生顺序执行区块中的交易,记录每个交易与上个交易的时间间隔,获得所述区块的交易频率;根据所述交易频率设置交易时间区间,在所述交易时间区间内,调节所述区块的生成时间;根据所述交易时间区间动态生成区块,当一个新交易引入到所述区块后,若总交易时间大于所述交易时间区间的上限,则划分出新的区块,否则将所述新交易放入交易缓冲池中等待其它交易的引入,直到所述总交易时间大于所述交易时间区间的上限。在其中一个实施例中,所述根据区块生成节点的产生顺序执行区块中的交易,记录每个交易与上个交易的时间间隔,获得所述区块的交易频率,包括:根据区块生成节点产生顺序执行区块中的交易,记录任一交易执行后的数据状态和所述区块的初始的数据状态;将所述任一交易执行后的数据状态与所述区块初始的数据状态作比较,找出每个发生变化的数据;记录所述任一交易中每个发生数据变化的变化节点,找出最早发生数据变化的最早变化节点和最晚发生数据变化的最晚变化节点;用所述任一交易的最早变化节点减去上个交易的最晚变化节点,得到所述任一交易与上个交易的时间间隔;汇总所述区块内任意两个相邻交易的时间间隔,获得所述区块的交易频率。在其中一个实施例中,所述根据所述交易频率设置交易时间区间,在所述交易时间区间内,调节所述区块的生成时间,包括:根据所述交易频率的最大值设置所述交易时间区间的上限Tmax,根据所述交易频率的最小值设置所述交易区间的下限Tmin;设置一动态调节参数Ta,其中Tmin≤Ta≤Tmax,当所述区块的生成时间小于Tmin时则在所述区块生成时间上加上Ta得到新的区块生成时间,当所述区块的生成时间大于Tmax时则在原所述区块生成时间上减去Ta得到新的区块生成时间。在其中一个实施例中,所述根据所述交易时间区间动态生成区块,当一个新交易引入到所述区块后,若总交易时间大于所述交易时间区间的上限,则划分出新的区块,否则将所述新交易放入交易缓冲池中等待其它交易的引入,直到所述总交易时间大于所述交易时间区间的上限,包括:利用误差修正模型修正所述交易时间区间;当引入一个新的交易后,若总交易时间超过修正后的所述交易时间区间的上限,则将从修正过的所述交易时间区间下限到所述新的交易之间所有交易打包成一区块;当引入一个新的交易后,若总交易时间未超过修正后的所述交易时间区间上限,则将所述新的交易投放到交易缓冲池中,直到所述交易缓冲池中交易的总时间超过所述交易时间区间上限,抽取所述交易缓冲池中的所有交易数据打包成一区块。在其中一个实施例中,汇总所述区块内任意两个相邻交易的时间间隔,获得所述区块的交易频率,包括:去除所述区块内两个相邻交易的时间间隔最大值和最小值;将剩余的所述时间间隔按照从小到大进行排序,计算平均时间间隔,并抽取从小到大排序后的所述时间间隔中的中位数或者中位数平均数;将所述平均时间间隔与所述中位数或所述中位数平均数进行比较,若所述中位数与所述平均时间间隔的差值大于预设的差额阈值,或者,若所述中位数平均数与所述平均时间间隔的差值大于预设的差额阈值,则重新记录每个交易与上个交易的时间间隔,直到所述平均时间间隔的差值不大于预设的差额阈值。在其中一个实施例中,所述根据区块生成节点的产生顺序执行区块中的交易,记录每个交易与上个交易的时间间隔,获得所述区块的交易频率,包括:获取每个交易生成时间,根据所述交易生成时间生成数个生成节点,按照生成节点产生顺序执行区块中的交易;设置一交易筛选阈值,将生成时间早于所述交易筛选阈值的交易剔除,记录晚于所述交易筛选阈值的交易;汇总所有晚于所述交易筛选阈值的交易的时间间隔,获得所述区块的交易频率。在其中一个实施例中,所述根据所述交易时间区间动态生成区块,当一个新交易引入到所述区块后,若总交易时间大于所述交易时间区间的上限,则划分出新的区块,否则将所述新交易放入交易缓冲池中等待其它交易的引入,直到所述总交易时间大于所述交易时间区间的上限,还包括将所述新交易放入交易缓冲池中等待区块产生,具体包括:对所述新交易中的数据进行解析,获取所述新交易的哈希值,将所述新交易的哈希值写入交易的位置图表中,所述位置图表存储在数据库中;根据所述新交易的哈希值和预设于所述位置图表中的哈希值,计算得到共识节点N的默克尔根哈希值,并向其他共识节点广播所述共识节点N的默克尔根哈希值,所述共识节点N的默克尔根哈希值为所述新交易的哈希值与所述位置图表中预设的哈希值的差值的绝对值;比较所述其它共识节点的默克尔根哈希值以及所述共识节点N的默克尔根哈希值,若一致则生成新的区块,否则向所述交易缓冲池中加入另外的新交易。一种区块动态生成装置,包括如下模块:获得交易频率模块,设置为根据区块生成节点的产生顺序执行区块中的交易,记录每个交易与上个交易的时间间隔,获得所述区块的交易频率;调节区块生成时间模块,设置为根据所述交易频率设置交易时间区间,在所述交易时间区间内,调节所述区块的生成时间;检测验证模块,设置为根据所述交易时间区间动态生成区块,当一个新交易引入到所述区块后,若总交易时间大于所述交易时间区间的上限,则划分出新的区块,否则将所述新交易放入交易缓冲池中等待其它交易的引入,直到所述总交易时间大于所述交易时间区间的上限。一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机可读指令,所述计算机可读指令被所述处理器执行时,使得所述处理器执行上述区块动态生成方法的步骤。一种存储有计算机可读指令的存储介质,所述计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行上述区块动态生成方法的步骤。上述区块动态生成方法、装置、计算机设备和存储介质,包括根据区块生成节点的产生顺序执行区块中的交易,记录每个交易与上个交易本文档来自技高网...

【技术保护点】
1.一种区块动态生成方法,其特征在于,包括:根据区块生成节点的产生顺序执行区块中的交易,记录每个交易与上个交易的时间间隔,获得所述区块的交易频率;根据所述交易频率设置交易时间区间,在所述交易时间区间内,调节所述区块的生成时间;根据所述交易时间区间动态生成区块,当一个新交易引入到所述区块后,若总交易时间大于所述交易时间区间的上限,则划分出新的区块,否则将所述新交易放入交易缓冲池中等待其它交易的引入,直到所述总交易时间大于所述交易时间区间的上限。

【技术特征摘要】
1.一种区块动态生成方法,其特征在于,包括:根据区块生成节点的产生顺序执行区块中的交易,记录每个交易与上个交易的时间间隔,获得所述区块的交易频率;根据所述交易频率设置交易时间区间,在所述交易时间区间内,调节所述区块的生成时间;根据所述交易时间区间动态生成区块,当一个新交易引入到所述区块后,若总交易时间大于所述交易时间区间的上限,则划分出新的区块,否则将所述新交易放入交易缓冲池中等待其它交易的引入,直到所述总交易时间大于所述交易时间区间的上限。2.根据权利要求1所述的区块动态生成方法,其特征在于,所述根据区块生成节点的产生顺序执行区块中的交易,记录每个交易与上个交易的时间间隔,获得所述区块的交易频率,包括:根据区块生成节点产生顺序执行区块中的交易,记录任一交易执行后的数据状态和所述区块的初始的数据状态;将所述任一交易执行后的数据状态与所述区块初始的数据状态作比较,找出每个发生变化的数据;记录所述任一交易中每个发生数据变化的变化节点,找出最早发生数据变化的最早变化节点和最晚发生数据变化的最晚变化节点;用所述任一交易的最早变化节点减去上个交易的最晚变化节点,得到所述任一交易与上个交易的时间间隔;汇总所述区块内任意两个相邻交易的时间间隔,获得所述区块的交易频率。3.根据权利要求1所述的区块动态生成方法,其特征在于,所述根据所述交易频率设置交易时间区间,在所述交易时间区间内,调节所述区块的生成时间,包括:根据所述交易频率的最大值设置所述交易时间区间的上限Tmax,根据所述交易频率的最小值设置所述交易区间的下限Tmin;设置一动态调节参数Ta,其中Tmin≤Ta≤Tmax,当所述区块的生成时间小于Tmin时则在所述区块生成时间上加上Ta得到新的区块生成时间,当所述区块的生成时间大于Tmax时则在原所述区块生成时间上减去Ta得到新的区块生成时间。4.根据权利要求1所述的区块动态生成方法,其特征在于,所述根据所述交易时间区间动态生成区块,当一个新交易引入到所述区块后,若总交易时间大于所述交易时间区间的上限,则划分出新的区块,否则将所述新交易放入交易缓冲池中等待其它交易的引入,直到所述总交易时间大于所述交易时间区间的上限,包括:利用误差修正模型修正所述交易时间区间;当引入一个新的交易后,若总交易时间超过修正后的所述交易时间区间的上限,则将从修正过的所述交易时间区间下限到所述新的交易之间所有交易打包成一区块;当引入一个新的交易后,若总交易时间未超过修正后的所述交易时间区间上限,则将所述新的交易投放到交易缓冲池中,直到所述交易缓冲池中交易的总时间超过所述交易时间区间上限,抽取所述交易缓冲池中的所有交易数据打包成一区块。5.根据权利要求2所述的区块动态生成方法,其特征在于,汇总所述区块内任意两个相邻交易的时间间隔,获得所述区块的交易频率,包括:去除所述区块内两个相邻交易的时间间隔最大值和最小值;将剩余的所述时间间隔按照从小到大进行排序,计算平均时间间...

【专利技术属性】
技术研发人员:张松松
申请(专利权)人:平安科技深圳有限公司
类型:发明
国别省市:广东,44

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

1