CN114503143A - 统一协议共识 - Google Patents
统一协议共识 Download PDFInfo
- Publication number
- CN114503143A CN114503143A CN202080067331.0A CN202080067331A CN114503143A CN 114503143 A CN114503143 A CN 114503143A CN 202080067331 A CN202080067331 A CN 202080067331A CN 114503143 A CN114503143 A CN 114503143A
- Authority
- CN
- China
- Prior art keywords
- clan
- signature
- leader
- rsip
- transaction
- 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.)
- Pending
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/04—Payment circuits
- G06Q20/06—Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
- G06Q20/065—Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3247—Cryptographic 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/3255—Cryptographic 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
-
- 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/40—Authorisation, 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/401—Transaction verification
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/12—Applying verification of the received information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3247—Cryptographic 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Business, Economics & Management (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Accounting & Taxation (AREA)
- General Business, Economics & Management (AREA)
- Finance (AREA)
- Strategic Management (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Computer Hardware Design (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
新颖的结构化随机样本共识协议,可极大地提高区块链和分布式账本技术的吞吐量和可扩展性,同时保持分散性和高水平的安全性。本发明充分利用固定规模的称为“氏族”的小型委员会,阈值密码学和称为“部落”的逻辑虚拟区域,以便确定性地随机采样不同的节点以对交易有效性进行情绪分析,从而只需要相对较小的节点子集来验证任何特定交易或交易批次,从而与其他更线性化的共识算法相比,能够实现更高的并发性和并行处理,同时保持高安全性。
Description
相关申请的交叉引用
本申请要求于2019年7月24日提交的美国临时申请号62/878,008的权益。
技术领域
本公开涉及一种改进的操作系统,该操作系统在不牺牲分散性、安全性或速度的情况下解决了区块链的可扩展性。
背景技术
数字账本技术中存在一个问题,其中进行的交易是安全的并按时间顺序公开地(或私密地)记录,即很难在不牺牲分散性、安全性或速度的情况下扩展系统(例如,“可扩展性问题”)。区块链(或区块链系统或区块链技术)是分布式账本的一种形式,例如,并非所有分布式账本都使用区块链来提供安全有效的分布式共识。
全球交易量以指数方式增长(例如,由于电子商务的增长、物联网(IoT)的兴起、应用程序内购买等)并放大了这个问题。例如,比特币区块链每秒处理4.6笔交易。然而,Visa平均每秒处理约1,700笔交易(基于官方声称的每天超过1.5亿笔交易的计算得出)。与许多其他公司一样,Visa采用区块链的潜力目前受到可扩展性的限制。
此外,由于大多数设计中的可扩展性挑战,区块链技术的全部潜力尚未实现。例如,越来越多的物联网设备被集成到工业中,并且使用区块链作为单一可靠的事实来源来实现数据完整性和各方之间的复杂协调,可以提供很多价值,但由于缺乏可扩展性,采用是有限的。我们的设计目的是解决传统区块链的可扩展性问题,从而解锁潜力以用于大量采用。
通常,区块链可扩展性受以下因素影响:局限性、块大小和响应时间,例如共识算法的局限性。
当随着事件和用户数量的增加,系统与数据“发生冲突”,由于试图处理的交易量,同时数据也在不断增加,导致严重的拥塞时,就会出现限制。
区块或数据大小是由每个区块或被处理交易中可用的数据量引起的限制。
响应时间是验证或创建区块或处理交易或一批交易所需的时间。
提供以下术语列表及其含义是为了帮助理解本公开内容,并不旨在将概念限制为所提供的术语和/或含义。
聚合签名:聚合签名方案用于将消息上的n个签名压缩成针对n个用户的恒定长度的单个签名。
自动扩展:能够根据需要扩展涉及寻求一致的节点的数量,以在不满足系统断言(predicate)的情况下维护网络的安全性、吞吐量和完整性。
批次ID:一批交易的唯一哈希值。
区块链:数字账本,其中进行的交易是安全的,并按时间顺序和防篡改方式记录。几乎任何有价值的东西都可以在区块链网络上进行跟踪和交易。
氏族:固定规模的法定数量(Quorums)节点,例如由13个节点组成的小型委员会,它们共同在网络中扮演各种角色(“领导者”、“预言机”、“RSIP”)。拥有固定规模的氏族可以更轻松地在每个新周期中在各个氏族之间转移系统角色和职责。
共识:当对交易的有效性达成协议时,例如,独立节点验证交易的有效性,即一套编码规则。
加密签名:一种签名算法,在给定消息和私人密钥时,生成签名。一种签名验证算法,在给定消息、公开密钥和签名的情况下,接受或拒绝消息的真实性声明。
周期:时间段,例如5分钟,在此期间,节点在被随机分配给网络中的用于下一周期的新位置和角色之前,会扮演协议的各种角色(例如,领导者、预言机、RSIPs)。
分布式账本:分布式账本是去中心化的数据库,例如,分布在多台计算机或节点上。在这项技术中,每个节点都会维护账本,如果发生任何数据变化,账本就会得到更新。更新在每个节点独立进行。
哈希函数:单向哈希函数,也称为消息摘要、指纹或压缩函数,是一种数学函数,它采用可变长度的输入字符串并将其转换为固定长度的二进制序列。
账本:交易的集合。
节点:连接到网络的拥有区块链数据副本的计算机或机器。
预言机(Oracles):在区块链和智能合约的背景下,预言机是发现和验证现实世界事件并将此信息提交给区块链以供智能合约使用的代理。在本例中,预言机的含义还包括系统中交易路由的协调器的角色。
随机样本解释协议节点(RSIPs):需要重新运行协议规则以进行附加验证的随机选择节点。
阈值签名:阈值签名是一种加密签名,在该加密签名中,m个中只有n个需要一起签署消息以创建有效的群签名。需要m个签名中的n个签名的任意组合来获得有效的群签名。在下面描述的系统中,为了让氏族创建阈值签名,在每个新周期的开始,他们都会经历一个分布式密钥生成过程,在这个过程中,他们都会为最终的群公开密钥做出贡献
部落领导者(部落领导者氏族,领导者氏族):被选来处理第一阶段验证交易的氏族或节点。在下面描述的系统中,每个周期的部落领导者可能是从所有部落的氏族中随机选择的单个氏族。此外,下一个周期的部落领导者可能来自同一部落或不同部落。
部落地图:部落地图包含所有节点身份和他们在周期中扮演的逻辑位置,其可以包括他们当前参与的氏族、部落和角色。
部落:部落是由多个氏族组成的虚拟区域。
验证器节点:检查区块链账本以确定要处理的交易是否有效的节点。
可验证随机函数(VRF):随机数生成器,其通过获取哈希函数的字母数字输出并将其转换为十进制值来获得随机性。
发明内容
本公开的一个目的是设计一种去中心化通用计算机网络,该网络在不损害安全性、吞吐量或分散性的情况下实现可扩展性。
另一个目标是设计一种去中心化通用计算机网络,该网络使计算机组或节点组能够就不同网络中的机器状态达成一致,从而通过随机并行、并发处理以非常高的吞吐量方式验证交易。
本发明的另一个目的是设计一种去中心化通用计算机网络,它不依赖于解决工作量证明(“PoW”)哈希,例如,块生成、挖掘等,以保持去中心化。
由本公开中描述的系统产生的技术优势包括,例如,减少对网络的资源需求(例如,较低的硬件成本、减少的功率处理和内存需求)、复制状态机分布式系统的更高交易吞吐量,比如在区块链的背景下,同时维持比其他共识协议更高的安全性、速度和可扩展性。其他优势包括最大限度地减少不良行为者(例如诈骗者或黑客)的机会和影响。
在本发明的一个方面,如下所述,交易(即,为了本公开的目的,交易可以是单个交易或一批交易,例如,每批交易数千个交易)是通过共识算法处理,每个来自随机“氏族”的节点子集签署交易。最终交易还将包括不可预测且无法伪造的聚合签名。为了验证聚合签名是真实的,因此交易通过共识,节点根据它的网络拓扑知识以及交易的“哈希”或批次ID检查聚合签名的正确性。如果正确,他们接受状态变化(即交易)。
根据一个实施例,节点在周期开始时至少大致均匀地随机分布到部落中,例如,每个部落50-100个节点。部落中的节点数量和部落数量可以根据系统所需或期望的安全级别任意决定,但建议使用奇数部落以解决任何冲突。
节点的一个目的是保持分布式数据库和区块链账本的完整性。整个和当前的区块链状态可以保存在系统中运行的单个节点上,实际上可以保存在系统中的每台机器上,在世界任何地方。这使得系统对黑客攻击、功率故障或系统崩溃等问题具有极强的回弹性。系统通常具有在任何给定时间运行的数百、数千或数万个节点。在一个示例中,选择了7个部落中的5个,网络的安全性受所选部落总数的影响,即采样和参与的部落越少,安全性越低。
当交易被广播到网络并路由到当前周期的部落的领导者时,该过程可以开始。部落的领导者可以在每个周期随机选举/选择。例如,在下一个随机程序开始选举在随后的周期中扮演部落领导者的角色的下一节点集合之前,每个周期可以是大约5分钟或任意长的持续时间。选举程序应足够随机且不可预测。有各种已知的方法来实现足够的随机性过程,包括例如用于随机性生成的可验证随机函数(VRF)。
接下来,选择的部落的领导者可以从他们的消息队列(下一个被处理的压待决的交易)中向彼此提出交易,并通过检查区块链账本(例如,或其他账本/数据库配置)对交易执行验证来确定交易账户是否具有正确的余额或适当的权限。部落的领导者检查账本,然后相互广播结果/答案,例如,是或否,这是否是有效交易,并相互分享他们的投票,例如,如果同意,提供他们的数字签名,或如果不同意,扣留他们的数字签名。
如果阈值数量(例如2/3+1)的部落领导者同意(阈值一致),则允许交易朝向协议的下一步向前推进。如果未达到阈值一致,则废弃交易。如果阈值数量的部落领导者(例如,这是一个可配置的系统参数)在这个级别上没有达成共识,那么交易可能会被放弃并且无法传播到网络的其余部分。换句话说,可调阈值数量(例如,由系统设计者设置)的部落领导者必须达成一致,交易才能继续通过其验证过程。例如,至少2/3+1的部落领导者必须达成一致,才能获得有效的聚合签名,这表示在此级别上达成了一致。
如果阈值数量的部落领导者同意,则交易被发送到预言机氏族。预言机充当系统中的协调器,并负责例如为分配有至所述随机采样节点的交易的氏族随机采样部落,并解释它们的结果。有各种已知的方法来实现足够的随机性过程,包括例如用于随机性生成的VRF。
随机采样部落并让这些节点处理交易的一个目的是对交易的有效性进行附加的“情绪分析”以及让部落的领导者承担责任,其中部落是由数量(例如每个氏族13个节点)固定的氏族组成。
情绪分析是从整个系统的一个较小的子集获取交易有效性的简介(即如果领导者氏族和其他五个随机选择的具有绝对大多数的氏族都以相同的方式投票,那么交易极高概率是有效的)。要求阈值数量(大多数或全部)的采样的氏族必须达成一致并与领导者氏族保持一致,以便有信心地信任采样的数据,因为我们仅对整个网络所有节点的一个子集进行采样以得出一个结论。从统计上看,如果领导者氏族和五个附加氏族都能够达成一致,那么交易被确定为有效的概率很高。
采样节点不需要是固定规模委员会的一部分,它们也可以是单独的节点,但是通过让所有委员会的规模相同可以提高性能,例如委员会本身可以更轻松地轮换到不同的网络角色,因为它们的规模始终相同,而无需在每个新周期重新构建其多签名配置。
例如,该系统从根本上说是一个概率系统,不良行为者可以尝试串通以干扰成果。因此,让随机采样委员会审查交易有效性以就交易有效性达成共识的额外步骤增加了系统的安全性,例如,最大限度地减少在部落领导者级别的不良行为者使无效交易被接受为有效的机会。
例如,选择的预言机氏族(从可以在任何时候都可以被分配为交易的预言机角色的众多氏族中)将被配置为利用来自交易的信息,例如交易的哈希,对每个部落的氏族数量进行随机采样,选择每个部落中的一小部分节点或氏族,并将交易分配给这些节点以进行进一步的证实和验证。
应用于交易的单向哈希函数将生成字母数字字符串,当该字符串转换为十进制值时,当将该数字的系数与已知节点身份和在网络中扮演的逻辑位置相对时,该字符串本质上起着不可预测的随机性的作用。该随机数生成器或其变体随后被用于从每个选举的部落中确定地采样节点集或氏族。
此外,预言机氏族的节点可以聚集在一起对交易数据的哈希进行签署,并利用不可预测的、唯一的群签名使该哈希成为可证实的随机函数,以确定此后哪些氏族将被分配此交易进一步验证它。
这两个过程都是确定性的,这意味着它可以由其他观察者节点计算并快速验证,但提前不可预测。任何不可预测的确定性随机数生成过程都可能是该过程的合适替代。
在部落采样和情绪分析过程(例如,“随机样本解释协议”或“RSIP”)完成后,RSIP节点(例如,随机采样节点)相互发送投票,在为他们的RSIP氏族创建阈值签名后,将他们的群签名发送回预言机,然后预言机将等待来自所有分配的氏族的有效阈值签名(例如,5个采样的氏族中有5个达到阈值多数群协议)。此要求的确切断言是系统设计者可调整的参数。例如,预言机可以配置为等待绝大多数或所有氏族一致的响应,每个氏族中的所有节点都能够通过其数字签名达到2/3+1阈值协议响应。
例如,RSIP节点正在执行与部落的领导者相同(或基本相同)的任务。然而,这里的一个关键是这是在并行线性时间内实现的。例如,假设分配了五个附加的RSIP氏族以进一步对交易达成共识,并且他们同时被预言机分配了此任务。这有效地提供了五倍(5X)多的节点参与验证,而只花费与协调并指示单个附加氏族重新运行交易共识的线性时间相同的时间。这种并行、并发处理可以在与单个附加氏族重新运行验证所需的线性时间相同或相似的线性时间内完成,但通过这种设计,系统还可以受益于5倍的附加安全性,因为有五个附加的随机氏族重新运行验证,而不仅仅是一个。
例如,如果预言机从随机样本氏族(RSIP)收集了五个聚合阈值签名中的五个(例如,由实施此协议的设计者根据所需的安全问题设置的系统参数),预言机本身必须达成阈值协议,即正确的样本氏族已达成自己的多数协议。然后,预言机将参与交易共识的氏族的签名、交易标识符或批次ID以及他们自己的群阈值签名发送回领导者氏族。
如果预言机没有从样本氏族中获得断言的阈值签名,他们将向部落中的所有氏族或者原始样本RSIP节点处于少数投票的部落发回信号,并要求他们全部审查交易数据并对交易数据的有效性进行投票。当未实现断言时,可能会触发此自动扩展共识要求,即5个RSIP氏族中的5个无法在交易数据上实现阈值群签名。以这种方式扩展为执行情绪分析提供了更大的样本,以便更好地了解哪些氏族投票准确与否。如果经过多轮并且没有明确的多数,所有节点可能会被要求重新运行交易作为最后的手段,以寻求多数一致,从而识别少数氏族并选择性地惩罚他们。
如上所述,协议的正常操作是从每个选择的部落中采样一个RSIP氏族。每个部落的实际构成由多个氏族组成,因此节点数量远大于随机样本的节点总数(即可能来自七个部落的五个氏族)。换句话说,每个单个部落都由五个以上的氏族组成。因此,例如,通过自动扩展到部落中的所有氏族,预言机能够获得更大的采样规模,因此很有可能对解释结果得出更好的结论,例如,通过比较少数和多数决定。
如果未达到断言最小值,则自动扩展样本规模的能力是本发明的改进能力。主要好处之一是系统可以随机采样较小的节点子集,而如果结果不清楚(即不满足系统断言),它可以根据需要扩展处理交易数据所需的节点。如果在自动扩展节点重新运行验证后,多数投票与RSIP和领导者氏族的先前多数票一致,则先前试图达成协议的少数样本氏族可以被协议识别和取消资格或以其他方式受到惩罚。
此外,如果RSIP节点都同意领导者氏族的投票无效,则RSIP节点可以惩罚或强制移除部落的领导者。这种自我监管机制是一种标志性功能,通过将网络架构组织成本文所述的氏族和部落来实现。
在RSIP氏族实现与部落的领导者阈值投票一致的情况下,交易为有效的概率很高,预言机除了收集他们自己的签名之外,还收集RSIP节点的数字签名,发送这些数字签名和交易或交易批次ID给部落的领导者,部落的领导者应验证签名是否有效,以及验证正确的预言机和RSIP氏族是否签署正确的交易。
这个验证过程是可以实现的,例如,因为在一轮开始时,针对该周期网络中的成员是已知的,并且将RSIP节点分配给交易是一个不可提前预测的确定性随机过程,但之后加密很容易验证。如果所有步骤都正确,领导者氏族会将提交的数字签名合并为一个最终的聚合签名,并将此交易广播给所有部落的所有节点,并在批次ID上广播随附的聚合群签名。
系统中更新的每个数据库对象都将携带此聚合签名,例如,称为“数字法庭签名证明”。
节点将聚合签名与他们拥有的网络成员信息进行比较,以交叉引用聚合签名的有效性。网络中的成员在周期开始时是已知的,并且包含在所有节点都拥有的区块链中,例如,分布式账本,它以加密方式引用先前的信息块,从而创建一个块链。如果签名有效,则更新对象的值被确定为真,则假设已完成该过程(即统一协议共识过程)。
如上所述,在任何给定时刻,每个部落只有一小子集的节点被随机分配给交易。因此,网络可以并发并行处理许多交易,从而与其他网络设计相比,大大提高了网络的吞吐量。
在此描述的系统提供了比所有已知设计更大的吞吐量以在分布式系统中达成共识,同时还减少了交易终结的时间并维持高安全性。例如,发明人对本系统的测试在600个全球节点的系统中每秒净处理超过10,000个交易,每个节点具有标准笔记本电脑的计算能力。共识算法吞吐量的显着提高使无数应用程序能够启用区块链或分布式账本技术。
附图说明
本发明通过示例的方式进行说明,并且不限于附图中的附图,其中相同的附图标记表示相似的元件。
图1示出了说明去中心化通用计算机网络的一个实施例的流程图。
图2示出了去中心化通用计算机网络的一个实施例。
具体实施方式
所有相同编号的附图标记相互对应,从而可以省略附图中每个附图标记的重复描述。
根据一个实施例,如图1所示,用户10向当前的领导者氏族发送交易(或合同)101。领导者氏族必须达成多数一致才能产生有效的阈值签名,在阈值签名中大多数部落领导者同意交易的有效性并在相同的数据上共同签字,以形成有效的聚合(组合)群签名11,否则交易被废弃12。
为了确定是否认定交易,部落内的每个节点将彼此在交易上的部分群签名发送给领导者氏族的所有其他节点。所有活跃和有效的节点都知道网络中其他节点的数量以及每个节点在当前周期中属于哪个部落和氏族。
一旦氏族中的阈值(例如2/3+1)数量的节点收集到足够的签名,产生最终的有效签名。只要氏族的节点的2/3+1,即13个节点中的9个,聚集在一起(以及13个部分签名中的9个的任意组合被组合在一起签署同一消息),结果最终签名将始终相同且易于验证,不管13个节点中的9个节点中的实际哪一个节点参与。
如果同意,领导者氏族将把交易数据和他们的群阈值签名发送给选定的预言机氏族,这表示领导者氏族同意传输的交易数据的有效性102。
预言机氏族必须就以下方面达成阈值协议:1)领导者氏族阈值签名,2)应为哪些部落分配此交易,以及3)应为随机选择的部落中的哪些氏族分配此交易13。其中RSIP氏族是通过确定性可验证随机函数实现随机选择过程的。如果预言机无法达成协议,交易最终会被拒绝14。
在达成阈值协议后,预言机氏族将交易数据以及领导者和预言机氏族的有效群阈值签名广播给大多数部落的随机确定的RSIP氏族,例如7个部落中的随机5个,103。
来自随机选择的部落的RSIP氏族检查交易数据以及领导者和预言机氏族的群阈值签名,以验证所有交易和签名是有效的15a-g。例如,通过将交易数据与所有节点都拥有的数据库状态的本地副本进行比较,并通过检测与部落地图的本地副本进行比较的交易哈希或批次ID来实现这一点,部落的地图是关于哪个节点是哪个氏族、部落的一部分,以及在当前周期网络中活跃的角色的知识。因此,RSIP氏族可以确保根据所述交易的哈希和随附的加密签名确定性地将这个交易分配给正确的预言机和部落领导者。RSIP氏族节点本身寻求就交易的有效性达成群多数阈值协议,并验证正确的领导者和预言机是否达到了有效的阈值签名13。
每个RSIP氏族在达成协议后将其阈值签名发送回预言机104,预言机等待RSIP氏族(例如5个中的5个)的可调断言,以它们的群阈值签名响应。如果不满足可调断言,则预言机可以发回信号(请求)给更多部落和氏族以重新运行交易,从而自动扩展参与验证交易104的氏族数量。如果RSIP氏族无法达到阈值多数协议,那么他们将无法生成有效的群签名以发送给预言机,这将向预言机发出异常信号(例如,出现问题)并启动自动扩展程序。系统可以根据需要执行自动扩展过程,例如,针对每个交易多次执行。
假设RSIP氏族使用其有效的群阈值签名(在自动扩展之前或之后)响应预言机,则预言机必须达成阈值协议,即足够且正确的RSIP氏族已经在交易中实现了群阈值签名,并且正确的部落领导者和预言机签名与交易ID或批次ID准确的相关16。如果一致,他们将RSIP群阈值签名连同他们自己的多数群签名和交易ID或批次ID一起发送回领导者氏族105。如果预言机无法达成有效的多数肯定的协议,交易可能会被拒绝14。
发起交易的领导者氏族必须在交易上实现最终的群阈值签名,并验证RSIP和预言机签名的正确性17。
如果交易的有效性和预言机和RSIP氏族的群签名达成最终协议,那么部落领导者将广播数据库状态变化以及他们的聚合签名、批次或交易ID,以及所有被确定性地随机分配以验证该交易的领导者、预言机和RSIP氏族的签名106。如果需要,这些签名可以进一步聚合成最终的单个聚合签名,同时仍然保持加密确定性和不可伪造性。如果部落领导者无法就交易数据的有效性或收到的阈值签名达成阈值多数协议,则交易可能会被拒绝18。
协议的最后一步是,所有收到传入的状态变化请求的节点都需要检查来自部落领导者、预言机和RSIP氏族的随附签名,并与交易数据及其部落地图进行比较,以验证交易已经通过正确的渠道和节点集来寻求共识,并且所需的氏族已经能够产生有效的阈值签名。
如果数据库状态变化请求和相关的签名和数据有效,则遵循协议的节点单独接受状态变化并更新其数据库值,同时存储伴随状态变化的聚合签名19,交易完成并进一步传播直到所有真实的节点进行适当的更新。
但是,如果批次的签名或聚合签名未验证,则节点可以拒绝状态变化20。
在正常情况下,在统一协议共识中只有一小部分节点,例如5%的节点在任何给定时间负责验证特定的交易数据,同时仍维持高度的安全性。与其他更线性化的共识协议相比,这实现了更大的负载平衡、并发性和并行处理。
根据另一个实施例,如图2所示,用户(1)向当前部落领导者发送交易(2)。部落领导者就交易或交易批次达成协议,并将其发送给预言机氏族(3)。
部落领导者验证交易(4),如果阈值数量的部落领导者同意,他们就会实现统一事件(在部落的领导者级别上达成共识)(5)。
预言机随机采样不同部落中的节点(6)。这些RSIP节点对交易的有效性进行投票,并相互分享他们的结果,并与将来自不同部落的所有RSIP节点的结果进行比较的预言机共享(7)。
如果节点的阈值能够达成共识,那么预言机将RSIP节点的签名、他们的签名和交易ID发回给部落的领导者,部落的领导者根据包含该周期的网络成员信息的区块链副本验证签名,如果验证通过,则使用其私人密钥和其他先前签名对交易进行签署,以生成新的聚合签名,然后将新的聚合签名广播到网络以供所有节点保存(8)。
例如,该系统可以用于任何需要分布式共识的系统,例如,它可以是区块链中的共识引擎,并且可以用于分布式或去中心化系统,通过首先对网络进行采样和然后根据需要继续进行分支逻辑以获得系统的情绪分析,从而实现多数决策,同时不需要网络中的所有节点都参与该过程,并且仍然以高概率获得对网络状态的准确视图。
提供所公开实施例的前述描述以使本领域的任何技术人员能够制造或使用本主题。可以配置和更改通用架构以实现灵活的解决方案。例如,为了实现提高安全性和速度的目标,可以根据所需的安全性要求改变不同的参数。
对这些实施例的各种修改对于本领域技术人员来说将是显而易见的,并且本文定义的一般原理可以应用于其他实施例而不背离主题的精神或范围。因此,本主题不旨在限于本文所示的实施例,而是要符合与以下权利要求以及本文公开的原理和新颖特征一致的最宽范围。
虽然已经公开了各个方面和实施例,但可以设想其他方面和实施例。所公开的各个方面和实施例是为了说明的目的而不是限制性的,真实的范围和精神由所附权利要求指示。
权利要求书(按照条约第19条的修改)
1.用于进行交易的去中心化计算机网络,所述网络包括:
包括多个节点的多个氏族;
包括所述多个氏族的多个部落;
预言机氏族,其中所述预言机氏族是所述多个氏族之一;和
领导者氏族;其中
所述领导者氏族,被配置为接收所述交易,并在收到所述交易后,确定是否认定所述交易;
如果所述交易被所述领导者氏族认定,则所述领导者氏族被配置为将所述交易和领导者氏族签名发送给所述预言机氏族进行认定;
如果所述交易和所述领导者氏族签名由所述预言机氏族认定,则所述预言机氏族被配置为向第一多个随机选择的氏族“第一RSIP氏族”发送(i)所述交易,(ii)所述领导者氏族签名,以及(iii)预言机氏族签名;
其中,如果所述交易、所述领导者氏族签名和所述预言机氏族签名被第一RSIP氏族认定,则所述第一RSIP氏族被配置为向所述预言机氏族发送第一RSIP签名;
其中,所述预言机氏族被配置为从所述第一RSIP氏族接收所述第一RSIP签名并确定是否认定所述第一RSIP签名;
其中,如果所述预言机氏族认定了所述第一RSIP签名,则所述预言机氏族被配置为将所述交易、所述预言机氏族签名和所述第一RSIP签名发送给所述领导者氏族;
其中,所述领导者氏族被配置为接收来自所述预言机氏族的所述交易、所述预言机氏族签名和所述第一RSIP签名,并确定是否认定所述交易、所述预言机氏族签名和所述第一RSIP签名,以及
其中,如果所述领导者氏族认定所述交易,所述预言机氏族签名和所述第一RSIP签名,则所述领导者氏族将所述交易广播到所述多个节点。
2.根据权利要求1所述的去中心化计算机网络,其中,
如果所述第一RSIP氏族不认定所述交易、所述领导者氏族签名和所述预言氏族签名,则所述预言机氏族将所述交易、所述领导者氏族签名和所述预言机氏族签名发送给第二多个随机选择的氏族“第二RSIP氏族”,以认定所述交易,以及
第二RSIP氏族比第一RSIP氏族包含更多的节点。
3.根据权利要求2所述的去中心化计算机网络,其中,
如果所述交易、所述领导者氏族签名和所述预言机氏族签名被所述第二RSIP氏族认定,则所述第二RSIP氏族被配置为向所述预言机氏族发送第二RSIP签名,以及
所述预言机氏族被配置为接收来自所述第二RSIP氏族的所述第二RSIP签名并确定是否认定所述第二RSIP签名。
4.根据权利要求3所述的去中心化计算机网络,其中,
如果所述预言机氏族认定了所述第二RSIP签名,则所述预言机氏族被配置为将所述交易、所述预言机氏族签名和所述第二RSIP签名发送给所述领导者氏族;
所述领导者氏族被配置为接收来自所述预言机氏族的所述交易、所述预言机氏族签名和所述第二RSIP签名,并确定是否认定所述交易、所述预言机氏族签名和所述第二RSIP签名,以及
如果所述领导者氏族认定所述交易、所述预言机氏族签名和所述第二RSIP签名,则所述领导者氏族将所述交易广播到所述多个节点。
5.根据权利要求1所述的去中心化计算机网络,其中,所述领导者氏族基于区块链数据确定是否认定所述交易。
6.根据权利要求1所述的去中心化计算机网络,其中,当包括所述领导者氏族的阈值数量的多个节点认定所述交易时,所述领导者氏族认定所述交易,以及
包括所述领导者氏族的所述多个节点是协议确定的氏族。
7.根据权利要求1所述的去中心化计算机网络,其中,在所述领导者氏族广播所述交易之后,所述多个节点在区块数据中存储或引用所述交易。
8.根据权利要求1所述的去中心化计算机网络,其中,所述第一RSIP氏族被配置为通过认定或不认定来执行情绪分析。
9.根据权利要求1所述的去中心化计算机网络,其中,每个所述第一RSIP氏族都包括相同数量的节点。
10.根据权利要求1所述的去中心化计算机网络,其中,
如果所述第一RSIP氏族不认定所述交易,所述领导者氏族签名和所述预言机氏族签名,则所述预言机氏族将所述交易、所述领导者氏族签名和所述预言机氏族签名发送给所述部落中的所述氏族或具有在所述第一RSIP氏族中的氏族的、投票为少数的部落,以认定所述交易。
11.一种使用去中心化计算机网络认定交易的方法,所述方法包括:
领导者氏族接收交易确认请求,所述交易确认请求包含所述交易;由所述领导者氏族确定是否认定所述交易;
如果所述交易被所述领导者氏族认定,则所述领导者氏族将所述交易和领导者氏族签名发送给预言机氏族进行认定,其中所述预言机氏族是多个氏族之一;
如果所述交易和所述领导者氏族签名由所述预言机氏族认定,则预言机氏族向第一多个随机选择的氏族“第一RSIP氏族”发送(i)所述交易,(ii)所述领导者氏族签名,以及(iii)预言机氏族签名;
如果所述交易、所述领导者氏族签名和所述预言机氏族签名得到所述第一RSIP氏族的认定,所述第一RSIP氏族向所述预言机氏族发送第一RSIP签名;
所述预言机氏族从所述第一RSIP氏族接收所述第一RSIP签名;由所述预言机氏族确定是否认定所述第一RSIP签名;
如果所述预言机氏族认定了所述第一RSIP签名,则所述预言机氏族向所述领导者氏族发送所述交易、所述预言机氏族签名和所述第一RSIP签名;
所述领导者氏族接收来自所述预言机氏族的所述交易、所述预言机氏族签名和所述第一RSIP签名;
所述领导者氏族确定是否认定所述交易、所述预言机氏族签名和所述第一RSIP签名;以及
如果所述领导者氏族认定所述交易,所述预言机氏族签名和所述第一RSIP签名,则所述领导者氏族向所述多个节点广播所述交易。
12.根据权利要求11所述的方法,其中,
如果所述第一RSIP氏族不认定所述交易、所述领导者氏族签名和所述预言机氏族签名,则预言机氏族将所述交易、所述领导者氏族签名和所述预言机氏族签名发送给第二多个随机选择的氏族“第二RSIP氏族”以认定所述交易,以及
第二RSIP氏族比第一RSIP氏族包含更多的节点。
13.根据权利要求12所述的方法,其中,
如果所述交易、所述领导者氏族签名和所述预言机氏族签名被所述第二RSIP氏族认定,则所述第二RSIP氏族向所述预言机氏族发送第二RSIP签名,并且所述预言机氏族接收来自所述第二RSIP氏族的所述第二RSIP签名并确定是否认定所述第二RSIP签名。
14.根据权利要求13所述的方法,其中,
如果所述预言机氏族认定了所述第二RSIP签名,则所述预言机氏族将所述交易、所述预言机氏族签名和所述第二RSIP签名发送给所述领导者氏族;
所述领导者氏族接收来自所述预言机氏族的所述交易、所述预言机氏族签名和所述第二RSIP签名,并确定是否认定所述交易、所述预言机氏族签名和所述第二RSIP签名,以及
如果所述领导者氏族认定所述交易、所述预言机氏族签名和所述第二RSIP签名,则所述领导者氏族将所述交易广播到所述多个节点。
15.根据权利要求11所述的方法,其中,所述领导者氏族基于区块链数据确定是否认定所述交易。
16.根据权利要求11所述的方法,其中,
当包括所述领导者氏族的阈值数量的多个节点认定所述交易时,所述领导者氏族认定所述交易,以及
包括所述领导者氏族的所述多个节点是协议确定的氏族。
17.根据权利要求11所述的方法,其中,在所述领导者氏族广播所述交易之后,所述多个节点在区块数据中存储所述交易。
18.根据权利要求11所述的方法,其中,所述第一RSIP氏族执行情绪分析。
19.根据权利要求11所述的方法,其中,每个所述第一RSIP氏族都包括相同数量的节点。
20.根据权利要求11所述的方法,其中,
如果所述第一RSIP氏族不认定所述交易,所述领导者氏族签名和所述预言机氏族签名,则所述预言机氏族将所述交易、所述领导者氏族签名和所述预言机氏族签名发送给所述部落中的氏族或具有在所述第一RSIP氏族中的氏族的、投票为少数的部落,以认定所述交易。
Claims (1)
1.一种用于进行交易的去中心化计算机网络,所述网络包括:
包括多个节点的多个氏族;
包括所述多个氏族的多个部落;
预言机氏族,其中所述预言机氏族是所述多个氏族之一;和
领导者氏族;
其中,当所述交易被路由到所述领导者氏族时,所述领导者氏族确定是否认定所述交易;
如果所述领导者氏族认定所述交易,则所述领导者氏族将具有领导者氏族签名的所述交易路由到所述预言机氏族;
其中,如果所述预言机氏族认定所述交易和所述领导者氏族签名,则所述预言机氏族将(i)所述交易,(ii)所述领导者氏族签名,和(iii)预言机氏族签名路由到多个随机选择的氏族(RSIP氏族);
其中,如果所述RSIP氏族认定所述交易,所述领导者氏族签名和所述预言机氏族签名,则所述RSIP氏族将RSIP签名路由到所述预言机氏族;
其中,所述预言机氏族接收来自所述RSIP氏族的所述RSIP签名,并确定是否认定所述RSIP签名;
其中,如果所述预言机氏族认定所述RSIP签名,则所述预言机氏族将所述交易、所述预言机氏族签名和所述RSIP签名路由到所述领导者氏族;
其中,所述领导者氏族接收来自所述预言机氏族的所述交易、所述预言机氏族签名和所述RSIP签名,并确定是否认定所述交易,所述预言机氏族签名和所述RSIP签名,以及
其中,如果所述领导者氏族认定所述交易,所述预言机氏族签名和所述RSIP签名,则所述领导者氏族向所述多个节点广播所述交易。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201962878008P | 2019-07-24 | 2019-07-24 | |
US62/878,008 | 2019-07-24 | ||
PCT/US2020/043463 WO2021016546A1 (en) | 2019-07-24 | 2020-07-24 | Unity protocol consensus |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114503143A true CN114503143A (zh) | 2022-05-13 |
Family
ID=74193681
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202080067331.0A Pending CN114503143A (zh) | 2019-07-24 | 2020-07-24 | 统一协议共识 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20220278854A1 (zh) |
EP (1) | EP4004853A4 (zh) |
CN (1) | CN114503143A (zh) |
WO (1) | WO2021016546A1 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112887436B (zh) * | 2021-04-28 | 2021-08-03 | 支付宝(杭州)信息技术有限公司 | 一种共识方法、共识节点和流水线方式的区块链系统 |
GB2620557A (en) * | 2022-07-05 | 2024-01-17 | Tokencertify Ltd | Improvements in or relating to data integrity |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7711847B2 (en) * | 2002-04-26 | 2010-05-04 | Sony Computer Entertainment America Inc. | Managing users in a multi-user network game environment |
US10592989B2 (en) * | 2007-10-24 | 2020-03-17 | Joseph D. Koziol | Insurance transaction system and method |
US11394773B2 (en) * | 2014-06-19 | 2022-07-19 | Jim Austin Joseph | Cryptographic currency block chain based voting system |
US9967334B2 (en) * | 2015-03-02 | 2018-05-08 | Dell Products Lp | Computing device configuration and management using a secure decentralized transaction ledger |
US10269012B2 (en) * | 2015-11-06 | 2019-04-23 | Swfl, Inc. | Systems and methods for secure and private communications |
US11165589B2 (en) * | 2017-05-11 | 2021-11-02 | Shapeshift Ag | Trusted agent blockchain oracle |
WO2018217804A1 (en) | 2017-05-22 | 2018-11-29 | Visa International Service Association | Network for improved verification speed with tamper resistant data |
-
2020
- 2020-07-24 WO PCT/US2020/043463 patent/WO2021016546A1/en unknown
- 2020-07-24 US US17/629,128 patent/US20220278854A1/en active Pending
- 2020-07-24 CN CN202080067331.0A patent/CN114503143A/zh active Pending
- 2020-07-24 EP EP20843032.2A patent/EP4004853A4/en active Pending
Also Published As
Publication number | Publication date |
---|---|
US20220278854A1 (en) | 2022-09-01 |
WO2021016546A1 (en) | 2021-01-28 |
EP4004853A4 (en) | 2023-08-09 |
EP4004853A1 (en) | 2022-06-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110784346B (zh) | 一种基于信誉值的pbft共识系统及方法 | |
CN109447795B (zh) | 一种支持快速达成最终确认性的拜占庭共识方法 | |
Wang et al. | A blockchain based privacy-preserving federated learning scheme for Internet of Vehicles | |
CN111682942B (zh) | 一种应用于许可链的二元加权拜占庭容错共识方法 | |
CN113271204B (zh) | 一种基于量子密钥分发的拜占庭容错共识方法 | |
Yadav et al. | A comparative study on consensus mechanism with security threats and future scopes: Blockchain | |
CN113328997B (zh) | 联盟链跨链系统及方法 | |
Neu et al. | The availability-accountability dilemma and its resolution via accountability gadgets | |
Sun et al. | Rtchain: A reputation system with transaction and consensus incentives for e-commerce blockchain | |
CN113518005B (zh) | 一种区块共识方法、装置、设备及存储介质 | |
Cong et al. | A blockchain consensus protocol with horizontal scalability | |
WO2020082213A1 (zh) | 一种网络可扩展性区块链实现方法 | |
CN114503143A (zh) | 统一协议共识 | |
CN115499379B (zh) | 一种基于区块链的信息交互方法、装置、设备及介质 | |
CN115022326B (zh) | 基于协同过滤推荐的区块链拜占庭容错共识方法 | |
CN113626875A (zh) | 一种区块链分片赋能的知识图谱文件存储方法 | |
CN110990790B (zh) | 一种数据处理方法及设备 | |
Swarnkar et al. | Security, privacy, trust management and performance optimization of blockchain technology | |
US20230269090A1 (en) | Apparatus for secure multiparty computations for machine-learning | |
Olakanmi et al. | Trust-aware and incentive-based offloading scheme for secure multi-party computation in Internet of Things | |
Bendahmane et al. | Result verification mechanism for MapReduce computation integrity in cloud computing | |
Mahmood et al. | Survey of consensus protocols | |
CN114827176A (zh) | 一种分散式存储系统中防御女巫攻击的方法和系统 | |
Xian et al. | A distributed efficient blockchain oracle scheme for internet of things | |
Tu et al. | A blockchain implementation of an attendance management system |
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 |