CN112184226B - 一种区块链动态分片方法及系统 - Google Patents
一种区块链动态分片方法及系统 Download PDFInfo
- Publication number
- CN112184226B CN112184226B CN202011057771.6A CN202011057771A CN112184226B CN 112184226 B CN112184226 B CN 112184226B CN 202011057771 A CN202011057771 A CN 202011057771A CN 112184226 B CN112184226 B CN 112184226B
- Authority
- CN
- China
- Prior art keywords
- transaction
- piece
- address
- circulated
- signer
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3825—Use of electronic signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3829—Payment protocols; Details thereof insuring higher security of transaction involving key management
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Accounting & Taxation (AREA)
- General Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- Strategic Management (AREA)
- Finance (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提出一种区块链动态分片方法及系统,支持不同的分片策略,提出了地址换片操作的流程,并通过机制设计保证换片操作的原子性,属于区块链扩展性研究技术领域。通过地址换片,将大大减少分片间的跨片交易比例,较长时间保持分片系统的最优状态,从而降低跨片操作的性能损耗,提升了分片系统的交易处理性能。
Description
技术领域
本发明涉及区块链技术领域,并特别涉及一种区块链动态分片机制。
背景技术
区块链是一种以密码学算法为基础的大型防篡改分布式和开放性网络账本技术,使得在不可信环境中方便快捷地进行价值转移成为可能,被视为构筑价值互联网的基石。随着社会经济的发展,区块链凭借其多方参与、公开透明、不可篡改、有效溯源、灵活可编程等方面的优势崭露头角,人们逐渐意识到区块链技术的潜力,并将该技术逐步应用于金融、结算、溯源等工业级应用,区块链技术有望在诸多行业触发根本性变革。然而,区块链技术目前面临着严重的性能瓶颈,运行全节点负担沉重,每秒处理事物 (TPS) 能力低下,远低于实际应用需求,限制了其在现实世界的大规模发展和应用。学术界和产业界表明,不解决扩展性技术瓶颈,区块链很难真正出现落地项目。
广受关注的以太坊项目每秒仅 15 笔交易,待处理交易在区块链网络中大量囤积。然而,VISA 跨境支付系统平均每秒处理 2000 笔交易,最高可达 6.5 万笔交易;支付宝双十一期间能支持最高每秒54.6万笔交易支付;快手与 2020 年赞助春晚达到 3 亿日活量,红包总金额达到 10 亿。目前,区块链系统的事物处理能力远远无法满足工业级应用的交易需求。
分片是为了增加数据库存储量而设计的一种数据库管理技术,现已与共识机制一起应用于区块链,是区块链链上扩容方案的主要内容。区块链分片技术将区块链网络按照一定的规则,通常是按照地址空间聚类,将网络分成大小几乎相同的子区块链网络,每个分片只处理本分片内的交易行为。这使得并行计算成为可能,从而增加了整个区块链的吞吐量。在这个系统中,某些节点将只处理某些分片的事务,这使得所有分片上处理的事务的总吞吐量,要比系统中只拥有一个主分片的单个分片要高得多。分片技术将多个区块链并行发起,成倍提升了区块链的吞吐量,例如,以太坊2.0 分片、Zilliqa分片和MultiVac分片都是分片扩容方案中广受关注的项目,分片技术在并行化上的出色表现使得其成为优秀的扩容方案之一。然而现有分片技术囿于地址分片,分片一旦确定,任意节点在其生命周期内都属于同一分片,节点固化于某一分片,无法适应其交易需求随机变化这一特点,将导致大量跨片交易交易发生。由于跨片交易处理的计算复杂度及开销远高于片内交易,这将使得系统通量的提升受到制约。
目前,国内外的研究中,提高区块链通量的方案主要分为链上扩容和链外扩容两种。显然,两种类型的方案互相兼容,在链上扩容方案的基础上增加链下扩容方案,相辅相成,共同提高区块链的扩展性。
链上扩容方案:之所以称为链上扩容,是因为它使所有交易保持在基础链上,并且该方法旨在提高基础链本身的吞吐量。链上扩容包含共识层、数据层和分片三类扩容方案,对于共识层的改进,学术界和工业届试图通过将原有共识替换为更快速的共识方法,实现通量的提升,例如,BFT类共识,以节点间合作方式替换竞争性的POW类共识,避免了竞争出块时的算力浪费,但提升了底层协议的复杂度,共识步骤繁多;混合类共识,学术界和产业界提出了多种共识方案混合的类型,最受广泛关注的是POW共识与BFT类结合,但混合共识还未有工程实现,处于提案设计阶段;数据层修改区块结构,例如,BCH区块大小增加到32M,BSV将区块大小提升到128M。虽然单区块能容纳更多的而信息,但增加了网络传输的负担;共识层和数据层两类扩容方案在落地到工业应用方面都面临着巨大的挑战。
链下扩容方案:之所以称为链下扩容方案,因为它们使用各种方法将计算提取到基础链外,从而降低基础链的计算负载,达到提升基础链的处理能力的目的。链下扩容方案大致分为以下几个部分:状态通道、侧链和计算外包。状态通道主要包含由L4风险投资公司的反事实通道,Raiden Network,Celer network。Raiden Network主要专注于以太坊的支付渠道,Celer network 专注于通道的路由算法研究,通道类扩容方案减轻了主链的计算负担,但区块链系统中大量节点申请通道同样会造成通道网络拥堵。侧链同样将计算的主要部分置于基础链外,绕过基础链的性能瓶颈,但需要基础链保证交易的安全性;MaticNetwork,Loom Network,Skale实验室,Liquidity Network在侧链方案上颇有研究。计算外包与侧链非常相似,Truebit是一种协议,它不直接增加基础链的吞吐量,而是提升链外的繁重计算,从而减轻了基础链的计算负担,通常用于协同计算,但会造成隐私保密数据泄露。
发明内容
本发明的目的在于降低区块链分片间跨片交易带来的的性能损耗,提出一种地址跨分片流通的机制,在不同分片之间,使得账户地址可互相流通,从而降低跨片交易在所有交易中占的比例,从而提高区块链分片系统的吞吐量,达到扩容的目的。
具体来说,本发明提出一种区块链动态分片方法,其中包括:
步骤1、待流通地址发起退片交易,该待流通地址所在的源分片中原片签名者通过验证该退片交易为该退片交易签名,该待流通地址通过收集该退片交易的验证消息,生成资产证明,该资产证明包含该原片签名者的有效签名和退片交易中的有效字段;
步骤2、目的分片的准备地址将该资产证明作为交易数据,发起待流通地址的入片交易,目的分片中的签名者验证该入片交易,并根据入片交易中的该资产证明,为该待流通地址在本分片重新恢复账户。
所述的区块链动态分片方法,其中该步骤1包括:
通过检测高频跨片交易,获取该待流通地址,该高频跨片交易为高于阈值的交易,该阈值为账户所发起跨片的交易占所有跨片交易的比例值,该待流通地址在交易双方中的对应另一个地址所在分片即为目的分片。
所述的区块链动态分片方法,其中将该退片交易发送给源分片中轻节点,轻节点依据协议规则将该退片交易在源分片中进行广播,源分片网络中所有的签名者验证退片交易,检查退片交易中客户端认定的退出状态是否与本地状态数据库中存储信息的一致性,对退片交易有效信息的地址状态信息进行签名,并遵循节点间通信规则,将签名信息返回轻节点,并在本地数据库中对该源账户进行冻结。
所述的区块链动态分片方法,其中该步骤2包括:
客户端发起入片交易,将该入片交易发送给目的分片中轻节点,轻节点依据节点间通信规则将入片交易在目的分片进行广播,目的分片的签名者对入片交易中的资产证明进行验证,取出资产证明中的地址状态信息以及签名者对状态信息的签名信息,目的分片的签名者根据公钥信息,验证地址状态信息的正确性,根据该正确性签名者节点将在本地数据库中为请求入片的地址构建账户状态存储节点。
所述的区块链动态分片方法,其中该退片交易本质上为一个区块链的交易,其有效字段为待流通地址、目的分片、账户余额、该待流通地址当前已发起的交易数、地址的权限、退片交易的签名。
本发明还提出一种区块链动态分片系统,其中包括:
资产证明生成模块,用于获取待流通地址并使待流通地址发起退片交易,该待流通地址所在的源分片中原片签名者通过验证该退片交易为该退片交易签名,该待流通地址通过收集该退片交易的验证消息,资产证明,该资产证明包含该原片签名者的有效签名和退片交易中的有效字段;
账户恢复模块,用于获取目的分片的准备地址,并将该资产证明作为交易数据,发起待流通地址的入片交易,目的分片中的签名者验证该入片交易,根据入片交易中的该资产证明,为该待流通地址在本分片重新恢复账户。
所述的区块链动态分片系统,其中该资产证明生成模块包括:
通过检测高频跨片交易,获取该待流通地址,该高频跨片交易为高于阈值的交易,该阈值为账户所发起跨片的交易占所有跨片交易的比例值,该待流通地址在交易双方中的对应另一个地址所在分片即为目的分片。
所述的区块链动态分片系统,其中将该退片交易发送给源分片中轻节点,轻节点依据协议规则将该退片交易在源分片中进行广播,源分片网络中所有的签名者验证退片交易,检查退片交易中客户端认定的退出状态是否与本地状态数据库中存储信息的一致性,对退片交易有效信息的地址状态信息进行签名,并遵循节点间通信规则,将签名信息返回轻节点,并在本地数据库中对该源账户进行冻结。
所述的区块链动态分片系统,其中该步骤2包括:
客户端发起入片交易,将该入片交易发送给目的分片中轻节点,轻节点依据节点间通信规则将入片交易在目的分片进行广播,目的分片的签名者对入片交易中的资产证明进行验证,取出资产证明中的地址状态信息以及签名者对状态信息的签名信息,目的分片的签名者根据公钥信息,验证地址状态信息的正确性,根据该正确性签名者节点将在本地数据库中为请求入片的地址构建账户状态存储节点。
所述的区块链动态分片系统,其中该退片交易本质上为一个区块链的交易,其有效字段为待流通地址、目的分片、账户余额、该待流通地址当前已发起的交易数、地址的权限、退片交易的签名。
附图说明
图1为本发明退片操作流程图;
图2为本发明入片操作流程图;
图3为本发明为了保证换片操作的原子性的另一入片操作流程图。
实施方式
发明人在进行区块链分片研究时,发现现有分片方案均为静态分片技术,本质上大多是按照账户地址空间进行分片,即依据不同的分片策略,一旦分片网络确定后,在一个分片周期内,分片间账户无法相互流通,账户地址固化在当前分片,分片的灵活性大大降低。且由于交易本身具有随机性,交易行为无法进行良好预测,导致现有分片策略无法长时间保证分片系统处于最优状态;同时用户行为实时变化,无可避免地出现跨分片交易。与分片内的交易相比,跨分片交易操作复杂执行效率低,降低了系统交易吞吐量,与理想分片方案下可达到的系统性能相差较大。即现在的分片方法属于静态分片,一旦分片固定,在一个分片周期内,分片间地址无法相互流通。由于交易的不可预知性,现在的分片依据历史交易对地址进行划分;那么在将来的分片状态下,无可避免的出现跨片交易,因此,提出动态分片,即当现有静态分片固定的情况下,地址依然可以流通。
因此,针对区块链分片系统中跨片交易处理效率低下的状况,发明人提出一个区块链动态分片机制,来降低区块链分片系统中跨片交易所占的比例,适应用户行为的实时变化,以较小的时间开销来完成用户实时换片的操作,从而不影响用户后续在分片系统中的交易需求。
本发明所涉及的区块链动态分片机制,适用于多种分片策略。
跨分片地址流通涉及的三类角色主要有:1.待流通的地址; 2.源分片和目的分片中的签名者节点,签名者节点负责打包本片的交易;3.目的分片准备地址,本地址可以是目的分片中任意一个合法地址,用来在目的分片接力处理地址流通。
地址流通主要包含三个阶段:1.地址退片,待流通地址发起退片交易,源分片中的签名者处理验证退片交易,并为之签名,其中处理包含了验证,处理除验证之外,将退片交易按照一个普通交易对待,按照区块链普通交易的执行逻辑进行处理;2.资产证明生成,退片的地址对应的账户收集退片交易的验证消息,生成资产证明,资产证明包含原片签名者的有效签名和退片交易中的有效字段,退片交易本质上也是一个区块链的交易,有效字段为:交易发起地址(待流通地址)、目的分片、账户余额、该地址当前已发起的交易数、地址的权限、退片交易的签名(本待流通地址对本退片交易的签名);3.地址入片,目的分片的准备地址将资产证明作为交易数据,发起待流通地址的入片交易,目的分片中签名者验证入片交易,并根据入片交易中的资产证明为待流通地址在本分片重新恢复账户。一个分片中的待流通地址,是进行跨片交易比较多的地址。
换片操作需要保持。由于资产证明的存在将换片操作分割为两个互相独立的进程,因此论证换片操作的原子性当从资产证明能否生成开始。
第一种情况,资产证明没有生成。从退片交易论证,如果一个地址正在退的片是一个正确正常运行的片,且客户端发起的是正常、可验证通过的退片交易,那么根据退片流程设计,本片一定能够为账户生成资产证明;倘若本片中的验证者作恶,或客户端发起的不是正常的退片交易,不能被验证通过,那么资产证明无法生成,因此不存在入片交易,地址仍然在原分片,仍然可用,无资产证明生成。
第二种情况是资产证明已经生成,那么要想保证换片操作的原子性需要从入片操作进行设计。首先,入片交易能够被目的分片成功验证,签名者为地址新建对应账户;另一种情况是目的片没有正常运行,分片中签名者作恶,入片交易无法验证通过,那么此时需要将入片的地址还回原分片,且由于源分片已经生成了资产证明,则源分片是正确可用状态,不会存在一个地址退片后无法入片且无法重回源分片的情况。根据第二种情况,将入片交易分成了两个部分,第一个是成功处理入片操作,第二个是入片失败,重回源分片。
系统中所涉及到的节点分类:
轻节点:只负责交易收发,区块头验证
签名者节点:负责打包本片内交易,验证处理换片交易(退片交易和入片交易);签名退片交易;验证入片交易;从入片交易中演化出待流通地址并为其构建账户;存储本片账户状态数据信息;
客户端:例如以太坊钱包,用于接收外部高频交易检测的输入,构造退片交易、入片交易;
地址是区分不同账户的标识,是区块链换片操作的主体,而换片操作在于完成账户标识——地址的换片。
地址退片是由外部高频交易检测触发。当检测到高频跨片交易发生时,客户端将发起特定地址的退片交易。客户端构建退片交易后将交易发送给轻节点,然后轻节点依据协议规则将退片交易在源分片网络中进行广播,广播对象是源分片网络中所有的签名者。
源分片网络中所有的签名者验证退片交易,检查退片交易中客户端认定的退出状态是否与本地状态数据库中存储信息一致,信息一致验证通过,签名者节点将对退片交易有效信息(地址状态信息)进行签名,并遵循节点间通信规则,将签名信息返回轻节点,并在本地数据库中对账户进行冻结。其中认定不需要过程,客户端发起交易,交易的数据就是客户端中自己保有的账户数据;交易中包含的客户端中自己保有的账户数据就是退出状态。
最后,当有足够的签名者同意退片,即,同意退片的签名者达到系统阈值(可以自己设),则账户生成资产证明。轻节点将资产证明依据协议通信规则返回给客户端。
退片验证规则:
1.退片交易的交易余额小于等于状态树中对应账户节点的余额;
2.退片交易的账户权限等于状态树中对应账户节点的权限;
3.退片交易的shard_to是一个存在的分片;
4.退片交易的nonce等于状态树中对应账户节点的nonce;
5.退片交易被正确签名。
当且仅当以上5个条件都满足时,退片交易验证通过。
地址入片由资产证明触发。当客户端收到地址的资产证明(资产证明里面包括的地址为账户在源分片中的地址),将为该地址构造入片交易,发起入片交易,将入片交易发送给轻节点,轻节点依据节点间通信规则将入片交易在目的分片进行广播。本片的签名者对入片交易中的资产证明进行验证,取出资产证明中的地址状态信息以及签名者对状态信息的签名信息,系统中签名者公钥全网公知,本分片的签名者根据公钥信息,验证地址状态信息是否有足够的正确签名,若有则通过验证。验证通过后,签名者节点将在本地数据库中为请求入片的地址构建账户状态存储节点。只要有一个验证者为账户建立了存储节点,这个地址的跨片流程就算完成。账户以地址进行标识,无需安排另外一个地址。
入片验证规则:
1.取出资产证明中的地址状态和对应签名者签名;
2.根据签名信息构造正确签名者列表;
3.读出系统中源分片的所有签名者及其公钥信息;
4.验证资产证明中的签名信息是否正确,验证正确签名的数量是否达到系统给定阈值;
5.入片交易被正确签名。
当且仅当通过以上验证流程,本片中的签名者为请求入片的地址构造账户。
为让本发明的上述特征和效果能阐述的更明确易懂,下文特举实施例,并配合说明书附图作详细说明如下。
图1是退片操作流程图,步骤如下:
S1:外部高频交易检测机制实时运行,向客户端输出符合条件的地址;
S2:客户端(钱包)根据收到的地址发起退片交易并广播,交易包含以下字段:
下面对退片交易结构中的各个字段进行说明:
from:退片交易发起的地址,本地址代表将要退片的账户。
nonce:nonce代表当前正在退片的地址正在发起第几笔交易,也代表将来转移到目的分片时,账户状态的起始值,代表本账户的已发出交易数从nonce开始。
to:退片交易的固定地址,因退片交易不需要收据,在退片交易发起的那一刻退片交易地址所对应的额账户就被冻结,所以无需收据;本字段是一个固定值,用来表示此交易是退片交易。
Value:从源分片迁出的余额大小,客户端认为本地址需要退出的原生资产状态。
gasLimit:本交易的gas用量限制。
gasPrice:本交易的gas价格,与gasLimit相乘,可得出本交易允许的gas最大用量。
authority:账户权限,代表这当前正在退片的地址所对应的账户权限,也代表将来在进入目的分片后的初始权限。
Shard_to:正在退片的地址对应账户将要换到的目的分片。
RSV:退片交易的签名。
S3:退片交易在本片中广播;
S41:S42:S43:本片中的签名者根据退片交易中的各个字段表示的信息,对比本地账户状态数据库,是否满足上述退片验证规则,若满足验证规则,则为退片交易签名,不满足则不进行任何操作;
S5:判断退片的地址是否收到足够的签名,若是则进行进入S6,不满足则进入S7结束。
S6:为退片地址生成资产证明;
S7:结束。
图2是入片操作的流程图,此流程是入片操作的主流程,步骤如下:
S1:退片交易完成后,退片地址生成了资产证明,资产证明触发入片交易。
S2:目的片中的一个合法地址根据资产证明在本地钱包中构造入片交易,交易各个字段内容如下:
from:入片交易发起的地址,本地址没有什么特殊含义,任何一个可以发起正常交易的地址都可以发起入片操作。
nonce:nonce代表当地址正在发起第几笔交易。
to:入片交易的固定地址,因退片入片不需要收据,在入片交易发起的那一刻,入片交易即可看做是完成,但是真正完成地址入片的表示是入片的二地址能够正常发起一笔交易,且交易能够被打包。
gasLimit:本交易的gas用量限制。
gasPrice:本交易的gas价格,与gasLimit相乘,可得出本交易允许的gas最大用量。
RSV:交易的签名。
S3:入片交易在本片中广播;
S41:S42:S43:本片中的签名者根据入片交易中的资产证明各个字段表示的信息,对比本地账户状态数据库,是否满足上述入片验证规则,若满足验证规则,则为资产证明中的地址构建新账户,不满足则不进行任何操作;
S44:入片流程结束。
图3是为了保证换片操作的原子性而设计的入片操作的补充流程,步骤如下:
为了保证换片操作的原子性,首先检验入片的地址是否成功入片,与一笔片内交易的方式检验。
S1:钱包为入片的地址发起一笔片内交易;
S2:交易在本片中广播;
S3:本片中的验证者验证该片内交易的正确性,验证通过则换片操作完成,验证不通过则进入S41;
S41:由于片内交易广播存在网络延时,因此等待一个网络广播的时间后再次验证进入S411;
S411:本片中的验证者验证该片内交易的正确性,验证通过则换片操作完成,验证不通过则进入S412;
S412:入片失败,因此需要将流通的地址退回源分片。
由于退回源分片的操作在本质上可以看做一个入片操作,因此,退回源分片是复用入片操作的主流程。换片操作的原子性得到保证。
S5:结束。
以下为与上述方法实施例对应的系统实施例,本实施方式可与上述实施方式互相配合实施。上述实施方式中提到的相关技术细节在本实施方式中依然有效,为了减少重复,这里不再赘述。相应地,本实施方式中提到的相关技术细节也可应用在上述实施方式中。
本发明还提出一种区块链动态分片系统,其中包括:
资产证明生成模块,用于获取待流通地址并使待流通地址发起退片交易,该待流通地址所在的源分片中原片签名者通过验证该退片交易为该退片交易签名,该待流通地址通过收集该退片交易的验证消息,资产证明,该资产证明包含该原片签名者的有效签名和退片交易中的有效字段;
账户恢复模块,用于获取目的分片的准备地址,并将该资产证明作为交易数据,发起待流通地址的入片交易,目的分片中的签名者验证该入片交易,根据入片交易中的该资产证明,为该待流通地址在本分片重新恢复账户。
所述的区块链动态分片系统,其中该资产证明生成模块包括:
通过检测高频跨片交易,获取该待流通地址,该高频跨片交易为高于阈值的交易,该阈值为账户所发起跨片的交易占所有跨片交易的比例值,该待流通地址在交易双方中的对应另一个地址所在分片即为目的分片。
所述的区块链动态分片系统,其中将该退片交易发送给源分片中轻节点,轻节点依据协议规则将该退片交易在源分片中进行广播,源分片网络中所有的签名者验证退片交易,检查退片交易中客户端认定的退出状态是否与本地状态数据库中存储信息的一致性,对退片交易有效信息的地址状态信息进行签名,并遵循节点间通信规则,将签名信息返回轻节点,并在本地数据库中对该源账户进行冻结。
所述的区块链动态分片系统,其中该步骤2包括:
客户端发起入片交易,将该入片交易发送给目的分片中轻节点,轻节点依据节点间通信规则将入片交易在目的分片进行广播,目的分片的签名者对入片交易中的资产证明进行验证,取出资产证明中的地址状态信息以及签名者对状态信息的签名信息,目的分片的签名者根据公钥信息,验证地址状态信息的正确性,根据该正确性签名者节点将在本地数据库中为请求入片的地址构建账户状态存储节点。
所述的区块链动态分片系统,其中该退片交易本质上为一个区块链的交易,其有效字段为待流通地址、目的分片、账户余额、该待流通地址当前已发起的交易数、地址的权限、退片交易的签名。
Claims (4)
1.一种区块链动态分片方法,其特征在于,包括:
步骤1、待流通地址发起退片交易,该待流通地址所在的源分片中源片签名者通过验证该退片交易为该退片交易签名,该待流通地址通过收集该退片交易的验证消息,若同意退片的源片签名者达到系统阈值,生成资产证明,该资产证明包含该源片签名者的退片交易签名和退片交易中的有效字段;
步骤2、目的分片的准备地址将该资产证明作为交易数据,发起待流通地址的入片交易,目的分片中的签名者验证该入片交易,并根据入片交易中的该资产证明,为该待流通地址在本分片重新恢复账户;
其中该步骤1包括:
通过检测高频跨片交易,获取该待流通地址,该高频跨片交易为高于阈值的交易,该阈值为账户所发起跨片的交易占所有跨片交易的比例值,该待流通地址在交易双方中的对应另一个地址所在分片即为目的分片;
将该退片交易发送给源分片中轻节点,轻节点依据协议规则将该退片交易在源分片中进行广播,源分片网络中所有的源片签名者验证退片交易,检查退片交易中客户端认定的退出状态与本地数据库中存储信息的一致性,一致性检查通过后,对退片交易有效信息的地址状态信息进行签名,并遵循节点间通信规则,将签名信息返回轻节点,并在本地数据库中对该待流通地址所对应的账户进行冻结;
该退片交易本质上为一个区块链的交易,其有效字段为待流通地址、目的分片、账户余额、该待流通地址当前已发起的交易数、地址的权限、退片交易的签名。
2.如权利要求1所述的区块链动态分片方法,其特征在于,该步骤2包括:
客户端发起入片交易,将该入片交易发送给目的分片中轻节点,轻节点依据节点间通信规则将入片交易在目的分片进行广播,目的分片的签名者对入片交易中的资产证明进行验证,取出资产证明中的地址状态信息以及源片签名者对地址状态信息的退片交易签名,目的分片的签名者根据公钥信息,验证地址状态信息的正确性,根据该正确性目的分片的签名者节点将在本地数据库中为请求入片的地址构建账户状态存储节点。
3.一种区块链动态分片系统,其特征在于,包括:
资产证明生成模块,用于获取待流通地址发起退片交易,该待流通地址所在的源分片中源片签名者通过验证该退片交易为该退片交易签名,该待流通地址通过收集该退片交易的验证消息,若同意退片的源片签名者达到系统阈值,生成资产证明,该资产证明包含该源片签名者的退片交易签名和退片交易中的有效字段;
账户恢复模块,用于获取目的分片的准备地址,并将该资产证明作为交易数据,发起待流通地址的入片交易,目的分片中的签名者验证该入片交易,根据入片交易中的该资产证明,为该待流通地址在本分片重新恢复账户;
该资产证明生成模块包括:
通过检测高频跨片交易,获取该待流通地址,该高频跨片交易为高于阈值的交易,该阈值为账户所发起跨片的交易占所有跨片交易的比例值,该待流通地址在交易双方中的对应另一个地址所在分片即为目的分片;
将该退片交易发送给源分片中轻节点,轻节点依据协议规则将该退片交易在源分片中进行广播,源分片网络中所有的源片签名者验证退片交易,检查退片交易中客户端认定的退出状态是否与本地数据库中存储信息的一致性,一致性检查通过后,对退片交易有效信息的地址状态信息进行签名,并遵循节点间通信规则,将签名信息返回轻节点,并在本地数据库中对该待流通地址所对应的账户进行冻结;
该退片交易本质上为一个区块链的交易,其有效字段为待流通地址、目的分片、账户余额、该待流通地址当前已发起的交易数、地址的权限、退片交易的签名。
4.如权利要求3所述的区块链动态分片系统,其特征在于,该账户恢复模块包括:
客户端发起入片交易,将该入片交易发送给目的分片中轻节点,轻节点依据节点间通信规则将入片交易在目的分片进行广播,目的分片的签名者对入片交易中的资产证明进行验证,取出资产证明中的地址状态信息以及签名者对地址状态信息的退片交易签名,目的分片的签名者根据公钥信息,验证地址状态信息的正确性,根据该正确性目的分片的签名者节点将在本地数据库中为请求入片的地址构建账户状态存储节点。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011057771.6A CN112184226B (zh) | 2020-09-30 | 2020-09-30 | 一种区块链动态分片方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011057771.6A CN112184226B (zh) | 2020-09-30 | 2020-09-30 | 一种区块链动态分片方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112184226A CN112184226A (zh) | 2021-01-05 |
CN112184226B true CN112184226B (zh) | 2023-09-12 |
Family
ID=73947080
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011057771.6A Active CN112184226B (zh) | 2020-09-30 | 2020-09-30 | 一种区块链动态分片方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112184226B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114119242B (zh) * | 2022-01-28 | 2023-03-14 | 浙商银行股份有限公司 | 基于自适应窗口分片的联盟链性能优化方法及装置 |
EP4380097A1 (en) * | 2022-11-30 | 2024-06-05 | Fong Chuan Julian Yu | Two level crux chain platform for protecting and verifying blockchain data |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109086139A (zh) * | 2018-08-15 | 2018-12-25 | 昧来网络科技(上海)有限公司 | 动态分片方法、设备和计算机存储介质 |
CN109544334A (zh) * | 2018-10-22 | 2019-03-29 | 绿州蔚来(深圳)控股有限公司 | 一种网络可扩展性区块链实现方法 |
WO2020022957A1 (en) * | 2018-07-27 | 2020-01-30 | Aioz Pte Ltd | Method and apparatus for transaction verification in a blockchain-based network |
CN111144866A (zh) * | 2019-12-25 | 2020-05-12 | 腾讯科技(深圳)有限公司 | 数据转移方法、装置、节点设备及存储介质 |
-
2020
- 2020-09-30 CN CN202011057771.6A patent/CN112184226B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020022957A1 (en) * | 2018-07-27 | 2020-01-30 | Aioz Pte Ltd | Method and apparatus for transaction verification in a blockchain-based network |
CN109086139A (zh) * | 2018-08-15 | 2018-12-25 | 昧来网络科技(上海)有限公司 | 动态分片方法、设备和计算机存储介质 |
CN109544334A (zh) * | 2018-10-22 | 2019-03-29 | 绿州蔚来(深圳)控股有限公司 | 一种网络可扩展性区块链实现方法 |
CN111144866A (zh) * | 2019-12-25 | 2020-05-12 | 腾讯科技(深圳)有限公司 | 数据转移方法、装置、节点设备及存储介质 |
Non-Patent Citations (1)
Title |
---|
潘吉飞等.基于跳跃Hash和异步共识组的区块链动态分片模型.《计算机科学》.2019,第47卷(第03期),273-280. * |
Also Published As
Publication number | Publication date |
---|---|
CN112184226A (zh) | 2021-01-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102130062B1 (ko) | 블록체인 네트워크의 노드들 간의 합의를 이루는 방법 및 블록체인 시스템 | |
CN107438002B (zh) | 基于区块链的系统以及系统中的电子设备和方法 | |
CN107240017B (zh) | 区块链交易管理系统及方法 | |
Huang et al. | Scalable and redactable blockchain with update and anonymity | |
CN111130795A (zh) | 一种基于区块链技术的多级签名方法 | |
CN112184226B (zh) | 一种区块链动态分片方法及系统 | |
CN110610421B (zh) | 分片框架下的保证金管理方法及装置 | |
CN110070362A (zh) | 一种使用国密算法的金融行业区块链交易系统 | |
WO2021258548A1 (zh) | 一种交互式聚合签名方法、设备及存储介质 | |
US20220278854A1 (en) | Unity Protocol Consensus | |
CN109981690A (zh) | 一种基于区块链智能合约的防篡改定时数据保密传输方法 | |
Vives-Guasch et al. | A secure e-ticketing scheme for mobile devices with near field communication (NFC) that includes exculpability and reusability | |
CN111080296A (zh) | 一种基于区块链系统的验证方法及装置 | |
Sohrabi et al. | On the scalability of blockchain systems | |
Kohad et al. | Scalability issues of blockchain technology | |
US11424938B1 (en) | Credentialed miners for a blockchain | |
Zhao et al. | Fuzzy identity-based dynamic auditing of big data on cloud storage | |
CN111640018A (zh) | 一种区块链交易存在性验证方法及装置 | |
CN113177092B (zh) | 一种船舶制造检验数据的共享方法、联盟链及系统 | |
Sliwinski et al. | Abc: Proof-of-stake without consensus | |
Bezuidenhout et al. | Permissionless blockchain systems as pseudo-random number generators for decentralized consensus | |
CN112184245B (zh) | 一种跨区块链的交易身份确认方法及装置 | |
Liu et al. | An efficient strategy to eliminate malleability of bitcoin transaction | |
US11782758B2 (en) | Distributed computing system and method of operation thereof | |
CN113904869B (zh) | 一种区块链中恶意节点的检测方法及区块链 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |