CN112633879A - 应用于区块链中能够在无交易时不出空块的共识系统及方法 - Google Patents
应用于区块链中能够在无交易时不出空块的共识系统及方法 Download PDFInfo
- Publication number
- CN112633879A CN112633879A CN202011505424.5A CN202011505424A CN112633879A CN 112633879 A CN112633879 A CN 112633879A CN 202011505424 A CN202011505424 A CN 202011505424A CN 112633879 A CN112633879 A CN 112633879A
- Authority
- CN
- China
- Prior art keywords
- module
- transaction
- block
- consensus
- voting
- 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.)
- Granted
Links
Images
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/3827—Use of message hashing
-
- 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
- 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
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Accounting & Taxation (AREA)
- Computer Security & Cryptography (AREA)
- Finance (AREA)
- Strategic Management (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种应用于区块链中能够在无交易时不出空块的共识系统及方法,包括:交易池模块、Round管理模块、区块处理模块、无交易处理模块;所述交易池模块与区块处理模块相连;所述交易池模块与无交易处理模块相连;所述Round管理模块与交易池模块相连;所述区块处理模块包括:区块提议模块、对区块投票模块、区块确认模块;所述区块提议模块与对区块投票模块相连;所述区块确认模块与对区块投票模块相连。本发明解决了区块链在没有交易时,依然需要出空区块,额外占用存储空间的问题。
Description
技术领域
本发明涉及区块链技术领域,具体地,涉及一种应用于区块链中能够在无交易时不出空块的共识系统及方法。
背景技术
在区块链业务数据量大场景中,数据存储资源较为紧张。现有技术中亟需一种应用于区块链中能够在无交易时不出空块的共识系统及方法。
专利文献CN1936866A公开了一种具有数据还原功能的存储架构和方法。所述方法如下:闪存存储装置在初始化数据时保留了两个区域,一个为写入区,另一个为保护区。当数据写入时,系统将数据储存到闪存的写入区中,不会影响保护区内的数据,当闪存存储装置重新启动时,即可读取保护区内的数据,立刻进行数据还原。当读取数据时,透过两份物理地址映射表(LOGICAL TO PHYSICAL:LTP)可以得知最新的数据是在哪个区内,确保数据的同步。此发明可以应用于公众计算机及教学平台上,可以保证系统数据在系统重启后自动还原到初始值,不会影响下一位使用者。透过特殊的工具,也可以将写入区内的数据更新至保护区内,变成永久有效的数据。该专利在结构和性能上仍然有待提高的空间。
发明内容
针对现有技术中的缺陷,本发明的目的是提供一种应用于区块链中能够在无交易时不出空块的共识系统及方法。
根据本发明提供的一种应用于区块链中能够在无交易时不出空块的共识系统,包括:交易池模块、Round管理模块、区块处理模块、无交易处理模块;所述交易池模块与区块处理模块相连;所述交易池模块与无交易处理模块相连;所述Round管理模块与交易池模块相连;所述区块处理模块包括:区块提议模块、对区块投票模块、区块确认模块;所述区块提议模块与对区块投票模块相连;所述区块确认模块与对区块投票模块相连。
优选地,所述无交易处理模块包括:无交易消息广播模块。
优选地,所述无交易处理模块还包括:对消息投票模块;
所述对消息投票模块与无交易消息广播模块相连。
优选地,所述无交易处理模块还包括:Round状态更新模块。
优选地,所述Round管理模块包括:共识节点管理部件、Leader选举部件、Round状态管理部件;
所述Round管理模块根据区块链上系统合约信息,维护参与共识的节点信息;
优选地,还包括:共识节点、Leader节点;所述共识节点组成共识节点集合;所述Round管理模块根据当前区块高度信息从现有共识节点集合中选举Leader节点;所述Leader节点负责提议区块或者发出无交易消息;所述Round管理模块负责共识Round状态维护,包括对应区块高度下Round高度、已提议区块哈希值等内容。
优选地,所述区块处理模块用于完成包含交易的区块的共识流程,主要是由Leader节点提议区块,各个节点针对该提议区块进行投票,当集齐大多数投票后,则共识完成,确认该区块并通知上述Round管理模块进入新的高度继续共识。
优选地,所述无交易处理模块用于链上无交易时的共识处理逻辑,在共识流程的每个Round中,都存在一个Leader节点收集链上交易数据并打包区块,若在规定时间内未收到交易,则广播一个消息以表示此时无交易,网络中其他共识节点会对该消息进行投票,若集齐大多数投票,则确认此时无交易,通知Round模块更新状态,进入下一个Round继续共识;通过对无交易消息的投票,保证了共识节点在无交易的网络环境中保持Round同步;本模块通过无交易消息的投票确认流程,避免了空区块的产生,从而减少了额外存储空间。
优选地,所述对区块投票模块、对消息投票模块是通过各个节点对投票内容进行密码学数字签名实现,当收到节点对投票内容的数字签名即为收到该节点的投票,若集齐大多数节点对投票内容的签名消息即表示投票完成;
所述区块处理模块和无交易处理模块中的投票确认流程采用两阶段投票流程以实现拜占庭容错,即先针对区块或消息进行一轮投票,若首轮投票完成,则继续针对该区块或消息进行第二轮投票,若第二轮投票完成则本次投票完成;若两轮投票的任意一轮失败,则本次投票失败,进入下一个Round继续共识;
所述无交易处理模块中的投票签名能够采用门限签名等算法实现,以实现进一步减少无交易时的消息数据。
根据本发明提供的一种应用于区块链中能够在无交易时不出空块的共识方法,采用应用于区块链中能够在无交易时不出空块的共识系统,能够在无交易时不出空块的共识。
与现有技术相比,本发明具有如下的有益效果:
1、本发明解决了区块链在没有交易时,依然需要出空区块,额外占用存储空间的问题;
2、本发明通过针对无交易消息的投票机制,很好的实现了各节点行为的一致性,保证无论哪种原因造成的无交易,各诚实节点的行为总是一致的,从而保证共识算法活性与安全性;
3、本发明通过无交易处理模块,针对链上无交易发生的情况,进行了无交易消息投票流程,通过各个共识节点的投票,保证各个节点一致的进入下一个Round继续共识,从而保证了共识算法的正确性;与此同时,各个节点也没有空块产生,从而减少了数据存储。
附图说明
通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1为本发明中的结构框架示意图。
具体实施方式
下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变化和改进。这些都属于本发明的保护范围。
如图1所示,一种应用于区块链中可以在无交易时不出空块的共识算法,包括Round管理模块、区块处理模块、无交易处理模块等部分组成。
所述Round管理模块包含验证者管理、Leader选举、Round状态管理等功能;
所述区块处理模块包含区块提议、投票、确认等功能;
所述无交易处理模块包含无交易消息广播、投票、Round状态更新等功能;
所述Round模块包含共识节点管理、Leader选举、Round状态管理等功能,该模块根据区块链上系统合约信息维护参与共识的节点信息,
共识节点组成共识节点集合;该模块并根据当前区块高度信息从现有共识节点集合中选举Leader节点,该Leader节点负责提议区块或者发出无交易消息;该模块负责共识Round状态维护,包括对应区块高度下Round高度、已提议区块哈希值等内容;
所述区块处理模块用于完成包含交易的区块的共识流程,主要是由Leader节点提议区块,各个节点针对该提议区块进行投票,当集齐大多数投票后,则共识完成,确认该区块并通知上述Round管理模块进入新的高度继续共识;
所述无交易处理模块用于链上无交易时的共识处理逻辑,在共识流程的每个Round中,都存在一个Leader节点收集链上交易数据并打包区块,若在规定时间内未收到交易,则广播一个消息以表示此时无交易,网络中其他共识节点会对该消息进行投票,若集齐大多数投票,则确认此时无交易,通知Round模块更新状态,进入下一个Round继续共识;通过对无交易消息的投票,保证了共识节点在无交易的网络环境中保持Round同步;本模块通过无交易消息的投票确认流程,避免了空区块的产生,从而减少了额外存储空间。
所述区块处理模块和无交易处理模块中的投票是通过各个节点对投票内容进行密码学数字签名实现,当收到节点对投票内容的数字签名即为收到该节点的投票,若集齐大多数节点对投票内容的签名消息即表示投票完成;
所述区块处理模块和无交易处理模块中的投票确认流程采用两阶段投票流程以实现拜占庭容错,即先针对区块或消息进行一轮投票,若首轮投票完成,则继续针对该区块或消息进行第二轮投票,若第二轮投票完成则本次投票完成;若两轮投票的任意一轮失败,则本次投票失败,进入下一个Round继续共识;
所述无交易处理模块中的投票签名可以采用门限签名等算法实现,以实现进一步减少无交易时的消息数据。
一个节点没有收到交易原因是多样的,可能是网络故障、少数节点作恶等,而在没有交易时,单个节点无法自动识别无交易的具体原因,各节点可能会做出不一致的行为导致共识失败;本发明通过针对无交易消息的投票机制,很好的实现了各节点行为的一致性,保证无论哪种原因造成的无交易,各诚实节点的行为总是一致的,从而保证共识算法活性与安全性。
本共识算法既保证共识算法活性与安全性,又避免了空区块的产生,降低了数据存储成本。
在本申请的描述中,需要理解的是,术语“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本申请和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本申请的限制。
以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变化或修改,这并不影响本发明的实质内容。在不冲突的情况下,本申请的实施例和实施例中的特征可以任意相互组合。
Claims (10)
1.一种应用于区块链中能够在无交易时不出空块的共识系统,其特征在于,包括:交易池模块、Round管理模块、区块处理模块、无交易处理模块;
所述交易池模块与区块处理模块相连;
所述交易池模块与无交易处理模块相连;
所述Round管理模块与交易池模块相连;
所述区块处理模块包括:区块提议模块、对区块投票模块、区块确认模块;
所述区块提议模块与对区块投票模块相连;
所述区块确认模块与对区块投票模块相连。
2.根据权利要求1所述的应用于区块链中能够在无交易时不出空块的共识系统,其特征在于,所述无交易处理模块包括:无交易消息广播模块。
3.根据权利要求2所述的应用于区块链中能够在无交易时不出空块的共识系统,其特征在于,所述无交易处理模块还包括:对消息投票模块;
所述对消息投票模块与无交易消息广播模块相连。
4.根据权利要求3所述的应用于区块链中能够在无交易时不出空块的共识系统,其特征在于,所述无交易处理模块还包括:Round状态更新模块。
5.根据权利要求1所述的应用于区块链中能够在无交易时不出空块的共识系统,其特征在于,所述Round管理模块包括:共识节点管理部件、Leader选举部件、Round状态管理部件;
所述Round管理模块根据区块链上系统合约信息,维护参与共识的节点信息。
6.根据权利要求1所述的应用于区块链中能够在无交易时不出空块的共识系统,其特征在于,还包括:共识节点、Leader节点;
所述共识节点组成共识节点集合;
所述Round管理模块根据当前区块高度信息从现有共识节点集合中选举Leader节点;
所述Leader节点负责提议区块或者发出无交易消息。
7.根据权利要求1所述的应用于区块链中能够在无交易时不出空块的共识系统,其特征在于,所述区块处理模块用于完成包含交易的区块的共识流程。
8.根据权利要求1所述的应用于区块链中能够在无交易时不出空块的共识系统,其特征在于,所述无交易处理模块用于链上无交易时的共识处理逻辑。
9.根据权利要求1所述的应用于区块链中能够在无交易时不出空块的共识系统,其特征在于,所述对区块投票模块、对消息投票模块是通过各个节点对投票内容进行密码学数字签名实现。
10.一种应用于区块链中能够在无交易时不出空块的共识方法,其特征在于,采用权利要求1-9任一项所述的应用于区块链中能够在无交易时不出空块的共识系统,能够在无交易时不出空块的共识。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011505424.5A CN112633879B (zh) | 2020-12-18 | 2020-12-18 | 应用于区块链中能够在无交易时不出空块的共识系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011505424.5A CN112633879B (zh) | 2020-12-18 | 2020-12-18 | 应用于区块链中能够在无交易时不出空块的共识系统及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112633879A true CN112633879A (zh) | 2021-04-09 |
CN112633879B CN112633879B (zh) | 2022-11-04 |
Family
ID=75317092
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011505424.5A Active CN112633879B (zh) | 2020-12-18 | 2020-12-18 | 应用于区块链中能够在无交易时不出空块的共识系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112633879B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113783708A (zh) * | 2021-08-25 | 2021-12-10 | 山东区块链研究院 | 一种基于可靠广播的可再投票二元共识方法及装置 |
WO2023109040A1 (zh) * | 2021-12-15 | 2023-06-22 | 达闼科技(北京)有限公司 | 联盟链出块方法、装置、电子设备及介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109088914A (zh) * | 2018-07-03 | 2018-12-25 | 深圳智乾区块链科技有限公司 | 区块的生成方法、区块链生态系统及计算机可读存储介质 |
CN110322350A (zh) * | 2019-06-25 | 2019-10-11 | 北京众享比特科技有限公司 | 裁剪共识网络中空区块的方法、装置、设备和存储介质 |
CN110321074A (zh) * | 2019-05-20 | 2019-10-11 | 西安电子科技大学 | 基于区块链和分布式存储系统的安全存储证明的共识方法 |
CN110889761A (zh) * | 2019-11-08 | 2020-03-17 | 深圳付贝科技有限公司 | 一种跨链交易方法及存储介质 |
CN111917729A (zh) * | 2020-07-09 | 2020-11-10 | 财付通支付科技有限公司 | 动态注入测试方法及装置、相关设备 |
-
2020
- 2020-12-18 CN CN202011505424.5A patent/CN112633879B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109088914A (zh) * | 2018-07-03 | 2018-12-25 | 深圳智乾区块链科技有限公司 | 区块的生成方法、区块链生态系统及计算机可读存储介质 |
CN110321074A (zh) * | 2019-05-20 | 2019-10-11 | 西安电子科技大学 | 基于区块链和分布式存储系统的安全存储证明的共识方法 |
CN110322350A (zh) * | 2019-06-25 | 2019-10-11 | 北京众享比特科技有限公司 | 裁剪共识网络中空区块的方法、装置、设备和存储介质 |
CN110889761A (zh) * | 2019-11-08 | 2020-03-17 | 深圳付贝科技有限公司 | 一种跨链交易方法及存储介质 |
CN111917729A (zh) * | 2020-07-09 | 2020-11-10 | 财付通支付科技有限公司 | 动态注入测试方法及装置、相关设备 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113783708A (zh) * | 2021-08-25 | 2021-12-10 | 山东区块链研究院 | 一种基于可靠广播的可再投票二元共识方法及装置 |
WO2023109040A1 (zh) * | 2021-12-15 | 2023-06-22 | 达闼科技(北京)有限公司 | 联盟链出块方法、装置、电子设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112633879B (zh) | 2022-11-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112633879B (zh) | 应用于区块链中能够在无交易时不出空块的共识系统及方法 | |
CN103077222B (zh) | 机群文件系统分布式元数据一致性保证方法及系统 | |
CN106878473A (zh) | 一种消息处理方法、服务器集群及系统 | |
CN109308227B (zh) | 故障检测控制方法及相关设备 | |
CN111711526A (zh) | 一种区块链节点的共识方法及系统 | |
CN104486438B (zh) | 分布式存储系统的容灾方法及装置 | |
CN112835743A (zh) | 分布式账本数据存储优化方法、装置、电子设备及介质 | |
CN110348826A (zh) | 异地多活容灾方法、系统、设备及可读存储介质 | |
WO2011120452A2 (zh) | 更新数据的方法和控制装置 | |
EP4060514A1 (en) | Distributed database system and data disaster backup drilling method | |
KR100922584B1 (ko) | 객체 기반 분산 공유 시스템 및 그의 방법 | |
CN113010549A (zh) | 基于异地多活系统的数据处理方法、相关设备及存储介质 | |
CN113326006A (zh) | 一种基于纠删码的分布式块存储系统 | |
CN115037472B (zh) | 基于双层dag共识机制的交易处理方法及系统、服务设备 | |
CN109167690A (zh) | 一种分布式系统中节点服务的恢复方法、装置及相关设备 | |
Bouteiller et al. | Reasons for a pessimistic or optimistic message logging protocol in MPI uncoordinated failure, recovery | |
CN114168636A (zh) | 基于缓存一致性的数据处理方法、装置、设备及存储介质 | |
CN114936253A (zh) | 区块链的共识方法及装置、电子设备、存储介质 | |
CN102664757A (zh) | 一种存储设备的级联方法及装置 | |
CN104158843B (zh) | 分布式文件存储系统的存储单元失效检测方法及装置 | |
CN111291063B (zh) | 主备副本选举方法、系统、计算机设备和存储介质 | |
CN117812084A (zh) | 一种基于UTXO的Raft共识算法改进方法 | |
CN113051428A (zh) | 一种摄像机前端存储备份的方法及装置 | |
CN116303789A (zh) | 多分片多副本数据库并行同步方法、装置及可读介质 | |
CN113742417B (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 |