CN114861233A - 一种无需可信第三方的分片异步拜占庭容错共识方法和装置 - Google Patents

一种无需可信第三方的分片异步拜占庭容错共识方法和装置 Download PDF

Info

Publication number
CN114861233A
CN114861233A CN202210410655.0A CN202210410655A CN114861233A CN 114861233 A CN114861233 A CN 114861233A CN 202210410655 A CN202210410655 A CN 202210410655A CN 114861233 A CN114861233 A CN 114861233A
Authority
CN
China
Prior art keywords
consensus
nodes
node
trusted
chain
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
Application number
CN202210410655.0A
Other languages
English (en)
Other versions
CN114861233B (zh
Inventor
谭林
姚昱旻
陈宇田
杨征
王云丽
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hunan Tianhe Guoyun Technology Co Ltd
Original Assignee
Hunan Tianhe Guoyun Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hunan Tianhe Guoyun Technology Co Ltd filed Critical Hunan Tianhe Guoyun Technology Co Ltd
Priority to CN202210410655.0A priority Critical patent/CN114861233B/zh
Publication of CN114861233A publication Critical patent/CN114861233A/zh
Application granted granted Critical
Publication of CN114861233B publication Critical patent/CN114861233B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3829Payment protocols; Details thereof insuring higher security of transaction involving key management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/401Transaction verification
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/085Secret sharing or secret splitting, e.g. threshold schemes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • H04L9/3255Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures using group based signatures, e.g. ring or threshold signatures

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Finance (AREA)
  • General Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Hardware Redundancy (AREA)

Abstract

本发明公开了一种无需可信第三方的分片异步拜占庭容错共识方法和装置,该方法包括:对节点进行分片处理,采用“1主链+N从链”的共识模式;各分片维护对应从链,由分片中的代表节点维护主链;对于片内交易,只在对应子网下达成共识,再由代表节点广播给其余分片的代表节点;对于跨片交易,交由代表节点进行主链上的共识,并使得交易相关的分片中均达成共识;若存在分片无法达成共识,则其他分片状态回滚;所述从链仅记录通过共识的片内交易和与本分片相关的跨片交易。该装置用来实施上述方法。本发明具有原理简单、易实现、适用范围广、扩展性好等优点。

Description

一种无需可信第三方的分片异步拜占庭容错共识方法和装置
技术领域
本发明主要涉及到互联网安全技术领域,特指一种无需可信第三方的分片异步拜占庭容错共识方法和装置。
背景技术
在目前种类繁多的BFT(拜占庭容错,Byzantine Fault-Tolerant)共识中,异步拜占庭容错共识机制的鲁棒性最高,因此适用于节点规模较大、网络带宽受限等苛刻场景。
但是,现有的方法还是存在一些不足:
1、可扩展性低:当参与共识的节点数N较大时,由于每个节点都需要并行运行N个ABA实例,且Honey Badger BFT中的每个ABA实例均存在门限签名相关计算,CPU负载增长将使得共识效率显著降低。
2、安全性降低:Honey Badger BFT中的门限签名模块引入可信第三方来实现私钥份额的生成和分发,存在一定安全风险。
发明内容
本发明要解决的技术问题就在于:针对现有技术存在的技术问题,本发明提供一种原理简单、易实现、适用范围广、扩展性好的无需可信第三方的分片异步拜占庭容错共识方法和装置。
为解决上述技术问题,本发明采用以下技术方案:
一种无需可信第三方的分片异步拜占庭容错共识方法,其包括:
对节点进行分片处理,采用“1主链+N从链”的共识模式;各分片维护对应从链,由分片中的代表节点维护主链;
对于片内交易,只在对应子网下达成共识,再由代表节点广播给其余分片的代表节点;对于跨片交易,交由代表节点进行主链上的共识,并使得交易相关的分片中均达成共识;若存在分片无法达成共识,则其他分片状态回滚;
所述从链仅记录通过共识的片内交易和与本分片相关的跨片交易。
作为本发明的进一步改进:各节点并行发起共识提议proposal通过RBC协议发送到其他节点。
作为本发明的进一步改进:各节点根据每个RBC实例的成功与否输入0或1;其中0表示失败,1表示成功,执行对应的ABA实例;所述ABA为异步二进制协定。
作为本发明的进一步改进:所述ABA对于无法达成共识的情况,采用基于门限签名的随机源来作决策。
作为本发明的进一步改进:根据ABA协议输出的0或1判断对应的共识提议proposal是否成功通过共识。
作为本发明的进一步改进:在步骤S1中,对单一分片中的节点数量设置下限阈值;初始化时,先划分容量为下限阈值的若干分片,再将剩余节点统一归入最后的分片中。
作为本发明的进一步改进:各分片采用DPoS进行代表节点的选取,在网络中并行片内共识和跨片共识;所述DPoS为代理权益证明。
作为本发明的进一步改进:所述从链仅记录通过共识的片内交易和与本分片相关的跨片交易,相当于主链部分副本,而主链上记录所有分片通过共识的片内交易和跨片交易。
作为本发明的进一步改进:采用扣除代币的惩罚机制用以避免各分片中代表节点作恶的情况。
作为本发明的进一步改进:所述主链和各分片对应从链上的共识流程包括:
步骤S101:各节点并行发起共识提议proposal;
步骤S102:若步骤S101中节点Pj对应的RBCj实例执行结束并成功,则将ABAj输入1,否则输入0;初始化r为0,estr为上述输入,并广播投票信息BVALr(estr);
步骤S103:初始化bin_valuesr和valsr为空集;
步骤S104:当收到来自f+1个节点的BVALr(b)时,若自身还未发送过投票信息b,则也广播BVALr(b);
步骤S105:当收到来自2f+1个节点的BVALr(b)时,将投票信息b并入集合bin_valuesr
步骤S106:广播第二次投票信息AUXr(b),并等待,直至收到来自2f+1个节点的二次投票信息在集合bin_valuesr中的AUXr包,将其中包含的投票信息并入集合valsr
步骤S107:若|valsr|=1,则ABAj实例执行结束,输出valsr中唯一的投票信息;若|valsr|=2,则进入步骤S108,引入随机源来作决策;
步骤S108:初始化S,∑,R,C为空集,并计算对于h|r的VRF结果(rii),其中h为上一区块哈希,|表示拼接;作为分发者运行AVSS_Shi,以(rii)为输入,并对于所有j∈{1,...,N},j≠i,作为接收者运行AVSS_Shj
步骤S109:当得到AVSS_Shj输出后,将j并入集合S;直到|S|=2f+1时,令集合
Figure BDA0003604029160000031
并广播消息
Figure BDA0003604029160000032
当收到来自节点Pj的第一次
Figure BDA0003604029160000033
时,等待,直到
Figure BDA0003604029160000034
时,对
Figure BDA0003604029160000035
的哈希值进行签名,并返回给Pj消息
Figure BDA0003604029160000036
当收到来自节点Pj
Figure BDA0003604029160000037
时,验签通过后将
Figure BDA0003604029160000038
并入∑;直到|∑|=2f+1时,广播消息
Figure BDA0003604029160000039
当收到第一次来自任意节点(假设是Pj)的
Figure BDA00036040291600000310
时,验证|∑j|=2f+1及∑j下所有对
Figure BDA00036040291600000311
的签名合法后,令集合
Figure BDA00036040291600000312
并对于所有
Figure BDA00036040291600000313
广播消息REC_REQUEST(k);等待,直到获得所有AVSS_Reck的输出(rkk);对于每个(rkk)作VRF验证,通过后将(k,rkk)并入R;若R不为空集,则选出满足rl最大的l,广播消息CANDIDATE(l,rll),否则广播消息CANDIDATE(null,null,null);当收到第一次来自任意节点的REC_REQUEST(k)时,等待,直到
Figure BDA0003604029160000044
不为空集且已获得AVSS_Shk输出时,运行AVSS_Reck;当收到来自节点Pj的第一次CANDIDATE(l′,rl′l′)时,令计数器X(初始化为0)加一,且若l′不为null,作(rl′k′)的VRF验证,通过后将(j,l′,rk′k′)并入C;直到计数器等于2f+1时,选出满足
Figure BDA0003604029160000041
最大的
Figure BDA0003604029160000042
步骤S110:令r=r+1,
Figure BDA0003604029160000043
广播投票信息BVALr(estr);回到步骤S103。
本发明进一步提供一种无需可信第三方的分片异步拜占庭容错共识装置,其包括若干个节点,对所述节点进行分片处理,采用“1主链+N从链”的共识模式;各分片维护对应从链,由分片中的代表节点维护主链;对于片内交易,只在对应子网下达成共识,再由代表节点广播给其余分片的代表节点;对于跨片交易,交由代表节点进行主链上的共识,并使得交易相关的分片中均达成共识;若存在分片无法达成共识,则其他分片状态回滚;所述从链仅记录通过共识的片内交易和与本分片相关的跨片交易。
与现有技术相比,本发明的优点就在于:
本发明的无需可信第三方的分片异步拜占庭容错共识方法和装置,原理简单、易实现、适用范围广,为基于其中的蜜獾拜占庭容错共识作出的优化改进;本发明基于分片技术,采用“1主链+N从链”的共识模式,相较于全网络下运行单一蜜獾拜占庭容错共识,有效提高可扩展性;同时本发明针对原始蜜獾拜占庭容错共识中基于门限签名的抛币模块,采用VRF和AVSS技术来替代实现,去除了初始化时依赖于可信第三方的密钥生成,有效提高了安全性。
本发明基于VRF(可验证随机函数,verifiable random function)和AVSS(异步可验证秘密共享,asynchronous verifiable secret sharing)来构建不需要可信第三方的随机源,用于ABA协议(异步二进制协定,asynchronous binary agreement)在无法达成唯一共识时的抛币,作为新的共识投票,进入下一轮ABA,迭代直到共识完成。
附图说明
图1是本发明方法在具体实施例中的流程示意图。
图2是本发明方法在具体实施例中的原理示意图。
图3是本发明装置在具体应用实例中的原理示意图。
图4是本发明在一个具体应用实例中的完成流程示意图。
具体实施方式
以下将结合说明书附图和具体实施例对本发明做进一步详细说明。
本发明的一种无需可信第三方的分片异步拜占庭容错共识方法,其包括:
对节点进行分片处理,采用“1主链+N从链”的共识模式;各分片维护对应从链,由分片中的代表节点维护主链;
对于片内交易,只在对应子网下达成共识,再由代表节点广播给其余分片的代表节点;
对于跨片交易,交由代表节点进行主链上的共识,并使得交易相关的分片中均达成共识;若存在分片无法达成共识,则其他分片状态回滚;
所述从链仅记录通过共识的片内交易和与本分片相关的跨片交易。
如图1、图2和图3所示,在具体应用时,本发明的具体流程包括:
步骤S1:对节点进行分片处理,采用“1主链+N从链”的共识模式;各分片维护对应从链,由分片中的代表节点维护主链;
步骤S2:各节点并行发起共识提议(记作proposal),通过RBC协议(可靠广播,reliable broadcast)发送到其他节点;
步骤S3:各节点根据每个RBC实例的成功与否输入0或1;其中0表示失败,1表示成功,执行对应的ABA实例;所述ABA为异步二进制协定(asynchronous binary agreement);
步骤S4:所述ABA对于无法达成共识的情况,采用基于门限签名的随机源(抛币,common coin)来作决策;
步骤S5:根据ABA协议输出的0或1判断对应的共识提议proposal是否成功通过共识。
在具体应用实例中,在步骤S1中,单一分片中的节点数量可以设置下限阈值;例如作为优选方案,可以将下限阈值设置为100。可以理解,该下限可根据实际需求合理调整。如下限设置为100,那么初始化时先划分容量=100的若干分片,直至100≤节点余量<200,再将剩余节点统一归入最后的分片中。
在具体应用实例中,在步骤S1中,各分片采用DPoS进行代表节点的选取,在网络中并行片内共识和跨片共识。所述DPoS为代理权益证明,Delegated Proof of Stake。
在具体应用实例中,对于片内交易,只需要在对应子网下达成共识,再由代表节点广播给其余分片的代表节点。
在具体应用实例中,对于跨片交易,本发明交由代表节点进行主链上的共识,并使得交易相关的分片中均达成共识;若存在分片无法达成共识,则其他分片状态回滚。
在具体应用实例中,各分片维护对应从链,所述从链仅记录通过共识的片内交易和与本分片相关的跨片交易,相当于主链部分副本,而主链上记录所有分片通过共识的片内交易和跨片交易。
在具体应用实例中,为有效避免各分片中代表节点作恶的情况,本发明采用扣除代币的惩罚机制。
在具体应用实例中,主链和各分片对应的从链上采用的共识算法相同,具体流程包括:
步骤S101:各节点并行发起共识提议(记作proposal),并使用Honey Badger BFT已有的RBC协议来传输,协议中的纠删码技术可有效降低发起者的带宽占用以及满足拜占庭容错。
异步二进制协定ABA协议的主要流程如图4所示,包括以下步骤S102-步骤S115(均以节点Pi为例,其他节点同理):
为了便于详细了解本发明的内容,本发明对相关数据结构定义如下:
f:共识节点容错数;
estr:ABA协议中节点Pi第r轮的共识投票(0或1);
bin_valuesr:在ABA协议第r轮中初始化为空集,并存放节点Pi在该轮中收到的不少于2f+1个节点一致的共识投票(最后的状态可能为{0},{1},{0,1}三种情况);
valsr:bin_valuesr的子集,存放ABA协议第r轮中最后候选的共识投票;
S:每次引入随机源时被初始化为空集,用于记录已完成AVSS_Sh对应的分发者节点;
∑,R,C:每次引入随机源时被初始化为空集;
AVSS_Shi和AVSS_Reci分别为AVSS的秘密分发与恢复阶段。
步骤S102:若步骤S101中节点Pj对应的RBCj实例执行结束并成功,则将ABAj输入1,否则输入0。初始化r为0,estr为上述输入,并广播投票信息BVALr(estr)。
步骤S103:初始化bin_valuesr和valsr为空集。
步骤S104:当收到来自f+1个节点的BVALr(b)时,若自身还未发送过投票信息b,则也广播BVALr(b)。
步骤S105:当收到来自2f+1个节点的BVALr(b)时,将投票信息b并入集合bin_valuesr
(其中步骤S104和步骤S105在步骤S106结束前仍然处于监听状态,即bin_valuesr仍可能会变化)
步骤S106:广播第二次投票信息AUXr(b),并等待,直至收到来自2f+1个节点的二次投票信息在集合bin_valuesr中的AUXr包,将其中包含的投票信息并入集合valsr
步骤S107:若|valsr|=1,则ABAj实例执行结束,输出valsr中唯一的投票信息。若|valsr|=2,则进入步骤S108,引入随机源来作决策。
步骤S108:初始化S,∑,R,C为空集,并计算对于h|r(h为上一区块哈希,|表示拼接)的VRF结果(rii)。作为分发者运行AVSS_Shi(以(rii)为输入),并对于所有j∈{1,...,N},j≠i,作为接收者运行AVSS_Shj
(其中步骤S109-步骤S114为无明确先后顺序的监听任务)
步骤S109:当得到AVSS_Shj输出后,将j并入集合S。直到|S|=2f+1时,令集合
Figure BDA0003604029160000081
并广播消息
Figure BDA0003604029160000082
步骤S110:当收到来自节点Pj的第一次
Figure BDA0003604029160000083
时,等待,直到
Figure BDA0003604029160000084
时,对
Figure BDA0003604029160000085
的哈希值进行签名,并返回给Pj消息
Figure BDA0003604029160000086
步骤S111:当收到来自节点Pj
Figure BDA0003604029160000087
时,验签通过后将
Figure BDA0003604029160000088
并入∑。直到|∑|=2f+1时,广播消息
Figure BDA0003604029160000089
(其中步骤S112、步骤S113均只运行一次)
步骤S112:当收到第一次来自任意节点(假设是Pj)的
Figure BDA00036040291600000810
时,验证|∑j|=2f+1及∑j下所有对
Figure BDA00036040291600000811
的签名合法后,令集合
Figure BDA00036040291600000812
并对于所有
Figure BDA00036040291600000813
广播消息REC_REQUEST(k)。等待,直到获得所有AVSS_Reck的输出(rkk)。对于每个(rkk)作VRF验证,通过后将(k,rkk)并入R。若R不为空集,则选出满足rl最大的l,广播消息CANDIDATE(l,rll),否则广播消息CANDIDATE(null,null,null)。
步骤S113:当收到第一次来自任意节点的REC_REQUEST(k)时,等待,直到
Figure BDA0003604029160000094
不为空集且已获得AVSS_Shk输出时,运行AVSS_Reck
步骤S114:当收到来自节点Pj的第一次CANDIDATE(l′,rl′l′)时,令计数器X(初始化为0)加一,且若l′不为null,作(rl′l′)的VRF验证,通过后将(j,l′,rl′l′)并入C。直到计数器等于2f+1时,选出满足
Figure BDA0003604029160000091
最大的
Figure BDA0003604029160000092
步骤S115:令r=r+1,
Figure BDA0003604029160000093
广播投票信息BVALr(estr)。回到步骤S103。
参见图3,本发明进一步提供一种无需可信第三方的分片异步拜占庭容错共识装置,其包括若干个节点,对所述节点进行分片处理,采用“1主链+N从链”的共识模式;各分片维护对应从链,由分片中的代表节点维护主链;对于片内交易,只在对应子网下达成共识,再由代表节点广播给其余分片的代表节点;对于跨片交易,交由代表节点进行主链上的共识,并使得交易相关的分片中均达成共识;若存在分片无法达成共识,则其他分片状态回滚;所述从链仅记录通过共识的片内交易和与本分片相关的跨片交易。本发明的装置用来实施本发明的上述方法。
以上仅是本发明的优选实施方式,本发明的保护范围并不仅局限于上述实施例,凡属于本发明思路下的技术方案均属于本发明的保护范围。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理前提下的若干改进和润饰,应视为本发明的保护范围。

Claims (11)

1.一种无需可信第三方的分片异步拜占庭容错共识方法,其特征在于,包括:
对节点进行分片处理,采用“1主链+N从链”的共识模式;各分片维护对应从链,由分片中的代表节点维护主链;
对于片内交易,只在对应子网下达成共识,再由代表节点广播给其余分片的代表节点;对于跨片交易,交由代表节点进行主链上的共识,并使得交易相关的分片中均达成共识;若存在分片无法达成共识,则其他分片状态回滚;
所述从链仅记录通过共识的片内交易和与本分片相关的跨片交易。
2.根据权利要求1所述的无需可信第三方的分片异步拜占庭容错共识方法,其特征在于,各节点并行发起共识提议proposal通过RBC协议发送到其他节点。
3.根据权利要求2所述的无需可信第三方的分片异步拜占庭容错共识方法,其特征在于,各节点根据每个RBC实例的成功与否输入0或1;其中0表示失败,1表示成功,执行对应的ABA实例;所述ABA为异步二进制协定。
4.根据权利要求3所述的无需可信第三方的分片异步拜占庭容错共识方法,其特征在于,所述ABA对于无法达成共识的情况,采用基于门限签名的随机源来作决策。
5.根据权利要求4所述的无需可信第三方的分片异步拜占庭容错共识方法,其特征在于,根据ABA协议输出的0或1判断对应的共识提议proposal是否成功通过共识。
6.根据权利要求1-5中任意一项所述的无需可信第三方的分片异步拜占庭容错共识方法,其特征在于,在步骤S1中,对单一分片中的节点数量设置下限阈值;初始化时,先划分容量为下限阈值的若干分片,再将剩余节点统一归入最后的分片中。
7.根据权利要求1-5中任意一项所述的无需可信第三方的分片异步拜占庭容错共识方法,其特征在于,各分片采用DPoS进行代表节点的选取,在网络中并行片内共识和跨片共识;所述DPoS为代理权益证明。
8.根据权利要求1-5中任意一项所述的无需可信第三方的分片异步拜占庭容错共识方法,其特征在于,所述从链仅记录通过共识的片内交易和与本分片相关的跨片交易,相当于主链部分副本,而主链上记录所有分片通过共识的片内交易和跨片交易。
9.根据权利要求1-5中任意一项所述的无需可信第三方的分片异步拜占庭容错共识方法,其特征在于,采用扣除代币的惩罚机制用以避免各分片中代表节点作恶的情况。
10.根据权利要求3-5中任意一项所述的无需可信第三方的分片异步拜占庭容错共识方法,其特征在于,所述主链和各分片对应从链上的共识流程包括:
步骤S101:各节点并行发起共识提议proposal;
步骤S102:若步骤S101中节点Pj对应的RBCj实例执行结束并成功,则将ABAj输入1,否则输入0;初始化r为0,estr为上述输入,并广播投票信息BVALr(estr);
步骤S103:初始化bin_valuesr和valsr为空集;
步骤S104:当收到来自f+1个节点的BVALr(b)时,若自身还未发送过投票信息b,则也广播BVALr(b);
步骤S105:当收到来自2f+1个节点的BVALr(b)时,将投票信息b并入集合bin_valuesr
步骤S106:广播第二次投票信息AUXr(b),并等待,直至收到来自2f+1个节点的二次投票信息在集合bin_valuesr中的AUXr包,将其中包含的投票信息并入集合valsr
步骤S107:若|valsr|=1,则ABAj实例执行结束,输出valsr中唯一的投票信息;若|valsr|=2,则进入步骤S108,引入随机源来作决策;
步骤S108:初始化S,∑,R,C为空集,并计算对于h|r的VRF结果(rii),其中h为上一区块哈希,|表示拼接;作为分发者运行AVSS_Shi,以(rii)为输入,并对于所有j∈{1,...,N},j≠i,作为接收者运行AVSS_Shj
步骤S109:当得到AVSS_Shj输出后,将j并入集合S;直到|S|=2f+1时,令集合
Figure FDA0003604029150000031
并广播消息
Figure FDA0003604029150000032
当收到来自节点Pj的第一次
Figure FDA0003604029150000033
时,等待,直到
Figure FDA0003604029150000034
时,对
Figure FDA0003604029150000035
的哈希值进行签名,并返回给Pj消息
Figure FDA0003604029150000036
当收到来自节点Pj
Figure FDA0003604029150000037
时,验签通过后将
Figure FDA0003604029150000038
并入∑;直到|∑|=2f+1时,广播消息
Figure FDA0003604029150000039
当收到第一次来自任意节点(假设是Pj)的
Figure FDA00036040291500000310
时,验证|∑j|=2f+1及∑j下所有对
Figure FDA00036040291500000311
的签名合法后,令集合
Figure FDA00036040291500000312
并对于所有
Figure FDA00036040291500000313
广播消息REC_REQUEST(k);等待,直到获得所有AVSS_Reck的输出(rkk);对于每个(rkk)作VRF验证,通过后将(k,rkk)并入R;若R不为空集,则选出满足rl最大的l,广播消息CANDIDATE(l,rll),否则广播消息CANDIDATE(null,null,null);当收到第一次来自任意节点的REC_REQUEST(k)时,等待,直到
Figure FDA00036040291500000314
不为空集且已获得AVSS_Shk输出时,运行AVSS_Reck;当收到来自节点Pj的第一次CANDIDATE(l′,rl′l′)时,令计数器X(初始化为0)加一,且若l′不为null,作(rl′l′)的VRF验证,通过后将(j,l′,rl′l′)并入C;直到计数器等于2f+1时,选出满足
Figure FDA00036040291500000315
最大的
Figure FDA00036040291500000316
步骤S110:令r=r+1,
Figure FDA00036040291500000317
广播投票信息BVALr(estr);回到步骤S103。
11.一种无需可信第三方的分片异步拜占庭容错共识装置,其特征在于,包括若干个节点,对所述节点进行分片处理,采用“1主链+N从链”的共识模式;各分片维护对应从链,由分片中的代表节点维护主链;对于片内交易,只在对应子网下达成共识,再由代表节点广播给其余分片的代表节点;对于跨片交易,交由代表节点进行主链上的共识,并使得交易相关的分片中均达成共识;若存在分片无法达成共识,则其他分片状态回滚;所述从链仅记录通过共识的片内交易和与本分片相关的跨片交易。
CN202210410655.0A 2022-04-19 2022-04-19 一种无需可信第三方的分片异步拜占庭容错共识方法和装置 Active CN114861233B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210410655.0A CN114861233B (zh) 2022-04-19 2022-04-19 一种无需可信第三方的分片异步拜占庭容错共识方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210410655.0A CN114861233B (zh) 2022-04-19 2022-04-19 一种无需可信第三方的分片异步拜占庭容错共识方法和装置

Publications (2)

Publication Number Publication Date
CN114861233A true CN114861233A (zh) 2022-08-05
CN114861233B CN114861233B (zh) 2023-12-19

Family

ID=82631467

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210410655.0A Active CN114861233B (zh) 2022-04-19 2022-04-19 一种无需可信第三方的分片异步拜占庭容错共识方法和装置

Country Status (1)

Country Link
CN (1) CN114861233B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116455904A (zh) * 2023-06-12 2023-07-18 湖南天河国云科技有限公司 基于异步网络去中心化的区块链共识方法及系统

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110570309A (zh) * 2019-09-16 2019-12-13 上海保险交易所股份有限公司 用于更换区块链网络的领导者的方法和系统
CN110570202A (zh) * 2019-09-02 2019-12-13 杭州趣链科技有限公司 一种基于分片技术的混合共识方法
US20200137082A1 (en) * 2017-04-18 2020-04-30 nChain Holdings Limited Secure blockchain-based consensus
CN111090892A (zh) * 2020-03-24 2020-05-01 杭州智块网络科技有限公司 一种基于vrf和门限签名的区块链共识方法和装置
CN111342971A (zh) * 2020-02-07 2020-06-26 数据通信科学技术研究所 一种拜占庭共识方法和系统
US20210026745A1 (en) * 2019-07-24 2021-01-28 The University Of North Carolina At Charlotte Methods, systems, and computer readable media for providing byzantine fault tolerance
CN112862490A (zh) * 2021-04-26 2021-05-28 北京连琪科技有限公司 一种异步网络下的输出共识方法
CN113114496A (zh) * 2021-04-06 2021-07-13 北京工业大学 一种基于分片技术的区块链可扩展性问题解决方法
CN113660272A (zh) * 2021-08-18 2021-11-16 北京航空航天大学 抗拜占庭排序的异步共识方法及装置
CN113783935A (zh) * 2021-08-12 2021-12-10 清华大学 一种拜占庭容错方法及装置
CN113794694A (zh) * 2021-08-25 2021-12-14 清华大学 一种基于可靠广播的二元共识方法及装置
CN114140233A (zh) * 2021-10-15 2022-03-04 北京航空航天大学 分片区块链安全跨片视图转换方法及装置

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200137082A1 (en) * 2017-04-18 2020-04-30 nChain Holdings Limited Secure blockchain-based consensus
US20210026745A1 (en) * 2019-07-24 2021-01-28 The University Of North Carolina At Charlotte Methods, systems, and computer readable media for providing byzantine fault tolerance
CN110570202A (zh) * 2019-09-02 2019-12-13 杭州趣链科技有限公司 一种基于分片技术的混合共识方法
CN110570309A (zh) * 2019-09-16 2019-12-13 上海保险交易所股份有限公司 用于更换区块链网络的领导者的方法和系统
CN111342971A (zh) * 2020-02-07 2020-06-26 数据通信科学技术研究所 一种拜占庭共识方法和系统
CN111090892A (zh) * 2020-03-24 2020-05-01 杭州智块网络科技有限公司 一种基于vrf和门限签名的区块链共识方法和装置
CN113114496A (zh) * 2021-04-06 2021-07-13 北京工业大学 一种基于分片技术的区块链可扩展性问题解决方法
CN112862490A (zh) * 2021-04-26 2021-05-28 北京连琪科技有限公司 一种异步网络下的输出共识方法
CN113783935A (zh) * 2021-08-12 2021-12-10 清华大学 一种拜占庭容错方法及装置
CN113660272A (zh) * 2021-08-18 2021-11-16 北京航空航天大学 抗拜占庭排序的异步共识方法及装置
CN113794694A (zh) * 2021-08-25 2021-12-14 清华大学 一种基于可靠广播的二元共识方法及装置
CN114140233A (zh) * 2021-10-15 2022-03-04 北京航空航天大学 分片区块链安全跨片视图转换方法及装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
李希之: "基于可验证随机函数的拜占庭容错共识算法的改进与实现", pages 161 - 164 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116455904A (zh) * 2023-06-12 2023-07-18 湖南天河国云科技有限公司 基于异步网络去中心化的区块链共识方法及系统
CN116455904B (zh) * 2023-06-12 2023-09-05 湖南天河国云科技有限公司 基于异步网络去中心化的区块链共识方法及系统

Also Published As

Publication number Publication date
CN114861233B (zh) 2023-12-19

Similar Documents

Publication Publication Date Title
CN108737375B (zh) 一种区块链共识方法及系统
TWI711287B (zh) 基於區塊鏈的交易共識處理方法及裝置、電子設備
CN109964242B (zh) 一种基于信任关系的区块链共识方法
CN109150972B (zh) 一种双层分片的高效区块链的共识机制的工作方法
CN111131209B (zh) 一种改进的高效共识方法、系统、计算机设备及存储介质
CN113098694B (zh) 一种混合跨链共识方法
WO2020133326A1 (zh) 区块链生成方法、系统、计算机存储介质和电子设备
CN111049895B (zh) 一种基于ism的改进pbft共识方法
CN111698094B (zh) 一种基于区块链系统的共识方法及区块链系统
CN113570357B (zh) 一种动态分层的高效pbft算法
US20220278854A1 (en) Unity Protocol Consensus
CN110445795B (zh) 一种区块链认证唯一性确认方法
Cao et al. CoVer: Collaborative light-node-only verification and data availability for blockchains
CN114861233A (zh) 一种无需可信第三方的分片异步拜占庭容错共识方法和装置
CN113626875A (zh) 一种区块链分片赋能的知识图谱文件存储方法
CN114826699B (zh) 基于区块链的去中心化联邦学习中拜占庭攻击抵御方法
CN114615281B (zh) 基于小规模委员会的区块链出块方法及PoS协议确认方法
CN113256417B (zh) 一种基于交易共享的共识出块方法及系统
Kleinrock et al. Proof-of-reputation blockchain with nakamoto fallback
CN111787034B (zh) 区块生成方法、同步方法、装置、区块链系统和存储介质
CN111683121A (zh) 基于DPoS的云端数据溯源区块链共识机制改进方法
CN114745131A (zh) 一种区块链的pbft改进共识算法
CN112039837B (zh) 一种基于区块链和秘密共享的电子证据保全方法
US20230066169A1 (en) Method and apparatus for distributed consensus in consideration of share proportions of nodes and method of generating blockchain using the same
CN116977077A (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