主页 > imtoken钱包官方下载地址 > 一种块生成方法和器件制造方法及图纸

一种块生成方法和器件制造方法及图纸

imtoken钱包官方下载地址 2023-01-17 07:43:58

本发明专利技术实施例提供了一种区块生成方法及装置交易区块哈希值如何生成,该方法包括:选择待生成区块中包含的孤块;将孤块的孤块信息填充到块模板的块模板中孤块的内容中;根据孤块信息,计算孤块信息的根哈希,并将根哈希填充到块模板的块头中;构建包括块矿工奖励和孤块的块。区块矿工奖励的创币交易,将创币交易填入区块模板的交易;根据填有孤块信息的区块、孤块信息的根哈希和创币交易模板,通过挖掘得到要生成块的块哈希生成新块,新区块和孤块矿工分别获得区块矿工奖励和孤块矿工奖励。本发明的专利技术实施例可以有效地为比特币网络中孤块的利用提供支持。

一种区块生成方法及装置

本发明实施例提供了一种区块生成方法及装置,该方法包括:选择待生成区块中包含的孤立区块;将孤立块的孤立块信息填充到块模板的孤立块内容中;根据孤立块信息计算孤立块信息的根哈希,并将根哈希填充到块模板的块头中;构建包含区块的区块矿场 对于工作奖励和单独区块矿工奖励的创币交易,将创币交易填充到区块模板的交易中;根据填有孤块信息的块模板、孤块信息的根哈希和创币交易,对要生成块的块哈希进行挖掘生成新块,并由矿工获得区域新区块的矿工和孤块矿工分别是区块矿工奖励和孤块矿工奖励。本发明实施例可以有效支持比特币网络中孤立区块的利用。

下载所有详细的技术数据

【技术实现步骤总结】

一种区块生成方法及装置

该专利技术属于区块链

,具体涉及一种块生成方法、装置、终端设备及计算机可读介质。

技术介绍

在比特币网络中,只识别最长的链。如果一个块不在最长链中,则该块将被称为 OrphanBlock。孤立块是有效块,不是主链的一部分。当两个矿工在相似的时间产生块时,它们可能会自然发生,或者它们可能是由试图逆转交易的攻击者(具有足够的哈希能力)引起的。比特币目前的区块结构不能承载孤块信息和孤块奖励信息。首先,比特币采用最长链机制。如果出块间隔小,整个网络节点的同步状态会变差,孤块率也会增加。在这种情况下,算力小的矿池更倾向于采用自私的挖矿策略,即挖出的区块不并入算力强的矿工挖出的区块链,而是自己挖出一条分叉的链。 这不利于分叉后区块链的快速合并,会影响区块链的共识。其次,以太坊的Greedy Heaviest Observed Subtree(GHOST)协议的区块结构是基于账户模型的,这与比特币现有的未使用交易输出(UTXO)模型有着本质的区别,它只能包含forked on的孤块信息。主链,不能承载全网孤块信息。它无法识别孤块是否可以获得奖励,也不能支持复杂的孤块选择共识设计。因此,目前缺乏能够有效支持比特币网络中孤块利用的区块设计方法。

技术实现思路

有鉴于此,本专利技术实施例提供了一种区块生成方法、装置、终端设备和计算机可读介质,能够有效地为比特币网络中孤块的利用提供支持。本专利技术实施例的第一方面提供了一种区块生成方法,包括:选择待生成区块中包含的孤块;将孤块的孤块信息填充到块模板的孤块内容中;根据孤块信息,计算孤块信息的根哈希,并将根哈希填充到区块模板的区块头中;构造一个包含区块矿工奖励和孤块矿工奖励硬币交易的创作,将硬币创作交易填充到区块模板的交易中;根据填有孤块信息的块模板、孤块信息的根哈希和创币交易,挖掘得到待生成块的块哈希,用于生成新块,块矿工奖励和孤块矿工奖励分别由新块和孤块的矿工获得。本专利技术实施例的第二方面提供了一种块生成装置,包括: 选择模块,用于选择待生成块中包含的孤立块;第一填充模块,用于将孤块的孤块信息填充到块模板的孤块内容中;第二填充模块用于根据孤块信息计算孤块信息的根哈希,并将根哈希填充到块模板的块头中;第三填充模块用于构造包括区块矿工奖励和孤块矿工奖励的创币交易,并将创币交易填充到区块模板的交易中。生成模块,通过挖矿获取待生成区块的区块哈希,并根据填充孤块信息的区块模板、孤块信息的根哈希和创币交易生成新块,新块由新块生成。区块矿工和孤块矿工分别获得区块矿工奖励和孤块矿工奖励。

本专利技术实施例的第三种方法提供了一种终端设备,包括存储器、处理器,以及存储在所述存储器中并在所述处理器上可执行的计算机程序,所述处理器执行所有描述所述计算机程序时,实现上述块生成方法的步骤。本专利技术实施例的第四方面提供了一种计算机可读介质,该计算机可读介质存储有计算机程序,该计算机程序在处理执行时,执行上述块生成方法的步骤。 在本专利技术实施例中,可以选择待生成区块中包含的孤块,将孤块的孤块信息填充到块模板的孤块内容中,将孤块的孤块信息填入块是根据孤块信息计算的。根哈希,将根哈希填充到区块模板的区块头中,构造包括区块矿工奖励和孤块矿工奖励的造币交易,并将造币交易填充到区块模板的交易中,并基于填充孤块信息的块模板、孤块信息的根哈希和创币交易,通过挖掘获得要生成块的块哈希生成新块,新块的矿工和孤块矿工分别获得块矿工奖励和孤块矿工奖励,从而有效地为比特币网络中孤块的利用提供支持。附图说明为了更清楚地说明本专利技术实施例中的技术方案,下面简要介绍实施例描述或现有技术中所需的附图。显然,以下描述中的附图仅是本专利技术的一些实施例。对于本领域的普通技术人员来说,在没有创造性劳动的情况下,还可以从这些图中得到其他的图。

图。附图说明图1为本发明实施例提供的一种区块生成方法的流程图;如图。图2为本专利技术实施例提供的方块结构示意图;如图。图3为本发明专利技术实施例提供的方块图。区块索引结构示意图;如图。图4是本专利技术实施例提供的区块生成方法中进行区块验证的流程示意图;如图。图5为本发明实施例提供的一种区块生成装置的结构示意图;如图。图6是图1实施例提供的出块装置中的选择模块的细化结构示意图。 5个;如图。图7是图6实施例提供的出块装置中的第二填充模块的细化结构示意图。 5个;如图。图8为本专利技术实施例提供的另一种区块生成装置的结构示意图;如图。图9为本专利技术实施例提供的一种终端设备的示意图。具体实施方式在以下描述中,出于说明而非限制的目的,阐述了诸如特定系统结构和技术的特定细节,以便提供对本专利技术实施例的透彻理解。然而,对于本领域的技术人员来说应该清楚的是,专利技术可以在没有这些具体细节的其他实施例中实施。在其他情况下,省略了对众所周知的系统、设备、电路和方法的详细描述,以免不必要的细节混淆专利技术的描述。为了说明专利技术中所描述的技术方案,下面采用具体实施例进行说明。请参考图1. 图。图1为本发明实施例提供的一种区块生成方法。如图所示。如图1所示,本实施例的区块生成方法包括以下步骤: S101:选择待生成区块中包含的孤块。

在本专利技术的实施例中,可以从区块索引表中获取从高度N-1到高度N-K的祖先区块对应的祖先区块索引。具体地,从高度为N-1的父区块对应的区块索引开始,通过链回溯,找到并获得总共K个祖先区块索引;其中,待生成块的高度为N,K为孤块的查询深度,即从高度N-1到高度N-K一共可以查询K个祖先块来选择相关孤块堵塞。得到祖先块索引后,就可以得到祖先块索引的块哈希,祖先块索引的块哈希与N-1高度到N-K高度的祖先块中包含的孤儿相同区块的孤儿哈希一起形成了已经包含孤儿块的哈希表。需要指出的是,区块索引的区块哈希是指区块索引对应的区块的哈希值。这个哈希值可以直接存储在区块索引中,也可以在区块索引中使用。计算参数。进一步地,在获得哈希表后,可以通过以下方式选择待生成块中包含的孤块:搜索待选择的孤块(即待生成块中包含的孤块),如果本专利技术实施例生成的区块或区块索引中的孤块信息需要包含孤块标识,而要选择的孤块的块哈希不在哈希表中,则该孤块被选中的可以作为待生成区块中包含的孤块;如果区块中的孤块信息或专利技术实施例生成的块索引中不包含孤块标识交易区块哈希值如何生成,则将具有奖励的孤块作为待生成块。孤块,奖励孤块的块哈希不应该在哈希表中。 “奖励孤块”是指挖掘孤块的矿工可以按照设定的规则获得奖励。 S102、将孤块的孤块信息填充到块模板的孤块内容中。在本专利技术的实施例中,孤块的选中块头可以与设置的孤块的孤块标识一起形成一个孤块

【技术保护点】

1.一种生成块的方法,其特征在于,包括: /n 选择待生成块中包含的孤立块; /n 将孤块的孤块信息填充到块模板中孤块内容中; /n 根据孤块信息,计算孤块信息的根哈希,并将根哈希填充到块模板的块头中; /n构造一个包含该区块的区块矿工奖励和孤块矿工奖励的创币交易,将创币交易填充到区块模板的交易中; /n 基于root hash和coin创建填充孤块信息,孤块信息在交易的块模板中,通过挖矿获得要生成块的块hash生成新块,矿工新区块的矿工和孤块的矿工分别获得区块矿工奖励和孤块。阻止矿工奖励。 /n

【技术特点总结】

1.一种区块生成方法,其特征在于包括:

选择要生成的块中包含的孤块;

将孤块的孤块信息填充到块模板的孤块内容中;

根据孤块信息,计算孤块信息的根哈希,并将根哈希填充到区块模板的区块头中;

构造包括区块矿工奖励和孤块矿工奖励的创币交易,并将创币交易填充到区块模板的交易中;

根据填有孤块信息的区块模板、孤块信息的根哈希和创币交易,通过挖矿得到要生成块的块哈希生成新块,新区块和孤块的矿工分别获得区块矿工奖励和孤块矿工奖励。

2.根据权利要求1所述的区块生成方法,其特征在于,在选择待生成区块中包含的孤块之前,该方法还包括:

获取块模板;区块模板包括区块头、交易和孤块内容。

3.根据权利要求1所述的块生成方法,其特征在于,所述选择待生成块中包含的孤块包括:

从区块索引表中获取从N-1高度到N-K高度的祖先区块对应的祖先区块索引;待生成块的高度为N,K为孤块的查询深度;

获取祖先区块索引的区块哈希,将该区块哈希与N-1高度到N-K高度的祖先区块中包含的孤块区块的孤块哈希组合,形成一个孤块,其中包含一个孤儿。区块哈希表;

如果孤块信息中包含孤块标识,且待选孤块的区块哈希不在哈希表中,则将待选孤块作为该块中包含的孤块被生成。块;

如果孤块信息中不包含孤块标识,则将带有奖励的孤块作为待生成块中包含的孤块,带有奖励的孤块的区块哈希不在哈希中桌子中间。

4.根据权利要求1所述的区块生成方法,其特征在于,所述孤块信息的根哈希是根据所述孤块信息计算的,所述根哈希值是根据所述孤块信息计算的。希望填入区块模板的区块头,包括:

计算孤块信息的哈希值;

计算孤块信息的哈希值,得到孤块信息的根哈希,并将根哈希填充到区块模板的区块头中;其中,孤块信息包括孤块头和孤块标识,或者孤块信息包括孤块头。

5.根据权利要求1所述的出块方法,其特征在于,所述构造包括出块矿工奖励和孤块矿工奖励的创币交易,并将所述创币交易填入区块模板的交易中。包括:

从待生成区块的区块头中获取矿工地址,并根据设定的区块矿工奖励创建未使用的交易输出UTXO,奖励给待生成区块的区块矿工;

如果孤块的孤块信息中的孤块标识符标识了一个孤块奖励,则从孤块的孤块信息中的孤块头获取矿工地址,并按下设置的孤块奖励,创建一个 UTXO 奖励给孤块的孤矿工;

用奖励给区块矿工的UTXO和奖励给孤块矿工的UTXO填写区块模板的交易。

6.根据权利要求1至5中任一项所述的区块生成方法,其特征在于,所述方法基于根哈希和填充孤块信息的孤块信息的创建货币交易的块模板,要生成的区块的区块哈希是通过挖矿生成新区块得到的,新区块的矿工和孤块的矿工分别获得区块矿工奖励和孤儿矿工奖励后,还包括:

将孤块信息的根哈希和矿工地址添加到区块索引中;

通过孤块中孤块信息中的孤块头计算孤块的hash,用孤块的hash和孤块信息中的孤块标识信息形成索引孤块被添加到块索引中的索引孤立块内容中。

7.根据权利要求6所述的区块生成方法,其特征在于,...

【专利技术属性】

技术研发人员:谭琳、梁奇、李匡、刘秀、胡琴、

申请人(专利权):湖南天河国云科技有限公司,

类型:发明

国家省市:湖南;43

下载所有详细的技术数据我是该专利的所有者