CN110933020A - 密码逻辑自执行区块链导出提交 - Google Patents
密码逻辑自执行区块链导出提交 Download PDFInfo
- Publication number
- CN110933020A CN110933020A CN201910810052.8A CN201910810052A CN110933020A CN 110933020 A CN110933020 A CN 110933020A CN 201910810052 A CN201910810052 A CN 201910810052A CN 110933020 A CN110933020 A CN 110933020A
- Authority
- CN
- China
- Prior art keywords
- data
- blockchain
- provider
- recipient
- commit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
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/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- 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/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/1805—Append-only file systems, e.g. using logs or journals to store data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/1865—Transactional file systems
-
- 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/602—Providing cryptographic facilities or services
-
- 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/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
- G06F21/6227—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database where protection concerns the structure of data, e.g. records, types, queries
-
- 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/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
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
-
- 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/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- 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
- H04L63/0807—Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
-
- 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
-
- 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)
-
- 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/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
-
- 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/12—Transmitting and receiving encryption devices synchronised or initially set up in a particular manner
-
- 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
-
- 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
- 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/23—Updating
- G06F16/2308—Concurrency control
- G06F16/2336—Pessimistic concurrency control approaches, e.g. locking or multiple versions without time stamps
- G06F16/2343—Locking methods, e.g. distributed locking or locking implementation details
-
- 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
- G06F16/275—Synchronous replication
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Business, Economics & Management (AREA)
- Databases & Information Systems (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Bioethics (AREA)
- Health & Medical Sciences (AREA)
- Accounting & Taxation (AREA)
- Data Mining & Analysis (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Computing Systems (AREA)
- Power Engineering (AREA)
- Finance (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
本公开的实施例涉及密码逻辑自执行区块链导出提交。一种数据提供方可以向提供方区块链附加包括密码逻辑提交的互操作性智能合约。密码逻辑提交可以包括被配置为使数据接收方基于预提交授权向接收方区块链提交令牌数据的逻辑。数据提供方可以基于提交密钥对预提交授权进行加密,以向接收方区块链传递被存储在提供方区块链上的令牌数据。数据提供方可以将预提交授权传输至数据接收方。在传输预提交授权之后,数据提供方可以接收预提交授权的预提交确认。数据提供方可以响应于令牌数据被附加至接收方区块链的核实,而将令牌数据锁定在提供方区块链上。数据提供方可以将预定提交密钥发送至数据接收方,以将令牌数据提交至数据接收方区块链。
Description
技术领域
本公开涉及分布式账本技术,并且具体涉及分布式账本互操作性。
背景技术
分布式账本可以包括跨多个节点的复制数字数据和同步数字数据的共识。分布式账本的参与者可以应用商定的协议以用于核实、存储、和维持以及修改被存储在分布式账本中的信息。在许多示例中,可以通过被实现在对等网络中的一个或者多个区块链来实现分布式账本。特定分布式账本的唯一协议、技术以及其他设计考虑可以抑制与其他分布式账本结合共享信息、同步信息和/或传递信息。
发明内容
根据一些实施例,一种方法,包括:向提供方区块链附加包括密码逻辑提交的互操作性智能合约,密码逻辑提交包括提交逻辑,提交逻辑被配置为使数据接收方基于预提交授权向接收方区块链提交令牌数据;基于预定提交密钥对预提交授权进行加密,以向接收方区块链传递被存储在提供方区块链上的令牌数据;向数据接收方发送预提交授权;在发送预提交授权之后,接收预提交授权的预提交确认;以及响应于预提交确认:响应于令牌数据被附加至接收方区块链的核实,将令牌数据锁定在提供方区块链上,以及向数据接收方发送预定提交密钥,数据接收方被配置为:基于由预定提交密钥进行解密的预提交授权执行提交逻辑,并且基于提交逻辑将令牌数据提交至接收方区块链。
根据一些实施例,一种系统,包括:处理器,处理器被配置为:向提供方区块链附加包括密码逻辑提交的互操作性智能合约,密码逻辑提交包括提交逻辑,提交逻辑被配置为使数据接收方基于预提交授权向接收方区块链提交令牌数据;基于预定提交密钥对预提交授权进行加密,以向接收方区块链传递被存储在提供方区块链上的令牌数据;向数据接收方传输预提交授权;在预提交授权的传输之后,接收预提交授权的预提交确认;并且响应于预提交确认:响应于令牌数据被附加至接收方区块链的核实,将令牌数据锁定在提供方区块链上,并且向数据接收方发送预定提交密钥,数据接收方被配置为:基于由预定提交密钥进行解密的预提交授权执行提交逻辑,并且基于提交逻辑将令牌数据提交至接收方区块链。
根据一些实施例,一种非瞬态计算机可读存储介质,包括:由处理器可执行的多个指令,指令包括使处理器进行以下操作的指令:接收加密的预提交授权,以向接收方区块链传递被存储在提供方区块链上的令牌数据;从接收方区块链访问包括密码逻辑提交的互操作性智能合约,密码逻辑提交包括提交逻辑,提交逻辑被配置为引起基于预提交授权的、令牌数据向接收方区块链的提交;生成令牌数据;响应于令牌数据的生成,向数据提供方传输预提交确认;并且在预提交授权的传输之后:从数据提供方接收提交密钥,对预提交授权进行解密,并且基于所解密的预提交授权和密码逻辑提交,将令牌数据提交至接收方区块链。
附图说明
参照以下附图和描述,可以更好地理解实施例。图中的组件不一定按比例绘制。此外,在图中,相同的附图标记在所有不同的视图中表示对应的部件。
图1图示了可互操作密码逻辑区块链系统的第一示例;
图2图示了可互操作密码逻辑区块链系统的第二示例;
图3图示了系统的数据提供方108和数据接收方的第一示例;
图4图示了针对系统的示例逻辑的第一流程图;
图5图示了针对系统的数据提供方和数据接收方的第二示例;
图6图示了针对系统的示例逻辑的第二流程图;
图7图示了针对系统的数据提供方和数据接收方的第三示例;
图8图示了针对系统的智能合约工厂的示例;
图9图示了针对系统的示例逻辑的第三流程图;
图10图示了分布式账本技术网络的可互操作参与者的示例;以及
图11图示了包括处理器和存储器的系统的示例。
具体实施方式
分布式账本技术(DLT)可以应用商定的协议,以用于与区块链交互。特定分布式账本的唯一协议、技术以及其他设计考虑可以抑制与其他分布式账本和/或非参与者结合共享信息、同步信息和/或传递信息。在一些示例中,分布式账本之间的共享可以通过计算设备成为每个分布式账本的参与者而发生。然而,随着越来越多的分布式账本技术在各种组织中变得普遍存在,参与多个分布式账本网络以提供在分布式账本网络之间的数据共享、传递和同步可能变得麻烦、低效或者以其他方式不合需要。
因此,公开了用于密码逻辑区块链互操作性的数字系统和方法。通过介绍性示例,提供方DLT网络的数据提供方可以向提供方区块链附加包括密码逻辑提交的互操作性智能合约。密码逻辑提交可以包括提交逻辑,该提交逻辑被配置为使数据接收方基于预提交授权向接收方区块链提交令牌数据。数据提供方可以基于预定提交密钥对预提交授权进行加密,以向接收方区块链传递被存储在提供方区块链上的令牌数据。数据提供方可以将预提交授权传输至数据接收方。在传输预提交授权之后,数据提供方可以接收预提交授权的预提交确认。响应于预提交确认,数据提供方可以响应于令牌数据被附加至接收方区块链的核实,将令牌数据锁定在提供方区块链上。备选地,数据接收方可以响应于将令牌数据锁定在提供方区块链上的核实,创建令牌数据和/或将令牌数据提交至接收方区块链。数据提供方可以将预定提交密钥发送至数据接收方。该数据接收方可以被配置为:基于由预定提交密钥进行解密的预提交授权执行提交逻辑,并且基于提交逻辑将令牌数据提交至接收方区块链。
在本文所描述的系统和方法的另一方面中,接收方DLT网络的数据接收方可以接收加密的预提交授权,以向接收方区块链传递被存储在提供方区块链上的令牌数据。数据接收方可以从接收方区块链访问包括密码逻辑提交的互操作性智能合约。密码逻辑提交可以包括提交逻辑,该提交逻辑被配置为引起基于预提交授权的、令牌数据向接收方区块链的提交。数据接收方可以生成令牌数据。响应于令牌数据的生成,数据接收方可以向数据提供方传输预提交确认。在预提交授权的传输之后,数据接收方可以从数据提供方接收提交密钥,对预提交授权进行解密,并且基于解密的预提交授权和密码逻辑提交,将令牌数据提交至接收方区块链。
由本文所描述的系统和方法实现的技术进步的一个示例可以是:可以在各种DLT网络上的区块链之间共享和/或交换信息,同时维持与DLT网络的符合。每个DLT网络的参与者可以遵守(多个)互操作性协议,这些协议提高在各种公共DLT网络或者专用DLT网络之间共享的或者传递的信息的速度、安全性和准确性。例如,互操作性智能合约可以提供用于在DLT网络之间进行提交锁定和/或传递信息的密码逻辑指令。
下面所描述的系统和方法的另一技术进步可以是:使分布式账本技术的耦合最小化,而使分布式账本技术之间的结合最大化。例如,每个DLT网络的参与者可以验证在DLT网络之间交换的信息,而无需在DLT网络之间的网关节点,并且智能合约可以对DLT之间的通信进行仲裁。即使当每个DLT网络的规则、协议和/或技术不同时,也可以在DLT网络的区块链之间共享和/或交换信息。
由下面所描述的系统和方法实现的附加技术进步是:可以按照提高网络效率、减少处理时间并且减少存储器需求的方式来在两个独立的DLT网络之间同步传递令牌数据。例如,多个DLT网络的参与者可以访问用于导出信息的公共标准集,该公共标准集减少网络通信、交叉验证、网络流量和/或处理时间的总量。优于现有市场解决方案的附加益处、效率和改进在下面所描述的系统和方法中变得明显。
图1图示了可互操作密码逻辑区块链系统100的第一示例。系统100可以包括参与DLT网络104的一个或者多个区块链参与者102。区块链参与者102可以包括DLT网络104的全部或者部分节点。例如,每个区块链参与者102可以存储区块链106的符合DLT的完整副本或者部分副本和/或与其进行交互。DLT网络104可以包括分别经由用于DLT的协议来与本地存储的区块链通信的区块链参与者102的组合。
DLT网络可以包括DLT网络的访问区块链106或者各个区块链的参与者。区块链106可以包括根据密码学被链接的数据块107。通过DLT来建立数据块的布置和被存储在数据块中的信息之间的关联。例如,区块链106可以提供发展的共享数字数据流,该发展的共享数字数据流用作区块链参与者102之间的真实源。根据DLT,区块链106的数据块107可以包括作为区块链106的初始数据块的起源数据块。随着时间的推移,连续数据块可以被附加至区块链106。区块链106可以提供信息的按时间顺序排列的账本。连续数据块中的一个或者多个数据块可以包括前一数据块的哈希。对区块链106中的一个或者多个数据块的修改可能导致被存储在连续数据块中的哈希信息不一致。可以检测这种不一致,并且DLT网络104的区块链参与者102可以阻止对区块链106中先前附加的或者现有的信息的修改。在一些分布式账本中,可以禁止对区块链106的修改,除非大多数或者某一其他预定义数目的区块链参与者102同意这些修改。
在一些示例中,区块链106可以包括令牌数据。如本文所描述的,令牌数据可以指被存储在区块链上的资产数据。令牌数据可以具有各种类型。例如,令牌数据可以包括本机资产、编程资产和/或在DLT中适用的其他对象类型。本机资产(诸如,加密货币硬币、硬令牌、本机令牌和/或其他可使用的资产)可以符合特定分布式账本。
编程资产可以包括代码、脚本、智能合约或者其他不可使用的令牌数据和/或非本机令牌数据。编程资产可以被复制,并且其状态可以保持一致,其中基础逻辑(例如,在代码或者脚本的情况下)是独立的资源或者特定于具体DLT的环境因素。例如,可以将用第一种DLT的本机语言编写的代码传递至具有第二种不同的本机语言的第二种DLT,其中代码的逻辑结构可以被翻译成第二种本机语言,或者可以在第二种DLT的环境中对代码的逻辑结构进行仿真。
附加地或者备选地,编程资产可以是可转移的,其中事件的特定顺序不影响编程资产的状态。DLT可以通过共识来解决事件序列中的不一致。然而,对一种DLT的共识可以与对第二种DLT的共识无关。因此,不同的DLT可能不一定对相同事件的共同顺序达成一致,因为DLT可以表示独立的共识区域。因此,对于与顺序相关的编程资产,有关第一种DLT的资产状态可能不一定通知针对有关另一DLT的与顺序相关的编程资产的适当状态。在一些情况下,与顺序相关的编程资产的一部分可以是与顺序无关的。
至少一个区块链参与者102可以包括数据提供方108。该数据提供方108可以向在DLT网络104外部的一个或者多个接收方提供被存储在区块链106中的特定信息。在一些示例中,数据提供方108可以被授权以访问和/或管理被存储在区块链106中的特定信息。备选地或者另外,数据提供方108可以向人类或者非人类实体提供DLT网络104的访问权限。在一些示例中,DLT网络104可以包括一个数据提供方。备选地,DLT网络104可以包括多个数据提供方。
数据接收方110可以包括DLT网络104的非参与者。备选地或者另外,数据接收方110可以包括分离的DLT网络的参与者(例如,参见图2)。与数据提供方108不同,数据接收方110可以不具有针对DLT网络104的区块链106的访问权限。数据接收方110可以从一个或者多个区块链参与者102(诸如,数据提供方108)接收被存储在区块链106中的令牌数据。
在一些示例中,至少一个区块链参与者102还可以包括成员服务提供程序112。该成员服务提供程序112可以提供与DLT网络104的区块链参与者102相关联的身份和密码逻辑信息的访问权限。备选地或者另外,成员服务提供程序112可以提供DLT网络104的参与者和非参与者的身份。例如,成员服务提供程序112可以接收由数据提供方108和/或数据接收方110提供的标识信息和公钥信息。
成员服务提供程序112可以包括成员服务储存库114。该成员服务储存库114可以包括数据库或者存储器,其存储与DLT网络104的参与者和非参与者相关联的身份和密码逻辑信息。例如,成员服务储存库114可以包括身份与密码逻辑信息之间的关联。身份可以包括IP地址、MAC地址、主机名、用户名和/或标识DLT网络104的参与者或者非参与者的任何其他信息。密码逻辑信息可以包括被用来确保数字签名的可靠性的任何信息。例如,密码逻辑信息可以包括公钥,该公钥与被应用以生成数字签名的私钥相对应。
在一些示例中,数据提供方108和/或数据接收方110可以与成员服务提供程序112通信,以接收数据提供方108或者多个数据提供方的公钥。在一些示例中,数据接收方110可以向成员服务提供程序112提交消息或者查询。在接收到一个或者多个公钥之后,数据接收方110可以核实由DLT网络104共享的或者从DLT网络104导出的令牌数据的真实性。例如,数据接收方110可以从数据提供方108(或者DLT网络104的某一其他参与者)接收授权信息。该授权信息可以包括与令牌数据相对应的数字签名。该数字签名可以包括数据提供方108和/或数据接收方110同意特定动作(诸如,导出令牌数据)的证明。可以基于与被用来签署签名的私钥配对的公钥确认数字签名的签名者。
在许多情况下,可能需要与外部实体(诸如,数据接收方110)共享被存储在区块链106中的令牌数据,而不需要向DLT网络104添加参与者。在图1中图示的示例中,向/与数据接收方110共享和/或导出信息存在技术挑战。在此处描述的其他挑战中,技术挑战可以包括针对数据接收方110的以下能力:核实令牌数据有效,并且被授权用于共享/导出、防止DLT网络104的区块链参与者102与非参与者之间的双重使用,并且确保在DLT网络104的参与者与DLT网络104的非参与者之间的令牌数据的同步。
图2图示了可互操作密码逻辑区块链系统100的第二示例。在一些示例中,系统100可以包括提供方DLT网络202和/或接收方DLT网络204。该提供方DLT网络202和/或接收方DLT网络204可以各自是在图1中图示的DLT网络104的示例。为了便于说明,提供方DLT网络202在本文中被称为具有将令牌数据导出到接收方DLT网络204的参与者的DLT网络。在其他示例中,提供方DLT网络202可以接收从接收方DLT网络204导出的令牌数据。
提供方DLT网络202可以包括提供方参与者。如本文使用的提供方参与者206可以指至少一个参与者102(图1),其包括和/或访问数据提供方108。接收方DLT网络204可以包括接收方参与者208。接收方参与者可以包括以下参与者的示例:该参与者包括和/或访问数据接收方110。在图2中图示了具有一个参与者的提供方DLT网络202,但是在其他示例中,提供方DLT网络202可以包括多个参与者,该多个参与者包括相应的数据提供方。同样,接收方DLT网络204可以包括多个参与者,该多个参与者包括相应的数据接收方。
数据提供方108可以存储和/或访问提供方区块链210。数据接收方110可以存储和/或访问接收方区块链212。可以根据用于每个DLT网络的相应DLT,来各自管理和维持提供方区块链210和接收方区块链212。用于提供方DLT网络202的DLT可以与用于接收方DLT网络204的DLT不同。
数据提供方108可以与数据接收方110共享和/或导出令牌数据。在一些示例中,提供方DLT网络202的多个参与者可能对令牌数据感兴趣。数据接收方110可以确定是否所有的数据提供方都同意从提供方DLT网络202共享或者导出令牌数据。数据接收方110和数据提供方108可以应用密码逻辑安全性,以确保在DLT网络之间安全、授权和同步地传递信息。例如,数据提供方108和/或提供方DLT网络202的其他参与者可以基于私钥和公钥对各自生成数字签名。
在一些示例中,提供方DLT网络202的一个或者多个参与者可以包括提供方成员服务提供程序(MSP)。备选地或者另外,接收方DLT的一个或者多个参与者可以包括接收方MSP。提供方MSP和接收方MSP可以交换每个相应的DLT网络的参与者的公钥和/或身份。提供方MSP可以存储提供方DLT网络202和接收方DLT网络204的参与者的公钥和/或身份。接收方MSP可以存储接收方DLT网络204和提供方DLT网络202的参与者的公钥和/或身份。
在一些示例中,提供方DLT网络202和/或接收方DLT网络204可以应用共识协议,以有关授权在DLT网络之间共享信息和/或授权在DLT网络之间导出信息达成共识。例如,提供方DLT网络202的多个参与者可能对从提供方DLT网络202共享或者导出的数据感兴趣。备选地或者另外,接收方DLT网络204的多个参与者可能对由接收方DLT网络204接收的数据感兴趣。在示例中,例如,提供方DLT网络202的参与者可以包括银行的希望转移数字货币的分支机构。接收方DLT网络204的参与者可以包括希望从提供方DLT网络202接收数字货币的参与者。提供方DLT网络202的银行分支机构可以在将数字货币转移到接收方DLT网络204的一个或者多个银行分支机构之前达成共识。备选地或者另外,接收方DLT网络204的银行分支机构可能希望对接收数字货币达成共识。
在一些示例中,可能期望在将令牌数据锁定在提供方区块链上之前,确保接收方DLT成功地并且适当地重新创建了令牌数据。备选地或者另外,提供方DLT网络202的参与者与接收方DLT网络204中的参与者之间的共识可以是在DLT网络之间传递令牌数据的先决条件。因此,根据互操作性智能合约304,可以使将令牌数据提交至接收方区块链212和将令牌数据锁定在提供方区块链210上同步,并且执行两者。
图3图示了数据提供方108和数据接收方110的第一示例。数据提供方108可以具有提供方区块链210的访问权限,并且数据接收方110可以具有接收方区块链212的访问权限。数据提供方108可以将令牌数据导出到数据接收方110。在一些示例中,令牌数据的导出可以涉及提供方区块链210上的令牌数据和/或将令牌数据提交至接收方区块链212。在许多示例中,在可以将令牌数据锁定在提供方区块链210上和/或将令牌数据提交至接收方区块链212之前,可能发生各种先决条件、授权和数据操纵。此外,锁定令牌数据而不提交令牌数据(或者反之亦然)可能导致针对令牌数据的竞态条件和/或丢失账本历史。
数据提供方108可以包括提供方同步控制器(FSC)302。FSC 302可以协调向远程区块链传递令牌数据和将令牌数据导出到远程区块链。例如,FSC 302可以向数据接收方110传送被存储在提供方区块链210上的令牌数据,以便存储在接收方区块链212上。备选地或者另外,FSC 302可以确定完成成功传递的时间,并且将令牌数据锁定在提供方区块链210上。
锁定令牌数据可以指根据提供方DLT来向提供方区块链210添加数据块。该数据块可以指示令牌数据被锁定。响应于令牌数据被锁定,数据提供方108和/或提供方DLT网络202的其他参与者可以限制特定信息被附加至提供方区块链210。备选地或者另外,提供方DLT网络202的参与者可以使包括与令牌数据相对应的更新信息的附加数据块无效。
FSC 302可以访问互操作性智能合约304,以确定指示在DLT网络之间导出令牌数据的标准、条件和参数。互操作性智能合约304可以包括授权,该授权用以根据用于提供方DLT网络202、接收方DLT网络204和/或其他DLT网络之间的异步通信的协议,传递被存储在提供方区块链210上的数据。互操作性智能合约304可以包括数据提供方108和数据接收方110同意的条款、条件、逻辑以及其他信息。在一些示例中,互操作性智能合约304可以包括与提供方区块链210中的令牌数据相对应的标识符。备选地或者另外,互操作性智能合约304可以包括同意该导出的一个或者多个数据提供方和/或一个或者多个数据接收方110的标识符。
在一些示例中,互操作性智能合约304可以包括密码逻辑提交306。该密码逻辑提交306可以包括提交逻辑,该提交逻辑被配置为使数据接收方110将数据提交至接收方区块链212。通常,当令牌数据被附加至接收方区块链212时,可以考虑提交令牌数据。备选地或者另外,当令牌数据被附加至接收方区块链212时并且在接收方区块链212上记录了令牌数据的所有权之后,可以考虑向接收方区块链212提交令牌数据。例如,可以在接收方区块链212上创建令牌数据,但是不考虑提交令牌数据,直到向接收方区块链212添加了提交记录。提交记录可以标识参与者、DLT网络、令牌数据和/或记录传递事件的任何其他信息。
互操作性智能合约304还可以包括传递逻辑308。该传递逻辑308可以包括被配置为使数据接收方110接收、生成令牌数据和/或将令牌数据附加至接收方区块链212的逻辑。例如,传递逻辑308可以包括要求或者验证由数据接收方110接收到的信息的指令。在一些示例中,传递逻辑108可以根据预定规则确定数据接收方是否接收到有效的令牌数据。备选地或者另外,传递逻辑308可以使数据接收方110按照符合接收方DLT的方式来重新创建令牌数据。例如,接收方DLT可以利用定义用于与接收方区块链212进行通信、更新和/或交互的数据结构和规则的协议。传递逻辑308可以将令牌数据重新生成为保留相同信息但是针对符合接收方DLT而组织的新格式。例如,传递逻辑可以包括或者定义数据结构。该数据结构可以按照接收方DLT期望的格式来组织信息。数据提供方108可以在将数据发送至数据接收方之前,基于传递逻辑重新创建令牌数据。备选地,数据接收方可以在接收到令牌数据之后,基于传递逻辑重新创建数据。在一些示例中,传递逻辑308可以将令牌数据附加至接收方区块链212以符合接收方DLT。
FSC 302可以接收预提交确认310。该预提交确认310可以包括数据接收方110成功地接收到和/或生成令牌数据的核实。备选地或者另外,预先提交确认310可以指示令牌数据成功地被附加至接收方区块链212。在一些示例中,预提交确认310可以包括由一个或者多个数据接收方签署的数字签名。例如,可以在互操作性智能合约304中标识一个或者多个数据接收方110。数字签名可以核实:以符合接收方DLT和/或互操作性智能合约304的标准,适当地重新生成了数据和/或将数据添加到了接收方区块链212。
为了使锁定和提交在DLT网络之间传递的令牌数据同步,FSC 302可以对互操作性智能合约304或者其部分进行加密,使得数据接收方110最初在没有根据提交逻辑来执行提交的能力的情况下接收互操作性智能合约304。备选地或者另外,FSC 302可以对互操作性智能合约304访问的信息进行加密以执行提交。例如,FSC 302可以基于哈希函数和提交密钥312对密码逻辑提交、互操作性智能合约304的其他部分或者被提供至互操作性智能合约304的信息进行加密。响应于接收到预提交确认310,FSC 302可以将提交密钥传送至数据接收方110。该数据接收方110可以对互操作性智能合约304或者被提供至互操作性智能合约304的其他授权进行解密,并且根据提交逻辑来执行提交。
图4图示了针对系统100的示例逻辑的第一流程图。FSC 302可以获取互操作性智能合约304(402)。如先前参照图3讨论的,操作性智能合约304可以包括密码逻辑提交306。互操作性智能合约304可以包括被配置为使数据接收方110将令牌数据提交至接收方区块链212的提交逻辑。可以基于预定提交密钥312对提交逻辑和/或互操作性智能合约304进行加密。
FSC 302可以将互操作性智能合约304附加至提供方区块链210(404)。例如,FSC302可以向提供方区块链210添加包括互操作性智能合约304的数据块。该数据块还可以包括被存储在区块链上的前一数据块的哈希。
FSC 302可以将互操作性智能合约304发送至数据接收方(406)。例如,FSC 302可以将互操作性智能合约304发送至数据接收方110和/或接收方DLT网络204的另一参与者(407)。在一些示例中,FSC 302可以与互操作性智能合约304一起发送令牌数据。备选地,互操作性智能合约304的传递逻辑308可以包括被配置为重新生成令牌数据的指令。
FSC 302可以接收互操作性智能合约304的预提交确认(408)。响应于预提交确认,FSC 302可以将数据锁定在提供方区块链210上(410)。FSC 302可以将提交密钥312发送至数据接收方110或者接收方DLT网络204的某个其他参与者(412)。如参照图5至图6描述的,数据接收方110可以对密码逻辑提交进行解密,并且响应于接收到提交密钥312而执行提交。
图5图示了数据提供方108和数据接收方110的第二示例。数据接收方110可以包括接收方同步控制器(RSC)502。RSC 502可以协调从远程区块链传递和导入令牌数据。例如,RSC 502可以从数据提供方108接收被存储在提供方区块链210上的令牌数据,以用于存储在接收方区块链212上。备选地或者另外,RSC 502可以确定完成成功传递的时间,并且将令牌数据提交至接收方区块链212。
在一些示例中,互操作性智能合约304可以包括密码逻辑锁定指令504。除了在图3中描述的密码逻辑提交306之外或者作为在图3中描述的密码逻辑提交306的备选,密码逻辑锁定指令504可以被包括在导出合约304中。密码锁定指令504可以包括被配置为使数据提供方108将令牌数据锁定在提供方区块链210上的锁定逻辑。
在一些示例中,互操作性智能合约304和/或接收方DLT可以包括某些先决条件,其定义可以将令牌数据提交至接收方区块链212的时间和/或方式。RSC 502可以接收预锁定确认506。该预锁定确认506可以包括已经根据互操作性智能合约304满足了用于将令牌数据提交至接收方区块链212的各种先决条件的核实。备选地或者另外,预锁定确认可以指示数据提供方108准备将令牌数据锁定在区块链上。例如,预锁定确认可以指示提供方DLT网络202的一个或者多个数据提供方已经达成数据接收方110成功地重新创建了和/或生成了令牌数据的共识。备选地或者另外,预锁定确认可以指示令牌数据,该令牌数据为数据提供方108确认DLT网络可以假设令牌数据的所有权。在一些示例中,预锁定确认可以包括由一个或者多个数据提供方108签署的数字签名。例如,可以在互操作性智能合约304中标识一个或者多个数据提供方108。数字签名可以核实数据提供方同意将令牌数据锁定在提供方区块链210上。
RSC 502可以对密码逻辑锁定指令504进行加密,使得数据提供方108在没有根据锁定指令504和/或互操作性智能合约304来执行锁定的初始能力的情况下接收密码逻辑锁定指令504。例如,RSC 502可以基于哈希函数和锁定密钥508对密码逻辑锁定指令504和/或互操作性智能合约304的其他部分进行加密。响应于接收到预锁定确认506,FSC 302可以将锁定密钥508传送至数据提供方108。该数据提供方108可以基于锁定密钥508对密码逻辑锁定指令进行解密。
图6图示了针对系统100的示例逻辑的第二流程图。RSC 502可以获取互操作性智能合约304(602)。例如,RSC 502可以从数据提供方108接收互操作性智能合约304。备选地或者另外,RSC 502可以从某一其他源接收互操作性智能合约304,并且然后将互操作性智能合约304传送至数据提供方108。在一些示例中,互操作性智能合约304可能先前已经被附加至接收方区块链212,并且RSC 502可以从接收方区块链212获取互操作性智能合约304。
RSC 502可以将互操作性智能合约304附加至数据区块链212(604)。例如,RSC 502可以向接收方区块链212附加数据块,该数据块包括互操作性智能合约304和前一数据块的哈希。在一些示例中,RSC 502可以确定接收方DLT网络204的各个参与者是否同意导出。例如,互操作性智能合约304可以标识接收方DLT网络204的各个授权参与者。RSC 502可以确定被标识的参与者是否同意导出。例如,RSC 502可以获取与同意互操作性智能合约304的一个或者多个参与者相对应的数字签名,并且将数字签名附加至接收方区块链212。
RSC 502可以将互操作性智能合约发送至数据提供方108(606)。备选地或者另外,RSC 502可以获取令牌数据(608)。例如,如参照图3讨论的,互操作性智能合约304中所包括的传递逻辑308可以具有用于验证、生成和/或提交令牌数据的逻辑。RSC 502可以执行和/或执行传递逻辑308,以生成或者重新创建令牌数据。在其他示例中,数据提供方108可以根据互操作性智能合约304的传递逻辑308来将令牌数据传送至RSC。
RSC 502可以接收预锁定确认(610)。响应于接收到预锁定确认506,RSC 502可以确定该确认是否符合互操作性智能合约304。例如,RSC 502可以确定提供方DLT的一个或者多个参与者是否已经指示了基于互操作性智能合约304中所包括的参与者标识符锁定令牌的共识。
RSC 502可以将锁定密钥508发送至数据提供方108(612)。锁定密钥508可以提供用于基于密码逻辑锁定指令504锁定令牌数据的密钥。例如,可以基于锁定密钥508而对密码逻辑锁定指令504进行解密。在一些示例中,RSC 502还可以接收根据锁定指令504锁定了令牌数据的核实。例如,RSC 502可以从同意正确地将令牌数据锁定在提供方区块链210上的一个或者多个数据提供方接收数字签名。
RSC 502可以将令牌数据提交至接收方区块链212(614)。例如,如参照图3讨论的,RSC 502可以将令牌数据或者提交信息附加至接收方区块链212。在其他示例中,数据接收方可以等待直到核实令牌数据被锁定在提供方区块链上之后才创建令牌数据。例如,创建令牌数据以及提交可以涉及在接收方区块链上创建令牌数据。
图7图示了数据提供方108和数据接收方110的第三示例。互操作性智能合约304可以由相应DLT网络的参与者接收,以促进在相应DLT网络之间导出令牌数据。例如,数据提供方108和数据接收方110可以接收互操作性智能合约304。该互操作性智能合约304可以被附加至提供方区块链210和接收方区块链212,使得相应DLT网络的参与者可以访问互操作性智能合约并且同意符合互操作性智能合约。数据提供方108和/或数据接收方110可以访问互操作性智能合约以获得逻辑、参数以及指示导出令牌数据的方式的其他信息。
互操作性智能合约304的密码逻辑提交306可以基于由提供方DLT网络202提供的一个或者多个授权,将令牌数据提交至目标区块链。例如,密码逻辑提交306可以使数据接收方110基于由数据提供方108提供至数据接收方110的预提交授权702,将令牌数据提交至接收方区块链212。
备选地或者另外,互操作性智能合约304的密码逻辑锁定指令504可以使数据提供方108响应于接收到由接收方DLT网络204提供的预锁定授权704而锁定令牌数据。例如,密码逻辑锁定指令504可以使RSC 502响应于接收到同意导入令牌数据或者同意提供方DLT符合互操作性智能合约304的一个或多个数据接收方110的数字签名而锁定令牌数据。
在一些示例中,可以基于同步逻辑706协调数据接收方110、数据提供方108和/或其他参与者之间的异步信息交换。同步逻辑706可以包括规则、标准、可执行指令以及协调数据提供方108与数据接收方110之间的信息传递的其他参数。同步逻辑706可以定义在数据提供方与数据接收方之间交换预提交授权702、令牌数据、预提交确认、预锁定授权704、预锁定确认、锁定密钥和/或提交密钥的定时。
数据提供方108和数据接收方110可以根据同步逻辑706来彼此通信。例如,同步逻辑706可以定义应该交换预提交授权702、令牌数据、预提交确认310、预锁定授权704、预锁定确认506、锁定密钥508和/或提交密钥312的定时和条件。在一个示例中,同步逻辑706可以指定:不应该传送提交密钥312,直到令牌数据被锁定在提供方区块链上。在另一示例中,同步逻辑706可以指定:不应该发生提交,直到发送了锁定密钥508之后和/或已经接收到锁定的令牌数据的确认。
在一些示例中,同步逻辑706可以包括FSC 302、RSC 502和/或同步控制器的其他示例。因此,可以定制互操作性智能合约304以便基于同步逻辑706、传递逻辑308、密码逻辑提交306、密码逻辑锁定指令504和/或互操作性智能合约中所包括的任何其他参数、标准和/或逻辑,在两个或者更多个DLT网络之间进行互操作。
图8图示了针对系统100的智能合约工厂802的示例。智能合约工厂802可以生成互操作性智能合约304,其利用逻辑、指令、参数以及符合特定DLT或者多个DLT的其他信息来定制。例如,提供方DLT网络202和接收方DLT网络204可以实现不同的DLT。智能合约工厂802可以根据提供方DLT和接收方DLT按照某一方式来生成密码逻辑提交306、传递逻辑308、密码逻辑锁定指令504和/或同步逻辑706、FSC 302和/或RSC 502。因此,智能合约工厂802可以根据在互操作中所涉及的DLT和/或在DLT网络之间导出的基础令牌数据来定制生成互操作性智能合约304。
智能合约工厂802可以包括DLT储存库804。该DLT储存库804可以包括符合相应DLT的各种逻辑集、规则集、标准集和/或参数集。例如,DLT储存库可以包括将密码逻辑提交306、锁定指令504、传递逻辑308和/或同步逻辑706与一个或者多个DLT标识符相关联的表或者某一其他数据结构。
智能合约工厂还可以包括互操作性智能合约(ESC)生成器806。ESC生成器806可以访问DLT储存库804,以生成定制的互操作性智能合约。例如,ESC生成器806可以接收(多个)DLT标识符或者标识提供方DLT和/或接收方DLT的其他标识参数。ESC生成器806可以基于标识参数从DLT储存库804中选择逻辑、参数、标准以及其他信息。
在一些示例中,DLT储存库804可以存储分别符合各种DLT的多个密码逻辑提交。备选地或者另外,DLT储存库804可以存储分别符合各种DLT网络的多个锁定指令、传递逻辑和/或同步逻辑。密码逻辑提交、锁定指令和/或传递逻辑可以在DLT储存库中与DLT标识符相关联。
ESC生成器806可以访问DLT储存库,以构建互操作性智能合约304和/或对互操作性智能合约304进行编译。该互操作性智能合约304可以包括符合提供方DLT和/或接收方DLT的逻辑。ESC生成器806可以接收提供方DLT的标识符和/或接收方DLT的标识符。ESC生成器806从智能合约储存库中选择与接收方DLT的标识符相关联的密码逻辑提交306。ESC生成器806可以选择与提供方DLT相关联的密码逻辑锁定指令504。ESC生成器806可以选择与提供方DLT和/或接收方DLT的标识符相关联的传递逻辑308。ESC生成器806可以选择与提供方DLT和/或接收方DLT的标识符相关联的同步逻辑706。ESC生成器806可以生成互操作性智能合约304,该互操作性智能合约304具有分别根据接收方DLT和提供方DLT来与数据接收方110、数据提供方108、接收方区块链212和/或提供方区块链210交互的逻辑。
ESC生成器806可以被包括在数据提供方108和/或数据接收方110中或者由数据提供方108和/或数据接收方110可访问。例如,数据提供方108可以基于ESC生成器806生成互操作性智能合约304,并且将互操作性智能合约304传送至数据接收方110。备选地,数据接收方110可以基于ESC生成器806生成互操作性智能合约304,并且将互操作性智能合约304传送至数据提供方108。在其他示例中,某一其他实体或者参与者可以基于ESC生成器806生成互操作性智能合约304,并且将互操作性智能合约304传送至数据提供方108和/或数据接收方110。
图9图示了针对系统100的示例逻辑的第三流程图。贯穿对示例逻辑的操作的讨论,参照图7和图8。操作902至904涉及生成互操作性智能合约304。操作905至926指由数据提供方根据互操作性智能合约304执行的操作。操作927至946指由数据接收方110根据互操作性智能合约304执行的操作。
参照操作902至904,数据提供方108和/或数据接收方110可以访问智能合约工厂802(902)。数据提供方108和/或数据接收方110可以选择针对互操作性智能合约304的参数(903)。智能合约工厂802可以生成互操作性智能合约304(904)。
例如,参数可以包括密码逻辑提交306、传递逻辑308、密码逻辑锁定指令504和/或同步逻辑706、FSC 302和/或RSC 502。智能合约工厂802可以接收提供方DLT的标识符和/或接收方DLT的标识符。ESC生成器806可以基于提供方DLT标识符和/或接收方DLT标识符,从DLT储存库804中选择密码逻辑提交306、传递逻辑308、密码逻辑锁定指令504和/或同步逻辑706。智能合约工厂802可以对互操作性智能合约304进行编译,使得互操作智能合约304包括密码逻辑提交306、传递逻辑308、密码逻辑锁定指令504和/或同步逻辑706。
数据提供方108和/或数据接收方110可以根据互操作性智能合约304来执行相应的操作。例如,互操作性智能合约304可以管理提供方DLT与接收方DLT之间的同步通信。
参照操作905至926,数据提供方108可以将互操作性智能合约304附加至提供方区块链210(905)。例如,数据提供方108可以向提供方区块链210附加数据块,该数据块包括互操作性智能合约304和前一数据块的哈希。数据提供方可以生成提供方区块链210的预提交授权702(906)。预提交授权702可以包括将被存储在提供方区块链210上的令牌数据导出到接收方区块链212的授权。备选地或者另外,预提交授权702可以包括满足在互操作性智能合约304中定义的各种条件、标准和规则的证明。例如,预提交授权702可以包括提供方DLT网络202的同意导出令牌数据的一个或者多个参与者的数字签名。数据提供方可以向提供方区块链210附加数据块,该数据块包括预提交授权702和前一数据块的哈希。
数据提供方108可以基于提交密钥312对预提交授权702进行加密(908)。备选地或者另外,如参照图3和图4讨论的,可以基于提交密钥312预先对互操作性智能合约304中所包括的密码逻辑提交306进行加密。数据提供方108可以将加密的预提交授权702传送至数据接收方110(910)。
数据提供方108可以将令牌数据传送至数据接收方110(912)。数据提供方108可以从数据接收方110或者接收方DLT网络204的某一其他参与者接收预提交确认310(914)。
该预提交确认310可以包括数据接收方110成功地接收到和/或生成令牌数据的核实。备选地或者另外,预提交确认310可以指示令牌数据成功地被附加至接收方区块链212。在一些示例中,预提交确认310可以包括由一个或者多个数据接收方签署的数字签名。例如,可以在互操作性智能合约304中标识一个或者多个数据接收方110。数字签名可以核实以符合接收方DLT和/或互操作性智能合约304的标准,适当地重新生成了数据和/或将数据添加到了接收方区块链212。在一些示例中,数据提供方108可以根据提供方DLT来将预提交确认附加至提供方区块链210。
数据提供方108可以接收预锁定授权704(916)。数据提供方108可以从数据接收方110接收预锁定授权704。该预锁定授权704可以包括将被存储在提供方区块链210上的令牌数据导出到接收方区块链212的授权。备选地或者另外,预锁定授权704可以包括满足在互操作性智能合约304中定义的各种条件、标准和/或规则的证明。例如,预提交授权702可以包括接收方DLT网络204的一个或者多个参与者的数字签名,该数字签名指示满足互操作性智能合约304的各种规定。在一些示例中,数据提供方108可以根据提供方DLT来将预锁定授权704附加至提供方区块链210。
数据提供方108可以传送预锁定确认506(918)。数据提供方108可以将预锁定确认506传送至数据接收方110或者某一提供方参与者。数据提供方108可以响应于数据接收方110已经成功地重新创建了令牌数据的确定而生成预锁定确认506。备选地或者另外,数据提供方108可以基于一个或者多个数据接收方同意在接收方DLT网络204内适当地重新创建令牌数据的核实,生成预锁定确认506。在一些示例中,互操作性智能合约304可以标识一个或者多个数据提供方。数据提供方108可以接收并且验证由数据接收方生成的数字签名。
数据提供方108可以从数据接收方110接收锁定密钥508(920)。数据提供方108可以基于锁定密钥508而对预提交授权进行解密(922)。基于互操作性智能合约304的锁定密钥508和密码逻辑锁定指令504,数据提供方108可以将数据锁定在提供方区块链210上(924)。例如,如参照图7讨论的,密码逻辑锁定指令504可以使数据提供方108响应于接收到预锁定授权704而执行锁定。可以对预锁定授权704进行加密,直到数据接收方110提供了锁定密钥508。数据提供方108可以基于锁定密钥508而对预锁定授权704进行解密。
数据提供方108可以将提交密钥312发送至数据接收方110(926)。例如,数据提供方108可以确定满足互操作性智能合约304的各种先决条件。先决条件可以包括:例如,接收到预提交确认310。在一些示例中,数据提供方108可以基于接收方DLT的参与者的、可用于数据提供方108的公钥,核实由接收方DLT接收到的数字签名。响应于满足互操作性智能合约304的先决条件的确定,数据提供方108可以将提交密钥312传送至数据接收方110。
参照操作927至946,数据接收方110可以与数据提供方108或者提供方DLT网络202的其他参与者通信,以生成令牌数据和/或将令牌数据提交至接收方区块链212。
数据接收方110可以将互操作性智能合约304附加至接收方区块链212(927)。数据接收方110可以接收预提交授权702(928)。在接收到授权之后,数据接收方110可以获取令牌数据(930)。
例如,数据接收方110可以从数据提供方108接收预提交授权702。响应于接收到预提交授权702,数据接收方110可以从数据提供方108接收令牌数据。备选地或者另外,数据接收方110可以访问互操作性智能合约304中所包括的传递逻辑308。数据接收方110可以基于传递逻辑308,生成和/或重新创建令牌数据。
数据接收方110可以将预提交确认310传输至数据提供方108(932)。例如,在接收到和/或重新生成了令牌数据之后,数据接收方110可以生成预提交确认310作为创建证明。备选地或者另外,预提交确认可以包括接收方DLT网络204的一个或者多个参与者的数字签名。这些数字签名可以指示适当地创建了令牌数据和/或将令牌数据附加至区块链的共识。备选地或者另外,数字签名可以指示令牌数据准备好用于提交的共识。
数据提供方110可以生成预锁定授权704(934)。数据提供方110可以对预锁定授权704进行加密(936)。数据接收方110可以将预锁定授权704传送至数据提供方108(938)。例如,数据接收方110可以基于锁定密钥508对预锁定授权704进行加密。由于密码逻辑锁定指令可以访问预锁定授权704以锁定令牌数据,因此,数据接收方110可以控制发生锁定的定时。
数据接收方110可以接收预锁定确认(940)。响应于预锁定确认,数据接收方110可以将锁定密钥508传送至数据提供方108(942)。
例如,预锁定确认可以指示提供方DLT网络202准备好将令牌数据锁定在区块链上。在一些示例中,预锁定确认可以包括提供方DLT网络202的一个或者多个参与者的数字签名。响应于对预锁定确认的核实,数据接收方可以将锁定密钥508供应至数据提供方108。
数据接收方110可以从数据接收方108接收提交密钥312(944)。数据接收方110可以将令牌数据提交至接收方区块链204(946)。例如,数据接收方110可以从互操作性智能合约304访问导出密码逻辑提交306。密码逻辑提交306可以包括被配置为响应于预提交授权702而将令牌数据提交至接收方区块链212的提交逻辑。数据接收方110可以基于提交密钥312对预提交授权702进行解密,并且然后执行提交。
图10图示了DLT网络104的可互操作参与者1002的示例。可互操作参与者1002可以包括参与者服务1004,其使可互操作参与者1002成为DLT网络104的完整节点或者局部节点。DLT网络104可以包括:例如,提供方DLT网络202、接收方DLT网络204或者某个其他DLT网络。参与者层可以按照符合DLT网络104的协议的方式来访问、修改、附加DLT网络104的区块链以及其他参与者或者以其他方式与DLT网络104的区块链以及其他参与者交互。
在一些示例中,互操作性参与者1002可以包括传递启动器1006。该传递启动器1006可以如本文描述地来协调在区块链之间发送和接收数据。例如,传递启动器1006可以包括或者访问数据提供方108和/或数据接收方110。
在一些示例中,互操作性参与者1002可以包括传递验证器1008。该传递验证器1008可以验证在DLT网络之间交换令牌数据。取决于DLT网络104正在发送还是接收令牌数据,传递验证器可以不同地进行验证。例如,传递验证器1008可以授权和/或验证DLT网络104的其他参与者如本文描述的那样从DLT网络104导出或者共享信息。例如,传递验证器1008可以与DLT网络104的多个其他参与者达成授权导出或者共享信息的共识。备选地或者另外,传递验证器1008可以与多个其他参与者达成另一区块链的参与者和/或令牌数据符合互操作性智能合约304的条款、条件、标准和参数的共识。
取决于实现,可互操作参与者1002可以包括参与者服务1004、区块链106、MSP112、传递启动器1006、传递验证器1008、数据提供者108、数据接收方110和/或智能合约工厂802中的一些或者全部。在可互操作参与者1002包括MSP 112和/或智能合约工厂802的示例中,可互操作参与者1002可以是多个DLT网络的节点和/或可以由多个DLT网络可访问。
图11图示了包括处理器1102和存储器1104的系统100的示例。处理器1102可以与存储器1104通信。在一个示例中,处理器1102还可以与附加元件通信,诸如,网络接口(未示出)。处理器1102的示例可以包括通用处理器、中央处理单元、微控制器、服务器、专用集成电路(ASIC)、数字信号处理器、现场可编程门阵列(FPGA)和/或数字电路、模拟电路或者其某种组合。
处理器1102可以是可操作以执行逻辑的一个或者多个设备。逻辑可以包括被存储在存储器1104或者其他存储器中的计算机可执行指令或者计算机代码,该计算机可执行指令或者计算机代码在由处理器1102执行时使处理器1102执行由可互操作参与者1002、参与者服务1004、区块链106、MSP 112、传递启动器1006、数据提供方108、数据接收方110、传递验证器1008、智能合约工厂802和/或系统100的逻辑实现的特征。计算机代码可以包括用处理器1102可执行的指令。
存储器1104可以是用于存储和检索数据的任何设备或者其任何组合。存储器1104可以包括非易失性和/或易失性存储器,诸如,随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM)或者闪速存储器。备选地或者另外,存储器1104可以包括光学数据存储设备、磁数据存储设备(硬盘驱动器)或者任何其他形式的数据存储设备。
存储器1104可以包括以下中的至少一项:可互操作参与者1002、参与者服务1004、区块链106、MSP 112、传递启动器1006、数据提供方108、数据接收方110、传递验证器1008、智能合约工厂802和/或系统100。另外,存储器可以包括先前讨论的任何其他组件或者子组件,诸如,互操作性智能合约304、FSC 302、RSC 502、DLT储存库804、ESC生成器806和/或本文所描述的系统100的其他组件。
可以按照许多不同的方式来实现系统100。例如,系统的每个组件可以包括一个或者多个逻辑组件。每个逻辑组件或者多个逻辑组件可以是硬件或者硬件和软件的组合。(多个)逻辑组件可以包括可互操作参与者1002、参与者服务1004、区块链106、MSP 112、传递启动器1006、数据提供方108、数据接收方110、传递验证器1008、智能合约工厂802、系统100和/或本文所描述的系统100的其他组件和子组件。例如,每个逻辑组件可以包括专用集成电路(ASIC)、现场可编程门阵列(FPGA)、数字逻辑电路、模拟电路、分立电路的组合、门或者任何其他类型的硬件或者其组合。备选地或者另外,每个逻辑组件可以包括存储器硬件,诸如,存储器1104的一部分,例如,该一部分包括用处理器1102或者其他处理器可执行以实现(多个)逻辑组件的特征中的一个或者多个特征的指令。当逻辑组件中的任何一个逻辑组件包括存储器的包括用处理器1102可执行的指令的该部分时,逻辑组件可以包括或者可以不包括处理器1102。在一些示例中,每个逻辑组件可以只是存储器1104或者其他物理存储器的部分,该物理存储器包括用处理器1102或者其他处理器可执行以实现对应的逻辑组件的特征的指令,逻辑组件不包括任何其他硬件。由于即使当所包括的硬件包括软件时,每个逻辑组件也包括至少一些硬件,因此,每个逻辑组件可以互换地被称为硬件电路装置。
一些特征被示出为被存储在计算机可读存储介质中(例如,作为被实现为计算机可执行指令的逻辑或者作为存储器中的数据结构)。系统100的全部或者一部分及其逻辑和数据结构可以被存储在一种或者多种类型的计算机可读存储介质上,被分布在一种或者多种类型的计算机可读存储介质上或者从一种或者多种类型的计算机可读存储介质读取。计算机可读存储介质的示例可以包括硬盘、软盘、CD-ROM、闪存驱动器、高速缓冲存储器、易失性存储器、非易失性存储器、RAM、闪速存储器或者任何其他类型的一种或者多种计算机可读存储介质。计算机可读存储介质可以包括任何类型的非瞬态计算机可读介质,诸如,CD-ROM、易失性存储器、非易失性存储器、ROM、RAM或者任何其他合适的存储设备。
系统100的处理能力可以被分布在多个实体之间,诸如,多个处理器和存储器之间,可选地,包括多个分布式处理系统。参数、数据库以及其他数据结构可以被分离地进行存储和管理,可以被并入单个存储器或者数据库,可以按照许多不同的方式在逻辑上和物理上被组织,并且可以与不同类型的数据结构(诸如,链表、哈希表或者隐式存储机制)一起被实现。逻辑(诸如,程序或者电路装置)可以在多个程序之间被组合或者分开,被分布在若干存储器和处理器上,并且可以被实现在库中,诸如,共享库(例如,动态链接库(DLL))。
无论所描述的具体实现如何,所有讨论本质上都是说明性的,而不是限制性的。例如,虽然实现的所选择的方面、特征或者组件被描绘为被存储在(多个)存储器中,但是系统100或者各个系统的全部或者一部分可以被存储在其他计算机可读存储介质上,被分布在其他计算机可读存储介质上,或者从其他计算机可读存储介质读取,例如辅助存储设备,诸如硬盘、闪存驱动器、软盘和CD-ROM。此外,各种模块、电路装置和屏幕显示功能性只是这种功能性的一个示例,并且包含相似功能性的任何其他配置都是可能的。
可以在计算机可读存储介质上提供用于实现上面所讨论的过程、方法和/或技术的相应逻辑、软件或者指令。响应于被存储在计算机可读介质中或者上的一组或者多组逻辑或者指令,可以执行在图中图示的或者本文描述的功能、动作或者任务。功能、动作或者任务独立于特定类型的指令集、存储介质、处理器或者处理策略,并且可以由单独地或者组合地操作的软件、硬件、集成电路、固件、微代码等执行。同样,处理策略可以包括多处理、多任务处理、并行处理等。在一个示例中,指令被存储在可移除介质设备上以供本地系统或者远程系统读取。在其他示例中,逻辑或者指令被存储在远程位置中以便通过计算机网络或者通过电话线传递。在其他示例中,逻辑或者指令被存储在给定计算机、中央处理单元(“CPU”)、图形处理单元(“GPU”)或者系统内。
此外,虽然上面描述了特定组件,但是本文描述的方法、系统和制品可以包括附加的、更少的或者不同的组件。例如,处理器可以被实现为微处理器、微控制器、专用集成电路(ASIC)、分立逻辑或者其他类型的电路或者逻辑的组合。类似地,存储器可以是DRAM、SRAM、闪存或者任何其他类型的存储器。标志、数据、数据库、表、实体以及其他数据结构可以被分离地进行存储和管理,可以被并入单个存储器或者数据库,可以是分布式的,或者可以按照许多不同的方式在逻辑上和物理上被组织。组件可以独立地操作或者是执行相同程序或者不同程序的同一装置的一部分。组件可以驻留在分离的硬件(诸如,分离的可移除电路板)上,或者共享共同硬件(诸如,用于实现来自存储器的指令的相同存储器和处理器)。程序可以是单个程序的部分、分离的程序或者被分布在多个存储器和处理器上。
可以称第二动作“响应于”第一动作,而不管第二动作是直接地还是间接地由于第一动作而产生。第二动作可以比第一动作在晚很多的时间发生,但是仍然响应于第一动作。类似地,即使在第一动作与第二动作之间发生干预动作并且即使干预动作中的一个或者多个干预动作直接引起执行第二动作,也可以称第二动作响应于第一动作。例如,如果第一动作设置标志,则第二动作可以响应于第一动作,并且每当设置了标志时,第三动作稍后发起第二动作。
为了阐明使用通知以及以此向公众提供通知,本申请人在最广泛的意义上定义短语“<A>、<B>、...和<N>中的至少一个”或者“<A>、<B>、...<N>或者其组合中的至少一个”或者“<A>、<B>、...和/或<N>”,替代在上文中或者在下文中的任何其他隐含定义,除非本申请人明确相反声明,否则意味着选自包括A、B、...和N的组的一个或者多个元素。换言之,这些短语是指元件A、B、...或者N中的一个或者多个的任何组合,包括单独的任何一个元素或者与一个或者多个其他元素结合的一个元素,这些其他元素还可以组合地包括未列出的附加元素。
虽然已经描述了各个实施例,但是对于本领域的普通技术人员而言将明显的是,更多的实施例和实现是可能的。因此,本文所描述的实施例是示例,而不是唯一可能的实施例和实现。
在一些示例中,此处所描述的系统和方法可以涉及以下方面:
1.一种方法,包括:
向提供方区块链附加包括密码逻辑提交的互操作性智能合约,密码逻辑提交包括提交逻辑,该提交逻辑被配置为使数据接收方基于预提交授权向接收方区块链提交令牌数据;
基于预定提交密钥对预提交授权进行加密,以向接收方区块链传递被存储在提供方区块链上的令牌数据;
向数据接收方发送预提交授权;
在发送预提交授权之后,接收预提交授权的预提交确认;以及
响应于预提交确认:
响应于令牌数据被附加至接收方区块链的核实,将令牌数据锁定在提供方区块链上,以及
向数据接收方发送预定提交密钥,该数据接收方被配置为:基于由预定提交密钥进行解密的预提交授权执行提交逻辑,并且基于提交逻辑将令牌数据提交至接收方区块链。
2.根据方面1的方法,其中互操作性智能合约还包括密码逻辑锁定指令,该密码逻辑锁定指令被配置为:使数据接收方基于预锁定授权将令牌数据锁定在提供方区块链上,其中将令牌数据锁定在提供方区块链上还包括:
从数据接收方接收预锁定授权;以及
基于密码逻辑锁定指令和预锁定授权,锁定令牌数据。
3.根据方面1至2中任一项的方法,其中预锁定授权基于用于数据接收方的预定锁定密钥而被加密,该方法还包括:
从数据接收方接收预定锁定密钥;以及
基于所接收到的预定锁定密钥,对预锁定授权进行解密。
4.根据方面1至3中任一项的方法,其中提供方区块链符合第一分布式账本技术,并且接收方区块链符合第二分布式账本技术,该方法还包括:
访问智能合约工厂,该智能合约工厂包括与相应的分布式账本技术相关联的DLT逻辑;
从DLT逻辑中选择密码逻辑提交;以及
生成互操作性智能合约,其中互操作性智能合约包括密码逻辑提交。
5.根据方面1至4中任一项的方法,其中响应于令牌数据被附加至接收方区块链的核实将令牌数据锁定在提供方区块链上还包括:
向提供方区块链附加第二数据块,该第二数据块包括被存储在提供方区块链上的令牌数据的标识符和被存储在提供方区块链中的分离的数据块的哈希。
6.根据方面1至5中任一项的方法,其中互操作性智能合约还包括传递逻辑,该传递逻辑定义用于接收方区块链的针对令牌数据的数据结构,该方法还包括:
从数据接收方接收对令牌数据的请求;以及
基于数据结构重新创建令牌数据;以及
响应于该请求的接收,将重新创建的令牌数据传送至数据接收方。
7.根据方面1至6中任一项的方法,其中提供方区块链符合第一分布式账本技术,并且接收方区块链符合第二分布式账本技术,该方法还包括:
接收第二分布式账本技术的一个或者多个参与者的数字签名,这些数字签名指示令牌数据被附加至接收方区块链;以及
基于一个或者多个参与者的相应公钥核实数字签名。
8.一种系统,包括:
处理器,该处理器被配置为:
向提供方区块链附加包括密码逻辑提交的互操作性智能合约,密码逻辑提交包括提交逻辑,该提交逻辑被配置为使数据接收方基于预提交授权向接收方区块链提交令牌数据;
基于预定提交密钥对预提交授权进行加密,以向接收方区块链传递被存储在提供方区块链上的令牌数据;
向数据接收方传输预提交授权;
在预提交授权的传输之后,接收预提交授权的预提交确认;以及
响应于预提交确认:
响应于令牌数据被附加至接收方区块链的核实,将令牌数据锁定在提供方区块链上,并且
向数据接收方发送预定提交密钥,该数据接收方被配置为:
基于由预定提交密钥进行解密的预提交授权执行提交逻辑,并且
基于提交逻辑将令牌数据提交至接收方区块链。
9.根据方面8的系统,其中互操作性智能合约还包括密码锁定指令,该密码锁定指令被配置为:使数据接收方基于预锁定授权将令牌数据锁定在提供方区块链上,其中为了将令牌数据锁定在提供方区块链上,该处理器还被配置为:
从数据接收方接收预锁定授权;以及
基于密码逻辑锁定指令和预锁定授权,锁定令牌数据。
10.根据方面8至9中任一项的系统,其中预锁定授权基于用于数据接收方的预定锁定密钥而被加密,其中该处理器还被配置为:
从数据接收方接收预定锁定密钥;以及
基于所接收到的预定锁定密钥,对预锁定授权进行解密。
11.根据方面8至10中任一项的系统,其中提供方区块链符合第一分布式账本技术,并且接收方区块链符合第二分布式账本技术,其中该处理器还被配置为:
访问智能合约工厂,该智能合约工厂包括与相应的分布式账本技术相关联的DLT逻辑;
从DLT逻辑中选择密码逻辑提交;并且
生成互操作性智能合约,其中互操作性智能合约包括密码逻辑提交。
12.根据方面8至11中任一项的系统,其中为了响应于令牌数据被附加至接收方区块链的核实将令牌数据锁定在提供方区块链上,该处理器还被配置为:
向提供方区块链附加第二数据块,该第二数据块包括被存储在提供方区块链上的令牌数据的标识符和被存储在提供方区块链中的分离的数据块的哈希。
13.根据方面8至12中任一项的系统,其中互操作性智能合约还包括传递逻辑,该传递逻辑定义用于接收方区块链的针对令牌数据的数据结构,其中该处理器还被配置为:
从数据接收方接收对令牌数据的请求;以及
基于数据结构重新创建令牌数据;以及
响应于该请求的接收,将重新创建的令牌数据传送至数据接收方。
14.根据方面8至13中任一项的系统,其中提供方区块链符合第一分布式账本技术,并且接收方区块链符合第二分布式账本技术,其中,该处理器还被配置为:
接收第二分布式账本技术的一个或者多个参与者的数字签名,这些数字签名指示令牌数据被附加至接收方区块链;以及
基于一个或者多个参与者的相应公钥核实数字签名。
15.一种非瞬态计算机可读存储介质,包括:
由处理器可执行的多个指令,这些指令包括使处理器进行以下操作的指令:
接收加密的预提交授权,以向接收方区块链传递被存储在提供方区块链上的令牌数据;
从接收方区块链访问包括密码逻辑提交的互操作性智能合约,密码逻辑提交包括提交逻辑,该提交逻辑被配置为引起基于预提交授权的、令牌数据向接收方区块链的提交;
生成令牌数据;
响应于令牌数据的生成,向数据提供方传输预提交确认;并且
在预提交授权的传输之后:
从数据提供方接收提交密钥,
对预提交授权进行解密,并且
基于所解密的预提交授权和密码逻辑提交,将令牌数据提交至接收方区块链。
16.根据方面15的非瞬态计算机可读存储介质,其中由处理器可执行以将令牌数据提交至接收方区块链的该指令还使处理器:
向接收方区块链附加数据块,该数据块指示令牌数据向接收方区块链的提交,该数据块还包括接收方区块链上的前一数据块的哈希。
17.根据权利要求15至16中任一项的非瞬态计算机可读存储介质,其中由处理器可执行的指令还使处理器:
访问智能合约工厂,该智能合约工厂包括与相应的分布式账本技术相关联的DLT逻辑;
从DLT逻辑中选择密码逻辑提交;并且
生成互操作性智能合约,其中互操作性智能合约包括密码逻辑提交。
18.根据方面15至17中任一项的非瞬态计算机可读存储介质,其中由处理器可执行的指令还使处理器:
向数据提供方生成预锁定授权,该预锁定授权包括将令牌数据锁定在提供方区块链上的授权;
基于锁定密钥对预锁定授权进行加密;
将预锁定授权传送至数据提供方;
从数据提供方接收预锁定确认;以及
将锁定密钥传送至数据提供方,以对预锁定授权进行解密。
19.根据方面15至18中任一项的非瞬态计算机可读存储介质,其中由处理器可执行的指令还使处理器:
接收互操作性智能合约;并且
向接收方区块链附加数据块,该数据块包括互操作性智能合约和接收方区块链上的分离的数据块的哈希。
20.根据方面15至19中任一项的非瞬态计算机可读存储介质,其中互操作性智能合约包括定义用于接收方区块链的数据结构的传递逻辑;其中由处理器可执行以生成令牌数据的这些指令还使处理器:
向数据提供方传送对令牌数据的请求;
从数据提供方接收令牌数据;
基于在传递逻辑中被定义的数据结构,重新创建令牌数据;以及
向接收方区块链附加数据块,该数据块包括重新创建的令牌数据的至少一部分和接收方区块链上的前一数据块的至少一部分的哈希。
Claims (20)
1.一种方法,包括:
向提供方区块链附加包括密码逻辑提交的互操作性智能合约,所述密码逻辑提交包括提交逻辑,所述提交逻辑被配置为使数据接收方基于预提交授权向接收方区块链提交令牌数据;
基于预定提交密钥对所述预提交授权进行加密,以向所述接收方区块链传递被存储在所述提供方区块链上的令牌数据;
向所述数据接收方发送所述预提交授权;
在发送所述预提交授权之后,接收所述预提交授权的预提交确认;以及
响应于所述预提交确认:
响应于所述令牌数据被附加至所述接收方区块链的核实,将所述令牌数据锁定在所述提供方区块链上,以及
向所述数据接收方发送所述预定提交密钥,所述数据接收方被配置为:基于由所述预定提交密钥进行解密的所述预提交授权执行所述提交逻辑,并且基于所述提交逻辑将所述令牌数据提交至所述接收方区块链。
2.根据权利要求1所述的方法,其中所述互操作性智能合约还包括密码逻辑锁定指令,所述密码逻辑锁定指令被配置为:使所述数据接收方基于预锁定授权将所述令牌数据锁定在所述提供方区块链上,其中将所述令牌数据锁定在所述提供方区块链上还包括:
从所述数据接收方接收所述预锁定授权;以及
基于所述密码逻辑锁定指令和所述预锁定授权,锁定所述令牌数据。
3.根据权利要求2所述的方法,其中所述预锁定授权基于用于所述数据接收方的预定锁定密钥而被加密,所述方法还包括:
从所述数据接收方接收所述预定锁定密钥;以及
基于所接收到的所述预定锁定密钥,对所述预锁定授权进行解密。
4.根据权利要求1所述的方法,其中所述提供方区块链符合第一分布式账本技术,并且所述接收方区块链符合第二分布式账本技术,所述方法还包括:
访问智能合约工厂,所述智能合约工厂包括与相应的分布式账本技术相关联的DLT逻辑;
从所述DLT逻辑中选择所述密码逻辑提交;以及
生成所述互操作性智能合约,其中所述互操作性智能合约包括所述密码逻辑提交。
5.根据权利要求1所述的方法,其中响应于所述令牌数据被附加至所述接收方区块链的核实将所述令牌数据锁定在所述提供方区块链上还包括:
向所述提供方区块链附加第二数据块,所述第二数据块包括被存储在所述提供方区块链上的令牌数据的标识符和被存储在所述提供方区块链中的分离的数据块的哈希。
6.根据权利要求1所述的方法,其中所述互操作性智能合约还包括传递逻辑,所述传递逻辑定义用于所述接收方区块链的针对所述令牌数据的数据结构,所述方法还包括:
从所述数据接收方接收对所述令牌数据的请求;以及
基于所述数据结构重新创建所述令牌数据;以及
响应于所述请求的接收,将重新创建的所述令牌数据传送至所述数据接收方。
7.根据权利要求1所述的方法,其中所述提供方区块链符合第一分布式账本技术,并且所述接收方区块链符合第二分布式账本技术,所述方法还包括:
接收所述第二分布式账本技术的一个或者多个参与者的数字签名,所述数字签名指示所述令牌数据被附加至所述接收方区块链;以及
基于所述一个或者多个参与者的相应公钥核实所述数字签名。
8.一种系统,包括:
处理器,所述处理器被配置为:
向提供方区块链附加包括密码逻辑提交的互操作性智能合约,所述密码逻辑提交包括提交逻辑,所述提交逻辑被配置为使数据接收方基于预提交授权向接收方区块链提交令牌数据;
基于预定提交密钥对所述预提交授权进行加密,以向所述接收方区块链传递被存储在所述提供方区块链上的令牌数据;
向所述数据接收方传输所述预提交授权;
在所述预提交授权的传输之后,接收所述预提交授权的预提交确认;并且
响应于所述预提交确认:
响应于所述令牌数据被附加至所述接收方区块链的核实,将所述令牌数据锁定在所述提供方区块链上,并且
向所述数据接收方发送所述预定提交密钥,所述数据接收方被配置为:基于由所述预定提交密钥进行解密的所述预提交授权执行所述提交逻辑,并且基于所述提交逻辑将所述令牌数据提交至所述接收方区块链。
9.根据权利要求8所述的方法,其中所述互操作性智能合约还包括密码逻辑锁定指令,所述密码逻辑锁定指令被配置为:使所述数据接收方基于预锁定授权将所述令牌数据锁定在所述提供方区块链上,其中为了将所述令牌数据锁定在所述提供方区块链上,所述处理器还被配置为:
从所述数据接收方接收所述预锁定授权;以及
基于所述密码逻辑锁定指令和所述预锁定授权,锁定所述令牌数据。
10.根据权利要求9所述的系统,其中所述预锁定授权基于用于所述数据接收方的预定锁定密钥而被加密,其中所述处理器被还被配置为:
从所述数据接收方接收所述预定锁定密钥;以及
基于所接收到的所述预定锁定密钥,对所述预锁定授权进行解密。
11.根据权利要求8所述的系统,其中所述提供方区块链符合第一分布式账本技术,并且所述接收方区块链符合第二分布式账本技术,其中所述处理器还被配置为:
访问智能合约工厂,所述智能合约工厂包括与相应的分布式账本技术相关联的DLT逻辑;
从所述DLT逻辑中选择所述密码逻辑提交;以及
生成所述互操作性智能合约,其中所述互操作性智能合约包括所述密码逻辑提交。
12.根据权利要求8所述的系统,其中为了响应于所述令牌数据被附加至所述接收方区块链的核实将所述令牌数据锁定在所述提供方区块链上,所述处理器还被配置为:
向所述提供方区块链附加第二数据块,所述第二数据块包括被存储在所述提供方区块链上的令牌数据的标识符和被存储在所述提供方区块链中的分离的数据块的哈希。
13.根据权利要求8所述的系统,其中所述互操作性智能合约还包括传递逻辑,所述传递逻辑定义用于所述接收方区块链的针对所述令牌数据的数据结构,其中所述处理器还被配置为:
从所述数据接收方接收对所述令牌数据的请求;以及
基于所述数据结构重新创建所述令牌数据;以及
响应于所述请求的接收,将重新创建的所述令牌数据传送至所述数据接收方。
14.根据权利要求8所述的系统,其中所述提供方区块链符合第一分布式账本技术,并且所述接收方区块链符合第二分布式账本技术,其中所述处理器还被配置为:
接收所述第二分布式账本技术的一个或者多个参与者的数字签名,所述数字签名指示所述令牌数据被附加至所述接收方区块链;以及
基于所述一个或者多个参与者的相应公钥核实所述数字签名。
15.一种非瞬态计算机可读存储介质,包括:
由处理器可执行的多个指令,所述指令包括使所述处理器进行以下操作的指令:
接收加密的预提交授权,以向接收方区块链传递被存储在提供方区块链上的令牌数据;
从所述接收方区块链访问包括密码逻辑提交的互操作性智能合约,所述密码逻辑提交包括提交逻辑,所述提交逻辑被配置为引起基于所述预提交授权的、所述令牌数据向所述接收方区块链的提交;
生成所述令牌数据;
响应于所述令牌数据的生成,向数据提供方传输预提交确认;并且
在所述预提交授权的传输之后:
从所述数据提供方接收提交密钥,
对所述预提交授权进行解密,并且
基于所解密的所述预提交授权和所述密码逻辑提交,将所述令牌数据提交至所述接收方区块链。
16.根据权利要求15所述的非瞬态计算机可读存储介质,其中由所述处理器可执行以将所述令牌数据提交至所述接收方区块链的所述指令还使所述处理器:
向所述接收方区块链附加数据块,所述数据块指示所述令牌数据向所述接收方区块链的所述提交,所述数据块还包括所述接收方区块链上的前一数据块的哈希。
17.根据权利要求15所述的非瞬态计算机可读存储介质,其中由所述处理器可执行的所述指令还使所述处理器:
访问智能合约工厂,所述智能合约工厂包括与相应的分布式账本技术相关联的DLT逻辑;
从所述DLT逻辑中选择所述密码逻辑提交;并且
生成所述互操作性智能合约,其中所述互操作性智能合约包括所述密码逻辑提交。
18.根据权利要求15所述的非瞬态计算机可读存储介质,其中由所述处理器可执行的所述指令还使所述处理器:
向所述数据提供方生成预锁定授权,所述预锁定授权包括将所述令牌数据锁定在所述提供方区块链上的授权;
基于锁定密钥对所述预锁定授权进行加密;
将所述预锁定授权传送至所述数据提供方;
从所述数据提供方接收预锁定确认;以及
将所述锁定密钥传送至所述数据提供方,以对所述预锁定授权进行解密。
19.根据权利要求15所述的非瞬态计算机可读存储介质,其中由所述处理器可执行的所述指令还使所述处理器:
接收所述互操作性智能合约;并且
向所述接收方区块链附加数据块,所述数据块包括所述互操作性智能合约和所述接收方区块链上的分离的数据块的哈希。
20.根据权利要求15所述的非瞬态计算机可读存储介质,其中所述互操作性智能合约包括定义用于所述接收方区块链的数据结构的传递逻辑;其中由所述处理器可执行以生成所述令牌数据的所述指令还使所述处理器:
向所述数据提供方传送对所述令牌数据的请求;
从所述数据提供方接收所述令牌数据;
基于在所述传递逻辑中被定义的所述数据结构,重新创建所述令牌数据;以及
向所述接收方区块链附加数据块,所述数据块包括重新创建的所述令牌数据的至少一部分和所述接收方区块链上的前一数据块的至少一部分的哈希。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/136,700 US10250394B1 (en) | 2018-09-20 | 2018-09-20 | Cryptologic self-executing blockchain export commitment |
US16/136,700 | 2018-09-20 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110933020A true CN110933020A (zh) | 2020-03-27 |
CN110933020B CN110933020B (zh) | 2022-02-08 |
Family
ID=65898570
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910810052.8A Active CN110933020B (zh) | 2018-09-20 | 2019-08-29 | 密码逻辑自执行区块链导出提交 |
Country Status (3)
Country | Link |
---|---|
US (2) | US10250394B1 (zh) |
EP (1) | EP3627373B1 (zh) |
CN (1) | CN110933020B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112134879A (zh) * | 2020-09-21 | 2020-12-25 | 国网安徽省电力有限公司池州供电公司 | 一种基于区块链智能合约的授权方法 |
CN114285552A (zh) * | 2021-12-09 | 2022-04-05 | 上海简苏网络科技有限公司 | 基于区块链的n次方投票方法及装置 |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10298585B1 (en) | 2018-01-26 | 2019-05-21 | Accenture Global Solutions Limited | Blockchain interoperability |
US10721065B2 (en) | 2018-03-29 | 2020-07-21 | Accenture Global Solutions Limited | Active state blockchain synchronization |
US10880074B2 (en) | 2018-10-15 | 2020-12-29 | Adobe Inc. | Smart contract platform for generating and customizing smart contracts |
WO2020206180A1 (en) * | 2019-04-02 | 2020-10-08 | Nusantao, Inc. | Managing access to data and managing operations performed by applications |
US10999283B2 (en) * | 2019-04-15 | 2021-05-04 | Advanced New Technologies Co., Ltd. | Addressing transaction conflict in blockchain systems |
US11201726B2 (en) * | 2019-05-02 | 2021-12-14 | International Business Machines Corporation | Multi-layered image encoding for data block |
US10536537B1 (en) * | 2019-06-13 | 2020-01-14 | Accenture Global Solutions Limited | Multi-source deterministic oracle management |
CN110598420B (zh) * | 2019-09-17 | 2022-03-01 | 北京丁牛科技有限公司 | 一种跨文件智能合约可重入漏洞防御方法及装置 |
US11196570B2 (en) | 2019-10-07 | 2021-12-07 | Accenture Global Solutions Limited | Cryptologic blockchain interoperability membership system |
CN111144884A (zh) * | 2019-12-16 | 2020-05-12 | 湖南大学 | 基于区块链进行信用证项下进口押汇的方法、存储介质 |
US11882222B2 (en) | 2020-07-23 | 2024-01-23 | The Toronto-Dominion Bank | Multidirectional synchronization of confidential data using distributed ledgers |
US11275726B1 (en) * | 2020-12-06 | 2022-03-15 | Kamu Data Inc. | Distributed data processing method with complete provenance and reproducibility |
US20220276996A1 (en) * | 2021-02-27 | 2022-09-01 | International Business Machines Corporation | Assessment node and token assessment container |
CN113660308B (zh) * | 2021-07-20 | 2022-07-08 | 同济大学 | 一种基于密码承诺的二进制智能合约审核方法 |
CN113689217A (zh) * | 2021-10-26 | 2021-11-23 | 支付宝(杭州)信息技术有限公司 | 区块链交易方法及装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150170112A1 (en) * | 2013-10-04 | 2015-06-18 | Erly Dalvo DeCastro | Systems and methods for providing multi-currency platforms comprising means for exchanging and interconverting tangible and virtual currencies in various transactions, banking operations, and wealth management scenarios |
US20170155515A1 (en) * | 2015-11-26 | 2017-06-01 | International Business Machines Corporation | System, method, and computer program product for privacy-preserving transaction validation mechanisms for smart contracts that are included in a ledger |
CN106897879A (zh) * | 2017-03-06 | 2017-06-27 | 广东工业大学 | 基于pki‑clc异构聚合签密算法的区块链加密方法 |
CN107566117A (zh) * | 2017-07-14 | 2018-01-09 | 浙商银行股份有限公司 | 一种区块链密钥管理系统及方法 |
CN108418680A (zh) * | 2017-09-05 | 2018-08-17 | 矩阵元技术(深圳)有限公司 | 一种基于多方安全计算技术的区块链密钥恢复方法、介质 |
Family Cites Families (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11023968B2 (en) | 2015-03-05 | 2021-06-01 | Goldman Sachs & Co. LLC | Systems and methods for updating a distributed ledger based on partial validations of transactions |
US10812274B2 (en) | 2015-05-07 | 2020-10-20 | Blockstream Corporation | Transferring ledger assets between blockchains via pegged sidechains |
US20170243193A1 (en) * | 2016-02-18 | 2017-08-24 | Skuchain, Inc. | Hybrid blockchain |
US10387878B2 (en) * | 2016-02-22 | 2019-08-20 | Bank Of America Corporation | System for tracking transfer of resources in a process data network |
US10937069B2 (en) | 2016-04-13 | 2021-03-02 | Paypal, Inc. | Public ledger authentication system |
US10532268B2 (en) * | 2016-05-02 | 2020-01-14 | Bao Tran | Smart device |
US20170331896A1 (en) * | 2016-05-13 | 2017-11-16 | De La Rue International Limited | Methods and systems for processing assets |
US10108954B2 (en) | 2016-06-24 | 2018-10-23 | PokitDok, Inc. | System and method for cryptographically verified data driven contracts |
US10445698B2 (en) * | 2016-06-30 | 2019-10-15 | Clause, Inc. | System and method for forming, storing, managing, and executing contracts |
US10700853B2 (en) | 2016-07-12 | 2020-06-30 | International Business Machines Corporation | Token identity and attribute management |
US10713731B2 (en) * | 2016-07-22 | 2020-07-14 | Nec Corporation | Method for secure ledger distribution and computer system using secure distributed ledger technology |
US10185550B2 (en) * | 2016-09-28 | 2019-01-22 | Mcafee, Inc. | Device-driven auto-recovery using multiple recovery sources |
US10749684B2 (en) | 2016-09-30 | 2020-08-18 | Entrust, Inc. | Methods and apparatus for providing blockchain participant identity binding |
US10387684B2 (en) | 2016-12-09 | 2019-08-20 | International Business Machines Corporation | Interlocked blockchains to increase blockchain security |
US11631077B2 (en) | 2017-01-17 | 2023-04-18 | HashLynx Inc. | System for facilitating secure electronic communications between entities and processing resource transfers |
US20180285996A1 (en) * | 2017-04-03 | 2018-10-04 | FutureLab Consulting Inc. | Methods and system for managing intellectual property using a blockchain |
US10102265B1 (en) * | 2017-04-12 | 2018-10-16 | Vijay K. Madisetti | Method and system for tuning blockchain scalability for fast and low-cost payment and transaction processing |
US10176308B2 (en) | 2017-04-28 | 2019-01-08 | Accenture Global Solutions Limited | Entitlement management system |
US20190050855A1 (en) * | 2017-07-24 | 2019-02-14 | William Martino | Blockchain-based systems, methods, and apparatus for securing access to information stores |
WO2019142049A1 (en) * | 2018-01-17 | 2019-07-25 | Geeq Corporation | Blockchain methods, nodes, systems and products |
US10721065B2 (en) * | 2018-03-29 | 2020-07-21 | Accenture Global Solutions Limited | Active state blockchain synchronization |
US10686799B2 (en) * | 2018-04-30 | 2020-06-16 | EMC IP Holding Company LLC | Blockchain-based method and system for providing tenant security and compliance in a cloud computing environment |
US11700132B2 (en) * | 2018-05-02 | 2023-07-11 | Cable Television Laboratories, Inc. | Systems and methods for secure event and log management |
US11169985B2 (en) * | 2018-07-27 | 2021-11-09 | Oracle International Corporation | System and method for supporting SQL-based rich queries in hyperledger fabric blockchains |
US11240000B2 (en) * | 2018-08-07 | 2022-02-01 | International Business Machines Corporation | Preservation of uniqueness and integrity of a digital asset |
US11875400B2 (en) * | 2019-01-31 | 2024-01-16 | Salesforce, Inc. | Systems, methods, and apparatuses for dynamically assigning nodes to a group within blockchains based on transaction type and node intelligence using distributed ledger technology (DLT) |
CA3149850A1 (en) * | 2019-09-06 | 2021-03-11 | Rosario M. Ingargiola | System and method of providing a blockchain-based recordation process |
-
2018
- 2018-09-20 US US16/136,700 patent/US10250394B1/en active Active
-
2019
- 2019-02-14 US US16/276,274 patent/US11108564B2/en active Active
- 2019-08-20 EP EP19192511.4A patent/EP3627373B1/en active Active
- 2019-08-29 CN CN201910810052.8A patent/CN110933020B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150170112A1 (en) * | 2013-10-04 | 2015-06-18 | Erly Dalvo DeCastro | Systems and methods for providing multi-currency platforms comprising means for exchanging and interconverting tangible and virtual currencies in various transactions, banking operations, and wealth management scenarios |
US20170155515A1 (en) * | 2015-11-26 | 2017-06-01 | International Business Machines Corporation | System, method, and computer program product for privacy-preserving transaction validation mechanisms for smart contracts that are included in a ledger |
CN106897879A (zh) * | 2017-03-06 | 2017-06-27 | 广东工业大学 | 基于pki‑clc异构聚合签密算法的区块链加密方法 |
CN107566117A (zh) * | 2017-07-14 | 2018-01-09 | 浙商银行股份有限公司 | 一种区块链密钥管理系统及方法 |
CN108418680A (zh) * | 2017-09-05 | 2018-08-17 | 矩阵元技术(深圳)有限公司 | 一种基于多方安全计算技术的区块链密钥恢复方法、介质 |
Non-Patent Citations (1)
Title |
---|
KAN LOU ET AL: "A Multiple Blockchains Architecture on Inter-Blockchain Communication", 《2018 IEEE INTERNATIONAL CONFERENCE ON SOFTWARE QUALITY,RELIABILITY AND SECURITY COMPANION(QRS-C),IEEE》 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112134879A (zh) * | 2020-09-21 | 2020-12-25 | 国网安徽省电力有限公司池州供电公司 | 一种基于区块链智能合约的授权方法 |
CN112134879B (zh) * | 2020-09-21 | 2022-08-30 | 国网安徽省电力有限公司池州供电公司 | 一种基于区块链智能合约的授权方法 |
CN114285552A (zh) * | 2021-12-09 | 2022-04-05 | 上海简苏网络科技有限公司 | 基于区块链的n次方投票方法及装置 |
CN114285552B (zh) * | 2021-12-09 | 2023-08-22 | 上海简苏网络科技有限公司 | 基于区块链的n次方投票方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
EP3627373B1 (en) | 2020-09-30 |
US11108564B2 (en) | 2021-08-31 |
CN110933020B (zh) | 2022-02-08 |
EP3627373A1 (en) | 2020-03-25 |
US10250394B1 (en) | 2019-04-02 |
US20200099533A1 (en) | 2020-03-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110933020B (zh) | 密码逻辑自执行区块链导出提交 | |
CN110875821B (zh) | 密码学区块链互操作 | |
CN111144881B (zh) | 对资产转移数据的选择性访问 | |
US20230070963A1 (en) | Blockchain-implemented method for control and distribution of digital content | |
CN111159288B (zh) | 链式结构数据存储、验证、实现方法、系统、装置及介质 | |
CN110602138B (zh) | 区块链网络的数据处理方法、装置、电子设备及存储介质 | |
US11128522B2 (en) | Changing a master node in a blockchain system | |
US11238543B2 (en) | Payroll based blockchain identity | |
JP2022123070A (ja) | ブロックチェーンにより実現される方法及びシステム | |
US11128470B2 (en) | Methods and systems for automatic blockchain deployment based on cloud platform | |
CN112492006A (zh) | 一种基于区块链的节点管理方法和装置 | |
CN111797159A (zh) | 数据库中的信息管理和访问控制 | |
CN113328997B (zh) | 联盟链跨链系统及方法 | |
TW202025665A (zh) | 用以移轉數位資源存取權之電腦實施系統及方法 | |
CN111466098B (zh) | 用于盲性结果选择的区块链实现的安全系统和方法 | |
EP3806385B1 (en) | Cryptologic blockchain interoperability membership system | |
CN111625869A (zh) | 数据处理方法及数据处理装置 | |
CN114240433A (zh) | 基于区块链的数据处理方法及系统 | |
WO2022227799A1 (zh) | 设备注册方法及装置、计算机设备、存储介质 | |
TW202135504A (zh) | 平台服務驗證技術 | |
EP4287560A1 (en) | Encryption and decryption of transactions of a distributed ledger | |
Qiao | Group Signatures for Preserving Anonymity in Blockchain Supply Chain Transactions |
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 |