CN114730421A - 使用私有和公共区块链进行交易 - Google Patents
使用私有和公共区块链进行交易 Download PDFInfo
- Publication number
- CN114730421A CN114730421A CN202080077719.9A CN202080077719A CN114730421A CN 114730421 A CN114730421 A CN 114730421A CN 202080077719 A CN202080077719 A CN 202080077719A CN 114730421 A CN114730421 A CN 114730421A
- Authority
- CN
- China
- Prior art keywords
- chain
- asset
- account
- backbone
- blockchain
- 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/02—Payment architectures, schemes or protocols involving a neutral party, e.g. certification authority, notary or trusted third party [TTP]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3829—Payment protocols; Details thereof insuring higher security of transaction involving key management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or 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/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
- G06Q20/0658—Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash e-cash managed locally
-
- 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
-
- 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/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
- H04L9/0825—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
-
- 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
-
- 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
-
- 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
- G06Q2220/00—Business processing using cryptography
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/56—Financial cryptography, e.g. electronic payment or e-cash
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Computer Security & Cryptography (AREA)
- Accounting & Taxation (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Finance (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
- Preparation Of Compounds By Using Micro-Organisms (AREA)
- Medicines That Contain Protein Lipid Enzymes And Other Medicines (AREA)
- Peptides Or Proteins (AREA)
Abstract
除了其它方面,我们描述了一种使得区块链系统的一个或多于一个实体能够执行一系列操作的方法。区块链系统:主链;共链,其中,所述共链在所述主链上具有相应的账户;资产,其由所述主链上的相应账户拥有并且由所述共链上的账户拥有;以及共链账户,其持有所述资产。所述操作包括:在所述共链上公布经认证的交易,所述经认证的交易对所述资产从所述共链账户向所述主链的账户的转移进行授权;判断为在所述共链上公布了所述经认证的交易;以及在所述主链上公布将所述资产分配给所述主链的账户的交易。
Description
相关申请的交叉引用
本申请要求2019年11月8日提交的美国临时申请62/933,091和2020年4月24日提交的美国临时申请63/015,040的权益,其通过引用并入本文。
技术领域
本说明书一般涉及使用私有和公共区块链进行交易。
背景技术
区块链系统因其提供的稳健的安全性、透明性和完整性属性而越来越受欢迎和采用。区块链系统通常以公共或无许可的模型进行操作,其中任何实体可以加入并参与共识。作为结果,进入网络的实体可以看到交易和余额。
发明内容
除了其它方面,本申请描述了一种使得区块链系统的一个或多于一个实体能够执行一系列操作的方法。区块链系统包括:主链;共链,其中,所述共链在所述主链上具有相应的账户;资产,其由所述主链上的相应账户拥有并且由所述共链上的账户拥有;以及共链账户,其持有所述资产。所述操作包括:在所述共链上公布经认证的交易,所述经认证的交易对所述资产从所述共链账户向所述主链的账户的转移进行授权;判断为在所述共链上公布了所述经认证的交易;以及在所述主链上公布将所述资产分配给所述主链的所述账户的交易。
与传统方法相比,这些实现的益处和优点包括使用需要许可的私有区块链的支付协议的改进的安全性、可扩展性和分散化。与其它技术相比,在更短的时间内产生跨链支付区块,并且区块的交易立即完成。其它益处和优点包括各私有区块链的成员的改进的隐私性和机密性。各私有区块链可以遵守监管制度,以确保诚实交易。与使用较慢、特设和更脆弱的机制的传统方法相比,本文公开的实施实现了更快、更安全和更有效的机制。
附图说明
图1示出使用多个需要许可的私有区块链的支付网络的示例框图。
图2示出根据一个或多于一个实现的使用多个需要许可的私有区块链的支付网络的示例用例。
图3示出使用共链的示例处理。
图4示出使用共链来转移资产的示例处理。
图5示出根据一个或多于一个实现的用以实现使用多个需要许可的私有区块链的支付网络的示例机制。
具体实施方式
本说明书描述了公共区块链和私有区块链的使用技术以及它们之间的互操作性。可通信地耦合到公共区块链并且可与公共区块链互操作的私有区块链称为“共链”。可以创建共链,该共链的访问权限局限于有限数量的实体(我们有时称为“需要许可”的特性),并且对于被授予访问权限的实体是私有的(例如,未被授予访问权限的实体不能观察共链上的活动和/或参与共链上的交易)。例如,机构或个人可以实例化私有共链,以保护交易和个人余额的隐私。此外,共链可以扩展以满足其利益相关者的高速和监管要求。这种共链可以使用Algorand共识协议进行交易。因此,可以实现公共Algorand区块链的私有对应物。
尽管私有共链是需要许可的,但验证端被用于向主链登记私有共链交易。例如,一旦在私有共链上创建了交易,就将与该交易相关联的验证请求发送到私有共链的验证部装置。验证端生成与交易相关联的承诺作为交易的验证。承诺可用于校验在私有共链上发生的交易是有效的(例如,用于确认正在交换资产的实体实际上拥有该资产)。承诺可以是“零知识”的,并且不需要揭示关于私有共链上的加密资产交易或个体块的任何信息。此外,可以将承诺添加到私有共链和主链两者。
共链用于进行加密资产交易,诸如转移一定数量的加密货币、进行加密资产转移或使用同质化代币的交易。机构可以在公共区块链上发布将特定资产分配给私有共链的交易。将经由公共区块链记录和更新私有共链与其完整资产列表之间的映射。与使用较慢、特设和更脆弱的机制的传统方法相比,这里描述的方法实现了更快、更安全和更有效的机制。
使用私有区块链的示例场景
作为使用的共链的示例,共链C与主链上的账户A相关联。为了该示例的目的,“主链”是公共区块链,而“共链”是私有区块链(例如,交易仅对一组特定实体可见、并且仅接受由该组特定实体进行的交易的区块链)。“账户”(有时指地址)是通过值和资产之间的数学关联持有加密资产的值。账户有时由公钥表示,使得公钥的拥有者(例如,相应私钥的拥有者)可以访问账户所持有的资产。换句话说,公钥的拥有者持有与公钥相对应的账户。持有或“拥有”区块链的账户的实体有时称为区块链的成员。
主链包括指示主链上的账户A拥有一组资产的记录。这些资产由共链C上的一个或多于一个账户拥有。主链的成员不能访问关于共链C上的哪些账户X拥有账户A的特定资产的信息。在一些示例中,主链不需要保留账户A与特定共链C相关联的信息。在这些示例中,主链的成员甚至可能不知道账户A对应于共链C。
当共链账户X希望将资产B转移到主链上的公钥PK(例如,目的地公钥)时,账户X例如通过计算数字签名SIGx(B,PK,MAIN)并将该签名作为交易T的一部分公布在共链C的块上来验证其意图。这种公布成功,因为账户X确实拥有共链C中的资产B(例如,除非交易T有效,否则该块将不会被添加到共链C)。共链C的验证端向账户A认证,在主链上,账户A应该将资产B转移到PK。例如,它们可以向账户A递送(例如,使账户A接收)“SIGc(B,PK)”。这里的“SIGc(B,PK)”是指共链C的验证端的一组数字签名,该组数字签名对应于共链C的验证部的多数投票股份(voting stake)。例如,在共链C的各验证端具有与共链C的任何其它验证部相同的投票权、并且共链C中有100个验证部的情况下,则SIGc(B,PK)对应于(B,PK)的80个验证部的数字签名。
作为另一示例,共链C的验证部可以使用门限签名方案。在这种方案中,公共(校验)密钥PK可以不具有单个实体已知的相应秘密(签名)密钥SK。相反,各验证部i只知道SK的份额SKi。使用SKi,验证部i可以计算验证部自己的“部分签名”(B,PK)。然而,给定足够多的这种部分签名(例如,100个中的66个),可以计算完整签名SIG(B,PK),这是相对于PK的普通签名,因此可以在仅知道PK的情况下容易地校验。在这种情况下,可以设置SIGc(B,PK)=SIG(B,PK)。这种方法的优点是(B,PK)是通过单个签名而不是多个签名进行认证的,但是保证足够多的校验器必须协作进行其计算,因此足够多的校验器保证将资产B转移到主链上的PK。
在一些示例中,主链上的与共链C相对应的账户A也可以是共链C的账户。作为另一示例,账户A被授权监视共链C。在这些示例中,共链C的验证部不需要向账户A发送单独的SIGc(B,PK)。例如,账户A可以在其看到共链C上的账户X公布了授权将资产B转移到主链上的密钥PK的适当交易时就在主链上公布将B分配给PK的交易。
为了避免账户A可能在没有共链C的授权的情况下分配属于共链C的账户的资产(至一个或多于一个公钥PK),本申请确保主链中账户A的公钥PKa(例如,账户A用于授权将资产B转移到主链上的PK的公钥)是门限签名方案的公钥,并且账户A(或与区块链系统相关联的任何其它实体)不知道相应的秘密密钥(secret key)。相反,共链C的各校验器拥有SK的份额,并且它们可以用于计算账户A用来授权将资产B转移到主链上的PK的数字签名。也就是说,假设该签名是SIG(B,PK),则各校验器产生其自身的部分签名,并且由账户A从这种部分签名组装完整签名,或者首先(例如,通过与区块链相关联的任何实体)组装完整签名,然后将完整签名提供给账户A。这样,只有c的校验器可以计算授权将资产B转移到主链上的PK的签名,并且仅响应于在共链C中适当地公布资产B才会这样做。
下面针对图4进一步描述本实施例中所描述的技术。
共链的示例实现
图1示出使用多个共链120、140的支付网络的示例框图。支付网络包括共链120、140、公共区块链104和网络116。网络116可以包括因特网或本地网络的部分。在其它实现中,支付网络可以包括附加或更少的组件,并且这些组件可以以不同的方式连接。
共链120、140可用于进行加密资产交易,诸如转移一定数量的加密货币、进行加密资产转移或使用同质化代币的交易。(例如,公共区块链104的)机构或管理者和共链120就属于共链120的一组资产达成一致。例如,机构可以在公共区块链104上发布将特定资产分配给共链120的交易。将经由公共区块链104记录和更新共链120与其完整资产列表之间的映射。例如,属于共链120上的账户的资产可以被分配给公共区块链104上的特定账户,使得从公共区块链104的成员的角度来看,该账户持有属于共链120上的账户的所有资产。
加密资产交易将特定数量的加密资产从一个加密资产账户转移到另一加密资产账户。加密资产可以指加密货币(例如,Algo),其被设计为用作交换介质,该交换介质使用加密来保护金融交易、控制附加单元的创建或校验加密资产的转移。加密资产还可以指资产的安全记录,诸如通过区块链管理的汽车所有权或抵押。
加密资产账户使持有该账户的实体能够存储加密资产和/或管理加密货币的余额。各加密资产账户都有账户标识符,它是唯一的标识符。加密资产账户示出加密资产的当前余额并显示实体的交易。实体可以向具有另一加密资产账户的另一当事方发送请求以获得特定数量的加密资产。
本文的实现涉及用于将加密资产从私有区块链(例如,共链120)转移到公共区块链104的方法和机制。与使用较慢、特设和更脆弱的机制的传统方法相比,本文公开的实施实现了更快、更安全和更有效的机制。这些实现可以用于实现资产控制和转移系统,例如,用于与汽车所有权相关的融资或与房地产相关的抵押。多链加密交易可以解决许多场景,并减少对更复杂和计算昂贵的智能合同的需求。可以实现资产交换,其中交易包括以一定数量的一种资产交换另一资产。可以实现非同质化代币(NFT)交换,其中以NFT交换一定数量的同质化代币(例如,Algo)。
可以创建具有受限访问(需要许可)并且私有的共链(例如共链120、140)。在一些示例中,共链使用Algorand共识协议。尽管共链是需要许可的,但本文公开的实现试图使用尽可能多的验证部152以提高安全性。因此,可以创建可在层1上进行原子交换的公共Algorand区块链104的私有版本。层1是指底层主区块链架构。使用该架构,共链可以容易地与公共区块链(例如,公共区块链104)通信,并且用作到公共区块链的桥。因此,资产可被转移到公共区块链。例如,实体可能希望出售资产。如果实体拍卖资产,则拍卖可以在公共区块链上进行,出价人比在共链上更多。
在一些实现中,资产从共链120上的实体的账户转移到公共区块链104中的实体的公钥144。由于公共区块链104是无需许可的,因此公共区块链104例如在生成公钥144时接受公钥144。公共区块链104记录公钥144已经获得资产。例如,可以使用共链的单个区块124将一组资产从共链120转移到公共区块链104。在转移之前,使用散列来构造区块124。转移实体对区块124的散列进行签名。
在一些实现中,从共链120向公共区块链104的转移被散列化。从共链120向共链120的转移也被散列化。两个散列都出现在区块124中。两个散列都经证明可揭示共链120向公共区块链104的转移,而不揭示共链120向共链120的转移。进行检查以判断是否将散列转移到作为区块124的一部分的资产的数量。
将向可以访问公共区块链104的第一实体通知共链120向公共区块链104的转移。当第二实体声称它是共链120的验证部152时,第一实体使用匹配技术判断证书是否确实由第二实体签名。验证部152可以被加权,例如,可信验证部被分配更高的权重。如果权重之和足够,则第一实体判断为区块124是有效的。资产转移者密钥和接受转移者密钥144被记录在区块148中。
进行资产转移的附加方法是将资产转移到公共区块链104中的密钥(例如,密钥144)。然后,第一实体进行指示公共区块链104中的密钥144和资产结合的记录。公共区块链104知道验证部152的身份。每次验证部152被改变(例如,权重被加上或减去,或者验证部152被重新加权),先前的一组法定人数的验证部152指定或签署新的一组验证部152。在一些实现中,公共区块链104被配置为容忍验证部信息的小变化。可以保留区块124、148的一部分以包括新验证部152。例如,当区块124包括从共链120向共链140的加密资产转移时,区块124包括用于验证部改变的字段。公共区块链104的第一节点能够观察共链120的功能。因此,第一节点知道共链120上的转移。公共区块链104的第二节点能够观察共链140的功能。
在一些实现中,使用发言人156来促进转移。例如,在图1所示的区块链系统中可以存在100个验证部。交易将至少需要60个验证部才能签署区块148。在这种实现中,可以使用发言人156。发言人156的单一签名足以用于验证。然而,发言人156可能代表单个的故障点。例如,如果发言人156对与共链120的转移有关的信息进行签名并且发言人156是恶意的或受损害的,则将有20个区块反对。验证部152可以阻止验证,并且转移被呈现为无效。可以使用一个或多个发言人。只有验证部152才能够向公共区块链104通知发言人156已经改变。
在一些实现中,公共区块链104的管理实体不由特设密钥144代表,而是由具有追索权(例如,审计权或惩罚权)的已知实体代表。可以将附加注释字段添加到区块148,该区块148包含用于资产的后续处理(例如,进行拍卖)的指令。注释字段可被加密。注释字段可以指示向共链120的管理者或向另一密钥的转移。注释字段可以指示处置资产的指令。在一些实现中,治愈的时间为零,即,发言人156是可信的。因此,使用无需许可的区块链和需要许可的区块链这两者。
在一些实现中,与共链120相关联的验证部152接收与加密资产交易相关联的验证请求。验证请求提示各验证部152验证加密资产交易。至少一个发言人156被识别为代表验证部152证明数据。发言人156在可通信地耦合到共链120的公共区块链104上公布数据。验证部152判断数据是否有效。响应于该判断,验证部152将对数据的质疑公布到公共区块链104。在一些实现中,在已将阈值数量的新区块(例如,20个区块)添加到公共区块链104之前,将质疑公布到公共区块链104。在一些实现中,数据与承诺128关联。
可以向各验证部152分配指示验证部152被信任的程度的权重。响应于验证部152的权重之和超过阈值权重,进行判断为数据是有效的。在一些实现中,公共区块链104接收指示各验证部的身份的消息、分配给各验证部的权重以及验证部152的权重之和超过阈值权重的判断。公共区块链104在公共区块链104的新区块148中记录加密资产交易的加密资产转移者的第一密钥144以及加密资产交易的加密资产接受转移者的第二密钥。
在一些实现中,公共区块链104接收指示加密资产向加密资产接受转移者的期望转移的消息。公共区块链104记录加密资产向加密资产接受转移者的转移。在一些实现中,与加密资产交易相关联的治愈时间小于阈值治愈时间,从而指示至少一个发言人156是可信的。加密资产交易可以将加密资产从共链120转移到公共区块链104。加密资产交易可以将加密资产从公共区块链104转移到共链120。加密资产交易可以将加密资产从共链120转移到第二共链140。加密资产交易由公共区块链104促进。使用消息传递架构,使得私有共链120、140可以比公共区块链104甚至更分散。
共链120可由大型银行或民族国家拥有或管理。共链120可以使用公共区块链104作为其自身的安全机制。例如,共链120的参与者可以对公共区块链104给予高度信任。因此,共链120可以对整个区块124进行散列化并将其放置在公共区块链104上。如果每100个区块,对共链120上的区块进行散列化,则可以从该区块重新开始计算。在这种情况下,不仅对交易进行散列化,而且对在给定点拥有资产的各实体的整个余额进行散列。
在一些实现中,当共链120创建新资产时,共链120可以在公共区块链104上创建资产,然后将其转移回共链120。这是因为当共链120的参与者后来希望出售资产时,公共区块链104具有共链120上的资产的拥有权的记录。如果共链120受到损害,则公共区块链104上创建的资产与在共链120上首次创建资产的情况下相比更难在共链120上进行双重出售(双重支出)。例如,公共区块链104可以进行某些检查。公共区块链104可以检查发言人156,并且还检查该资产仍然由共链120拥有。
由公共区块链促进的两个私有共链之间的加密资产转移
在一些实现中,用户装置使第一私有区块链120上的加密资产交易实例化以将第一数量的第一加密资产从第一加密资产账户124转移到与第二私有区块链140相关联的第二加密资产账户136。用户装置可以是如参考图5更详细示出和描述地实现的手机、计算机或平板电脑。验证部装置152验证第一加密资产交易以生成与第一一次性密钥144相关联的第一承诺128。与第一私有区块链120相关联的第一计算机装置将第一承诺128公布在公共区块链104上。第一计算机装置可以是如参考图5更详细示出和描述地实现的台式计算机、膝上型计算机或服务器。与公共区块链104相关联的第二计算机装置将第一数量的第一加密资产分配给公共区块链104上的第一一次性密钥144。第二计算机装置可以是如参考图5更详细示出和描述地实现的台式计算机、膝上型计算机或服务器。第二计算机装置在第一数量的第一加密资产和第二数量的第二加密资产之间进行原子交换。将第二数量的第二加密资产分配给与第二承诺132相关联的第二一次性密钥。第二承诺132将第二数量的第二加密资产从第二加密资产账户136转移到第一加密资产账户124。
在一些实现中,除了一次性密钥之外的密钥被分配了第一加密资产。例如,密钥可以是第一私有区块链120用于将加密资产全部转移到公共区块链104的密钥。
在一些实现中,与需要许可的共链120上的第一加密资产账户124相关联的第一用户装置使加密资产交易实例化。与共链120相关联的第一计算机装置(诸如管理者装置)使用椭圆曲线密码学生成私钥。私钥用于由第一用户装置对加密资产交易进行签名。加密资产交易用于将第一数量的第一加密资产从(共链120上的)第一加密资产账户124转移到(共链140上的)第二加密资产账户136。第一加密资产可以包括汽车所有权、抵押、债券或股票等。公共区块链104和共链120之间的转移是通过(a)从共链120中取出第一加密资产并随后(b)将其存入公共区块链104来完成的。第二加密资产账户136与共链140相关联。交易对于共链120是私有的。除非由共链120的管理者公布,否则这种交易和共链120的区块124不传播到公共区块链104。
在一些实现中,第一用户装置生成使第一加密资产账户124的身份匿名的第一一次性密钥144。在其它实现中,用户装置可以将加密资产转移到对匿名性的依赖较小的长期密钥。共链120的一组验证部装置152接收与加密资产交易相关联的验证请求。验证部装置152与共链120相关联。(共链120的)
第一计算机装置可以在公共区块链104上登记验证部装置152。各验证部装置具有用于验证加密资产交易的不同公钥。因此,共链120、140在公共区块链104上登记一组验证部的公钥。私有共链管理者可以发布交易“创建私有链”,该交易“创建私有链”包括必须对各区块124签名的一组验证部152。
在一些实现中,验证请求提示各验证部152验证加密资产交易。公共区块链104跟踪被授权为各共链120、140的验证部152的一组公钥。验证部152验证加密资产交易以生成与第一一次性密钥144相关联的承诺128。验证部152可以是手机、计算机或平板电脑等。因此,各共链120可以对交易的各区块124执行独立的共识。与共链120相关联的第一计算机装置在公共区块链104上公布承诺128。以这种方式,共链120可以履行监管义务。为了在公共区块链104上公布承诺128,第一计算机装置使用基于属性的加密来加密与加密资产交易相关联的辅助信息。例如,余额表中的各条目用Ei表示。私人共链验证部152对条目E1,…,EN的集合产生承诺Chain_1_Commit_Round_R。在该轮结束时,共链验证部152产生授权承诺Chain_1_Commit_Round_R的证书Chain_1_Cert_Round_R。
可以在不同实现中创建自验证交易。在一些实现中,使对记录的承诺128实例化,并进行自验证交易。例如,私有共链验证部152可以产生两个承诺。一个承诺对应于取出请求,并且第二个承诺对应于共链120内的其它余额。在其它实现中,验证部152可以揭示各取出请求,而无需生成额外的证据。在另一些实现中,自验证交易包括在区块124的非私有区域上公布的交易。这种交易可以是区块报头的一部分,其可以包括前一区块的散列、区块号、一组非私有交易以及对一组私有交易的承诺128。因此,共链120的经证明的区块报头使得将资产从共链120转移到需要许可链140的交易能够验证其自身。
在一些实现中,(与共链120的第一加密资产账户124相关联的)第一用户装置对加密资产交易的证据112进行认证。证据112与承诺128相关联。第一用户装置将经认证的证据112公布在公共区块链104上。因此,证书和承诺128被公布在公共区块链104上。承诺128被设计为“零知识”,并且不揭示关于区块链104上的各条目E1,...,EN的任何信息。
第二计算机装置(诸如公共区块链104的管理者装置)与公共区块链104相关联。第二计算机装置将第一数量的第一加密资产分配给公共区块链104上的第一一次性密钥144。区块链104可以将分配存储在余额表条目中。对于每一轮,共链120的验证部152就资产的余额表达成一致。由共链120产生的各区块124因此包括对余额表条目的承诺128。第二计算机装置从与共链120相关联的余额表中移除第一数量的第一加密资产。区块链104的第二计算机装置还从公共区块链104的与共链140相关联的另一余额表中移除第二数量的第二加密资产。在一些实现中,第二计算机装置将第二数量的第二加密资产分配给公共区块链104上的第二一次性密钥。第二一次性密钥使共链140上的第二加密资产账户136的身份匿名化。在其它实现中,第二用户装置可以将第二加密资产转移到对匿名性的依赖较少的第二长期密钥。
第二计算机装置在第一数量的第一加密资产和第二数量的第二加密资产之间进行原子交换。第一数量的第一加密资产和第二数量的第二加密资产之间的交换是原子的,这意味着交换与可以同时发生的其它交易隔离。因此交换是不可分割的,使得交换是在其间不出现任何其它交易的情况下进行的。第二一次性密钥与承诺132相关联。承诺132将第二数量的第二加密资产从第二加密资产账户136转移到第一加密资产账户124。承诺132来自共链140中的区块。两个诚实的私有共链120、140因此可以经由公共区块链104交换加密资产。公共区块链104将相应地更新共链余额。
在一些实现中,(区块链104的)第二计算机装置将原子交换的记录存储在公共区块链104的分布式交易分类账中。记录引用私有共链120、140。因此,属于两个单独的私有共享链120、140的两个用户U1和U2可以交换在相应的私有共享链120、140上的记录E1和E2中捕获的资产。在一些实现中,公共区块链104包括货币交换。第一加密资产可以是第一货币,并且第二加密资产可以是第二货币。
在一些实现中,公共区块链104包括非同质化代币(NFT)交换。第一加密资产是NFT,并且第二加密资产是一组同质化代币。支付网络因此可以生成并交易与特定加密货币相关联的同质化加密货币代币。如果代币的单位中的任何两个单位是可互换的,则该代币是同质化的。同质化代币的示例是当任何两个单位具有相同的购买力时。在一些实现中,公共区块链104包括NFT交换,其中第一加密资产是第一NFT,并且第二加密资产是第二NFT。例如,第二计算机装置可以在区块链104上生成NFT。NFT使第一加密资产代币化。在一些实现中,政府或机构希望使资产代币化。机构可以使用标准代币创建API调用在区块链104上创建新代币。然后,该机构可以保留为资产管理者。
(区块链104的)第二计算机装置利用第二数量的第二加密资产更新公共区块链104的余额表。余额表与共链120相关联。公共区块链104维护各共链120、140的资产的“余额”,使得私有共链120、140可以与其它共链交易。(与第一加密资产账户124相关联的)第一用户装置发起另一个加密资产交易,以将第二数量的第二加密资产从公共区块链104转移到共链120。在一些实例中,私有共链管理者可以与在公共区块链104上创建资产的机构相同。因此,已经交换了加密资产。
在一些实现中,用户装置生成使共链120的第一加密资产账户124的身份匿名化的第一一次性密钥144。因此,私有共链允许用户在封闭的网络环境中私下交易。在共链120中传播的交易对整个世界不可见。用户装置使共链120上的加密资产交易实例化以将一定数量加密资产从共链120的第一加密资产账户124转移到第二加密资产账户136。计算机装置(共链120的管理者)可以使用椭圆曲线密码学生成私钥,该私钥用于由用户装置对加密资产交易进行签名。第二加密资产账户136的身份被第二一次性密钥匿名化。计算机装置(共链120的管理者)在公共区块链104上登记一组验证部152。各验证部152具有用于验证加密资产交易的不同公钥。对于这样的每轮R,共链120的验证部152就资产的余额表达成一致。由共链120产生的各区块124包括余额表条目的承诺。
与共链120相关联的验证部152接收与加密资产交易相关联的验证请求。验证请求提示各验证部152验证加密资产交易。各共链120、140可以对交易的各区块执行独立的共识。验证部152验证第一加密资产交易以生成与第一一次性密钥144和第二一次性密钥相关联的承诺128。用户装置对加密资产交易的证据112进行认证。证据112与第一承诺128相关联。用户装置将经认证的证据112公布在公共区块链104上。因此,共链120可以履行监管义务。与共链120相关联的计算机装置(管理者)将加密资产交易添加到共链120的区块124。区块124引用承诺128。因此,交易和私有共链120的区块124不传播到公共区块链104。
响应于将加密资产交易添加到区块124,计算机装置在可通信地耦合到共链120的公共区块链104上公布承诺128。计算机装置使用基于属性的加密对与加密资产交易相关联的辅助信息进行加密。共链管理者可以使用标准网络协议和访问控制策略来管理单个交易和共链资产的可见性。此外,管理者可以满足其客户所要求的监管义务和速度要求。证书112和承诺128公布在区块链104上。计算机装置进行一定数量的加密资产从共链120双的第一加密资产账户124向第二加密资产账户136的原子交换。公共区块链104将加密资产交易的记录108存储在公共区块链104的分布式交易分类账中。记录108引用承诺128。
在一些实现中,用户装置生成使私有区块链120的第一加密资产账户124的身份匿名化的第一一次性密钥144。用户装置与第一加密资产账户124相关联。用户装置使私有区块链120上的加密资产交易实例化以将一定数量的加密资产从第一加密资产账户124转移到私有区块链140的第二加密资产账户136,第二加密资产账户136的身份由第二一次性密钥匿名化。与私有区块链120相关联的验证部装置152接收与加密资产交易相关联的验证请求。验证请求提示各验证部装置152验证加密资产交易。验证部装置152验证加密资产交易以生成与第一一次性密钥144和第二一次性密钥相关联的承诺128。与私有区块链120相关联的计算机装置将加密资产交易公布到私有区块链120的区块。计算机装置可以是如参考图5更详细示出和描述地实现的台式计算机、膝上型计算机或服务器。区块引用承诺128。响应于将加密资产交易公布到块,计算机装置在可通信地耦合到私有区块链120的公共区块链104上公布承诺128。
私有共链和公共区块链之间的转移
在一些实现中,用户装置使私有区块链120上的加密资产交易实例化以将一定数量的加密资产从私有区块链120上的第一加密资产账户124转移到公共区块链104上的第二加密资产账户。验证部装置152验证加密资产交易以生成与一次性密钥144相关联的承诺128。与私有区块链120相关联的第一计算机装置将承诺128公布在公共区块链104上。与公共区块链104相关联的第二计算机装置将一定数量的加密资产分配给公共区块链104上的一次性密钥144。第二计算机装置在一次性密钥144和第二加密资产账户之间进行一定数量的加密资产的原子交换,使得一定数量的加密资产被分配给公共区块链104上的第二加密资产账户。
在一些实现中,用户装置使公共区块链104上的加密资产交易实例化以将一定数量的加密资产从公共区块链的第一加密资产账户转移到私有区块链120上的第二加密资产账户。验证部装置152验证加密资产交易以生成与一次性密钥144相关联的承诺128。与公共区块链104相关联的计算机装置在公共区块链104上公布承诺128。计算机装置将一次性密钥144与第二加密资产账户相关联。计算机装置将一定数量的加密资产分配给一次性密钥144。计算机装置将一定数量的加密资产转移到私有区块链120。
在一些实现中,与共链120相关联的第一计算机装置在公共区块链104上生成一定数量的加密资产。将一定数量的加密资产分配给一次性密钥144,该一次性密钥144使可通信地耦合到公共区块链104的私有区块链120的加密资产账户124匿名化。第一计算机装置使加密资产交易实例化以使用一次性密钥144将一定数量的加密资产从公共区块链104转移到私有区块链120的加密资产账户124。多个验证部152中的至少一个发言人156验证加密资产交易。与公共区块链104相关联的第二计算机装置进行与加密资产交易相关联的至少一个检查。第一计算机装置使用一次性密钥144将一定数量的加密资产从公共区块链104转移到私有区块链120的加密资产账户124。
在一些实现中,除了一次性密钥之外的密钥被分配了第一加密资产。例如,密钥可以是第一私有区块链120用于将加密资产全部转移到公共区块链104的密钥。
证明数据的发言人的识别
在一些实现中,与私有区块链120相关联的验证部152接收与加密资产交易相关联的验证请求。验证请求提示各验证部152验证加密资产交易。至少一个发言人156被识别为代表验证部152证明数据。该至少一个发言人156在可通信地耦合到私有区块链120的公共区块链104上公布数据。验证部152判断数据是否有效。响应于该判断,验证部152将对数据的质疑公布到公共区块链104。当发言人对质疑作出响应时,就可以对其进行校验。
在一些实现中,与私有区块链120相关联的发言人156识别来自私有区块链120的一个或多于一个区块的数据。发言人156判断为数据已经由与私有区块链120相关联的一个或多于一个验证部152验证。发言人156生成数据的数字签名。作为响应,数据和数字签名被公布到与私有区块链120相关联的公共区块链104。
私有区块链和公共区块链
图2示出根据一个或多于一个实现的使用多个需要许可的私有共链264、268的支付网络的示例用例。私有区块链和公共区块链起互补作用。在私有(例如,需要许可的)共链264中,子社区内的当事方可以在彼此之间进行交易,而其身份和交互不会对外部当事方可见。在公共(例如,无需许可)区块链200中,所有当事方可以观察所有交易。例如,银行204和208可以在它们自己的私有共链264、268上进行内部交易,以提高速度,向竞争对手隐瞒其活动,并简化法规遵从性。
据说,银行264的当事方212希望与银行268的当事方236交易资产216。由于任一当事方都不想将其私有共享链暴露给另一当事方,因此当事方212、236将要交易的资产216、240从它们自己的私有共享链264、268移动到共同的公共区块链200,在区块链200上执行贸易,然后将它们新获获取的资产240、216返回到它们各自的私有共享链264、268。实体212、220、228指私有共链264上的用户或账户。实体216、234、232是资产。当银行204创建私有交易244时,它通过使账户212的身份匿名化来将承诺252公布在公共区块链200上。公共区块链创建区块248以表示交易244。类似地,生成区块256、260。
通过在私有区块链和公共区块链之间移动资产来执行贸易为204、208之间的交易结算提供了一种快速且安全的方式。此外,这种贸易不会损害当事方的隐私,因为任一当事方都不需要了解另一当事方的确切身份。在传统的金融系统中,银行维护私有分类账,并且偶尔(在一小时、一天或一周结束时)在其间进行结算。然而,传统的结算层缓慢且昂贵。例如,在银行分类帐之间结算交易需要多达3天。基于所公开的实现的全球跨链支付网络允许用户几乎即时且以低成本在私有分类账之间进行交易。所公开的实现允许不同私有共链264、268处的当事方212、236以有效的方式交换资产216、240而不损害隐私性或安全性。具体地,私有共链264、268的集合使用共同的公共区块链200作为交换的“中立性基础”。
可通信耦合的共链
在一些实现中,共链执行拜占庭容错(BFT)共识的变型。BFT协议即使在通信异步的情况下也提供安全性,并且它们在通信在足够长的时间段内变得同步的情况下确保活跃度。在BFT协议中,一组验证部152(Vset)批准交易的每个区块。参考图1更详细地示出和描述验证部152。验证部152通过其在集合VSET中的公钥来识别。在一些实现中,使用非同质化资产(例如,汽车的所有权、礼品卡标识符等)。在其它实现中,架构支持同质化资产。
根据所公开的实现的共链具有以下属性。第一,共链(例如,共链120)产生对共链资产的承诺128。参考图1更详细地示出和描述共链120和承诺128。共链120在每个区块124处产生共链120的整个余额表(所有资产及其拥有者的映射)的加密承诺128(Cr)。该承诺128支持成员资格和非成员资格的有效证据。第二,生成区块证书。对于每轮r,验证部152确认交易的各区块Br并产生相应的轮证书Certr和轮承诺Cr。实体可以在给定具有关联证书(Cr-1,Certr-1)的先前区块承诺和网络中的参与者公知的校验算法(VerifyBlock)的情况下校验元组(Cr,Certr)。例如,校验算法可以仅指定必须批准状态转变的验证部152的阈值T(法定人数)。
第三,一旦创建轮证书,区块中的交易被视为最终交易,并且不能被撤销或更改。此外,在任何时间点,只有单一有效证书Certr,证明任一轮r的单一承诺Cr。
因此,私有共链是指需要许可的共链,其中由公钥识别的一组选定验证部152(Vset)批准交易的每个区块。该组验证部152可以改变,只要当前的一组验证部152批准改变即可。类似地,任何想要加入私有共链的人都需要得到当前验证部152的批准。对一组验证部152或参与者的所有成员资格变更都被记录为区块链上的特殊交易。私有共链可以在交易和余额上部署各种网络级可见性规则。例如,可以配置共链,使得只有验证部152可以查看交易和余额、或参与者的身份。公共区块链允许任何人未经批准地加入网络。所有交易和用户余额对任何加入网络的人都是可见的。受制于共识规则,任何参与者都可以成为网络中的验证部152。
加密承诺
在公开的实现中使用的承诺方案具有以下属性。第一,Commit(E1,EN)=C。承诺算法将记录的集合作为输入(例如,各记录是公钥和资产之间的映射)。它输出对整个集合的简短承诺(例如,32个字节)。第二,Open(E1,...,EN,C,i)=Pi。打开算法将具有相应承诺和索引i≤N的记录的集合作为输入。其针对记录Ei输出简洁的证据Pi。第三,Verify(C,Ei,Pi,i)=1。校验算法将承诺和具有相应证据的记录作为输入。当且仅当Ei确实在位置i处被承诺时,校验算法输出1。第四,UpdateCommit(C,Pi,Ei,E′i,i)=C′。更新承诺函数将承诺、具有证据的记录和修改后的记录作为输入。它输出新承诺C′,该新承诺C′将位置i中的记录Ei替换为E′i。
承诺方案满足位置约束和隐藏属性。位置约束是指没有对手可以为相同位置i的记录Ei、E′i产生有效承诺C和两个有效证据的功能。隐藏属性是指给定承诺C和具有相应证据{Ei,Pi,i}的任意打开次数的情况下、不揭示关于剩余未打开记录的信息。
对自验证交易的承诺
在一些实现中,自验证交易是从基于账户的共链中的有效加密承诺构造的。假设对于各区块r,共链验证部152产生(Br,Certr,Cr),其中Cr是对指定拥有各资产的实体的余额的加密承诺。假设验证部152仅在轮r完成后存储Cr。希望实例化影响余额表中的记录Ei的交易T的用户可以运行(或向某人委托)Open(E1,...,EN,Cr,i)=Pi。用户将(T,Ei,Pi,i)传播至网络。然后,针对区块r保持Cr的任何验证部152可以使用以下五个步骤验证T。第二,检查Verify(Cr,Ei,Pi,i)=1。第二,根据交易逻辑检查T是有效的。例如,检查应包括在Ei中指定的PK下对交易进行签名,并且该交易指定新的公钥PK*。
第三,所有验证部152更新Ei-->E′i以反映资产拥有权转移,如T中所指定。第四,验证部152更新承诺UpdateCommit(Cr,Pi,Ei,E′i,i)=Cr+1以反映余额表中的变化。第五,验证部152经由共识协议就更新后的承诺Cr+1达成一致。
在该模型中,验证部152不需要存储所有余额条目。作为替代,他们只参与共识,并且就反映区块Br+1中所接受的所有交易的新承诺Cr+1达成一致。这样能够以较少的资源更有效地验证交易。例如,一个不受信任的归档服务可以在所有用户查询以生成拥有权证据的网络中操作。这类服务在安全性方面不受信任,因为通过加密承诺的安全性属性,它只能为包括在承诺中的记录生成证据。
当事方、资产和转移
在一些实现中,区块链104是可公开读取的、防篡改的分布式分类账(或数据库),其跟踪各当事方之间的资产的拥有权。参考图1更详细地示出和描述公共区块链104。资产可以是同质化的(诸如一笔钱)或非同质化的(诸如剧院票)。当事方是指一个人,一个组织,甚至一个合同。各共链120、140管理其自己的分类账,强制执行其自己的验证规则,并实现其自己的共识机制。参考图1更详细地示出和描述共链120、140。此外,各共链120、140可以建立其自己的策略来管理其自己交易的可见性。例如,策略可以声明交易仅对共链的验证部152可见,或者对任何人可见。
在一些实现中,实现了跟踪资产拥有权的共链120以及将资产拥有权从一当事方转移到另一当事方的交易。在共链120上显式地表示价值转移。存在第一当事方域和第二资产域。各资产由当事方拥有。如果当事方P拥有共链X上的资产a,则谓词OwnsX(P,a)为真。存在表示为“无人”的独特的当事方N。各资产由一个共链(例如,共链120)上的一个当事方所拥有。在一些实现中,各资产“a”由共链X上的当事方P≠N所拥有:OwnsX(P,a),并且由彼此共链Y≠X上的“无人”(N)所拥有:OwnsY(N,a)。
链内转移是指一种状态转变,其中当事方P≠N将资产“a”转移至共链X上的当事方Q。例如,转移可以表示为:
前:OwnsX(P,a)且P≠N (1)
后:OwnsX(Q,a) (2)
前条件(1)规定P必须拥有X上的“a”,并且P必须不为N。后条件(2)规定Q现在拥有X上的“a”(并且隐含地规定P不再拥有“a”)。如果Q为N,则资产“a”在X上不再是可支出的。
跨链转移是指共链X上的当事方P将资产“a”转移至不同共链Y上的当事方Q的状态转变。转移可以表示为:
前:OwnsX(P,a)且P≠N且X≠Y (3)
后:OwnsX(N,a)且OwnsY(Q,a) (4)
前条件(3)规定,P必须拥有X上的“a”,P必须不是N,并且X和Y是不同的共链。后条件(4)规定Q现在拥有Y上的“a”(并且隐含地规定P不再拥有X上的“a”)。P和Q可以是不同的当事方。跨链转移确保资产“a”在共链X上不再是可支出的(因为它由X上的N所拥有),并且如果目标Q≠N,则“a”现在在共链Y上是可支出的。
在一些实现中,私有共链120、140上的交易对于包括公共区块链104在内的其它共链是不可见的。公共区块链104跟踪各共链120、140的资产地“余额”。拥有共链120上的资产的当事方可以将资产从共链120转移到公共区块链104,并且反之亦然。私有共链120、140通过以下方式交换资产:(1)将这些资产转移到公共区块链104,(2)交换公共区块链104上的资产,以及(3)将新获取的资产转回。如果共链120是“诚实的”,则转移到公共区块链104的资产在共链120上不再是可支出的。如果共链120是“不诚实的”,则资产在共链120上可以是双重支出的,但是它不能在公共区块链104上双重支出,并且只要资产存在于公共区块链104上,则其拥有权是公共的。
在一些实现中,各跨链转移在公共区块链104和私有共链(例如,共链120)之间,而不是在私有共链120、140之间。各共链120、140提供其自身的满足前条件(1)和后条件(2)的链内转移协议。常见的跨链转移协议满足前条件(3)和后条件(4)。如果共链X的链内转移协议不满足前条件(1)和后条件(2),则共链X被称为“不诚实”,这意味着不止一个当事方可以拥有X上的相同资产(一种称为双重支出的属性)。
在一些实现中,存在一个公共区块链104(其是诚实的)以及许多私有共链120、140(其中一些可能是不诚实的)。跨链转移协议提供以下不存在跨链双重支出属性:在“a”是资产且X和Y是诚实的共链(公共或私有)的情况下,如果“a”由X上的P和Y上的Q所拥有,则P或Q是N。在一些实现中,除了在从私有共链X到公共区块链Y的转移中明确指定的信息之外,没有向公众揭示关于共链120的信息(即,哪个实体拥有哪个资产)。更正式地讲,这是通过模拟实验捕获的。在现实世界中,对手接收从共链X公布到共链Y的消息(以交易的形式)。
例如,(α,{Q:a})表示对手观察公共区块链Y的真实视图,其中{Q:a}捕获资产“a”向当事方Q的一组全部转移。在模拟世界中,αS由不了解关于共链X的信息的多项式时间模拟器产生。此外,{R:a}S表示一组转移,其中各当事方标识符R是从所有可能标识符集中随机选择的。以下两个分布是计算上不可区别的:(α,{Q:a})~c(αS,{R:a}S)。这提供了以下三个功能。第一,当私有共链X处的P向公共区块链Y处的Q转移“a”时,期望P和Q代表同一个人或属于同一组织。尽管如此,仍不能将两个当事方联系起来:观察公共区块链Y上的交易的某人可以能够告知资产是从X转移的,但无法识别谁拥有X上的该资产。
第二,如果P首先转移“a”、然后转移“a”,则观察者无法将这两个转移联系到相同的前拥有者。第三,从公共共链到私有共链的转移具有类似的约束:如果Q将“a”转移到私有共链Z上的R,则观察者不能识别R,并且如果两个当事方转移“a”、然后将“a”转移到Z处的R,则这两个转移不能被识别为到达相同的接收者。
私有共链实现
在一些实现中,公共区块链104是任何实体可以加入和参与的无需许可网络。任何实体可以从公共区块链104进行写入和读取,必要时可支付交易费用。各共链120、140首先经过“上机”阶段以进行登记。私有共链120、140是需要许可的网络,其具有明确定义的验证部152和区块校验算法。初始化阶段包括诸如资产登记、私有共链登记和初始资产分配等的步骤。这些步骤的顺序可能不同。
如果各共链120、140希望在其间转移资产,则向公共区块链104登记。可以在公共区块链104上发布特殊交易,该公共区块链104包括一组验证部公钥,VSet=(VPK1,VPK2,...,VPKN)。登记交易还包括输入(Certr-1,Cr-1,Certr,Cr)和输出“有效/无效”的算法VerifyBlock的描述。也就是说,给定具有相应证书的轮r-1、r的区块承诺,算法当且仅当Cr是轮r之后的资产的有效承诺接受。在接受登记交易之后,公共区块链104返回唯一标识符PriID。
各资产类别登记在公共区块链104上。登记者可以指定总资产供应、资产拥有者的初始分配或新资产的“铸造”方式。各资产类别接收唯一标识符AssetClassID。为了简单起见,所有资产都记录在“记录”(E1,...,EN)中。各记录由索引i唯一地识别。记录可以包括关于当前资产拥有者的信息和任何附加辅助信息。在初始化之后,公共区块链104上的公共查找功能FindAsset输入(AssetClassID,索引i),并返回指定当前共链拥有者ChainID以及资产的单调增加序列号j(其将用于防止稍后的双重支出攻击)的元组(ChainID,j)。
各共链120、140执行其自己的共识算法,以独立的速度运行。对于各轮r,共链验证部152产生一个元组(Br,Certr,Cr),其中Cr是对资产持有者的余额表的承诺。在一些实现中,由PriID索引的私有共链验证部152产生元组(Br,Certr,Cr)。(通过验证部152或共链120的其他成员)实例化包括(ChainID,Cr,Certr)的特殊交易。该交易被提交给公共区块链104。任何人可以在公共区块链104上公布该元组。该当事方对于安全性而言不是可信的,但是对于活跃度而言是可信的。如果共链120比公共区块链104运行得更快(例如,共链120为公共区块链104上产生的每一个区块生成多个交易区块),则具有相应证书ChainID的承诺集合(Cr,Certr,Cr+1,Certr+1,...)可以同时公布到公共区块链104。公共区块链104仅当对于所有轮r:VerifyBlock(Cr-1,Certr-1,Cr,Certr)=1时才接受这样的交易。因此,公共区块链104校验是否存在批准每个区块的一组有效验证部152。注意,证书或对共链资产的承诺本身都不会揭示关于个别资产拥有者的任何信息。
跨链转移
实体PrivCoChain(具有标识符PriID)和PubCoChain表示两个共链。在一些实现中,资产从来自共链120、140的资产类别AssetClassID移动到公共区块链104(并且反之亦然)。公开的实现保留了私有共链的隐私属性和其用户的匿名属性。在一些实现中,具有公钥PK的、拥有来自AssetClassID的资产“i”的用户想要将该资产转移到公共区块链104。采取以下步骤。第一,用户创建新的密钥对(PK*,SK*)。第二,用户在共链120上提交将资产放入“取出”账户的特殊交易,并作为拥有者分配PK*。账户还包括大于该资产的最后序列号j的唯一序列号j’,其可以经由公共区块链104上的查找(AssetClassID,i)获得。整个账户状态记录在新记录E′i中。用户发送交易,从而将资产“i”的状态改变为E′i。一旦资产转移到该状态,它就不会在共链120上进行交易,并保持锁定。
第三,交易被产生(Br,Certr,Cr)的轮r中的私有共链验证部152接受。元组(ChainID,Certr,Cr)经由公共区块链104上的交易公布。第四,用户获得关于Cr的证明Pi,证明她确实在密钥PK*下将资产E′i置于取出状态。第五,用户经由特殊交易将元组(Pi,E′i,i)呈现给公共区块链104。第六,如果以下三个条件成立,则公共区块链104接受该交易:
(a)Verify(Cr,E′i,Pi,i)=1。
(b)E′i处于从共链120的“取出”状态。
(c)基于资产(AssetClassID,i)的查找(ChainID,j)。验证ChainID是否与提交取出的共链120匹配,并且最后一个序列号j小于E'i中指定的序列号j′。
第七,如果检查通过,则公共区块链104创建资产,将其从共链120中移除,并为新拥有者分配资产:
(a)更新来自(AssetClassID,i)的映射以包括公共区块链ID,并将序列号设置为j′(在取出中指定的序列)。
(b)然后将用户PK*指定为公共区块链104上的资产“i”的拥有者。
安全分析
为了实现参与跨链支付的用户的隐私性(匿名性),各用户U1和U2创建一次性密钥,他们将私有共链120、140上的资产转移至这些一次性密钥。随后,用户使用这些一次性密钥进行跨链支付。一次性密钥使各个共链120、140上的用户U1和U2的累积资产匿名化。在一些实现中,用户与其在共链120内的资产之间的单个映射仍然是私有的。公共区块链104看到:(A)对单个共链余额表的承诺和验证部证书、(B)共链120和公共区块链104之间的交易、以及(C)自认证记录。提供共链隐私性,这是因为由于用户为各跨链交易创建了一次性密钥对,因此(B)不会揭示关于共链120内的用户或资产的任何信息。(A)和(C)不会从加密隐藏的承诺中揭示任何关于共链120的信息;验证部152仅对承诺进行签名。
为了使共链120履行其监管义务,监管义务从公共区块链104中移除并移动至私有共链120、140。给定管辖范围的情况下,每家银行可以维持共链120,并继续负责满足其监管者。在共链120和公共区块链104之间的转移期间,用户和共链管理者或验证部152对各交易进行千字。共链管理者或验证部152可以运行策略以确保应授权转移。监管者可以进一步查询私有共链管理者。此外,如果需要,可以在转移时使用加密工具(例如,基于属性的加密)。也就是说,从共链120到公共区块链104的各交易可以包括只有监管者可以检查的辅助信息的加密。例如,由银行管理的共链120可以生成密钥对(PK,SK),并且发布用于指定监管者被允许检查转移的策略P1,...,Pn的不同监管者密钥SKP1,...,SKPn。各交易与一组属性(例如,日期、交易类型、发送者类型等)以及监管者的加密辅助信息(例如,转移授权材料)相关联。给定策略SKP“i”的交易和秘密密钥,监管者可以检查交易中的加密内容。
使用共链的示例处理
图3示出使用共链的示例处理300。在一些实现中,图3的处理由参考图1更详细示出和描述的支付网络进行。在其它实现中,其它实体进行处理的部分或全部步骤。同样地,实现可以包括不同和/或附加的步骤,或者以不同的顺序进行这些步骤。
支付网络的第一私有区块链(例如,共链120)的用户装置使第一共链120上的加密资产交易实例化(304)。参考图1更详细地示出和描述共链120。用户装置可以是智能手机、平板电脑、膝上型计算机等。加密资产交易用于将第一数量的第一加密资产从第一加密资产账户124转移到与第二私有共链(例如,共链140)关联的第二加密资产账户136。参考图1更详细地示出和描述共链140。加密资产交易反映在共链120的区块(例如,区块124)中。参考图1更详细地示出和描述区块124。
第一共链120的一组验证部152验证(308)第一加密资产交易以生成与第一一次性密钥144相关联的第一承诺(例如,承诺128)。参考图1更详细地示出和描述验证部152和承诺128。共链120的验证部152接收与加密资产交易相关联的验证请求。(共链120的)第一计算机装置可以在公共区块链104上登记验证部152。参考图1更详细地示出和描述公共区块链104。各验证部152具有用于验证加密资产交易的不同公钥。
与第一共链120相关联的第一计算机装置在公共区块链(例如,区块链104)上公布(312)第一承诺。第一计算机装置是第一共链120的管理者装置。例如,余额表中的各条目用Ei表示。私有共链验证部152对条目E1,…,EN的集合产生承诺Chain_1_Commit_Round_R。在该轮结束时,共链验证部152产生授权承诺Chain_1_Commit_Round_R的证书Chain_1_Cert_Round_R。
与公共区块链104相关联的第二计算机装置将第一数量的第一加密资产分配(316)给公共区块链104上的第一一次性密钥144。第二计算机装置是区块链104的管理者装置。例如,区块链104可以将分配存储在余额表条目中。对于每一轮,共链120的验证部152就资产余额表达成一致。因此,由共链120产生的区块124包括对余额表条目的承诺128。第二计算机装置从共链120的余额表中移除第一数量的第一加密资产以反映第一数量的第一加密资产正在被转移。
用于使用共链转移资产的示例处理
图4示出使用共链转移资产的示例处理400。在该示例处理中,区块链系统具有:主链(例如,公共区块链);共链,其中,共链在主链上具有相应的账户;资产,其由主链上的相应账户拥有并且由共链上的账户拥有;以及共链账户,其持有资产。经认证的交易公布(402)在共链上。例如,该交易由共链的成员发布,并包括在共链的区块中。经认证的交易对资产从共链账户向主链的转移进行授权。共链的验证部对指定要转移的资产的数据串和目的地公钥进行认证(404)。经认证的数据串被递送(406)到主链的与共链相对应的账户。向主链公布(406)交易。该交易将资产从主链的与共链相对应的账户转移到目的地公钥。
在一些实现中,共链的验证部产生能够用于基于目的地公钥来计算数字签名的部分签名,使得数字签名能够对资产向主链的账户的转移进行认证。此外,在一些实现中,在主链上公布数字签名。
在一些实现中,判断为在将资产分配给主链的账户的交易被公布到主链之前,经认证的交易被公布在共链上。
在一些实现中,主链的与共链相对应的账户由控制共链上的账户的实体控制。
示例技术
在示例技术中,实体(例如,组织或政府实体)建立其进行内部业务的私有共链(例如,图1中所示的私有共链120、140其中之一)。代币桥使得某些非同质化资产能够在有时称为“主链”的公共区块链(例如,图1所示的公共区块链104)和共链120之间转移。只有共链120上的某些当事方(例如,与各自的公钥相关联的当事方)被授权转移到主链104,并且只有主链104上的某些当事方被授权转移回共链120。
在示例场景中,持有共链120上的财产的所有权的实体决定在主链104上拍卖该财产。第一,实体指示共链120将实体的所有权连同使主链代理拍卖财产并将收益返还到共链120的指令一起转移到主链104。在该交易被验证并出现在共链120上之后,该交易被发送到主链104,在主链104中,该交易被代理识别和接受。作为该跨链转移的一部分,共链验证部152检查为拥有者被授权进行跨链转移,她的主链代理被授权为接收此类转移,并且转移和伴随的指令由验证部152的正确子集验证。
区块中的Merkle树
共链120、140能够向主链104展示发生了某些交易。在一些实现中,共链块在可通过账户搜索的Merkle树中组织交易,使得共链120可以证明交易存在于共链120上,并且该交易由被授权为将资产转移到主链104的公钥其中之一授权。以这种方式,主链104可以接收(1)对交易的Merkle承诺,包括对主链代理的指令;以及(2)由法定人数的当前共链验证部152签名的证书。
在一些示例中,共链120上的资产的拥有者支付费用以将所有权转移给主链104、进行拍卖并将收益转回。例如,拥有者可以向她的主链代理支付预付金。
跨链交易的指令字段
在一些示例中,跨链资产转移可以伴随有针对主链104上的资产处置的指令。例如,这些指令可以是脚本(例如,交易执行批准语言脚本)、智能合同调用或经公证的英文文本。为此,在一些实现中,共链区块的Merkel交易树以足够灵活的方式包括指令字段,以适应任何合理形式的指令。
总结默克尔化数据结构
在一些示例中,共链120、140能够产生以下四项的紧凑、防篡改的摘要。第一,当前可以与主链104交换的资产的列表(例如,该列表可以是监管要求)。第二,当前被授权为进行从共链到主链的跨链转移的当事方的公钥。第三,当前的一组共链验证部152。第四,当前的发言人列表。列表可以改变并需要更新。例如,列表可以被法定人数的共链验证部152认可以确保有效性。在一些实现中,根据列表应是部分转移还是完全转移,它们可以组织为可搜索Merkle树,或者它们可以是非结构化阵列。
转移节奏
在一些示例中,对于在区块链之间多长时间转移一次资产,存在若干策略选项。一个选项是定期地(例如,每一千个区块)转移。另一种是按需转移。策略的混合是可能的,例如,为愿意为及时响应付费的当事方提供优质服务,并且为那些希望节约费用以换取较慢周转的当事方提供基本经济服务。
发言人
在一些实现中,从共链120、140发送到主链104的各种数据结构和消息由法定人数的共链验证部152验证。为了缩小这种认证的规模,共链验证员152可以提名并证明一个或多于一个“发言人”(spokesmen,有时称为“发言人密钥”)以代表验证部152证明数据。验证部152可以定期地或者响应于所感知的不当行为而改变发言人156。发言人156尤其可以报告以下数据。第一,默克尔化数据结构1和2。第二,要转移到主链104的资产(包括使用说明以及必须处理主链104中的资产的贸易密钥)。
该技术可以确保将共链区块的适当信息(例如,包括在每10个或每100个区块中)简洁且有效地通信至主链104。在一些示例中,共链发言人156未被授权改变一组验证部152(例如,确保他不会发起“政变”,诸如恶意改变验证部152以使发言人156受益)或一组先前的和新任命的发言人156。
在一些实现中,共链代言人的数字签名数据公布在主链104上,但是对于给定数量的区块(例如,20个区块),共链120不作用于数据(例如,不出售或原子交换转移到主链104的资产)以确保验证部152不反对。在一些示例中,共链验证部152可以监控主链104,并且如果它们中的一个意识到发言人156公布不正确的信息,则将反对公布(例如,由适当多数的共链验证部152证明的)正确信息。可以采取步骤,以防止多次公布等效的验证部证明信息。
因此,由于在主链104上公布由单个密钥144(例如,代表整个共链120)数字签名的元素(例如,交易、资产、信息等)更有效,因此无需由多个验证部152对元素进行数字签名。作为替代,由发言人156签名的元素可以在给定时量间或给定区块数内被质疑,从而使发言人156的转移无效。这样,这些技术实现了集中行动和分布式整改。
包括私有的需要许可区块链的支付网络的示例实现
图5是示出根据一个或多于一个实现的计算机系统500的框图。在实现中,计算机系统500是专用计算装置。专用计算装置被硬连线为执行技术,或者包括诸如一个或多于一个专用集成电路(ASIC)或现场可编程门阵列(FPGA)等的数字电子装置,这些数字电子装置被持久地编程为执行技术或可以包括被编程为根据固件、存储器、其它存储部或组合中的程序指令执行技术的一个或多于一个通用硬件处理器。这种专用计算装置还可以将定制的硬连线逻辑、ASIC或FPGA与定制编程相结合以实现这些技术。在各种实现中,专用计算装置是台式计算机系统、便携式计算机系统、手持装置、网络装置或并入硬连线和/或程序逻辑以实现技术的任何其它装置。
在一些实现中,计算机系统500包括总线502或用于通信信息的其它通信机构、以及与总线502耦合的用于处理信息的硬件处理器504。硬件处理器504例如是通用微处理器。计算机系统500还包括耦合到总线502的用于存储处理器504所要执行的信息和指令的主存储器506,诸如随机存取存储器(RAM)或其它动态存储装置。在一个实现中,主存储器506用于在处理器504所要执行的指令的执行期间存储临时变量或其它中间信息。这些指令在存储在处理器504可访问的非暂时性存储介质中时将计算机系统500渲染到专用机器中,该专用机器被定制为进行指令中所指定的操作。
在一些实现中,计算机系统500还包括耦合到总线502的用于存储处理器504的静态信息和指令的只读存储器(ROM)508或其它静态存储装置。存储装置510(诸如磁盘、光盘、固态驱动器或三维交叉点存储器)被提供并耦合到总线502以用于存储信息和指令。
在一些实现中,计算机系统500经由总线502耦合到用于向计算机用户显示信息的显示器512,诸如阴极射线管(CRT)、液晶显示器(LCD)、等离子体显示器、发光二极管(LED)显示器或有机发光二极管(OLED)显示器。包括字母数字键和其它键的输入装置514耦合到总线502,以用于向处理器504通信信息和命令选择。另一种类型的用户输入装置是用于将方向信息和命令选择通信到处理器504并用于控制显示器512上的光标移动的光标控制器516,诸如鼠标、追踪球、触摸启用显示器或光标方向键等。该输入装置通常具有两个轴(第一轴(例如,x轴)和第二轴(例如,y轴))上的两个自由度,其允许装置指定平面中的位置。
根据一些实现,本文的技术由计算机系统500响应于处理器504执行主存储器506中所包含的一个或多于一个指令的一个或多于一个序列而进行。这样的指令从诸如存储装置510等的另一存储介质读入主存储器506中。主存储器506中所包含的指令序列的执行使得处理器504进行本文描述的处理步骤。在替代实现中,代替软件指令或与软件指令相组合地使用硬连线电路。
如本文中使用的术语“存储介质”是指存储使机器以特定方式操作的数据和/或指令的任何非暂时性介质。这种存储介质包括非易失性介质和/或易失性介质。非易失性介质包括例如光盘、磁盘、固态驱动器或三维交叉点存储器,诸如存储装置510。易失性介质包括动态存储器,诸如主存储器506。常见形式的存储介质包括例如软盘、柔性盘、硬盘、固态驱动器、磁带或任何其它磁数据存储介质、CD-ROM、任何其它光学数据存储介质、具有孔图案的任何物理介质、RAM、PROM和EPROM、FLASH-EPROM、NV-RAM或任何其它存储器芯片或盒式磁带。
存储介质不同于传输介质,但可以与传输介质结合使用。传输介质参与在存储介质之间转移信息。例如,传输介质包括同轴电缆、铜线和光纤,包括包含总线502的导线。传输介质还可以采用声波或光波的形式,诸如在无线电波和红外数据通信期间产生的声波或光波。
在一些实现中,各种形式的介质涉及将一个或多于一个指令的一个或多于一个序列携带到处理器504以供执行。例如,指令最初携带在远程计算机的磁盘或固态驱动器上。远程计算机将指令加载到其动态存储器中,并使用调制解调器在电话线上发送指令。计算机系统500本地的调制解调器接收电话线上的数据,并使用红外传输器将数据转换为红外信号。红外检测器接收红外信号中所携带的数据,并且适当的电路将数据置于总线502上。总线502将数据携带到主存储器506,处理器504从该主存储器506中检索并执行指令。主存储器506耦接收到的指令可以可选地在处理器504执行之前或之后存储在存储装置510上。
计算机系统500还包括耦合到总线502的通信接口518。通信接口518提供与连接到本地网络522的网络链路520耦合的双向数据通信。例如,通信接口518是综合业务数字网(ISDN)卡、电缆调制解调器、卫星调制解调器或用以提供到相应类型的电话线的数据通信连接的调制解调器。作为另一示例,通信接口518是局域网(LAN)卡,以提供到兼容LAN的数据通信连接。在一些实现中,无线链路也被实现。在任何这样的实现中,通信接口518发送和接收携带表示各种类型的信息的数字数据流的电信号、电磁信号或光信号。
网络链路520通常通过一个或多于一个网络向其它数据装置提供数据通信。例如,网络链路520通过本地网络522向主机524或向由互联网服务提供商(ISP)526操作的云数据中心或设备提供连接。ISP 526又通过现在通常称为“互联网”528的全球分组数据通信网络提供数据通信服务。本地网络522和互联网528都使用携带数字数据流的电信号、电磁信号或光信号。通过各种网络的信号以及在网络链路520上并通过通信接口518的信号是传输介质的示例形式,它们携带去往和来自计算机系统500的数字数据。在一些实现中,网络520包含云网络或服务器、或云的一部分。
计算机系统500通过网络、网络链路520和通信接口518发送消息和接收数据(包括程序代码)。在一些实现中,计算机系统500接收用于处理的代码。所接收到的代码在被接收时由处理器504执行,以及/或者存储在存储装置510或其它非易失性存储部中以供稍后执行。
在这里的描述中,为了解释的目的,阐述了许多具体细节,以提供对所公开的实现的透彻理解。然而,显然可以在没有这些具体细节的情况下实施这些实现。在附图中,为了便于描述,示出示意性元素的具体布置或排序,诸如表示装置、模块、指令块和数据元素的布置或排序。然而,本领域技术人员应当理解,附图中示意性元素的具体排序或布置并不意味着需要特定的处理顺序或序列、或处理分离。此外,在附图中包括示意性元素并不意味着在所有实现中需要这样的元素,或者在一些实现中不能将由这样的元素表示的特征包括在其它元素中或与其它元素组合。
此外,在使用诸如实线或虚线或箭头等的连接元素来图示两个或多于两个其它示意性元素之间的连接、关系或关联的附图中,不存在任何这样的连接元素不意味着可能不存在连接、关系或关联。换句话说,在附图中未示出元素之间的一些连接、关系或关联,以便不使本公开面模糊。另外,为了便于图示,使用单个连接元素来表示元素之间的多个连接、关系或关联。例如,在连接元素表示信号、数据或指令的通信的情况下,本领域技术人员应当理解,这样的元素表示影响通信可能需要的一个或多个信号路径(例如,总线)。
现在将详细参考实施例,其示例在附图中示出。在下面的详细描述中,阐述了许多具体细节,以提供对所描述的各种实现的透彻理解。然而,对于本领域普通技术人员显而易见的是,可以在没有这些具体细节的情况下实施所描述的各种实现。尽管提供了标题,但是与特定标题相关、而在具有该标题的部分中未找到的信息也可能在本说明书的其它地方找到。
尽管已经以特定于结构特征和/或动作的语言描述了主题,但是应当理解,所附权利要求中所定义的主题不一定限于所描述的具体特征或动作。相反,所描述的具体特征和动作被公开为实现权利要求的示例,并且其它等效特征和动作旨在在权利要求的范围内。
在前述描述中,已经参考许多具体细节描述了实现,这些具体细节可能因实现不同而不同。因此,以说明性而非限制性的意义来看待描述和附图。实现的范围的唯一和排他指示以及申请人意图作为实现的范围的内容是从本申请发布的一组权利要求的字面和等效范围,这些权利要求以具体形式发布,包括任何后续校正。本文针对这些权利要求中所包含的术语明确阐述的任何定义应适用于权利要求中所使用的术语的含义。此外,当我们在前述描述或后续权利要求中使用术语“还包括”时,该短语之后的内容可以是附加步骤或实体、或先前所述步骤或实体的子步骤/子实体。
Claims (13)
1.一种使得区块链系统的一个或多于一个实体能够执行一系列操作的方法,其中,所述区块链系统包括:
主链,
共链,其中,所述共链在所述主链上具有相应的账户,
资产,其由所述主链上的所述相应的账户拥有并且由所述共链上的账户拥有,以及
共链账户,其持有所述资产,
所述操作包括:
在所述共链上公布经认证的交易,所述经认证的交易对所述资产从所述共链账户向所述主链的转移进行授权;
由所述共链的验证部对指定要转移的资产的数据串和目的地公钥进行认证;
将经认证的数据串递送至所述主链的与所述共链相对应的账户;以及
在所述主链上公布将所述资产从所述主链的与所述共链相对应的账户转移至所述目的地公钥的交易。
2.根据权利要求1所述的方法,所述操作包括生成公钥。
3.根据权利要求1所述的方法,其中,所述验证部使用门限签名方案的数字签名对所述数据串进行认证。
4.根据权利要求3所述的方法,其中,相对于与所述主链中的所述账户相关联的公钥生成所述数字签名,其中,相应的秘密密钥由所述共链的验证部共同保持。
5.根据权利要求1所述的方法,其中,所述主链的与所述共链相对应的账户由控制所述共链上的账户的实体控制。
6.一种使得区块链系统的一个或多于一个实体能够执行一系列操作的方法,其中,所述区块链系统包括:
主链,
共链,其中,所述共链在所述主链上具有相应的账户,
资产,其由所述主链上的所述相应的账户拥有并且由所述共链上的账户拥有,以及
共链账户,其持有所述资产,
所述操作包括:
在所述共链上公布经认证的交易,所述经认证的交易对所述资产从所述共链账户向所述主链的账户的转移进行授权;
判断为在所述共链上公布了所述经认证的交易;以及
在所述主链上公布将所述资产分配给所述主链的账户的交易。
7.根据权利要求6所述的方法,所述操作包括生成公钥。
8.根据权利要求6所述的方法,其中,验证部使用门限签名方案的数字签名对数据串进行认证。
9.根据权利要求8所述的方法,其中,相对于与所述主链的账户相关联的公钥生成所述数字签名,其中,相应的秘密密钥由所述共链的验证部共同保持。
10.根据权利要求6所述的方法,其中,所述主链的与所述共链相对应的账户由控制所述共链上的账户的实体控制。
11.一种使得区块链系统的一个或多于一个实体能够执行一系列操作的方法,其中,所述区块链系统包括:
主链,
共链,其中,所述共链在所述主链上具有相应的账户,
资产,其由所述主链上的所述相应的账户拥有并且由所述共链上的账户拥有,以及
共链账户,其持有所述资产,
所述操作包括:
在所述共链上公布经认证的交易,所述经认证的交易对所述资产从所述共链账户向所述主链的账户的转移进行授权;
由所述共链的验证部产生能够用于基于目的地公钥来计算数字签名的部分签名,所述数字签名能够用于对所述资产向所述主链的账户的转移进行认证;以及
在所述主链上公布所述数字签名。
12.一种系统,包括:
一个或多于一个计算机处理器;以及
一个或多于一个非暂时性存储介质,其存储指令,所述指令在由所述一个或多于一个计算机处理器执行时使得进行权利要求1至11中所述的方法。
13.一个或多于一个非暂时性存储介质,其存储指令,所述指令在由一个或多于一个计算装置执行时使得进行权利要求1至11中所述的方法。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201962933091P | 2019-11-08 | 2019-11-08 | |
US62/933,091 | 2019-11-08 | ||
US202063015040P | 2020-04-24 | 2020-04-24 | |
US63/015,040 | 2020-04-24 | ||
PCT/US2020/059473 WO2021092434A1 (en) | 2019-11-08 | 2020-11-06 | Performing transactions using private and public blockchains |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114730421A true CN114730421A (zh) | 2022-07-08 |
Family
ID=75849565
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202080077719.9A Pending CN114730421A (zh) | 2019-11-08 | 2020-11-06 | 使用私有和公共区块链进行交易 |
Country Status (15)
Country | Link |
---|---|
US (1) | US20220374886A1 (zh) |
EP (1) | EP4032052B1 (zh) |
JP (1) | JP2022553946A (zh) |
KR (1) | KR20220093198A (zh) |
CN (1) | CN114730421A (zh) |
AU (1) | AU2020380960A1 (zh) |
CA (1) | CA3157091A1 (zh) |
DK (1) | DK4032052T3 (zh) |
FI (1) | FI4032052T3 (zh) |
HR (1) | HRP20240646T1 (zh) |
IL (1) | IL292310A (zh) |
LT (1) | LT4032052T (zh) |
MX (1) | MX2022005255A (zh) |
PT (1) | PT4032052T (zh) |
WO (1) | WO2021092434A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115766040A (zh) * | 2022-12-06 | 2023-03-07 | 浙江工业大学 | 一种基于原子交换的高通量跨链交易方法 |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11669812B2 (en) * | 2020-06-05 | 2023-06-06 | Serge M Krasnyansky | Contingent payments for virtual currencies |
CN113313584B (zh) * | 2021-06-25 | 2023-10-10 | 中国农业银行股份有限公司 | 业务处理方法及处理装置 |
US11496327B1 (en) | 2021-07-07 | 2022-11-08 | Ava Labs, Inc. | Secure and trustworthy bridge for transferring assets across different networks |
CN113888328A (zh) * | 2021-10-04 | 2022-01-04 | 杭州复杂美科技有限公司 | 一种非同质化资产组跨链交易方法、设备及储存介质 |
US12019615B2 (en) * | 2021-11-30 | 2024-06-25 | Ciena Corporation | Proof of asset value for transaction validator election |
CN114066456B (zh) * | 2022-01-13 | 2022-04-08 | 环球数科集团有限公司 | 一种基于erc1155的跨链nft转移和结算系统 |
CN114723500A (zh) * | 2022-05-07 | 2022-07-08 | 北京天德科技有限公司 | 一种用于nfr数字交易的多链系统合作架构 |
CN115174570B (zh) * | 2022-06-28 | 2023-06-27 | 北京航空航天大学 | 一种基于动态委员会的跨链共识方法及系统 |
KR102515721B1 (ko) * | 2022-12-28 | 2023-03-30 | 주식회사 시그마체인 | 블록체인 기반의 본인인증을 위한 일회성 패스워드를 이용하는 nfp 본인인증 지원 방법 및 장치 |
WO2024206248A1 (en) | 2023-03-30 | 2024-10-03 | Ava Labs, Inc. | Authenticated cross-subnet communication |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6704985B2 (ja) * | 2015-04-05 | 2020-06-03 | デジタル・アセット・ホールディングス・エルエルシー | デジタル資産仲介電子決済プラットフォーム |
US10812274B2 (en) * | 2015-05-07 | 2020-10-20 | Blockstream Corporation | Transferring ledger assets between blockchains via pegged sidechains |
JP6636058B2 (ja) * | 2015-07-02 | 2020-01-29 | ナスダック, インコーポレイテッドNasdaq, Inc. | 分散トランザクションデータベースにおける出所保証のシステムおよび方法 |
JP2018536957A (ja) * | 2015-11-30 | 2018-12-13 | シェイプシフト・アーゲーShapeShift AG | ブロックチェーン資産取引におけるセキュリティを向上させるためのシステム及び方法 |
US11606219B2 (en) * | 2016-02-23 | 2023-03-14 | Nchain Licensing Ag | System and method for controlling asset-related actions via a block chain |
JP2020517135A (ja) * | 2017-04-11 | 2020-06-11 | エヌチェーン ホールディングス リミテッドNchain Holdings Limited | ブロックチェーン間のセキュアな転送 |
US10255342B2 (en) * | 2017-04-12 | 2019-04-09 | Vijay K. Madisetti | Method and system for tuning blockchain scalability, decentralization, and security for fast and low-cost payment and transaction processing |
CN107767267B (zh) | 2017-10-20 | 2021-04-02 | 上海策赢网络科技有限公司 | 一种虚拟资源的转移方法和装置 |
US11374765B2 (en) * | 2018-10-18 | 2022-06-28 | Cal Wilson Webster | Process for managing escrow payments between multiple parties |
-
2020
- 2020-11-06 IL IL292310A patent/IL292310A/en unknown
- 2020-11-06 KR KR1020227018919A patent/KR20220093198A/ko not_active Application Discontinuation
- 2020-11-06 PT PT208854935T patent/PT4032052T/pt unknown
- 2020-11-06 LT LTEPPCT/US2020/059473T patent/LT4032052T/lt unknown
- 2020-11-06 AU AU2020380960A patent/AU2020380960A1/en not_active Abandoned
- 2020-11-06 DK DK20885493.5T patent/DK4032052T3/da active
- 2020-11-06 WO PCT/US2020/059473 patent/WO2021092434A1/en active Application Filing
- 2020-11-06 CN CN202080077719.9A patent/CN114730421A/zh active Pending
- 2020-11-06 US US17/774,616 patent/US20220374886A1/en active Pending
- 2020-11-06 CA CA3157091A patent/CA3157091A1/en active Pending
- 2020-11-06 EP EP20885493.5A patent/EP4032052B1/en active Active
- 2020-11-06 MX MX2022005255A patent/MX2022005255A/es unknown
- 2020-11-06 JP JP2022523486A patent/JP2022553946A/ja active Pending
- 2020-11-06 FI FIEP20885493.5T patent/FI4032052T3/fi active
- 2020-11-06 HR HRP20240646TT patent/HRP20240646T1/hr unknown
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115766040A (zh) * | 2022-12-06 | 2023-03-07 | 浙江工业大学 | 一种基于原子交换的高通量跨链交易方法 |
Also Published As
Publication number | Publication date |
---|---|
HRP20240646T1 (hr) | 2024-09-27 |
WO2021092434A1 (en) | 2021-05-14 |
PT4032052T (pt) | 2024-05-20 |
IL292310A (en) | 2022-06-01 |
EP4032052A4 (en) | 2022-11-09 |
EP4032052A1 (en) | 2022-07-27 |
CA3157091A1 (en) | 2021-05-14 |
JP2022553946A (ja) | 2022-12-27 |
KR20220093198A (ko) | 2022-07-05 |
US20220374886A1 (en) | 2022-11-24 |
LT4032052T (lt) | 2024-08-26 |
EP4032052B1 (en) | 2024-02-14 |
AU2020380960A1 (en) | 2022-05-12 |
FI4032052T3 (fi) | 2024-05-16 |
DK4032052T3 (en) | 2024-05-21 |
MX2022005255A (es) | 2022-09-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP4032052B1 (en) | Performing transactions using private and public blockchains | |
JP7350030B2 (ja) | 複数のトランザクションをブロックチェーンに記録する方法及びシステム | |
US20220084013A1 (en) | Identity management, smart contract generator, and blockchain mediating system, and related methods | |
Hasan et al. | Proof of delivery of digital assets using blockchain and smart contracts | |
CN111144881B (zh) | 对资产转移数据的选择性访问 | |
CN109478298B (zh) | 区块链实现的方法和系统 | |
US20200051041A1 (en) | System and method for arbitrating a blockchain transaction | |
JP6697008B2 (ja) | 取引の部分的認可に基づいて分散元帳を更新するシステム及び方法 | |
US20200127813A1 (en) | Method and system for creating a user identity | |
US20200193432A1 (en) | Method and system for settling a blockchain transaction | |
US20200145373A1 (en) | System for blockchain based domain name and ip number register | |
CN115699000A (zh) | 通过计算机网络进行安全的多边数据交换的方法、装置和计算机可读介质 | |
CN110612547A (zh) | 一种用于信息保护的系统和方法 | |
US20230360042A1 (en) | Method, system, and computer-readable medium for secured multi-lateral data exchange over a computer network | |
US20210110360A1 (en) | Cryptocurrency Exchange Without Bond Backing | |
US20200118093A1 (en) | System and method for arbitrating a blockchain transaction | |
GB2578168A (en) | Computer-implemented method and system for digital signing of transactions | |
Yang et al. | CVEM: A cross-chain value exchange mechanism | |
CN112400298B (zh) | 验证交易系统和方法用于加至电子区块链 | |
Senthilkumar | Data confidentiality, integrity, and authentication | |
Vimal Mani | A view of blockchain technology from the information security radar | |
KR20230008322A (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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40076255 Country of ref document: HK |