JP7018517B2 - ブロックチェーン上のスマートコントラクトの検証方法、装置、記憶媒体、及びプログラム - Google Patents
ブロックチェーン上のスマートコントラクトの検証方法、装置、記憶媒体、及びプログラム Download PDFInfo
- Publication number
- JP7018517B2 JP7018517B2 JP2020544505A JP2020544505A JP7018517B2 JP 7018517 B2 JP7018517 B2 JP 7018517B2 JP 2020544505 A JP2020544505 A JP 2020544505A JP 2020544505 A JP2020544505 A JP 2020544505A JP 7018517 B2 JP7018517 B2 JP 7018517B2
- Authority
- JP
- Japan
- Prior art keywords
- block
- merkle tree
- smart contract
- verification
- root node
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
-
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0643—Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
-
- 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/9027—Trees
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/466—Transaction processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
-
- 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/12—Applying verification of the received information
-
- 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/12—Applying verification of the received information
- H04L63/123—Applying verification of the received information received data contents, e.g. message integrity
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
- H04L9/083—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) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP]
- H04L9/0833—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) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP] involving conference or group key
- H04L9/0836—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) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP] involving conference or group key using tree structure or hierarchical structure
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Business, Economics & Management (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Finance (AREA)
- Accounting & Taxation (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Strategic Management (AREA)
- Marketing (AREA)
- General Business, Economics & Management (AREA)
- Databases & Information Systems (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Computing Systems (AREA)
- Computer Hardware Design (AREA)
- Technology Law (AREA)
- Power Engineering (AREA)
- Data Mining & Analysis (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Description
ブロックチェーンネットワークにおける第1ノードから指定ブロックの、第1マークルツリーのルートノードと、第2マークルツリーのルートノードと、前記指定ブロックの一つ前のブロックの標識とを含むブロックヘッダ情報と、トランザクション標識とスマートコントラクトの実行結果とを含むトランザクションリストとを取得することと、
前記第1マークルツリーのルートノードと前記トランザクション標識を検証して、第1検証結果を得ることと、
前記第2マークルツリーのルートノードと前記スマートコントラクトの実行結果を検証して、第2検証結果を得ることと、
前記指定ブロックの一つ前のブロックの標識が予め記憶されたブロックヘッダチェーン構造にあるか否かを検証して、第3検証結果を得ることと、
前記第1検証結果、前記第2検証結果、及び前記第3検証結果の全てが検証合格である場合に、前記スマートコントラクトの実行結果が有効であると判定することと、を含む。
前記トランザクションリストにおけるトランザクション標識を用いて第3マークルツリーを構築し、前記第3マークルツリーのルートノードを算出することと、
前記第3マークルツリーのルートノードと前記第1マークルツリーのルートノードとが一致するか否かを比較することと、
一致する場合に、前記第1マークルツリーのルートノードと前記トランザクション標識が検証合格となることと、を含む。
前記トランザクションリストにおけるスマートコントラクトの実行結果を用いて第4マークルツリーを構築し、前記第4マークルツリーのルートノードを算出することと、
前記第4マークルツリーのルートノードと前記第2マークルツリーのルートノードとが一致するか否かを比較することと、
一致する場合に、前記第2マークルツリーのルートノードと前記スマートコントラクトの実行結果が検証合格となることと、を含む。
ブロックチェーンネットワークにおける前記第1ノードおよび第2ノードから前記指定ブロックのブロックヘッダ情報をそれぞれ取得することと、
前記第1ノードにおける前記指定ブロックのブロックヘッダ情報と前記第2ノードにおける前記指定ブロックのブロックヘッダ情報とが一致するか否かを比較することと、
一致する場合に、前記指定ブロックが有効であると判定することと、
前記指定ブロックが有効であると判定した場合に、前記指定ブロックの一つ前のブロックの標識が予め記憶されたブロックヘッドチェーン構造にあるか否かを検証することと、をさらに含む。
ブロックチェーンネットワークにおける第1ノードから指定ブロックの、第1マークルツリーのルートノードと、第2マークルツリーのルートノードと、前記指定ブロックの一つ前のブロックの標識とを含むブロックヘッダ情報と、トランザクション標識とスマートコントラクトの実行結果とを含むトランザクションリストとを取得するための取得ユニットと、
前記第1マークルツリーのルートノードと前記トランザクション標識を検証して、第1検証結果を得るための第1検証ユニットと、
前記第2マークルツリーのルートノードと前記スマートコントラクトの実行結果を検証して、第2検証結果を得るための第2検証ユニットと、
前記指定ブロックの一つ前のブロックの標識が予め記憶されたブロックヘッダチェーン構造にあるか否かを検証して、第3検証結果を得るための第3検証ユニットと、
前記第1検証結果、前記第2検証結果および前記第3検証結果の全てが検証合格である場合に、前記スマートコントラクトの実行結果が有効であると判定するための判定ユニットと、を備える。
前記トランザクションリストのトランザクション標識を用いて第3マークルツリーを構築して、前記第3マークルツリーのルートノードを算出し、
前記第3マークルツリーのルートノードと前記第1マークルツリーのルートノードとが一致するか否かを比較し、
一致する場合に、前記第1マークルツリーのルートノードと前記トランザクション標識が検証合格となることにさらに用いられる。
前記トランザクションリストにおけるスマートコントラクトの実行結果を用いて第4マークルツリーを構築して、前記第4マークルツリーのルートノードを算出し、
前記第4マークルツリーのルートノードと前記第2マークルツリーのルートノードとが一致するか否かを比較し、
一致する場合に、前記第2マークルツリーのルートノードと前記スマートコントラクトの実行結果が検証合格となることにさらに用いられる。
前記第1ノードにおける前記指定ブロックのブロックヘッダ情報と前記第2ノードにおける前記指定ブロックのブロックヘッダ情報とが一致するか否かを比較し、
一致する場合に、前記指定ブロックが有効であると判定し、
前記指定ブロックが有効であると判定した場合に、前記指定ブロックの一つ前のブロック標識が予め記憶されたブロックヘッドチェーン構造にあるか否かを検証するための第4検証ユニットをさらに備える。
1つ又は複数のプロセッサと、
1つ又は複数のプログラムを記憶するためのメモリと、を備え、
前記1つ又は複数のプロセッサは、前記1つ又は複数のプログラムを実行する場合に、前記1つ又は複数のプロセッサに前述の第1態様のいずれかに記載のブロックチェーン上のスマートコントラクトの検証方法を実行させる。
ブロックチェーンネットワークにおける第1ノードから指定ブロックの、第1マークルツリーのルートノードと、第2マークルツリーのルートノードと、前記指定ブロックの一つ前のブロックの標識とを含むブロックヘッダ情報と、トランザクション標識とスマートコントラクトの実行結果とを含むトランザクションリストとを取得するステップS110と、
前記第1マークルツリーのルートノードと前記トランザクション標識を検証して、第1検証結果を得るステップS120と、
前記第2マークルツリーのルートノードと前記スマートコントラクトの実行結果を検証して、第2検証結果を得るステップS130と、
前記指定ブロックの一つ前のブロックの標識が予め記憶されたブロックヘッダチェーン構造にあるか否かを検証して、第3検証結果を得るステップS140と、
前記第1検証結果、前記第2検証結果、及び前記第3検証結果の全てが検証合格である場合に、前記スマートコントラクトの実行結果が有効であると判定するステップS150と、を含む。
前記第1マークルツリーのリーフノードは、前記指定ブロックにおけるすべてのトランザクション標識から構成され、前記第2マークルツリーのリーフノードは、前記指定ブロックにおけるすべてのスマートコントラクトの実行結果から構成される。
i、ブロックid(identification、標識)と、
ii、一つ前のブロックidと、
iii、第1マークルツリーのルートノードhash(ハッシュ値)と、
iv、第2マークルツリーのルートノードhashとのデータが含まれている。
ブロックチェーンネットワークにおける前記第1ノードおよび第2ノードから前記指定ブロックのブロックヘッダ情報をそれぞれ取得するステップS410と、
前記第1ノードにおける前記指定ブロックのブロックヘッダ情報と前記第2ノードにおける前記指定ブロックのブロックヘッダ情報とが一致するか否かを比較するステップS420と、
一致する場合に、前記指定ブロックが有効であると判定するS430と、
前記指定ブロックが有効であると判定した場合に、前記指定ブロックの一つ前のブロックの標識が予め記憶されたブロックヘッドチェーン構造にあるか否かを検証するステップS440と、を含む。
前記トランザクションリストにおけるトランザクション標識を用いて第3マークルツリーを構築し、前記第3マークルツリーのルートノードを算出するステップS210と、
前記第3マークルツリーのルートノードと前記第1マークルツリーのルートノードとが一致するか否かを比較するステップS220と、
一致する場合に、前記第1マークルツリーのルートノードと前記トランザクション標識が検証合格となるステップS230と、を含んでもよい。
前記トランザクションリストにおけるスマートコントラクトの実行結果を用いて第4マークルツリーを構築し、前記第4マークルツリーのルートノードを算出するステップS310と、
前記第4マークルツリーのルートノードと前記第2マークルツリーのルートノードとが一致するか否かを比較するステップS320と、
一致する場合に、前記第2マークルツリーのルートノードと前記スマートコントラクト実行結果が検証合格となるステップS330と、を含んでもよい。
4.1、tx(Transaction、取引)idリストがブロックヘッダの第1マークルツリーのルートにマッチングするか否かを判断し、例えば、純支払トランザクションを検証する。
4.2、スマートコントラクトの実行結果リストがブロックヘッドの第2マークルツリーのルートにマッチングするか否かを判断し、すなわち、スマートコントラクトに関わるトランザクションを検証する。
ブロックチェーンネットワークにおける第1ノードから指定ブロックの、第1マークルツリーのルートノードと、第2マークルツリーのルートノードと、前記指定ブロックの一つ前のブロックの標識とを含むブロックヘッダ情報と、トランザクション標識とスマートコントラクトの実行結果とを含むトランザクションリストとを取得するための取得ユニット100と、
前記第1マークルツリーのルートノードと前記トランザクション標識を検証して、第1検証結果を得るための第1検証ユニット200と、
前記第2マークルツリーのルートノードと前記スマートコントラクトの実行結果を検証して、第2検証結果を得るための第2検証ユニット300と、
前記指定ブロックの一つ前のブロックの標識が予め記憶されたブロックヘッダチェーン構造にあるか否かを検証して、第3検証結果を得るための第3検証ユニット400と、
前記第1検証結果、前記第2検証結果および前記第3検証結果の全てが検証合格である場合に、前記スマートコントラクトの実行結果が有効であると判定するための判定ユニット500と、を備え、
前記第1マークルツリーのリーフノードは、前記指定ブロックのすべてのトランザクション標識から構成され、前記第2マークルツリーのリーフノードは、前記指定ブロックのすべてのスマートコントラクトの実行結果から構成される。
Claims (11)
- ブロックチェーンネットワークにおける第1ノードから指定ブロックの、第1マークルツリーのルートノードと、第2マークルツリーのルートノードと、前記指定ブロックの一つ前のブロックの標識とを含むブロックヘッダ情報と、トランザクション標識とスマートコントラクトの実行結果とを含むトランザクションリストとを取得することと、
前記第1マークルツリーのルートノードと前記トランザクション標識を検証して、第1検証結果を得ることと、
前記第2マークルツリーのルートノードと前記スマートコントラクトの実行結果を検証して、第2検証結果を得ることと、
前記指定ブロックの一つ前のブロックの標識が予め記憶されたブロックヘッダチェーン構造にあるか否かを検証して、第3検証結果を得ることと、
前記第1検証結果、前記第2検証結果及び前記第3検証結果の全てが検証合格である場合に、前記スマートコントラクトの実行結果が有効であると判定することと、を含む、
ことを特徴とするブロックチェーン上のスマートコントラクトの検証装置により実行されるブロックチェーン上のスマートコントラクトの検証方法。 - 前記第1マークルツリーのルートノードと前記トランザクション標識を検証することは、
前記トランザクションリストにおけるトランザクション標識を用いて第3マークルツリーを構築し、前記第3マークルツリーのルートノードを算出することと、
前記第3マークルツリーのルートノードと前記第1マークルツリーのルートノードとが一致するか否かを比較することと、
一致する場合に、前記第1マークルツリーのルートノードと前記トランザクション標識が検証合格となることと、を含む、
ことを特徴とする請求項1に記載のブロックチェーン上のスマートコントラクトの検証方法。 - 前記第2マークルツリーのルートノードと前記スマートコントラクトの実行結果を検証することは、
前記トランザクションリストにおけるスマートコントラクトの実行結果を用いて第4マークルツリーを構築し、前記第4マークルツリーのルートノードを算出することと、
前記第4マークルツリーのルートノードと前記第2マークルツリーのルートノードとが一致するか否かを比較することと、
一致する場合に、前記第2マークルツリーのルートノードと前記スマートコントラクトの実行結果が検証合格となることと、を含む、
ことを特徴とする請求項1に記載のブロックチェーン上のスマートコントラクトの検証方法。 - 前記指定ブロックの一つ前のブロックの標識が予め記憶されたブロックヘッドチェーン構造にあるか否かを検証する前に、
ブロックチェーンネットワークにおける前記第1ノードおよび第2ノードから、前記指定ブロックのブロックヘッダ情報をそれぞれ取得することと、
前記第1ノードにおける前記指定ブロックのブロックヘッダ情報と前記第2ノードにおける前記指定ブロックのブロックヘッダ情報とが一致するか否かを比較することと、
一致する場合に、前記指定ブロックが有効であると判定することと、
前記指定ブロックが有効であると判定した場合に、前記指定ブロックの一つ前のブロックの標識が予め記憶されたブロックヘッドチェーン構造にあるか否かを検証することと、をさらに含む、
ことを特徴とする請求項1乃至3のいずれか1項に記載のブロックチェーン上のスマートコントラクトの検証方法。 - ブロックチェーンネットワークにおける第1ノードから指定ブロックの、第1マークルツリーのルートノードと、第2マークルツリーのルートノードと、前記指定ブロックの一つ前のブロックの標識とを含むブロックヘッダ情報と、トランザクション標識とスマートコントラクトの実行結果とを含むトランザクションリストとを取得する取得ユニットと、
前記第1マークルツリーのルートノードと前記トランザクション標識を検証して、第1検証結果を得る第1検証ユニットと、
前記第2マークルツリーのルートノードと前記スマートコントラクトの実行結果を検証して、第2検証結果を得る第2検証ユニットと、
前記指定ブロックの一つ前のブロックの標識が予め記憶されたブロックヘッダチェーン構造にあるか否かを検証して、第3検証結果を得る第3検証ユニットと、
前記第1検証結果、前記第2検証結果および前記第3検証結果の全てが検証合格である場合に、前記スマートコントラクトの実行結果が有効であると判定する判定ユニットと、を備える、
ことを特徴とするブロックチェーン上のスマートコントラクトの検証装置。 - 前記第1検証ユニットは、
前記トランザクションリストのトランザクション標識を用いて第3マークルツリーを構築して、前記第3マークルツリーのルートノードを算出し、
前記第3マークルツリーのルートノードと前記第1マークルツリーのルートノードとが一致するか否かを比較し、
一致する場合に、前記第1マークルツリーのルートノードと前記トランザクション標識が検証合格となることにさらに用いられる、
ことを特徴とする請求項5に記載のブロックチェーン上のスマートコントラクトの検証装置。 - 前記第2検証ユニットは、
前記トランザクションリストにおけるスマートコントラクトの実行結果を用いて第4マークルツリーを構築して、前記第4マークルツリーのルートノードを算出し、
前記第4マークルツリーのルートノードと前記第2マークルツリーのルートノードとが一致するか否かを比較し、
一致する場合に、前記第2マークルツリーのルートノードと前記スマートコントラクトの実行結果が検証合格となることにさらに用いられる、
ことを特徴とする請求項5に記載のブロックチェーン上のスマートコントラクトの検証装置。 - ブロックチェーンネットワークにおける前記第1ノードと第2ノードから、前記指定ブロックのブロックヘッダ情報をそれぞれ取得し、
前記第1ノードにおける前記指定ブロックのブロックヘッダ情報と前記第2ノードにおける前記指定ブロックのブロックヘッダ情報とが一致するか否かを比較し、
一致する場合に、前記指定ブロックが有効であると判定し、
前記指定ブロックが有効であると判定した場合に、前記指定ブロックの一つ前のブロック標識が予め記憶されたブロックヘッドチェーン構造にあるか否かを検証する第4検証ユニットをさらに備える、
ことを特徴とする請求項5乃至7のいずれか1項に記載のブロックチェーン上のスマートコントラクトの検証装置。 - 1つ又は複数のプロセッサと、
1つ又は複数のプログラムを記憶するメモリと、を備え、
前記1つ又は複数のプロセッサは、前記1つ又は複数のプログラムを実行する場合に、請求項1乃至4のいずれか1項に記載のブロックチェーン上のスマートコントラクトの検証方法を実行させる、
ことを特徴とするブロックチェーン上のスマートコントラクトの検証装置。 - コンピュータプログラムが記憶されているコンピュータ可読記憶媒体であって、
当該コンピュータプログラムがプロセッサにより実行される場合に、請求項1乃至4のいずれか1項に記載のブロックチェーン上のスマートコントラクトの検証方法を実行させる、
ことを特徴とするコンピュータ可読記憶媒体。 - コンピュータにおいて、プロセッサにより実行される場合、請求項1乃至4のいずれか1項に記載のブロックチェーン上のスマートコントラクトの検証方法を実現することを特徴とするプログラム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811101341.2 | 2018-09-20 | ||
CN201811101341.2A CN109345388B (zh) | 2018-09-20 | 2018-09-20 | 区块链智能合约验证方法、装置及存储介质 |
PCT/CN2019/091475 WO2020057196A1 (zh) | 2018-09-20 | 2019-06-17 | 区块链智能合约验证方法、装置及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2021515311A JP2021515311A (ja) | 2021-06-17 |
JP7018517B2 true JP7018517B2 (ja) | 2022-02-10 |
Family
ID=65305888
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020544505A Active JP7018517B2 (ja) | 2018-09-20 | 2019-06-17 | ブロックチェーン上のスマートコントラクトの検証方法、装置、記憶媒体、及びプログラム |
Country Status (6)
Country | Link |
---|---|
US (1) | US20200412526A1 (ja) |
EP (1) | EP3678346B1 (ja) |
JP (1) | JP7018517B2 (ja) |
KR (1) | KR102431459B1 (ja) |
CN (1) | CN109345388B (ja) |
WO (1) | WO2020057196A1 (ja) |
Families Citing this family (33)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109345388B (zh) * | 2018-09-20 | 2020-09-08 | 百度在线网络技术(北京)有限公司 | 区块链智能合约验证方法、装置及存储介质 |
EP3613203B1 (en) * | 2019-03-04 | 2023-06-07 | Advanced New Technologies Co., Ltd. | Methods and devices for performing off-chain testing on smart contract |
CN111695991B (zh) * | 2019-03-14 | 2024-02-06 | 北京沃东天骏信息技术有限公司 | 基于区块的合约处理方法、装置、区块链节点及存储介质 |
CN110335131B (zh) * | 2019-06-04 | 2023-12-05 | 创新先进技术有限公司 | 基于树的相似度匹配的金融风险控制方法及装置 |
CN110336677B (zh) * | 2019-07-15 | 2022-02-11 | 杭州复杂美科技有限公司 | 区块打包、广播方法和系统、设备及存储介质 |
CN110365768B (zh) * | 2019-07-15 | 2021-07-06 | 腾讯科技(深圳)有限公司 | 分布式系统的数据同步方法、装置、介质、电子设备 |
CN111368003B (zh) * | 2020-03-06 | 2020-10-16 | 安徽中科智链信息科技有限公司 | 一种多链锚定数据的管理方法 |
CN111159750B (zh) * | 2020-04-07 | 2021-02-05 | 南京邮电大学 | 基于联盟链的汽车维修数据存储方法 |
CN111432027B (zh) * | 2020-04-14 | 2023-04-14 | 杭州复杂美科技有限公司 | 平行链区块同步方法、设备和存储介质 |
CN111523896B (zh) * | 2020-05-06 | 2023-05-30 | 杭州复杂美科技有限公司 | 防攻击方法、设备和存储介质 |
CN111884807B (zh) * | 2020-07-13 | 2021-10-26 | 腾讯科技(深圳)有限公司 | 基于区块链的物品预约方法、装置、设备以及介质 |
CN111915301B (zh) * | 2020-08-05 | 2022-08-26 | 腾讯科技(深圳)有限公司 | 基于区块链的数据处理方法、装置、电子设备及可读介质 |
CN112037055B (zh) * | 2020-08-17 | 2023-05-05 | 成都质数斯达克科技有限公司 | 交易处理方法、装置、电子设备及可读存储介质 |
CN114175011A (zh) * | 2020-10-27 | 2022-03-11 | 支付宝(杭州)信息技术有限公司 | 具有高效世界状态数据结构的区块链系统 |
CN112749969B (zh) * | 2020-11-16 | 2022-08-09 | 腾讯科技(深圳)有限公司 | 一种数据处理方法、装置、计算机设备及存储介质 |
CN112769894B (zh) * | 2020-12-17 | 2022-05-17 | 国网浙江省电力有限公司信息通信分公司 | 一种基于区块链Merkle树验证的设备认证方法 |
CN112948350B (zh) * | 2021-02-02 | 2023-08-01 | 中央财经大学 | 一种基于mpt验证的分布式账本模型冷数据归档及迁移存储方法 |
CN112559637B (zh) * | 2021-02-19 | 2021-06-18 | 腾讯科技(深圳)有限公司 | 基于分布式存储的数据处理方法、装置、设备以及介质 |
CN113282798B (zh) * | 2021-05-07 | 2022-03-25 | 广州中国科学院计算机网络信息中心 | 一种基于梅克尔树的标识资源版本验证方法及系统 |
CN113592645B (zh) * | 2021-07-02 | 2023-11-14 | 中国人民银行数字货币研究所 | 数据验证的方法和装置 |
CN113259135B (zh) * | 2021-07-06 | 2022-01-21 | 常州市建筑科学研究院集团股份有限公司 | 用于检测数据防篡改的轻量级区块链通信认证装置及其方法 |
CN113254163B (zh) * | 2021-07-06 | 2021-11-09 | 支付宝(杭州)信息技术有限公司 | 区块链数据的处理方法及装置 |
CN113542396B (zh) * | 2021-07-13 | 2024-03-08 | 华润数字科技有限公司 | 一种区块链存储及通讯方法、系统及其相关组件 |
CN113657900B (zh) * | 2021-07-13 | 2024-03-22 | 中国人民银行数字货币研究所 | 一种跨链交易验证方法、系统以及跨链交易系统 |
CN113362068B (zh) * | 2021-08-10 | 2022-03-29 | 北京连琪科技有限公司 | 一种轻节点验证区块链状态转移的方法 |
CN113626532B (zh) * | 2021-09-03 | 2023-11-24 | 杭州复杂美科技有限公司 | 非法节点识别方法、防作弊方法、计算机设备和存储介质 |
CN113704271A (zh) * | 2021-09-03 | 2021-11-26 | 杭州复杂美科技有限公司 | 默克尔树生成方法、非法节点识别方法、设备和存储介质 |
CN114153849A (zh) * | 2021-12-02 | 2022-03-08 | 深圳前海微众银行股份有限公司 | 一种区块链的数据生成及验证方法及装置 |
CN114401091B (zh) * | 2021-12-16 | 2023-10-24 | 北京航空航天大学 | 基于区块链的设备跨域认证管理方法及装置 |
WO2023148042A1 (en) * | 2022-02-07 | 2023-08-10 | Nchain Licensing Ag | Blockchain based privacy enhanced outsourced data storage |
GB2615752B (en) * | 2022-02-15 | 2024-04-24 | Nchain Licensing Ag | Attesting to membership of a set |
CN116028990B (zh) * | 2023-03-30 | 2023-07-18 | 中国科学技术大学 | 一种基于区块链的防篡改隐私保护日志审计方法 |
CN116308368B (zh) * | 2023-05-24 | 2023-07-18 | 国网区块链科技(北京)有限公司 | 一种中继区块链跨链数据安全存储方法、装置及相关设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017189027A1 (en) | 2016-04-29 | 2017-11-02 | Digital Asset Holdings | Digital asset modeling |
WO2018137564A1 (zh) | 2017-01-26 | 2018-08-02 | 阿里巴巴集团控股有限公司 | 一种业务处理方法及装置 |
WO2018149345A1 (zh) | 2017-02-17 | 2018-08-23 | 阿里巴巴集团控股有限公司 | 一种数据处理方法及装置 |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107145768B (zh) | 2016-03-01 | 2021-02-12 | 华为技术有限公司 | 版权管理方法和系统 |
US10447478B2 (en) * | 2016-06-06 | 2019-10-15 | Microsoft Technology Licensing, Llc | Cryptographic applications for a blockchain system |
WO2018026727A1 (en) * | 2016-08-01 | 2018-02-08 | Cryptowerk Corp. | Computer-implemented method and system of tamper-evident recording of a plurality of service data items |
KR101849917B1 (ko) * | 2016-10-13 | 2018-05-31 | 주식회사 코인플러그 | 스마트 컨트랙트 기반의 인증서 서비스를 제공하는 방법 및 이를 이용한 서버 |
US10554746B2 (en) * | 2016-11-14 | 2020-02-04 | International Business Machines Corporation | Decentralized immutable storage blockchain configuration |
CN107077674B (zh) | 2016-12-29 | 2021-06-11 | 达闼机器人有限公司 | 交易验证处理方法、装置及节点设备 |
CN107196900B (zh) * | 2017-03-24 | 2020-04-24 | 创新先进技术有限公司 | 一种共识校验的方法及装置 |
CN106899412A (zh) | 2017-03-30 | 2017-06-27 | 北京链银博科技有限责任公司 | 一种区块链隐私保护方法、装置及系统 |
JP7201622B2 (ja) * | 2017-05-26 | 2023-01-10 | エヌチェーン ライセンシング アーゲー | スクリプトに基づくブロックチェーン相互作用 |
US11055703B2 (en) * | 2017-06-19 | 2021-07-06 | Hitachi, Ltd. | Smart contract lifecycle management |
US11281644B2 (en) * | 2017-07-28 | 2022-03-22 | Hitachi, Ltd. | Blockchain logging of data from multiple systems |
US11416942B1 (en) * | 2017-09-06 | 2022-08-16 | State Farm Mutual Automobile Insurance Company | Using a distributed ledger to determine fault in subrogation |
US20190253256A1 (en) * | 2018-02-13 | 2019-08-15 | Texas Precious Metals LLC | Tracking and verifying authenticity of an asset via a distributed ledger |
US10904009B2 (en) * | 2018-05-30 | 2021-01-26 | International Business Machines Corporation | Blockchain implementing delta storage |
US11334439B2 (en) * | 2018-08-29 | 2022-05-17 | International Business Machines Corporation | Checkpointing for increasing efficiency of a blockchain |
CN109345388B (zh) * | 2018-09-20 | 2020-09-08 | 百度在线网络技术(北京)有限公司 | 区块链智能合约验证方法、装置及存储介质 |
-
2018
- 2018-09-20 CN CN201811101341.2A patent/CN109345388B/zh active Active
-
2019
- 2019-06-17 WO PCT/CN2019/091475 patent/WO2020057196A1/zh active Application Filing
- 2019-06-17 KR KR1020207019610A patent/KR102431459B1/ko active IP Right Grant
- 2019-06-17 EP EP19863164.0A patent/EP3678346B1/en active Active
- 2019-06-17 JP JP2020544505A patent/JP7018517B2/ja active Active
- 2019-06-17 US US16/969,752 patent/US20200412526A1/en not_active Abandoned
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017189027A1 (en) | 2016-04-29 | 2017-11-02 | Digital Asset Holdings | Digital asset modeling |
WO2018137564A1 (zh) | 2017-01-26 | 2018-08-02 | 阿里巴巴集团控股有限公司 | 一种业务处理方法及装置 |
WO2018149345A1 (zh) | 2017-02-17 | 2018-08-23 | 阿里巴巴集团控股有限公司 | 一种数据处理方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
EP3678346A4 (en) | 2021-09-29 |
CN109345388B (zh) | 2020-09-08 |
EP3678346A1 (en) | 2020-07-08 |
CN109345388A (zh) | 2019-02-15 |
KR102431459B1 (ko) | 2022-08-11 |
WO2020057196A1 (zh) | 2020-03-26 |
JP2021515311A (ja) | 2021-06-17 |
EP3678346B1 (en) | 2022-09-07 |
KR20200095540A (ko) | 2020-08-10 |
US20200412526A1 (en) | 2020-12-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7018517B2 (ja) | ブロックチェーン上のスマートコントラクトの検証方法、装置、記憶媒体、及びプログラム | |
CN109034809B (zh) | 区块链的生成方法、装置、区块链节点及存储介质 | |
KR102460055B1 (ko) | 블록체인-기반 데이터 검증 방법 및 장치, 및 전자 디바이스 | |
US11973869B2 (en) | Maintaining blocks of a blockchain in a partitioned blockchain network | |
CN111901121B (zh) | 跨区块链的认证方法及装置、电子设备 | |
CN108961052B (zh) | 区块链数据的验证方法、存储方法、装置、设备和介质 | |
CN108389129B (zh) | 基于区块链的交易执行方法及装置、电子设备 | |
CN109542888B (zh) | 区块链的数据修改和同步方法、装置、设备及存储介质 | |
CN110011788B (zh) | 一种基于区块链的数据处理方法、系统及相关设备 | |
US20210049617A1 (en) | Blockchain-based data verification method, apparatus, and electronic device | |
CN106934619B (zh) | 一种交易记录的方法及系统 | |
EP3779760B1 (en) | Blockchain-based data processing method and apparatus, and electronic device | |
WO2020114385A1 (zh) | 一种基于区块链网络的可信节点确定方法和装置 | |
WO2020220251A1 (zh) | 区块链系统数据处理方法和区块的生成方法 | |
CN109088902B (zh) | 注册方法及装置、认证方法及装置 | |
CN110287696A (zh) | 一种反弹shell进程的检测方法、装置和设备 | |
CN109189859A (zh) | 区块链网络中的节点初始化方法和装置 | |
CN105653579A (zh) | 一种对分布式事务进行测试的方法和装置 | |
CN110795763A (zh) | 电子证照处理方法、查询方法、装置、设备、平台和介质 | |
CN110597922A (zh) | 数据处理方法、装置、终端及存储介质 | |
CN111782551A (zh) | 针对区块链项目的测试方法、装置及计算机设备 | |
CN113505138A (zh) | 区块链系统中状态证明及执行区块的方法及装置 | |
CN116938523A (zh) | 区块链系统、运行方法、电子设备和存储介质 | |
CN111143196A (zh) | 数据库的测试方法以及装置 | |
CN116915791A (zh) | 区块链交易冲突检测的方法、排序节点及背书节点 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20200821 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20200821 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20211007 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20211227 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20220112 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20220131 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7018517 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |