CN110995790B - 一种解决区块链网络共识不确定性的方法 - Google Patents
一种解决区块链网络共识不确定性的方法 Download PDFInfo
- Publication number
- CN110995790B CN110995790B CN201911115158.2A CN201911115158A CN110995790B CN 110995790 B CN110995790 B CN 110995790B CN 201911115158 A CN201911115158 A CN 201911115158A CN 110995790 B CN110995790 B CN 110995790B
- Authority
- CN
- China
- Prior art keywords
- peer
- time slice
- coordination
- block
- node
- 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
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提出了一种解决区块链网络共识不确定性的方法,通过增加对等协调节点,对节点生成的共识区块竞争过程实现了时间因素控制,使得生成的共识区块能在全网得到共识;保证了区块链网络在确定的时间内能够计算出确定的结果,也解决了分叉问题,进而避免了分叉和反转现象的发生,使得基于广域网的区块链网络布局成为可能;在保留区块链灵活组网的优点基础之上,满足了工业生产确定性需求,提升了网络可分析能力,大大推动了广域网区块链网络的工业化。
Description
技术领域
本发明涉及区块链共识技术领域,尤其涉及一种解决区块链网络共识不确定性的方法。
背景技术
区块链是一种多方共同维护,使用密码学保证传输和访问安全,能够实现数据一致存储、难以篡改、防止抵赖的记账技术;区块链分成基于局域网的区块链网络和基于广域网的区块链网络,而基于广域网的区块链网络,主要使用的解决“竞争性”记账的共识算法是POW(工作量证明,Proof of Work)、POS(股权证明,Proof of Stake)及相应衍生的算法,但是使用上述机制会产生分叉的现象,区块链分叉就是指区块链在进行“竞争性记账”时发生了冲突;由于分叉的存在,导致反转现象的出现;即已经确认的共识区块,经过一段时间之后变成无效,需要将此部分去除掉;正因为这种分叉和反转现象,带来了区块链上记录交易结果的不确定性。
基于广域网的区块链网络是未来社会的方向,由于这种共识区块的不确定性,致使广域网区块链网络无法工业化、商用化和规模化,阻碍了社会数字化的发展。
发明内容
本发明的目的在于,针对上述问题,提出一种解决区块链网络共识不确定性的方法,通过控制记账权竞争过程中的时间因素,使得整个竞争过程具有确定性,即在特定的时间范围内,全网共识出一个共识区块,避免当前被确认的共识区块出现反转。
一种解决区块链网络共识不确定性的方法,在区块链网络中设置一个或多个对等协调节点以及全网同步的时间片序列,对等协调节点和已有的对等计算节点严格地被限定在允许的时间片内完成操作,使得区块链网络在确定的时间范围内能够产生确定的结果,解决当前被确认的区块可能被反转的问题。
所述时间片序列由对等协调节点产生和存储,并分配给对等计算节点。
所述时间片序列包括第一时间片、第二时间片、第三时间片和第四时间片。
所述第一时间片内对等协调节点允许执行的操作,包括如下步骤:
S11:获取临时存储的协调区块信息;
S12:将此协调区块保存到正式存储;
S13:将高度大于或等于本地高度的竞争结果删除。
所述第一时间片内对等计算节点允许执行的操作,包括如下步骤:
S21:存储上一个周期被承认的共识区块和协调区块,并更新本地最大高度;
S22:判断当前节点是否可以对外服务,是则进入下一步骤,否则终止此过程;
S23:获取验证过的交易并生成预共识区块;
S24:向对等协调节点进行共识备案投票,并向全网的对等计算节点广播。
所述第二时间片内对等协调节点允许执行的操作,还包括如下步骤:
S31:根据备案计算竞争结果;
S32:获取竞争结果集进行打包得到协调区块;
S33:将打包结果进行缓存。
所述第三时间片内对等计算节点允许执行的操作,包括如下步骤:
S41:从对等协调节点获取协调区块;
S42:判断本地是否有对等协调节点认可的区块,是则进入下一步骤,否则向全网其他对等计算节点更新对等协调节点认可的区块;
S43:将预共识区块保存到临时存储,并向对等协调节点进行同步备案投票。
所述第四时间片内对等协调节点允许执行的操作,包括如下步骤:
S51:统计各对等计算节点的同步备案结果;
S52:将缓存中的协调区块保存到临时存储。
所述对等协调节点从缓存中循环获取时间片,并在全网中同步下发所获时间片。
所述获取时间片是在时间片序列中依次获取第一、第二、第三以及第四时间片。
所述对等协调节点获取时间片后,判断所获时间片是否过期,如果过期,就不做任何操作;否则,将此时间片进行下发。
所述时间片序列的每个时间片允许的操作均执行完后,生成一个全网共识的共识区块。
在预设时间内没有执行完时间片,所述对等协调节点将继续在全网下发下一个时间片并在当前时间片周期内不会产生共识区块。
所述对等协调节点在时间片序列下发完后,循环获取下一时间片序列,并将当前时间片序列生成的共识的区块上链,以此形成链式结构。
本发明的有益效果:本方法保证了区块链网络在确定的时间内能够计算出确定的结果,解决了分叉问题,进而避免了分叉和反转现象的发生,使得基于广域网的区块链网络布局成为可能;本方案使得在保留区块链灵活组网的优点基础之上,满足工业生产确定性需求,提升了网络可分析能力,大大推动了广域网区块链网络的工业化。
附图说明
图1是本发明时间片序列示意图;
图2是本发明第一时间片允许对等协调节点操作流程图;
图3是本发明第一时间片允许对等计算节点操作流程图;
图4是本发明第二时间片允许对等协调节点操作流程图;
图5是本发明第三时间片允许对等计算节点操作流程图;
图6是本发明第四时间片允许对等协调节点操作流程图。
具体实施方式
为了对本发明的技术特征、目的和效果有更加清楚的理解,现对照附图说明本发明的具体实施方式。
本实施例中,在区块链网络中设置一个或多个对等协调节点以及全网同步的如图1所示的时间片序列,对等协调节点和已有的对等计算节点严格地被限定在允许的时间片内完成操作,使得区块链网络在确定的时间范围内能够产生确定的结果,解决当前被确认的共识区块可能被反转的问题。
节点是区块链系统运行的参与者,在系统运行中承担不同的角色;每个节点可以是一个物理机器,也可以是一个完整的子系统,整个系统中会有任意多个节点。
本实施例中,对等协调节点,在系统运行中处于监管者和调度者角色的节点,负责整个系统时间片分发、计算能力均衡、交易确认监管等职能;一般应由系统建设者负责搭建和运维。
而对等计算节点,在系统中处于执行者角色的节点,负责账本管理、交易请求响应等职能;一般系统的任意参与者均可搭建和运维,可自由进出系统。
时间片序列由对等协调节点产生和存储,并分配给对等计算节点,时间片序列中包含了第一时间片、第二时间片、第三时间片以及第四时间片;对等协调节点从自身存储缓存中循环获取当前时间片序列的时间片,并在全网中同步下发所获时间片。
时间片即由对等协调节点分配给自己以及对等计算节点的时间,每个线程被分配一个时间段,即该进程允许运行的时间。
每获取一个时间片,对等协调节点就判断所获时间片是否为过期时间片,即所获时间片允许的操作在该时间片序列中已经执行完成,当所获时间片为过期时间片时,不执行任何操作,如果所获时间片为该时间片序列的下一个时间片,即未执行的可执行操作,则对等协调节点在全网进行下发,全网的对等计算节点以及对等协调节点根据该时间片允许的操作进行执行。
对等协调节点在存储中获取时间片是按照时间片序列中的第一、第二、第三以及第四时间片依次获取,因此时间片序列内节点的操作将按照固定的操作流程进行,时间片序列的每个时间片允许的操作均执行完后,生成一个全网共识的共识区块。
特别的,为时间片序列中的每个时间片的执行预设时间,如果某个时间片在规定的时间内没有执行完,即在预设时间内没有执行完时间片,对等协调节点将继续向全网下发所获下一个时间片,全网各节点将继续执行下一个时间片,对等计算节点在此时间片周期内不会产生有交易的共识区块,对交易数据不会产生任何影响。
对等协调节点在时间片序列下发完后,循环获取下一时间片序列,并将当前时间片序列生成的共识的区块上链,以此形成链式结构。
时间片序列中每个时间片所允许的操作如下:
如图2所示第一时间片内对等协调节点允许执行的操作,包括如下步骤:
S11:获取临时存储的协调区块信息;
S12:将此协调区块保存到正式存储;
S13:将高度大于或等于本地高度的竞争结果删除。
如图3所示第一时间片内对等计算节点允许执行的操作,包括如下步骤:
S21:存储上一个周期被承认的共识区块和协调区块,并更新本地最大高度;
S22:判断当前节点是否可以对外服务,是则进入下一步骤,否则此过程终止;
S23:获取验证过的交易并生成预共识区块;
S24:向对等协调节点进行共识备案投票,并向全网的对等计算节点广播。
第一时间片允许对等协调节点和对等计算节点执行上述操作步骤;具体的在第一时间片内,对等计算节点存储上一个周期被承认的共识区块和协调区块,并更新本地最大高度。对等计算节点判断自己是否能够对外服务,如果能够服务,则获取验证过的交易并生成预共识区块,向对等协调节点进行共识备案投票,并向全网的对等计算节点广播;对等协调节点获取临时存储的协调区块信息,将系协调区块保存到正式存储,并将高度大于等于本地高度的竞争结果删除。
如图4所示,第二时间片内对等协调节点允许执行的操作,还包括如下步骤:
S31:根据备案计算竞争结果;
S32:获取竞争结果集进行打包得到协调区块;
S33:将打包结果进行缓存。
第二时间片允许对等协调节点进行操作,此时对等计算节点轮空,对等协调节点根据备案计算竞争结果,进行打包操作,之后将打包的结果进行保存。
如图5所示,第三时间片内对等计算节点允许执行的操作,包括如下步骤:
S41:从对等协调节点获取协调区块;
S42:判断本地是否有对等协调节点认可的区块,是则进入下一步骤,否则向全网其他对等计算节点更新对等协调节点认可的区块;
S43:将预共识区块保存到临时存储,并向对等协调节点进行同步备案投票。
第三时间片允许对等计算节点进行操作,此时对等协调节点轮空,对等计算节点向对等协调节点获取到协调区块,并判断本地是否有对等协调节点认可的区块,有则将预共识区块保存到临时存储,并向对等协调节点进行同步备案投票。
如图6所示,第四时间片内对等协调节点允许执行的操作,包括如下步骤:
S51:统计各对等计算节点的同步备案结果;
S52:将缓存中的协调区块保存到临时存储。
此时第四时间片允许对等协调节点操作,对等计算节点轮空,对等协调节点统计各对等计算节点的同步备案结果,并将缓存中的协调区块保存到临时存储。
对等协调节点根据同步备案结果得到预共识区块,根据预共识区块统计出共识区块。
第一时间片主要解决区块生成问题,第二时间片主要解决竞争问题,第三时间片和第四时间片主要解决记账权问题。
本方案通过增加对等协调节点,对节点生成的区块竞争过程实现了时间因素控制,使得生成的区块能在全网得到共识,从而避免了反转的可能。
以上显示和描述了本发明的基本原理和主要特征和本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书界定。
Claims (7)
1.一种解决区块链网络共识不确定性的方法,其特征在于,在区块链网络中设置一个或多个对等协调节点以及全网同步的时间片序列,对等协调节点和已有的对等计算节点严格地被限定在允许的时间片内完成操作,使得区块链网络在确定的时间范围内能够产生确定的结果,解决当前被确认的区块可能被反转的问题;所述时间片序列由对等协调节点产生和存储,并分配给对等计算节点;所述时间片序列包括第一时间片、第二时间片、第三时间片和第四时间片;
所述对等协调节点在第一时间片内被允许执行的操作包括如下步骤:
S11:获取临时存储的协调区块信息;
S12:将此协调区块信息保存到正式存储;
S13:将高度大于或等于本地高度的竞争结果删除;
所述对等计算节点在第一时间片内被允许执行的操作包括如下步骤:
S21:存储上一个周期被承认的共识区块和协调区块,并更新本地最大高度;
S22:判断当前节点是否可以对外服务,是则进入下一步骤,否则终止此过程;
S23:获取验证过的交易并生成预共识区块;
S24:向对等协调节点进行共识备案投票,并向全网的对等计算节点广播;
所述对等协调节点在第二时间片内被允许执行的操作包括如下步骤:
S31:根据备案计算竞争结果;
S32:获取竞争结果集进行打包得到协调区块;
S33:将打包结果进行缓存;
所述对等计算节点在第三时间片内被允许执行的操作包括如下步骤:
S41:从对等协调节点获取协调区块;
S42:判断本地是否有对等协调节点认可的区块,是则进入下一步骤,否则向全网其他对等计算节点更新对等协调节点认可的区块;
S43:将预共识区块保存到临时存储,并向对等协调节点进行同步备案投票;
所述对等协调节点在第四时间片内被允许执行的操作包括如下步骤:
S51:统计各对等计算节点的同步备案结果;
S52:将缓存中的协调区块保存到临时存储。
2.根据权利要求1所述的一种解决区块链网络共识不确定性的方法,其特征在于,所述对等协调节点从其缓存中循环获取时间片,并在全网中同步下发所获时间片。
3.根据权利要求2所述的一种解决区块链网络共识不确定性的方法,其特征在于,所述获取时间片是在时间片序列中依次获取第一、第二、第三以及第四时间片。
4.根据权利要求2所述的一种解决区块链网络共识不确定性的方法,其特征在于,所述对等协调节点获取时间片后,判断所获时间片是否过期,如果过期,就不做任何操作;否则,将此时间片进行下发。
5.根据权利要求2所述的一种解决区块链网络共识不确定性的方法,其特征在于,所述时间片序列的每个时间片允许的操作均执行完后,生成一个全网共识的共识区块。
6.根据权利要求2所述的一种解决区块链网络共识不确定性的方法,其特征在于,在预设时间内没有执行完时间片,所述对等协调节点将继续在全网下发下一个时间片并在当前时间片周期内不会产生共识区块。
7.根据权利要求2所述的一种解决区块链网络共识不确定性的方法,其特征在于,所述对等协调节点在时间片序列下发完后,循环获取下一时间片序列,并将当前时间片序列生成的共识的区块上链,以此形成链式结构。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911115158.2A CN110995790B (zh) | 2019-11-14 | 2019-11-14 | 一种解决区块链网络共识不确定性的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911115158.2A CN110995790B (zh) | 2019-11-14 | 2019-11-14 | 一种解决区块链网络共识不确定性的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110995790A CN110995790A (zh) | 2020-04-10 |
CN110995790B true CN110995790B (zh) | 2021-05-18 |
Family
ID=70084398
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911115158.2A Active CN110995790B (zh) | 2019-11-14 | 2019-11-14 | 一种解决区块链网络共识不确定性的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110995790B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111382456B (zh) * | 2020-06-01 | 2020-10-23 | 腾讯科技(深圳)有限公司 | 提案消息处理方法、装置、设备以及存储介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107171829A (zh) * | 2017-04-24 | 2017-09-15 | 杭州趣链科技有限公司 | 一种基于bft共识算法实现的动态节点管理方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106874087A (zh) * | 2017-01-25 | 2017-06-20 | 上海钜真金融信息服务有限公司 | 一种区块链智能合约定时任务调度方法 |
US20190238316A1 (en) * | 2018-01-31 | 2019-08-01 | Salesforce.Com, Inc. | Systems, methods, and apparatuses for implementing intelligent consensus, smart consensus, and weighted consensus models for distributed ledger technologies in a cloud based computing environment |
CN109064327B (zh) * | 2018-06-29 | 2021-01-08 | 浙江超脑时空科技有限公司 | 一种智能合约处理方法、装置及设备 |
CN109214795A (zh) * | 2018-09-18 | 2019-01-15 | 北京物链互联科技有限公司 | 一种基于dag算法的区块链混合共识方法 |
CN109685502B (zh) * | 2018-12-06 | 2021-04-30 | 成都佰纳瑞信息技术有限公司 | 一种适用于区块链网络的加速共识方法 |
-
2019
- 2019-11-14 CN CN201911115158.2A patent/CN110995790B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107171829A (zh) * | 2017-04-24 | 2017-09-15 | 杭州趣链科技有限公司 | 一种基于bft共识算法实现的动态节点管理方法 |
Also Published As
Publication number | Publication date |
---|---|
CN110995790A (zh) | 2020-04-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107169865B (zh) | 基于区块链技术的资产数据处理系统 | |
KR101994455B1 (ko) | 시스템에 포함되는 노드들에 대하여 그룹을 운영하는 분산 네트워크 시스템 | |
CN107733651A (zh) | 一种区块链生成方法、节点及系统 | |
CN104375882B (zh) | 匹配于高性能计算机结构的多级嵌套数据驱动计算方法 | |
CN111130790B (zh) | 基于区块链节点网络的共识出块方法 | |
CN106161485B (zh) | 一种基础服务集群的资源调度方法、装置和系统 | |
CN110995790B (zh) | 一种解决区块链网络共识不确定性的方法 | |
CN102833160A (zh) | 基于接触预测的大规模移动容迟网络分簇路由方法及其系统 | |
CN111614708A (zh) | 一种基于区块链的交易系统 | |
CN103634184A (zh) | 一种can总线主从应答模式协议的网络调度算法 | |
CN108833610B (zh) | 一种信息更新方法、装置及系统 | |
CN108479072A (zh) | 一种用于策略类游戏大型场景的数据同步方法及系统 | |
CN111818181B (zh) | 基于区块链的数据处理方法、装置及计算机可读存储介质 | |
KR102403476B1 (ko) | 딥러닝 분산 학습 시스템 및 동작 방법 | |
CN109005223A (zh) | 物联网资源调度方法及系统、计算机可读存储介质和终端 | |
CN111552573B (zh) | 一种区块链异构系统及人工智能算力网络 | |
TW202132989A (zh) | 一種巡檢方法及裝置 | |
CN107203221B (zh) | 无人机和有人机混合编队内的在线信息分发方法和装置 | |
CN103763765B (zh) | 一种无线传感器网络的自同步方法 | |
CN102571913B (zh) | 一种基于网络传输开销的数据迁移方法 | |
CN110034942A (zh) | 一种基于半双工电台的组网通信控制方法和系统 | |
CN111988345B (zh) | 一种信息同步的方法及设备 | |
KR20220082074A (ko) | 합의 메커니즘이 있는 분산 네트워크 | |
CN106936905A (zh) | 基于openstack的Nova组件虚拟机的调度方法及其调度系统 | |
CN116629350A (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 |