System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 用于从区块链中修剪区块以用于数据保留和存储可扩展性目的的方法和系统技术方案_技高网

用于从区块链中修剪区块以用于数据保留和存储可扩展性目的的方法和系统技术方案

技术编号:41528551 阅读:11 留言:0更新日期:2024-06-03 23:03
一种用于确认区块链中的新的当前创世区块的配置的方法,所述区块链被配置为使得能够在所述新的当前创世区块之前进行修剪,包括:由区块链网络中的区块链节点接收来自该网络中的另一个节点的创世响应消息,该消息包括配置值和序数值;识别区块链中在较早的创世区块之后添加的多个标准区块,该较早的创世区块包括所述序数值之前的数字;聚合来自所识别的多个标准区块中的每个标准区块的智能合约状态改变;以及基于聚合的智能合约状态改变来验证接收到的创世响应消息中所包括的配置值。智能合约状态的聚合能够由配置该新的当前创世块的区块链节点的处理器或由另一个区块链节点完成。

【技术实现步骤摘要】
【国外来华专利技术】

本公开涉及区块链的修剪,具体而言是使用当前创世区块、配置值和状态数据库来实现对区块链中的块的连续修剪,而不影响不变性、智能合约和交易验证。


技术介绍

1、区块链最初是作为一种用于使用密码货币进行支付交易的存储机制创建的。使用区块链提供了许多好处,诸如去中心化、分布式计算、关于交易的透明度,并且还为交易中涉及的个人或实体提供一定程度的匿名性。区块链更受欢迎的方面之一是它是不可变的记录:作为链的一部分的每笔交易都存储在其中,并且由于计算要求和带宽限制而无法改变,特别是当链变得越来越长且区块链网络增加更多节点时。

2、但是,这些相同的属性会导致区块链达到显著的数据尺寸,这使得传输甚至本地存储效率低下或不可能。例如,具有足够区块或多个区块存储显著数据的区块链可能占用千兆字节的空间,随着时间的推移,这可能变得不切实际。不可变的传统区块链常常无法以任何有意义的方式减少数据尺寸。因此,已经开发了一些可以从一些节点的存储中移除区块的方法。但是,这些方法常常依赖于至少一些节点保留区块链的完整副本以用于验证,其中不保留完整副本的节点可能无法验证其输入可在被修剪的区块上找到的交易。因此,在此类方法中,减小的数据尺寸在许多情况下可以是效率低下的,并且在其它情况下是不切实际的。

3、因此,需要对区块链进行技术改进,允许修剪区块,同时仍然使每个节点能够验证所有新交易,而无需任何节点都保留区块链的完整副本。


技术实现思路

1、本公开提供了用于处理新区块链交易并确认区块链中的新的创世区块的系统和方法的描述,所述系统和方法被配置为使得能够在区块链中的任何给定创世区块后面进行修剪。在区块链中,定期选择新的当前创世区块,其中当前创世区块一旦被选择就可以包括配置值,该配置值是智能合约的当前状态以及在一些情况下的未花费的交易输出的聚合。使用本文讨论的方法,当前创世区块使得能够成功验证和处理新的交易或智能合约的执行,而不需要任何先前的区块,从而使每个区块链节点能够修剪那些区块。在一些情况下,区块链节点可以维护状态数据库,该状态数据库可以存储未花费的交易输出和相关数据,这可以使得区块链节点能够验证其输入可与被修剪的区块中的交易的输出对应的交易,这可以导致此类交易被成功验证并添加到区块链中,而无需新的创世区块的配置数据包括此类数据。在这两种情况下,区块链网络中的每个区块链节点都可以修剪旧区块,而不对验证新交易和执行智能合约的能力产生不利影响,从而显著减少所有节点的文件尺寸而无需付出任何相关功能性。

2、一种用于处理区块链中的新区块链交易的方法,所述区块链被配置为使得能够在当前创世区块之前进行修剪,包括:由区块链网络中的区块链节点的接收器接收新区块链交易,该新区块链交易包括至少一个或多个交易输入和一个或多个交易输出;由区块链节点的处理器验证新区块链交易,其中验证新区块链交易包括验证一个或多个交易输入中的每一个未被花费;由区块链节点的处理器生成新区块,其中新区块至少包括区块头和一个或多个区块链数据值,一个或多个区块链数据值之一包括新区块链交易;由区块链节点的传输器将生成的新区块传输到区块链网络中的多个附加节点;以及在区块链节点的存储器中将一个或多个交易输出存储在与区块链相关联的状态数据库中。

3、一种用于确认区块链中的新的当前创世区块的配置的方法,所述区块链被配置为使得能够在所述新的当前创世区块之前进行修剪,包括:由区块链网络中的区块链节点的接收器接收来自区块链网络中的另一个节点的创世响应消息,所述创世响应消息包括至少配置值和序数值;由所述区块链节点中的处理器识别所述区块链中在较早的创世区块之后添加的多个标准区块,所述较早的创世区块包括所述序数值之前的数字;由区块链节点的处理器聚合来自所识别的多个标准区块中的每个标准区块的智能合约状态改变;以及由所述区块链节点的处理器基于聚合的智能合约状态改变来验证接收到的所述创世响应消息中包括的所述配置值。可以由配置所述新的当前创世区块的所述区块链节点的处理器或者另一个区块链节点来进行智能合约状态的聚合。

4、一种用于处理区块链中的新区块链交易的系统,所述区块链被配置为使得能够在当前创世区块之前进行修剪,包括:区块链网络;区块链网络中的多个附加节点;以及区块链网络中的区块链节点,包括:接收器,接收新区块链交易,该新区块链交易包括至少一个或多个交易输入和一个或多个交易输出,处理器,验证新区块链交易,其中验证新区块链交易包括验证一个或多个交易输入中的每个交易输入未被花费,以及生成新区块,其中新区块包括至少区块头和一个或多个区块链数据值,一个或多个区块链数据值之一包括新区块链交易,传输器,将生成的新区块传输到区块链网络中的多个附加节点,以及存储器,将一个或多个交易输出存储在与区块链相关联的状态数据库中。

5、一种用于确认区块链中的新的当前创世区块的配置的系统,所述区块链被配置为使得能够在所述新的当前创世区块之前进行修剪,包括:区块链网络;区块链网络中的另一个节点;以及区块链网络中的区块链节点,包括接收器,从区块链网络中的另一个节点接收创世响应消息,所述创世响应消息包括至少配置值和序数值,以及处理器:识别所述区块链中在较早的创世区块之后添加的多个标准区块,所述较早的创世区块包括所述序数值之前的数字,聚合来自所识别的多个标准区块中的每个标准区块的智能合约状态改变,以及基于聚合的智能合约状态改变来验证接收到的所述创世响应消息中包括的所述配置值。

本文档来自技高网...

【技术保护点】

1.一种用于确认区块链中的新的创世区块的配置的方法,所述区块链被配置为使得能够在所述新的创世区块之前进行修剪,包括:

2.如权利要求1所述的方法,还包括:

3.如权利要求1所述的方法,还包括:

4.一种用于确认区块链中的新的创世区块的配置的系统,所述区块链被配置为使得能够在当前的所述创世区块之前进行修剪,包括:

5.如权利要求4所述的系统,其中所述区块链节点的处理器还将聚合的状态改变应用于与所述区块链相关联的状态数据库中的一个或多个对应的智能合约,所述状态数据库存储在所述区块链节点的存储器中。

6.如权利要求4所述的系统,其中

【技术特征摘要】
【国外来华专利技术】

1.一种用于确认区块链中的新的创世区块的配置的方法,所述区块链被配置为使得能够在所述新的创世区块之前进行修剪,包括:

2.如权利要求1所述的方法,还包括:

3.如权利要求1所述的方法,还包括:

4.一种用于确认区块链中的新的创世区块的配置的系统,所述区块链被配...

【专利技术属性】
技术研发人员:S·希金斯
申请(专利权)人:万事达卡国际公司
类型:发明
国别省市:

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

1