JP6840292B2 - ブロックチェーンベーススマートコントラクト起動方法および装置、ならびに電子デバイス - Google Patents

ブロックチェーンベーススマートコントラクト起動方法および装置、ならびに電子デバイス Download PDF

Info

Publication number
JP6840292B2
JP6840292B2 JP2020529461A JP2020529461A JP6840292B2 JP 6840292 B2 JP6840292 B2 JP 6840292B2 JP 2020529461 A JP2020529461 A JP 2020529461A JP 2020529461 A JP2020529461 A JP 2020529461A JP 6840292 B2 JP6840292 B2 JP 6840292B2
Authority
JP
Japan
Prior art keywords
data
blockchain
target data
smart contract
target
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
JP2020529461A
Other languages
English (en)
Other versions
JP2021507555A (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 JP2021507555A publication Critical patent/JP2021507555A/ja
Application granted granted Critical
Publication of JP6840292B2 publication Critical patent/JP6840292B2/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; CALCULATING OR 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/3821Electronic credentials
    • G06Q20/38215Use of certificates or encrypted proofs of transaction rights
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/90335Query processing
    • G06F16/90339Query processing by using parallel associative memories or content-addressable memories
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • G06F16/9014Indexing; Data structures therefor; Storage structures hash tables
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/90335Query processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/02Payment architectures, schemes or protocols involving a neutral party, e.g. certification authority, notary or trusted third party [TTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key 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)
    • 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
    • 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)
  • Computer Security & Cryptography (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Accounting & Taxation (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Finance (AREA)
  • Computer Hardware Design (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Storage Device Security (AREA)

Description

関連出願の相互参照
本出願は、その全体が参照により組み込まれている、2018年6月27日に出願した、中国特許出願第201810681250.4号に対する優先権を主張する。
本明細書の1つまたは複数の実施形態は、ブロックチェーン技術の分野に関し、詳細には、ブロックチェーンベーススマートコントラクト起動方法および装置、ならびに電子デバイスに関する。
分散型台帳技術とも称する、ブロックチェーン技術は、いくつかのコンピューティングデバイスが「会計処理」に連携して関与して分散データベース全体を維持管理する、新興技術である。ブロックチェーン技術は、分散化および透明性を特徴としており、各コンピューティングデバイスは、データベースにデータを記録し得るし、データは、コンピューティングデバイス間で迅速に同期され得る。したがって、ブロックチェーン技術は多くの分野に広く適用されている。
本明細書は、ブロックチェーンベーススマートコントラクト起動方法を提供しており、ブロックチェーンベーススマートコントラクト起動方法は、スマートコントラクトの起動を開始するために使用されるターゲットトランザクションを受信するステップであって、ターゲットトランザクションは、起動データを含み、起動データの少なくとも一部は、ブロックチェーンと相互接続された第三者ストレージシステムに記憶されているターゲットデータのデータダイジェストを含む、ステップと、第三者ストレージシステムからのデータダイジェストに対応するターゲットデータについてクエリを行い、第三者ストレージシステムによって返信されたクエリ結果を受信するステップであって、クエリ結果は、暗号化されたターゲットデータを含む、ステップと、暗号化されたターゲットデータを復号するために使用される鍵を取得するとともに鍵に基づいて暗号化されたターゲットデータを復号し、復号されたターゲットデータに対して内容検証を行うステップと、ターゲットデータに対する検証が成功している場合には、スマートコントラクトを起動してターゲットトランザクション中の起動データに対してスマートコントラクト計算を行い、スマートコントラクト計算が完了した後にブロックチェーンの分散型データベースに計算結果を記憶するステップとを含む。
必要に応じて、第三者ストレージシステムは、ターゲットデータとターゲットデータのデータダイジェストとの間のマッピング関係を記憶し、第三者ストレージシステムからのデータダイジェストに対応するターゲットデータについてクエリを行うステップは、データダイジェストに対応するターゲットデータについてクエリを行うために、クエリインデックスとしてデータダイジェストを使用して第三者ストレージシステムに対するクエリを開始するステップを含む。
必要に応じて、クエリ結果は、鍵に対応する鍵メタデータをさらに含み、暗号化されたターゲットデータを復号するために使用される鍵を取得するとともに鍵に基づいて暗号化されたターゲットデータを復号するステップは、暗号化されたターゲットデータおよび鍵メタデータをブロックチェーンと相互接続された第三者復号システムに送信するステップであって、第三者復号システムは、第三者復号システムが、マッピング関係についてクエリを行って鍵メタデータに対応する鍵を取得するために、鍵と鍵メタデータとの間のマッピング関係を維持管理し、取得した鍵に基づいて暗号化されたターゲットデータを復号する、ステップと、第三者復号システムによって返信された、復号されたターゲットデータを受信するステップとを含む。
必要に応じて、復号されたターゲットデータに対して内容検証を行うステップは、所定のダイジェストアルゴリズムに基づいてターゲットデータのデータダイジェストを計算するステップと、計算したデータダイジェストがターゲットトランザクション中のターゲットデータのデータダイジェストと一致しているかどうかを決定するステップと、計算したデータダイジェストがターゲットトランザクション中のターゲットデータのデータダイジェストと一致している場合には、ターゲットデータに対する検証が成功していると決定するステップとを含む。
必要に応じて、第三者ストレージシステムは、中央集権型の内容アドレス記憶装置CASシステムまたは分散型のCASシステムを含む。
必要に応じて、ブロックチェーンは、いくつかのメンバブロックチェーンを含むコンソーシアムブロックチェーン内の任意のメンバブロックチェーンである。
必要に応じて、第三者ストレージシステムは、コンソーシアムブロックチェーン内のブロックチェーンとのクロスチェーンデータ参照関係を有する別のメンバブロックチェーンである。
本明細書は、ブロックチェーンベーススマートコントラクト起動装置を提供しており、ブロックチェーンベーススマートコントラクト起動装置は、スマートコントラクトの起動を開始するために使用されるターゲットトランザクションを受信するように構成される、受信モジュールであって、ターゲットトランザクションは、起動データを含み、起動データの少なくとも一部は、ブロックチェーンと相互接続された第三者ストレージシステムに記憶されているターゲットデータのデータダイジェストを含む、受信モジュールと、第三者ストレージシステムからのデータダイジェストに対応するターゲットデータについてクエリを行い、第三者ストレージシステムによって返信されたクエリ結果を受信するように構成される、クエリモジュールであって、クエリ結果は、暗号化されたターゲットデータを含む、クエリモジュールと、暗号化されたターゲットデータを復号するために使用される鍵を取得するとともに鍵に基づいて暗号化されたターゲットデータを復号し、復号されたターゲットデータに対して内容検証を行うように構成される、復号モジュールと、ターゲットデータに対する検証が成功している場合には、スマートコントラクトを起動してターゲットトランザクション中の起動データに対してスマートコントラクト計算を行い、スマートコントラクト計算が完了した後にブロックチェーンの分散型データベースに計算結果を記憶するように構成される、起動モジュールとを含む。
必要に応じて、第三者ストレージシステムは、ターゲットデータとターゲットデータのデータダイジェストとの間のマッピング関係を記憶し、クエリモジュールは、データダイジェストに対応するターゲットデータについてクエリを行うために、クエリインデックスとしてデータダイジェストを使用して第三者ストレージシステムに対するクエリを開始するように構成される。
必要に応じて、クエリ結果は、鍵に対応する鍵メタデータをさらに含み、復号モジュールは、暗号化されたターゲットデータおよび鍵メタデータをブロックチェーンと相互接続された第三者復号システムに送信することであって、第三者復号システムは、第三者復号システムが、マッピング関係についてクエリを行って鍵メタデータに対応する鍵を取得するために、鍵と鍵メタデータとの間のマッピング関係を維持管理し、取得した鍵に基づいて暗号化されたターゲットデータを復号する、ことと、第三者復号システムによって返信された、復号されたターゲットデータを受信することとをするように構成される。
必要に応じて、クエリモジュールは、所定のダイジェストアルゴリズムに基づいてターゲットデータのデータダイジェストを計算することと、計算したデータダイジェストがターゲットトランザクション中のターゲットデータのデータダイジェストと一致しているかどうかを決定することと、計算したデータダイジェストがターゲットトランザクション中のターゲットデータのデータダイジェストと一致している場合には、ターゲットデータに対する検証が成功していると決定することとをするように構成される。
必要に応じて、第三者ストレージシステムは、中央集権型の内容アドレス記憶装置CASシステムまたは分散型のCASシステムを含む。
必要に応じて、ブロックチェーンは、いくつかのメンバブロックチェーンを含むコンソーシアムブロックチェーン内の任意のメンバブロックチェーンである。
必要に応じて、第三者ストレージシステムは、コンソーシアムブロックチェーン内のブロックチェーンとのクロスチェーンデータ参照関係を有する別のメンバブロックチェーンである。
本明細書は、プロセッサと、マシン実行可能命令を記憶するように構成されるメモリとを含む、電子デバイスをさらに提供しており、メモリに記憶されるとともにブロックチェーンベーススマートコントラクト起動の制御ロジックに対応するマシン実行可能命令を読み込み実行することによって、プロセッサは、スマートコントラクトの起動を開始するために使用されるターゲットトランザクションを受信することであって、ターゲットトランザクションは、起動データを含み、起動データの少なくとも一部は、ブロックチェーンと相互接続された第三者ストレージシステムに記憶されているターゲットデータのデータダイジェストを含む、ことと、第三者ストレージシステムからのデータダイジェストに対応するターゲットデータについてクエリを行い、第三者ストレージシステムによって返信されたクエリ結果を受信することであって、クエリ結果は、暗号化されたターゲットデータを含む、ことと、暗号化されたターゲットデータを復号するために使用される鍵を取得し、鍵に基づいて暗号化されたターゲットデータを復号し、復号されたターゲットデータに対して内容検証を行うことと、ターゲットデータに対する検証が成功している場合には、スマートコントラクトを起動してターゲットトランザクション中の起動データに対してスマートコントラクト計算を行い、スマートコントラクト計算が完了した後にブロックチェーンの分散型データベースに計算結果を記憶することとをするように構成される。
上記の実施形態による、スマートコントラクトの起動を開始するために使用されるトランザクションは、データダイジェストに基づいてブロックチェーン内のトランザクションを受信するノードデバイスが、第三者ストレージシステムからの対応するターゲットデータについてクエリを行い、特定した暗号化されたターゲットデータを復号し、復号されたターゲットデータに対して内容検証を行い、ターゲットデータに対する検証が成功していると、スマートコントラクトを起動してトランザクション中の起動データに対してスマートコントラクト計算を行い、スマートコントラクト計算が完了した後にブロックチェーンの分散型データベースに計算結果を記憶することができるように、第三者ストレージシステムに記憶されているターゲットデータのデータダイジェストを含む。
ブロックチェーンと相互接続された第三者ストレージシステムに記憶されているターゲットデータは、スマートコントラクトの起動を開始するために使用されるトランザクション中の起動データとして参照され、第三者ストレージシステムに記憶されているターゲットデータの元のコンテンツをブロックチェーン内の各ノードデバイスと同期することによって引き起こされるブロックチェーンデータストレージ冗長性を軽減し得る。
加えて、データダイジェストに対応するとともに第三者ストレージシステムから特定されるターゲットデータは暗号化されたデータであるため、データ利用セキュリティレベルを改善することができ、平文データをそのまま使用することによって引き起こされるデータ漏洩を軽減している。
例示的な実施形態による、ブロックチェーンベーススマートコントラクト起動方法を図示しているフローチャートである。 例示的な実施形態による、コンソーシアムブロックチェーンを図示している概略構造図である。 例示的な実施形態による、電子デバイスを図示している概略構造図である。 例示的な実施形態による、ブロックチェーンベーススマートコントラクト起動装置を図示しているブロック図である。
ブロックチェーンの従来のスマートコントラクト起動プロセスにおいては、スマートコントラクトを起動するために必要な起動データ(すなわち、スマートコントラクトに入力される起動パラメータ)は、通常、ブロックチェーンの分散型データベース(すなわち、ブロックチェーン台帳)に記憶されているデータコンテンツに由来しており、外部メモリに記憶されているデータコンテンツを参照することはできない。したがって、ブロックチェーンネットワーク内の各ノードデバイスがスマートコントラクトを起動する際にスマートコントラクト計算のために使用される起動データは、通常、チェーンに由来しており、それによって、「閉じたデータ利用ループ」を形成することになる。
しかしながら、ブロックチェーンの「閉じたデータ利用ループ」を脱するために、本明細書は、スマートコントラクトを起動する際に、第三者ストレージプラットフォーム上に記憶されている変更不可なデータコンテンツがトランザクションコンテンツとして参照される、技術的ソリューションを開示することを目的としている。
実施に際しては、ブロックチェーンは、事前に第三者ストレージシステムと相互接続され得るし、第三者ストレージシステムは、ブロックチェーンにデプロイされたスマートコントラクトにおいて参照され得るいくつかの変更不可なデータコンテンツを事前に記憶し得る。
スマートコントラクトの起動を開始する場合には、ブロックチェーンにアクセスするメンバユーザは、起動データとして第三者ストレージシステムに記憶されているデータコンテンツを参照するために、第三者ストレージシステムに記憶されているデータコンテンツのデータダイジェストを、スマートコントラクトの起動を開始するために使用されるトランザクションに追加し得る。
メンバユーザによって発行されたトランザクションを受信する場合には、ブロックチェーン内のノードデバイスは、データダイジェストに対応するデータコンテンツについてクエリを行うためにデータダイジェストに基づいて第三者ストレージシステムに対するクエリを開始し、特定したデータコンテンツに対して内容検証を行い得る。内容検証が成功している場合には、ノードデバイスは、スマートコントラクトを起動してスマートコントラクトにおいて宣言されたスマートコントラクトプログラムを宣言するとともにトランザクション中の起動データ全体に対してスマートコントラクト計算を行い、スマートコントラクト計算が完了した後にブロックチェーンの分散型データベースに計算結果を記憶し得る。
上記の実施形態においては、スマートコントラクトの起動を開始するために使用されるトランザクションは、データダイジェストに基づいてブロックチェーン内のトランザクションを受信するノードデバイスが、第三者ストレージシステムからの対応するターゲットデータについてクエリを行い、ターゲットデータに対して内容検証を行い、ターゲットデータに対する検証が成功していると、スマートコントラクトを起動してトランザクション中の起動データに対してスマートコントラクト計算を行い、スマートコントラクト計算が完了した後にブロックチェーンの分散型データベースに計算結果を記憶することができるように、第三者ストレージシステムに記憶されているターゲットデータのデータダイジェストを含む。そのため、ブロックチェーンと相互接続された第三者ストレージシステムに記憶されているターゲットデータは、スマートコントラクトの起動を開始するために使用されるトランザクション中の起動データとして参照され、第三者ストレージシステムに記憶されているターゲットデータの元のコンテンツをブロックチェーン内の各ノードデバイスと同期することによって引き起こされるブロックチェーンデータストレージ冗長性を軽減し得る。
適用シナリオを参照して実施形態を使用して本明細書を以下に説明する。
図1を参照すれば、図1は、本明細書の実施形態によるブロックチェーンベーススマートコントラクト起動方法を示している。方法は、ブロックチェーン内のノードデバイスに適用され、以下のステップを含む。
ステップ102: スマートコントラクトの起動を開始するために使用されるターゲットトランザクションを受信する、ここで、ターゲットトランザクションは、起動データを含み、起動データの少なくとも一部は、ブロックチェーンと相互接続された第三者ストレージシステムに記憶されているターゲットデータのデータダイジェストを含む。
ステップ104: 第三者ストレージシステムからのデータダイジェストに対応するターゲットデータについてクエリを行い、ターゲットデータに対して内容検証を行う。
ステップ106: 暗号化されたターゲットデータを復号するために使用される鍵を取得するとともに鍵に基づいて暗号化されたターゲットデータを復号し、復号されたターゲットデータに対して内容検証を行う。
ステップ108: ターゲットデータに対する検証が成功している場合には、スマートコントラクトを起動してターゲットトランザクション中の起動データに対してスマートコントラクト計算を行い、スマートコントラクト計算が完了した後にブロックチェーンの分散型データベースに計算結果を記憶する。
本明細書において説明したブロックチェーンは、ブロックチェーンと相互接続された第三者ストレージシステムに記憶されている変更不可なデータコンテンツが、サポートされているスマートコントラクトによって起動データとして参照され得る、任意のタイプのブロックチェーンネットワークを含み得る。
例えば、あるシナリオでは、ブロックチェーンは、いくつかのメンバブロックチェーンを含むコンソーシアムブロックチェーン内の任意のメンバブロックチェーンであり得る。コンソーシアムブロックチェーンにおいては、別のメンバブロックチェーンに記憶されているデータコンテンツは、各メンバブロックチェーンによってサポートされている各スマートコントラクトによって起動データとしてチェーンを越えて参照され得る。
第三者ストレージシステムは、ブロックチェーンに高信頼度のデータストレージサービスを提供する内容アドレス記憶装置(CAS)プラットフォームを含む。内容アドレス指定能力は、アドレス指定がストレージシステムにおけるデータストレージオフセットの代わりにデータコンテンツに基づいて行われることを意味している。
CASプラットフォーム上に、保存されているデータコンテンツのデータダイジェストは、元のデータコンテンツのクエリインデックスとして使用され得るし、データクエリ関係者がクエリインデックスとしてデータダイジェストを使用してCASプラットフォームからの対応する元のデータコンテンツについてクエリを行うことができるように、クエリインデックスと元のデータコンテンツとの間のマッピング関係を記憶する。
例えば、ある実施形態においては、データダイジェストは、データコンテンツに対してハッシュ計算を行うことによって得られるハッシュ値であり得る。データクエリ関係者は、クエリインデックスとしてハッシュ値を使用して、CASプラットフォームからのハッシュ値に対応する元のデータコンテンツについてクエリを行い得る。
実際の適用においては、第三者ストレージシステムは、従来の中央集権型の内容アドレス記憶装置(CAS)システムを含み得る、または、非中央集権型の分散CASシステムを含み得る。
例えば、あるシナリオでは、ブロックチェーンは、いくつかのメンバブロックチェーンを含むコンソーシアムブロックチェーン内の任意のメンバブロックチェーンであり得る。加えて、第三者ストレージシステムは、コンソーシアムブロックチェーンにデプロイされるとともに、オブジェクトストレージサービス(OSS)機構などのコンソーシアムブロックチェーン内の各メンバブロックチェーンと相互接続され得る、分散システムであり得る。
あるいは、別の例においては、コンソーシアムブロックチェーン内のブロックチェーンとのクロスチェーンデータ参照関係を有する別のメンバブロックチェーンは、メンバブロックチェーン間のクロスチェーンデータ参照を実施するために、ブロックチェーンと相互接続された第三者ストレージシステムとして使用され得る。換言すれば、第三者ストレージシステムは、ブロックチェーンとのクロスチェーン参照関係を有する別のブロックチェーンであり得る。「第三者ストレージシステムのデプロイメント」、「起動データの参照」、および「スマートコントラクトの起動および実行」を参照して、ブロックチェーンがいくつかのメンバブロックチェーンを含むコンソーシアムブロックチェーン内のメンバブロックチェーンである例を使用して、本明細書の技術的ソリューションを以下に詳細に説明する。
(1) 第三者ストレージシステムのデプロイメント
本明細書では、事業者は、いくつかのメンバブロックチェーンを含むコンソーシアムブロックチェーンを事前に確立し得る。コンソーシアムブロックチェーンにおいては、各メンバブロックチェーンは、コンソーシアムブロックチェーンのコンソーシアムメンバである。上記のブロックチェーンは、コンソーシアムブロックチェーン内の任意のメンバブロックチェーンであり得る。
コンソーシアムブロックチェーンの事業者は、コンソーシアムブロックチェーンに第三者ストレージシステムをさらにデプロイし得る。第三者ストレージシステムは、コンソーシアムブロックチェーン内の各メンバブロックチェーンと相互接続され、各メンバブロックチェーンに高信頼度のデータストレージサービスを提供する。
例えば、第三者ストレージシステムは、コンソーシアムブロックチェーン内の各メンバブロックチェーンがAPIアクセスインターフェースにアクセスすることによって第三者ストレージシステムと相互接続され得るように、各メンバブロックチェーンに常に信頼できるAPIアクセスインターフェースを提供し得る。
コンソーシアムブロックチェーン内の第三者ストレージシステムデプロイメント中に、グローバルな第三者ストレージシステムがコンソーシアムブロックチェーンに対してデプロイされ得る、または、独立した第三者ストレージシステムがコンソーシアムブロックチェーン内の各メンバブロックチェーンに対してデプロイされ得る。実施形態は本明細書において限定されない。
本明細書では、第三者ストレージシステムは、内容アドレス指定能力をサポートするCASシステムであり得る。実際の適用においては、第三者ストレージシステムは、従来の中央集権型のCASシステムであり得る、または、分散CASシステムであり得る。
分散CASシステムは、従来の中央集権型の分散システムと、非中央集権型の分散システムとを含み得る。
例示した実施形態においては、第三者ストレージシステムは、コンソーシアムブロックチェーンにデプロイされるとともにコンソーシアムブロックチェーン内の各メンバブロックチェーンと相互接続され得る、OSSアーキテクチャベースの中央集権型の分散システムなどであり得る。
別の例示した実施形態においては、第三者ストレージシステムは、非中央集権型の分散システムであり得る。実施に際しては、ブロックチェーンとのクロスチェーンデータ参照関係を有するコンソーシアムブロックチェーン内の別のメンバブロックチェーンは、ブロックチェーンと相互接続された第三者ストレージシステムとして使用され得る。換言すれば、コンソーシアムブロックチェーン内の任意のメンバブロックチェーンは、クロスチェーンデータ参照を実施するために、別のメンバブロックチェーンと相互接続された第三者ストレージシステムとして使用され得る。
例えば、あるシナリオでは、事業者は、実際のサービス要件に基づいてコンソーシアムブロックチェーンを確立し、異なるサービス任務をコンソーシアムブロックチェーン内のメンバブロックチェーンに割り当て得る。具体的には、コンソーシアムブロックチェーンがサービスプロセス全体に対応し、各メンバブロックチェーンはサービスプロセス全体の1つのサブプロセスに対応し得る。
サービス要件「オンライン住宅賃貸トランザクション」に基づいて事業者によって確立されるコンソーシアムブロックチェーンを例として使用しており、コンソーシアムブロックチェーンを形成する各メンバブロックチェーンは、「トランザクションチェーン」、「認証チェーン」、および「データチェーン」を含み得る。「トランザクションチェーン」、「認証チェーン」、および「データチェーン」は、「オンライン住宅賃貸トランザクション」のサービスプロセスの1つのサブプロセスに別々に対応し得る。例えば、「データチェーン」は、住宅賃貸ユーザの実名データを維持管理するために使用され、「認証チェーン」は、ユーザ固有の住宅賃貸実名認証を完遂するために使用され、「トランザクションチェーン」は、オンライン住宅賃貸トランザクションを完遂するために使用される。
その後、事業者は、メンバブロックチェーン間の一方向クロスチェーンデータ参照関係に基づいて、あるサービスレベルで、Directed Acyclic Graph(DAG)トポロジのトポロジダイアグラムとしてコンソーシアムブロックチェーンを確立し得る。
メンバブロックチェーン間の一方向クロスチェーンデータ参照関係は、通常、実際のサービス要件に依存するものであり、本明細書において限定されないことに留意されたい。
例えば、図2を参照すれば、図2は、例に示したDAG構造のコンソーシアムブロックチェーンを図示している概略図である。
図2に示しているように、サービス要件「オンライン住宅賃貸トランザクション」に基づいて事業者によって確立されるコンソーシアムブロックチェーンを例としてさらに使用しており、コンソーシアムブロックチェーンを形成するメンバブロックチェーンは各々、「トランザクションチェーン」、「認証チェーン」、および「データチェーン」を含み得る。「データチェーン」は、住宅賃貸ユーザの実名データを維持管理するために使用され、ユーザは、「データチェーン」においてトランザクションを発行することによって、「データチェーン」の分散型データベースに実名データを記憶し得る。「認証チェーン」は、ユーザ固有の住宅賃貸実名認証を完了するために、「データチェーン」において発行されたユーザの実名データを参照するために使用され、ユーザは、「認証チェーン」においてトランザクションを発行することによって実名認証を完了し、「認証チェーン」の分散型データベースにおいて実名認証結果を発行し得る。「トランザクションチェーン」は、ユーザが、「トランザクションチェーン」においてトランザクションを発行することによってオンライン住宅賃貸トランザクションを完了し、「認証チェーン」の分散型データベースにおいてトランザクション結果を発行することができるように、「認証チェーン」において発行されたユーザ固有の実名認証結果を参照するために使用される。
コンソーシアムブロックチェーン内の任意のターゲットメンバブロックチェーンとのクロスチェーンデータ参照関係を有する別のメンバブロックチェーンは、ターゲットメンバブロックチェーンと相互接続された分散ストレージプラットフォームとして使用される。
メンバブロックチェーン間のクロスチェーンデータ参照は、あるサービスレベルで実施され得る。
加えて、第三者ストレージシステムとして使用されるメンバブロックチェーンがデプロイされたスマートコントラクトを起動および実行する際に、第三者ストレージシステムに記憶されているターゲットデータがスマートコントラクト計算のために使用される起動データにおいて参照される場合に、被参照ターゲットデータの元のコンテンツをターゲットメンバブロックチェーン内の各ノードデバイスと同期する必要はもはやなく、ターゲットメンバブロックチェーンは被参照ターゲットデータの元のコンテンツを記憶する必要はもはやない。
したがって、ターゲットメンバブロックチェーンは、ターゲットメンバブロックチェーンに記憶されている、ターゲットデータの、元のコンテンツ間の追加のデータ関連付けと第三者ストレージシステムとして使用されるメンバブロックチェーンから同期される被参照ターゲットデータとをセットアップする必要はもはやなく、被参照ターゲットデータのデータダイジェストだけを使用して2つの異なるブロックチェーンにおける被参照ターゲットデータ間のデータ関連付けを実施し得る、それによって、ターゲットメンバブロックチェーンにデプロイされたスマートコントラクトにおいて参照されるターゲットデータが第三者ストレージシステムとして使用されるメンバブロックチェーンに記憶されている被参照ターゲットデータとサービスセマンティックの観点で一致していることを保証している。
(2) 起動データの参照
本明細書では、コンソーシアムブロックチェーンにアクセスする必要がるユーザは、事前にコンソーシアムブロックチェーンにおいてユーザ登録を行って、コンソーシアムブロックチェーンによって返信された公開鍵および秘密鍵のペアを取得し得る。登録が完了した後に、コンソーシアムブロックチェーンは、ユーザのための対応するアカウントオブジェクトを作成し得る。
コンソーシアムブロックチェーン内の各メンバブロックチェーンによって提供されたAPIインターフェースを使用して登録を完了したユーザは、各メンバブロックチェーンにアクセスし、各メンバブロックチェーンにデプロイされたスマートコントラクトを起動するために保持している秘密鍵に基づいて署名したトランザクションを各メンバブロックチェーンに発行し得る。
図2に示したコンソーシアムブロックチェーン内の「トランザクションチェーン」を一例として使用する。コンソーシアムブロックチェーンの事業者は、「トランザクションチェーン」において、オンライン住宅賃貸会計処理を完了するために使用されるスマートコントラクトを発行し得るし、ユーザは、スマートコントラクトの起動をトリガし、オンライン住宅賃貸トランザクション会計処理を完了するために、「トランザクションチェーン」においてトランザクションを発行し得る。
コンソーシアムブロックチェーンの事業者がコンソーシアムブロックチェーンにスマートコントラクトをデプロイすることについての詳細なプロセスは、簡潔にするために本明細書では省略する。当業者は、本明細書において説明した技術的ソリューションを実施する際には、関連する技術的業績を参照することが可能である。
例えば、コンソーシアムブロックチェーンにアクセスする複数のメンバは、コンソーシアムブロックチェーン内のノードデバイスが、コンセンサス処理を行い、コンセンサスに達した後に、コンソーシアムブロックチェーンの分散型データベースにスマートコントラクトを記録および記憶してスマートコントラクトのデプロイメントを完遂するように、スマートコントラクトを連帯してネゴシエートし、スマートコントラクトにおいて開発されたスマートコントラクトプログラム(例えば、起動され得るいくつかの機能に関連するプログラムコード)を宣言し、その後、コンソーシアムブロックチェーンにおいてスマートコントラクトを発行し得る。
本明細書では、コンソーシアムブロックチェーンの事業者は、コンソーシアムブロックチェーンにアクセスするメンバユーザのためのクライアントソフトウェア(例えば、アプリ)を開発し得るし、メンバユーザは、クライアントソフトウェアを使用して、コンソーシアムブロックチェーンによってサポートされている標準トランザクションフォーマットに基づいてトランザクションデータを構築し、各メンバブロックチェーンによって提供されたAPIインターフェースを起動することによって、構築したトランザクションデータをメンバユーザによって指定されたコンソーシアムブロックチェーン内のターゲットメンバブロックチェーンに発行してターゲットメンバブロックチェーンにデプロイされたスマートコントラクトの起動を開始し得る。
クライアントソフトウェアを使用してメンバユーザによって構築されたトランザクションデータは、メンバユーザによって提供された起動データを含み得るし、起動データは、スマートコントラクトに入力される起動パラメータとして使用される。起動データの少なくとも一部をデータダイジェストによって置換することができる。
例示した実施形態においては、メンバユーザが、クライアントソフトウェアを使用して、ターゲットメンバブロックチェーンにおいて実行する必要があるトランザクションデータを構築する際には、メンバユーザは、クライアントソフトウェアを使用して、トランザクションに含める必要がある起動データを入力し得る。クライアントソフトウェアは、メンバユーザによって入力された起動データをパースして、ターゲットメンバブロックチェーンと相互接続された第三者ストレージシステムに記憶されているデータがメンバユーザによって入力された起動データに存在するかどうかを決定し得る、換言すれば、第三者ストレージシステムに記憶されているデータがメンバユーザによって入力された起動データにおいて参照されるのかどうかを決定し得る。
第三者ストレージシステムに記憶されているデータがメンバユーザによって入力された起動データに存在する場合には、起動データに対応するデータダイジェスト(すなわち、クエリインデックス)について第三者ストレージシステムからクエリを行い得る、または、第三者ストレージシステムによってサポートされているデータダイジェストアルゴリズムと同じデータダイジェストアルゴリズムに基づいてデータダイジェストをトランザクションコンテンツについて再計算し得るし、その後、データダイジェストを標準トランザクションフォーマットに入力し得る。
例えば、実施に際しては、起動データを含むために使用されるデータダイジェストフィールドが、コンソーシアムブロックチェーンによってサポートされている標準トランザクションフォーマットにおいて拡張され得る。標準トランザクションフォーマットでトランザクションデータを構築する際に、クライアントソフトウェアは、第三者ストレージシステムに記憶されている被参照データのすべてのデータダイジェストをデータダイジェストフィールドに入力し得る。
(3) スマートコントラクトの起動および実行
本明細書では、秘密鍵に基づいてメンバユーザによって発行されたトランザクションを受信した後に、ターゲットメンバブロックチェーン内のノードデバイスは、まず、ユーザによって保持されている秘密鍵に対応する公開鍵に基づいてユーザの識別認証を行い得る。
例えば、実際の適用においては、ユーザは、保持していた秘密鍵に基づいて開始されるトランザクションを署名し得るし、ブロックチェーン内のノードデバイスは、ユーザによって保持されている秘密鍵に対応する公開鍵に基づいて署名を認証し得る。署名に対する認証が成功した場合には、ユーザの識別認証が成功したことになる。
識別認証が成功した後に、ノードデバイスは、ターゲットメンバブロックチェーン内のトランザクションに対するコンセンサス処理を開始し、コンセンサスに達した後に、ターゲットメンバブロックチェーンの分散型データベースにトランザクションを記録および記憶し得る。トランザクションをターゲットメンバブロックチェーンの分散型データベースに記録および記憶することに成功すると、スマートコントラクトの起動が、スマートコントラクトにおいて宣言されたスマートコントラクトプログラムを実行するために、分散型データベースに記録されているトランザクションに基づいて以降でトリガされ得る。
例えば、実施に際しては、厳密なトリガ実行条件が、通常、スマートコントラクト内のスマートコントラクトプログラムに対して事前に定められている。スマートコントラクトは、分散型データベースに現時点記録されているトランザクションが実行条件を満足しているかどうかを定期的にチェックし、検証されることになるトランザクションキューに、実行条件を満足するとともに分散型データベースに記憶されているトランザクションを追加し、トランザクションキュー内のトランザクションに対してコンセンサス処理を行い得る。コンセンサスに達している場合に、スマートコントラクトにおいて宣言されたスマートコントラクトプログラムの実行がトリガされ得る。
ターゲットメンバブロックチェーンにおいてコンセンサス処理をトランザクションに対して行う際に使用されるコンセンサスアルゴリズムは本明細書において限定されないことに留意されたい。メンバブロックチェーンによってサポートされているコンセンサスアルゴリズムは、同一であり得る、または、異なり得る。例えば、コンソーシアムブロックチェーンはPBFTなどの主流のコンセンサスアルゴリズムを使用し得る、または、コンソーシアムブロックチェーンはコンセンサスアルゴリズムを独立して開発し得る。
本明細書では、スマートコントラクトにおいて宣言されたスマートコントラクトプログラムを実行するためにスマートコントラクトの起動がトランザクションに基づいてトリガされる場合には、スマートコントラクトは、まず、トランザクションに含まれる起動データをパースして、トランザクションに含まれる起動データにデータダイジェストが存在しているかどうかを決定し得る。
例えば、ノードデバイスは、パースすることによって、標準トランザクションフォーマットから拡張されるとともにトランザクションコンテンツを含むように使用されるデータダイジェストフィールドがヌル値であるかどうかを決定して、トランザクションに含まれるトランザクションコンテンツにデータダイジェストが存在しているかどうかを決定し得る。
トランザクションに含まれる起動データにデータダイジェストが存在している場合には、第三者ストレージシステムに記憶されているデータコンテンツは、トランザクション中のいくつかの起動データにおいて参照される。そのようなケースでは、トランザクションに含まれる起動データ全体を取得するために、スマートコントラクトは、ターゲットメンバブロックチェーンと相互接続された第三者ストレージシステムからのデータダイジェストに対応するターゲットデータについてクエリを行い得る。
実施に際しては、スマートコントラクトは、クエリ要求を確立し、クエリインデックスとしてデータダイジェストを使用してデータダイジェストをクエリ要求に追加し、その後、クエリ要求を第三者ストレージシステムに送信し得る。クエリ要求を受信すると、第三者ストレージシステムは、クエリ要求からクエリインデックスを読み込み、その後、クエリインデックスに基づいて、ローカルに保存されているデータコンテンツとデータダイジェストとの間のマッピング関係をトラバースして、クエリインデックスに対応するターゲットデータについてクエリを行い、特定したターゲットデータをスマートコントラクトに返信し得る。
第三者ストレージシステムがターゲットメンバブロックチェーンとのクロスチェーン参照関係を有する別のメンバブロックチェーンであり得ることに留意されたい。したがって、スマートコントラクトによって確立されたクエリ要求は、第三者ストレージシステムとして使用される別のメンバブロックチェーン内のノードデバイスにブロードキャストされ得る。
実際の適用においては、別のメンバブロックチェーンにおいて使用されるコンセンサスアルゴリズムの間に違いがあるため、スマートコントラクトがクエリ要求を別のメンバブロックチェーン内のノードデバイスに送信した後に異なるクエリ結果が得られ得る。
例えば、ブロックチェーンにおいて使用されるコンセンサスアルゴリズムは、通常、分散一貫性に基づいて2つのタイプに分類され得る。分散一貫性は、コンセンサスアルゴリズムを使用してコンセンサスに達するとブロックチェーン内のすべてのノードデバイス上に記憶されているデータが完全に同一となっていることを意味する。
第1のタイプのコンセンサスアルゴリズムは、各ノードデバイスの分散一貫性を保証し得るコンセンサスアルゴリズムである。例えば、フォールト・トレランス機構がPBFTコンセンサスアルゴリズムにおけるコンセンサスに達するために使用され、その結果、コンセンサスに達した後に各ノードデバイスによって記憶されているデータが厳密に同一となる。
第2のタイプのコンセンサスアルゴリズムは、各ノードデバイスの分散一貫性を保証し得ないコンセンサスアルゴリズムである。例えば、コンテンションベースの台帳機構がPoSまたはPoWコンセンサスアルゴリズムにおけるコンセンサスに達するために使用される。その結果、コンセンサスに達した後に各ノードデバイスによって記憶されているデータが同一であることを保証し得ない。PoWコンセンサスアルゴリズムを一例として使用する。ワークロード計算により台帳パーミッションを取得したノードデバイスはノードデバイスによって提示されているブロックのデータのみを記憶し得るため、その結果、ノードデバイスによってローカルに記憶されているブロックデータは異なり得る。
したがって、第三者ストレージシステムとして使用される別のメンバブロックチェーンによって使用されるコンセンサスアルゴリズムが上記で説明した第2のタイプのコンセンサスアルゴリズムである場合には、スマートコントラクトがクエリ要求を別のメンバブロックチェーン内の各ノードデバイスに送信した後に他のノードデバイスができる一方でいくつかのノードデバイスが関連するデータをローカルで特定できない可能性がある。
あるシナリオでは、第三者ストレージシステムとして使用される別のメンバブロックチェーンによって使用されるコンセンサスアルゴリズムが上記で説明した第1のタイプのコンセンサスアルゴリズムである場合には、スマートコントラクトは、コンセンサスアルゴリズムもサポートするクエリクライアントソフトウェアを使用して、他のメンバブロックチェーンに対してデータクエリを行って一貫性についてのクエリ結果を取得し得る。
PBFTコンセンサスアルゴリズムを一例として使用する。第三者ストレージシステムとして使用される別のメンバブロックチェーン内のノードデバイスの数が3f+1であると仮定する。スマートコントラクトがクエリクライアントソフトウェアを使用してクエリ要求を別のメンバブロックチェーン内のノードデバイスに別々に送信した後に、f+1個のノードデバイスによって返信された同一のクエリ結果が受信されるとクエリ結果は最終的なクエリ結果であるとみなされ得る。
あるシナリオでは、第三者ストレージシステムとして使用される別のメンバブロックチェーンによって使用されるコンセンサスアルゴリズムが上記で説明した第2のタイプのコンセンサスアルゴリズムである場合には、安定した信頼できるノードデバイスを別のメンバブロックチェーン内のクエリノードとして指定する必要がある。スマートコントラクトは、クエリ要求をクエリノードに送信し、関連するデータについてクエリノードによってローカルに記憶されているデータを検索し得る。
換言すれば、そのようなシナリオでは、クエリノードによってローカルに記憶されているデータがデータ参照関係者に対する一貫性についての結果であるとみなされ得るし、クエリノードによってローカルに記憶されているデータだけが別のメンバブロックチェーンにデプロイされたスマートコントラクトによって参照され得る。
実際の適用においては、データダイジェストに対応するターゲットデータを迅速に特定するために、クエリ要求がクエリインデックスとして使用されるデータダイジェストに加えていくつかの補助クエリパラメータを含み得ることに留意されたい。
例えば、ターゲットメンバブロックチェーンと相互接続された第三者ストレージシステムは、ターゲットメンバブロックチェーンとのクロスチェーンデータ参照関係を有する別のメンバブロックチェーンである。そのようなケースでは、第三者ストレージシステムとして使用される別のメンバブロックチェーンに記憶されている、被参照データコンテンツと対応するデータダイジェストとは、通常、ブロックの形式でブロックチェーンの分散型データベースに記憶されている。したがって、クエリを容易にするために、クエリ要求は、データダイジェストが位置しているメンバブロックチェーンのシーケンス番号およびブロック番号などといった補助クエリパラメータをさらに含み得る。
本明細書では、データストレージセキュリティを改善するために、第三者ストレージシステムに記憶されているデータは、所定の暗号化アルゴリズムに基づいて事前に暗号化され得る。データ暗号化方法は、本明細書において限定されないが、従来の対称暗号化または非対称暗号化であり得る。すなわち、本明細書では、ターゲットデータが暗号化される際に使用される暗号化鍵と復号鍵とが同一の鍵または異なる鍵であり得る。
そのようなケースでは、スマートコントラクトによって送信されたクエリ要求を受信した後に、第三者ストレージシステムは、クエリ結果としてスマートコントラクトに暗号化されたターゲットデータを返信し得るし、スマートコントラクトは、暗号化されたターゲットデータを復号して、ターゲットデータの平文コンテンツを取得し得る。
例示した実施形態においては、暗号化されたターゲットデータは、コンソーシアムブロックチェーンと相互接続された独立した第三者復号システムによって復号され得る。
コンソーシアムブロックチェーンと相互接続された独立した第三者復号システムは、より容易に鍵に対する中央集権型管理を行うために、データを復号するために必要な鍵が独立した復号システムにおいて別々に維持管理されるように、第三者ストレージシステムに記憶されている暗号化されたデータを復号しており、データ利用セキュリティを改善している。
第三者復号システムは中央集権型システムであり得るまたは分散システムであり得ることに留意されたい。実施形態は本明細書において限定されない。
例えば、第三者復号システムは、コンソーシアムブロックチェーンと相互接続された独立した復号デバイスに基づいて確立された中央集権型システムであり得る、または、いくつかのデバイスを含むデバイスクラスタに基づいた分散システムであり得る。例えば、第三者復号システムはまた、第三者ストレージシステムに記憶されている暗号化されたデータを復号する責任を負っているコンソーシアムブロックチェーン内のメンバブロックチェーンであり得る。
例示した実施形態においては、暗号化されたターゲットデータに加えて、第三者ストレージシステムによって返信されたクエリ結果は、ターゲットデータを暗号化するために使用される鍵に関連する鍵メタデータを含み得る。鍵メタデータは、データを暗号化するために使用される鍵に関連する記述情報である。
第三者復号システムは、事前に、鍵と鍵メタデータとの間のマッピング関係を維持管理し得る。スマートコントラクトが暗号化されたターゲットデータの復号を開始する場合には、暗号化されたターゲットデータおよび鍵メタデータは、第三者復号システムにさらに送信され得る。
暗号化されたターゲットデータおよび鍵メタデータを受信すると、第三者復号システムは、まず、マッピング関係についてクエリを行って鍵メタデータに対応する鍵を取得し、その後、取得した鍵および暗号化アルゴリズムに対応する復号アルゴリズムに基づいて暗号化されたターゲットデータを復号して、ターゲットデータの平文コンテンツを取得し得る。
暗号化されたターゲットデータに対する復号動作を完了すると、第三者復号システムは、復号により取得したターゲットデータの平文コンテンツをスマートコントラクトに返信し得る。
当然のことながら、実際の適用においては、第三者ストレージシステムに記憶されている暗号化されたデータを復号するプロセスもスマートコントラクトによって独立して完遂され得る。例えば、関連する復号プログラムもスマートコントラクトにおいて宣言され得るし、スマートコントラクトは宣言された復号プログラムを直接起動して第三者ストレージシステムから特定された暗号化されたターゲットデータを復号し得る。実施形態は本明細書において限定されない。
本明細書では、スマートコントラクトが、受信したトランザクションに含まれるデータダイジェストに対応する暗号化されたターゲットデータをターゲットメンバブロックチェーンと相互接続された第三者ストレージシステムから特定し、以前説明した復号プロセスによって復号により取得したターゲットデータの平文コンテンツを取得した後に、スマートコントラクトの起動が、スマートコントラクトにおいて宣言されたスマートコントラクトプログラムを実行するために開始され、トランザクションに含まれる起動データ全体に対してスマートコントラクト計算を行い得る。まず、スマートコントラクトは、特定したターゲットデータがトランザクションに含まれるデータダイジェストに対応するデータコンテンツと一致していることを保証するために、特定したターゲットデータに対して内容検証を行い得る。
実施に際しては、スマートコントラクトは、特定したターゲットデータのデータダイジェストを再計算し、再計算したデータダイジェストと受信したトランザクションに含まれるデータダイジェストとをマッチングして、再計算したデータダイジェストが受信したトランザクションに含まれるデータダイジェストと一致しているかどうかを決定し得る。
一致している場合には、特定したターゲットデータに対する内容検証は成功しており、トランザクションは有効なトランザクションである。スマートコントラクトは、トランザクションに含まれる起動データ全体を取得し、スマートコントラクトにおいて宣言されたスマートコントラクトプログラムの入力パラメータとして起動パラメータのすべてを使用し、スマートコントラクト計算のためのスマートコントラクトプログラムにパラメータを入力し得る。
一致していない場合には、特定したターゲットデータに対する内容検証は失敗している。そのようなケースでは、第三者ストレージシステムに記憶されている元の被参照ターゲットデータが、システムの信頼性の欠如に起因して、変更または更新されている可能性がある。その結果、トランザクションは無効なトランザクションであり、スマートコントラクトを起動するプロセスは直ちに終了され得る。
スマートコントラクトが特定したターゲットデータのデータダイジェストを再計算する場合には、ノードデバイスと第三者ストレージシステムとが同一のターゲットデータに対してデータダイジェスト計算を行う際に同一の計算結果を得ることができることを保証するために、ターゲットデータのデータ構造、ターゲットデータのための符号化方法、および使用されるダイジェストアルゴリズムのすべてが第三者ストレージシステムのものと一致している必要があることに留意されたい。
本明細書では、トランザクションに含まれる起動データ全体が、入力パラメータとして使用され、スマートコントラクト計算を完遂するためにスマートコントラクトにおいて宣言されたスマートコントラクトプログラムに入力されると、トランザクションの実行が完了し、スマートコントラクト計算の計算結果(すなわち、トランザクションの実行結果)がターゲットメンバブロックチェーンの分散型データベースにさらに記憶され得る。
ブロックチェーンの分散型データベースに記録されている情報は、通常、トランザクションログおよびトランザクション状態を含む。
トランザクションログは、トランザクションのログを記憶するために使用され、発生の順序で順番に接続された複数のブロック(単一のブロック)を含み、分散型データベース内のトランザクションレコードである。トランザクションに対するコンセンサスに達した後に、トランザクションは、トランザクションログの対応するブロックに記録および記憶され得る。
トランザクション状態は、分散型データベースに記録されているトランザクションの実行によって生じた状態変化を記憶するために使用される。例えば、ブロックチェーンは、通常、多くのスモールオブジェクト(アカウントオブジェクト、コントラクトオブジェクト、およびアセットオブジェクトなど)を含む。トランザクションがブロックチェーンの分散型データベースに記録されるたびに、トランザクションに関連している状態は、トランザクションの実行が完了した後に同期して更新される。ブロックチェーンにおいて送信されるオンライン移転トランザクションを一例として使用する。関連するスマートコントラクトを起動することによってトランザクションが実行されると、経常移転に関連しているアカウントオブジェクトの残高が同期して更新される。
そのようなケースでは、トランザクションに含まれる起動データ全体に対するスマートコントラクト計算を完了した後に、スマートコントラクトは、トランザクションによって生じた関連するオブジェクトの状態変化を更新するために、トランザクション状態にスマートコントラクト計算の計算結果をさらに記憶し得る。ブロックチェーンにおいて送信されるオンライン移転トランザクションを一例としてさらに使用する。トランザクションに含まれる起動データ全体に対するスマートコントラクト計算を完了した後に、スマートコントラクトは、トランザクション状態における経常移転に関連しているアカウントオブジェクトの残高を更新し得る。
上記の実施形態においては、スマートコントラクトの起動を開始するために使用されるトランザクションは、データダイジェストに基づいてブロックチェーン内のトランザクションを受信するノードデバイスが、第三者ストレージシステムからの対応するターゲットデータについてクエリを行い、特定した暗号化されたターゲットデータを復号し、復号されたターゲットデータに対して内容検証を行い、ターゲットデータに対する検証が成功していると、スマートコントラクトを起動してトランザクション中の起動データに対してスマートコントラクト計算を行い、スマートコントラクト計算が完了した後にブロックチェーンの分散型データベースに計算結果を記憶することができるように、第三者ストレージシステムに記憶されているターゲットデータのデータダイジェストを含む。
ブロックチェーンと相互接続された第三者ストレージシステムに記憶されているターゲットデータは、スマートコントラクトの起動を開始するために使用されるトランザクション中の起動データとして参照され、第三者ストレージシステムに記憶されているターゲットデータの元のコンテンツをブロックチェーン内の各ノードデバイスと同期することによって引き起こされるブロックチェーンデータストレージ冗長性を軽減し得る。
例えば、ターゲットブロックチェーンと相互接続された第三者ストレージシステムは、ブロックチェーンとのクロスチェーンデータ参照関係を有する別のブロックチェーンである。別のブロックチェーンが5個のノードデバイスを含み、ターゲットブロックチェーンが50個のノードデバイスを含むと仮定する。別のブロックチェーンに記憶されている被参照データコンテンツがターゲットブロックチェーンとさらに同期される場合には、被参照データコンテンツをターゲットブロックチェーン内の50個のノードと別々に同期する必要があり、ターゲットブロックチェーン内に大量の被参照データコンテンツの冗長性を結果として生じることになる。しかしながら、ターゲットブロックチェーンが被参照データコンテンツのデータダイジェストのみを記憶している場合には、別のブロックチェーンが被参照データコンテンツを50個のノードデバイスと別々に同期する必要はない。そのため、ターゲットブロックチェーン内のデータストレージ冗長性を大幅に低減することができる。
加えて、データダイジェストに対応するとともに第三者ストレージシステムから特定されるターゲットデータは暗号化されたデータであるため、データ利用セキュリティレベルを改善することができ、平文データをそのまま使用することによって引き起こされるデータ漏洩を軽減している。
方法の実施形態に対応して、本明細書は、ブロックチェーンベーススマートコントラクト起動装置の実施形態をさらに提供している。本明細書では、ブロックチェーンベーススマートコントラクト起動装置の実施形態は、電子デバイスに適用され得る。装置の実施形態は、ソフトウェア、ハードウェア、またはハードウェアとソフトウェアとの組合せによって実施され得る。ソフトウェア実施形態を例として使用する。ロジック装置として、装置は、装置が位置している電子デバイスのプロセッサによって、電子デバイスの不揮発性メモリからメモリに対応するコンピュータプログラム命令を読み込むことによって形成される。ハードウェアに関しては、図3に示しているように、図3は、本明細書による、ブロックチェーンベーススマートコントラクト起動装置が位置している電子デバイスのハードウェア構造を図示している図である。図3に示したプロセッサ、メモリ、ネットワークインターフェース、および不揮発性メモリに加えて、本実施形態において装置が位置している電子デバイスは、通常、電子デバイスの実際の機能に基づいた他のハードウェア含み得る。簡潔にするために詳細は省略する。
図4は、本明細書の例示的な実施形態による、ブロックチェーンベーススマートコントラクト起動装置を図示しているブロック図である。
図4を参照すれば、ブロックチェーンベーススマートコントラクト起動装置40は、図3に示した電子デバイスに適用され得るし、受信モジュール401、クエリモジュール402、復号モジュール403、および起動モジュール404を含む。
受信モジュール401は、スマートコントラクトの起動を開始するために使用されるターゲットトランザクションを受信することであって、ターゲットトランザクションは、起動データを含み、起動データの少なくとも一部は、ブロックチェーンと相互接続された第三者ストレージシステムに記憶されているターゲットデータのデータダイジェストを含む、ことをするように構成される。
クエリモジュール402は、第三者ストレージシステムからのデータダイジェストに対応するターゲットデータについてクエリを行い、第三者ストレージシステムによって返信されたクエリ結果を受信することであって、クエリ結果は、暗号化されたターゲットデータを含む、ことをするように構成される。
復号モジュール403は、暗号化されたターゲットデータを復号するために使用される鍵を取得するとともに鍵に基づいて暗号化されたターゲットデータを復号し、復号されたターゲットデータに対して内容検証を行うように構成される。
起動モジュール404は、ターゲットデータに対する検証が成功している場合には、スマートコントラクトを起動してターゲットトランザクション中の起動データに対してスマートコントラクト計算を行い、スマートコントラクト計算が完了した後にブロックチェーンの分散型データベースに計算結果を記憶するように構成される。
本明細書では、第三者ストレージシステムは、ターゲットデータとターゲットデータのデータダイジェストとの間のマッピング関係を記憶する。
クエリモジュール402は、データダイジェストに対応するターゲットデータについてクエリを行うために、クエリインデックスとしてデータダイジェストを使用して第三者ストレージシステムに対するクエリを開始するように構成される。
本実施形態においては、クエリ結果は、鍵に対応する鍵メタデータをさらに含む。
復号モジュール403は、暗号化されたターゲットデータおよび鍵メタデータをブロックチェーンと相互接続された第三者復号システムに送信することであって、第三者復号システムは、第三者復号システムが、マッピング関係についてクエリを行って鍵メタデータに対応する鍵を取得するために、鍵と鍵メタデータとの間のマッピング関係を維持管理し、取得した鍵に基づいて暗号化されたターゲットデータを復号する、ことと、第三者復号システムによって返信された、復号されたターゲットデータを受信することとをするように構成される。
本実施形態においては、クエリモジュールは、所定のダイジェストアルゴリズムに基づいてターゲットデータのデータダイジェストを計算することと、計算したデータダイジェストがターゲットトランザクション中のターゲットデータのデータダイジェストと一致しているかどうかを決定することと、計算したデータダイジェストがターゲットトランザクション中のターゲットデータのデータダイジェストと一致している場合には、ターゲットデータに対する検証が成功していると決定することとをするように構成される。
本実施形態においては、第三者ストレージシステムは、中央集権型の内容アドレス記憶装置CASシステムまたは分散型のCASシステムを含む。
本実施形態においては、ブロックチェーンは、いくつかのメンバブロックチェーンを含むコンソーシアムブロックチェーン内の任意のメンバブロックチェーンである。
本実施形態においては、第三者ストレージシステムは、コンソーシアムブロックチェーン内のブロックチェーンとのクロスチェーンデータ参照関係を有する別のメンバブロックチェーンである。
装置内のモジュールの機能および役割の実施プロセスについては、上記の方法における対応するステップの実施プロセスを参照されたい。簡潔にするために詳細はここでは省略する。
装置の実施形態が方法の実施形態に基本的に対応するため、関連する部分については、方法の実施形態におけるいくつかの説明を参照されたい。上記で説明した装置の実施形態は一例に過ぎない。別個の部分として説明したモジュールは、物理的に別個のものであってもなくてもよいし、モジュールとして表示した部分は、物理モジュールであってもなくてもよいし、1つのロケーションに配置されてもよいし、または複数のネットワークモジュールに分散されてもよい。本明細書のソリューションの目的を実現するために実際の要件に基づいてモジュールの一部またはすべてを選択することができる。当業者は、創造的努力無しで本明細書の実施形態を理解および実施できよう。
上記の実施形態において説明したシステム、装置、またはモジュールは、コンピュータチップまたはエンティティを使用して実装され得る、または、ある機能を有する製品を使用して実装され得る。典型的な実施デバイスは、コンピュータであり、コンピュータの形式は、パーソナルコンピュータ、ラップトップコンピュータ、セルラ電話、カメラ電話、スマートフォン、携帯情報端末、メディアプレーヤ、ナビゲーションデバイス、電子メール送受信デバイス、ゲームコンソール、タブレットコンピュータ、ウェアラブルデバイス、またはこれらのデバイスの任意の組合せであり得る。
上記の方法の実施形態に対応して、本明細書は、電子デバイスの実施形態をさらに提供している。電子デバイスは、プロセッサと、マシン実行可能命令を記憶するように構成されるメモリとを含む。プロセッサとメモリとは、通常、内部バスを使用して互いに接続されている。別の可能な実施形態においては、デバイスは、他のデバイスまたはコンポーネントとデバイスが通信することができるように、外部インターフェースをさらに含み得る。
本実施形態においては、メモリに記憶されるとともにブロックチェーンベーススマートコントラクト起動の制御ロジックに対応するマシン実行可能命令を読み込み実行することによって、プロセッサは、スマートコントラクトの起動を開始するために使用されるターゲットトランザクションを受信することであって、ターゲットトランザクションは、起動データを含み、起動データの少なくとも一部は、ブロックチェーンと相互接続された第三者ストレージシステムに記憶されているターゲットデータのデータダイジェストを含む、ことと、第三者ストレージシステムからのデータダイジェストに対応するターゲットデータについてクエリを行い、第三者ストレージシステムによって返信されたクエリ結果を受信することであって、クエリ結果は、暗号化されたターゲットデータを含む、ことと、暗号化されたターゲットデータを復号するために使用される鍵を取得し、鍵に基づいて暗号化されたターゲットデータを復号し、復号されたターゲットデータに対して内容検証を行うことと、ターゲットデータに対する検証が成功している場合には、スマートコントラクトを起動してターゲットトランザクション中の起動データに対してスマートコントラクト計算を行い、スマートコントラクト計算が完了した後にブロックチェーンの分散型データベースに計算結果を記憶することとをするように構成される。
本実施形態においては、第三者ストレージシステムは、ターゲットデータとターゲットデータのデータダイジェストとの間のマッピング関係を記憶する。
メモリに記憶されるとともにブロックチェーンベーススマートコントラクト起動の制御ロジックに対応するマシン実行可能命令を読み込み実行することによって、プロセッサは、データダイジェストに対応するターゲットデータについてクエリを行うために、クエリインデックスとしてデータダイジェストを使用して第三者ストレージシステムに対するクエリを開始するように構成される。
本実施形態においては、クエリ結果は、鍵に対応する鍵メタデータをさらに含む。
メモリに記憶されるとともにブロックチェーンベーススマートコントラクト起動の制御ロジックに対応するマシン実行可能命令を読み込み実行することによって、プロセッサは、暗号化されたターゲットデータおよび鍵メタデータをブロックチェーンと相互接続された第三者復号システムに送信することであって、第三者復号システムは、第三者復号システムが、マッピング関係についてクエリを行って鍵メタデータに対応する鍵を取得するために、鍵と鍵メタデータとの間のマッピング関係を維持管理し、取得した鍵に基づいて暗号化されたターゲットデータを復号する、ことと、第三者復号システムによって返信された、復号されたターゲットデータを受信することとをするように構成される。
本実施形態においては、メモリに記憶されるとともにブロックチェーンベーススマートコントラクト起動の制御ロジックに対応するマシン実行可能命令を読み込み実行することによって、プロセッサは、所定のダイジェストアルゴリズムに基づいてターゲットデータのデータダイジェストを計算することと、計算したデータダイジェストがターゲットトランザクション中のターゲットデータのデータダイジェストと一致しているかどうかを決定することと、計算したデータダイジェストがターゲットトランザクション中のターゲットデータのデータダイジェストと一致している場合には、ターゲットデータに対する検証が成功していると決定することとをするように構成される。
当業者は、本明細書を検討しここで本開示を実施した後であれば、本明細書の別の実施形態を容易に把握し得よう。本明細書は、本明細書の任意の変形、使用、または適合をカバーすることを意図しており、これらの変形、使用、または適合は、本明細書の一般的な原理に従っており、本明細書の技術分野において開示していない一般常識または従来の技法を含む。本明細書および実施形態は例としてみなされるものに過ぎず、本明細書の実際の範囲および精神は以下の特許請求の範囲によって示されている。
本明細書は上記で説明し添付の図面に示したものと寸分違わぬ構造に限定されず、本開示の範囲から逸脱しない限り様々な修正および変化をなし得ることを理解されたい。本明細書の範囲は、添付の特許請求の範囲のみによって限定される。
上記の説明は、本明細書の望ましい実施形態に過ぎず、本明細書を限定することは意図していない。本明細書の精神および原理から逸脱することなくなされた任意の修正、均等物との置換、または改良は、本明細書の保護範囲に含まれるものとする。
本明細書において説明した実施形態および動作は、本明細書において開示した構造またはそれらのうちの1つまたは複数の組合せを含む、デジタル電子回路の形式で、またはコンピュータソフトウェア、ファームウェア、もしくはハードウェアの形式で実装され得る。動作は、1つまたは複数のコンピュータ可読記憶デバイス上に記憶されるまたは他のソースから受信されるデータに対してデータ処理装置によって行われる動作として実装され得る。データ処理装置、コンピュータ、またはコンピューティングデバイスは、例として、プログラマブルプロセッサ、コンピュータ、システム・オン・チップ、または前述したもののうちの複数もしくは組合せを含む、処理データのための装置、デバイス、マシンを含み得る。装置は、例えば、中央処理ユニット(CPU)、フィールドプログラマブルゲートアレイ(FPGA)、または特定用途向け集積回路(ASIC)といった、特殊用途ロジック回路を含み得る。装置はまた、例えば、プロセッサファームウェア、プロトコルスタック、データベース管理システム、オペレーティングシステム(例えばオペレーティングシステムもしくはオペレーティングシステムの組合せ)、クロスプラットフォームランタイム環境、仮想マシン、またはそれらのうちの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 復号モジュール
404 起動モジュール

Claims (20)

  1. スマートコントラクトを起動するためのコンピュータ実施方法であって、
    スマートコントラクトの起動を開始するために使用されるターゲットトランザクションを受信するステップであって、前記ターゲットトランザクションは、起動データを含み、前記起動データは、ブロックチェーンと相互接続された第三者ストレージシステムに記憶されているターゲットデータに関連付けられたデータダイジェストを含む、ステップと、
    前記第三者ストレージシステムからの前記データダイジェストに関連付けられた前記ターゲットデータについてクエリを行うステップと、
    前記第三者ストレージシステムによって返信されたクエリ結果を受信するステップであって、前記クエリ結果は、暗号化されたターゲットデータを含む、ステップと、
    前記暗号化されたターゲットデータを復号するために鍵を取得して復号されたターゲットデータを生成するステップと、
    前記復号されたターゲットデータに対して内容検証を行うステップと、
    前記復号されたターゲットデータに対する前記内容検証が成功していることを決定するステップと、
    前記復号されたターゲットデータに対する前記内容検証が成功していると決定したことに応答して、前記スマートコントラクトを起動して前記ターゲットトランザクションに含まれる前記起動データに対してスマートコントラクト計算を行うステップと、
    前記スマートコントラクト計算が完了した後に前記ブロックチェーンに関連付けられた分散型データベースに前記スマートコントラクト計算からの計算結果を記憶するステップと
    を含む、コンピュータ実施方法。
  2. 前記ブロックチェーンは、コンソーシアムブロックチェーン内の第1のブロックチェーンであり、前記第三者ストレージシステムは、前記ブロックチェーンにデータストレージサービスを提供する内容アドレス記憶装置(CAS)プラットフォームを含む、請求項1に記載のコンピュータ実施方法。
  3. 前記第三者ストレージシステムは、前記第1のブロックチェーンとのクロスチェーンデータ参照関係を有する前記コンソーシアムブロックチェーン内の第2のブロックチェーンである、請求項2に記載のコンピュータ実施方法。
  4. 前記第三者ストレージシステムからの前記データダイジェストに関連付けられた前記ターゲットデータについてクエリを行うステップは、
    前記ターゲットデータのためのクエリインデックスとして前記データダイジェストを使用して前記第三者ストレージシステムに対するクエリを開始するステップを含む、請求項1に記載のコンピュータ実施方法。
  5. 前記クエリ結果は、前記鍵に対応する鍵メタデータを含む、請求項1に記載のコンピュータ実施方法。
  6. 前記暗号化されたターゲットデータを復号するために前記鍵を取得するステップは、
    前記暗号化されたターゲットデータおよび前記鍵メタデータを前記ブロックチェーンと相互接続された第三者復号システムに送信するステップであって、前記第三者復号システムは、前記鍵と前記鍵メタデータとの間のマッピング関係を維持管理し、前記第三者復号システムは、前記鍵に基づいて前記暗号化されたターゲットデータを復号する、ステップと、
    前記第三者復号システムによって返信された前記復号されたターゲットデータを受信するステップと
    を含む、請求項5に記載のコンピュータ実施方法。
  7. 前記復号されたターゲットデータに対して前記内容検証を行うステップは、
    所定のダイジェストアルゴリズムに基づいて前記ターゲットデータに関連付けられた追加のデータダイジェストを計算するステップと、
    前記追加のデータダイジェストが前記ターゲットトランザクション中の前記ターゲットデータに関連付けられた前記データダイジェストと一致していることを決定するステップと、
    前記追加のデータダイジェストが前記ターゲットトランザクション中の前記ターゲットデータに関連付けられた前記データダイジェストと一致していると決定したことに応答して、前記ターゲットデータに対する前記内容検証が成功していると決定するステップと
    を含む、請求項1に記載のコンピュータ実施方法。
  8. スマートコントラクトの起動を開始するために使用されるターゲットトランザクションを受信するステップであって、前記ターゲットトランザクションは、起動データを含み、前記起動データは、ブロックチェーンと相互接続された第三者ストレージシステムに記憶されているターゲットデータに関連付けられたデータダイジェストを含む、ステップと、
    前記第三者ストレージシステムからの前記データダイジェストに関連付けられた前記ターゲットデータについてクエリを行うステップと、
    前記第三者ストレージシステムによって返信されたクエリ結果を受信するステップであって、前記クエリ結果は、暗号化されたターゲットデータを含む、ステップと、
    前記暗号化されたターゲットデータを復号するために鍵を取得して復号されたターゲットデータを生成するステップと、
    前記復号されたターゲットデータに対して内容検証を行うステップと、
    前記復号されたターゲットデータに対する前記内容検証が成功していることを決定するステップと、
    前記復号されたターゲットデータに対する前記内容検証が成功していると決定したことに応答して、前記スマートコントラクトを起動して前記ターゲットトランザクションに含まれる前記起動データに対してスマートコントラクト計算を行うステップと、
    前記スマートコントラクト計算が完了した後に前記ブロックチェーンに関連付けられた分散型データベースに前記スマートコントラクト計算からの計算結果を記憶するステップと
    を含む、動作を行うようにコンピュータシステムによって実行可能な1つまたは複数の命令を記憶する、非一時的コンピュータ可読媒体。
  9. 前記ブロックチェーンは、コンソーシアムブロックチェーン内の第1のブロックチェーンであり、前記第三者ストレージシステムは、前記ブロックチェーンにデータストレージサービスを提供する内容アドレス記憶装置(CAS)プラットフォームを含む、請求項8に記載の非一時的コンピュータ可読媒体。
  10. 前記第三者ストレージシステムは、前記第1のブロックチェーンとのクロスチェーンデータ参照関係を有する前記コンソーシアムブロックチェーン内の第2のブロックチェーンである、請求項9に記載の非一時的コンピュータ可読媒体。
  11. 前記第三者ストレージシステムからの前記データダイジェストに関連付けられた前記ターゲットデータについてクエリを行うステップは、
    前記ターゲットデータのためのクエリインデックスとして前記データダイジェストを使用して前記第三者ストレージシステムに対するクエリを開始するステップを含む、請求項8に記載の非一時的コンピュータ可読媒体。
  12. 前記クエリ結果は、前記鍵に対応する鍵メタデータを含む、請求項8に記載の非一時的コンピュータ可読媒体。
  13. 前記暗号化されたターゲットデータを復号するために前記鍵を取得するステップは、
    前記暗号化されたターゲットデータおよび前記鍵メタデータを前記ブロックチェーンと相互接続された第三者復号システムに送信するステップであって、前記第三者復号システムは、前記鍵と前記鍵メタデータとの間のマッピング関係を維持管理し、前記第三者復号システムは、前記鍵に基づいて前記暗号化されたターゲットデータを復号する、ステップと、
    前記第三者復号システムによって返信された前記復号されたターゲットデータを受信するステップと
    を含む、請求項12に記載の非一時的コンピュータ可読媒体。
  14. 前記復号されたターゲットデータに対して前記内容検証を行うステップは、
    所定のダイジェストアルゴリズムに基づいて前記ターゲットデータに関連付けられた追加のデータダイジェストを計算するステップと、
    前記追加のデータダイジェストが前記ターゲットトランザクション中の前記ターゲットデータに関連付けられた前記データダイジェストと一致していることを決定するステップと、
    前記追加のデータダイジェストが前記ターゲットトランザクション中の前記ターゲットデータに関連付けられた前記データダイジェストと一致していると決定したことに応答して、前記ターゲットデータに対する前記内容検証が成功していると決定するステップと
    を含む、請求項8に記載の非一時的コンピュータ可読媒体。
  15. コンピュータ実施システムであって、
    1つまたは複数のコンピュータと、
    前記1つまたは複数のコンピュータと相互運用可能なように結合されるとともに、1つまたは複数の命令を記憶している有形非一時的マシン可読媒体を有する、1つまたは複数のコンピュータメモリデバイスとを含み、前記1つまたは複数の命令は、前記1つまたは複数のコンピュータによって実行されると、
    スマートコントラクトの起動を開始するために使用されるターゲットトランザクションを受信するステップであって、前記ターゲットトランザクションは、起動データを含み、前記起動データは、ブロックチェーンと相互接続された第三者ストレージシステムに記憶されているターゲットデータに関連付けられたデータダイジェストを含む、ステップと、
    前記第三者ストレージシステムからの前記データダイジェストに関連付けられた前記ターゲットデータについてクエリを行うステップと、
    前記第三者ストレージシステムによって返信されたクエリ結果を受信するステップであって、前記クエリ結果は、暗号化されたターゲットデータを含む、ステップと、
    前記暗号化されたターゲットデータを復号するために鍵を取得して復号されたターゲットデータを生成するステップと、
    前記復号されたターゲットデータに対して内容検証を行うステップと、
    前記復号されたターゲットデータに対する前記内容検証が成功していることを決定するステップと、
    前記復号されたターゲットデータに対する前記内容検証が成功していると決定したことに応答して、前記スマートコントラクトを起動して前記ターゲットトランザクションに含まれる前記起動データに対してスマートコントラクト計算を行うステップと、
    前記スマートコントラクト計算が完了した後に前記ブロックチェーンに関連付けられた分散型データベースに前記スマートコントラクト計算からの計算結果を記憶するステップと
    を含む、1つまたは複数の動作を行う、コンピュータ実施システム。
  16. 前記ブロックチェーンは、コンソーシアムブロックチェーン内の第1のブロックチェーンであり、前記第三者ストレージシステムは、前記ブロックチェーンにデータストレージサービスを提供する内容アドレス記憶装置(CAS)プラットフォームを含む、請求項15に記載のコンピュータ実施システム。
  17. 前記第三者ストレージシステムは、前記第1のブロックチェーンとのクロスチェーンデータ参照関係を有する前記コンソーシアムブロックチェーン内の第2のブロックチェーンである、請求項16に記載のコンピュータ実施システム。
  18. 前記第三者ストレージシステムからの前記データダイジェストに関連付けられた前記ターゲットデータについてクエリを行うステップは、
    前記ターゲットデータのためのクエリインデックスとして前記データダイジェストを使用して前記第三者ストレージシステムに対するクエリを開始するステップを含む、請求項15に記載のコンピュータ実施システム。
  19. 前記クエリ結果は、前記鍵に対応する鍵メタデータを含む、請求項15に記載のコンピュータ実施システム。
  20. 前記暗号化されたターゲットデータを復号するために前記鍵を取得するステップは、
    前記暗号化されたターゲットデータおよび前記鍵メタデータを前記ブロックチェーンと相互接続された第三者復号システムに送信するステップであって、前記第三者復号システムは、前記鍵と前記鍵メタデータとの間のマッピング関係を維持管理し、前記第三者復号システムは、前記鍵に基づいて前記暗号化されたターゲットデータを復号する、ステップと、
    前記第三者復号システムによって返信された前記復号されたターゲットデータを受信するステップと
    を含む、請求項19に記載のコンピュータ実施システム。
JP2020529461A 2018-06-27 2019-06-27 ブロックチェーンベーススマートコントラクト起動方法および装置、ならびに電子デバイス Active JP6840292B2 (ja)

Applications Claiming Priority (3)

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

Publications (2)

Publication Number Publication Date
JP2021507555A JP2021507555A (ja) 2021-02-22
JP6840292B2 true JP6840292B2 (ja) 2021-03-10

Family

ID=64346733

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020529461A Active JP6840292B2 (ja) 2018-06-27 2019-06-27 ブロックチェーンベーススマートコントラクト起動方法および装置、ならびに電子デバイス

Country Status (11)

Country Link
US (1) US10783190B2 (ja)
EP (1) EP3701700B1 (ja)
JP (1) JP6840292B2 (ja)
KR (1) KR102228965B1 (ja)
CN (2) CN113095822A (ja)
AU (1) AU2019292928B2 (ja)
CA (1) CA3084086C (ja)
PH (1) PH12020550735A1 (ja)
SG (1) SG11202005028VA (ja)
TW (1) TWI715892B (ja)
WO (1) WO2020006172A1 (ja)

Families Citing this family (64)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109003078B (zh) 2018-06-27 2021-08-24 创新先进技术有限公司 基于区块链的智能合约调用方法及装置、电子设备
US10880074B2 (en) * 2018-10-15 2020-12-29 Adobe Inc. Smart contract platform for generating and customizing smart contracts
TWI683590B (zh) * 2018-11-28 2020-01-21 財團法人資訊工業策進會 物聯網裝置之控制方法及控制系統
CN113793151A (zh) * 2018-11-28 2021-12-14 创新先进技术有限公司 基于区块链的数据存证方法及装置、电子设备
CN110046522A (zh) * 2018-11-28 2019-07-23 阿里巴巴集团控股有限公司 基于区块链的业务处理方法及装置、电子设备
CN110060111A (zh) 2018-12-12 2019-07-26 阿里巴巴集团控股有限公司 基于区块链的发票访问方法和装置、电子设备
AU2018347199B2 (en) * 2018-12-13 2021-07-01 Advanced New Technologies Co., Ltd. Off-chain smart contract service based on trusted execution environment
CN111782668B (zh) * 2018-12-20 2024-06-28 创新先进技术有限公司 数据结构的读取及更新方法、装置、电子设备
CN109710694A (zh) * 2018-12-26 2019-05-03 深圳市网心科技有限公司 数据处理方法、设备、存储介质和区块链系统
CN109754249A (zh) * 2018-12-27 2019-05-14 石更箭数据科技(上海)有限公司 数据交易方法及系统、平台、存储介质
CN109697613B (zh) * 2018-12-29 2020-08-25 链博(成都)科技有限公司 用于区块链中网络交易安全认证方法和系统
CN109947848A (zh) * 2019-01-30 2019-06-28 阿里巴巴集团控股有限公司 基于区块链的存证方法和装置
CN111767555B (zh) * 2019-01-31 2024-07-09 创新先进技术有限公司 区块链中实现隐私保护的方法及节点、存储介质
CN109636610B (zh) * 2019-02-01 2022-10-04 安徽中科晶格技术有限公司 一种去中心化的数据交易系统及方法
CN112966311B (zh) * 2019-03-15 2024-09-06 创新先进技术有限公司 智能合约校验方法及装置和电子设备
CN110033244B (zh) * 2019-03-15 2021-10-22 创新先进技术有限公司 基于区块链的智能合约执行方法及装置和电子设备
CN109886694B (zh) * 2019-03-26 2021-04-27 创新先进技术有限公司 基于区块链的数据处理方法及装置和电子设备
CN110060162B (zh) * 2019-03-29 2023-10-27 创新先进技术有限公司 基于区块链的数据授权、查询方法和装置
CN110177079B (zh) * 2019-04-17 2021-10-15 北京百度网讯科技有限公司 智能合约的调用系统及调用方法
CN112015806A (zh) * 2019-05-30 2020-12-01 中国移动通信集团浙江有限公司 区块链存储数据的方法及装置
CN110245506B (zh) * 2019-05-30 2020-09-01 阿里巴巴集团控股有限公司 基于区块链的智能合约管理方法及装置、电子设备
US10839107B2 (en) 2019-05-30 2020-11-17 Advanced New Technologies Co., Ltd. Managing a smart contract on a blockchain
US10937096B2 (en) * 2019-07-15 2021-03-02 Advanced New Technologies Co., Ltd. Transaction processing in a service blockchain
CN110471984B (zh) 2019-07-15 2020-08-25 阿里巴巴集团控股有限公司 基于区块链的业务处理方法及装置、电子设备
CN110659907B (zh) * 2019-09-24 2021-11-12 北京海益同展信息科技有限公司 用于执行智能合约的方法和装置
FR3102024B1 (fr) * 2019-10-15 2021-11-05 My IDN Procédé de gestion d’une base de données de clés publiques, procédé d’authentification de clés publiques, et dispositifs serveur et client mettant en œuvre ces procédés
CN110879687B (zh) * 2019-10-18 2021-03-16 蚂蚁区块链科技(上海)有限公司 一种基于磁盘存储的数据读取方法、装置及设备
CN111127021B (zh) * 2019-12-31 2020-10-30 蚂蚁区块链科技(上海)有限公司 基于区块链的服务请求方法及装置
US12099997B1 (en) 2020-01-31 2024-09-24 Steven Mark Hoffberg Tokenized fungible liabilities
CN111340470B (zh) * 2020-02-24 2023-04-18 中国工商银行股份有限公司 区块链交易处理方法、节点及合约容器
CN111488624A (zh) * 2020-03-18 2020-08-04 天元大数据信用管理有限公司 一种基于区块链的数据管理方法及设备、介质
CN111460525B (zh) * 2020-03-31 2024-06-18 腾讯科技(深圳)有限公司 一种基于区块链的数据处理方法、装置及存储介质
CN111506652B (zh) * 2020-04-15 2021-07-23 支付宝(杭州)信息技术有限公司 基于区块链的交通事故处理方法及装置、电子设备
CN111461723B (zh) * 2020-04-17 2020-12-15 支付宝(杭州)信息技术有限公司 基于区块链的数据处理系统及方法、装置
CN111682934B (zh) * 2020-04-21 2023-08-01 国网天津市电力公司电力科学研究院 一种综合能源计量数据的存储、访问、共享方法及系统
CN111581279B (zh) * 2020-04-23 2024-02-06 傲林科技有限公司 智能合约构建方法、装置及存储介质
CN113762955B (zh) * 2020-06-01 2024-04-02 菜鸟智能物流控股有限公司 一种交易的处理方法、装置、设备和机器可读介质
US11356244B2 (en) * 2020-06-05 2022-06-07 Bank Of America Corporation Graphical user interface using continuous authentication and encryption for selective display of data
CN112131307B (zh) * 2020-07-15 2021-05-25 北京天德科技有限公司 一种新型多区块链与多智能合约交互架构
CN112035895A (zh) * 2020-07-20 2020-12-04 江苏傲为控股有限公司 一种基于交易方式的电子合同取证方法及系统
CN112035863B (zh) * 2020-07-20 2024-05-03 傲为有限公司 一种基于智能合约方式的电子合同取证方法及系统
CN112000993B (zh) * 2020-07-30 2023-12-05 杭州趣链科技有限公司 一种基于区块链的数据存储验证方法、设备和存储介质
CN111916173B (zh) * 2020-08-07 2023-08-25 安徽师范大学 基于ipfs和联盟链的医疗数据安全共享系统及方法
EP3955224A1 (en) * 2020-08-14 2022-02-16 Nagravision S.A. Localized betting system and method
CN113434910B (zh) * 2020-09-23 2024-07-16 支付宝(杭州)信息技术有限公司 一种业务数据上链方法及装置
CN112583585B (zh) * 2020-12-09 2022-06-28 杭州复杂美科技有限公司 交易执行方法、设备和存储介质
CN112487098B (zh) * 2020-12-10 2024-07-09 深圳前海微众银行股份有限公司 一种区块链中跨链的原子变量实现方法及装置、电子设备
CN112486933A (zh) * 2020-12-10 2021-03-12 浙江大学德清先进技术与产业研究院 一种基于联盟链的遥感数据共享交换方法
CN112631642B (zh) * 2020-12-29 2024-06-21 杭州趣链科技有限公司 智能合约的升级方法、装置、区块链节点及存储介质
CN112783983A (zh) * 2021-02-07 2021-05-11 中国人民解放军国防科技大学 基于主副区块图链结构区块链账本设计的自适应共识方法
CN112925850B (zh) * 2021-02-25 2022-07-08 京信数据科技有限公司 一种区块链数据加密上链共享方法及装置
CN113239122A (zh) * 2021-06-08 2021-08-10 北京承启通科技有限公司 基于区块链技术的用户授权凭证上链方法和系统
CN113256293A (zh) * 2021-06-23 2021-08-13 中国银行股份有限公司 接口管控方法及装置
CN113609156B (zh) * 2021-08-02 2023-12-12 北京百度网讯科技有限公司 数据的查询与写入方法、装置、电子设备及可读存储介质
CN114024687B (zh) * 2021-11-11 2022-10-28 上海证章信息科技有限公司 一种通过锁定再发行实现nft可拆分可互换的方法
CN113821474A (zh) * 2021-11-22 2021-12-21 武汉龙津科技有限公司 一种数据处理方法、装置、设备和存储介质
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
CN114528589B (zh) * 2022-01-26 2022-11-08 广东南方新视界传媒科技有限公司 基于区块链的户外媒体生态管理系统与方法
CN116561187A (zh) * 2022-01-30 2023-08-08 腾讯科技(深圳)有限公司 一种基于区块链的数据处理方法、设备以及可读存储介质
CN114677137A (zh) * 2022-03-30 2022-06-28 网易(杭州)网络有限公司 区块链跨链方法、系统及装置、电子设备、存储介质
CN114693450A (zh) * 2022-03-30 2022-07-01 蚂蚁区块链科技(上海)有限公司 基于智能合约的计算、更新、读取方法及装置、电子设备
CN116668199B (zh) * 2023-07-31 2023-10-10 安徽中科晶格技术有限公司 基于拜占庭容忍的区块链作恶检查方法
CN117294482B (zh) * 2023-09-14 2024-08-16 广电运通集团股份有限公司 基于多方安全隐私计算的数据验证方法和装置
CN117235181B (zh) * 2023-09-19 2024-08-02 深圳市天行云供应链有限公司 一种智慧供应链大数据共享方法及共享系统

Family Cites Families (45)

* 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
TWI351864B (en) 2005-03-25 2011-11-01 Via Tech Inc Apparatus and method for employing cyrptographic f
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
EP4167165A1 (en) 2016-02-23 2023-04-19 nChain Licensing AG Blockchain-based exchange with tokenisation
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.
NZ746878A (en) * 2016-04-01 2022-11-25 Jpmorgan Chase Bank Na 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
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
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 陈新 智能区块链互联系统
US11128603B2 (en) 2016-09-30 2021-09-21 Nec Corporation Method and system for providing a transaction forwarding service in blockchain implementations
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
CN106559211B (zh) * 2016-11-22 2019-12-13 中国电子科技集团公司第三十研究所 一种区块链中隐私保护智能合约方法
CN106598549B (zh) * 2016-12-08 2019-02-01 天津米游科技有限公司 一种基于区块链的智能合约系统及实现方法
JP6775086B2 (ja) * 2016-12-16 2020-10-28 株式会社日立製作所 ブロックチェーン監視及び管理
ES2794406T3 (es) 2016-12-21 2020-11-18 Merck Patent Gmbh Marca de seguridad compuesta basada en puf para antifalsificación
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 中国银行股份有限公司 一种调用区块链上的智能合约的方法及系统
CN107862215B (zh) * 2017-09-29 2020-10-16 创新先进技术有限公司 一种数据存储方法、数据查询方法及装置
SG11202002848VA (en) * 2017-10-04 2020-06-29 Algorand 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 暨南大学 基于区块链与代理重加密的可信基因检测及数据共享方法
EP3718069B1 (en) * 2017-11-30 2024-04-17 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 国家计算机网络与信息安全管理中心 基于区块链的应用分发记录方法和系统
CN108389129B (zh) * 2018-02-27 2020-12-04 创新先进技术有限公司 基于区块链的交易执行方法及装置、电子设备
US20190287107A1 (en) * 2018-03-15 2019-09-19 International Business Machines Corporation Resource equity for blockchain
CN109003078B (zh) 2018-06-27 2021-08-24 创新先进技术有限公司 基于区块链的智能合约调用方法及装置、电子设备

Also Published As

Publication number Publication date
TW202001607A (zh) 2020-01-01
SG11202005028VA (en) 2020-06-29
WO2020006172A1 (en) 2020-01-02
JP2021507555A (ja) 2021-02-22
US20200004788A1 (en) 2020-01-02
AU2019292928A1 (en) 2020-06-18
CA3084086C (en) 2021-06-22
PH12020550735A1 (en) 2021-04-19
KR20200092331A (ko) 2020-08-03
CN108898390B (zh) 2021-01-12
EP3701700B1 (en) 2022-09-28
US10783190B2 (en) 2020-09-22
KR102228965B1 (ko) 2021-03-18
CA3084086A1 (en) 2020-01-02
AU2019292928B2 (en) 2021-11-04
CN113095822A (zh) 2021-07-09
EP3701700A1 (en) 2020-09-02
CN108898390A (zh) 2018-11-27
TWI715892B (zh) 2021-01-11

Similar Documents

Publication Publication Date Title
JP6840292B2 (ja) ブロックチェーンベーススマートコントラクト起動方法および装置、ならびに電子デバイス
JP6975332B2 (ja) ブロックチェーンベースのスマートコントラクト呼び出し方法および装置、および電子デバイス
KR102221328B1 (ko) 교차 블록체인 인증 방법, 장치, 및 전자 디바이스
JP6874224B2 (ja) クロスブロックチェーン認証方法および装置
US11023456B2 (en) Executing transactions based on blockchain
JP6936396B2 (ja) ブロックチェーンベースのトランザクション処理方法および装置

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200729

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200729

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20200729

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201211

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20210202

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210216

R150 Certificate of patent or registration of utility model

Ref document number: 6840292

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250