Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP6975332B2 - ブロックチェーンベースのスマートコントラクト呼び出し方法および装置、および電子デバイス - Google Patents
[go: Go Back, main page]

JP6975332B2 - ブロックチェーンベースのスマートコントラクト呼び出し方法および装置、および電子デバイス - Google Patents

ブロックチェーンベースのスマートコントラクト呼び出し方法および装置、および電子デバイス Download PDF

Info

Publication number
JP6975332B2
JP6975332B2 JP2020529458A JP2020529458A JP6975332B2 JP 6975332 B2 JP6975332 B2 JP 6975332B2 JP 2020529458 A JP2020529458 A JP 2020529458A JP 2020529458 A JP2020529458 A JP 2020529458A JP 6975332 B2 JP6975332 B2 JP 6975332B2
Authority
JP
Japan
Prior art keywords
data
blockchain
smart contract
target
transaction
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
Application number
JP2020529458A
Other languages
English (en)
Other versions
JP2021512379A (ja
Inventor
ホンリン・チウ
Original Assignee
アドバンスド ニュー テクノロジーズ カンパニー リミテッド
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by アドバンスド ニュー テクノロジーズ カンパニー リミテッド filed Critical アドバンスド ニュー テクノロジーズ カンパニー リミテッド
Publication of JP2021512379A publication Critical patent/JP2021512379A/ja
Application granted granted Critical
Publication of JP6975332B2 publication Critical patent/JP6975332B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic 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/3236Cryptographic 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/3239Cryptographic 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
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06QINFORMATION 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/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3829Payment protocols; Details thereof insuring higher security of transaction involving key management
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/182Distributed file systems
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2379Updates performed during online database operations; commit processing
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting 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/6272Protecting 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 by registering files or documents with a third party
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols 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]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/53Network services using third party service providers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic 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/3247Cryptographic 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic 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/3297Cryptographic 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 time stamps, e.g. generation of time stamps
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Mining & Analysis (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Business, Economics & Management (AREA)
  • Computational Linguistics (AREA)
  • Computing Systems (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Bioethics (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Description

関連出願の相互参照
本願は、参照によりその全体が本明細書に組み込まれる、2018年6月27日に出願された中国特許出願201810681249.1の優先権を主張する。
本明細書の1つまたは複数の実施形態は、ブロックチェーン技術の分野に関し、特に、ブロックチェーンベースのスマートコントラクト呼び出し方法および装置、および電子デバイスに関する。
分散台帳技術とも称される、ブロックチェーン技術は、完全な分散データベースを共同で維持するためにいくつかのコンピューティングデバイスが「アカウンティング」に共同で参加する注目の技術である。ブロックチェーン技術は、分散化と透明性により特徴付けられ、各コンピューティングデバイスはデータベースにデータを記録でき、コンピューティングデバイス間でデータを迅速に同期できる。従って、ブロックチェーン技術は多くの分野に広く適用されている。
本明細書は、ブロックチェーンベースのスマートコントラクト呼び出し方法を提供し、方法は、スマートコントラクトの呼び出しを開始するために使用されるターゲットトランザクションを受信するステップであって、ターゲットトランザクションは呼び出しデータを含み、呼び出しデータの少なくとも一部が、ブロックチェーンに相互接続された第三者ストレージシステムに格納されたターゲットデータのデータダイジェストを含む、ステップと、第三者ストレージシステムからデータダイジェストに対応するターゲットデータをクエリするステップと、ターゲットデータについてコンテンツの検証を実行するステップと、ターゲットデータについての検証が成功した場合、スマートコントラクトを呼び出して、ターゲットトランザクションの呼び出しデータについてスマートコントラクト計算を実行するステップと、スマートコントラクト計算が完了した後、ブロックチェーンの分散データベースに計算結果を格納するステップと、を備える。
任意選択で、第三者ストレージシステムは、ターゲットデータとターゲットデータのデータダイジェストとの間のマッピング関係を格納し、第三者ストレージシステムからデータダイジェストに対応するターゲットデータをクエリするステップは、クエリインデックスとしてデータダイジェストを使用することによって第三者ストレージシステムへのクエリを開始して、データダイジェストに対応するターゲットデータをクエリするステップを備える。
任意選択で、ターゲットデータについてコンテンツの検証を実行するステップは、所定のダイジェストアルゴリズムに基づいてターゲットデータのデータダイジェストを計算するステップと、計算したデータダイジェストがターゲットトランザクションのターゲットデータのデータダイジェストに一致するか否かを判定するステップと、計算したデータダイジェストがターゲットトランザクションのターゲットデータのデータダイジェストに一致した場合、ターゲットデータについての検証が成功したと決定するステップとを備える。
任意選択で、第三者ストレージシステムは、集中型連想記憶CASシステムまたは分散型CASシステムを備える。
任意選択で、ブロックチェーンは、複数のメンバブロックチェーンを含むコンソーシアムブロックチェーンの任意のメンバブロックチェーンである。
任意選択で、第三者ストレージシステムは、コンソーシアムブロックチェーンのブロックチェーンとのクロスチェーンデータ参照関係を有する別のメンバブロックチェーンである。
本明細書はさらに、ブロックチェーンベースのスマートコントラクト呼び出し装置を提供し、装置は、スマートコントラクトの呼び出しを開始するために使用されるターゲットトランザクションを受信するように構成された受信モジュールであって、ターゲットトランザクションは呼び出しデータを含み、呼び出しデータの少なくとも一部が、ブロックチェーンに相互接続された第三者ストレージシステムに格納されたターゲットデータのデータダイジェストを含む、受信モジュールと、第三者ストレージシステムからデータダイジェストに対応するターゲットデータをクエリし、ターゲットデータについてコンテンツの検証を実行するように構成されたクエリモジュールと、ターゲットデータについての検証が成功した場合、スマートコントラクトを呼び出して、ターゲットトランザクションの呼び出しデータについてスマートコントラクト計算を実行し、スマートコントラクト計算が完了した後、ブロックチェーンの分散データベースに計算結果を格納するように構成された呼び出しモジュールとを備える。
任意選択で、第三者ストレージシステムは、ターゲットデータとターゲットデータのデータダイジェストとの間のマッピング関係を格納し、クエリモジュールは、クエリインデックスとしてデータダイジェストを使用することによって第三者ストレージシステムへのクエリを開始して、データダイジェストに対応するターゲットデータをクエリするように構成される。
任意選択で、クエリモジュールは、所定のダイジェストアルゴリズムに基づいてターゲットデータのデータダイジェストを計算し、計算したデータダイジェストがターゲットトランザクションのターゲットデータのデータダイジェストに一致するか否かを判定し、計算したデータダイジェストがターゲットトランザクションのターゲットデータのデータダイジェストに一致した場合、ターゲットデータについての検証が成功したと決定するようにさらに構成される。
任意選択で、第三者ストレージシステムは、集中型連想記憶CASシステムまたは分散型CASシステムを備える。
任意選択で、ブロックチェーンは、複数のメンバブロックチェーンを含むコンソーシアムブロックチェーンの任意のメンバブロックチェーンである
任意選択で、第三者ストレージシステムは、コンソーシアムブロックチェーンのブロックチェーンとのクロスチェーンデータ参照関係を有する別のメンバブロックチェーンである。
本明細書はさらに、プロセッサとマシン実行可能命令を格納するように構成されたメモリとを備える電子デバイスをさらに提供し、メモリに格納され、ブロックチェーンベースのスマートコントラクト呼び出しの制御ロジックに対応するマシン実行可能命令を読み出して実行することによって、プロセッサは、スマートコントラクトの呼び出しを開始するために使用されるターゲットトランザクションを受信することであって、ターゲットトランザクションは呼び出しデータを含み、呼び出しデータの少なくとも一部が、ブロックチェーンに相互接続された第三者ストレージシステムに格納されたターゲットデータのデータダイジェストを含む、ことと、第三者ストレージシステムからデータダイジェストに対応するターゲットデータをクエリすることと、ターゲットデータについてコンテンツの検証を実行することと、ターゲットデータについての検証が成功した場合、スマートコントラクトを呼び出して、ターゲットトランザクションの呼び出しデータについてスマートコントラクト計算を実行することと、スマートコントラクト計算が完了した後、ブロックチェーンの分散データベースに計算結果を格納することとを行うように構成される。
前述の実施によれば、スマートコントラクトの呼び出しを開始するために使用されるトランザクションは、第三者ストレージシステムに格納されたターゲットデータのデータダイジェストを含み、それにより、ブロックチェーンのトランザクションを受信するノードデバイスは、データダイジェストに基づいて第三者ストレージシステムから対応するターゲットデータをクエリし、ターゲットデータについてコンテンツ検証を実行し、ターゲットデータについての検証が成功した後に、スマートコントラクトを呼び出してトランザクションの呼び出しデータについてスマートコントラクト計算を実行し、スマートコントラクト計算が完了した後に、ブロックチェーンの分散データベースに計算結果を格納することができる。したがって、ブロックチェーンに相互接続された第三者ストレージシステムに格納されたターゲットデータは、スマートコントラクトの呼び出しを開始するために使用されるトランザクションの呼び出しデータとして参照され、第三者ストレージシステムに格納されたターゲットデータのオリジナルコンテンツをブロックチェーンの各ノードデバイスと同期することによって生じるブロックチェーン・データ・ストレージの冗長性を軽減する。
例示的な実施形態による、ブロックチェーンベースのスマートコントラクト呼び出し方法を示すフローチャートである。 例示的な実施形態による、コンソーシアムブロックチェーンを示す概略的構造図である。 例示的な実施形態による、電子デバイスを示す概略的構造図である。 例示的な実施形態による、ブロックチェーンベースのスマートコントラクト呼び出し装置を示すブロック図である。
ブロックチェーンの従来のスマートコントラクト呼び出しプロセスでは、スマートコントラクトを呼び出すために必要とされる呼び出しデータ(すなわち、スマートコントラクトに入力される呼び出しパラメータ)は通常、ブロックチェーンの分散データベース(すなわち、分散台帳)に格納されたデータコンテンツから取得され、外部メモリに格納されたデータコンテンツは参照され得ない。したがって、ブロックチェーンネットワークの各ノードデバイスがスマートコントラクトを呼び出すときのスマートコントラクト計算のために使用される呼び出しデータは通常、チェーンから取得され、それにより「閉鎖データ使用ループ」を形成する。
しかしながら、本明細書は、第三者ストレージプラットフォームに格納された不変のデータコンテンツが、スマートコントラクトが呼び出されるときにトランザクションコンテンツとして参照され、ブロックチェーンの「閉鎖データ使用ループ」を壊すという技術的解決策を開示することを目的とする
実施形態では、ブロックチェーンは、事前に第三者ストレージシステムと相互接続され、第三者ストレージシステムは、ブロックチェーンに展開されたスマートコントラクトに参照され得るいくつかの不変のデータコンテンツを事前に格納できる。
スマートコントラクトの呼び出しを開始すると、ブロックチェーンにアクセスするメンバユーザは、第三者ストレージシステムに格納されたデータコンテンツのデータダイジェストを、スマートコントラクトの呼び出しを開始するために使用されるトランザクションに追加でき、第三者ストレージシステムに格納されたデータコンテンツを呼び出しデータとして参照する。
メンバユーザによって発行されたトランザクションを受信すると、ブロックチェーンのノードデバイスは、データダイジェストに基づいて第三者ストレージシステムへのクエリを開始でき、データダイジェストに対応するデータコンテンツをクエリし、識別されたデータコンテンツについてコンテンツの検証を実行できる。コンテンツの検証が成功すると、ノードデバイスは、スマートコントラクトを呼び出してスマートコントラクト内に宣言されたスマートコントラクトプログラムを宣言し、トランザクションの完全な呼び出しデータについてスマートコントラクト計算を実行でき、スマートコントラクト計算が完了した後にブロックチェーンの分散データベースに計算結果を格納できる。
前述の実施形態では、スマートコントラクトの呼び出しを開始するために使用されるトランザクションは、第三者ストレージシステムに格納されたターゲットデータのデータダイジェストを含み、その結果、ブロックチェーンのトランザクションを受信するノードデバイスは、データダイジェストに基づいて第三者ストレージシステムに対応するターゲットデータをクエリし、ターゲットデータについてコンテンツ検証を実行し、ターゲットデータについての検証が成功した後、スマートコントラクトを呼び出してトランザクションの呼び出しデータについてスマートコントラクト計算を実行し、スマートコントラクト計算が完了した後、ブロックチェーンの分散データベースに計算結果を格納できる。したがって、ブロックチェーンと相互接続された第三者ストレージシステムに格納されたターゲットデータは、スマートコントラクトの呼び出しを開始するために使用されるトランザクションの呼び出しデータとして参照され、第三者ストレージシステムに格納されたターゲットデータのオリジナルコンテンツをブロックチェーンの各ノードデバイスに同期することによって生じるブロックチェーン・データ・ストレージの冗長性を軽減する。
以下は、適用シナリオを参照して実施形態を使用して本明細書について説明する。
図1を参照すると、図1は、本明細書の実施形態による、ブロックチェーンベースのスマートコントラクト呼び出し方法を示す。方法は、ブロックチェーンのノードデバイスに適用され、以下のステップを含む。
ステップ102:スマートコントラクトの呼び出しを開始するために使用されるターゲットトランザクションを受信し、ターゲットトランザクションは呼び出しデータを含み、呼び出しデータの少なくとも一部は、ブロックチェーンに相互接続された第三者ストレージシステムに格納されたターゲットデータのデータダイジェストを含む。
ステップ104:第三者ストレージシステムにデータダイジェストに対応するターゲットデータをクエリし、ターゲットデータについてコンテンツの検証を実行する。
ステップ106:ターゲットデータについての検証が成功する場合、スマートコントラクトを呼び出してターゲットトランザクションの呼び出しデータについてスマートコントラクト計算を実行し、スマートコントラクト計算が完了した後、ブロックチェーンの分散データベースに計算結果を格納する。
本明細書に説明されるブロックチェーンは、ブロックチェーンと相互接続された第三者ストレージシステムに格納された不変のデータコンテンツが、サポートされたスマートコントラクトによって呼び出しデータとして参照され得る任意のタイプのブロックチェーンを含むことができる。
例えば、シナリオでは、ブロックチェーンは、いくつかのメンバブロックチェーンを含むコンソーシアムブロックチェーンの任意のメンバブロックチェーンであってよい。コンソーシアムブロックチェーンでは、別のメンバブロックチェーンに格納されたデータコンテンツが、各メンバブロックチェーンによってサポートされる各スマートコントラクトによって呼び出しデータとして複数チェーンにわたって参照され得る。
第三者ストレージシステムは、ブロックチェーンのために信頼できるデータストレージサービスを提供できる連想記憶(CAS)プラットフォームを含む。コンテンツのアドレス指定能力は、ストレージシステムのデータ・ストレージ・オフセットではなく、データコンテンツに基づいてアドレス指定が実行されることを意味する。
CASプラットフォーム上では、格納されたデータコンテンツのデータダイジェストが、オリジナルのデータコンテンツのクエリインデックスとして使用され、クエリインデックスとオリジナルのデータコンテンツとの間のマッピング関係が格納され、その結果、データクエリの当事者は、クエリインデックスとしてデータダイジェストを使用することによってCASプラットフォームから対応するオリジナルのデータコンテンツをクエリできる。
例えば、実施形態では、データダイジェストは、データコンテンツについてハッシュ計算を実行することによって取得されるハッシュ値であってよい。データクエリの当事者は、クエリインデックスとしてハッシュ値を使用して、CASプラットフォームからハッシュ値に対応するオリジナルのデータコンテンツをクエリできる。
実際の適用では、第三者ストレージシステムは、従来の集中型の連想記憶(CAS)システムを含み得るし、非集中型の分散型CASシステムを含み得る。
例えば、シナリオでは、ブロックチェーンは、いくつかのメンバブロックチェーンを含むコンソーシアムブロックチェーンの任意のメンバブロックチェーンであってよい。加えて、第三者ストレージシステムは、コンソーシアムブロックチェーンに展開された分散システムであってよく、オブジェクトストレージサービス(OSS)アーキテクチャなど、コンソーシアムブロックチェーンの各メンバブロックチェーンと相互接続され得る。
代わりに、別の例では、コンソーシアムブロックチェーンのブロックチェーンとのクロスチェーンデータ参照関係を有する別のメンバブロックチェーンが、ブロックチェーンと相互接続された第三者ストレージシステムとして使用され得、メンバブロックチェーン間のクロスチェーンデータ参照を実施する。言い換えると、第三者ストレージシステムは、ブロックチェーンとのクロスチェーンデータ参照関係を有する別のブロックチェーンであり得る。本明細書の技術的解決策は、「第三者ストレージシステムの展開」、「呼び出しデータの参照」、および「スマートコントラクトの呼び出しおよび実行」を参照して、ブロックチェーンがいくつかのメンバブロックチェーンを含むコンソーシアムブロックチェーンのメンバブロックチェーンである例を使用して、以下に詳細に説明される。
(1)第三者ストレージシステムの展開
本明細書では、オペレータは、いくつかのメンバブロックチェーンを含むコンソーシアムブロックチェーンを事前に確立できる。コンソーシアムブロックチェーンでは、各メンバブロックチェーンは、コンソーシアムブロックチェーンのコンソーシアムメンバである。前述のブロックチェーンは、コンソーシアムブロックチェーンの任意のメンバブロックチェーンであってよい。
コンソーシアムブロックチェーンのオペレータは、コンソーシアムブロックチェーンの第三者ストレージシステムをさらに展開できる。第三者ストレージシステムは、コンソーシアムブロックチェーンの各メンバブロックチェーンと相互接続され、各メンバブロックチェーンのために信頼できるデータストレージサービスを提供する。
例えば、第三者ストレージシステムは、各メンバブロックチェーンのために常に信頼できるAPIアクセスインターフェースを提供でき、その結果、コンソーシアムブロックチェーン中の各メンバブロックチェーンは、APIアクセスインターフェースにアクセスすることによって第三者ストレージシステムに相互接続され得る。
コンソーシアムブロックチェーンの第三者ストレージシステムでは、グローバルな第三者ストレージシステムが、コンソーシアムブロックチェーンのために展開され得るか、独立した第三者ストレージシステムが、コンソーシアムブロックチェーン中の各メンバブロックチェーンに対して展開され得る。実施形態は、本明細書では限定されない。
本明細書では、第三者ストレージシステムは、コンテンツのアドレス指定能力をサポートするCASシステムであってよい。実際の適用では、第三者ストレージシステムは、従来の集中型CASシステムであるか、分散型CASシステムであってよい。
分散型CASシステムは、従来の集中型の分散システムと非集中型の分散システムを含み得る。
示される実施形態では、第三者ストレージシステムは、コンソーシアムブロックチェーンに展開されたOSSアーキテクチャベースの集中型の分散システムなどであってよく、コンソーシアムブロックチェーン中の各メンバブロックチェーンと相互接続され得る。
示される別の実施形態では、第三者ストレージシステムは、非集中型の分散システムであってよい。実施形態では、ブロックチェーンとのクロスチェーンデータ参照関係を有するコンソーシアムブロックチェーン中の別のメンバブロックチェーンが、ブロックチェーンと相互接続された第三者ストレージシステムとして使用され得る。言い換えると、コンソーシアムブロックチェーン中の任意のメンバブロックチェーンは、別のメンバブロックチェーンと相互接続された第三者ストレージシステムとして使用され、クロスチェーンデータ参照を実施できる。
例えば、シナリオでは、オペレータは、実際のサービス要件に基づいてコンソーシアムブロックチェーンを確立でき、コンソーシアムブロックチェーン中のメンバブロックチェーンに異なるサービス役割を割り当てることができる。具体的には、コンソーシアムブロックチェーンは完全なサービスプロセスに対応し、各メンバブロックチェーンは完全なサービスプロセスのうちの一つのサブプロセスに対応できる。
「オンライン住宅賃貸トランザクション」というサービス要件に基づいてオペレータによって確立されたコンソーシアムブロックチェーンが、例として使用され、コンソーシアムブロックチェーンを形成する各メンバブロックチェーンが、「トランザクションチェーン」、「認証チェーン」、および「データチェーン」を含むことができる。「トランザクションチェーン」、「認証チェーン」、および「データチェーン」は、「オンライン住宅賃貸トランザクション」のサービスプロセスの一つのサブプロセスに個別に対応できる。例えば、「データチェーン」は、住宅賃貸ユーザの実名のデータを維持するために使用され、「認証チェーン」は、ユーザ固有の住宅賃貸の実名の認証を完了するために使用され、「トランザクションチェーン」は、オンラインの住宅賃貸トランザクションを完了するために使用される。
次いで、オペレータは、メンバブロックチェーン間の単方向クロスチェーンデータ参照関係に基づいて、サービスレベルで有向非巡回グラフ(DAG)トポロジのトポロジ図としてコンソーシアムブロックチェーンを確立できる。
メンバブロックチェーン間の単方向クロスチェーンデータ参照関係は通常、実際のサービス要件に依存し、本明細書では限定されないことに留意すべきである。
例えば、図2を参照すると、図2は、例に示されたDAG構造のコンソーシアムブロックチェーンを示す概略図である。
図2に示すように、「オンライン住宅賃貸トランザクション」というサービス要件に基づいてオペレータによって確立されたコンソーシアムブロックチェーンが例として使用され、コンソーシアムブロックチェーンを形成する各メンバブロックチェーンが、「トランザクションチェーン」、「認証チェーン」、および「データチェーン」を含むことができる。「データチェーン」は、住宅賃貸ユーザの実名のデータを維持するために使用され、ユーザは、「データチェーン」にトランザクションを発行することによって「データチェーン」の分散データベースに実名のデータを格納できる。「認証チェーン」は、「データチェーン」に発行されたユーザの実名のデータを参照するために使用され、ユーザ固有の住宅賃貸実名認証を検証し、ユーザは、「認証チェーン」にトランザクションを発行することによって実名の認証を完了でき、「認証チェーン」の分散データベースに実名認証結果を発行できる。「トランザクションチェーン」が、「認証チェーン」に発行されたユーザ固有の実名認証結果を参照するために使用され、その結果、ユーザは、「トランザクションチェーン」にトランザクションを発行することによってオンライン住宅賃貸トランザクションを完了でき、「認証チェーン」の分散データベースにトランザクション結果を発行できる。
コンソーシアムブロックチェーン中の任意のターゲット・メンバ・ブロックチェーンとのクロスチェーンデータ参照関係を有する別のメンバブロックチェーンは、ターゲット・メンバ・ブロックチェーンに相互接続された分散型ストレージプラットフォームとして使用される。
メンバブロックチェーン間のクロスチェーンデータ参照は、サービスレベルで実施され得る。
加えて、第三者ストレージシステムとして使用されるメンバブロックチェーンは、展開されたスマートコントラクトを呼び出して実行し、第三者ストレージシステムに格納されたターゲットデータがスマートコントラクト計算のために使用される呼び出しデータ中に参照される場合、参照されたターゲットデータのオリジナルコンテンツは、ターゲット・メンバ・ブロックチェーンの各ノードデバイスともはや同期される必要がなく、ターゲット・メンバ・ブロックチェーンはもはや参照されるターゲットデータのオリジナルコンテンツを格納する必要がない。
したがって、ターゲット・メンバ・ブロックチェーンはもはや、ターゲット・メンバ・ブロックチェーンおよび第三者ストレージシステムとして使用されるメンバブロックチェーンから同期された参照されるターゲットデータに格納された、ターゲットデータのオリジナルコンテンツ間の追加のデータ関係をセットアップする必要はなく、参照されるターゲットデータのデータダイジェストを使用することによってのみ2つの異なるブロックチェーンの参照されるターゲットデータ間のデータ関係を実施でき、それによって、ターゲット・メンバ・ブロックチェーンに展開されたスマートコントラクトにおいて参照されるターゲットデータが、第三者ストレージシステムとして使用されるメンバブロックチェーンに格納された参照されるターゲットデータを用いたサービスセマンティクスの点で一致することを確実にする。
(2)呼び出しデータの参照
本明細書では、コンソーシアムブロックチェーンにアクセスする必要のあるユーザは、事前にコンソーシアムブロックチェーンにユーザ登録を実行でき、コンソーシアムブロックチェーンによって返される公開鍵と秘密鍵のペアを取得する。登録が完了した後、コンソーシアムブロックチェーンは、ユーザのために対応するアカウントオブジェクトを作成できる。
登録を完了したユーザは、コンソーシアムブロックチェーンの各メンバブロックチェーンによって提供されるAPIインターフェースを使用することによって各メンバブロックチェーンにアクセスでき、所有する秘密鍵に基づいて署名されたトランザクションを各メンバブロックチェーンに発行でき、各メンバブロックチェーンに展開されたスマートコントラクトを呼び出す。
図2に示されたコンソーシアムブロックチェーンの「トランザクションチェーン」が例として使用される。コンソーシアムブロックチェーンのオペレータは、「トランザクションチェーン」に、オンライン住宅賃貸アカウンティングを完了するために使用されるスマートコントラクトを発行でき、ユーザは、「トランザクションチェーン」にトランザクションを発行でき、スマートコントラクトの呼び出しをトリガして、オンライン住宅賃貸トランザクションアカウンティングを完了する。
コンソーシアムブロックチェーンのオペレータがコンソーシアムブロックチェーンにスマートコントラクトを展開する詳細プロセスは、本明細書では簡潔にするために省略する。本明細書に説明される技術的な解決策を実施する際、当業者は関連する技術的記録を参照できる。
例えば、コンソーシアムブロックチェーンにアクセスする複数のメンバは、共同でスマートコントラクトにネゴシエートし、スマートコントラクト内の展開されたスマートコントラクトプログラム(例えば、呼び出され得るいくつかの機能に関連するプログラムコード)を宣言し、次いでコンソーシアムブロックチェーンにスマートコントラクトを発行し、その結果、コンソーシアムブロックチェーンのノードデバイスは、コンセンサスプロセスを実行し、コンセンサスが達成された後、コンソーシアムブロックチェーンの分散データベースにスマートコントラクトを記録および格納して、スマートコントラクトの展開を完了する。
本明細書では、コンソーシアムブロックチェーンのオペレータは、コンソーシアムブロックチェーンにアクセスするメンバユーザのためにクライアントソフトウェア(例えば、APP)を展開でき、メンバユーザが、クライアントソフトウェアを使用することによって、コンソーシアムブロックチェーンによってサポートされる標準のトランザクションフォーマットに基づいてトランザクションデータを組み立て、各メンバブロックチェーンによって提供されたAPIインターフェースを呼び出すことによって、組み立てたトランザクションデータをメンバユーザによって指定されるコンソーシアムブロックチェーンのターゲット・メンバ・ブロックチェーンに発行して、ターゲット・メンバ・ブロックチェーンに展開されるスマートコントラクトの呼び出しを開始する。
クライアントソフトウェアを使用することによってメンバユーザによって組み立てられたトランザクションデータは、メンバユーザによって提供される呼び出しデータを含むことができ、呼び出しデータは、スマートコントラクトへの入力である呼び出しパラメータとして使用される。少なくとも呼び出しデータの一部がデータダイジェストによって置き換えられ得る。
示される実施形態では、メンバユーザは、クライアントソフトウェアを使用することによって、ターゲット・メンバ・ブロックチェーンにおいて実行される必要のあるトランザクションデータを組み立てるとき、メンバユーザは、クライアントソフトウェアを使用することによって、トランザクションに含まれる必要のある呼び出しデータを入力できる。クライアントソフトウェアは、メンバユーザによって入力された呼び出しデータを解析して、ターゲット・メンバ・ブロックチェーンと相互接続された第三者ストレージシステムに格納されたデータが、メンバユーザによって入力された呼び出しデータ中に存在するか否かを判定する、言い換えると、第三者ストレージシステムに格納されたデータがメンバユーザによって入力された呼び出しデータ中に参照されるか否かを判定する。
第三者ストレージシステムに格納されたデータがメンバユーザによって入力された呼び出しデータ中に存在する場合、呼び出しデータに対応するデータダイジェスト(すなわち、クエリインデックス)が、第三者ストレージシステムにクエリされ得るか、データダイジェストが、第三者ストレージシステムによってサポートされるデータダイジェストアルゴリズムと同じデータダイジェストアルゴリズムに基づいてトランザクションコンテンツに対して再度計算され得、次いで、データダイジェストが、標準のトランザクションフォーマットに入力され得る。
例えば、実施形態では、呼び出しデータを含むために使用されるデータダイジェストフィールドが、コンソーシアムブロックチェーンによってサポートされる標準のトランザクションフォーマットに拡張され得る。標準のトランザクションフォーマットでトランザクションデータを組み立てると、クライアントソフトウェアは、第三者ストレージシステムに格納された参照されるデータのすべてのデータダイジェストをデータダイジェストフィールドに入力できる。
(3)スマートコントラクトの呼び出しおよび実行
本明細書では、秘密鍵に基づいてメンバユーザによって発行されたトランザクションを受信した後、ターゲット・メンバ・ブロックチェーンのノードデバイスはまず、ユーザが所有する秘密鍵に対応する公開鍵に基づいてユーザの識別認証を実行できる。
例えば、実際の適用では、ユーザは、所有する秘密鍵に基づいて開始されるトランザクションに署名でき、ブロックチェーンのノードデバイスが、ユーザが所有する秘密鍵に対応する公開鍵に基づいて署名を認証できる。署名についての認証が成功する場合、ユーザの識別認証が成功する。
識別認証が成功した後、ノードデバイスは、ターゲット・メンバ・ブロックチェーンのトランザクションについてのコンセンサスプロセスを開始でき、コンセンサスが達成された後、ターゲット・メンバ・ブロックチェーンの分散データベースにトランザクションを記録および格納できる。一旦、トランザクションを、ターゲット・メンバ・ブロックチェーンの分散データベースに記録および格納することが成功すると、スマートコントラクトの呼び出しが、分散データベースに記録されたトランザクションに基づいて続いてトリガされ得、スマートコントラクト内に宣言されたスマートコントラクトプログラムを実行する。
例えば、実施形態では、厳密なトリガ実行条件は通常、スマートコントラクトのスマートコントラクトプログラムに事前に決められている。スマートコントラクトは、分散データベースに現在記録されているトランザクションが実行条件を満たすか否かを確認し、検証されるべきトランザクションキューに、実行条件を満たし、分散データベースに格納されるトランザクションを追加して、トランザクションキューのトランザクションについてコンセンサスプロセスを実行する。コンセンサスが達成される場合、スマートコントラクト内に宣言されるスマートコントラクトプログラムの実行がトリガされる。
コンセンサスプロセスがターゲット・メンバ・ブロックチェーンのトランザクションについて実行されるときに使用されるコンセンサスアルゴリズムは、本明細書では限定されないことに留意すべきである。メンバブロックチェーンによってサポートされるコンセンサスアルゴリズムは同じでも異なっていてもよい。例えば、コンソーシアムブロックチェーンは、PBFTなどメインストリームのコンセンサスアルゴリズムを使用してよく、あるいはコンソーシアムブロックチェーンはコンセンサスアルゴリズムを独自に展開することもできる。
本明細書では、スマートコントラクトの呼び出しは、スマートコントラクト内に宣言されたスマートコントラクトプログラムを実行するために、トランザクションに基づいてトリガされると、スマートコントラクトはまずトランザクションに含まれる呼び出しデータを解析でき、トランザクションに含まれる呼び出しデータにデータダイジェストがあるか否かを判定する。
例えば、ノードデバイスは、解析を通して、標準のトランザクションフォーマットから拡張され、トランザクションコンテンツを含むように使用されるデータダイジェストが、ヌル値であるか否かを判定でき、トランザクションに含まれるトランザクションコンテンツにデータダイジェストがあるか否かを判定する。
トランザクションに含まれる呼び出しデータにデータダイジェストがある場合、第三者ストレージシステムに格納されたデータコンテンツは、トランザクションのいくつかの呼び出しデータ中に参照される。そのような場合、トランザクションに含まれる完全な呼び出しデータを取得するために、スマートコントラクトは、ターゲット・メンバ・ブロックチェーンに相互接続された第三者ストレージシステムからデータダイジェストに対応するターゲットデータをクエリできる。
実施形態では、スマートコントラクトは、クエリ要求を確立でき、クエリインデックスとしてデータダイジェストを使用することによって、データダイジェストをクエリ要求に追加し、次いで、クエリ要求を第三者ストレージシステムに送ることができる。クエリ要求を受信した後、第三者ストレージシステムは、クエリ要求からクエリインデックスを読み出し、次いで、クエリインデックスに基づいて、ローカルに格納されたデータコンテンツとデータダイジェストとの間のマッピング関係を調査して、クエリインデックスに対応するターゲットデータをクエリして、識別されたターゲットデータをスマートコントラクトに返す。
第三者ストレージシステムが、ターゲット・メンバ・ブロックチェーンとのクロスチェーン参照関係を有する別のメンバブロックチェーンとできることに留意すべきである。したがって、スマートコントラクトによって確立されたクエリ要求は、第三者ストレージシステムとして使用される別のメンバブロックチェーンのノードデバイスにブロードキャストされ得る。
実際の適用では、別のメンバブロックチェーンにおいて使用されるコンセンサスアルゴリズム間の差により、スマートコントラクトが別のメンバブロックチェーンのノードデバイスにクエリ要求を送信した後、異なるクエリ結果が取得され得る。
例えば、ブロックチェーンに使用されるコンセンサスアルゴリズムは通常、分散型の一貫性に基づいて2つのタイプに分類され得る。分散型の一貫性は、ブロックチェーンのすべてのノードデバイス上に格納されたデータが、コンセンサスアルゴリズムを使用することによってコンセンサス達成された後に完全に同じであることを意味する。
コンセンサスアルゴリズムの第1のタイプは、各ノードデバイスの分散型の一貫性を保証できるコンセンサスアルゴリズムである。例えば、フォールトトレランス機構が、PBFTコンセンサスアルゴリズムのコンセンサスを達成するために使用され、その結果、コンセンサスが達成された後に各ノードデバイスによって格納されたデータは、厳密に同じである。
コンセンサスアルゴリズムの第2のタイプは、各ノードデバイスの分散型の一貫性を保証できないコンセンサスアルゴリズムである。例えば、コンテンションベースの台帳(contention-based ledger)メカニズムが、PoSまたはPoWコンセンサスアルゴリズムのコンセンサスを達成するために使用される。結果的に、コンセンサスが達成された後に、各ノードデバイスによって格納されたデータが同じであることを保証できない。PoWコンセンサスアルゴリズムを例として使用する。作業量の計算を通して台帳許可を取得するノードデバイスは、ノードデバイスによって提案されたブロックのデータのみを格納でき、結果的に、ノードデバイスによってローカルに格納されたブロックデータは異なることがある。
したがって、第三者ストレージシステムとして使用される別のメンバブロックチェーンによって使用されるコンセンサスアルゴリズムが、上述の第2のタイプのコンセンサスアルゴリズムであると、スマートコントラクトが別のメンバブロックチェーンの各ノードデバイスにクエリ要求を送った後に、他のノードデバイスは識別できるが、いくつかのノードデバイスは関連データを識別できない可能性がある。
シナリオでは、第三者ストレージシステムとして使用される別のメンバブロックチェーンによって使用されるコンセンサスアルゴリズムが上述の第1のタイプのコンセンサスアルゴリズムである場合、スマートコントラクトは、コンセンサスアルゴリズムをまたサポートするクエリ・クライアント・ソフトウェアを使用することによって、他のメンバブロックチェーンへのデータクエリを実行でき、一貫性クエリ結果を取得する。
PBFTアルゴリズムを例として使用する。第三者ストレージシステムとして使用される別のメンバブロックチェーンのノードデバイスの数が3f+1であると仮定する。スマートコントラクトが、クエリ・クライアント・ソフトウェアを使用することによって別のメンバブロックチェーンのノードデバイスにクエリ要求を個別に送った後に、f+1個のノードデバイスによって返される同じクエリ結果が受信される場合、クエリ結果が最終的なクエリ結果であると考えられ得る。
シナリオでは、第三者ストレージシステムとして使用される別のメンバブロックチェーンによって使用されるコンセンサスアルゴリズムが、上述の第2のタイプのコンセンサスアルゴリズムである場合、安定性と信頼性の高いノードデバイスは、別のメンバブロックチェーンのクエリノードとして指定される必要がある。スマートコントラクトは、クエリ要求をクエリノードに送ることができ、関連データのためにクエリノードによってローカルに格納されたデータを検索できる。
言い換えると、そのようなシナリオでは、クエリノードによってローカルに格納されたデータは、データ参照の当事者のために一貫性の結果であると考えられ、クエリノードによってローカルに格納されるデータのみが、別のメンバブロックチェーンに展開されたスマートコントラクトによって参照され得る。
実際の適用では、クエリ要求は、クエリインデックスとして使用されるデータダイジェストに加えて、いくつかの補助クエリパラメータを含むことができ、データダイジェストに対応するターゲットデータをすばやく識別することに留意すべきである。
例えば、ターゲット・メンバ・ブロックチェーンと相互接続された第三者ストレージシステムは、ターゲット・メンバ・ブロックチェーンとのクロスチェーン参照関係を有する別のメンバブロックチェーンである。参照されたデータコンテンツと、第三者ストレージシステムとして使用される別のメンバブロックチェーンに格納された対応するデータダイジェストは通常、ブロックの形態で、ブロックチェーンの分散データベースに格納される。したがって、クエリを簡単にするために、クエリ結果はさらに、データダイジェストが位置するメンバブロックチェーンのシーケンス番号およびブロック番号などの補助クエリパラメータを含むことができる。
本明細書では、スマートコントラクトがターゲット・メンバ・ブロックチェーンと相互接続された第三者ストレージシステムから、受信したトランザクションに含まれるデータダイジェストに対応するターゲットデータを識別した後、スマートコントラクトの呼び出しが開始され、スマートコントラクト内に宣言されたスマートコントラクトプログラムを実行し、トランザクションに含まれる呼び出しデータについてスマートコントラクト計算を実行する。
第1に、スマートコントラクトは識別されたターゲットデータについてコンテンツ検証を実行でき、識別されたターゲットデータが、トランザクションに含まれるデータダイジェストに対応するデータコンテンツに一致することを保証する。
実施形態では、スマートコントラクトが識別されたターゲットデータのデータダイジェストを再計算でき、次いで、再計算されたデータダイジェストと受信されたトランザクションに含まれるデータダイジェストとを整合し、再計算されたデータダイジェストが、受信したトランザクションに含まれるデータダイジェストに一致するか否かを判定する。
一致する場合、識別されたターゲットデータについてのコンテンツ検証が成功し、トランザクションは有効なトランザクションである。スマートコントラクトがトランザクションに含まれる完全な呼び出しデータを含むことができ、スマートコントラクト内に宣言されたスマートコントラクトプログラムの入力パラメータとして完全な呼び出しパラメータを使用し、スマートコントラクト計算のためにスマートコントラクトプログラムにパラメータを入力できる。
一致しない場合、識別されたターゲットデータについてのコンテンツ検証が失敗する。そのような場合、第三者ストレージシステムに格納されたオリジナルの参照されたターゲットデータは、システムの低信頼性に起因して変更および更新されていることがある。結果的に、トランザクションは無効なトランザクションであり、スマートコントラクトを呼び出すプロセスがすぐに終了され得る。
スマートコントラクトが識別されたターゲットデータのデータダイジェストを再計算するとき、ターゲットデータのデータ構造、ターゲットデータのための符号化方法、および使用されたダイジェストアルゴリズムはすべて、第三者ストレージシステムのそれらの一致する必要があり、ノードデバイスおよび第三者ストレージシステムは、同じターゲットデータについてデータダイジェスト計算を実行するとき同じ計算結果を取得できることを保証することに留意すべきである。
本明細書では、トランザクションに含まれる完全な呼び出しデータは、入力パラメータとして使用され、スマートコントラクト計算を完了するためにスマートコントラクト内に宣言されたスマートコントラクトプログラムへの入力であり、トランザクションの実行が完了され、スマートコントラクト計算の計算結果(すなわち、トランザクションの実行結果)がさらに、ターゲット・メンバ・ブロックチェーンの分散データベースに格納され得る。
ブロックチェーンの分散データベースに記録された情報は通常、トランザクションログおよびトランザクション状態を含む。
トランザクションログは、トランザクションログを格納するために使用され、発生順序で一連の接続された複数のブロック(または一つのブロック)を含み、分散データベースのトランザクションレコードである。トランザクションについてのコンセンサスが達成された後、トランザクションが記録され、トランザクションログの対応するブロックに格納され得る。
トランザクション状態は、分散データベースに記録されたトランザクションの実行によって生じるステータス変更を格納するために使用される。例えば、ブロックチェーンは通常、多くの小さなオブジェクト(アカウントオブジェクト、コントラクトオブジェクト、および資産オブジェクトなど)を含む。ブロックチェーンの分散データベースにトランザクションが記録されるたびに、トランザクションに関連するステータスが、トランザクションの実行が完了した後に同期更新される。ブロックチェーンに送られたオンライン譲渡トランザクションを例として使用する。トランザクションが関連するスマートコントラクトを呼び出すことによって実行された後、現在の譲渡に関連するアカウントオブジェクトの残高が同期更新される。
そのような場合、トランザクションに含まれる完全な呼び出しデータについてスマートコントラクト計算を完了した後に、スマートコントラクトはさらに、トランザクション状態にスマートコントラクト計算の計算結果を格納し、トランザクションによって生じた関連するオブジェクトのステータス変更を更新する。ブロックチェーンに送られたオンライン譲渡トランザクションを例としてさらに使用する。トランザクションに含まれる完全な呼び出しデータについてスマートコントラクト計算を完了した後、スマートコントラクトはトランザクション状態に現在の譲渡に関連するアカウントオブジェクトの残高を更新できる。
前述の実施形態では、スマートコントラクトの呼び出しを開始するために使用されるトランザクションは、第三者ストレージシステムに格納されたターゲットデータのデータダイジェストを含み、その結果、ブロックチェーンのトランザクションを受信するノードデバイスは、データダイジェストに基づいて第三者ストレージシステムから対応するターゲットデータをクエリでき、ターゲットデータについてのコンテンツ検証を実行できる。ターゲットデータについての検証が成功した後、スマートコントラクトを呼び出して、トランザクションの呼び出しデータについてスマートコントラクト計算を実行し、スマートコントラクト計算が完了した後に、ブロックチェーンの分散データベースに計算結果を格納する。したがって、ブロックチェーンに相互接続された第三者ストレージシステムに格納されたターゲットデータは、スマートコントラクトの呼び出しを開始するために使用されるトランザクションの呼び出しデータとして参照され、ブロックチェーンの各ノードデバイスに第三者ストレージシステムに格納されたターゲットデータのオリジナルコンテンツを同期することによって生じるブロックチェーン・データ・ストレージの冗長性を軽減する。
例えば、ターゲットブロックチェーンに相互接続された第三者ストレージシステムは、ブロックチェーンとのクロスチェーンデータ参照関係を有する別のブロックチェーンである。別のブロックチェーンは、5つのノードデバイスを含み、ターゲットブロックチェーンが50のノードデバイスを含むと仮定する。別のブロックチェーンに格納された参照データコンテンツは、ターゲットブロックチェーンにやはり同期される場合、参照データコンテンツは、ターゲットブロックチェーンの50のノードに個別に同期される必要があり、大量のターゲットブロックチェーンの参照データコンテンツの冗長が生じる。しかしながら、ターゲットブロックチェーンが、参照データコンテンツのデータダイジェストのみを格納する場合、別のブロックチェーンは、50のノードデバイスの参照データコンテンツを個別に同期する必要はない。したがって、ターゲットブロックチェーンのデータストレージ冗長性を著しく減らすことができる。
方法の実施形態に対応して、本明細書は、ブロックチェーンベースのスマートコントラクト呼び出し装置の実施形態をさらに提供する。本明細書では、ブロックチェーンベースのスマートコントラクト呼び出し装置の実施形態は、電子デバイスに適用できる。装置の実施形態は、ソフトウェア、ハードウェア、またはハードウェアとソフトウェアの組み合わせによって実施され得る。ソフトウェアの実施形態が例として使用される。論理装置として、装置に配置された電子デバイスのプロセッサが、不揮発性メモリから電子デバイスのメモリに、対応するコンピュータプログラム命令を読み出すことによって、装置が形成される。ハードウェアでは、図3に示すように、図3は、本明細書による、ブロックチェーンベースのスマートコントラクト呼び出し装置が配置された電子デバイスのハードウェア構造を示す図である。図3に示すプロセッサ、メモリ、ネットワークインターフェース、および不揮発性メモリに加えて、本実施形態の装置が配置される電子デバイスは通常、電子デバイスの実際の機能に基づいて他のハードウェアを含むことができる。詳細は簡潔のため省略される。
図4は、本明細書の例示的な実施形態による、ブロックチェーンベースのスマートコントラクト呼び出し装置を示すブロック図である。
図4を参照すると、ブロックチェーンベースのスマートコントラクト呼び出し装置40は、図3に示す電子デバイスに適用され、受信モジュール401、クエリモジュール402、および呼び出しモジュール403を含む。
受信モジュール401は、スマートコントラクトの呼び出しを開始するために使用されるターゲットトランザクションを受信するように構成され、ターゲットトランザクションは呼び出しデータを含み、少なくとも呼び出しデータの一部は、ブロックチェーンに相互接続された第三者ストレージシステムに格納されたターゲットデータのデータダイジェストを含む。
クエリモジュール402は、第三者ストレージシステムからデータダイジェストに対応するターゲットデータをクエリして、ターゲットデータについてコンテンツ検証を実行するように構成される。
呼び出しモジュール403は、ターゲットデータについての検証が成功した場合、スマートコントラクトを呼び出してターゲットトランザクションの呼び出しデータについてスマートコントラクト計算を実行し、スマートコントラクト計算が完了した後にブロックチェーンの分散データベースに計算結果を格納するように構成される。
本実施形態では、第三者ストレージシステムは、ターゲットデータとターゲットデータのデータダイジェストとの間のマッピング関係を格納する。
クエリモジュール402は、クエリインデックスとしてデータダイジェストを使用することによって第三者ストレージシステムへのクエリを開始し、データダイジェストに対応するターゲットデータをクエリするように構成される。
本実施形態では、クエリモジュール402は、所定のダイジェストアルゴリズムに基づいてターゲットデータのデータダイジェストを計算し、計算したデータダイジェストが、ターゲットトランザクションのターゲットデータのデータダイジェストに一致するか否かを判定し、計算したデータダイジェストがターゲットトランザクションのターゲットデータのデータダイジェストに一致する場合、ターゲットデータについての検証が成功したと決定するようにさらに構成される。
本実施形態では、第三者ストレージシステムは、集中型連想記憶CASシステムまたは分散型CASシステムを含む。
本実施形態では、ブロックチェーンは、いくつかのメンバブロックチェーンを含むコンソーシアムブロックチェーンの任意のメンバブロックチェーンであってよい。
本実施形態では、第三者ストレージシステムは、コンソーシアムブロックチェーンのブロックチェーンとのクロスチェーンデータ参照関係を有する別のメンバブロックチェーンである。
装置における機能の実施プロセスおよびモジュールの役割について、前述の方法の対応するステップの実施プロセスを参照できる。詳細は簡潔のため省略する。
装置の実施形態は基本的に方法の実施形態に対応するので、関連する部分について、方法の実施形態の説明を参照できる。上に説明された装置の実施形態は、例に過ぎない。個別の部分として説明されるモジュールは、物理的に分離していてもしていなくてもよく、モジュールとして表示される部分は、物理的なモジュールであってもなくてもよく、一か所に配置されていてもよいし、複数のネットワークモジュール上に分散されていてもよい。モジュールのいくつかまたはすべては、本明細書の解決策の目的を達成するために実際の要件に基づいて選択可能である。当業者は、創造的な努力なしに、本明細書の実施形態を理解し実装できる。
先の実施形態に示したシステム、装置、またはモジュールは、コンピュータチップまたはエンティティを使用することによって実装され得るか、またはある機能を有する製品を使用することによって実装され得る。典型的な実装デバイスは、コンピュータであり、コンピュータの形態は、パーソナルコンピュータ、ラップトップコンピュータ、携帯電話、カメラ付き電話、スマートフォン、個人情報端末、メディアプレイヤー、ナビゲーションデバイス、電子メール送受信デバイス、ゲームコンソール、タブレットコンピュータ、ウェアラブルデバイス、あるいはこれらのデバイスの任意の組み合わせであってよい。
前述の方法の実施形態に対応して、本明細書はさらに電子デバイスの実施形態を提供する。電子デバイスは、プロセッサとマシン実行可能命令を格納するように構成されたメモリとを含む。プロセッサおよびメモリは通常、内部バスを使用することによって互いに接続されている。別の可能な実施形態では、デバイスはさらに、外部インターフェースを含むことができ、デバイスは、他のデバイスまたは構成要素と通信できる。
本実施形態では、メモリに格納された、ブロックチェーンベースのスマートコントラクト呼び出しの制御ロジックに対応するマシン実行可能命令を読み出して実行することによって、プロセッサは、スマートコントラクトの呼び出しを開始するために使用されるターゲットトランザクションを受信することであって、ターゲットトランザクションが呼び出しデータを含み、呼び出しデータの少なくとも一部がブロックチェーンと相互接続された第三者ストレージシステムに格納されたターゲットデータのデータダイジェストを含む、ことと、第三者ストレージシステムからデータダイジェストに対応するターゲットデータをクエリして、ターゲットデータについてコンテンツ検証を実行することと、ターゲットデータについての検証が成功した場合、スマートコントラクトを呼び出してターゲットトランザクションの呼び出しデータについてスマートコントラクト計算を実行し、スマートコントラクト計算が完了した後にブロックチェーンの分散データベースに計算結果を格納することとを行うように構成される。
本実施形態では、第三者ストレージシステムは、ターゲットデータとターゲットデータのデータダイジェストとのマッピング関係を格納する。
メモリに格納された、ブロックチェーンベースのスマートコントラクト呼び出しの制御ロジックに対応するマシン実行可能命令を読み出して実行することによって、プロセッサは、クエリインデックスとしてデータダイジェストを使用することによって第三者ストレージシステムへのクエリを開始し、データダイジェストに対応するターゲットデータをクエリするように構成される。
本実施形態では、メモリに格納された、ブロックチェーンベースのスマートコントラクト呼び出しの制御ロジックに対応するマシン実行可能命令を読み出して実行することによって、プロセッサは、所定のダイジェストアルゴリズムに基づいてターゲットデータのデータダイジェストを計算することと、計算したデータダイジェストがターゲットトランザクションのターゲットデータのデータダイジェストに一致するか否かを判定することと、計算したデータダイジェストがターゲットトランザクションのターゲットデータのデータダイジェストに一致する場合、ターゲットデータについての検証が成功したと決定することとを行うように構成される。
当業者は、本明細書全体を検討して本明細書の開示を解析した後に、本明細書の別の実施形態を容易に見つけることができる。本明細書は、本明細書のあらゆる変形、使用、または適合を網羅することを意図しており、これらの変形、使用、または適合は、本明細書の一般原則に従い、本明細書の技術分野に記載されていない共通の知識または一般的に使用される技術的手段を含む。明細書および実施形態は、単に例として考慮され、本明細書の実際の範囲および精神は、添付の特許請求の範囲によって示される。
本明細書は、上に説明され添付の図面に示された正確な構造に限定されず、本明細書の範囲から逸脱することなく様々な変形や変化がなされることは理解されよう。本明細書の範囲は、添付の特許請求の範囲によってのみ限定される。
前述の説明は、本明細書の好ましい実施形態にすぎず、本明細書を限定することを意図しない。本明細書の精神および原則を逸脱せずになされた、いかなる変更、均等な交換、または改善は、本明細書の保護範囲に含まれる。
本明細書に説明された実施形態および動作は、本明細書に開示された構造を含む、デジタル電子回路、またはコンピュータソフトウェア、ファームウェア、あるいはハードウェア、またはそれらの1つまたは複数の組み合わせで実装され得る。動作は、1つまたは複数のコンピュータ可読デバイスに格納した、または他のソースから受信したデータについて、データ処理装置によって実行される動作として実装され得る。データ処理装置、コンピュータ、またはコンピューティングデバイスは、例えば、プログラム可能なプロセッサ、コンピュータ、システムオンチップ、またはそれらの複数または組み合わせなどの、装置、デバイス、およびデータ処理のための機械を包含してよい。装置は、例えば、中央処理装置(CPU)、フィールドプログラマブルゲートアレイ(FPGA)、または特定用途組み込み回路(ASIC)などの専用論理回路を含むことができる。装置はまた、例えば、プロセッサファームウェア、プロトコルスタック、データベース管理システム、オペレーティングシステム(例えば、単一のオペレーティングシステムまたはオペレーティングシステムの組み合わせ)、クロスプラットフォーム実行環境、仮想マシン、あるいはそれらの1つまたは複数の組み合わせを構成するコードなど、当のコンピュータプログラムに対する実行環境を作成するコードを含むことができる。装置および実行環境は、ウェブサービス、分散コンピューティングおよびグリッドコンピューティングインフラストラクチャなどの様々な異なるコンピューティングモデルインフラストラクチャを実現できる。
コンピュータプログラム(例えば、プログラム、ソフトウェア、ソフトウェアアプリケーション、ソフトウェアモジュール、ソフトウェアユニット、スクリプト、またはコードとしても知られる)は、コンパイル型またはインタプリタ型言語、宣言型またはプロシージャ型言語を含む、任意の形式のプログラミング言語で書かれ、スタンドアロンプログラムとして、あるいは、モジュール、コンポーネント、サブルーチン、オブジェクト、あるいは、コンピューティング環境での使用に適した他のユニットとしてなどを含む、任意の形式で展開され得る。プログラムは、当のプログラム専用の単一のファイルに、または複数の協調ファイル(例えば、1つまたは複数のモジュール、サブプログラム、またはコードの部分を記憶するファイル)に、他のプログラムまたはデータ(例えば、マークアップ言語ドキュメントに格納された1つまたは複数のスクリプト)を保持するファイルの一部に記憶され得る。コンピュータプログラムは、1つのコンピュータ、または1つのサイトに位置するか、あるいは複数のサイトにわたり分散して通信ネットワークによって相互接続される複数のコンピュータ上で実行され得る。
コンピュータプログラムの実行のためのプロセッサは、例として、汎用マイクロプロセッサおよび専用マイクロプロセッサの両方、および任意の種類のデジタルコンピュータの1つまたは複数のプロセッサを含む。一般に、プロセッサは、読み取り専用メモリまたはランダムアクセスメモリ、あるいはその両方から命令およびデータを受信する。コンピュータの必須要素は、命令にしたがってアクションを実行するためのプロセッサと、命令およびデータを格納するための1つまたは複数のメモリデバイスである。一般に、コンピュータは、データを格納する1つまたは複数のマスストレージデバイスを含むか、データの送受信のために、データを格納する1つまたは複数のマスストレージデバイスに動作可能に接続される。コンピュータは、例えば、モバイルデバイス、個人情報端末(PDA)、ゲームコンソール、全地球測位システム(GPS)受信機、またはポータブルストレージデバイスなどの別のデバイスに組み込まれ得る。コンピュータプログラム命令およびデータを格納するのに適したデバイスは、例として、半導体メモリデバイス、磁気ディスク、および磁気光ディスクを含む、非一時的メモリ、媒体およびメモリデバイスを含む。プロセッサおよびメモリは、専用論理回路に補完されるか、または組み込まれ得る。
モバイルデバイスは、ハンドセット、ユーザ機器(UE)、携帯電話(例えば、スマートフォン)、タブレット、ウェアラブルデバイス(例えば、スマートウォッチおよびスマート眼鏡)、人体埋め込みデバイス(例えば、バイオセンサ、人工内耳)、あるいは他のタイプのモバイルデバイスを含むことができる。モバイルデバイスは、様々な通信ネットワーク(後述される)とワイヤレスに(例えば、無線周波数(RF)信号を使用して)通信できる。モバイルデバイスは、モバイルデバイスの現在の環境の特性を決定するためのセンサを含むことができる。センサは、カメラ、マイク、近接センサ、GPSセンサ、動きセンサ、加速度計、周辺光センサ、湿度センサ、ジャイロスコープ、コンパス、気圧計、指紋センサ、顔認証システム、RFセンサ(例えば、Wi-Fiおよびセルラ無線)、温度センサ、あるいは他のタイプのセンサを含むことができる。例えば、カメラは、可動または固定レンズ、フラッシュ、イメージセンサ、およびイメージプロセッサを備えた前向きまたは後ろ向きのカメラを含むことができる。カメラは、顔および/または虹彩の認識のために詳細をキャプチャできるメガピクセルカメラであってよい。データプロセッサを備えるカメラ、およびメモリに保存されているか、または遠隔にアクセスされる認証情報は、顔認識システムを形成できる。顔認証システム、あるいは、例えばマイク、動きセンサ、加速度計、GPSセンサ、またはRFセンサなどの1つまたは複数のセンサは、ユーザ認証のために使用され得る。
ユーザとの対話を提供するために、例えば、ユーザに情報を表示するための、液晶ディスプレイ(LCD)または有機発行ダイオード(OLED)/仮想現実(VR)/拡張現実(AR)ディスプレイ、それによりユーザがコンピュータに入力を提供できるタッチスクリーン、キーボード、およびポインティングデバイスなど、表示デバイスおよび入力デバイスを有するコンピュータにおいて実施形態が実装され得る。同様にユーザとの対話のために別の種類のデバイスを提供でき、例えば、ユーザに提供されるフィードバックは、例えば、視覚フィードバック、聴覚フィードバック、または触覚フィードバックなどの任意の形式のセンサフィードバックであってよく、ユーザからの入力が、音声、会話、または触覚入力を含む任意の形式で受信され得る。加えて、コンピュータは、例えば、ウェブブラウザから受信された要求に応答してユーザのクライアントデバイス上のウェブブラウザにウェブページを送信することによって、ユーザによって使用されるデバイスとドキュメントを送受信することによってユーザと対話できる。
実施形態は、例えば、コンピュータネットワークなど、任意の形式または媒体の有線またはワイヤレスのデジタルデータ通信(あるいはその組み合わせ)によって相互接続されたコンピューティングデバイスを使用して実装され得る。相互接続されたデバイスの例は、クライアントとサーバであり、一般に互いに離れており、通信ネットワークを介して対話する。例えば、モバイルデバイスなどのクライアントは、サーバと自身のトランザクションを実行するか、サーバを介して、例えば、購入、売却、支払い、譲渡、送信、あるいはローントランザクションを実行する、または同様の認証を行う。そのようなトランザクションはリアルタイムであってよく、そのためアクションおよびレスポンスが時間的に近い、例えば、個人がアクションとレスポンスを実質的に同時に感じ、個人のアクションに続くレスポンスの時間差が1ミリ秒(ms)または1秒(s)より小さいか、レスポンスがシステムの処理限界を考慮した意図的な遅延がない。
通信ネットワークの例は、ローカルエリアネットワーク(LAN)、無線アクセスネットワーク(RAN)、メトロポリタンエリアネットワーク(MAN)、およびワイドエリアネットワーク(WAN)を含む。通信ネットワークは、インターネットのすべてまたは一部、別の通信ネットワーク、あるいは通信ネットワークの組み合わせを含むことができる。情報は、ロングタームエボリューション(LTE)、5G、IEEE802、インターネットプロトコル(IP)、または他のプロトコル、あるいはプロトコルの組み合わせを含む、様々なプロトコルおよび規格にしたがって、通信ネットワーク上で送信され得る。通信ネットワークは、接続されたコンピューティングデバイスの間で、音声、ビデオ、生体情報、認証データ、あるいは他の情報を送信できる。
個別の実施形態として説明された特徴は、組み合わせても一つの実施形態でも実装でき、一方で単一の実施形態として記載された特徴は、複数の実施形態に個別に、あるいは任意の適切なサブコンビネーションで実装されてよい。特定の順序で説明あるいは特許請求の範囲に記載された動作は、その特定の順序を必要とすると理解するのではなく、またすべての示された動作が実行されなければならないと理解すべきではない(いくつかの動作は任意であってよい)。必要に応じて、マルチタスクまたは並列処理(または、マルチタスクおよび並列処理の組み合わせ)が実行され得る。
40 ブロックチェーンベースのスマートコントラクト呼び出し装置
401 受信モジュール
402 クエリモジュール
403 呼び出しモジュール

Claims (13)

  1. ブロックチェーンベースのスマートコントラクト呼び出しのための方法であって、
    スマートコントラクトの呼び出しを開始するために使用されるターゲットトランザクションを受信するステップであって、前記ターゲットトランザクションは呼び出しデータを含み、前記呼び出しデータの少なくとも一部が、ブロックチェーンに相互接続された第三者ストレージシステムに格納されたターゲットデータのデータダイジェストを含む、ステップと、
    前記第三者ストレージシステムから前記データダイジェストに対応する前記ターゲットデータをクエリするステップと、
    実行条件が満たされるか否かを判定することによって、前記ターゲットデータについてコンテンツの検証を実行するステップと、
    前記ターゲットデータについての前記検証が成功したとの決定に応答して、前記スマートコントラクトを呼び出して、前記ターゲットトランザクションの前記呼び出しデータについてスマートコントラクト計算を実行するステップと、
    前記スマートコントラクト計算が完了した後、前記ブロックチェーンの分散データベースに計算結果を格納するステップと、
    を備える方法。
  2. 前記第三者ストレージシステムは、前記ターゲットデータと前記ターゲットデータの前記データダイジェストとの間のマッピング関係を格納する、請求項1に記載の方法。
  3. 前記第三者ストレージシステムから前記データダイジェストに対応する前記ターゲットデータをクエリするステップは、
    クエリインデックスとして前記データダイジェストを使用することによって前記第三者ストレージシステムへのクエリを開始して、前記データダイジェストに対応する前記ターゲットデータをクエリするステップ
    を備える、請求項2に記載の方法。
  4. 前記ターゲットデータについて前記コンテンツの前記検証を実行するステップは、
    所定のダイジェストアルゴリズムに基づいて前記ターゲットデータのデータダイジェストを計算するステップと、
    前記計算したデータダイジェストが前記ターゲットトランザクションの前記ターゲットデータの前記データダイジェストに一致するか否かを判定するステップと、
    前記計算したデータダイジェストが前記ターゲットトランザクションの前記ターゲットデータの前記データダイジェストに一致したとの決定に応答して、前記ターゲットデータについての前記検証が成功したと決定するステップと
    を備える、請求項1に記載の方法。
  5. 前記第三者ストレージシステムは、集中型連想記憶CASシステムまたは分散型CASシステムを備える、請求項1に記載の方法。
  6. 前記ブロックチェーンは、複数のメンバブロックチェーンを含むコンソーシアムブロックチェーンの任意のメンバブロックチェーンである、請求項1に記載の方法。
  7. 前記第三者ストレージシステムは、前記コンソーシアムブロックチェーンの前記ブロックチェーンとのクロスチェーンデータ参照関係を有する別のメンバブロックチェーンである、請求項6に記載の方法。
  8. 前記第三者ストレージシステムは、集中型の連想記憶システムまたは非集中型の分散システムを備える、請求項1に記載の方法。
  9. 前記第三者ストレージシステムは、前記ブロックチェーンに展開され、オブジェクト・ストレージ・サービス・アーキテクチャに従って前記ブロックチェーンの各メンバと相互接続された分散システムを備える、請求項8に記載の方法。
  10. トランザクションキューの中の前記ターゲットトランザクションについてコンセンサス処理を実行するステップ
    をさらに備える、請求項1に記載の方法。
  11. 前記コンセンサス処理を実行するステップが、コンセンサスアルゴリズムに基づく、請求項10に記載の方法。
  12. 前記コンセンサスアルゴリズムが、PBFT(Practical Byzantine Fault Tolerance)アルゴリズムを備える、請求項11に記載の方法。
  13. ブロックチェーンベースのスマートコントラクト呼び出しのための装置であって、請求項1〜12のいずれか一項に記載の方法を実行するように構成された複数のモジュールを備える、装置。
JP2020529458A 2018-06-27 2019-06-27 ブロックチェーンベースのスマートコントラクト呼び出し方法および装置、および電子デバイス Active JP6975332B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201810681249.1 2018-06-27
CN201810681249.1A CN109003078B (zh) 2018-06-27 2018-06-27 基于区块链的智能合约调用方法及装置、电子设备
PCT/US2019/039386 WO2020006164A1 (en) 2018-06-27 2019-06-27 Blockchain-based smart contract invocation method and apparatus, and electronic device

Publications (2)

Publication Number Publication Date
JP2021512379A JP2021512379A (ja) 2021-05-13
JP6975332B2 true JP6975332B2 (ja) 2021-12-01

Family

ID=64601302

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020529458A Active JP6975332B2 (ja) 2018-06-27 2019-06-27 ブロックチェーンベースのスマートコントラクト呼び出し方法および装置、および電子デバイス

Country Status (11)

Country Link
US (3) US10776348B2 (ja)
EP (1) EP3701673B1 (ja)
JP (1) JP6975332B2 (ja)
KR (1) KR102343782B1 (ja)
CN (1) CN109003078B (ja)
AU (1) AU2019294726B2 (ja)
CA (1) CA3084084A1 (ja)
PH (1) PH12020550743A1 (ja)
SG (1) SG11202005051UA (ja)
TW (1) TWI746905B (ja)
WO (1) WO2020006164A1 (ja)

Families Citing this family (53)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113095822A (zh) 2018-06-27 2021-07-09 创新先进技术有限公司 基于区块链的智能合约调用方法及装置、电子设备
CN109003078B (zh) 2018-06-27 2021-08-24 创新先进技术有限公司 基于区块链的智能合约调用方法及装置、电子设备
GB2576375A (en) * 2018-08-17 2020-02-19 Uvue Ltd Transaction system and method of operation thereof
US11068470B2 (en) * 2018-11-09 2021-07-20 Innoplexus Ag System and method for interoperability of blockchains
CN109885612B (zh) * 2018-12-26 2021-04-20 联动优势科技有限公司 区块链智能合约的同步生效方法及装置
CN109754249A (zh) * 2018-12-27 2019-05-14 石更箭数据科技(上海)有限公司 数据交易方法及系统、平台、存储介质
US12067561B2 (en) 2018-12-28 2024-08-20 Love The Block, Inc. System architecture for enabling distributed temporary control of discrete units of an asset
CN109710617B (zh) * 2018-12-29 2021-07-30 杭州趣链科技有限公司 一种基于默克尔证明的安全数据交易方法
CN118350048A (zh) * 2019-01-23 2024-07-16 株式会社斯凯拉 具有篡改检测性的数据管理系统
CN112966311B (zh) * 2019-03-15 2024-09-06 创新先进技术有限公司 智能合约校验方法及装置和电子设备
CN110033244B (zh) * 2019-03-15 2021-10-22 创新先进技术有限公司 基于区块链的智能合约执行方法及装置和电子设备
CN113421088B (zh) * 2019-03-26 2024-10-25 蚂蚁链技术有限公司 基于区块链的数据处理方法及装置和电子设备
CN110060162B (zh) * 2019-03-29 2023-10-27 创新先进技术有限公司 基于区块链的数据授权、查询方法和装置
CN110147409B (zh) * 2019-04-02 2021-07-13 爱驰汽车有限公司 用于查询车辆的电池信息的方法、设备以及介质
CN110188097A (zh) * 2019-04-19 2019-08-30 阿里巴巴集团控股有限公司 区块链中智能合约的存储、执行方法及装置和电子设备
CN110210961A (zh) * 2019-05-21 2019-09-06 平安普惠企业管理有限公司 基于联盟链的数据获取方法、服务器及计算机存储介质
CN110310203B (zh) * 2019-06-21 2023-10-13 普洛斯科技(重庆)有限公司 一种区块链交易方法和装置
US11251963B2 (en) 2019-07-31 2022-02-15 Advanced New Technologies Co., Ltd. Blockchain-based data authorization method and apparatus
US11252166B2 (en) 2019-07-31 2022-02-15 Advanced New Technologies Co., Ltd. Providing data authorization based on blockchain
US11057189B2 (en) * 2019-07-31 2021-07-06 Advanced New Technologies Co., Ltd. Providing data authorization based on blockchain
CN110505311A (zh) * 2019-09-12 2019-11-26 杭州秘猿科技有限公司 一种同构区块链跨链交互方法和系统
CN110659907B (zh) * 2019-09-24 2021-11-12 北京海益同展信息科技有限公司 用于执行智能合约的方法和装置
CN110879687B (zh) * 2019-10-18 2021-03-16 蚂蚁区块链科技(上海)有限公司 一种基于磁盘存储的数据读取方法、装置及设备
CN110781200B (zh) * 2019-10-30 2022-07-08 百度在线网络技术(北京)有限公司 一种区块链异常数据的处理方法、装置、设备和介质
CN110543526B (zh) * 2019-10-31 2020-05-19 成都四方伟业软件股份有限公司 一种基于区块链的优化储存方法及系统
KR102505911B1 (ko) * 2019-11-27 2023-03-06 한국전자통신연구원 정책기반 스마트 계약을 생성하기 위한 방법 및 그 장치
US11620722B2 (en) 2019-11-27 2023-04-04 Electronics And Telecommunications Research Institute Method and apparatus of generating policy-based smart contract
CN111224962B (zh) * 2019-12-30 2022-01-04 杭州羿贝科技有限公司 一种基于区块链的物联网设备联网控制方法、控制系统
US11310051B2 (en) 2020-01-15 2022-04-19 Advanced New Technologies Co., Ltd. Blockchain-based data authorization method and apparatus
CN111275553B (zh) * 2020-01-20 2023-08-11 联动优势科技有限公司 一种区块链的数据存储方法及区块链系统
US12099997B1 (en) 2020-01-31 2024-09-24 Steven Mark Hoffberg Tokenized fungible liabilities
CN111249745B (zh) * 2020-02-18 2023-05-30 杭州复杂美科技有限公司 游戏部署方法、游戏运营方法、设备和存储介质
GB2592222A (en) * 2020-02-19 2021-08-25 Nchain Holdings Ltd Distributed database
CN111339188B (zh) * 2020-02-20 2023-10-31 百度在线网络技术(北京)有限公司 基于区块链的媒介内容处理方法、装置、设备和介质
CN111092726B (zh) * 2020-03-18 2020-07-28 支付宝(杭州)信息技术有限公司 生成共享合约密钥的方法及装置
JP2021149506A (ja) * 2020-03-19 2021-09-27 株式会社エヌ・ティ・ティ・データ 情報処理装置、情報処理方法およびプログラム
CN111339067B (zh) * 2020-05-22 2020-08-14 中科软科技股份有限公司 一种联盟链账本平台的数据结构构建方法及系统
CN111737312A (zh) * 2020-06-05 2020-10-02 中国银行股份有限公司 一种信息查询方法、装置、设备及存储介质
CN115087960B (zh) * 2020-06-16 2025-02-25 微软技术许可有限责任公司 增强拓扑图相关应用的可访问性
CN112035895B (zh) * 2020-07-20 2025-07-11 傲为有限公司 一种基于交易方式的电子合同取证方法及系统
CN111738710B (zh) * 2020-07-23 2020-12-01 支付宝(杭州)信息技术有限公司 对智能合约的执行进行资源扣除的方法和处理器
EP3955224A1 (en) * 2020-08-14 2022-02-16 Nagravision S.A. Localized betting system and method
CN112561624B (zh) * 2020-11-06 2024-01-05 国网安徽省电力有限公司信息通信分公司 一种基于区块链的多维度因子的动态信用评价方法及系统
ES2991831T3 (es) * 2020-11-20 2024-12-05 Quant Network Ltd Sistema de libro mayor seguro multidistribuido
CN112487092B (zh) * 2020-12-03 2024-06-18 深圳前海微众银行股份有限公司 一种基于区块链的智能合约调用方法及装置
CN112650742B (zh) * 2020-12-30 2024-07-09 北京百度网讯科技有限公司 跨链数据验证方法、装置、设备和存储介质
CN112818038B (zh) * 2021-02-02 2025-02-25 山东伏羲智库互联网研究院 基于区块链和ipfs组合的数据管理方法及相关设备
CN112819468A (zh) * 2021-02-24 2021-05-18 浙江蓝景科技有限公司 智能合约的处理方法、装置和电子设备
CN113077342B (zh) * 2021-04-06 2023-01-20 立旃(上海)科技有限公司 基于区块链进行跨境使用数据的方法及装置
JP7128597B1 (ja) * 2021-07-05 2022-08-31 克弥 西沢 熱画像を用いる生体認証装置
CN113379422B (zh) * 2021-08-12 2021-10-15 腾讯科技(深圳)有限公司 基于智能合约的数据处理方法、设备以及可读存储介质
US11924222B2 (en) 2022-01-13 2024-03-05 Bank Of America Corporation Intelligent real time dynamic smart contract generation for secure processing of internet of things (IoT) device based events
CN114661788B (zh) * 2022-03-22 2026-01-13 中国电信股份有限公司 区块链数据检索方法、装置、电子设备及存储介质

Family Cites Families (53)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7720727B2 (en) * 2001-03-01 2010-05-18 Fisher-Rosemount Systems, Inc. Economic calculations in process control system
CN1838140A (zh) * 2005-03-25 2006-09-27 威盛电子股份有限公司 运用加密功能以产生信息摘要的设备及方法
US9268578B2 (en) * 2010-11-05 2016-02-23 Mark Cummings Integrated circuit design and operation for determining a mutually compatible set of configuration for cores using agents associated with each core to achieve an application-related objective
US20150379510A1 (en) 2012-07-10 2015-12-31 Stanley Benjamin Smith Method and system to use a block chain infrastructure and Smart Contracts to monetize data transactions involving changes to data included into a data supply chain.
US8793506B2 (en) 2012-08-31 2014-07-29 Intel Corporation Mechanism for facilitating encryption-free integrity protection of storage data at computing systems
US9363267B2 (en) 2014-09-25 2016-06-07 Ebay, Inc. Transaction verification through enhanced authentication
US9992028B2 (en) 2015-11-26 2018-06-05 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
WO2017098519A1 (en) 2015-12-08 2017-06-15 Tallysticks Limited A system and method for automated financial transaction validation, processing and settlement using blockchain smart contracts
US20170236123A1 (en) * 2016-02-16 2017-08-17 Blockstack Inc. Decentralized processing of global naming systems
MX2018010056A (es) 2016-02-23 2019-01-21 Nchain Holdings Ltd Un metodo y sistema para asegurar software de computadora usando un cuadro hash distribuido y una cadena de bloques.
KR102777896B1 (ko) 2016-02-23 2025-03-10 엔체인 홀딩스 리미티드 토큰화를 이용한 블록체인 기반 교환 방법
EP3437048B1 (en) 2016-04-01 2021-06-09 ConsenSys Software Inc. Systems and methods for providing data privacy in a private distributed ledger
CN107306183B (zh) * 2016-04-22 2021-12-21 索尼公司 客户端、服务端、方法和身份验证系统
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
US11829998B2 (en) * 2016-06-07 2023-11-28 Cornell University Authenticated data feed for blockchains
US10108954B2 (en) 2016-06-24 2018-10-23 PokitDok, Inc. System and method for cryptographically verified data driven contracts
WO2018006072A1 (en) 2016-06-30 2018-01-04 Clause, Inc. Systems and method for forming, storing, managing,and executing contracts
US10114980B2 (en) * 2016-07-21 2018-10-30 Acronis International Gmbh System and method for verifying data integrity using a blockchain network
GB201613144D0 (en) * 2016-07-29 2016-09-14 Eitc Holdings Ltd Computer-implemented method and system
US10380359B2 (en) 2016-08-05 2019-08-13 Sensoriant, Inc. Software-based switch for providing products and/or services to users without compromising their privacy
CN107819582A (zh) 2016-09-14 2018-03-20 陈新 智能区块链互联系统
US11188883B2 (en) * 2016-09-23 2021-11-30 International Business Machines Corporation Using ledger sensors to enable contextual contracts across various enterprise blockchain applications
US11128603B2 (en) * 2016-09-30 2021-09-21 Nec Corporation Method and system for providing a transaction forwarding service in blockchain implementations
CN107967416B (zh) * 2016-10-19 2021-07-09 华为技术有限公司 版权维权检测的方法、装置和系统
US20180123779A1 (en) 2016-11-01 2018-05-03 Jiangang Zhang Flexible Blockchain Smart-Contract Deployment
US11176519B2 (en) 2016-11-11 2021-11-16 International Business Machines Corporation Smart contract admission check and fault tolerance in a blockchain
JP6533771B2 (ja) * 2016-11-15 2019-06-19 富士通株式会社 通信方法、装置、及びプログラム
CN106559211B (zh) 2016-11-22 2019-12-13 中国电子科技集团公司第三十研究所 一种区块链中隐私保护智能合约方法
CN106598549B (zh) * 2016-12-08 2019-02-01 天津米游科技有限公司 一种基于区块链的智能合约系统及实现方法
WO2018111295A1 (en) 2016-12-16 2018-06-21 Hitachi, Ltd. Blockchain monitoring and management
DK3340213T3 (da) * 2016-12-21 2020-06-08 Merck Patent Gmbh Puf-baseret kompositsikkerhedsmærkning til bekæmpelse af vareforfalskning
CN107392610A (zh) * 2017-03-06 2017-11-24 钱德君 一种分布式网络的可靠数据源的实现方法
US10320566B2 (en) * 2017-04-04 2019-06-11 International Business Machines Corporation Distributed logging of application events in a blockchain
CN107274186A (zh) * 2017-05-11 2017-10-20 上海点融信息科技有限责任公司 在区块链中获得智能合约接口的方法和设备
CN107193490B (zh) * 2017-05-16 2020-04-17 北京中星仝创科技有限公司 一种基于区块链的分布式数据存储系统及方法
CN107425982B (zh) 2017-07-07 2020-05-12 众安信息技术服务有限公司 一种实现智能合约数据加密的方法和区块链
US10135607B1 (en) 2017-08-11 2018-11-20 Dragonchain, Inc. Distributed ledger interaction systems and methods
CN107464118A (zh) * 2017-08-16 2017-12-12 济南浪潮高新科技投资发展有限公司 一种基于区块链智能合约的数据交易方法
CN107464148A (zh) 2017-08-23 2017-12-12 众安信息技术服务有限公司 一种基于联盟链的智能合约升级方法和系统
CN107688927A (zh) * 2017-09-19 2018-02-13 中国银行股份有限公司 一种调用区块链上的智能合约的方法及系统
AU2018346326B2 (en) 2017-10-04 2023-08-24 Algorand Technologies, Inc. Declarative smart contracts
US10963400B2 (en) * 2017-10-11 2021-03-30 International Business Machines Corporation Smart contract creation and monitoring for event identification in a blockchain
CN108063752B (zh) * 2017-11-02 2020-05-08 暨南大学 基于区块链与代理重加密的可信基因检测及数据共享方法
WO2019109003A1 (en) 2017-11-30 2019-06-06 Visa International Service Association Blockchain system for confidential and anonymous smart contracts
CN108111312B (zh) 2017-12-28 2019-09-27 电子科技大学 一种基于区块链的智能终端安全通信方法
US11205178B2 (en) 2017-12-28 2021-12-21 International Business Machines Corporation Converting processes into multiple blockchain smart contracts
CN108055138B (zh) 2018-02-01 2020-03-17 国家计算机网络与信息安全管理中心 基于区块链的应用分发记录方法和系统
US20190251199A1 (en) * 2018-02-14 2019-08-15 Ivan Klianev Transactions Across Blockchain Networks
CN108389129B (zh) 2018-02-27 2020-12-04 创新先进技术有限公司 基于区块链的交易执行方法及装置、电子设备
US20190287107A1 (en) 2018-03-15 2019-09-19 International Business Machines Corporation Resource equity for blockchain
US20190394267A1 (en) * 2018-06-26 2019-12-26 Anami Holdings, Inc. Dynamic voting nodes in blockchain networks
CN113095822A (zh) 2018-06-27 2021-07-09 创新先进技术有限公司 基于区块链的智能合约调用方法及装置、电子设备
CN109003078B (zh) 2018-06-27 2021-08-24 创新先进技术有限公司 基于区块链的智能合约调用方法及装置、电子设备

Also Published As

Publication number Publication date
AU2019294726A1 (en) 2020-06-18
EP3701673A1 (en) 2020-09-02
PH12020550743B1 (en) 2021-04-19
KR102343782B1 (ko) 2021-12-27
CN109003078B (zh) 2021-08-24
US10776348B2 (en) 2020-09-15
US20200349148A1 (en) 2020-11-05
US11347727B2 (en) 2022-05-31
JP2021512379A (ja) 2021-05-13
US20200004737A1 (en) 2020-01-02
PH12020550743A1 (en) 2021-04-19
EP3701673B1 (en) 2021-10-06
CN109003078A (zh) 2018-12-14
WO2020006164A1 (en) 2020-01-02
CA3084084A1 (en) 2020-01-02
TW202001608A (zh) 2020-01-01
TWI746905B (zh) 2021-11-21
KR20200088827A (ko) 2020-07-23
SG11202005051UA (en) 2020-06-29
AU2019294726B2 (en) 2021-08-19
US11016961B2 (en) 2021-05-25
US20210263914A1 (en) 2021-08-26

Similar Documents

Publication Publication Date Title
JP6975332B2 (ja) ブロックチェーンベースのスマートコントラクト呼び出し方法および装置、および電子デバイス
JP6840292B2 (ja) ブロックチェーンベーススマートコントラクト起動方法および装置、ならびに電子デバイス
US11023456B2 (en) Executing transactions based on blockchain
JP6878700B2 (ja) クロスブロックチェーン認証方法、装置、および電子デバイス
JP6874224B2 (ja) クロスブロックチェーン認証方法および装置
US20210266322A1 (en) Blockchain-based smart contract call methods and apparatus, and electronic device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200803

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201211

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: 20211018

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20211105

R150 Certificate of patent or registration of utility model

Ref document number: 6975332

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250