CN111034119A - 与包括一对耦合区块链的二进制区块链相关联的计算机实现的系统和方法 - Google Patents
与包括一对耦合区块链的二进制区块链相关联的计算机实现的系统和方法 Download PDFInfo
- Publication number
- CN111034119A CN111034119A CN201880052926.1A CN201880052926A CN111034119A CN 111034119 A CN111034119 A CN 111034119A CN 201880052926 A CN201880052926 A CN 201880052926A CN 111034119 A CN111034119 A CN 111034119A
- Authority
- CN
- China
- Prior art keywords
- blockchain
- node
- nodes
- computer
- blocks
- 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
- 238000000034 method Methods 0.000 title claims abstract description 81
- 238000012546 transfer Methods 0.000 claims abstract description 35
- 238000010200 validation analysis Methods 0.000 claims description 13
- 238000009826 distribution Methods 0.000 claims description 7
- 238000005065 mining Methods 0.000 description 19
- 238000010586 diagram Methods 0.000 description 8
- 230000008901 benefit Effects 0.000 description 7
- 238000012795 verification Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 238000013475 authorization Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000012790 confirmation Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- PCHJSUWPFVWCPO-UHFFFAOYSA-N gold Chemical compound [Au] PCHJSUWPFVWCPO-UHFFFAOYSA-N 0.000 description 2
- 239000010931 gold Substances 0.000 description 2
- 229910052737 gold Inorganic materials 0.000 description 2
- 230000002427 irreversible effect Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- DIWRORZWFLOCLC-UHFFFAOYSA-N Lorazepam Chemical compound C12=CC(Cl)=CC=C2NC(=O)C(O)N=C1C1=CC=CC=C1Cl DIWRORZWFLOCLC-UHFFFAOYSA-N 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 238000012797 qualification Methods 0.000 description 1
- 238000005215 recombination Methods 0.000 description 1
- 230000006798 recombination Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Classifications
-
- 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/321—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 a third party or a trusted authority
- H04L9/3213—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 a third party or a trusted authority using tickets or tokens, e.g. Kerberos
-
- 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/3236—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 using cryptographic hash functions
- H04L9/3239—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 using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
-
- 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
-
- 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/3218—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 using proof of knowledge, e.g. Fiat-Shamir, GQ, Schnorr, ornon-interactive zero-knowledge proofs
-
- 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)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提供一种计算机实现的方法。所述计算机实现的方法包括:i)在将权益证明令牌转移到权益证明区块链上确定类型的地址之后,将权益证明令牌的转移的记录添加到工作量证明区块链;ii)从一组节点中识别一个节点,以参与向所述权益证明区块链添加区块,所述识别基于工作量证明区块链;iii)在所述权益证明区块链中包括已识别节点提交的区块。
Description
技术领域
本发明主要涉及分布式分类账,且更具体地涉及提供一对耦合区块链的方法和系统,所述耦合区块链可以统称为二进制区块链。本发明特别适合,但不限于,在传统的完全基于工作量证明(POW)的区块链中,实现区块创建的更高的规则性和/或更高频率的区块创建,同时与完全基于权益证明(POS)的区块链相比增强安全性和可靠性。因此,为了实现新颖及优越的区块链实施方式,本发明提供了安全、用密码执行的解决方案。
背景技术
在本文中,我们使用“区块链”一词来涵盖所有形式的基于计算机的电子分布式分类账,包括但不限于区块链和交易链技术、许可和未经许可的分类账、基于共识的分类账、共享分类账及其变体。尽管已经提出和开发了其他区块链实施方案,但是区块链技术最广为人知的应用是比特币分类账。
区块链是一种基于共识的电子分类账。电子分类账是一种基于计算机的去中心化的分布式系统,由区块组成,而区块又由交易和其他信息组成。比特币是工作量证明区块链的一个示例,在工作量证明区块链上矿工执行昂贵的计算以方便区块链上的交易。基于工作量证明的区块链一直受到批评,因为它需要大量的计算资源,这些计算资源需要消耗大量的电力才能运行,并且区块生成会不规则而缓慢。此外,必须在给定区块的顶部构建若干区块,然后所述给定区块才能认为已确认(即,完全不可能被还原)。
已经提出了基于权益证明的区块链作为工作量证明区块链的替代方案。在权益证明区块链网络中,区块链由权益证明而非工作量证明来保护。在权益证明下,矿工在专用账户中持有权益(存入一些令牌)。所述权益可以称为保证金,并且所述节点被选择为用于挖掘区块的节点的可能性与作为保证金提供的数字资产的数量成正比。权益证明区块链网络可用来避免在工作量证明区块链中挖矿所需的计算费用和精力。此外,与工作量证明区块链相比,权益证明区块链可以允许更高频率和更规则的区块创建。至少一些权益证明区块链还具有较低的分叉可能性,并且在将一个区块添加到所述区块链中时,可以立即有效地确认该区块。但是,单纯地实施权益证明存在“无利害关系”(Nothing at Stake)的问题。如果所述区块链中有分叉,则节点的令牌可以在分叉的两个部分(即,在相互竞争的区块链之间)复制。随机选择的创建区块的矿工可能会在分叉的两个部分都创建区块,因为这对该矿工来说很容易做到,而且无论分叉的哪个部分获胜,该矿工都会获得奖励。这种模棱两可的做法会损害所述区块链网络的安全性,因为它降低了在单个区块链上达成共识的速度,因此会延长可以认为区块内的交易已确认所需的时间。
Algorand是权益证明区块链网络的一个示例,该网络旨在解决与权益证明区块链相关的无利害关系问题。在Algorand中,要创建一个区块,就要选择一个委员会。更具体地,通过执行密码排序从所有公钥的集合中自选一个领导者(也可以称为提议者)和若干验证者。所述提议者提议一个区块,所述验证者代表整个网络运行拜占庭共识算法,以确定是否应接受该区块。Micali在提议Algorand时(请参阅Micali,S.(2016)Algorand:有效和民主的分类账。axXiv:1607.01341v9(2017)[cs.CR]“Micali”)已证明,只要三分之二以上与Algorand区块链关联的令牌由诚实用户持有,出现分叉的可能性就可以忽略不计,所述区块链就是安全的。然而,Algorand的安全性取决于签署信息后删除的临时私钥。但是,这些临时私钥的持有者可通过保留这些密钥获取个人经济利益,这使Algorand容易受到潜在攻击。此外,使用所述临时密钥会产生计算费用。
需要改进区块链,以提供高频率和规则的区块创建,并最小化或消除分叉可能性,同时不损害区块链的安全性和可靠性。因此,期望提供改进的方法、系统和设备,从而在上述一个或多个方面改进区块链技术。
发明内容
本发明由所附权利要求书限定。因此,根据本发明,提供了如所附权利要求书所定义的方法。
如将在下文更详细描述的,可以提供二进制区块链。更具体地说,可以维护两个区块链。权益证明区块链用作一级区块链,以允许节点将各种类型的交易添加到所述一级区块链。这些交易可以使令牌在各个节点之间转移,还可以包含智能合约代码等。通过在与所述一级区块链相关联的特定类型的存储库中持有一个或多个令牌(即,通过在所述一级区块链的特定存储库中持有“权益”),节点可有资格在所述一级区块链上创建区块。为了便于说明,以下将特定存储库称为“账户”,并且此种特定类型的账户也可以称为保证金账户。
除了所述一级区块链之外,还使用了二级区块链。所述二级区块链是一种工作量证明区块链,与所述一级区块链相比,所述二级区块链用于更有限的交易类型。例如,所述二级区块链可用于记录保证金(即,权益证明令牌)和/或与所述一级区块链的保证金账户相关的余额,并且所述二级区块链上的此类记录可用于识别哪些节点有资格在所述一级区块链上创建区块(即挖矿)。
所述一级区块链上交易的发生具有规律性,并且发生频率明显高于所述二级区块链上的交易。与完全基于权益证明的区块链(例如Algorand)相比,所述二进制区块链可以提供更高的安全性和可靠性,因为所述二级区块链的工作量证明性质解决了与使用临时密钥相关的安全性问题。
因此,根据本发明,可以提供一种计算机实现的方法。所述方法可以使多个区块链或区块链交易进行耦合、合并、关联和/或链接,所述多个区块链或区块链交易并不共享相同的基础区块链协议,比如权益证明协议和工作量证明协议。
所述计算机实现的方法包括:i)在将权益证明令牌转移到权益证明区块链上确定类型的地址之后,将权益证明令牌的转移的记录添加到工作量证明区块链;ii)从节点组中识别一个节点,以参与向所述权益证明区块链添加区块,所述识别基于所述工作量证明区块链;iii)将所述已识别节点提交的区块包括在所述权益证明区块链中。
在一些实施例中,根据预定标准确定性地执行识别节点。可以执行确定性识别,使得网络中的其他节点识别公共节点。在一些实施例中,使用密码分类来执行识别的步骤。
在一些实施例中,节点组包括至少一些已经将权益证明令牌转移到确定类型的地址的节点,但如果在工作量证明区块链上,与所述权益证明令牌的转移记录相关联的确认时段尚未过去,则不包括已经将权益证明令牌转移到确定类型的地址的节点。
在一些实施例中,所述确认时段是与所述工作量证明区块链相关联的区块的预定数量。
在一些实施例中,所述区块生成新令牌,并将所述新令牌的控制权转移到将所述令牌的转移记录添加到所述工作量证明区块链的节点。
在一些实施例中,所述区块生成新令牌,并将所述新令牌的控制权转移到所述已识别节点。
在一些实施例中,所述计算机实现的方法还包括:识别由节点发出的提款请求,并且不包括节点组中发出所述提款请求的节点。
在一些实施例中,所述提款请求是从与所述工作量证明区块链相关联的交易的元数据中识别的。
在一些实施例中,所述计算机实现的方法还包括:在与提款请求相关联的解除绑定时段之后,更新所述权益证明区块链,以将与所述提款请求相关联的权益证明令牌返回给发出所述提款请求的节点。
在一些实施例中,解除绑定时间是与所述工作量证明区块链相关联的区块的预定数量。
在一些实施例中,所述计算机实现的方法还包括拒绝由所述已识别节点之外的其他节点提交的区块。
在一些实施例中,所述计算机实现的方法还包括:在将所述区块包括在所述权益证明区块链中之前,验证所述区块已经被一组验证者节点验证,所述验证者节点组是所述节点组的子集,对所述验证者节点基于工作量证明区块链来标识。
在一些实施例中,所述验证者节点组用来执行拜占庭算法以验证所述区块。
在一些实施例中,所述计算机实现的方法还包括:通过识别包含最大工作量的二级区块链,并将识别出的二级区块链的权益证明令牌的分布与在一级区块链中挖掘的区块的分布进行比较,将所述一级和二级区块链识别为所述一级和二级区块链的真实副本。
根据本发明,可以提供一种电子设备。所述电子设备包括接口设备、耦合到该接口设备的处理器以及耦合到该处理器的存储器。所述存储器上存储有计算机可执行指令,该计算机可执行指令在被执行时,使所述处理器执行本文所述的方法。
在一些实施例中,所述存储器存储有包括工作量证明区块链和权益证明区块链的二进制区块链。
根据本发明,可以提供一种计算机可读存储介质。该计算机可读存储介质包括计算机可执行指令,该计算机可执行指令在被执行时,使处理器执行本文描述的方法。
附图说明
参考本文描述的实施例,本发明的这些和其他方面将变得显而易见并得以阐明。现在将仅通过举例的方式并参考附图来描述本发明的实施例,其中:
图1示出了示例二进制区块链网络的方框图。
图2示出了示例二进制区块链的方框图。
图3示出了可以作为节点的示例电子设备的方框图。
图4是根据二进制区块链协议执行的示例方法的流程图;
图5是没收数字资产的示例方法的流程图。
图6是确定候选节点是否有资格参与区块创建的示例方法的流程图。
具体实施方式
区块链网络
首先参考图1,该图以方框图形式示出了与二进制区块链相关联的示例区块链网络100。所述区块链网络100可以是公共区块链网络,即点到点开放会员网络,任何人都可以加入,而无需其他节点的邀请或授权。运行区块链协议(所述区块链网络100在该协议下运行)实例的分布式电子设备可以参与所述区块链网络100。这样的分布式电子设备可以称为节点102。所述区块链协议可以是本文所描述类型的二进制区块链协议。
运行所述区块链协议并构成区块链网络100的节点102的电子设备可以有多种类型,包括,例如电脑(例如台式电脑、专用集成电路(ASIC)、笔记本电脑、平板电脑、服务器)、移动设备(例如智能手机)、可穿戴电脑(例如智能手表)或其他电子设备。
所述区块链网络100的节点102通过使用合适的技术彼此耦合。这种通信遵循与所述区块链相关的协议。更具体地,在该示例中,根据二进制区块链协议进行通信。
所述节点102维护二进制区块链,其由两个区块链——一个一级区块链和一个二级区块链组成。所述一级区块链上记录了所述二进制区块链的大部分交易,并且其中包含的任何代码都在所述一级区块链上执行。例如,所述一级区块链可包括一些节点,这些节点含有将令牌的控制权从一个节点转移到另一节点的交易,和/或包括提供智能合约的交易。令牌是一种数字资产或其他电子或网络资源,并且可以,例如,表示对未来计算资源或任何其他类型的资源的控制权。智能合约是可以存储在一级区块链上并由所述区块链网络100中的节点执行的计算机协议。
所述一级区块链通过权益证明来保护。也就是说,要使节点有资格向一级区块链中添加区块(即“挖矿”一个区块),所述节点必须能够证明自身持有某些令牌作为“权益”。这些令牌可以称为保证金或保证金令牌或权益证明令牌,因为它们是与所述权益证明区块链关联的令牌。所述二进制区块链协议仅允许已将保证金(即权益证明令牌)存入特定地址(即保证金地址)的节点挖掘一级区块链上的区块。所述保证金存入的地址的类型是预定或指定的,从这个意义上说,所述地址是特定的。例如,所述地址可具有特定的标志、排列方法、格式等,这些特殊的标志、排列方法、格式等用于持有保证金令牌(即,权益证明令牌)的地址,但不用于持有令牌但用于其他目的的其他地址。只要满足其他条件(例如,未曾要求提取其保证金(即,先前存入的权益证明令牌),就可以允许在一级区块链上存入保证金的节点在一级区块链上充当矿工。
所述二级区块链在很多方面与所述一级区块链不同。例如,所述二级区块链通过工作量证明来保护。也就是说,节点102可以通过执行昂贵的计算来充当所述二级区块链的矿工,以便在所述二级区块链上进行交易。例如,所述工作量证明二级区块链可要求矿工解决密码问题。例如,所述二级区块链的矿工可找到一个随机数,以使用SHA-256将块头散列到小于当前难度所定义的值的数值。所述工作量证明算法所需的散列能力意味着,在某项交易的上面已挖掘一定数量的区块之后,该交易被认为实际上是不可逆的。解决了密码问题的节点为所述二级区块链创建了一个新区块,并将所述新区块广播到其他节点102。所述其他节点102验证所述矿工104实际上已经解决了密码问题,并因此在接受将所述区块添加到所述二级区块链之前,已经具有足够的工作量证明。通过所述节点102的共识将所述区块添加到所述二级区块链。
所述二级区块链与所述一级区块链的不同,可以还在于所述二级区块链的区块创建频率低于所述一级区块链。如以下将更详细描述的,所述二进制区块链协议将节点配置为仅包括所述二级区块链上的有限交易。例如,并非所述一级区块链上的每个交易都会复制到所述二级区块链上。相反,所述二进制区块链协议将节点用于出于有限目的使用所述二级区块链。所述二级区块链可以记录保证金账户余额。
可以将一个或多个令牌提供给所述二级区块链的矿工,作为其在所述二级区块链上成功挖掘区块的奖励。由于所述二级区块链是有限使用的区块链,因此所述奖励可以在一级区块链上获得。也就是说,可以将多个令牌添加到由在所述二级区块链上挖掘区块的节点所控制的一级区块链上的账户中,以作为挖掘该区块的奖励;只有在确认了所述二级区块链上的相关区块后,才可以更新所述一级区块链上的账户余额。此外,由于所述一级区块链的容量较高,所述一级区块链上的交易费用可能较低。
现在参考图2,该图示出了示例二进制区块链200。所述二进制区块链202包括一级区块链202和二级区块链204。如图2所示,每单位时间内,所述一级区块链202比所述二级区块链204包括更多的区块,因为所述一级区块链以比所述二级区块链更高的频率生成区块,并且在一些实施例中,所述一级区块链中的区块一出现就被确认(以压倒性的概率)。也就是说,所述一级区块链可以配置为不会分叉。所述一级区块链202用于记录大多数交易(并且在至少一些实施例中,记录所有交易),而所述二级区块链204仅用于记录存款账户余额和奖励信息(例如,在所述二级区块链上挖掘的区块的区块奖励)。例如,在图2所示的时间段中,所述一级区块链添加了七个区块,表示为PBi至PBi+6,而所述二级区块链添加了两个二级区块,表示为SBi和SBi+1。这些数字仅用于说明的目的,并且所述一级区块链和/或二级区块链中的区块的数量可以与图2中所示的不同。所述一级区块链202中的区块可以称为一级区块(PB),而所述二级区块链204中的区块可以称为二级区块(SB)。
所述一级区块链202能够立即确认和以高频率创建区块,从而可以高速率进行一般交易,而所述二级区块链204通过保护(使用工作量证明)对所述一级区块链202的潜在矿工存入的保证金的记录,来防止所述一级区块链202分叉。
作为节点运行的电子设备
图3是示出可以在二进制区块链网络100(图1)中作为节点102(图1)的示例电子设备300的组件的方框图。所述示例电子设备300也可以称为处理设备。所述电子设备可以采取各种形式,包括,例如台式电脑、笔记本电脑、平板电脑、服务器、移动设备(例如智能电话)、可穿戴电脑(例如智能手表)或其他类型。
所述电子设备300包括处理器310、存储器320和接口设备330。这些组件可以直接或间接地彼此耦合并且可以彼此通信。例如,所述处理器310、存储器320和接口设备330可以通过总线340相互通信。所述存储器320存储有计算机软件程序,所述计算机软件程序包括机器可读指令和用于执行本文描述的功能的数据。例如,所述存储器可以包括处理器可执行指令,所述处理器310执行这些处理器可执行指令时,使所述电子设备执行本文所述的方法。所述处理器可执行指令可包括指令,当所述处理器310执行这些指令时,使得所述电子设备实现与所述区块链网络100(图1)相关联的二进制区块链协议。
所述处理器310可以实现为,例如,应用专用集成电路(ASIC)。
所述存储器320可以存储所述一级区块链202和/或所述二级区块链204或其一部分。也就是说,所述存储器320可以存储所述一级区块链和所述二级区块链的所有区块或部分区块,所述部分区块可以是最新的区块,也可以是某些区块中的信息的一部分。
尽管在图3中用单个区块示出了所述存储器320,但在实践中,所述电子设备300可以包括多个存储器组件。所述存储器组件可以是各种类型的,包括随机存取器(RAM)、硬盘驱动器(HDD)、固态硬盘(SSD)、闪存驱动器等。不同类型的存储器可以适合于不同的目的。此外,尽管将所述存储器320与所述处理器310分别示出,但是所述处理器310可以包括嵌入式存储器。
所述电子设备200在所述二进制区块链网络100(图1)中作为节点102(图1)。所述电子设备200可以执行所述二进制区块链协议的各种功能,例如,验证其他节点提交的区块,提议将区块添加到所述一级区块链或二级区块链等。
二进制区块链协议
所述二进制区块链网络100的节点102根据二进制区块链协议进行操作。所述二进制区块链协议定义了规则集,用于管理所述二进制区块链协议的活动。节点将评估其他节点是否遵守了所述二进制区块链协议;例如,通过验证所述二进制区块链网络的其他节点提交的区块。与一个或多个节点关联的处理器可以配置有计算机可执行指令,所述计算机可执行指令使所述处理器根据所述二进制区块链协议进行操作。
根据所述二进制区块链协议,为了使节点有资格将“区块”“挖掘”到一级区块链中(即,为了能够提交要添加到一级区块链的区块,该区块被所述二进制区块链网络中的其他节点接受),所述节点必须首先将保证金(即,权益证明令牌)放置于一个专用账户(可称为保证金账户)中。所述保证金是一个或多个令牌(可称为存款令牌或权益证明令牌),所述专用账户可以是具有确定类型的地址的账户。例如,与所述区块链网络相关联的某些账户可以是保证金账户,而其他账户则是普通(即非存款)账户。保证金账户可以是仅用于持有所述一级区块链的矿工节点的权益的账户,而普通账户可以用于其他目的。所述二进制区块链协议可要求所述一级区块链上的每个矿工在其存款账户中持有一个或多个令牌,从而成为所述一级区块链的矿工,节点可以将令牌从普通账户转移至保证金账户。
如下所述,根据所述二进制区块链协议,一旦将包括将保证金(即至少一些权益证明令牌)转移到保证金账户的记录的区块添加到所述一级区块链中,执行所述二进制区块链协议的节点将拥有一条将保证金(即,转移到保证金账户的权益证明令牌)添加到所述二级区块链的转移记录。将所述保证金的转移的记录添加到所述二级区块链的节点可以是挖掘二级区块链的节点。因此,在所述二级区块链(即工作量证明区块链)上跟踪所述保证金账户的状态。
在将保证金(即至少一些权益证明令牌)转移到保证金账户后,节点要想有资格在所述一级区块链上进行挖矿,必须首先等待确认时段结束。所述确认时段很长,因此在工作量证明(即二级)区块链上进行重组的风险很小。更准确地说,确认时段很长,因此对记录有保证金的二级区块链的深度进行重组的程度很小。所述确认时段可以是与所述二级区块链相关联的区块的一定数量。也就是说,在含有所述保证金的转移的记录的区块顶部将一定数量的区块添加到所述二级区块链后,所述确认时段就会结束。确认时段结束后,可以认为记录所述保证金转移的交易在所述二级区块链中得到确认,然后此保证金的所有者便有资格在所述一级区块链上挖掘区块。
如上所述,专用账户(即保证金账户)可以是具有确定类型的地址的账户。例如,保证金账户地址可以包括不用于普通账户,指示保证金账户状态的标志或标识符。
所述二进制区块链协议可用于将不同的规则应用于保证金账户和普通账户。例如,普通账户中持有的令牌可以在获得账户持有人授权后立即转移到其他账户。但是,只有已发出提款请求,并且与所述提款请求相关联的解除绑定时间结束后,才能将保证金账户中持有的令牌转移出去。所述解除绑定时间是所述二级区块链上区块的预定数量。选择解除绑定时间的长度,以使发生这种长度的分叉(在所述二级区块链中)的可能性微不足道。因此,发出提款请求后,还需在解除绑定时间结束之后,才能将保证金账户中的存款令牌返回到存款者节点。
在节点将保证金存入所述一级区块链上的关联的保证金账户,并且更新了所述二级区块链以反映所述保证金账户的状态后(即,在所述二级区块链上确认了保证金的转移的记录之后),所述节点便有资格在所述一级区块链上挖矿,除非从所述节点接收到提款请求,要求将所述保证金退还到普通账户。所述节点有资格进行挖矿时,可以将它们视为包含在有资格进行挖矿的节点组中,并且该组中的某个节点被选择去挖掘区块的概率与所述矿工存入的保证金的数量(即所述矿工在保证金账户中持有的权益证明令牌的数量)成正比(相对于该组存入的保证金的总额)。因此,与存入较少保证金的节点相比,存入较多保证金(例如,更多的权益证明令牌)的节点被选择为所述一级区块链的矿工的机会更大。
因此,是否有资格在所述一级区块链上进行挖矿(即创建区块并使这些区块被其他节点接受)取决于所持有的保证金的数量。较多的保证金会增加某个节点被选择为矿工的可能性,但是所有具有已存入权益(即在保证金账户中持有保证金)的节点都有机会被选择去挖掘任何给定的区块。可以说,为一级区块链选择矿工的方式为抽签。
所述二进制区块链网络100的任何节点都可能有资格在所述二级区块链上进行挖矿,即使它们尚未存入保证金(即,如果他们尚未将任何权益证明令牌转移到专用的保证金账户中)。由于所述二级区块链是工作量证明区块链,因此在二级区块链上进行挖矿的权限来自于提供工作量证明。也就是说,任何节点都可以为所述二级区块链创建一个区块,并可以通过证明它们已经成功解决了密码问题,向所述二级区块链中的其他节点证明它们有权挖掘新区块。
所述一级区块链的矿工可能有权在所述一级区块链上创建奖励。例如,在所述一级区块链上挖掘区块的矿工可创建新令牌,而其他节点如果确定该矿工按照所述二进制区块链协议执行行动,则它们将接受该新令牌是有效的。所述二级区块链的矿工也可能有权创建或接受奖励,他们可能会在所述一级区块链上得到奖励。例如,所述二级区块链的矿工可以被奖励在所述一级区块链上创建的新令牌(由在所述一级区块链上作为矿工的另一个节点或挖掘到所述二级区块链并且也在所述一级区块链上挖矿的节点创建)。
在一些实施例中,可以不以新令牌的形式向所述一级区块链的矿工提供区块挖掘奖励。取而代之的是,矿工可以仅从节点中获取交易费用,所述节点将所述交易包含在由该矿工创建的区块中。
验证者节点和/或矿工节点将确认是否已遵守所述二进制区块链协议。也就是说,矿工(在将交易包括在区块中之前会先验证所述交易)和/或不挖矿的验证者节点(在将交易和区块包括在区块链中之前也会验证所述交易和区块)将检测到违反上述协议的行为。因此,所述二进制区块链网络100的节点在接受将区块添加到所述一级区块链或二级区块链之前,会确保已经遵守了所述二进制区块链协议。例如,所述节点可以确定为所述一级区块链创建的区块是否是由有资格挖矿的矿工创建的,所述矿工可能是符合以下条件的一个节点:1)存有权益;2)具有将权益(保证金)添加到所述二级区块链的记录并在所述二级区块链上得到确认;且3)尚未发出尝试收回其保证金的提款请求。所述节点还可以确定提交添加到所述一级区块链的区块的节点是否是有资格充当矿工。
所述二进制区块链网络100的其他节点将拒绝由不具备资格的矿工创建的区块或违反所述二进制区块链协议其他规则创建的区块。
现在参考图4,其示出了可以由节点102执行的示例方法400,所述节点102根据所述二进制区块链协议进行操作。图4的方法400是由所述二进制区块链网络100的节点102执行的计算机实现的方法。例如,所述节点102的处理器可配置有计算机可执行指令(即,处理器可执行指令),所述处理器执行这些计算机可执行指令时,使所述处理器执行图4的方法400。
在所述方法400的操作402处,执行所述方法400的节点102可以将保证金(即,可以转移一个或多个权益证明令牌)转移到保证金账户,或者可以检测到另一节点已经将保证金转移到保证金账户。也就是说,所述节点102可以将保证金(即,可以转移一个或多个权益证明令牌)从普通账户转移到与保证金账户相关联的预定类型的地址,或者可以检测到由另一个节点进行的这种转移。所述转移是在所述一级区块链上进行的,所述一级区块链是权益证明区块链。在将所述保证金从普通账户转移到所述保证金账户的交易Tp包含在添加到所述一级区块链的区块中时,进行了该转移。所述交易Tp可以已经由执行所述方法400的节点或另一节点准备。然后,可以将所述交易包括在由充当所述一级区块链的矿工的节点生成的区块中。
生成包含所述交易Tp的区块的节点是有资格进行挖矿的节点,并且该节点可以分配到通过密码分类生成区块的机会。下文参考图5,更详细地讨论挖矿资格。在有资格进行挖矿的节点组中,可以通过被称为密码分类的过程将单个节点有效地识别为(在操作403)有权挖掘给定区块的节点。在密码分类过程中,可以将节点识别为参与向所述权益证明区块链添加一个区块。可根据预定标准确定性地执行这样的识别,以使得所述二进制区块链网络的其他节点都能够识别公共节点。例如,在密码分类过程中,从有资格挖矿的节点组中随机选择一个或多个节点。更具体地,在公共数据(例如,前一个区块)上使用加密功能来识别领导者。验证者集合也可以使用密码分类来选择;例如,对公共数据(例如,前一区块)使用加密功能。Micali,S.,Algorand:有效和民主的分类账axXiv:1607.01341v9(2017)[cs.CR]中描述了密码分类,其内容通过引用合并于此。
所述已识别的领导者可以称为矿工,因为所述领导者提议要挖掘的新区块。
可以使用类似于Micali所描述的方式来执行对所述矿工(在操作403处)和验证者集合的识别,但是合格矿工组是有限的。例如,可以在操作403处执行图5中的方法500,以确定某个特定节点是否包括在有资格进行挖掘的节点组中。更具体地说,合格矿工组仅包括以下节点:1)存放了保证金(即,将一个或多个权益证明令牌转移到专用的保证金账户);2)具有将所述保证金添加到所述二级区块链的记录并在所述二级区块链上得到确认;和3)尚未发出尝试收回保证金(即,试图将存入保证金账户的任何权益证明令牌转回到普通账户)的提款请求。至少一些在普通账户中持有令牌的节点可以没有资格充当所述一级区块链的矿工。
此外,在识别要参与将所述区块添加到所述一级区块链中的节点时,参考了所述二级区块链。也就是说,在所述一级区块链上的保证金存款账户中以权益证明令牌的形式来持有保证金,在资格上是不足够能在所述一级区块链上进行挖矿的;所述二级区块链还必须表明已经存入了保证金(并且表明这一情况的区块必须已得到确认)。因此,在执行操作403时,在操作402处转移了所述保证金的节点尚未包括在有资格进行挖掘的节点组中(因为所述二级区块链更新仅用于反映在所述方法400的后续操作中进行的保证金的转移)。如果执行方法400的节点要检测由将令牌转移到所述一级区块链上的保证金账户的节点创建的区块,如果所述二级区块链尚未更新以记录所述转移(或者如果包含所述记录的区块尚未得到确认),则由不合格节点提议的区块将被拒绝。
在确定是否接受将一个区块添加到所述一级区块链时,可以执行操作403,例如作为执行方法400的节点102的验证操作的一部分来执行。如果所述区块成功地验证(例如,如果所述区块是由在操作403所识别的节点提交的),则可以将所述区块包括在所述一级区块链中。例如,执行该方法的节点可以将所述区块添加(在操作404中)到存储在执行该方法的节点102处的一级区块链的副本。
在所述保证金(即,权益证明令牌)被转移到所述一级区块链上的保证金账户之后,可以在操作408将所述保证金的记录添加到所述二级区块链。例如,节点(可以是正在监管所述一级区块链的所述二级区块链的矿工)可以准备所述保证金转移的记录并将该记录添加到所述二级区块链的区块中。仅在所述记录已在所述二级区块链上确认后,转移所述保证金的节点才有资格在所述一级区块链上进行挖矿。也就是说,在与所述工作量证明区块链上的记录相关的确认时段过去之后,所述节点才有资格进行挖矿。所述确认时段是与所述二级区块链相关联的区块的预定数量。更具体地说,所述确认时段是一段时间,在此之后,对所述二级区块链上发生的保证金记录深度进行重组的可能性变得很小,且小的程度可接受。由于所述二级区块链的工作量证明性质,在已定义数量的区块添加到包括所述记录的区块之上之后,所述记录实际上是不可逆的。为了确保所述保证金的转移的记录已永久地添加到所述二级区块链中,所述二进制区块链网络的节点可以要求仅在确认时段结束之后,与所述保证金关联的节点才有资格在所述一级区块链上挖矿。
记录将所述保证金存入所述二级区块链的区块中的矿工可以是执行图4的方法400的节点,也可以是所述二进制区块链网络100中的另一个节点。在执行所述方法400的节点未将保证金的存入记录添加到所述二级区块链的区块中或未生成包括该记录的区块的情况下,执行所述方法400的节点仍可以作为验证者参与,以确保该记录正确地包含在区块中和/或正确地生成区块(例如,所述矿工提交工作量证明来证明矿工有权生成区块,这是有效的)。
在将存入所述保证金的记录添加到所述二级区块链,并且经过确认时段之后,在操作402,在交易Tp中转移了所述保证金的节点有资格参与所述一级区块链的区块生成。因此,在操作410,可以将另一区块添加到所述一级区块链,并且在添加所述另一区块时,可以从有资格作为矿工参与的一组节点中识别出所述另一节点。可以类似于操作403的方式来执行操作410,除非在操作402转移了所述保证金的节点现在有资格参与操作410,因为现在已经将保证金的存入记录添加到所述二级区块链并进行了确认。为了识别要参与在所述一级区块链上添加区块的节点(例如,挖掘节点和/或验证者集合的节点),可以再次执行密码分类。然而,在操作410,基于与操作403不同的公共数据来执行密码分类,使得在操作410可能会选择不同的节点。在操作410识别节点时,执行所述方法400的节点参考所述二级区块链,以确保所述二级区块链表明所述已识别的节点在所述一级区块链上已存入保证金,并且已将其记录在所述二级区块链中,并且已确认记录该条记录的区块。因此,在操作410的识别至少部分地基于所述工作量证明区块链。
在操作410识别节点时,执行所述方法400的节点102可以识别一组合格节点,或者可以确定给定节点是否包括在合格节点组中。例如,可以在操作410执行图5的方法500。如上所述,所述合格节点组包括至少一些已经将保证金转移到所述确定类型的地址(例如,转移到保证金账户)的节点,但如果在所述工作量证明区块链上,与所述保证金的转移的记录相关联的确认时段尚未过去,则不包括已经将保证金转移到所述确定类型的地址的节点。所述确认时段可以是与所述工作量证明区块链相关联的区块的预定数量。
在操作412,执行方法400的节点102包括由所述一级区块链中的已识别的节点提交的区块。例如,执行所述方法的节点可以将所述区块添加到执行所述方法的节点102存储的一级区块链的副本。
虽然在图4中未示出,不是给定区块创建的迭代的已识别节点的其他节点也可以尝试创建区块。如果节点不是给定区块创建的迭代的已识别节点,则执行所述方法的节点用于拒绝该节点提交的区块。
此外,虽然在图4中未示出,在将区块包括在所述一级区块链中之前,执行所述方法的节点可以验证所述区块是否已经被一组验证者节点验证,所述验证者节点可以称为拜占庭协议(BA)验证者集合。验证者节点组可以是有资格进行挖掘的节点组的子集,并且可以基于所述二级区块链来识别有资格进行挖掘的节点组。也就是说,只有在以下情况下,节点才有资格包含在BA验证者集合中:节点1)存放了保证金;2)具有将所述保证金添加到所述二级区块链的记录并已在所述二级区块链上确认;和3)尚未发出尝试取回所述已存入保证金的提款请求。
所述BA验证者集合可以类似于Micali(2017)所提议的方式进行操作,例如,可以执行拜占庭算法来验证区块。也就是说,只有BA验证者集合的成员才能参与拜占庭算法。
所述二进制区块链协议可以允许创建区块的节点(即充当矿工的节点)生成新令牌并将该新令牌的控制权转让给他们自己。例如,在操作404或412,所述一级区块链中包含的区块,可以包括对挖掘该区块的节点的奖励。如果所述奖励满足预定义的标准(例如有关奖励的数量的标准),则所述奖励不会阻止其他节点验证所述区块。然而,其他节点可以在验证所述区块时评估所述奖励(例如,所述奖励的数量)。
由于所述二级区块链仅用于公共数据记录的有限目的,所述二级区块链上区块的矿工在所述二级区块链上挖矿而获得的奖励可能会在所述一级区块链上获得。例如,添加到所述一级区块链的区块(例如在操作404或412添加的区块)可以生成新令牌并将所述新令牌的控制权转移到所述二级区块链上挖掘的一个节点。例如,所述新令牌的控制权可以转移到添加了将所述保证金转移到所述二级区块链的记录的节点。可选地,所述二进制区块链协议可要求在所述一级区块链上创建的新令牌(在所述一级区块链上创建的新令牌作为对在所述二级区块链上挖矿活动的奖励)只能由接收奖励的节点创建。这进一步鼓励了在所述一级区块链上存入大量权益,并减少了所述一级区块链上的矿工参与对所述二进制区块链网络的协同攻击的动机,因为这会降低其权益的价值。所述二进制区块链协议也可以变化,以便在所述一级区块链上挖矿的任何给定区块中,仅可以生成对在所述二级区块链上挖矿活动的奖励的一部分。这将要求矿工在任何给定时间仅索取其奖励的一小部分,并可以减少所述一级区块链上较小的矿工交换令牌的动机,尤其是交换令牌用于成功在所述二级区块链上挖矿后要求区块奖励的目的的动机。此外,以这种方式限制奖励赎回还可以为保证金数额创造有效的下限,所述保证金由在所述二级区块链上挖矿的理性的矿工存放。如果安全保证金不足,所述二级区块链的矿工在二级区块链上领取奖励的速度可能会比其在所述一级区块链上领取奖励的速度要快。因此,一个理性的矿工会在所述二级区块链上存入相对于其散列能力而言足够多的保证金。
现在参考图5,该图示出了确定候选节点是否有资格参与在所述一级区块链上创建区块(例如,挖矿)的示例方法500。所述候选节点可以是,例如,已经提出要添加区块到所述一级区块链的节点,并且是在执行此操作时,声称有资格这样做的节点。因此,在将所述区块接受到所述一级区块链中之前,所述方法500可以作为确认或验证过程的一部分来执行。所述方法500可以在,例如图4的方法400的操作403和/或410执行。所述方法可以由二进制区块链网络上的节点执行,例如执行图4的方法400的节点102。
在操作502,所述节点确定所述候选节点是否已经在所述一级区块链上存入保证金。如果所述候选节点尚未在所述一级区块链上存入保证金,则所述候选节点不具有在所述一级区块链上挖矿的资格(如操作504所示)。在操作506处,所述节点确定是否已经在二级区块链(工作量证明区块链)上确认了所述保证金的存入记录。更具体地说,所述节点确定包括存款记录的区块是否已经得到确认(即,确认时段是否已经到期)。可以基于已经添加到包括保证金记录的区块的顶部的区块的数量来做出该确定。
如果所述记录未被确认,则所述候选节点不具有在所述一级区块链上进行挖矿的资格(如操作504所示)。
在操作508,所述节点确定是否已经从所述候选节点接收到提款请求。提款请求是要求退还先前转移到保证金账户的保证金的请求。如果已经接收到提款请求,则所述候选节点不具有在所述一级区块链上进行挖矿的资格(如操作504所示)。
如果所述节点确定所述候选节点已经存入了保证金,所述保证金的存入记录已经在所述二级区块链上确认,并且未接收到提款请求,则在操作510确定所述候选节点具有在所述一级区块链上挖矿的资格。
现在参考图6,该图示出了处理提款请求的示例方法600。所述方法600可以由所述二进制区块链网络100的节点执行,例如执行图4和/或图5的方法400、500的节点102。
在操作602处,执行方法600的节点102识别由所述二进制区块链网络的节点发出的提款请求。提款请求是由先前已将保证金转移到所述一级区块链上的保证金账户的节点发出的,所述提款请求是退还保证金的请求。所述提款请求可以在所述一级区块链的区块中包含的交易中或在所述二级区块链的区块中包含的交易中检测到。例如,一项交易包括将交易识别为提款请求的元数据。因此,在操作602,可以从与所述二级区块链关联的交易或记录的元数据中识别提款请求,所述二级区块链是工作量证明区块链,或者可以从与所述一级区块链相关联的交易的元数据中识别提款请求。
在发出提款请求之后,所述节点102可以(在操作604处)排除在所述一级区块链上发出提款请求的节点。也就是说,发出提款请求的节点被排除在有资格在所述一级区块链上挖矿的一组节点之外。发出提款请求后,发出提款请求的节点提议的一级区块链的任何区块都将被忽略。
在执行方法400的节点确定与提款请求相关联的解除绑定时间已经过去之后,操作606处的节点102可以允许与提款请求相关联的保证金退还给发出提款请求的节点。例如,可以更新所述一级区块链以将与提款请求相关联的保证金退还给发出提款请求的节点。例如,在解除绑定时间过后,发出提款请求的节点可以向所述一级区块链的矿工广播提议的交易,所述交易将所述保证金转移回普通地址(换句话说,使保证金可由其所有者花费)。在允许将交易包含在添加到所述一级区块链的区块中之前,所述一级区块链的挖掘节点和/或验证节点可以确保解除绑定时段实际上已经结束。所述解除绑定时段可以是与所述二级区块链相关联的区块的预定数量。例如,在退还保证金之前,发出提款请求的节点需要等待预定数量的区块。
在某些情况下,所述保证金的记录在所述二级区块链上得到确认之前,可以收到提款请求。当这种情况发生时,执行方法400的节点需要等待,直到所述保证金的记录得到确认,解除绑定时段开始。
通过识别包含最大工作量的二级区块链,并将来自已识别的二级区块链的保证金的分布与一级区块链中挖掘的区块的分布进行比较,区块链网络的新节点(从某种意义上说,它们先前尚未连接到所述区块链网络,或者它们脱机的时间超过了解除绑定的时间)可以将一级区块链和二级区块链识别为所述一级区块链和二级区块链的真实副本。如果存在一个以上的一级区块链,则这些节点可以选择一个所述分布最匹配的。
应当说明,上述实施例说明而非限制本发明,在不脱离本发明的由所附权利要求限定的范围的情况下,本领域技术人员将能够设计出许多替代性实施例。在权利要求中,括号中的任何附图标记不应解释为对权利要求的限制。词语“包括(comprising)”和“包括(comprises)”等并非在整体上排除其他元件和步骤的存在,尽管这些元件和步骤并没有在任何权利要求或说明书中列出。在本说明书中,“包括(comprises)”意指“包括(includes)或由......组成(consists of)”,“包括(comprises)”意指“包括(including)或由......组成(consisting of)”。元件的单数引用不意味着排除这些元件的复数引用,反之亦然。本发明可以借助包括若干不同元件的硬件,以及借助适当编程的计算机来实施。在列举了若干装置的设备权利要求中,这些装置中的若干个可以由硬件的同一个部件来体现。不争的事实是,在相互不同的从属权利要求中列举了某些方法,并不代表这些方法的结合不能获得有益效果。
Claims (18)
1.一种计算机实现的方法,包括:
在将权益证明令牌转移到权益证明区块链上确定类型的地址之后,将所述权益证明令牌的转移的记录添加到工作量证明区块链中;
从节点组中识别出一个节点,以参与向所述权益证明区块链中添加区块,所述识别基于工作量证明区块链;和
包括由所述权益证明区块链中的已识别节点提交的区块。
2.根据权利要求1所述的计算机实现的方法,其中,根据预定标准确定性地执行对所述节点的识别,以使得网络的其他节点识别公共节点。
3.根据权利要求1或2所述的计算机实现的方法,其中,所述识别是使用密码分类来执行的。
4.根据前述权利要求中的任一项所述的计算机实现的方法,其中,所述节点组包括至少一些已经将权益证明令牌转移到所述确定类型的地址的节点,但如果在所述工作量证明区块链上,与所述权益证明令牌的转移记录相关联的确认时段尚未过去,则所述节点组不包括已经将权益证明令牌转移到所述确定类型的地址的节点。
5.根据权利要求4所述的计算机实现的方法,其中,所述确认时段是预定数量的区块,所述预定数量的区块与所述工作量证明区块链相关联。
6.根据前述权利要求中的任一项所述的计算机实现的方法,其中,所述区块生成新令牌,并且所述区块将所述新令牌的控制权转移给添加了记录的节点,所述记录记录了所述令牌转移给所述工作量证明区块链。
7.根据前述权利要求中的任一项所述的计算机实现的方法,其中,所述区块生成新令牌并且将所述新令牌的控制权转移给所述已识别节点。
8.根据前述权利要求中的任一项所述的计算机实现的方法,还包括识别由节点发出的提款请求,并且不包括从所述节点组中发出所述提款请求的节点。
9.根据权利要求8所述的计算机实现的方法,其中,从与所述工作量证明区块链相关联的交易的元数据中识别所述提款请求。
10.根据权利要求8所述的计算机实现的方法,还包括:在与提款请求相关联的解除绑定时段之后,更新所述权益证明区块链,以将与所述提款请求相关联的权益证明令牌返回给所述发出提款请求的节点。
11.根据权利要求10所述的计算机实现的方法,其中,所述解除绑定时段是预定数量的区块,所述预定数量的区块与所述工作量证明区块链相关联。
12.根据前述权利要求中的任一项所述的计算机实现的方法,还包括:
拒绝由所述已识别节点之外的节点提交的区块。
13.根据前述权利要求中的任一项所述的计算机实现的方法,还包括:
在将所述区块包含在所述权益证明区块链中之前,验证所述区块已由一组验证者节点验证,所述验证者节点组是所述节点组的子集,基于工作量证明区块链来标识所述验证者节点。
14.根据权利要求13所述的计算机实现的方法,其中,所述验证者节点组用来执行拜占庭算法以验证所述区块。
15.根据前述权利要求中的任一项所述的计算机实现的方法,还包括:
通过识别包含最大工作量的二级区块链,以及通过比较识别出的二级区块链的权益证明令牌的分布与在一级区块链中挖掘的区块的分布,将所述一级和二级区块链识别为所述一级和二级区块链的真实副本。
16.一种包括计算机可执行指令的计算机可读存储介质,所述计算机可执行指令在被执行时,会使处理器执行权利要求1至15中任一项所述的方法。
17.一种电子设备,包括:
接口设备;
耦合到所述接口设备的处理器;
耦合到所述处理器的存储器,所述存储器上存储有计算机可执行指令,所述计算机可执行指令在被执行时,会使处理器执行权利要求1至15中任一项的方法。
18.根据权利要求17所述的电子设备,其中,所述存储器存储有二进制区块链,所述二进制区块链包括工作量证明区块链和权益证明区块链。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GBGB1713031.1A GB201713031D0 (en) | 2017-08-14 | 2017-08-14 | Computer-implemented system and method |
GB1713031.1 | 2017-08-14 | ||
PCT/IB2018/055992 WO2019034969A1 (en) | 2017-08-14 | 2018-08-09 | COMPUTER-IMPLEMENTED SYSTEMS AND METHODS RELATING TO A BINARY BLOCK CHAIN COMPRISING A PAIR OF COUPLED BLOCK CHAINS |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111034119A true CN111034119A (zh) | 2020-04-17 |
Family
ID=59895906
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201880052926.1A Pending CN111034119A (zh) | 2017-08-14 | 2018-08-09 | 与包括一对耦合区块链的二进制区块链相关联的计算机实现的系统和方法 |
Country Status (6)
Country | Link |
---|---|
US (2) | US11616649B2 (zh) |
EP (2) | EP4362388A3 (zh) |
JP (2) | JP7319961B2 (zh) |
CN (1) | CN111034119A (zh) |
GB (1) | GB201713031D0 (zh) |
WO (1) | WO2019034969A1 (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10367645B2 (en) * | 2016-10-26 | 2019-07-30 | International Business Machines Corporation | Proof-of-work for smart contracts on a blockchain |
WO2019170861A1 (en) * | 2018-03-08 | 2019-09-12 | Uvue Ltd | Resource management system and method of operation thereof |
EP3942503A4 (en) | 2019-03-22 | 2022-06-22 | Quotient Technology Inc. | MULTI-AXIS BLOCKCHAIN DELETION OF OFFERS |
GB2583770A (en) * | 2019-05-10 | 2020-11-11 | Nchain Holdings Ltd | Methods and devices for registering and authenticating miner identity in a blockchain network |
CN110909342A (zh) * | 2019-11-28 | 2020-03-24 | 北京海益同展信息科技有限公司 | 变更通证的方法、装置及计算机可读存储介质 |
US11343272B2 (en) * | 2020-04-17 | 2022-05-24 | Lenovo (Singapore) Pte. Ltd. | Proof of work based on compressed video |
WO2022035178A1 (en) * | 2020-08-14 | 2022-02-17 | Lg Electronics Inc. | Method and apparatus for reducing orphan blocks for a blockchain |
GB2599735A (en) * | 2020-10-12 | 2022-04-13 | Cambridge Cryptographic Ltd | Blockchain |
GB2620902A (en) * | 2022-03-23 | 2024-01-31 | The Blockhouse Tech Limited | Blockchain data processing |
WO2023238571A1 (ja) * | 2022-06-09 | 2023-12-14 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ | ブロック生成方法、ブロック生成装置、及び、プログラム |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150332283A1 (en) * | 2014-05-13 | 2015-11-19 | Nant Holdings Ip, Llc | Healthcare transaction validation via blockchain proof-of-work, systems and methods |
US20160292672A1 (en) * | 2015-03-31 | 2016-10-06 | Nasdaq, Inc. | Systems and methods of blockchain transaction recordation |
US20160330034A1 (en) * | 2015-05-07 | 2016-11-10 | Blockstream Corporation | Transferring ledger assets between blockchains via pegged sidechains |
CN106445711A (zh) * | 2016-08-28 | 2017-02-22 | 杭州云象网络技术有限公司 | 一种应用于区块链的拜占庭容错共识方法 |
CN106603698A (zh) * | 2016-12-28 | 2017-04-26 | 北京果仁宝科技有限公司 | 基于dpos的区块链共识方法和节点 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9595034B2 (en) | 2013-10-25 | 2017-03-14 | Stellenbosch University | System and method for monitoring third party access to a restricted item |
US10805393B2 (en) | 2015-12-02 | 2020-10-13 | Olea Networks, Inc. | System and method for data management structure using auditable delta records in a distributed environment |
US20170236123A1 (en) | 2016-02-16 | 2017-08-17 | Blockstack Inc. | Decentralized processing of global naming systems |
WO2017162904A1 (en) | 2016-03-23 | 2017-09-28 | Nokia Technologies Oy | Management of cryptographic transactions |
WO2017167550A1 (en) | 2016-03-30 | 2017-10-05 | British Telecommunications Public Limited Company | Blockchain state reliability determination |
GB2549085B (en) | 2016-03-30 | 2020-11-18 | British Telecomm | Blockchain state reliability determination |
US10608825B2 (en) * | 2016-04-21 | 2020-03-31 | Protoblock, Inc. | Decentralized exchanges in a distributed autonomous platform |
CN106453377B (zh) * | 2016-10-28 | 2021-03-02 | 中金云金融(北京)大数据科技股份有限公司 | 基于区块链的分布式网络智能监控系统及方法 |
CN107222482A (zh) | 2017-06-01 | 2017-09-29 | 黑龙江卓亚科技有限公司 | 一种基于复合区块链网络的数据管理系统及方法 |
-
2017
- 2017-08-14 GB GBGB1713031.1A patent/GB201713031D0/en not_active Ceased
-
2018
- 2018-08-09 EP EP24164382.4A patent/EP4362388A3/en active Pending
- 2018-08-09 US US16/638,675 patent/US11616649B2/en active Active
- 2018-08-09 WO PCT/IB2018/055992 patent/WO2019034969A1/en unknown
- 2018-08-09 CN CN201880052926.1A patent/CN111034119A/zh active Pending
- 2018-08-09 EP EP18769481.5A patent/EP3669493B1/en active Active
- 2018-08-09 JP JP2020506822A patent/JP7319961B2/ja active Active
-
2023
- 2023-03-14 US US18/121,545 patent/US20230283473A1/en active Pending
- 2023-04-05 JP JP2023061239A patent/JP2023076628A/ja active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150332283A1 (en) * | 2014-05-13 | 2015-11-19 | Nant Holdings Ip, Llc | Healthcare transaction validation via blockchain proof-of-work, systems and methods |
US20160292672A1 (en) * | 2015-03-31 | 2016-10-06 | Nasdaq, Inc. | Systems and methods of blockchain transaction recordation |
US20160330034A1 (en) * | 2015-05-07 | 2016-11-10 | Blockstream Corporation | Transferring ledger assets between blockchains via pegged sidechains |
CN106445711A (zh) * | 2016-08-28 | 2017-02-22 | 杭州云象网络技术有限公司 | 一种应用于区块链的拜占庭容错共识方法 |
CN106603698A (zh) * | 2016-12-28 | 2017-04-26 | 北京果仁宝科技有限公司 | 基于dpos的区块链共识方法和节点 |
Non-Patent Citations (3)
Title |
---|
ALEXANDER CHEPURNOY: "TwinsCoin: A Cryptocurrency via Proof-of-Work and Proof-of-Stake", TWINSCOIN: A CRYPTOCURRENCY VIA PROOF-OF-WORK AND PROOF-OF-STAKE, 14 March 2017 (2017-03-14), pages 2 * |
JING CHEN: "ALGORAND", ARXIV PAPER, 26 January 2017 (2017-01-26) * |
SUNNY KING: "PPCoin: Peer-to-Peer Crypto-Currency with Proof-of-Stake", PPCOIN: PEER-TO-PEER CRYPTO-CURRENCY WITH PROOF-OF-STAKE, 19 August 2012 (2012-08-19), pages 1 * |
Also Published As
Publication number | Publication date |
---|---|
EP3669493A1 (en) | 2020-06-24 |
US20230283473A1 (en) | 2023-09-07 |
EP4362388A2 (en) | 2024-05-01 |
WO2019034969A1 (en) | 2019-02-21 |
US20210194690A1 (en) | 2021-06-24 |
JP2020530958A (ja) | 2020-10-29 |
EP4362388A3 (en) | 2024-05-08 |
JP7319961B2 (ja) | 2023-08-02 |
EP3669493B1 (en) | 2024-07-17 |
GB201713031D0 (en) | 2017-09-27 |
US11616649B2 (en) | 2023-03-28 |
JP2023076628A (ja) | 2023-06-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3610436B1 (en) | Rapid distributed consensus on blockchain | |
EP3639468B1 (en) | Systems and methods for avoiding or reducing cryptographically stranded resources on a blockchain network | |
CN111034119A (zh) | 与包括一对耦合区块链的二进制区块链相关联的计算机实现的系统和方法 | |
US12074963B2 (en) | Blockchain for general computation | |
US12010138B2 (en) | Secure blockchain-based consensus | |
KR20200028961A (ko) | 블록체인-구현 이벤트-잠금 암호화를 위한 방법 및 시스템 |
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 |