CN110084592B - 区块链互操作性 - Google Patents
区块链互操作性 Download PDFInfo
- Publication number
- CN110084592B CN110084592B CN201910082059.2A CN201910082059A CN110084592B CN 110084592 B CN110084592 B CN 110084592B CN 201910082059 A CN201910082059 A CN 201910082059A CN 110084592 B CN110084592 B CN 110084592B
- Authority
- CN
- China
- Prior art keywords
- asset
- target
- source
- blockchain
- license
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000012546 transfer Methods 0.000 claims abstract description 110
- 238000005516 engineering process Methods 0.000 claims abstract description 5
- 238000000034 method Methods 0.000 claims description 85
- 230000015654 memory Effects 0.000 claims description 29
- 230000004044 response Effects 0.000 claims description 12
- 238000004519 manufacturing process Methods 0.000 claims description 3
- 230000008569 process Effects 0.000 description 43
- 230000003993 interaction Effects 0.000 description 20
- 239000010410 layer Substances 0.000 description 18
- 230000006870 function Effects 0.000 description 15
- 238000010586 diagram Methods 0.000 description 14
- 230000008520 organization Effects 0.000 description 14
- 238000004891 communication Methods 0.000 description 13
- 230000007246 mechanism Effects 0.000 description 13
- 238000003860 storage Methods 0.000 description 9
- 230000007704 transition Effects 0.000 description 9
- 239000004744 fabric Substances 0.000 description 8
- 230000008859 change Effects 0.000 description 6
- 230000000977 initiatory effect Effects 0.000 description 6
- 238000012795 verification Methods 0.000 description 4
- 238000013459 approach Methods 0.000 description 3
- 238000012790 confirmation Methods 0.000 description 3
- 230000006872 improvement Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 238000013475 authorization Methods 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 230000001010 compromised effect Effects 0.000 description 2
- 239000003550 marker Substances 0.000 description 2
- 230000005012 migration Effects 0.000 description 2
- 238000013508 migration Methods 0.000 description 2
- 238000011084 recovery Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- IUVCFHHAEHNCFT-INIZCTEOSA-N 2-[(1s)-1-[4-amino-3-(3-fluoro-4-propan-2-yloxyphenyl)pyrazolo[3,4-d]pyrimidin-1-yl]ethyl]-6-fluoro-3-(3-fluorophenyl)chromen-4-one Chemical compound C1=C(F)C(OC(C)C)=CC=C1C(C1=C(N)N=CN=C11)=NN1[C@@H](C)C1=C(C=2C=C(F)C=CC=2)C(=O)C2=CC(F)=CC=C2O1 IUVCFHHAEHNCFT-INIZCTEOSA-N 0.000 description 1
- 244000099147 Ananas comosus Species 0.000 description 1
- 235000007119 Ananas comosus Nutrition 0.000 description 1
- 244000078856 Prunus padus Species 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000009849 deactivation Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 239000002355 dual-layer Substances 0.000 description 1
- 235000013399 edible fruits Nutrition 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000001404 mediated effect Effects 0.000 description 1
- 235000013619 trace mineral Nutrition 0.000 description 1
- 239000011573 trace mineral Substances 0.000 description 1
Classifications
-
- 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/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
-
- 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
-
- 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
-
- 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/22—Payment schemes or models
- G06Q20/223—Payment schemes or models based on the use of peer-to-peer networks
-
- 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
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
-
- 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/08—Network architectures or network communication protocols for network security for authentication of entities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- 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/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0643—Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
-
- 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
- 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
Abstract
系统使用互操作电路支持不同分布式账本技术的区块链之间的资产转移。互操作电路可以从源和目标参与者电路接收资产许可。资产许可可以支持将资产从源区块链转移到目标区块链。代表源和目标参与者电路行动的互操作电路在源区块链上锁定资产。然后互操作电路在目标区块链上创建资产。在源区块链上锁定资产可以防止双重支出机会,其中资产可以在源区块链上和在目标区块链上恢复。
Description
技术领域
本申请要求2018年1月26日提交的标题为“Blockchain Interoperability(区块链互操作性)”的代理人案卷号为15718/352的美国临时专利申请序列号62/622,371的优先权,其全部内容通过引用并入本文。本申请还要求2018年11月19日提交的标题为“Blockchain Interoperability(区块链互操作性)”的代理人案卷号为15718/500的美国临时专利申请序列号62/769,343的优先权,其全部内容通过引用并入本文。
技术领域
本公开涉及在分布式账本技术之间的互操作性。
背景技术
在巨大的客户需求的推动下,电子和通信技术的快速发展导致了新出现的复杂网络交易链。用于交易链的底层处理的硬件和软件实现中的改进将提高实现的安全性、可靠性和速度。
附图说明
图1示出了与参与者电路交互的区块链互操作系统。
图2示出了示例互操作逻辑。
图3示出了针对图1的互操作系统的示例特定执行环境。
图4示出了具体的说明性示例区块链互操作性系统。
图5示出了可以通过其转移资产的示例协商过程的流程图。
图6示出了示出示例可信实体协商交换的框图。
图7示出了示出示例DLT协商交换的框图。
图8示出了示出示例资产转移提议的框图。
图9示出了示出确认提议的示例回复的框图。
图10示出了示出向门户的关于资产转移发起的示例通知的框图。
图11示出了示出资产锁定和创建成功的示例交互的框图。
图12示出了示出向门户的指示转移已完成的示例通知的框图。
具体实施方式
在区块链中,例如客户端、终端或其他参与节点的参与者可以将数据块附加到区块链。控制区块链的操作的可执行代码可以实现多种机制,该多种机制控制对区块链的附加操作以符合一种或多种分布式账本技术(DLT)。DLT可以包括在符合DLT的区块链中采用的一个或多个区块链特征的集合。一种机制可以包括散列结构,该散列结构例如可以包括自引用方案,该自引用方案可以帮助防止对区块链内容的无证据篡改。附加地或替代地,可执行代码可以实现共识机制,该共识机制可以支持确定哪些块以及哪些内容可以被正确地附加到区块链。附加地或替代地,可执行代码可以定义可以被附加到区块链的块的格式(例如,字段的大小、数量和名称;被跟踪资产的格式;或其他格式化参数)。不同的DLT可以在一种或多种操作机制中不同,诸如上面讨论的那些或其他机制。因此,符合第一DLT的第一区块链上的块可能不一定被附加到符合第二DLT的第二区块链。因此,不同的DLT可以是不兼容的,因为在没有转换的情况下,第一DLT上的记录未必也被附加到第二不兼容的DLT。
可以在区块链上跟踪资产(例如,诸如硬币之类的可花费资产、诸如货物之类的被跟踪资产、诸如智能合约之类的可执行资产、或其他资产)。当资产被支出(例如,交付、花费或以其他方式支出)时,资产可被标记为在区块链上花费。如果单个资产在多个区块链上被跟踪,则在某些情况下,资产可能被多次花费(double-spent)或以其他方式被支出多次(例如,在每个区块链上支出一次)。当资产在多个区块链上被跟踪或部分地跟踪时,可以协调区块链以避免多次支出场景。
本文讨论的技术和架构讨论了区块链互操作性系统,在其中互操作电路在区块链之间执行资产转移和转换,包括那些兼容的不同和不兼容的DLT。此外,互操作电路在区块链之间协调资产跟踪。例如,这种协调可以确保即使在转移之后仍然不允许资产的多次支出。
区块链上的资产转移、跟踪和交易通过操纵密码和/或加密原语而发生。不同的DLT之间的互操作涉及操纵专用的密码和/或加密原语以支持互操作,其涉及创建用于在各种互操作的区块链上对资产进行锁定、解锁和实例化的加密原语。因此,本文讨论的技术和架构包括但不限于接收和使用资产和/或写入许可、锁定资产、实例化资产和/或实现多层许可,其详述了对技术问题(非互操作的区块链)的技术解决方案(实现互操作性)。该技术解决方案改进了底层硬件的操作——以前不交互的硬件系统提供了一个可以通过它来进行交互的有效平台。此外,与现有的互操作技术相比,上述特征通过提供允许基于区块链的硬件系统之间的更大互操作的技术解决方案来提供对现有市场的解决方案的改进。
现在参考图1和图2,图1示出了与和区块链130、180相关联的参与者电路110、160交互的区块链互操作系统100。图2示出了可以控制互操作系统100内的互操作电路102的操作的伴随互操作逻辑200。互操作电路可以是指可以执行本文讨论的区块链互操作性操作的包括硬件的电路。在一些情况下,互操作电路102可以充当操作区块链的分布式网络140、190内的参与者节点。互操作电路102可以同时作为多个网络140、190中的节点进行参与,这允许互操作电路充当针对与互操作电路102是参与者的网络相对应的区块链的互操作性节点。参与者电路可以是指与互操作电路102交互以执行跨区块链资产转移的参与者节点112、162。在一些情况下,运行一个或多个区块链的特定区块链或组织可以通过指定的参与者电路来集中互操作电路交互(例如,针对单个接触点)。在一些情况下,来自单个区块链的多个不同节点/客户端可以与互操作电路交互。在这些情况中的任何一种情况下,参与者电路可以代表其相应区块链内的其他节点/客户端来与互操作电路交互。可以将区块链130、180存储在存储器132、182上,存储器132、182可以是分布式的和/或冗余的。换句话说,区块链可以至少部分地存储在特定存储器硬件上,并且存储在特定存储器硬件上的相同部分可以冗余地存储在其他存储器硬件上。参与者电路110、160可以是针对相应区块链的参与者节点。
经由互操作系统100,参与者电路可以交换读取/写入许可和资产许可,如下所讨论的。在一些实现中,参与者电路之间的交换可以包括授予互操作电路许可,以代表其他参与者电路行动,例如执行区块链写入操作和/或在区块链之间转移资产。在各种场景中,一个参与者电路可以被指定为源参与者电路110并且一个区块链被指定为源区块链130。类似地,一个参与者电路可以被指定为目标参与者电路160并且一个区块链被指定为目标区块链180。这些指定可以是特定于转移的并且可以取决于特定资产的来源和该资产所指向的目标而随着不同的转移而变化。在一些场景中,当在区块链之间的双向互操作中转移多个资产时,目标和源的指定可以来回交替。
现在参考图2,在继续参考图1中的示例结构的同时,为了执行资产转移,互操作电路102可以从源参与者电路110接收针对源区块链130的写入许可201(动作202)。例如,源参与者电路可以授予互操作电路对源区块链130的写入许可。在一些实现中,这可以包括对链代码、区块链参数、区块链授权用户列表进行改变、将用于互操作电路的凭证添加到授权系统、授予对源区块链运行在其上的专用网络的访问许可或其他许可授予。在一些情况下,源区块链可能不一定实现许可控制。因此,在一些情况下,针对源区块链130的写入许可授予可能不一定是实现互操作电路所必需的。附加地或替代地,可以经由可能与DLT技术集成或分开的区块链组件来实现许可控制。例如,区块链可以经由智能合约来实现许可控制。在一些实现中,可以经由共识机制来实现许可。在一些实现中,可以通过智能合约和共识二者来植入许可。例如,可以通过智能合约添加或移除许可的节点身份,并且可以将用于实现许可指派的过程和协议集成到共识机制中。
互操作电路102可以从目标参与者电路160接收针对目标区块链180的写入许可203(动作204)。例如,目标参与者电路160可以授予针对目标区块链180的互操作电路写入许可。在一些实现中,这可以包括改变链代码、区块链参数、区块链授权用户列表、将用于互操作电路的凭证添加到授权系统、授予对源区块链运行在其上的专用网络的访问许可或其他许可授予。在一些情况下,目标区块链可能不一定实现许可控制。因此,在一些情况下,针对目标区块链180的写入许可授予可能不一定是实现互操作电路所必需的。
在一些实现中,可以在多层许可交换的建立层中交换写入许可(例如,传递到互操作电路,但不一定一直传递到相对的源/目标参与者电路)。该建立层可以包括磋商的许可交换,以便稍后支持区块链之间的尚未计划的资产转移。换句话说,建立层可以设立不特定于任何特定资产的一般许可。例如,写入许可交换可以包括操作许可,诸如例如,建立用于停用/锁定资产、重新激活/解锁资产、创建资产以支持从其他区块链的转移的命令/字符串/链代码以及用于支持跨目标/源区块链的一致资产跟踪的标识符。因此,可以使用第二转移层来实现稍后的资产交换,其中标识资产并且交换特定于该资产的许可(例如,资产许可)。
在一些实现中,可以进一步将建立层划分为信任和访问子层。在信任子层中,参与者电路可以交换允许DLT之间的交互的写入许可。换句话说,信任子层处理建立目标网络和源网络之间的关系。在访问子层中,参与者电路可以提供写入许可,其允许互操作电路读取/写入区块链或为了交换的目的代表参与者电路以其他方式执行交易。换句话说,访问子层处理被互操作电路用来执行其角色的许可。
在一些情况下,锁定可以取决于覆盖在区块链本机代码上的可执行代码的并行操作。例如,并行可执行代码可以充当区块链周围的调解区块链外部交互的包装器。因此,可以实现锁定而不必改变区块链的本机代码。附加地或替代地,可以在中央注册表中(例如,在互操作电路上或在外部数据存储上)维护资产的锁定状态。例如,互操作电路102可以通过对由注册表所保持的状态字段进行参考来建立资产的锁定状态。因此,可以联系注册表以获得资产的当前状态(例如,锁定或解锁)。此外,即使在不必实现多层交换的情况下,也可以将这种操作许可交换为写入许可。附加地或替代地,即使在不必交换访问类型写入许可(如上所述)的情况下,也可以交换操作许可。
一旦选择了用于转移的特定资产,互操作电路可以接收针对源区块链的源资产许可205(动作208)。作为说明性示例,资产(区块链上的数字密码学原语)可以代表现实世界中的水果运输(例如,菠萝)。源资产许可可以包括支持在源区块链上锁定和/或停用资产的许可。这种停用/锁定可以防止资产在转移之后在源区块链上被花费的情况下的针对资产的多次花费实例。支持该停用/锁定操作的许可可以包括写入到特定块字段的许可,例如辅助字段、注释字段、协议保留字段或可能不一定具有用于区块链操作的指定功能的其他字段。
源资产许可还可以指示在转移完成时应该通知(例如,维护源区块链的)源网络内的哪些节点。例如,源参与者电路节点(例如,从源网络发起该转移的节点)可以被包括在通知列表中。在一些情况下,可以通知源网络上的所有节点。在一些情况下,可以通知所标识的感兴趣节点(例如,网络节点的子集)。源资产许可可以指定这些通知。
关于资产,互操作电路可以接收针对目标区块链的目标资产许可207(动作210)。目标资产许可可以包括允许在目标区块链上实例化资产的许可。例如,许可可以包括将块附加到目标区块链或者请求被附加到区块链的块上的条目的许可;预期将资产写入到区块链以便稍后解锁(例如,一旦在源区块链上确认锁定);解锁预期写入资产的许可;写入到特定块字段的许可,例如辅助字段、注释字段、协议保留字段或可能不一定具有用于协调资产跟踪和锁定控制的区块链操作的指定功能的其他字段;或其他许可。目标资产许可可以包括特定于资产的许可(对资产进行转移的关联交易)。
使用源资产许可205,互操作电路102可以在源区块链上锁定资产(动作212)。锁定资产可以涉及阻止在区块链中的后续交易中使用该资产的动作。例如,互操作电路可以用可以指示锁定状态的字符串或加密原语来标记资产—在后面的块中,这些标记可以与块的其他内容一起被散列。互操作电路可以将资产支出至针对被转移资产的指定账户或资产特定账户上,以支持对该资产的稍后跟踪。互操作电路102可以操作以确保一旦资产从源区块链被转移,资产就不会在源区块链上被支出。此外,互操作电路102标记该资产,以便可以将其跟踪到目标区块链。
使用目标资产许可207,互操作电路102可以在目标区块链上实例化资产(动作214)。实例化可以包括用于创建资产和/或将资产推进到资产可以在目标区块链上被支出的状态的动作。在一些情况下,在目标区块链上创建资产之前,互操作电路102可以等待,直到资产被锁定在源区块链上。在一些情况下,在资产可能必然地被锁定在源区块链上之前,互操作电路可以在目标区块链上预期地创建资产。这可能有助于防止在资产在一条链上被锁定但在另一条链上从未被完全创建的情况下的资产的丢失。在确认源区块链上的锁定之后,互操作电路可以解锁目标区块链上的预期创建的资产。如上所讨论的,资产的实例化可以涉及将字符串/加密原语写入到区块链字段。在一些情况下,目标资产许可可以详述字符串/加密原语的内容,如上所讨论的。在一些情况下,所包含的字符串可以标识源区块链,以帮助支持跨区块链的跟踪。
在一些情况下,目标资产许可可以详述针对(例如,维护目标区块链的)目标网络190上的节点的通知。例如,可以向目标参与者电路节点通知转移完成。附加地或替代地,可以类似于上面关于源网络所讨论的那些来通知其他节点。在一些情况下,可以不发送特定通知,但区块链更新的一般分布允许任何参与节点读取块内容并确定资产是转入/转出的。
在一些实现中,为了处理上面讨论的许可的跟踪和指派,分别管理源和目标区块链的源网络140和目标网络190可以维护身份或凭证节点149、199,其可以确保网络中的参与者节点在它们适当的角色内进行操作。因此,互操作电路可以维护凭证以证实具有身份/凭证节点149、199的互操作电路的身份。这可以帮助确保互操作电路具有执行转移的正确许可并且可以防止其他节点尝试不正当地执行这种转移(或其他未经许可的交易)。
图3示出了用于上述的互操作系统100的示例特定执行环境300。执行环境300可以包括系统逻辑314,用以支持上述的互操作逻辑200的执行。系统逻辑314可以包括处理器316、存储器320和/或其他电路。在各种实现中,特定执行环境300可以在被具体配置为实现该互操作逻辑200时充当互操作电路102。
存储器320可以包括区块链块352、散列参数354和网络数据356,用以支持区块链操纵和写入。存储器320还可以包括应用和结构366,例如加密原语、安全凭证、机器指令、模板或用以支持许可交换、资产转移、转移通知、区块链读取/写入或上述其他任务的其他结构。应用和结构可以实现互操作逻辑200。
执行环境300还可以包括通信接口312,其可以支持无线例如蓝牙、Wi-Fi、WLAN、蜂窝(4G、LTE/A)和/或有线、以太网、千兆以太网、光网络协议。通信接口312还可以包括串行接口,诸如通用串行总线(USB)、串行ATA、IEEE 1394、照明端口、I2C、slim总线或其他串行接口。通信接口312可以被用来支持和/或实现许可交换、远程操作、区块链网络参与或其他任务。执行环境300可以包括电源功能334和各种输入接口328。执行环境还可以包括用户接口318,其可以包括人机接口设备和/或图形用户接口(GUI)。用户接口318可以被用来支持和/或实现执行环境300的本地或本地化操作(注意:区块链网络和/或执行环境本身可以是分布式的)。在各种实现中,在互操作电路102处实现的执行环境300可以被分布在一个或多个物理服务器上、被实现为一个或多个虚拟机、被实现在诸如Cloud Foundry或Docker之类的容器环境中、和/或被实现在无服务器(功能即服务)环境中。
在一些情况下,执行环境300可以是被部署在云平台中的专门定义的计算系统。在一些情况下,可以在用于云部署的清单中规定定义执行环境的参数。清单可以由运营商使用以请求基于云的硬件资源,然后将执行环境的软件组件(例如,应用和结构366)部署到硬件资源上。在一些情况下,可以将清单存储为首选项文件,诸如YAML(又一种标记语言)、JSON或其他首选项文件类型。
可以以许多不同方式并且以硬件和软件的许多不同组合来实现在以下具体说明性示例中以及以上描述的方法、设备、处理、电路和逻辑。例如,所有实现或部分实现可以是包括指令处理器的电路,指令处理器例如中央处理单元(CPU)、微控制器或微处理器;或者作为专用集成电路(ASIC)、可编程逻辑器件(PLD)或现场可编程门阵列(FPGA);或者作为包括分立逻辑或其他电路组件的电路,包括模拟电路组件、数字电路组件或两者;或其任何组合。例如,电路可以包括分立的互连硬件组件、或者可以被组合在单个集成电路裸片上、被分布在多个集成电路裸片之中、或者被实现在公共封装中的多个集成电路裸片的多芯片模块(MCM)中。
因此,电路可以在硬件中存储或访问用于执行的指令,或者可以仅在硬件中实现其功能性。可以将指令存储在除了暂时信号之外的有形储存介质中,诸如闪存、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM);或者存储在磁盘或光盘上,诸如光盘只读存储器(CDROM)、硬盘驱动器(HDD)或其他磁盘或光盘;或者存储在另一个机器可读介质中或上。诸如计算机程序产品之类的产品可以包括储存介质和存储在介质中或介质上的指令,并且指令当由设备中的电路执行时可以使设备实现在附图中图示出的或上面描述的任何处理。
实现可以被分发。例如,电路可以包括诸如多个处理器和存储器之类的多个分立的系统组件,并且可以跨越多个分布式处理系统。参数、数据库和其他数据结构可以被单独存储和管理,可以被合并到单个存储器或数据库中,可以以许多不同的方式在逻辑上和物理上被组织,并且可以以许多不同的方式被实现。示例实现包括链接列表、程序变量、散列表、数组、记录(例如数据库记录)、对象和隐式储存机制。指令可以形成单个程序的部分(例如,子程序或其他代码部分),可以形成多个分开的程序,可以分布在多个存储器和处理器上,并且可以以许多不同的方式被实现。示例实现包括独立程序,并且作为库的一部分,诸如动态链接库(DLL)之类的共享库。例如,库可以包含共享数据和一个或多个共享程序,其包括当由电路执行时执行附图中图示出或上面描述的任何处理的指令。
在各种示例实现中,互操作电路可以被实现为节点P,并且源/目标参与者电路被实现为埃森哲的门户(Portal)(TM)区块链互操作性解决方案中的门户。下面讨论门户(TM)解决方案的各种实现。下面讨论的示例门户(TM)解决方案作为上面讨论的架构和技术的示例的特定说明性集合而被包括。
示例实现
所描述的互操作系统100的示例实现考虑了在任何两个区块链(例如,Quorum、超级账本(Hyperledger)或其他DLT类型)之间的资产转移。所公开的架构和技术保留了所涉及的DLT的安全性和一致性特征(例如,受资产转移影响的区块链)。
在一些情况下,可以在供应链跟踪中实现分布式账本技术(DLT),因为DLT涉及跟踪在资产通过不同状态转变时资产发生的事件序列。因为这些事件可能发生在不同的地方并且可能由不同方记录,所以可以使用可审计的、透明的和至少部分不可变的数据库来记录这些状态变化。
如上所讨论,在相同供应链上涉及的不同方可以使用不同的DLT来跟踪资产。为了保留区块链共识,在可以在目标DLT上发起资产之前,可以在其源DLT上锁定资产。这有助于确保在任何时间点存在单个(例如,不超过一个)可转移资产。在一些情况下,示例系统可以允许针对不可转移资产改变所有权。例如,在一些情况下,资产可以被转移,但可能保持在锁定状态。锁定状态表达了资产已被转移到新DLT并且因此对该锁定资产所做的任何改变都将在无效资产上执行。
因此,可以锁定可以使用门户(TM)安全地转移的资产。注意,这并不一定意味着智能合约/链代码已被修改以添加锁定特征。如上所讨论的,控制该资产的单独包装器例如链代码或智能合约可以被用来锁定资产。替代地或另外地,可以从DLT上的一些中央注册表控制该锁定状态。
如上所述,存在多种针对链上资产实现锁定的方式。因此,规定了客户端接口并且其包含门户(TM)的功能以获悉资产的状态。表1示出了示例功能参数。
作为说明性示例,在Fabric中,系统可以实现键值映射数据结构。因此,对于在Fabric上创建的每个新资产,生成四个散列作为键以在映射中存储关于资产的不同信息。第一个键被称为状态键,并且其对应值是与该新资产相关联的不同状态的数组。每个资产的第一状态可以被“创建”。如果尝试创建在Fabric上已存在的资产(其通过查看资产ID被确定),则系统可以生成或抛出错误,可以保留现有资产,并且可以不创建第二个重复资产。其次,有一个键是附加有字符串“originID”(源ID)的资产ID的SHA256散列。源资产ID可以与该键相关联。第三,有另一个键是附加有字符串“lockState”(锁定状态)的资产ID的SHA256散列。这包含有关资产是否已被锁定的信息。这可以被初始化为“解锁”而另一个可能值被“锁定”。第四,有一个键是附加有“dltID”的资产ID的SHA256散列。与该键相关联的值存储从其中转移该资产的源DLTID。
在锁定资产时,链代码可以首先检查资产记录是否已经存在以及资产是否已经被锁定。如果其中任何一个成立,则系统可以生成错误。否则,链代码可以首先将与锁定状态键相关联的值改变为“锁定”,然后将“锁定”附加到与该资产ID相关联的状态数组。
在示例门户(TM)系统中,存在于Quorum链上的门户(TM)系统中定义的资产可以存在于单个合约上。该合约维护每个资产的映射,以跟踪每个资产的当前状态。
映射将资产ID映射到资产状态(字符串),并且isLocked(被锁定)(布尔值)。映射还维护到源DLT标识符的映射(如果资产最初是在该链上创建的并且不存在于先前的链上,则为空),以及源资产ID(同样,如果资产是在该链上创建的并且不存在于先前的链上,则为空)。该信息允许将资产的先前状态追溯直到先前的DLT。当转移资产时,isLocked状态被设置为真,并且在该DLT上任何人都不应接受该资产。
资产转移过程依赖于可信中介来支持转移过程。三方参与该过程:两个门户(TM)和一个节点P。这些方中的每一方都遵循具有一些附加特征的标准互操作性服务器架构。通过与节点P的通信,各方
(1)建立关于可以被告知资产转移过程中的状态变化的服务器的基线协商
(2)建立在DLT上可以使用的基线协商,并注册读取/写入到每个DLT所需的凭证
(3)发起并接收有关资产转移过程的更新
在资产转移过程中充当中介的互操作性服务器被标记为节点P。所有希望执行资产转移的门户必须向节点P传达它们的意图和一组凭证以用于与它们相应的(多个)DLT交互。因此,转移过程的安全性依赖于节点P,并且因此它被设计为由对于给定交换持有门户的组织所信任的实体来操作。图4示出了示例区块链基于门户(TM)的互操作性系统400。组织402、404可以经由相应的门户节点例如示例门户A和B来与节点P 410交互。例如,通过经由节点P(B)将来自门户A的通信路由到门户B,组织A 402可以指导其与组织B 404的交互。节点P(B)具有来自组织A和B 402、404的许可。组织A402可以通过节点P(A)将通信路由到第三组织(未示出)。类似地,组织B可以通过节点P(C)将通信路由到第四组织(未示出)。从门户A和B,可以将通信路由到经由组织A和B 402、404控制的个体节点。
节点P是负责在资产转移过程中持有状态和持有协商的一方。门户是用于与节点P交互的网关。更具体地,门户允许组织发送节点P消息,以要求建立协商并执行资产转移。此外,随着这些协商的最终确定以及随着转移过程中的每个步骤发生,门户接收到更新。
充当资产转移通信的端点的互操作性服务器被标记为门户。作为希望将资产转移出DLT或转移到DLT上的单个单元的任何组织或组织集合可以具有单个门户,它们使用该单个门户来与节点P通信。该门户本身为组织提供了一种机制,以在资产转移过程中的失败或每个成功步骤时通知门户时,每当资产转移过程中的状态转变发生时,执行它们自己的唯一业务逻辑。
图5示出了设立三个协商类型的示例协商过程的流程图500。在一些情况下,资产转移解决方案使用三个协商以便进行资产转移。首先,两个门户可以通过建立公共DLT标识符以协商彼此通信并且执行由节点P支持的资产转移(动作502)。其次,两个门户可以协商它们希望在资产转移中被涉及的相应DLT(动作504)。第三,两个门户可以协商要被转移的资产、该资产可以从哪个DLT转移、以及该资产可以被转移到哪个DLT(动作506)。一旦双方确认,第三协商可以在节点P上执行资产转移过程,并且如果确实发生错误,则可以定期向所涉及的门户通知资产转移过程中的状态转变和错误。
该协商过程可以考虑在建立某些协商之前在各方之间进行附加的通信或信任验证(诸如验证凭证和证明)。
希望能够在资产转移中被涉及的两个门户必须与它们希望建立可信实体协商的节点P通信,该协商被存储在节点P上并指示针对所涉及的两个门户之间的相互通信的协商。之所以使用该协商是因为节点P负责向愿意互操作的各方发送消息。图6示出了示出来自两个不同DLT的节点之间的示例可信实体协商交换600的框图。
用于建立可信实体协商的过程是:门户向节点P发送消息,然后,一旦协商被建立,节点P就向门户发出消息。在示例场景中,分别由门户A和门户B表示的两个组织,以及节点P。由于门户被用来与节点P通信,因此组织可以采用一种方式来与其相应的门户进行通信。每个组织都可以具有客户端,允许该客户端向组织的门户发送消息。例如,门户A具有客户端(客户端A),允许客户端A向门户A发送请求,门户B具有某一客户端(客户端B),允许客户端B向门户B发送请求。现在,如果门户A希望与门户B建立可信实体协商,则以下步骤发生:
客户端A向门户A发送消息,以要求门户A与门户B建立可信实体协商。
门户A从客户端A接收消息并向节点P发送消息,以声明门户A希望与门户B建立互操作性协商。在示例实现中,为了该协商的目的,IP地址+端口被用来唯一地标识门户。
节点P从门户A接收消息并将门户A和门户B之间的可信实体协商存储为“未确认”。
可以在客户端B和门户B发送消息的情况下重复上述操作。
一旦节点P接收到来自门户B要求与门户A建立可信实体协商的消息,假设门户A和门户B之间的可信实体协商在节点P上被存储为“未确认”,则存储在节点P上的门户A和门户B之间的可信实体协商的状态被更新为“已确认”。此时,门户A和门户B已成功建立互操作性协商。
节点P向两个门户发送消息,以声明可信实体协商已被建立。
接下来,希望可以选择在彼此资产转移中被涉及的两个门户必须与它们希望建立DLT协商的节点P通信,该协商被存储在节点P上并指示两个门户之间关于可以在互操作性过程中被涉及的DLT的公共标识符的协商。使用该协商是因为个体门户可以负责开启/关闭多于一个DLT的资产转移,并且因此在资产转移中涉及的双方都可以建立允许在资产中使用哪些DLT以及这些DLT可以以哪种方式使用。这由节点P上的DLT协商管理器来处理。图7示出了示出两个客户端之间的示例DLT协商交换700的框图。
附加地,由于节点P负责在一个DLT上锁定资产并在另一个DLT上创建资产,因此DLT协商还包含允许节点P与个体DLT交互所需的凭证。在DLT协商中,规定了两个门户(例如,可以是资产发送方的门户和可以是资产接收方的门户),并且规定了关于发送方DLT的信息和关于接收方DLT的信息。对于每个DLT,关于所涉及的DLT必须规定的信息是:(1)针对DLT的公共标识符(例如,双方在资产转移上下文中引用该DLT时可以使用的标识符)(2)DLT的类型(例如,Fabric、Quorum等)(3)允许节点P与DLT交互的凭证。节点P包含交互器文件,其允许节点P在Quorum、Fabric和节点P针对其具有交互器实现的任何其他DLT上创建和锁定资产。
用于建立DLT协商的过程基于门户向节点P发送消息以及一旦建立协商则节点P向门户发出消息。同样,门户A和门户B代表两个不同的组织,每个门户都具有客户端(客户端分别被命名为客户端A和客户端B),允许该客户端向该门户发送请求,并且节点P支持互操作性过程。门户A负责DLT A并且门户B负责DLT B。现在,如果门户A希望与门户B关于允许资产从DLT A转移到DLT B建立DLT协商,则必须发生以下步骤:
客户端A向门户A发送消息,以要求门户A与门户B关于允许DLT A将资产转移到DLTB建立DLT协商。包括在该消息中的是针对DLT A和DLT B的公共标识符、针对DLT A和DLT B的DLT类型、以及允许节点P与DLT A交互的凭证。
门户A从客户端A接收消息并向节点P发送消息,以声明门户A希望与门户B关于允许DLT A将资产转移到DLT B建立DLT协商。为了该协商的目的,IP地址+端口用于唯一标识门户。
节点P从门户A接收消息并检查门户A和门户B之间是否已建立可信实体协商。如果尚未建立所述协商,则在响应中返回错误。否则,节点P将门户A和门户B之间的关于DLT A和DLT B的DLT协商存储为“未确认”。附加地,节点P存储DLT的公共标识符、DLT的类型以及用于与DLT A交互的凭证。
重复上述过程——但是在客户B和门户B发送消息的情况下。
一旦节点P接收到来自门户B的消息,以要求与门户A建立DLT协商,假设门户A和门户B之间的DLT协商在节点P上被存储为“未确认”,则执行验证检查,并且如果该检查通过,则存储在节点P上的门户A和门户B之间的DLT协商的状态被更新为“已确认”。如果存储在节点P上的未确认协商中的DLT的公共标识符和类型与从门户B到节点P的消息中的DLT的公共标识符和类型匹配,则验证检查通过。
如果DLT协商的状态被更新为已确认,那么节点P向两个门户发送消息,以声明DLT协商已被建立。
在两个门户在发送方DLT A和接收方DLT B之间建立可信实体协商和DLT协商之后,允许两个门户参与进行资产转移。资产转移过程可以包括将在下面描述的多个阶段。
客户端A向门户A发送消息,以要求发起资产W使用门户B从DLT A到DLT B的资产转移,并且门户A向节点P发送消息,以要求发起资产W使用门户B从DLT A到DLT B的资产转移。图8示出了示出两个客户端之间的示例资产转移提议800的框图。
客户端B向门户B发送消息,以要求发起资产W使用门户A从DLT A到DLT B的资产转移,并且门户B向节点P发送消息,以要求发起资产W使用门户A从DLT A到DLT B的资产转移。可以按任何顺序接收来自门户A和门户B的消息。图9示出了示出确认提议的示例回复900的框图。一旦节点P接收到两个消息,资产转移过程就被确认并被发起。
通知门户A和门户B,资产转移过程已经开始。图10示出了示出向门户的关于资产转移发起的示例通知1000的框图。
负责在发送方DLT上锁定资产并在接收方DLT上创建资产的节点P上的管理器需要一种与个体DLT交互的机制。如“标准资产锁定机制”部分中详细描述的,为节点P可以处理的每种DLT类型实现公共DLT交互接口。该接口包含用于分别在发送方和接收方DLT上在智能合约(或智能合约等效物)上锁定资产和创建资产的功能。为了检索正确的实现,存在一个被称为DLT交互器取回器的模块,它具有DLT类型作为输入,并将DLT交互器实现作为javascript对象返回作为输出。紧接在发送方上锁定资产之前或者在接收方上创建对应的资产之前,在运行时加载DLT交互器实现。
为了确保资产被视为“转移出”DLT A,DLT交互器被用来将资产W移动到“已锁定”状态(由“标准资产锁定机制”中阐述的标准来定义)。通知门户A和门户B:资产W已被锁定。如果发生锁定错误,这意味着锁定资产不成功,那么资产转移过程可以终止并且可以向两个门户发送错误消息。
为了确保资产被视为“转移到”DLT B,DLT交互器被用来在DLT B上创建资产,其在源DLT上存储针对资产W的标识符并且针对新创建的资产在链上存储如在DLT协商中建立的发送方DLT标识符。这可以使用“资产锁定机制”来实现。通知门户A和门户B:已经在接收方DLT上创建了与资产W相对应的资产。当使用短语“与资产W相对应的资产”时,这是指在接收方DLT上已创建的资产。图11示出了示出资产锁定和创建成功的示例交互1100的框图。创建的资产具有对W的源资产ID和发送方DLTID的链上引用。如果发生资产创建错误,这意味着资产创建不成功,那么资产转移过程可以终止并且可以向两个门户发送错误消息。
节点P使用写入到发送方DLT以及写入到接收方DLT的能力。如果发生锁定或创建资产错误,那么DLT交互阶段可以中止并且可以向两个门户发送错误消息。
在确认资产W被锁定在发送方DLT上并且确认在接收方DLT上创建对应资产的点处,可以向两个门户发送指示资产转移过程完成的消息。图12示出了示出向门户的指示转移完成的示例通知1200的框图。
资产转移过程中的消息可以作为POST请求而被发送,并且接收错误或“确定”作为响应。对请求的响应可以指示请求已被处理。响应可能不一定指示资产转移过程中的状态变化已成功发生。当转移过程中的状态变化发生时,节点P可以用描述状态变化的消息向所涉及的门户发送请求,并且那些门户可以通过在其响应中发送“确定”来确认这些请求。
在基于门户(TM)的特定示例互操作性解决方案中,可以实现各种组件。以下段落讨论了示例组件的实现。作为第一示例组件,示例互操作性服务器是一个模块,其运行Express服务器并包含多个抽象层,用于隔离与服务器、与数据存储、与资产转移过程以及与直接DLT交互所发生的各种交互。附加地,以服务器基类中列出的路由、用于处理所述路由的路由文件以及用于为每个那些路由执行正确的业务逻辑的管理器类的形式将示例组件添加到服务器。
为了确保在资产转移中涉及协商通信并协商针对其相应DLT的某些标识符的门户,中间件验证这些协商的存在。
在基于门户(TM)的特定示例互操作性解决方案中,可以实现各种组件。以下段落讨论了示例组件的实现。作为第一示例组件,用于建立可信实体的路由在一些情况下可能不要求协商验证,因为这些路由是起初如何建立基线协商。
用于建立公共DLT标识符的所有路由都要求可信实体协商就位。由于对于资产转移而言,双方所涉及的DLT是相关的,因此各方使用公共的方式能够引用它们自己的和彼此的DLT。如果在提出DLT协商时可信实体协商未就位,则节点P可以向将有关DLT协商的消息发送到节点P的门户返回错误。
用于资产转移过程的所有路由都要求可信实体协商和DLT标识符协商就位。如果在提出资产转移协商时可信实体协商未就位,则节点P可以向发送有关资产转移协商的消息的门户返回错误。
路由文件可以包括在服务器上命中相应端点之后立即被调用的功能,其中针对每个端点一个功能。这些功能都接受请求和响应作为参数。每个路由文件都与管理器相关联。关联的管理器包含至少处理每个端点的功能,并且因此当命中端点时,服务器可以调用对应的路由功能并且路由功能可以调用对应的管理器功能。路由本身负责响应请求,并且如果发生某些问题则可以返回错误,或者如果请求成功则可以返回“确认”响应。
现在参考另一示例组件,示例系统可以实现储存接口,其已被建立来提供关于如何在节点P上存储数据的灵活性。储存接口的实现使用JSON对象上的函数来存储、更新和检索数据。可以使用磁盘上的文件来备份该JSON对象,该文件在发生JSON对象更新时被更新。
用于储存对象的“状态保持”(state-holding)包装器被称为Vault。Vault考虑了某个键值对与某个状态相关联。Vault被设计来考虑一组预定义的可能状态转变,并且从一个状态转变为无效状态的尝试可能导致抛出错误(通常通过promise拒绝)。通过只查看可用Vault中的当前状态,即另一个示例组件,即可以观察到系统的整个状态。储存对象被用来跟踪状态(将键映射到状态),并且储存对象被用来跟踪键值对(将键映射到值)。与Vault的所有交互通过Vault管理器(VaultManager)发生,Vault管理器代表另一个组件,它在Vault本身和可以与Vault交互的业务逻辑之间添加抽象层。这是有用的,因为可以将Vault周围的其他信息和功能添加到Vault管理器。例如,Vault管理器负责调用观察器,其是在Vault更新上运行的可选自定义功能。与储存接口一样,Vault接口考虑使用备选实现。
现在参考另一示例组件,观察器是运行互操作性服务器模块的(多个)组织(例如上面讨论的特定示例)可以提供来使得每当互操作性服务器上的状态转变发生时执行逻辑(例如,操作或逻辑规则)的功能。Vault考虑了关联的观察器。因此,当对Vault进行更新时,可以通知观察器,并且Vault可以将关于更新的所有相关信息传递给观察器功能。
观察器功能由负责启动服务器的那一方传递到互操作性服务器中。
验证整个资产转移过程的大多数测试使用观察器接收有关认为资产转移何时完成的更新,并且然后可以查询接收链上的资产以确认其存在并且接收方链上的资产包含正确的数据(它是对源资产ID和源DLTID的引用)。
管理器处理针对示例互操作性服务器上存在的某个路由子集的逻辑。此外,每个管理器都与一个或多个Vault相关联,以便管理器可以负责诸如资产转移协商之类的某些信息的状态。支持与路由直接交互的管理器功能可以被设计为异步操作。在资产转移解决方案内,有管理器存在,以用于建立可信实体协商、建立DLT协商、以及执行资产转移过程。该系统可以考虑两个DLT之间的互操作性,而不会引入显著的开销。系统可以确保资产转移过程中的故障不违反区块链不变量并支持恢复。
执行运行时测试以观察将资产从Quorum转移到Fabric以及将资产从Fabric转移到Quorum所需的时间。此外,已针对各种故障模式对该解决方案进行了全面测试。对故障模式、那些故障模式的后果以及从那些故障中恢复进行详细描述。
在资产转移过程期间出现某种故障的情况下,可以向所涉及的门户发送通知。系统处理的故障有几种核心类别:(1)DLT交互错误(2)内部错误(3)节点P故障。在DLT交互错误或内部错误的情况下,资产转移中涉及的两个门户都可以接收到发生故障的通知。对于DLT交互错误,节点P可以分别在发送方DLT上的资产锁定失败或在接收方DLT上创建资产失败时向每个门户上的/noLockFound(/未发现锁定)或/failedToCreateAssetOnReceiver(在接收方上创建资产失败)端点发送消息。对于诸如意外的promise拒绝之类的内部错误,节点P可以向每个门户上的/otherError(/其他错误)端点发送具有所发生错误的描述的消息。当节点P发生故障时,因为服务器本身由于某种原因而离线,所以节点P不会向所涉及的门户发送消息。根据离线的定义,节点P无法发送任何指示其状态为离线的消息。
故障模式可以具有链接元素:它们导致不成功的资产转移。因为此原因,构建节点P以使用来自DLT的永久记录作为资产在转移过程中的当前状态的管理记录来运行资产转移过程。当查看发生的个体DLT交互时,这变得更加明显。当在发送方DLT上锁定资产时,管理器首先尝试锁定资产,然后,如果锁定失败(其当存在DLT交互错误时或者当资产已被锁定时发生),则管理器可以查询DLT以检查资产当前是否被锁定。类似地,当在接收方DLT上创建资产时,管理器首先尝试创建资产,然后,如果创建失败(其当存在DLT交互错误时、当资产已被创建时发生),则管理器可以查询DLT以检查资产是否已被创建。在这两种情况下,这种“尝试然后查询”的方法防止了双重使用问题(例如,锁定相同的资产两次或创建相同的资产两次),同时允许资产转移过程从任何状态继续。这也处理两个门户要求多次执行相同资产转移的情况。对于给定资产,锁定可以在发送方DLT上发生一次。资产创建可以在接收方DLT上发生一次,因此两个门户可以按照它们的需求多次要求执行资产转移,并且可以维护区块链不变量(例如,当资产可以在发送方DLT上最多锁定一次并且在接收方DLT上最多创建一次时)。
如果在用于将一些资产从DLT A转移到DLT B的资产转移过程中发生故障,则门户必须都向节点P发送消息,以要求再次发起该资产从DLT A到DLT B的资产转移过程。当节点P接收到这些消息时,资产转移过程可以在采取上述措施的同时重新开始以维持区块链不变量。
在一些实现中,门户(TM)依赖于可信节点P来支持资产转移。如此,被危害的节点P可能导致包括创建单个资产的多个副本在内的各种坏结果,因为对任何区块链都可能发生无效写入(例如,节点P可能与资产的源ID有关)。
在一些情况下,门户(TM)使用节点P,节点P具有DLT的读取和写入访问,节点P在DLT之间转移资产。如此,可以允许节点P对所涉及的每个DLT进行读取/写入访问。此外,对于每个DLT,可以使用可以读取/写入到DLT的DLT交互器接口的实现。对此的附加或替代方法是允许节点P对每个DLT的读取访问并且让负责每个DLT的各方执行所需的写入(例如,用于锁定资产的交易和用于创建资产的交易)。因此,个体方将在其相应的DLT上锁定/创建资产,并且节点P将验证锁定/创建是否成功发生。这限制了如果对手控制节点P可能造成的损害,因为如果节点P具有写入访问,则DLT的完整性可能受到危害。可以将状态存储为javascript对象表示法(JSON)对象。可以将节点P水平缩放。此外,系统可以实现由本地或云中的NoSQL数据库所支持的存储实现,这将有效地提供处理存储在节点P上的任何和所有数据所需的安全储存。为了节点P进行缩放以处理更多DLT类型,节点P(1)可以具有针对每种DLT类型的DLT交互器,以及(2)需要被给予针对存储在节点P上的某一DLT协商中涉及的每个DLT的凭证。
如果节点P在发送方和接收方DLT的本地节点上运行,那么节点P之外的节点可能是不可信的。如果节点P与发送方和接收方DLT的远程节点通信,那么节点P和那些节点可以是可信的。
可以在智能合约/链代码系统内定义资产。这些资产可以在门户(TM)期望与之交互的合约/链代码中存储用于资产锁定和资产创建的状态。可以如此实现该系统以使得不需要在门户(TM)系统内定义资产。实际上,这允许门户(TM)与当前在Quorum或Fabric DLT上的资产一起使用。
可以使用DLT的注册表合约代替链代码状态定义。在该合约内,任何资产在转移前都可被标记为已锁定。如此,需要稍微改变DLT交互器以查询针对正确数据的正确合约。这有效地允许门户在某些现有合约/链代码上创建的资产上被使用。在一些情况下,节点P使用DLT交互器接口来调用在DLT交互器上的这些功能的实现。
系统可以实现消息/交易加密和访问控制,例如,作为门户和/或节点用于创建和参与的许可系统。
与DLT 2系统相关的DLT系统1中的改变将控制传递到互操作性节点以支持DLT系统2上的适当的数据元素创建或更新并在DLT系统中锁定数据元素。
节点P可以访问与要转移的资产相关的交易(作为示例,在Fabric中,节点P可以是包含资产的信道的一部分;在Quorum中,它可以是私有交易的一方)。
在先前通过引用并入本文的2018年1月26日提交的美国临时专利申请序列号62/622,371中讨论的性能度量,指示了互操作性技术和架构允许由系统以与不同系统上的串行交易类似的速率进行交互。因此,通过允许不同系统的互操作并且通过允许这种互操作在类似于在没有互操作的情况下可以在每个系统上完成转移的那种时间尺度的时间尺度上发生,资产锁定和转移技术和架构改进了底层硬件的操作。因此,通过向底层硬件提供增加的速度和互操作性,这些技术和架构提供了对现有市场解决方案的改进。
在一些情况下,可以在本地化或分布式执行平台上实现系统,例如门户、客户端或节点P。平台可以包括系统电路,其可以包括一个或多个处理器和存储器。存储器可以包括模板、执行指令、应用、数据结构或用以支持执行上述各种系统的其他内容。
替代地或附加地,节点P可以由中介联合节点P系统取代。联合节点P系统可以充当分布式可信中介。联合节点P可以使用每个具有低信任级别的个体节点来记录交易。但是,通过共识,可以支撑双重支出和排序保证。此外,区块链可以被用来保护历史交易记录以防止后来的篡改。联合节点P可以通过提供对奖励令牌的访问来激励节点作为中介的动作,奖励令牌诸如发行硬币的权利、要转移的资产的百分比或其他部分的利率、或其他报酬。在一些情况下,联合节点P系统可以指示节点在接收和发送要转移的资产的结构上留下交易标记。标记可以被用作针对联合节点P系统的跟踪元素。
各种实现可以使用上述技术和架构。
A1在一个示例中,一种系统包括:存储符合源分布式账本技术的源区块链的源存储器;存储符合目标分布式账本技术的目标区块链的目标存储器;以及互操作电路,互操作电路被配置为:从与源区块链相关联的源参与者电路接收源资产许可,以将在源区块链上跟踪的资产转移到目标区块链;发送请求到与目标区块链相关联的目标参与者电路,以在目标区块链上实例化资产;响应于请求,接收目标资产许可以在目标区块链上实例化资产;使用源资产许可,在源区块链上锁定资产;并使用目标资产许可,在目标区块链上实例化资产。
A2根据示例A1的系统,其中互操作电路还被配置为:接收针对源区块链的源写入许可;并接收针对目标区块链的目标写入许可。
A3根据示例A2的系统,其中互操作电路被配置为使用源和目标写入许可而作为源和目标区块链之间的互操作性节点进行操作。
A4根据示例A3的系统,其中互操作电路还被配置为获得源安全凭证以:当使用源写入许可、源资产许可或两者时,在源区块链上建立互操作电路的身份。
A5根据示例A3或A4中任一项的系统,其中互操作电路还被配置为获得目标安全凭证以:当使用目标写入许可、目标资产许可或两者时,在目标区块链上建立互操作电路的身份。
A6根据示例A3-A5中任一项的系统,其中互操作电路被配置为实现双层交换,包括:建立层,在建立层中交换源和目标写入许可;以及转移层,转移层被配置为在建立层之后执行并且在转移层中交换源和目标资产许可。
A7根据示例A1-A6中任一项的系统,其中互操作电路被配置为在将资产从源区块链转移到目标区块链之前接收源和目标资产许可以支持资产许可交换。
A8根据示例A7的系统,其中源和目标资产许可被配置为标识被指定接收关于资产的转移的通知的参与节点。
A9根据示例A1-A8中任一项的系统,其中目标资产许可标识资产和源分布式账本技术。
A10根据示例A1-A9中任一项的系统,其中互操作电路被配置为通过以下方式在源区块链上锁定资产:通过将字符串附加到资产来生成;并对资产和字符串的组合进行散列。
A11根据示例A10的系统,其中字符串被配置为指示资产在源区块链上的锁定状态。
A12根据示例A1-A11中任一项的系统,其中互操作电路被配置为通过以下方式在目标区块链上实例化资产:通过将字符串附加到资产来生成;并对资产和字符串的组合进行散列。
A13根据示例A12的系统,其中字符串被配置为指示从源区块链转移资产。
A14根据示例A12或A13中任一项的系统,其中在目标资产许可内详述字符串的内容。
B1在一个示例中,一种方法包括:在互操作电路处:从与源区块链相关联的源参与者电路接收源资产许可,以将源区块链上跟踪的资产转移到目标区块链,源区块链存储在源存储器上并符合源分布式账本技术;向与目标区块链相关联的目标参与者电路发送请求,以在目标区块链上实例化资产,目标区块链存储在目标存储器上并符合目标分布式账本技术;响应于请求,接收目标资产许可以在目标区块链上实例化资产;使用源资产许可,在源区块链上锁定资产;并使用目标资产许可,在目标区块链上实例化资产。
B2根据示例B1的方法,还包括:接收针对源区块链的源写入许可;并接收针对目标区块链的目标写入许可;并且互操作电路使用源和目标写入许可而作为源和目标区块链之间的互操作性节点进行操作。
B3根据示例B2的方法,还包括实现双层交换,包括:建立层,在建立层中交换源和目标写入许可;以及转移层,转移层被配置为在建立层之后执行并且在转移层中交换源和目标资产许可。
C1在一个示例中,一种产品,包括:除了暂时性信号之外的机器可读介质;存储在机器可读介质上的指令,指令被配置为在被执行时使机器:在互操作电路处:从与源区块链相关联的源参与者电路接收源资产许可,以将源区块链上跟踪的资产转移到目标区块链,源区块链存储在源存储器上并符合源分布式账本技术;向与目标区块链相关联的目标参与者电路发送请求,以在目标区块链上实例化资产,目标区块链存储在目标存储器上并符合目标分布式账本技术;响应于请求,接收目标资产许可以在目标区块链上实例化资产;使用源资产许可,在源区块链上锁定资产;并使用目标资产许可,在目标区块链上实例化资产。
C2根据示例C1的产品,其中指令被配置为使机器通过以下方式在源区块链上锁定资产:通过将字符串附加到资产来生成;并对资产和字符串的组合进行散列。
C3根据示例C2的产品,其中字符串被配置为指示资产在源区块链上的锁定状态。
D1通过示例A1-A14中任一项的系统的操作实施的方法。
E1包括存储在机器可读介质上的指令的产品,指令被配置为使机器实现示例D1的方法。
已经具体描述了各种实施方式。然而,许多其他实现也是可能的。
Claims (18)
1.一种用于资产跟踪的系统,包括:
存储源区块链的源存储器,
所述源区块链符合源分布式账本技术;
存储目标区块链的目标存储器,
所述目标区块链符合目标分布式账本技术;以及
互操作电路,所述互操作电路被配置为:
从与所述源区块链相关联的源参与者电路接收源资产许可,所述源资产许可被配置为允许将所述源区块链上跟踪的资产转移到所述目标区块链;
向与所述目标区块链相关联的目标参与者电路发送请求,以在所述目标区块链上实例化所述资产;
响应于所述请求,接收目标资产许可以在所述目标区块链上实例化所述资产,所述目标资产许可被配置为允许所述资产在所述目标区块链上的实例化;
使用所述目标资产许可,以锁定状态在所述目标区块链上预期实例化所述资产;
在所述目标区块链上预期实例化所述资产之后,使用所述源资产许可,在所述源区块链上锁定所述资产;
接收所述资产已在所述源区块链上被锁定的确认;
在接收所述确认之后,使用所述目标资产许可,在所述目标区块链上解锁预期实例化的所述资产;
接收针对所述源区块链的源写入许可;
接收针对所述目标区块链的目标写入许可;
其中所述互操作电路被配置为使用所述源写入许可和所述目标写入许可而作为所述源区块链与所述目标区块链之间的互操作性节点进行操作;
其中所述互操作电路被配置为实现多层交换,包括:
建立层,所述源写入许可和所述目标写入许可在所述建立层中被交换;以及
转移层,被配置为在所述建立层之后执行并且所述源资产许可和所述目标资产许可在所述转移层中被交换;
其中所述互操作电路还被配置为获得源安全凭证,所述源安全凭证被配置为在使用所述源写入许可、所述源资产许可、或者两者时,在所述源区块链上建立所述互操作电路的身份;和/或
其中所述互操作电路还被配置为获得目标安全凭证,所述目标安全凭证用以在使用所述目标写入许可、所述目标资产许可、或者两者时,在所述目标区块链上建立所述互操作电路的身份。
2.根据权利要求1所述的系统,其中所述互操作电路被配置为:在将所述资产从所述源区块链转移到所述目标区块链之前,接收所述源资产许可和所述目标资产许可以支持资产许可交换。
3.根据权利要求2所述的系统,其中所述源资产许可和所述目标资产许可被配置为标识参与节点,所述参与节点被指定以接收关于所述资产的转移的通知。
4.根据权利要求1所述的系统,其中所述目标资产许可标识所述资产和所述源分布式账本技术。
5.根据权利要求1所述的系统,其中所述互操作电路被配置为通过以下在所述源区块链上锁定所述资产:
通过将字符串附加到所述资产来生成;以及
对所述资产和所述字符串的组合进行散列。
6.根据权利要求5所述的系统,其中所述字符串被配置为指示所述资产在所述源区块链上的锁定状态。
7.根据权利要求1所述的系统,其中所述互操作电路被配置为通过以下在所述目标区块链上实例化所述资产:
通过将字符串附加到所述资产来生成;以及
对所述资产和所述字符串的组合进行散列。
8.根据权利要求7所述的系统,其中所述字符串被配置为指示所述资产转移自所述源区块链。
9.根据权利要求7所述的系统,其中所述字符串的内容在所述目标资产许可内被详述。
10.一种用于资产跟踪的方法,包括:
在互操作电路处:
从与源区块链相关联的源参与者电路接收源资产许可,以将所述源区块链上跟踪的资产转移到目标区块链,所述源区块链被存储在源存储器上并且符合源分布式账本技术;
向与所述目标区块链相关联的目标参与者电路发送请求,以在所述目标区块链上实例化所述资产,所述目标区块链被存储在目标存储器上并且符合目标分布式账本技术;
响应于所述请求,接收目标资产许可以在所述目标区块链上实例化所述资产;
使用所述目标资产许可,以锁定状态在所述目标区块链上预期实例化所述资产;
在所述目标区块链上预期实例化所述资产之后,使用所述源资产许可,在所述源区块链上锁定所述资产;
接收所述资产已在所述源区块链上被锁定的确认;
在接收所述确认之后,使用所述目标资产许可,在所述目标区块链上解锁预期实例化的所述资产;
接收针对所述源区块链的源写入许可;
接收针对所述目标区块链的目标写入许可;以及
实现多层交换,包括:
建立层,所述源写入许可和所述目标写入许可在所述建立层中被交换;以及
转移层,被配置为在所述建立层之后执行并且所述源资产许可和所述目标资产许可在所述转移层中被交换,
其中所述互操作电路使用所述源写入许可和所述目标写入许可而作为所述源区块链与所述目标区块链之间的互操作性节点进行操作;
其中所述互操作电路还被配置为获得源安全凭证,所述源安全凭证被配置为在使用所述源写入许可、所述源资产许可、或者两者时,在所述源区块链上建立所述互操作电路的身份;和/或
其中所述互操作电路还被配置为获得目标安全凭证,所述目标安全凭证用以在使用所述目标写入许可、所述目标资产许可、或者两者时,在所述目标区块链上建立所述互操作电路的身份。
11.根据权利要求10所述的方法,其中接收所述源资产许可和所述目标资产许可包括:在将所述资产从所述源区块链转移到所述目标区块链之前,支持资产许可交换。
12.根据权利要求11所述的方法,其中所述源资产许可和所述目标资产许可标识参与节点,所述参与节点被指定以接收关于所述资产的转移的通知。
13.根据权利要求10所述的方法,其中所述目标资产许可标识所述资产和所述源分布式账本技术。
14.根据权利要求10所述的方法,其中在所述源区块链上锁定所述资产包括:
通过将字符串附加到所述资产来生成;以及
对所述资产和所述字符串的组合进行散列。
15.一种用于资产跟踪的产品,包括:
除暂时性信号之外的机器可读介质;以及
存储在所述机器可读介质上的指令,所述指令被配置为在被执行时使机器:
在互操作电路处:
从与源区块链相关联的源参与者电路接收源资产许可,以将所述源区块链上跟踪的资产转移到目标区块链,所述源区块链被存储在源存储器上并且符合源分布式账本技术;
向与所述目标区块链相关联的目标参与者电路发送请求,以在所述目标区块链上实例化所述资产,所述目标区块链被存储在目标存储器上并且符合目标分布式账本技术;
响应于所述请求,接收目标资产许可以在所述目标区块链上实例化所述资产;
使用所述目标资产许可,以锁定状态在所述目标区块链上预期实例化所述资产;
在所述目标区块链上预期实例化所述资产之后,使用所述源资产许可,在所述源区块链上锁定所述资产;
接收所述资产已在所述源区块链上被锁定的确认;
在接收所述确认之后,使用所述目标资产许可,在所述目标区块链上解锁预期实例化的所述资产;
接收针对所述源区块链的源写入许可;以及
接收针对所述目标区块链的目标写入许可;
其中所述互操作电路使用所述源写入许可和所述目标写入许可而作为所述源区块链与所述目标区块链之间的互操作性节点进行操作;
其中所述互操作电路被配置为实现多层交换,包括:
建立层,所述源写入许可和所述目标写入许可在所述建立层中被交换;以及
转移层,被配置为在所述建立层之后执行并且所述源资产许可和所述目标资产许可在所述转移层中被交换;
其中所述互操作电路还被配置为获得源安全凭证,所述源安全凭证被配置为在使用所述源写入许可、所述源资产许可、或者两者时,在所述源区块链上建立所述互操作电路的身份;和/或
其中所述互操作电路还被配置为获得目标安全凭证,所述目标安全凭证用以在使用所述目标写入许可、所述目标资产许可、或者两者时,在所述目标区块链上建立所述互操作电路的身份。
16.根据权利要求15所述的产品,其中所述指令被配置为使所述机器通过以下在所述源区块链上锁定所述资产:
通过将字符串附加到所述资产来生成;以及
对所述资产和所述字符串的组合进行散列。
17.根据权利要求16所述的产品,其中所述字符串被配置为指示所述资产在所述源区块链上的锁定状态。
18.根据权利要求16所述的产品,其中所述字符串的内容在所述目标资产许可内被详述。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201862622371P | 2018-01-26 | 2018-01-26 | |
US62/622,371 | 2018-01-26 | ||
US201862769343P | 2018-11-19 | 2018-11-19 | |
US62/769,343 | 2018-11-19 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110084592A CN110084592A (zh) | 2019-08-02 |
CN110084592B true CN110084592B (zh) | 2024-04-16 |
Family
ID=65241132
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910082059.2A Active CN110084592B (zh) | 2018-01-26 | 2019-01-28 | 区块链互操作性 |
Country Status (4)
Country | Link |
---|---|
US (2) | US10298585B1 (zh) |
EP (1) | EP3518170B1 (zh) |
CN (1) | CN110084592B (zh) |
SG (1) | SG10201900666RA (zh) |
Families Citing this family (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11184171B2 (en) * | 2018-05-24 | 2021-11-23 | Walmart Apollo, Llc | System and methods for multi-variant tracking |
US10756912B2 (en) * | 2018-10-12 | 2020-08-25 | Avaya Inc. | Distributed ledger and blockchain to confirm validity of call recordings |
CN113850676A (zh) * | 2018-11-30 | 2021-12-28 | 创新先进技术有限公司 | 用于在区块链网络内原子转移智能资产的平台 |
CN111598564B (zh) * | 2019-02-20 | 2023-11-21 | 华为技术有限公司 | 区块链节点连接建立方法、装置及设备 |
US11108553B2 (en) * | 2019-04-05 | 2021-08-31 | International Business Machines Corporation | Database transaction guaranteed commitment |
CN110892696B (zh) * | 2019-04-19 | 2021-08-27 | 创新先进技术有限公司 | 在区块链网络之间建立通信的方法和设备 |
US11251966B2 (en) | 2019-06-28 | 2022-02-15 | Advanced New Technologies Co., Ltd. | Sending cross-chain authenticatable messages |
CN110311790B (zh) * | 2019-06-28 | 2020-07-28 | 阿里巴巴集团控股有限公司 | 一种跨链发送可认证消息的方法和装置 |
US11356282B2 (en) * | 2019-06-28 | 2022-06-07 | Advanced New Technologies Co., Ltd. | Sending cross-chain authenticatable messages |
US11336451B2 (en) * | 2019-06-28 | 2022-05-17 | Advanced New Technologies Co., Ltd. | Cross-blockchain resource transmission |
CN110471984B (zh) | 2019-07-15 | 2020-08-25 | 阿里巴巴集团控股有限公司 | 基于区块链的业务处理方法及装置、电子设备 |
US10937096B2 (en) | 2019-07-15 | 2021-03-02 | Advanced New Technologies Co., Ltd. | Transaction processing in a service blockchain |
US20210036855A1 (en) * | 2019-07-31 | 2021-02-04 | International Business Machines Corporation | Transfering tokens between blockchain networks |
US20210049589A1 (en) * | 2019-08-13 | 2021-02-18 | Innoplexus Ag | System and method for managing transactional interoperability amongst blockchains |
US11360963B2 (en) | 2019-09-24 | 2022-06-14 | International Business Machines Corporation | Tracking and verification of physical assets |
US11664973B2 (en) * | 2020-04-21 | 2023-05-30 | International Business Machines Corporation | Trust-varied relationship between blockchain networks |
JP6767022B1 (ja) * | 2020-05-19 | 2020-10-14 | 株式会社LayerX | 情報処理システム、情報処理方法及びプログラム |
EP3920115A1 (en) * | 2020-06-02 | 2021-12-08 | Siemens Aktiengesellschaft | Method and system for enabling to store genealogically related data within a blockchain network |
CN111612471A (zh) * | 2020-06-08 | 2020-09-01 | 杭州复杂美科技有限公司 | 区块还原方法、设备和存储介质 |
CA3091660A1 (en) * | 2020-08-31 | 2021-11-03 | Polymath Inc. | Method, system, and medium for blockchain-enabled atomic settlement |
US11968301B2 (en) | 2020-09-10 | 2024-04-23 | International Business Machines Corporation | Decentralized asset identifiers for cross-blockchain networks |
CN112491804B (zh) * | 2020-11-04 | 2023-05-23 | 沈阳化工大学 | 一种基于区块链的ics安全策略方法 |
CN112819464B (zh) * | 2021-01-20 | 2023-11-21 | 深圳市天启旭达科技有限公司 | 一种智能合约处理方法、处理装置、终端设备及存储介质 |
US11625698B2 (en) * | 2021-06-01 | 2023-04-11 | Bank Of America Corporation | Intelligent distributed ledger consent optimizing apparatus for asset transfer |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017011601A1 (en) * | 2015-07-14 | 2017-01-19 | Fmr Llc | Computationally efficient transfer processing, auditing, and search apparatuses, methods and systems |
CN106899698A (zh) * | 2017-04-11 | 2017-06-27 | 张铮文 | 一种区块链之间的跨链互操作方法 |
CN107093143A (zh) * | 2017-03-24 | 2017-08-25 | 钱德君 | 一种量子链的区块链构件系统 |
WO2017145019A1 (en) * | 2016-02-23 | 2017-08-31 | nChain Holdings Limited | Registry and automated management method for blockchain-enforced smart contracts |
Family Cites Families (32)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6928458B2 (en) | 2001-06-27 | 2005-08-09 | Microsoft Corporation | System and method for translating synchronization information between two networks based on different synchronization protocols |
CN106462577B (zh) | 2014-03-31 | 2020-11-06 | 甲骨文国际公司 | 用于移动设备和移动云服务的同步的基础设施 |
US10812274B2 (en) * | 2015-05-07 | 2020-10-20 | Blockstream Corporation | Transferring ledger assets between blockchains via pegged sidechains |
US20180191503A1 (en) * | 2015-07-14 | 2018-07-05 | Fmr Llc | Asynchronous Crypto Asset Transfer and Social Aggregating, Fractionally Efficient Transfer Guidance, Conditional Triggered Transaction, Datastructures, Apparatuses, Methods and Systems |
US20170048209A1 (en) * | 2015-07-14 | 2017-02-16 | Fmr Llc | Crypto Key Recovery and Social Aggregating, Fractionally Efficient Transfer Guidance, Conditional Triggered Transaction, Datastructures, Apparatuses, Methods and Systems |
US11488147B2 (en) * | 2015-07-14 | 2022-11-01 | Fmr Llc | Computationally efficient transfer processing and auditing apparatuses, methods and systems |
US10339523B2 (en) * | 2015-07-14 | 2019-07-02 | Fmr Llc | Point-to-point transaction guidance apparatuses, methods and systems |
US20170109735A1 (en) * | 2015-07-14 | 2017-04-20 | Fmr Llc | Computationally Efficient Transfer Processing and Auditing Apparatuses, Methods and Systems |
US10033702B2 (en) * | 2015-08-05 | 2018-07-24 | Intralinks, Inc. | Systems and methods of secure data exchange |
US11270299B2 (en) | 2015-12-07 | 2022-03-08 | Visa International Service Association | Methods and systems of using a cryptocurrency system to manage payments and payment alternatives |
US10387878B2 (en) | 2016-02-22 | 2019-08-20 | Bank Of America Corporation | System for tracking transfer of resources in a process data network |
CN107145768B (zh) * | 2016-03-01 | 2021-02-12 | 华为技术有限公司 | 版权管理方法和系统 |
US20170331896A1 (en) | 2016-05-13 | 2017-11-16 | De La Rue International Limited | Methods and systems for processing assets |
US10713731B2 (en) | 2016-07-22 | 2020-07-14 | Nec Corporation | Method for secure ledger distribution and computer system using secure distributed ledger technology |
US10187368B2 (en) * | 2016-08-03 | 2019-01-22 | Ripple Luxembourg S.A. | Resource transfer setup and verification |
US10417217B2 (en) | 2016-08-05 | 2019-09-17 | Chicago Mercantile Exchange Inc. | Systems and methods for blockchain rule synchronization |
US10291627B2 (en) | 2016-10-17 | 2019-05-14 | Arm Ltd. | Blockchain mining using trusted nodes |
WO2018078520A1 (en) * | 2016-10-25 | 2018-05-03 | nChain Holdings Limited | Blockchain-based method and system for specifying the recipient of an electronic communication |
US10540652B2 (en) | 2016-11-18 | 2020-01-21 | Intel Corporation | Technology for secure partitioning and updating of a distributed digital ledger |
AU2018230763A1 (en) * | 2017-03-08 | 2019-10-31 | Ip Oversight Corporation | System and method for creating commodity asset-secured tokens from reserves |
US10812270B2 (en) * | 2017-04-07 | 2020-10-20 | Citizen Hex Inc. | Techniques for increasing the probability that a transaction will be included in a target block of a blockchain |
GB201705749D0 (en) * | 2017-04-10 | 2017-05-24 | Nchain Holdings Ltd | Computer-implemented system and method |
TWI765019B (zh) * | 2017-04-11 | 2022-05-21 | 安地卡及巴布達商區塊鏈控股有限公司 | 區塊鏈上之快速分散式共識 |
EP4184404A1 (en) * | 2017-05-26 | 2023-05-24 | nChain Licensing AG | Script-based blockchain interaction |
WO2019028026A1 (en) * | 2017-07-31 | 2019-02-07 | Chronicled, Inc. | SYSTEM, METHOD AND DEVICE FOR SECURE AND CONFIDENTIAL DETENTION TRANSACTION USING NO KNOWLEDGE PROTOCOL |
US11270295B2 (en) * | 2017-08-01 | 2022-03-08 | Digital Asset (Switzerland) GmbH | Method and apparatus for automated committed settlement of digital assets |
GB201713046D0 (en) * | 2017-08-15 | 2017-09-27 | Nchain Holdings Ltd | Computer-implemented system and method |
US10891384B2 (en) * | 2017-10-19 | 2021-01-12 | Koninklijke Kpn N.V. | Blockchain transaction device and method |
GB201720946D0 (en) * | 2017-12-15 | 2018-01-31 | Nchain Holdings Ltd | Computer-implemented system and method |
US20190172026A1 (en) * | 2017-12-02 | 2019-06-06 | Alchemy Limited LLC | Cross blockchain secure transactions |
US11240000B2 (en) * | 2018-08-07 | 2022-02-01 | International Business Machines Corporation | Preservation of uniqueness and integrity of a digital asset |
US10250394B1 (en) | 2018-09-20 | 2019-04-02 | Accenture Global Solutions Limited | Cryptologic self-executing blockchain export commitment |
-
2019
- 2019-01-23 US US16/255,167 patent/US10298585B1/en active Active
- 2019-01-24 SG SG10201900666RA patent/SG10201900666RA/en unknown
- 2019-01-25 EP EP19153775.2A patent/EP3518170B1/en active Active
- 2019-01-28 CN CN201910082059.2A patent/CN110084592B/zh active Active
- 2019-04-26 US US16/395,952 patent/US11552950B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017011601A1 (en) * | 2015-07-14 | 2017-01-19 | Fmr Llc | Computationally efficient transfer processing, auditing, and search apparatuses, methods and systems |
WO2017145019A1 (en) * | 2016-02-23 | 2017-08-31 | nChain Holdings Limited | Registry and automated management method for blockchain-enforced smart contracts |
CN107093143A (zh) * | 2017-03-24 | 2017-08-25 | 钱德君 | 一种量子链的区块链构件系统 |
CN106899698A (zh) * | 2017-04-11 | 2017-06-27 | 张铮文 | 一种区块链之间的跨链互操作方法 |
Also Published As
Publication number | Publication date |
---|---|
US11552950B2 (en) | 2023-01-10 |
EP3518170B1 (en) | 2023-09-06 |
US10298585B1 (en) | 2019-05-21 |
EP3518170A1 (en) | 2019-07-31 |
CN110084592A (zh) | 2019-08-02 |
US20190253422A1 (en) | 2019-08-15 |
SG10201900666RA (en) | 2019-08-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110084592B (zh) | 区块链互操作性 | |
JP7324222B2 (ja) | ブロックチェーンを管理するためのコンピューティング・システム、方法、およびコンピュータ・プログラム | |
CN110620810B (zh) | 在区块链上的连续资产转移的非链接所有权 | |
EP3627373B1 (en) | Cryptologic self-executing blockchain export commitment | |
CN110915166B (zh) | 区块链 | |
CN108898390B (zh) | 基于区块链的智能合约调用方法及装置、电子设备 | |
AU2019201733B2 (en) | Active state blockchain synchronization | |
Bozic et al. | Securing virtual machine orchestration with blockchains | |
US20200233858A1 (en) | Peer partitioning | |
US20200052879A1 (en) | Preservation of uniqueness and integrity of a digital asset | |
US11538027B1 (en) | Secure and trustworthy bridge for transferring assets across different networks with an updating pool of wardens | |
US11836714B2 (en) | Secure and trustworthy bridge for transferring assets across networks with different data architecture | |
US11354278B2 (en) | Linking of tokens | |
US10805294B1 (en) | Systems and methods for validating device permissions of computing devices to execute code on a decentralized database | |
US20200050690A1 (en) | Preservation of uniqueness and integrity of a digital asset | |
US11893554B2 (en) | Secure smart note | |
US11985262B2 (en) | Secure and trustworthy bridge for transferring assets across different networks | |
CN111125242B (zh) | 跨组织过程的变换以用于经由区块链执行 | |
EP4276646A1 (en) | Distributed ledger and persistence storage repository |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |