CN116827516A - 用于确定机器可执行合约的状态的计算机实现系统和方法 - Google Patents
用于确定机器可执行合约的状态的计算机实现系统和方法 Download PDFInfo
- Publication number
- CN116827516A CN116827516A CN202310845710.3A CN202310845710A CN116827516A CN 116827516 A CN116827516 A CN 116827516A CN 202310845710 A CN202310845710 A CN 202310845710A CN 116827516 A CN116827516 A CN 116827516A
- Authority
- CN
- China
- Prior art keywords
- information
- script
- blockchain
- state
- phase
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 71
- 238000013515 script Methods 0.000 claims abstract description 89
- 238000010276 construction Methods 0.000 claims description 20
- 238000013507 mapping Methods 0.000 abstract description 15
- 238000004422 calculation algorithm Methods 0.000 abstract description 8
- 239000003795 chemical substances by application Substances 0.000 description 33
- 230000008569 process Effects 0.000 description 12
- 238000006243 chemical reaction Methods 0.000 description 6
- 238000009795 derivation Methods 0.000 description 6
- 230000015572 biosynthetic process Effects 0.000 description 5
- 230000007704 transition Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 238000012546 transfer Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 2
- 101150014330 dfa2 gene Proteins 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 239000012634 fragment Substances 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 241001522296 Erithacus rubecula Species 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 229910001092 metal group alloy Inorganic materials 0.000 description 1
- 238000005065 mining Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/30—Payment architectures, schemes or protocols characterised by the use of specific devices or networks
- G06Q20/36—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes
- G06Q20/367—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes involving electronic purses or money safes
- G06Q20/3678—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes involving electronic purses or money safes e-cash details, e.g. blinded, divisible or detecting double spending
-
- 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
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
- G06Q10/103—Workflow collaboration or project management
-
- 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
- G06F16/1834—Distributed file systems implemented based on peer-to-peer networks, e.g. gnutella
- G06F16/1837—Management specially adapted to peer-to-peer storage networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
- G06F16/9024—Graphs; Linked lists
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/04—Payment circuits
- G06Q20/06—Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
- G06Q20/065—Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash
- G06Q20/0658—Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash e-cash managed locally
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/40—Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
- G06Q20/405—Establishing or using transaction specific rules
-
- 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/0618—Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
- H04L9/0637—Modes of operation, e.g. cipher block chaining [CBC], electronic codebook [ECB] or Galois/counter mode [GCM]
-
- 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
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q2220/00—Business processing using cryptography
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/56—Financial cryptography, e.g. electronic payment or e-cash
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Theoretical Computer Science (AREA)
- Strategic Management (AREA)
- Computer Security & Cryptography (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Human Resources & Organizations (AREA)
- Finance (AREA)
- General Business, Economics & Management (AREA)
- Signal Processing (AREA)
- Data Mining & Analysis (AREA)
- Entrepreneurship & Innovation (AREA)
- Economics (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- Marketing (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- Development Economics (AREA)
- Software Systems (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
详细描述了计算机实现的系统和方法,用于建立关于机器可执行合约的状态的信息。这些阶段可以包括确定感兴趣的信息和识别该信息的代码或标签,构建与这些代码或标签相关联的元数据,将其与将与该信息相关联的代理的公钥相结合。每个脚本的脚本公钥值可以用来提供密钥,用于构建外部数据库,并且更具体地,从链接到感兴趣的信息的脚本公钥值映射密钥。为了获得该组合的另一半,从脚本公钥值中导出脚本散列地址,这些地址用于填充数字钱包。然后使用搜索和匹配算法来查找区块链上具有匹配脚本散列地址的UTXO。然后,用UTXO填充上述数据库,这些UTXO与脚本散列地址相匹配,并因此与密钥相匹配,以完成组合。匹配以明确的方式指示状态。
Description
技术领域
本发明总体上涉及诸如计算机实现的系统和方法等系统,更具体地,涉及用于建立状态信息的计算机实现的系统和方法。本发明特别适用于合约的区块链和确定性有限自动机(DFA)的实现以及确定其中的状态。
背景技术
在本文件中,我们使用“区块链”一词来包括所有形式的电子的、基于计算机的分布式分类账。这些包括,但不限于,区块链和交易链技术、许可和未经许可的分类帐、共享分类账及其变体。尽管也提出和开发了其他区块链实现方式,但是区块链技术最广为人知的应用是加密货币分类账。虽然出于方便和说明的目的,在本文提及了加密货币,但是应当注意,本发明不限于与加密货币区块链一起使用,替代的区块链实现和协议落入本发明的范围内。
区块链是基于共识的电子分类帐,该电子分类帐被实现为基于计算机的、去中心化的分布式系统,由区块构成,而区块又由交易组成。每一交易是一种数据结构,对区块链系统中的参与者之间的数字资产的控制权转移进行编码,并且包括至少一个输入和至少一个输出。每个区块都包含前一个区块的散列,这样区块就会链接在一起,以创建自区块链创建以来写入区块链的所有交易的永久的、不可更改的记录。交易包含被称为脚本的小程序,这些小程序嵌入到其输入和输出中,这些小程序指定了如何以及由谁来访问交易的输出。在加密货币平台上,使用基于堆栈的脚本语言编写这些脚本。
为了将交易写入区块链,必须对其进行“验证”。网络节点执行工作,以确保每个交易有效,无效交易被网络拒绝。安装在节点上的软件客户端通过执行锁定和解锁脚本对未花费的交易(UTXO)执行验证工作。如果锁定和解锁脚本的执行结果为真,则该交易有效,并将该交易写入区块链。因此,为了将交易写入区块链,必须i)由接收交易的第一节点验证(如果验证通过),该节点将交易中继到网络中的其他节点;ii)添加到由网络节点建造的新区块中;并且iii)挖掘,即,添加到过去交易的公共分类账中。
尽管区块链技术以使用加密货币实现方式而闻名,但数字企业家已经开始探索使用加密货币所基于的加密安全系统和可以存储在区块链上的数据来实现新系统。如果区块链能够用于不局限于加密货币领域的自动化任务和过程,则将是非常有利的。此类解决方案将能够利用区块链的优势(例如,事件的永久防篡改记录、分布式处理等),同时在其应用中更加通用。
当前研究的一个领域是利用区块链来实现“智能合约”。这些是计算机程序,旨在自动执行机器可读合同或协议条款。与用自然语言编写的传统合同不同,智能合同是一种机器可执行的程序,包括可以处理输入以产生结果的规则,然后,可以根据这些结果来执行动作。
另一与区块链相关的感兴趣的领域是使用‘代币’(或“彩币”)来表示并且经由区块链转移现实世界的实体。潜在的敏感或秘密项目可以由没有可辨别的意义或价值的代币来表示。因此,代币充当允许从区块链引用真实世界项目的标识符。
区块链技术的一个问题是能够找到区块链的感兴趣的信息。许多现有技术文档公开了与找到区块链的感兴趣的信息相关的方法。下面简要描述这种现有技术方法的示例。
Chris Pacia等人的题为“OpenBazaar-Ratings,reviews and reputation”的介绍公开了一种基于区块链的评级系统。当发生购买交易时,买卖双方交换金钱。买方也可以留下对所提供服务的评论,让他人查看。供应商全球唯一标识符(GUID)、序列化评级和合同散列等数据添加到返回操作(OP_RETURN)中。幻灯片公开了通过查询标记供应商的区块链的OP_RETURN输出来搜索用户留下的评论的功能。
US 2016292672公开了一种利用区块链存储系统的交易系统。据披露,交易系统查询区块链系统,以检查交易方在实施交易之前是否拥有要交易的股票。这是通过确定是否存在与要交易的股票相对应的交易者拥有的未花费的交易来实现的。
US 2017005804公开了一种系统,其中,在区块链搜索希望进行金融交易的特定个人所拥有的资产。这种验证是通过访问区块链并确定来源参与者与未花费输出的区块链交易相关联来完成的,这些交易与足够数量的有关资产相关联。该过程可以包括对与源参与者相关联的多个不同的区块链交易进行求和,以确定源参与者“拥有”的资产总量。
发明内容
现有系统和方法的一个问题是不可能提取某些类型的信息,例如,在区块链上实现的机器可执行合约的状态,或者其至少难以以有效的方式实现。这使得更加难以实现机器可执行合约,例如,通过使用确定性有限自动机(DFA)。
因此,希望提供一种允许提取信息的解决方案,尽管信息在向区块链广播时已经经历了实质性的转变。
现在已经设计出这样一种改进的解决方案。在所附权利要求和/或发明的说明和/或本文件中阐述的特征、选项和可能性中定义本发明。
根据第一方面,本发明提供了一种搜索包含在区块链的未花费的输出(UXTO’s)中的信息的方法,该方法包括:
a)确定感兴趣的信息,并获得与该感兴趣的信息相关的密钥;
b)构建与密钥相关的搜索项;
c)在区块链搜索与搜索项相匹配的未花费的输出(UXTO’s),
该方法可以提供一种搜索机器可执行智能合约的状态的方法。该方法可以提供一种搜索在DFA中实现的机器可执行智能合约的状态的方法。例如,可以提供一种确定在区块链上实现的机器可执行合约的状态的方法,该方法包括:
a)确定感兴趣的信息,并生成与该感兴趣的信息相关的密钥;
b)构建与密钥相关的搜索项;
c)在区块链搜索与搜索项相匹配的未花费的输出(UXTO’s),
其中,感兴趣的信息是机器可执行智能合约的状态,并且
所述方法还包括:
d)从与搜索项相匹配的未花费的输出(UXTO’s)中提取信息,并且
e)从提取的信息中确定机器可执行智能合约的状态,其中,机器可执行智能合约可以使用确定性有限自动机来实现,并且确定机器可执行智能合约的状态的步骤可以包括确定该确定性有限自动机的状态。
该方法可以提供,通过一个或多个阶段传递感兴趣的信息来获得密钥。获得密钥的一个或多个阶段可以包括:指定阶段;元数据构建阶段;代理关联阶段;组合阶段;赋值阶段。密钥可能是赋值阶段的输出。
该方法可以提供,通过对感兴趣的信息应用可再现过程来获得密钥,相同的可再现过程已经生成了包含在正在搜索的区块链的未花费的输出(UXTO’s)中的信息。
该方法可以提供,根据密钥构建搜索项,例如,通过地址导出阶段。
该方法可以提供,由搜索和匹配阶段提供搜索。
该方法可以提供,与搜索项相匹配的未花费的输出(UXTO’s)与密钥和/或感兴趣的信息配对。可以在数据库和/或数据库构建阶段中提供配对。
该方法可以包括以下中的一个或多个:指定阶段;元数据构建阶段;代理关联阶段;组合阶段;赋值阶段;数据库构建阶段;地址导出阶段;钱包形成阶段;搜索和匹配阶段。
将在下面进一步详述每个阶段的可能性。
本发明的第一方面可以包括本文件中其他地方阐述的任何特征、选项和可能性。
根据第二方面,本发明提供了一种系统,优选地是计算机实现的系统,用于实现本发明第一方面的方法,潜在地包括用于执行本文中其他地方阐述的任何特征、选项和可能性的系统。
该系统可以包括进一步包括:
至少一个计算代理,用于通过区块链实现DFA;以及
区块链平台。
本发明的第二方面可以包括本文件中其他地方阐述的任何特征、选项和可能性。
因此,根据本发明,可以从以下内容中提供或进一步提供选项、可能性和特征。
该方法和/或系统可以包括指定阶段。指定阶段可以包括选择感兴趣的信息。指定阶段可以包括,或者是,标识符指定阶段。指定阶段可以包括,或者是,代码或标签指定阶段。
感兴趣的信息可以选自信息集。感兴趣的信息可以是状态,优选地是确定性有限自动机的状态,最优选地是机器可执行智能合约的状态。可以对信息集进行限定,例如,限于DFA的有限可能状态。
可以由用户选择感兴趣的信息。感兴趣的信息可以由DFA选择。感兴趣的信息可以由网络中的一个或多个代理选择。
可以确定感兴趣的信息的一个或多个标识符。标识符可以是代码。标识符可以是标签。代码可以仅指示一个感兴趣的信息,例如,一个状态。标签可以仅指示一个感兴趣的信息,例如,一个状态。
该方法和/或系统可以包括元数据构建阶段。感兴趣的信息(更优选地,其代码或标签)可以转换成元数据。感兴趣的信息(更优选地,其代码或标签)可以通过加密散列来处理,理想地,串联应用两个这样的加密散列。元数据(特别是散列元数据)可以随后被格式化。感兴趣的信息(优选地,其代码或标签,更优选地,其元数据)可以结合到公钥中。该公钥可以被命名为信息公钥。
该方法和/或系统可以提供代理关联阶段。代理关联阶段可以选择一个或多个代理,优选地,一个或多个被分配来执行UXTO的代理,例如,机器执行的智能合约(优选地,由DFA实现的机器执行的智能合约)的UXTO。一个或多个或所有选择的代理可以提供公钥。该一个或多个公钥可以被命名为代理公钥。
该方法和/或系统可以提供组合阶段,优选地,公钥组合阶段。组合阶段可以将信息公钥与一个或多个代理公钥组合。组合阶段可以生成多签名赎回脚本,例如,支付到脚本散列(P2SH)多签名赎回脚本。组合阶段可以理想地从信息公钥和一个或多个代理公钥提供锁定脚本。组合阶段可以生成锁定脚本的散列。锁定脚本的散列可以被命名为脚本公钥(scriptPubKey)。
该方法和/或系统可以包括获得值的赋值阶段。该方法和/或系统可以包括锁定脚本赋值阶段,以获得值,例如,锁定脚本值。该方法和/或系统可以包括scriptPubKey赋值阶段,例如,获取值,例如,锁定脚本值或scriptPubKey值。赋值阶段可以获得锁定脚本的值,或者更优选地,获得锁定脚本的散列值,并且更优选地,获得scriptPubKey的值。
该方法和/或系统可以包括数据库构建阶段,例如,提供数据库的构建。
数据库可能在区块链之外。数据库可以是集中的。数据库可以是去中心化的,例如在网络中,潜在地作为分布式散列表。数据库的构建可以使用Python字典进行。数据库优选地可由网络中例如,分布式网络中的每个节点访问。一个或多个或所有节点可以具有计算代理。
数据库构建阶段可以包括将感兴趣的信息映射到密钥。密钥可以是来自赋值阶段的值,例如,锁定脚本的值,更优选地,scriptPubKey的值。密钥可以链接到单个值。密钥可以链接到单个代码或标签。密钥可以链接到单个感兴趣的信息。信息到密钥的映射可以提供组合到密钥的映射的一半。组合的另一半可以在搜索和匹配阶段被映射到密钥。数据库构建阶段和/或映射可以实现为散列表。
该方法和/或系统可以包括地址导出阶段,例如,脚本散列地址导出阶段。可以从信息公钥和代理公钥中导出地址;优选地,从锁定脚本中导出;更优选地,从锁定脚本的散列中导出;并且理想地,从scriptPubKey中导出。地址可以是脚本散列地址,例如,P2SH地址。
该方法和/或系统可以包括钱包形成阶段。钱包形成阶段可以包括将一个或多个或所有地址(例如,脚本散列地址)添加到钱包中;优选地,添加到钱包中的账户或文件夹中。
该方法和/或系统可以包括搜索和匹配阶段。搜索和匹配阶段可以通过算法来实现。搜索和匹配阶段可以包括在区块链中用地址(例如,脚本散列地址)寻找一个或多个匹配。搜索和匹配阶段可以从钱包中获得地址(例如,脚本散列地址);理想地,从钱包形成阶段的钱包中获得。搜索和匹配阶段可以获取与在搜索中使用的地址匹配的区块链中的UTXO’s的详细信息。
该方法和/或系统可以包括潜在地在搜索和匹配阶段和/或数据库构建阶段内,将获取的UXTO’s匹配地址的详细信息映射到密钥。如前所述,发生映射的密钥可以链接到单个值,或者链接到单个代码或标签,或者链接到单个感兴趣的信息。因此,在搜索和匹配阶段提供组合到密钥的另一半的映射。
当获得匹配时,该方法和/或系统可以视为已经明确地确定了在UTXO中存在哪个感兴趣的信息,例如,标签或状态。
该方法和/或系统可以同时寻找与多于一个感兴趣的信息的匹配。
因此,详细描述了计算机实现的系统和方法,用于建立关于机器可执行合约的状态的信息,例如,在合约的未花费的交易(UTXOs)、区块链和确定性有限自动机(DFA)的实现,以及确定其中的状态的情况下。这些阶段可以包括确定感兴趣的信息和用于标识该信息的代码或标签,构建与这些代码或标签相关联的元数据,将其与将与该信息相关联的代理的公钥相结合。每个脚本的scriptPubKey值可以用来提供密钥,用于构建外部数据库,并且更具体地,从链接到感兴趣的信息的scriptPubKey值映射密钥。为了获得该组合的另一半,从scriptPubKey值中导出脚本散列地址,这些地址用于填充数字钱包。然后使用搜索和匹配算法来查找区块链上具有匹配脚本散列地址的UTXO’s。然后,用UTXO’s填充上述数据库,这些UTXO与脚本散列地址相匹配,并因此与密钥相匹配,以完成组合。匹配以明确的方式指示状态。
附图说明
参考本文描述的实施例,本发明的这些和其他方面将变得清楚并得以阐明。现在将参考附图,仅以示例的方式描述本发明的实施例,其中:
图1示出了P2SH交易中的区块链交易,其包括了scriptPubKey;
图2示出了本发明实施例中的元数据结构、P2SH赎回脚本、scriptPubKey和加密货币地址的伪代码;
图3是描述根据本发明实施例的UTXO到包含在外部数据库中的信息的映射的示意图;
图4示出了可以接合本发明的系统的概略图;
图5示出了基于区块链的DFA实现。
具体实施方式
未花费的交易输出(UTXO)是区块链的一个基本特征。通过区块链,可以对各种各样的资产进行各种各样的交易。UTXO的数量很大,这些UTXO对于每个全节点加密货币客户端都是已知的,并且作为一个整体,形成UTXO集或UTXO池。
UTXO由一定数量的加密货币和锁定脚本或保留款(encumbrance)组成,通常与特定的用户地址相关。对于许多交易种类,UTXO中还存在数据部分,用于将信息结合到区块链交易中。数据部分可以是代码、标签或元数据的形式。查找特定代码、标签或元数据的能力和/或系统地查找和提取存储在通用区块链中的信息的能力目前是不具备的,并且是本发明寻求解决的一个潜在问题。
本发明试图解决这一问题,并通过从区块链提取信息来提供对信息的访问。
从如何产生UTXO及其数据部分内容来考虑,明显难以找到代码、标签或元数据,提取信息更是如此。
通常,区块链交易的格式要求存储在其中的信息以长字节链的形式出现。这些信息必须经过过滤和处理才能有用。此外,从这些字节链重建原始信息(例如,有意义的消息)是不可行的,因为出于安全、隐私以及技术原因,实际存储的链是某种形式的(多个)散列。例如,加密货币地址是公钥的多个散列,然后格式化多个散列。类似的情况适用于经由类似过程获得的签名脚本或产生的区块链交易难题。这可能是为了让网络接受;例如,必须具有加密公钥的形状等。
下面用来举例说明本发明的实现方式的具体实施例是基于区块链的确定性有限自动机DFA,且与之相关的感兴趣的信息是DFA的状态。在特定示例中,假设感兴趣的UTXO是属于支付到脚本散列(P2SH)类型的。还分配一个代理,以执行(花费)与状态机的特定状态相关联的交易。
在该特定实施例的第一步骤中,信息(识别DFA状态的标签或代码)首先被散列,以构建包括在公钥中的元数据字段。公钥形式的元数据字段与主管代理的公钥相结合(以提供保留款)。结果放在P2SH的1/2多签名赎回脚本中。反过来,该赎回脚本被散列并与携带额外信息的其他字节组合,以便导出锁定脚本(scriptPubKey),该脚本最终被放置作为构成区块链交易的字节链的一部分。
应该清楚,在经历了这些步骤之后,在这个特定实施例中,从存储在网络中的信息中恢复原始信息在此时是相当无望的任务,正如在更一般的情况下一样。
将在随后的章节中讨论本发明的细节及其具体实施例。在此阶段提供了本发明操作的概述。该操作提供了以下一般步骤:
1.确定感兴趣的信息,并指定识别该信息的代码或标签。
在下面更详细讨论的DFA实施例中,这可能体现为基于区块链的DFA的特定合约的特定状态。
2.构建与这些代码或标签相关联的元数据。
在DFA实施例中,这可能是特定的感兴趣的状态的代码或标签,潜在地是感兴趣的特定合约类型特有的;
3.确定哪个代理(或哪一组代理)将与信息相关联。
同样在DFA实施例中,这可以是被分配用于花费对应于特定感兴趣的状态的UTXO的代理;
4.将包括与那些代码或标签相关联的元数据的公钥与相关代理的公钥相结合,以提供脚本;
在DFA实施例中,这将是带有元数据的公钥和来自代理的公钥,然后组合成P2SH多重签名赎回脚本;
5.导出每个脚本的scriptPubKey值,以提供用于匹配中涉及的在外部数据库中使用的密钥;
在DFA实施例中,这将是表示为密钥的值,密钥链接到代码,并因此链接到感兴趣的状态;
6.构建数据库,用将在后续阶段出现的组合的另一半,可将scriptPubKey值中的密钥映射到该数据库,该数据库与感兴趣的信息相链接;
在DFA实施例中,用待在适当的时候查找、匹配和添加的UTXO将密钥映射到代码,从而映射到感兴趣的状态;
7.从scriptPubKey值导出脚本散列地址;
在DFA实施例中,这也适用;
8.用这些脚本散列地址填充数字钱包;
在DFA实施例中,这也适用;
9.使用搜索和匹配算法在区块链查找具有匹配脚本散列地址的UTXO;
在DFA实施例中,这也适用;
10.用与脚本散列地址相匹配并且从而与密钥相匹配的UTXO填充上述数据库,以完成组合;
在DFA实施例中,这意味着一旦算法找到匹配的UTXO的脚本散列地址,则系统已经明确地确定UTXO中存在哪个状态标签,即,本质上已经检测到该状态。
虽然从区块链的信息中完全恢复信息是一项无望的任务,但应该注意,对于预先已知的信息,人们仍然可以确定某种标签是否存在于密码货币的UTXO中。DFA系统中的状态指示标签就是这种情况。因此,基于此,可以检测DFA机器是否处于其允许的一种状态。
此处值得一提的是,通过构建,DFA一次只能处于一组有限的状态中的一个。然而,检测器同样适用于检测任意数量的标签或其他种类的已知信息。
初始阶段反映了以上概述中讨论的从信息到包含到锁定脚本中的元数据的转换阶段。
因此,在初始步骤(代码指定阶段),选择感兴趣的信息。该信息可能是感兴趣的状态。然后指定那些代码或标签,代码或标签识别待搜索的那个信息(例如,特定状态)。这些可以是从状态转换表中详细描述的所有状态的整组代码或标签中选择的代码或标签。因此,代码指定阶段是注释步骤,易于实现。
这些代码或标签构成了第二步骤,即元数据构建阶段,的输入。在这个步骤中,代码或标签的双重散列将代码或标签转换成反映这些的元数据格式。然后,该元数据被格式化并放入信息公钥中。
针对与合约、代理关联阶段的特定状态相关联的可能代理,进行进一步选择。一个或多个代理是被分配执行(花费)UTXO的各方。关联的代理提供一个或多个代理公钥。在DFA环境中,一个或多个代理可能依赖于状态。一个或多个代理将是所有代理的子集、一个列表。一个或多个代理不同于用于与DFA交互的计算代理,如下所述。因此,代理关联阶段是分配步骤,易于实现。
元数据构建阶段的输出、来自代理关联阶段的其中包含元数据的信息公钥、代理公钥用于下一步骤,即组合阶段。在组合阶段,两个公钥(以及信息公钥中的元数据)在P2SH多签名赎回脚本中组合。公钥用于生成锁定脚本,然后锁定脚本又被锁定脚本的散列(scriptPubKey)替换。
在下一步骤,即scriptPubKey赋值阶段,为来自组合阶段的一个或多个散列锁定脚本建立scriptPubKey值。图1示出了scriptPubKey的结构,在P2SH交易的环境中,可以直接从scriptPubKey结构获得值。这些scriptPubKey值然后充当最终映射组合的密钥。在这个阶段,密钥与相应的感兴趣的代码或标签之间的关系是已知的。在下面讨论的搜索和匹配阶段找到最终映射组合的另一部分。
在搜索项数据库的数据库构建阶段构建组合的映射。搜索项数据库在区块链外部。因此,通过将表示来自scriptPubKey的值的密钥与相应的感兴趣的代码或标签进行映射来提供字典。可以将一组密钥映射到值(字典)的结构更自然地被实现为散列表。
应当注意,所使用的特定数据库的形式不是本发明的基础,并且不应当限制其范围。
如果所讨论的系统,如图4的DFA实现中的情况,是去中心化的,则网络的每个节点应该能够访问(本地或远程)搜索项数据库,或者也可以去中心化的方式,以及通常以分布式散列表实现。
数据库构建阶段510可以通过使用Python字典来实现,该字典是实现散列表概念的内置数据类型。
在下一阶段,即,脚本散列地址导出阶段,我们从scriptPubKey值导出脚本散列地址,(即,阶段512)。在一个示例方法中,对于P2SH,当创建脚本散列地址时,使用HASH160(意思是,首先应用SHA256,然后应用RJPEMD160)。在这些操作的结果中,(在字符串的开头)附加“版本字节(versionbyte)”值,该值表示正在使用的网络(mainnet、testtet等)。然后计算“校验和”,这是整个事情的hash256。然后,该过程将两个字符串连接起来,并将结果编码为base58,即P2SH地址。如果对脚本使用另一种方法,所有这些都会改变,因此这对于本发明来说不是必需的,并且对其范围没有限制。
通过在技术层面上说明该步骤,提供了(伪)代码的简化片段。尽管像往常一样这些片段中使用的语言是Python3,但这绝不应该限制本发明的范围或其部署方式。图2示出了构建元数据的伪代码,其与代理的公钥组合成P2SH赎回脚本,并且导出scriptPubKey和地址;即,上述元数据构建阶段、组合阶段、scriptPubKey赋值阶段和脚本散列地址导出阶段。
获得脚本散列地址后,该过程继续将这些地址添加到钱包,即钱包形成阶段。优选将地址添加到所用钱包内的特定合约账户中。
然后可以从钱包中启动所采用的搜索和匹配算法,以搜索与这些地址匹配的UTXO,即搜索和匹配阶段。匹配不仅反映匹配代理,还反映合约的匹配状态。搜索和匹配阶段可以通过标准加密货币核心客户端命令来完成。许多搜索和匹配算法都适合这个目的。例如,可以使用循环搜索所有UTXO。
一旦算法在UXTO集中找到与正在搜索的脚本散列地址相匹配的脚本散列地址值,则就在感兴趣的UTXO集中找到了scriptPubKey。其可以提取出来,然后映射到上面提到的外部数据库中。UXTO通过其scriptPubKey映射到密钥、密钥的值,并因此映射回到代码或标签,并因此映射到感兴趣的原始信息,该感兴趣的原始信息在优选实施例中表示特定的状态。
最后一个阶段的匹配提供,系统已经明确地确定了UTXO中存在哪个状态标签,即本质上已经检测到状态。对具有匹配的脚本散列地址的所有UTXO重复匹配过程,并因此具有密钥和状态标签。
图3提供了实际已知信息,即,值(在我们的示例中是合约和状态标签))到存储在区块链UTXO中的密钥的映射,实际上是指向这些值的指针,的示意图。注意,如果用于数据库的结构是散列表,则在访问所需信息的值之前会对密钥进行额外的散列处理,这在图中没有显示,因为这意味着表示一般情况。
同样,由于映射实际上是字典生成过程,因此这可以通过使用Python字典来实现,Python字典是实现散列表概念的内置数据类型。
搜索钱包修改
如果在状态转换检测器的实现或更普遍已知的信息搜索中避免非传统/专用软件,则这有利于实现的整体简单性和容易性。当然,可以提供这种软件作为一种替代方案。
在这种情况下,值得注意的是,通过加密货币核心客户端(更优选使用的标准用户界面)可访问的唯一UTXO是那些与用户的加密货币钱包中包含的地址相关联的UTXO。在搜索过程中,正在寻找的密钥不一定符合该标准。为了应对这一问题,在钱包可用于在UTXO数据库中搜索包含在外部数据库中的密钥之前,有必要构建与相应的scriptPubKey值相关联的加密货币地址。这是通过上述散列和格式化过程实现的。构建好之后,有必要将其添加到搜索用户的加密货币钱包中。
在我们在基于区块链的DFA实现特定合约的工作示例的情况下,将手边的合约相关的地址与特定账户、钱包的子集相关联是自然和方便的。然而,这最后一步并不是绝对必要的,可以作为提供额外的效率和结构的我们设计的一个特定特征,而不是限制;这决不应该限制本发明的范围。
本发明的使用情况
提取已知信息的能力在许多情况下是期望的。这种情况可能包括元数据结合到区块链中的情况。示例包括代币化(tokenization)情况或“彩色币(colored coins)”,用于表示其他资产,例如,股票、凭证、优惠券、财产、商品、代币、数据等。
在一个特定的背景下,发现和提取信息的能力是很重要的,这一特定背景是基于区块链的DFA,其中,信息可以是机器的状态。
将在下一节中说明在智能合约的实现中使用DFA的更多细节。
DFA的使用
关于DFA实现智能合约,本节说明了DFA如何发挥作用的背景资料。
在这个说明性背景下,提供了对过程或任务(例如,合约)建模的DFA的定义。DFA和与计算资源相关的系统进行交互,该计算资源可以被称为计算代理或“机器人(bots)”。这些计算代理被设置为生成交易并将其提交给区块链。虽然该DFA实施例涉及合约,但是DFA的使用不限于合约。
参考图4,该实施例将过程实现为体现在包括硬件和软件组件的计算平台(区块链)上的抽象DFA。
图4提供了根据本发明的说明性实施例设置的系统的概略图。该系统包括能够与其他实体4(例如,人类或其他计算机)交互以接收指令的计算代理3。例如,这些指令可能是创建和执行哪个智能合约。因此,计算代理3通过响应并引起“真实世界”中,其自身之外的事件来与物理世界进行交互,以实现本发明。
可以以任何机器可执行的格式提供合约本身的规范,例如,xBRL,并且以安全和去中心化的方式存储,例如,在种子(torrent)网络上的分布式散列表(DHT)5中。根据合约的规范,计算代理构建DFA 2,其随后由一个或多个代理体现在区块链1上。
DFA2本身被指定为一个有限集合{S,I,t,S0,F},其中,S代表合约/DFA可以处于的一组(有限的)可能状态;I是一组(有限的)输入(也称为字母),在我们的情况中,是指与合约相关的任何事件或条件,例如,付款、工具到期、交易对手违约等;在我们的机制中,这些输入信号由一个或多个代理接收/产生,然后这些代理确定系统的下一个状态(可能是同一状态)。
DFA的第三组件是转换函数t:S×I→S,“DFA”中的术语“确定性”指决策的唯一性:给定一个状态和一个输入,只有一个新状态(可能是同一个状态)。因此,给定初始状态(S0)和输入历史,计算结果(合约)是唯一的,是所有可能的最终结果集合()中的一个。一旦建立了所有这些元件,DFA就完全由一个转换表定义,为所有可能的当前状态和输入信号指定未来状态。DFA的状态本身与区块链上的未花费的交易输出(UTXO)相关联。如本领域所知,加密货币网络持续跟踪所有可用的UTXO。根据该实施例,DFA从一个状态移动到另一状态的机制由区块链交易,根据本发明,体现(实现)。实际上,区块链上的交易花费与一个状态相关联的UTXO(前一个交易的输入),并创建与下一个状态相关联的UTXO(输出)。
示例:折价(零息)债券
为了说明起见,我们现在考虑一种折价(零息)债券,这是一种简单的债务工具,通常以一定价格购买(通常相对于票面价值有折扣),然后持有一段时间,直到到期时归还本金。我们考虑的可能状态是S={S0,f0,f1},分别表示持有状态(S0)、合约的正常缔结(如果遵循程序主逻辑)或圆满结局(f0),以及出现问题的状态(f1),例如,诉讼。因此,系统的最终状态是F={f0,f1}。我们考虑的字母是I={r,d,e},分别表示到期时(或之前)本金的偿还(r)、到期时(或之前)发行人的违约(d)、以及无偿还合约到期(e)。这个简单合约的转换矩阵如表1所示。
t | r | d | e |
S0 | f0 | f1 | f1 |
表1-表示零息债券的DFA转换表
应该注意,最终状态表示合约的完成,因此不需要从这些状态中指定更多的状态(目前在转换表中标记为“-”,尽管这些行可以省略)。原则上,可以为该工具定义更多的状态和/或输入(以及动作),但是为了简单和清楚起见,在本文档中没有这样做,以说明本发明的基本创造性方面,而不关注与合约复杂性相关的分散注意力的细节。
图5表示(加密货币)区块链上的零息债券DFA的实施例。状态由圆圈表示,机器从一种状态转换到另一种状态的加密货币交易由蓝色三角形表示。注意,代理接收的输入在图5中省略,但是在每个状态下,应该根据这些输入发生一个或其他转换,这在图中通过构建一个或其他加密货币交易(例如,在状态S0中为t0或t1)来反映;不改变状态的转换不需要任何交易,因此省略了。除了DFA(ti)的转换交易之外,还考虑初始发起交易(o)以及与合约(ci)的完成相对应的交易。
我们现在将注意力转向交易中的资金流动(发起、转移和完成)。一个重要的观察是,由于DFA和(金融)合约的有限性质,这一过程将在若干次转换之后完成。这必然意味着(假设所涉及的计算代理和加密货币网络节点的费用有限),合约的建立和执行的最大成本是有约束的,并且可以提前确定,例如,在建立DFA时确定。由按照最长的可想象路径执行合约所需的资金总额给出。当然,这排除了执行过程中出现无限循环的可能性,但是注意,这与当前(金融)合约无关,即使合约(例如,永久合约)都必须在将来的某个时候完成,不管其名称如何;例如,当负债实体不复存在或付款由于通货膨胀而变得微不足道时。
应当注意,上述实施例说明而不是限制本发明,并且本领域技术人员将能够在不脱离由所附权利要求限定的本发明的范围的情况下设计许多替代实施例。在权利要求中,括号中的任何附图标记不应被解释为对权利要求的限制。词语“包括(comprising)”和“包括(comprises)”等不排除任何权利要求或说明书整体中列出的元件或步骤之外的元件或步骤的存在。在本说明书中,“包括(comprises)”是指“包括(includes)或者由……组成(consists of)”,而“包括(comprising)”是指“包括(including)或者由……组成(consisting of)”。元件的单数引用不排除这些元件的复数引用,反之亦然。本发明可以通过包括几个不同元件的硬件以及通过适当编程的计算机来实现。在列举了几个装置的设备权利要求中,这些装置中的几个可以由同一个硬件来实现。在相互不同的从属权利要求中引用某些措施这一事实并不表示这些措施的组合不能有利地使用。
Claims (15)
1.一种计算机实现的方法,用于搜索包含在区块链的未花费的输出(UXTO)中的信息,所述方法包括:
对于机器可执行智能合约的多个状态中的给定状态,基于与所述给定状态相关联的元数据来生成信息公钥;
构建与所述信息公钥有关的搜索项;以及
搜索所述区块链以得到与所述搜索项匹配的未花费的输出(UXTO),
其中,所述信息公钥的生成包括使所述给定状态至少通过以下阶段:指定阶段、元数据构建阶段和赋值阶段。
2.根据权利要求1所述的方法,还包括:
从与所述搜索项匹配的未花费的输出(UXTO)中提取信息;以及
从所提取的信息确定所述机器可执行智能合约的状态。
3.根据前述权利要求中任一项所述的方法,其中,使用确定性有限自动机来实现所述机器可执行智能合约,并且确定所述机器可执行智能合约的状态的步骤,包括:确定所述确定性有限自动机的状态。
4.根据前述权利要求中任一项所述的方法,其中,通过对所述给定状态应用可再现过程来生成加密密钥,相同的可再现过程用于生成包含在所搜索的区块链的未花费的输出(UXTO)中的信息。
5.根据前述权利要求中任一项所述的方法,其中,从所述信息公钥构建所述搜索项。
6.根据前述权利要求中任一项所述的方法,其中,通过搜索与匹配阶段来提供所述搜索,并且与所述搜索项匹配的未花费的输出(UXTO)和所述信息公钥配对和/或和与所述给定状态相关联的元数据配对。
7.根据权利要求6所述的方法,其中,所述配对提供在元数据内。
8.根据前述权利要求中任一项所述的方法,其中,所述指定阶段包括选择所述给定状态,并且包括用于识别所述给定阶段的代码或标签指定阶段。
9.根据权利要求8所述的方法,其中,所述元数据构建阶段包括将所述给定状态和/或代码或标签转换为元数据。
10.根据权利要求9所述的方法,其中,所述元数据被合并到所述信息公钥中。
11.根据前述权利要求中任一项所述的方法,还包括组合阶段,所述组合阶段包括生成锁定脚本。
12.根据权利要求11所述的方法,其中,所述组合阶段生成所述锁定脚本的散列。
13.根据权利要求11或12所述的方法,其中,所述赋值阶段包括:从所述锁定脚本或者所述锁定脚本的散列中获取值,以提供所述搜索项。
14.一种计算机实现的系统,布置为实现根据权利要求1到13中任一项所述的方法。
15.根据权利要求14所述的系统,还包括:
至少一个计算代理,布置为经由区块链实现确定性有限自动机;以及
区块链平台。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GBGB1701589.2A GB201701589D0 (en) | 2017-01-31 | 2017-01-31 | Computer-implemented system and method |
GB1701589.2 | 2017-01-31 | ||
PCT/IB2018/050516 WO2018142259A1 (en) | 2017-01-31 | 2018-01-29 | Computer-implemented system and method for determining the state of a machine executable contract implemented using a blockchain |
CN201880006241.3A CN110199305B (zh) | 2017-01-31 | 2018-01-29 | 用于确定使用区块链实现的机器可执行合约的状态的计算机实现的系统和方法 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201880006241.3A Division CN110199305B (zh) | 2017-01-31 | 2018-01-29 | 用于确定使用区块链实现的机器可执行合约的状态的计算机实现的系统和方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116827516A true CN116827516A (zh) | 2023-09-29 |
Family
ID=58462718
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310845710.3A Pending CN116827516A (zh) | 2017-01-31 | 2018-01-29 | 用于确定机器可执行合约的状态的计算机实现系统和方法 |
CN201880006241.3A Active CN110199305B (zh) | 2017-01-31 | 2018-01-29 | 用于确定使用区块链实现的机器可执行合约的状态的计算机实现的系统和方法 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201880006241.3A Active CN110199305B (zh) | 2017-01-31 | 2018-01-29 | 用于确定使用区块链实现的机器可执行合约的状态的计算机实现的系统和方法 |
Country Status (10)
Country | Link |
---|---|
US (2) | US11263622B2 (zh) |
EP (2) | EP3913560A1 (zh) |
JP (2) | JP7132223B2 (zh) |
KR (1) | KR102569751B1 (zh) |
CN (2) | CN116827516A (zh) |
GB (1) | GB201701589D0 (zh) |
HK (1) | HK1257198A1 (zh) |
SG (1) | SG11201906374XA (zh) |
WO (1) | WO2018142259A1 (zh) |
ZA (1) | ZA201904303B (zh) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190370789A1 (en) * | 2017-02-10 | 2019-12-05 | Intermine.com.au Pty Ltd | Distributed block chain cryptocurrency system for securement against unauthorised transactions |
US11568402B2 (en) * | 2018-06-06 | 2023-01-31 | International Business Machines Corporation | Decentralized out-of-band accelerated blockchain transaction processing |
CN109547823B (zh) * | 2018-12-07 | 2020-11-10 | 四川链窗区块链科技有限公司 | 一种视频直播平台奖励数据处理方法 |
CN110032599B (zh) * | 2018-12-20 | 2020-05-05 | 阿里巴巴集团控股有限公司 | 数据结构的读取及更新方法、装置、电子设备 |
US20210056053A1 (en) * | 2019-08-19 | 2021-02-25 | Cryptography Research, Inc. | Application authentication and data encryption without stored pre-shared keys |
CN111177151A (zh) * | 2019-12-20 | 2020-05-19 | 广东文储区块链科技有限公司 | 一种去中心化存储区块链上检索数据的方法及系统 |
WO2021134424A1 (zh) * | 2019-12-31 | 2021-07-08 | 深圳市网心科技有限公司 | 一种基于区块链的数字货币交易方法、装置及系统 |
US11100501B1 (en) | 2020-05-22 | 2021-08-24 | Kpmg Llp | Modular, configurable smart contracts for blockchain transactions |
GB2596065A (en) * | 2020-06-12 | 2021-12-22 | Nchain Holdings Ltd | Generating blockchain addresses |
GB2598301A (en) * | 2020-08-21 | 2022-03-02 | Nchain Holdings Ltd | Alert account |
GB202108385D0 (en) * | 2021-06-11 | 2021-07-28 | Nchain Licensing Ag | A computer implemented method and system |
Family Cites Families (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160085955A1 (en) | 2013-06-10 | 2016-03-24 | Doosra, Inc. | Secure Storing and Offline Transferring of Digitally Transferable Assets |
US11250493B2 (en) | 2014-03-31 | 2022-02-15 | Monticello Enterprises LLC | System and method for performing social media cryptocurrency transactions |
CA2985040A1 (en) | 2014-05-06 | 2015-12-03 | Case Wallet, Inc. | Cryptocurrency virtual wallet system and method |
EP3140979A4 (en) * | 2014-05-09 | 2017-12-27 | Veritaseum Inc. | Devices, systems, and methods for facilitating low trust and zero trust value transfers |
CN104392354B (zh) * | 2014-11-05 | 2017-10-03 | 中国科学院合肥物质科学研究院 | 一种公钥地址与用户账号的关联和检索方法及其系统 |
US10169124B2 (en) * | 2014-12-16 | 2019-01-01 | Samsung Electronics Co., Ltd. | Unified object interface for memory and storage system |
CN105991731A (zh) * | 2015-02-13 | 2016-10-05 | 中兴通讯股份有限公司 | 一种获取信息的方法、智能终端和服务端 |
US20160260095A1 (en) | 2015-03-02 | 2016-09-08 | Dell Products, Lp | Containerized Computational Task Execution Management Using a Secure Distributed Transaction Ledger |
AU2016242888A1 (en) | 2015-03-31 | 2017-11-16 | Nasdaq, Inc. | Systems and methods of blockchain transaction recordation |
US9397985B1 (en) * | 2015-04-14 | 2016-07-19 | Manifold Technology, Inc. | System and method for providing a cryptographic platform for exchanging information |
US10963881B2 (en) | 2015-05-21 | 2021-03-30 | Mastercard International Incorporated | Method and system for fraud control of blockchain-based transactions |
EP3317775B1 (en) * | 2015-07-02 | 2022-02-16 | Nasdaq, Inc. | Systems and methods of secure provenance for distributed transaction databases |
WO2017005527A1 (en) | 2015-07-07 | 2017-01-12 | Arcelik Anonim Sirketi | A cooling device comprising a door closing mechanism and the control method |
KR101712119B1 (ko) * | 2015-07-09 | 2017-03-03 | 국민대학교산학협력단 | 비트코인의 거래 알림 장치 및 거래 알림 방법 |
WO2017010455A1 (ja) * | 2015-07-13 | 2017-01-19 | 日本電信電話株式会社 | 契約合意方法、合意検証方法、契約合意システム、合意検証装置、契約合意装置、契約合意プログラム及び合意検証プログラム |
JP2018525729A (ja) * | 2015-07-14 | 2018-09-06 | エフエムアール エルエルシー | 計算上効率的な移転処理、監査及びサーチ装置、方法及びシステム |
US9948467B2 (en) | 2015-12-21 | 2018-04-17 | Mastercard International Incorporated | Method and system for blockchain variant using digital signatures |
US20170287090A1 (en) | 2016-03-31 | 2017-10-05 | Clause, Inc. | System and method for creating and executing data-driven legal contracts |
GB201607477D0 (en) * | 2016-04-29 | 2016-06-15 | Eitc Holdings Ltd | A method and system for controlling the performance of a contract using a distributed hash table and a peer to peer distributed ledger |
US10333705B2 (en) * | 2016-04-30 | 2019-06-25 | Civic Technologies, Inc. | Methods and apparatus for providing attestation of information using a centralized or distributed ledger |
US10838846B1 (en) | 2016-05-16 | 2020-11-17 | Jpmorgan Chase Bank, N.A. | Method and system for implementing an automation software testing and packaging framework |
CN105812126B (zh) * | 2016-05-19 | 2018-10-12 | 齐鲁工业大学 | 健康区块链数据加密密钥的轻量级备份与高效恢复方法 |
CN106251216B (zh) * | 2016-07-18 | 2020-12-25 | 恒宝股份有限公司 | 一种用于缓解节点存储压力的方法和系统 |
CN106503053B (zh) * | 2016-09-26 | 2019-07-16 | 江苏通付盾科技有限公司 | Utxo查询方法及装置 |
JP7003133B2 (ja) | 2016-12-21 | 2022-01-20 | エヌチェーン ホールディングス リミテッド | スクリプトサイズ及びオペコードリミットに対するセキュリティベース制限を維持しながらブロックチェーン上の複雑な機能を有効するためのコンピュータにより実現されるシステム及び方法 |
WO2018165472A1 (en) | 2017-03-08 | 2018-09-13 | Ip Oversight Corporation | System and method for creating commodity asset-secured tokens from reserves |
US10891384B2 (en) | 2017-10-19 | 2021-01-12 | Koninklijke Kpn N.V. | Blockchain transaction device and method |
KR20200099149A (ko) | 2017-12-15 | 2020-08-21 | 엔체인 홀딩스 리미티드 | 낮은 엔트로피 패스워드로 블록체인 트랜잭션을 승인하기 위한 컴퓨터 구현 시스템 및 방법 |
US20190378119A1 (en) * | 2018-06-12 | 2019-12-12 | Fressets Inc. | Wallet device for cryptocurrency and method of signature for the use thereof |
-
2017
- 2017-01-31 GB GBGB1701589.2A patent/GB201701589D0/en not_active Ceased
-
2018
- 2018-01-29 KR KR1020197018806A patent/KR102569751B1/ko active IP Right Grant
- 2018-01-29 US US16/482,227 patent/US11263622B2/en active Active
- 2018-01-29 SG SG11201906374XA patent/SG11201906374XA/en unknown
- 2018-01-29 CN CN202310845710.3A patent/CN116827516A/zh active Pending
- 2018-01-29 WO PCT/IB2018/050516 patent/WO2018142259A1/en active Application Filing
- 2018-01-29 EP EP21172869.6A patent/EP3913560A1/en active Pending
- 2018-01-29 JP JP2019538623A patent/JP7132223B2/ja active Active
- 2018-01-29 EP EP18705977.9A patent/EP3411840B1/en active Active
- 2018-01-29 CN CN201880006241.3A patent/CN110199305B/zh active Active
- 2018-12-18 HK HK18116200.2A patent/HK1257198A1/zh unknown
-
2019
- 2019-06-28 ZA ZA2019/04303A patent/ZA201904303B/en unknown
-
2022
- 2022-02-23 US US17/678,911 patent/US11900363B2/en active Active
- 2022-08-25 JP JP2022134169A patent/JP7461423B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
JP2020516976A (ja) | 2020-06-11 |
KR102569751B1 (ko) | 2023-08-23 |
US20200005285A1 (en) | 2020-01-02 |
JP7461423B2 (ja) | 2024-04-03 |
US11263622B2 (en) | 2022-03-01 |
EP3411840A1 (en) | 2018-12-12 |
ZA201904303B (en) | 2022-05-25 |
JP7132223B2 (ja) | 2022-09-06 |
US20220253835A1 (en) | 2022-08-11 |
EP3411840B1 (en) | 2021-06-16 |
EP3913560A1 (en) | 2021-11-24 |
US11900363B2 (en) | 2024-02-13 |
CN110199305B (zh) | 2023-08-01 |
WO2018142259A1 (en) | 2018-08-09 |
GB201701589D0 (en) | 2017-03-15 |
HK1257198A1 (zh) | 2019-10-18 |
KR20190107009A (ko) | 2019-09-18 |
JP2022169712A (ja) | 2022-11-09 |
CN110199305A (zh) | 2019-09-03 |
SG11201906374XA (en) | 2019-08-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110199305B (zh) | 用于确定使用区块链实现的机器可执行合约的状态的计算机实现的系统和方法 | |
JP7036844B2 (ja) | ブロックチェーンを介して決定性有限オートマトン(dfa)を実施するシステム及び方法 | |
US11875400B2 (en) | 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) | |
US20200252205A1 (en) | Systems, methods, and apparatuses for implementing a multi tenant blockchain platform for managing einstein platform decisions using distributed ledger technology (dlt) | |
US20210097508A1 (en) | System and method for creating, tracking, and transfering non-fungible tokens in the ethereum blockchain | |
US20190073646A1 (en) | Consolidated blockchain-based data transfer control method and system | |
US11900339B1 (en) | Systems and methods for hyperledger-based payment transactions, alerts, and dispute settlement, using smart contracts | |
CN116993331A (zh) | 用于生成和提取存储在区块链上的用户相关数据的计算机实现的系统和方法 | |
JP2023536163A (ja) | ブロックチェーントークン | |
Waelbroeck | An economic analysis of blockchains | |
Hameed | Blockchain and Cryptocurrencies Technology: a survey | |
KR102096643B1 (ko) | 입출금 허용여부 정보의 등록에 보상을 수행하는 kyc 블록체인을 이용한 kyc 수행 장치 | |
Zein et al. | Blockchain Technology in Lands Registration: A Systematic Literature Review | |
KR102096640B1 (ko) | Kyc 블록체인에서의 토큰 보유량을 이용한 kyc 수행 장치 | |
KR102096644B1 (ko) | 퍼블릭 블록체인 인덱싱에 보상을 수행하는 kyc 블록체인을 이용한 kyc 수행 장치 | |
KR102096642B1 (ko) | Kyc 블록체인에서의 블록 증명 및 토큰 보유량을 이용한 kyc 수행 장치 | |
KR102096641B1 (ko) | Kyc 블록체인의 블록 증명을 이용한 kyc 수행 장치 | |
KR102096646B1 (ko) | 얼굴 이미지의 관계 정보를 기록하는 kyc 블록체인을 이용한 kyc 수행 장치 | |
KR102096645B1 (ko) | 식별 정보의 정보량을 기초로 보상을 수행하는 kyc 블록체인을 이용한 kyc 수행 장치 | |
US20230351395A1 (en) | System and method for assessing a risk score for a non-fungible token transacted on a blockchain | |
Youssefzadeh | Future of Payment Platforms | |
Garg et al. | UNVEILING BLOCKCHAIN AND DAPPS POTENTIAL: AN INTRODUCTION TO THE REVOLUTIONARY TECHNOLOGIES | |
Ahubele et al. | An Improved Ethereum-Based Model for Smart Contract Implementation |
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 |