JP2020501402A - 分権的決定を使用するブロックチェーンスマートコントラクトの更新 - Google Patents

分権的決定を使用するブロックチェーンスマートコントラクトの更新 Download PDF

Info

Publication number
JP2020501402A
JP2020501402A JP2019521364A JP2019521364A JP2020501402A JP 2020501402 A JP2020501402 A JP 2020501402A JP 2019521364 A JP2019521364 A JP 2019521364A JP 2019521364 A JP2019521364 A JP 2019521364A JP 2020501402 A JP2020501402 A JP 2020501402A
Authority
JP
Japan
Prior art keywords
contract
smart contract
change
update
voting
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2019521364A
Other languages
English (en)
Other versions
JP6798087B2 (ja
JP2020501402A5 (ja
Inventor
カイライ・シャオ
シュミン・ル
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding Ltd
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 Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Publication of JP2020501402A publication Critical patent/JP2020501402A/ja
Publication of JP2020501402A5 publication Critical patent/JP2020501402A5/ja
Application granted granted Critical
Publication of JP6798087B2 publication Critical patent/JP6798087B2/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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0637Modes of operation, e.g. cipher block chaining [CBC], electronic codebook [ECB] or Galois/counter mode [GCM]
    • 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
    • G06Q10/00Administration; Management
    • 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
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • 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/04Payment circuits
    • G06Q20/06Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
    • G06Q20/065Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash
    • 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/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/36Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes
    • G06Q20/367Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes involving electronic purses or money safes
    • 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/389Keeping log of transactions for guaranteeing non-repudiation of a 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
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • G06Q50/18Legal services; Handling legal documents
    • G06Q50/188Electronic negotiation
    • 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
    • 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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • 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/0891Revocation or update of secret information, e.g. encryption key update or rekeying
    • 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
    • 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
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/46Secure multiparty computation, e.g. millionaire problem
    • H04L2209/463Electronic voting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/56Financial cryptography, e.g. electronic payment or e-cash
    • 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)
  • Business, Economics & Management (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Strategic Management (AREA)
  • Accounting & Taxation (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Tourism & Hospitality (AREA)
  • Human Resources & Organizations (AREA)
  • Finance (AREA)
  • Marketing (AREA)
  • Economics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Quality & Reliability (AREA)
  • Operations Research (AREA)
  • Primary Health Care (AREA)
  • Data Mining & Analysis (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Technology Law (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

本開示の実装形態は、コントラクト更新管理システムによって、スマートコントラクトに対する変更を指示する更新要求を受け取るステップであって、変更はスマートコントラクトに対する提案された更新である、ステップと、コントラクト更新管理システムの内部のスマートコントラクトの更新を実行することにより、変更を組み込むようにスマートコントラクトを更新するための条件が満たされているかどうかを判定するステップであって、スマートコントラクトの更新が条件を定義する、ステップと、コントラクト更新管理システムが、条件が満たされていると判定したとき、コントラクト更新管理システムによってスマートコントラクトを更新して、ブロックチェーンネットワークのブロックチェーンにおける1つまたは複数のブロックに対する変更を記録するステップとを含む。

Description

分権的決定を使用するブロックチェーンスマートコントラクトの更新に関する。
分散台帳システム(DLS)は、コンセンサスネットワークおよび/またはブロックチェーンネットワークとも称され得、参加しているエンティティが安全かつ不変にデータを記憶することを可能にするものである。DLSは、いかなる特定の使用の場合(たとえば暗号通貨)も参照することなく、一般にブロックチェーンネットワークと称される。例示のタイプのブロックチェーンネットワークは、パブリックブロックチェーンネットワーク、プライベートブロックチェーンネットワーク、およびコンソーシアムブロックチェーンネットワークを含むことができる。パブリックブロックチェーンネットワークは、コンセンサスプロセスを使用し、それに参加しているすべてのエンティティに開放される。プライベートブロックチェーンネットワークは、読取りパーミッションおよび書込みパーミッションを中央集権的に制御する特定のエンティティに提供される。コンソーシアムブロックチェーンネットワークは、エンティティの選択グループ(select group)に提供され、このグループはコンセンサスプロセスを制御し、アクセス管理層を含む。
スマートコントラクトはエンティティの間で実行され得、ブロックチェーンネットワークの内部に存在する。いくつかの事例では、スマートコントラクトは(たとえばエンティティ間の環境の変化を反映するために)更新する必要がある。従来のシステムは、スマートコントラクトに対する変化を管理するために集中型の解決策を使用するが、管理するのが困難なプロセスを含むことがあり、別の不利益が生じる可能性がある。たとえば、スマートコントラクトを更新するとき(または改良するとき)、権限を有するエンティティ(たとえば管理者、コントラクト作成者、または公的機関)がスマートコントラクトの更新に関与し、更新に関してエンティティと通信することができる。権限を有するエンティティが更新処理を遂行することができるのは、通信がコンセンサスを得た後である。このプロセスは監視するのが困難であり得、スマートコントラクトのパーティのエンティティは、権限を有するエンティティを信頼しなければならないことがある。
本開示の実装形態は、スマートコントラクトを更新するための、コンピュータ実施方法を含む。より詳細には、本開示の実装形態は、コントラクト更新管理システムの内部のスマートコントラクトの更新(updates smart contract)を実行することによるスマートコントラクトの更新を対象とするものである。
いくつかの実装形態では、アクションには、コントラクト更新管理システムによって、スマートコントラクトに対する変更を指示する更新要求を受け取るステップであって、変更はスマートコントラクトに対する提案された更新である、ステップと、コントラクト更新管理システムの内部のスマートコントラクトの更新を実行することにより、変更を組み込むようにスマートコントラクトを更新するための条件が満たされているかどうかを判定するステップであって、スマートコントラクトの更新が条件を定義する、ステップと、コントラクト更新管理システムが、条件が満たされたと判定したとき、コントラクト更新管理システムによってスマートコントラクトを更新するステップと、ブロックチェーンネットワークのブロックチェーンにおける1つまたは複数のブロックに対する変更を記録するステップとが含まれる。他の実装形態は、対応するシステムと、装置と、方法のアクションを遂行するように構成されてコンピュータの記憶装置上に符号化されたコンピュータプログラムとを含む。
これらおよび他の実施形態は、それぞれが、以下の特徴のうちの1つまたは複数を任意選択で含み得る。更新要求は、ブロックチェーンネットワークの内部のスマートコントラクトに割り当てられた識別子を含み、更新要求は、ブロックチェーンネットワークの内部のスマートコントラクトの更新に割り当てられた識別子を含み、スマートコントラクトは、ディスパッチャによって、スマートコントラクトを発信したコントラクト発信者による要求を受け取ったとき定義されたコントローラコントラクトと、スマートコントラクトのロジックを含むサービスコントラクトと、スマートコントラクトの条項を含むデータコントラクトとを含み、条件が満たされているかどうかを判定するステップは、投票プロセスを遂行するステップであって、ブロックチェーンネットワークにおける1つまたは複数のノードに、変更に関して投票するように要求を送る、ステップと、1つまたは複数のノードから投票を収集するステップと、収集された投票が1つまたは複数のノードによる変更の承認を指示するとき、条件が満たされたと判定するステップとを含む、投票プロセスを遂行するステップを含み、投票プロセスを遂行するステップは、それぞれのノードに関連した重みによって投票に重み付けするステップであって、承認は、収集された投票およびそれらに関連する重みの関数に基づくものである、ステップを含み、投票プロセスを遂行するステップは、拒否権を有するノードから受け取られた否認を適用するステップであって、投票プロセス中に、変更に対する否認が受け取られたとき、投票プロセスが終結し、否認によって変更が拒否される、ステップを含み、投票プロセスを遂行するステップは、投票プロセスが変更の承認または変更の拒否をもたらすことになるときを規定する投票ルールを使用するステップを含み、投票プロセスを遂行するステップは、投票プロセスが生じる投票期間を定義する投票開始時間および投票終了時間を使用するステップを含み、閾値数の投票者が変更を承認したとき、あるいは1つまたは複数の特定の投票者の組合せが変更を承認したとき、投票プロセスを遂行するステップが終結し、条件が満たされる。
本開示は、命令を記憶して1つまたは複数のプロセッサに結合された、1つまたは複数の非一時的コンピュータ可読記憶媒体も提供するものであり、これらの命令が1つまたは複数のプロセッサによって実行されると、本明細書で提供される方法の実装形態による動作が、1つまたは複数のプロセッサによって遂行される。
本開示は、本明細書で提供される方法を実施するためのシステムをさらに提供する。このシステムは、1つまたは複数のプロセッサと、命令を記憶して1つまたは複数のプロセッサに結合されたコンピュータ可読記憶媒体とを含み、これらの命令が1つまたは複数のプロセッサによって実行されると、本明細書で提供される方法の実装形態による動作が、1つまたは複数のプロセッサによって遂行される。
本開示による方法は、本明細書で説明される態様および特徴のいかなる組合せも含み得ることが理解される。すなわち、本開示による方法は、本明細書で具体的に説明される態様および特徴の組合せに限定されることなく、提供される態様および特徴のあらゆる組合せを含むものである。
本開示の1つまたは複数の実装形態の詳細は、添付の図面および以下の説明に記載される。本開示の他の特徴および利点は、説明、図面、および特許請求の範囲から明らかになる。
本開示の実装形態を実行するのに使用され得る例示の環境を描写する図である。 本開示の実装形態による、例示の概念的構造を描写する図である。 本開示の実装形態による、スマートコントラクトを更新するための例示のシステムを描写する図である。 本開示の実装形態によって実行され得る例示のプロセスを描写する図である。
様々な図面における同様の参照符号は同様の要素を示す。
本開示の実装形態は、スマートコントラクトを更新するための、コンピュータ実施方法を含む。より詳細には、本開示の実装形態は、コントラクト更新管理システムの内部のスマートコントラクトの更新を実行して、ブロックチェーンネットワークの内部のスマートコントラクトに対する更新を管理することを対象とするものである。いくつかの実装形態では、アクションには、コントラクト更新管理システムによって、スマートコントラクトに対する変更を指示する更新要求を受け取るステップであって、変更はスマートコントラクトに対する提案された更新である、ステップと、コントラクト更新管理システムの内部のスマートコントラクトの更新を実行することにより、変更を組み込むようにスマートコントラクトを更新するための条件が満たされているかどうかを判定するステップであって、スマートコントラクトの更新が条件を定義する、ステップと、コントラクト更新管理システムが、条件が満たされたと判定したとき、コントラクト更新管理システムによってスマートコントラクトを更新するステップと、ブロックチェーンネットワークのブロックチェーンにおける1つまたは複数のブロックに対する変更を記録するステップとが含まれる。
本開示の実装形態のさらなるコンテキストを提供するために、上記で導入されたように、コンセンサスネットワーク(たとえばピアツーピアノードから構成されている)およびブロックチェーンネットワークとも称され得る分散台帳システム(DLS)により、参加しているエンティティは、安全かつ不変に、トランザクションを行ったりデータを記憶したりすることが可能になる。ブロックチェーンという用語は、一般にビットコインの暗号通貨ネットワークに関連したものであるが、本明細書では、一般に、いかなる特定の使用の場合も参照することなくDLSを参照するのに使用される。上記で導入されたように、ブロックチェーンネットワークは、パブリックブロックチェーンネットワーク、プライベートブロックチェーンネットワーク、またはコンソーシアムブロックチェーンネットワークとしてもたらされ得る。
パブリックブロックチェーンネットワークでは、コンセンサスプロセスはコンセンサスネットワークのノードによって制御される。たとえば、パブリックブロックチェーンネットワークにおいて、数百、数千、数百万ものエンティティが協働することができ、その各々が、パブリックブロックチェーンネットワークにおける少なくとも1つのノードを操作する。それゆえに、パブリックブロックチェーンネットワークは、参加しているエンティティに対するパブリックネットワークと見なされ得る。いくつかの例では、ブロックが有効になってブロックチェーンネットワークのブロックチェーン(分散台帳)に追加されるように、大多数のエンティティ(ノード)がすべてのブロックに署名する必要がある。例示のパブリックブロックチェーンネットワークは、ピアツーピア決済ネットワークであるビットコインネットワークを含む。ビットコインネットワークはブロックチェーンと称され、分散台帳を導入する。しかしながら、前述のように、ブロックチェーンという用語は、一般に、ビットコインネットワークへの特定の参照なしで分散台帳を参照するために使用される。
一般に、パブリックブロックチェーンネットワークはパブリックトランザクションをサポートする。パブリックトランザクションは、パブリックブロックチェーンネットワークの内部のノードのすべてと共有され、全体的なブロックチェーンに記憶される。全体的なブロックチェーンは、すべてのノードにわたって複製されるブロックチェーンである。すなわち、すべてのノードは、全体的なブロックチェーンに関して完全な状態のコンセンサスにある。コンセンサス(たとえばブロックチェーンにブロックを追加することの合意)を達成するために、コンセンサスプロトコルはパブリックブロックチェーンネットワークの内部で実施される。例示のコンセンサスプロトコルは、ビットコインネットワークにおいて実施されるプルーフオブワーク(POW)を制限なく含む。
一般に、プライベートブロックチェーンネットワークは、読取りパーミッションおよび書込みパーミッションを中央集権的に制御する特定のエンティティに提供される。このエンティティは、どのノードにブロックチェーンネットワークへの参加を許容するかを制御する。結果的に、プライベートブロックチェーンネットワークは、認可されたネットワークと一般に称され、ネットワークへの参加が許可される人と、その参加のレベル(たとえば特定のトランザクションにのみ参加できるレベル)とを制限する。様々なタイプのアクセス制御機構が使用され得る(たとえば、既存の参加者は新規のエンティティの追加について投票し、監督機関は承認を制御することができる)。
一般に、コンソーシアムブロックチェーンネットワークは、参加しているエンティティの間で非公開である。コンソーシアムブロックチェーンネットワークでは、コンセンサスプロセスは、ノードの、権限を有する組によって制御され、1つまたは複数のノードがそれぞれのエンティティ(たとえば企業)によって操作される。たとえば、10のエンティティ(たとえば企業)のコンソーシアムがコンソーシアムブロックチェーンネットワークを操作することができ、その各々がコンソーシアムブロックチェーンネットワークにおける少なくとも1つのノードを操作する。それゆえに、コンソーシアムブロックチェーンネットワークは、参加しているエンティティに対するプライベートネットワークと見なされ得る。いくつかの例では、それぞれのエンティティ(ノード)は、ブロックが有効になってブロックチェーンに追加されるように、すべてのブロックに署名する必要がある。いくつかの例では、ブロックが有効になってブロックチェーンに追加されるように、少なくともエンティティ(ノード)のサブセット(たとえば少なくとも7つのエンティティ)が、すべてのブロックに署名する必要がある。
本開示の実装形態が、参加しているエンティティ(たとえばコンソーシアムのメンバー)の間で公開のコンソーシアムブロックチェーンネットワークを参照しながら、より詳細に本明細書で説明される。しかしながら、本開示の実装形態は、任意の適切なタイプのブロックチェーンネットワークにおいて実現され得ることが企図されている。本開示において説明された技術は、コンソーシアムブロックチェーンネットワークに関連するものと指示されているが、パブリックブロックチェーンネットワークおよびプライベートブロックチェーンネットワークを含む他のタイプのブロックチェーンネットワークにおいても、変更あり/変更なしで使用され得る。
上記の状況を考慮して、本開示の実装形態が、より詳細に本明細書で説明される。より詳細には、上記で導入されたように、本開示の実装形態は、スマートコントラクトに対する更新を管理するためにブロックチェーンネットワークのコントラクト更新管理システムの内部のスマートコントラクトの更新を実行することを対象とするものである。
スマートコントラクトは、様々なパーティに影響を及ぼす契約条項を有する現実の適法契約のデジタル表現と説明され得る。スマートコントラクトは、例示のコンテキストにおいて、コンソーシアムブロックチェーンネットワークの内部で実施され、記憶され、(必要に応じて)更新され、実行される。スマートコントラクトに関連したコントラクトパーティ(たとえば購買者および販売者)は、コンソーシアムブロックチェーンネットワークにおけるノードとして表現される。いくつかの例では、コントラクトパーティは、スマートコントラクトに関連したエンティティ(たとえば企業)を(たとえばスマートコントラクトのパーティとして)含むことができる。
いくつかの例では、スマートコントラクトは、情報、事実、提携、残高、およびコントラクトを実行するためのロジックを実施するのに必要な何らかの他の情報を記録するのに使用され得る、データを記憶することができる。スマートコントラクトは、スマートコントラクトのインスタンスが生成され得る関数から成るコンピュータ実行可能プログラムとして記述され得、関数は、その中のロジックを実行するために呼び出される。いくつかの例では、スマートコントラクトは様々な構成要素を含むことができ、そのうちの1つまたは複数がコントラクトとしても記述され得る。いくつかの例では、スマートコントラクトの構成要素のうちの1つまたは複数が、全体的なスマートコントラクトに対する更新の一部分として更新され得る。
いくつかの実装形態では、スマートコントラクトの例示の構成要素は、コントローラコントラクト、サービスコントラクト、およびデータコントラクトを制限なく含むことができる。コントローラコントラクトは、ディスパッチャによって、スマートコントラクトを発信したコントラクト発信者による要求を受け取ったとき定義され得る。スマートコントラクトの発信は、コンソーシアムブロックチェーンネットワークのノード(たとえばスマートコントラクトのパーティになるエンティティ)にスマートコントラクトを供給するステップを含むことができる。スマートコントラクトの発信は、スマートコントラクトが生成された時間、およびスマートコントラクトの発信者の識別も識別することができる。いくつかの例では、サービスコントラクトは、スマートコントラクトのロジックを含む。このロジックは、イベントの順序と、スマートコントラクトに関連したエンティティに対する関係の定義とを含めて、コントラクトを実行するやり方を定義し得るものである。データコントラクトが含むスマートコントラクトの条項は、スマートコントラクトによって対象として含まれる製品および/またはサービスと、製品および/またはサービスの提供に対するスマートコントラクト向けの支払い情報とを制限なく含む。データコントラクトに記憶されるデータは、情報、事実、ならびに、残高、支払い、領収書、配送、最終期限、およびスマートコントラクトのロジックを実施するのに必要な何らかの他の情報を制限なく含んでいる関係を記録するのに使用され得る。
専門用語では、スマートコントラクトは、オブジェクトおよびオブジェクト指向のクラスに基づいて実施され得る。たとえば、スマートコントラクトの事項および構成要素は、スマートコントラクトを実施するアプリケーションによって扱われるオブジェクトとして表現され得る。スマートコントラクト(またはスマートコントラクトにおけるオブジェクト)は、他のオブジェクト指向のオブジェクトと同様の別のスマートコントラクト(または同一のスマートコントラクトにおけるオブジェクト)をコールすることができる。オブジェクトによって行われるコールは、たとえば別のクラスのオブジェクトを生成する、更新する、削除する、伝搬させる、または同オブジェクトと通信するためのコールであり得る。オブジェクト間のコールは、関数、方法、アプリケーションプログラミングインターフェース(API)、または他のコール機構として実施され得る。たとえば、第1のオブジェクトは、第2のオブジェクトを生成する関数をコールすることができる。
図1は、本開示の実装形態を実行するのに使用され得る例示の環境100を描写するものである。いくつかの例では、エンティティは、例示の環境100によってコンソーシアムブロックチェーンネットワーク102に参加することができる。例示の環境100は、コンピュータシステム106、108、およびネットワーク110を含む。いくつかの例では、ネットワーク110は、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、インターネット、またはその組合せを含み、ウェブサイト、ユーザデバイス(たとえばコンピュータデバイス)、およびバックエンドシステムを接続する。いくつかの例では、ネットワーク110は、有線および/または無線の通信リンクを通じてアクセスされ得る。
描写された例では、コンピュータシステム106、108のそれぞれが、コンソーシアムブロックチェーンネットワーク102におけるノードとして参加することを可能にする任意の適切なコンピュータシステムを含むことができる。例示のコンピュータデバイスは、サーバ、デスクトップコンピュータ、ラップトップコンピュータ、タブレットコンピュータデバイス、およびスマートフォンを制限なく含む。いくつかの例では、コンピュータシステム106、108は、コンソーシアムブロックチェーンネットワーク102と相互作用するための、1つまたは複数のコンピュータで実施されるサービスをホスティングする。たとえば、コンピュータシステム106は、第1のエンティティ(たとえばユーザA)が1つまたは複数の他のエンティティ(たとえば他のユーザ)とのそのトランザクションを管理するために使用するトランザクション管理システムなど、第1のエンティティのコンピュータで実施されるサービスをホスティングすることができる。コンピュータシステム108は、第2のエンティティ(たとえばユーザB)が1つまたは複数の他のエンティティ(たとえば他のユーザ)とのそのトランザクションを管理するために使用するトランザクション管理システムなど、第2のエンティティのコンピュータで実施されるサービスをホスティングすることができる。図1の例では、コンソーシアムブロックチェーンネットワーク102はノードのピアツーピアネットワークとして表現されており、コンピュータシステム106、108は、それぞれ第1のエンティティのノードおよび第2のエンティティのノードをもたらし、これらはコンソーシアムブロックチェーンネットワーク102に参加する。
図2は、本開示の実装形態による例示の概念的構造200を描写するものである。例示の概念的構造200は、エンティティ層202、ホスティングされたサービス層204、およびブロックチェーンネットワーク層206を含む。描写された例では、エンティティ層202には、それぞれがトランザクション管理システム208を有する、Entity_1(E1)、Entity_2(E2)、およびEntity_3(E3)といった3つのエンティティが含まれる。
描写された例では、ホスティングされたサービス層204は、それぞれのトランザクション管理システム208用のインターフェース210を含む。いくつかの例では、それぞれのトランザクション管理システム208は、プロトコル(たとえばハイパーテキスト転送プロトコルセキュア(HTTPS))を使用して、ネットワーク(たとえば図1のネットワーク110)を通じて、それぞれのインターフェース210と通信する。いくつかの例では、それぞれのインターフェース210が、それぞれのトランザクション管理システム208とブロックチェーンネットワーク層206の間の通信接続をもたらす。より詳細には、インターフェース210は、ブロックチェーンネットワーク層206のブロックチェーンネットワーク212と通信する。いくつかの例では、インターフェース210とブロックチェーンネットワーク層206の間の通信はリモートプロシージャコール(RPC)を使用して行われる。いくつかの例では、インターフェース210は、それぞれのトランザクション管理システム208用のブロックチェーンネットワークノードを「ホスティングする」。たとえば、インターフェース210は、ブロックチェーンネットワーク212にアクセスするためのアプリケーションプログラムインターフェース(API)をもたらす。
本明細書で説明されたように、ブロックチェーンネットワーク212は、ブロックチェーン216(たとえばコンソーシアムブロックチェーン)における情報を不変に記録する複数のノード214を含むピアツーピアネットワークとしてもたらされる。単一のブロックチェーン216が概略的に描写されているが、ブロックチェーン216の複数のコピーがもたらされ、ブロックチェーンネットワーク212にわたって維持される。たとえば、それぞれのノード214がブロックチェーンのコピーを記憶する。いくつかの実装形態では、ブロックチェーン216は、プライベートブロックチェーンネットワークに参加している2つ以上のエンティティの間で遂行されるトランザクションに関連した情報を記憶する。
図3は、本開示の実装形態による、スマートコントラクトを更新するための例示のシステム300を描写するものである。描写された例では、システム300は、スマートコントラクト304を含むスマートコントラクトに対する更新を管理するコントラクト更新管理システム302を含む。単一のスマートコントラクト304が描写されているが、コントラクト更新管理システム302は、たとえばコンソーシアムブロックチェーンネットワークの内部の任意数のスマートコントラクト304を更新するのに使用され得ることが企図されている。さらに、単一のスマートコントラクトの更新303が描写されているが、任意数のスマートコントラクトの更新303が提供され得ることが企図されている。いくつかの例では、スマートコントラクトの更新303は、1つまたは複数のスマートコントラクト304向けに提供される(たとえば1対多数の関係)。いくつかの例では、スマートコントラクトの更新303は、単一のスマートコントラクト304向けに提供される(たとえば1対1の関係)。いくつかの例では、多数のスマートコントラクトの更新303が、単一のスマートコントラクト304向けに提供される(たとえば多数対1の関係)。
本開示の実装形態によれば、コントラクト更新管理システム302は、スマートコントラクトの更新303を選択的に実行してスマートコントラクト304を更新する。スマートコントラクトの更新303は、コントラクト更新管理システム302の内部に概略的に描写されているが全体的に存在し、コンソーシアムブロックチェーンネットワークの内部で実行される。いくつかの例では、本明細書でより詳細に説明されるように、スマートコントラクトの更新303は、スマートコントラクト304に対する更新を呼び出すためのロジックと、スマートコントラクト304に対して実行される更新に必要な1つまたは複数の条件とを含み、1つまたは複数の条件が満たされた場合にはスマートコントラクト304に対する更新を実行する。
より詳細には、コントラクト管理システム302は更新プロセスを呼び出すことができる。たとえば、本明細書でより詳細に説明されるように、コントラクト管理システム302に更新要求が与えられ得、更新プロセスを呼び出す。いくつかの例では、更新要求は、更新されるスマートコントラクト304ならびに遂行される更新を識別する。いくつかの例では、スマートコントラクト304は、コンソーシアムブロックチェーンネットワークの内部のスマートコントラクト304の固有のアドレス(たとえば39a1509440f8c549dfd6e995def14b1ce3c98e5d)に基づいて識別される。たとえば、スマートコントラクト304は、生成の後に、または生成とともに、コントラクト更新管理システム302を用いて登録され得る。いくつかの例では、スマートコントラクト304の登録は、その固有の識別子に基づいてスマートコントラクト304にインデックスを付けるステップと、スマートコントラクト304を更新するために実行されるべき1つまたは複数のスマートコントラクトの更新303を参照するステップとを含む。いくつかの例では、1つまたは複数のスマートコントラクトの更新303の各々が、コンソーシアムブロックチェーンネットワークの内部のそれぞれのスマートコントラクトの更新303の固有のアドレス(たとえば23d61f4a88f90be1290c0eeab344992e1a2e8f6d)に基づいて参照される。
いくつかの実装形態では、更新要求は、スマートコントラクト304に対して遂行されるべき更新のタイプを含むことができる。いくつかの例では、更新プロセスを実行するために、スマートコントラクトの更新303は更新のタイプに基づいて選択され得る。たとえば、第1のタイプの更新(たとえば価格の変更)のために、条件の第1の組を含む第1のスマートコントラクトの更新が選択され、第2のタイプの更新(たとえばスマートコントラクトのパーティの変更)のために、条件の第2の組を含む第2のスマートコントラクトの更新が選択される。いくつかの例では、スマートコントラクトの更新の間の条件の組は、より厳格であり得る/それほど厳格でなくてよい。たとえば、条件の第1の組は、スマートコントラクトの第2の組ほど厳格でなくてよい。
いくつかの実装形態では、スマートコントラクトの更新303は更新のタイプに関係なく選択される(たとえば単一のスマートコントラクトの更新303はスマートコントラクト304に関連する)。いくつかの例では、スマートコントラクトの更新によって実施される1組の条件は、更新のタイプに基づいて選択される。たとえば、第1のタイプの更新については、スマートコントラクトの更新304は条件の第1の組を実施し、第2のタイプの更新については、スマートコントラクトの更新304は条件の第2の組を実施する。
いくつかの実装形態では、スマートコントラクトの更新303は、スマートコントラクト304を更新するために満たされるべき1つまたは複数の条件を満足するのに関与するノードのリスト308を管理することができる。いくつかの例では、ノード308は、いくつかのタスクを遂行するか、または(たとえばノード308におけるユーザによって)遂行されるいくつかのタスクを有する。たとえば、ノード308は、ロジックおよび更新を実施するのに必要な条件の組に依拠して、情報、承認、署名(たとえばデジタル署名)、および/または投票を供給することを要求されることがある。
更新の承認に関する非限定的な例が、本明細書で、図3を参照しながらより詳細に説明される。図3の例では、ノード308(ユーザとして描写されている)は、提案されたスマートコントラクト304に対する提案された更新に関して投票する。例示のタイプの投票は、委員会のメンバーおよび属性の変更の投票、ならびにコントラクトの拡大投票を制限なく含み得る。委員会のメンバーおよび属性の変更の投票は、投票するメンバーのリストおよび対応する投票パラメータを更新するために使用され得る。コントラクトの拡大投票は、スマートコントラクト304を更新するために使用され得る。
コントラクト更新管理システム302によって処理されるスマートコントラクト304を更新するためのそれぞれの提案がコンテンツを含むことができる。例示のコンテンツは、スマートコントラクト304のアドレス、スマートコントラクトの更新303のアドレス、更新(またはアップグレード)の理由、および/または新規の委員会のメンバーのリストを制限なく含むことができる。提案のための条件は、たとえば、提案が受諾されるには完全な同意が必要かどうかを規定する情報と、提案を受諾するための必要な重み比が確立されているかどうかを規定する情報と、否認が有効かどうか(および否認の選択肢がどのように適用されるか)を規定する情報とを含むことができる。提案の投票の最終期限および提案の有効期間は、(投票プロセス中の)提案の発生から提案の実行までのタイミングを識別することができる。例示のタイプの投票は、属性変更の投票およびコントラクトの更新の投票を制限なく含み得る。
コントローラコントラクト306は、ディスパッチャによって、スマートコントラクト304を発信したコントラクト発信者による要求を受け取ったとき定義され得る。たとえば、スマートコントラクト304は、ノード308のうちの1つまたは複数によって発信され得る。描写された例では、コントローラコントラクト306は、スマートコントラクト304の更新の要求を含んでいる要求をルーティングするルータ310を含む。スマートコントラクト304は、サービスコントラクト312およびデータコントラクト314も含む。サービスコントラクト312は、スマートコントラクト304のビジネスロジックを含むことができる。データコントラクト314が含み得るスマートコントラクト304の条項は、スマートコントラクト304によって対象として含まれる製品および/またはサービスと、製品および/またはサービスの受領に関するコントラクト向けの支払い情報とを含む。
いくつかの例では、ルータ310は、たとえばノード308のうち適切なものといった適切なサービスコントラクトアドレスへの要求および他の情報のルーティングを担う。ルータ310におけるコントラクトアドレスデータの修正は、スマートコントラクトの更新303によって遂行され得る。スマートコントラクト304を更新するための決定は、コンソーシアムのメンバー、コントラクト管理委員会、または複数のノード308の連帯投票によって形成され得る。
イベントの例示のシーケンスでは、ノード308aは、スマートコントラクト304に対する変更を提案することができる。提案される変更は提案312(たとえば更新要求)の形態であり得、たとえばスマートコントラクト304の条項(たとえば配送日、製品またはサービスに支払われる価格)を変更するものである。コントラクト更新管理システム302は提案312を受け取ることができ、非変更を提案しているユーザ308(ユーザ308b、308c、308d、308eを含む)に要求を送ることができる。非変更を提案しているユーザ308に送られる要求は、スマートコントラクト304に対して提案されている変更、および変更に関して投票することの要求(または招待)を含むことができる。コントラクト更新管理システム302は、ノード308b、308c、308d、308eから投票318を受け取り得、次いで、変更を承認するべきかどうかを判定することができる。いくつかの例では、投票はノードによって自動的に行われる(たとえば投票のコンピュータ実行)。いくつかの例では、投票は、ユーザによってノードを介して行われる(たとえば、認定ユーザはノードを介して投票を提出する)。
図4は、本開示の実装形態によって実行され得る例示のプロセス400を描写するものである。いくつかの実装形態では、例示のプロセス400は、1つまたは複数のコンピュータデバイスを使用して実行される1つまたは複数のコンピュータ実行可能プログラムを使用して遂行され得る。
402において、コントラクト更新管理システムがスマートコントラクトに対する変更を受け取る。たとえば、スマートコントラクト304に対する変更は、ユーザ308aによって提案され得る。変更は、たとえばスマートコントラクト304の契約条件の変更といった、提案された更新であり得る。変更されるよう提案された契約条件は、たとえば、スマートコントラクト304において識別された配送日または製品もしくはサービスに支払われる価格に対する変更を含むことができる。
404において、変更を組み込むようにスマートコントラクトを更新するための条件が満たされているかどうかが判定される。たとえば、コントラクト更新管理システム302の内部でスマートコントラクトの更新303を実行することによって判定され得る。スマートコントラクトの更新303は、判定するための条件を定義することができる。
いくつかの実装形態では、条件が満たされているかどうかを判定するステップは、以下のことを含む投票プロセスを遂行するステップを含む。提案された変更は、変更に賛成/反対の投票をするようにとの要求を伴って、ブロックチェーンにおけるブロックに送られる。たとえば、コントラクト更新管理システム302は、ユーザ308b、308b、308d、および308eを表現するブロックに要求を送ることができる。次いで、コントラクト更新管理システム302はブロックチェーンにおけるブロックから投票318を収集することができる。次いで、コントラクト更新管理システム302は、たとえば、収集された投票がブロックチェーンにおけるブロックのコンセンサスによって変更の承認を指示するとき、条件が満たされていると判定することができる。
いくつかの実装形態では、投票プロセスは、特定の投票者に関連した重みによって投票に重み付けするステップを含み、コンセンサスは、収集された投票およびそれらの関連する重みの関数に基づき得る。たとえば、ユーザ308のうち数人は、その重要性によってスマートコントラクト304に対する重要性が変化するコントラクトパーティであり得る。コントラクト更新管理システム302は、投票プロセス中に、種々のユーザ308に関連した重みを使用して、投票者のコンセンサスに達しているかどうかを決定する。
いくつかの実装形態では、投票プロセスを遂行するステップは、拒否権を有する投票者から受け取られた否認を適用するステップを含む。投票プロセス中に、変更に対する否認が受け取られたとき投票プロセスが終結し得、否認によって変更が拒否される。たとえば、ユーザ308のうち数人は、購買者または販売者のいずれかである、スマートコントラクト304のコントラクトパーティであり得る。これらのタイプのコントラクトパーティは、スマートコントラクト304に対して提案されたあらゆる変更に対する拒否権を有することができる。
いくつかの実装形態では、投票プロセスを遂行するステップは、投票プロセスが変更の承認または変更の拒否をもたらすことになるときを規定する投票ルールを使用するステップを含む。例として、所与のスマートコントラクトに関する1組の投票ルールが、投票を使用して承認されたかどうかを判定するやり方を規定するルールを含むことができる。これらのルールは、たとえば、ブロックチェーンにおけるブロックの、承認に必要な最小数、または投票の何らかの他の組合せを指定することができる。それぞれのスマートコントラクトが投票ルールの固有の組を有することができる。
いくつかの実装形態では、投票プロセスを遂行するステップは、投票プロセスが生じる投票期間を定義する投票開始時間および投票終了時間を使用するステップを含む。たとえば、スマートコントラクトの更新303は、特定の開始時間および終了時間にマッピングされ得る時間の長さ(たとえば時間数または日数)を定義することができる。
いくつかの実装形態では、閾値数の投票者が変更を承認したとき、あるいは1人または複数の特定の投票者の組合せが変更を承認したとき、投票プロセスを遂行するステップが終結し、条件が満たされる。たとえば、ユーザ308のうちの少なくとも3人が、提案された変更を承認するように投票したとき、コントラクト更新管理システム302は、投票ルールを使用して、コンセンサスに達していると判定することができる。
406において、コントラクト更新管理システムは、条件が満たされていると判定するとスマートコントラクトを更新する。この変更はブロックチェーンにおける1つまたは複数のブロックに記録される。たとえば、コントラクト更新管理システム302は、ブロックチェーンにおけるブロック(たとえばユーザ308)に変更を伝達することができる。
本明細書では、提案された更新に関する投票を参照しながら例示の更新プロセスが説明されているが、本開示の実装形態は、更新を許容する、または却下するためのあらゆる適切な条件を使用して実現され得ることが企図されている。たとえば、例示の条件は、更新要求に応じて1人または複数の特定ユーザからの更新の承認を必要とすることを含むことができる。1人または複数の特定ユーザの各々が承認を与えると、スマートコントラクトに対する更新が実行される。1人または複数の特定ユーザのうち誰か1人でも承認しなければ、スマートコントラクトに対する更新は実行されない。別の例として、例示の更新条件は、所定の期間内に1人または複数の特定ユーザからの更新の不承認を必要とすることを含むことができる。所定の期間内に不承認が受け取られなければ、更新が実行される。さらに別の例として、例示の更新条件は、所定の期間内に1人または複数の特定ユーザからの更新の承認を必要とすることを含むことができる。所定の期間内に承認が受け取られなければ、更新が拒否される。
説明された機能は、デジタル電子回路、コンピュータのハードウェア、ファームウェア、ソフトウェア、またはそれらの組合せで実施され得る。装置は、プログラム可能なプロセッサで実行するための、情報媒体(例えば機械可読の記憶装置)に有形に実施されたコンピュータプログラム製品で実施され得、方法のステップは、入力データに対して動作して出力を生成することにより、説明された実装形態の機能を遂行する命令のプログラムを実行する、プログラム可能なプロセッサによって遂行され得る。説明された機能は、データ記憶システムに対してデータおよび命令をやり取りするように結合された少なくとも1つのプログラム可能なプロセッサと、少なくとも1つの入力装置と、少なくとも1つの出力装置とを含むプログラマブルシステム上で実行可能な1つまたは複数のコンピュータプログラムにおいて有利に実施され得る。コンピュータプログラムは、特定の動作を遂行するため、または特定の結果をもたらすために、コンピュータにおいて直接的または間接的に使用され得る1組の命令である。コンピュータプログラムは、コンパイル型言語またはインタープリタ型言語を含めて任意の形式のプログラミング言語で記述され得、スタンドアロンプログラムとして、あるいはモジュール、コンポーネント、サブルーチン、またはコンピュータ環境で用いるのに適切な他のユニットとしてなど、任意の形式に展開され得る。
プログラムの命令を実行するのに適切なプロセッサには、例として、汎用マイクロプロセッサおよび専用マイクロプロセッサ、ならびに任意の種類のコンピュータの唯一のプロセッサまたは複数のプロセッサのうちの1つが含まれる。一般に、プロセッサは、命令およびデータを、読取り専用メモリもしくはランダムアクセスメモリまたはその両方から受け取ることになる。コンピュータの要素には、命令を実行するためのプロセッサならびに命令およびデータを記憶するための1つまたは複数の記憶装置が含まれ得る。一般に、コンピュータは、データファイルを記憶するための1つまたは複数の大容量記憶装置も含んでよく、またはこれと通信するように動作可能に結合されてもよく、そのような装置は、内部ハードディスクおよび取外し可能ディスクなどの磁気ディスクと、光磁気ディスクと、光ディスクとを含む。コンピュータプログラムの命令およびデータを有形に実施するのに適切な記憶装置には、例として、EPROM、EEPROM、およびフラッシュメモリ素子などの半導体メモリ素子と、内部ハードディスクおよび取外し可能ディスクなどの磁気ディスクと、光磁気ディスクと、CD-ROMおよびDVD-ROMディスクとを含む、すべての形態の不揮発性記憶装置が含まれる。プロセッサおよび記憶装置は、特定用途向け集積回路(ASIC)を追加されてよく、または特定用途向け集積回路(ASIC)に組み込まれてもよい。
ユーザとの相互作用を提供するために、これらの機能は、ユーザに情報を表示するための、ブラウン管(CRT)または液晶表示器(LCD)モニタなどの表示装置、ならびにユーザがコンピュータに入力を与えることができるキーボードおよびマウスまたはトラックボールなどのポインティングデバイスを有するコンピュータ上で実施され得る。
これらの機能は、データサーバなどのバックエンドコンポーネントを含むコンピュータシステム、またはアプリケーションサーバもしくはインターネットサーバなどのミドルウェアコンポーネントを含むコンピュータシステム、またはグラフィカルユーザインターフェースもしくはインターネットブラウザを有するクライアントコンピュータなどのフロントエンドコンポーネントを含むコンピュータシステム、あるいはそれらの任意の組合せで実施され得る。システムの構成要素は、通信ネットワークなどのデジタルデータ通信の任意の形式または媒体によって接続され得る。通信ネットワークの例には、たとえば、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、ならびにインターネットを形成するコンピュータおよびネットワークが含まれる。
コンピュータシステムは、クライアントおよびサーバを備え得る。一般に、クライアントとサーバは互いに遠く離れていて、典型的には、説明されたものなどのネットワークを介して相互作用する。クライアントとサーバの関係は、それぞれのコンピュータ上で走って互いにクライアント対サーバの関係を有する各コンピュータプログラムによって生じる。
加えて、図に示された論理の流れは、望ましい結果を達成するのに、示された特定の順序、または順番を必要とするわけではない。加えて、他のステップが与えられてよく、または説明された流れからステップが削除されてもよく、および、説明されたシステムに対する他の構成要素の付加または除去が可能である。したがって、他の実装形態は、以下の特許請求の範囲の範囲内にある。
本開示の複数の実装形態が説明されてきた。しかし、本開示の趣旨および範囲から逸脱することなく、様々な修正形態が作製され得ることが理解されよう。したがって、他の実装形態は、以下の特許請求の範囲の範囲内にある。
100 環境
102 コンソーシアムブロックチェーンネットワーク
106 コンピュータシステム
108 コンピュータシステム
110 ネットワーク
200 概念的構造
202 エンティティ層
204 ホスティングされたサービス層
206 ブロックチェーンネットワーク層
208 トランザクション管理システム
210 インターフェース
212 ブロックチェーンネットワーク
214 ノード
216 ブロックチェーン
300 システム
302 コントラクト更新管理システム
303 スマートコントラクトの更新
304 スマートコントラクト
306 コントローラコントラクト
308 ノード
308a ノード
308b ノード
308c ノード
308d ノード
308e ノード
310 ルータ
312 サービスコントラクト
314 データコントラクト
316 提案
318 投票

Claims (30)

  1. ブロックチェーンネットワークにおいて実行されるスマートコントラクトに対する更新を管理するためのコンピュータ実施方法であって、
    コントラクト更新管理システムによって、スマートコントラクトに対する変更を指示する更新要求を受け取るステップであって、前記変更が前記スマートコントラクトに対する提案された更新である、ステップと、
    前記コントラクト更新管理システムの内部のスマートコントラクトの更新を実行することにより、前記変更を組み込むように前記スマートコントラクトを更新するための条件が満たされているかどうかを判定するステップであって、前記スマートコントラクトの更新が前記条件を定義する、ステップと、
    前記コントラクト更新管理システムが、前記条件が満たされていると判定したとき、前記コントラクト更新管理システムによって、前記スマートコントラクトを更新して、ブロックチェーンネットワークのブロックチェーンにおける1つまたは複数のブロックに対する前記変更を記録するステップとを含む方法。
  2. 前記更新要求が、前記ブロックチェーンネットワークの内部の前記スマートコントラクトに割り当てられた識別子を含む、請求項1に記載の方法。
  3. 前記更新要求が、前記ブロックチェーンネットワークの内部の前記スマートコントラクトの更新に割り当てられた識別子を含む、請求項1に記載の方法。
  4. 前記スマートコントラクトが、
    ディスパッチャによって、前記スマートコントラクトを発信したコントラクト発信者による要求を受け取ったとき定義された、コントローラコントラクトと、
    前記スマートコントラクトのロジックを含むサービスコントラクトと、
    前記スマートコントラクトの条項を含むデータコントラクトとを含む、請求項1に記載の方法。
  5. 前記条件が満たされているかどうかを判定するステップが、投票プロセスを遂行するステップであって、
    前記ブロックチェーンネットワークにおける1つまたは複数のノードに、前記変更に関して投票するように要求を送るステップと、
    前記1つまたは複数のノードから投票を収集するステップと、
    前記収集された投票が前記1つまたは複数のノードによる前記変更の承認を指示するとき、条件が満たされたと判定するステップとを含む、投票プロセスを遂行するステップを含む、請求項1に記載の方法。
  6. 前記投票プロセスを遂行するステップが、それぞれのノードに関連した重みによって投票に重み付けするステップを含み、承認は、前記収集された投票およびそれらの関連する重みの関数に基づくものである、請求項5に記載の方法。
  7. 前記投票プロセスを遂行するステップが、拒否権を有するノードから受け取られた否認を適用するステップであって、前記投票プロセス中に、前記変更に対する否認が受け取られたとき、前記投票プロセスが終結し、前記否認によって前記変更が拒否される、ステップを含む、請求項5に記載の方法。
  8. 前記投票プロセスを遂行するステップが、前記投票プロセスが前記変更の承認または前記変更の拒否をもたらすことになるときを規定する投票ルールを使用するステップを含む、請求項5に記載の方法。
  9. 前記投票プロセスを遂行するステップが、前記投票プロセスが生じる投票期間を定義する投票開始時間および投票終了時間を使用するステップを含む、請求項5に記載の方法。
  10. 閾値数の投票者が前記変更を承認したとき、あるいは1つまたは複数の特定の投票者の組合せが前記変更を承認したとき、前記投票プロセスを遂行するステップが終結し、前記条件が満たされる、請求項5に記載の方法。
  11. 命令を記憶して1つまたは複数のプロセッサに結合された非一時的コンピュータ可読記憶媒体であって、前記命令が前記1つまたは複数のプロセッサによって実行されたとき、前記1つまたは複数のプロセッサが、ブロックチェーンネットワークにおいて実行されるスマートコントラクトに対する更新を管理するための動作を遂行し、前記動作が、
    コントラクト更新管理システムによって、スマートコントラクトに対する変更を指示する更新要求を受け取るステップであって、前記変更が前記スマートコントラクトに対する提案された更新である、ステップと、
    前記コントラクト更新管理システムの内部のスマートコントラクトの更新を実行することにより、前記変更を組み込むように前記スマートコントラクトを更新するための条件が満たされているかどうかを判定するステップであって、前記スマートコントラクトの更新が前記条件を定義する、ステップと、
    前記コントラクト更新管理システムが、前記条件が満たされていると判定したとき、前記コントラクト更新管理システムによって前記スマートコントラクトを更新して、ブロックチェーンネットワークのブロックチェーンにおける1つまたは複数のブロックに対する前記変更を記録するステップとを含む、非一時的コンピュータ可読記憶媒体。
  12. 前記更新要求が、前記ブロックチェーンネットワークの内部の前記スマートコントラクトに割り当てられた識別子を含む、請求項11に記載のコンピュータ可読記憶媒体。
  13. 前記更新要求が、前記ブロックチェーンネットワークの内部の前記スマートコントラクトの更新に割り当てられた識別子を含む、請求項11に記載のコンピュータ可読記憶媒体。
  14. 前記スマートコントラクトが、
    ディスパッチャによって、前記スマートコントラクトを発信したコントラクト発信者による要求を受け取ったとき定義された、コントローラコントラクトと、
    前記スマートコントラクトのロジックを含むサービスコントラクトと、
    前記スマートコントラクトの条項を含むデータコントラクトとを含む、請求項11に記載のコンピュータ可読記憶媒体。
  15. 前記条件が満たされているかどうかを判定するステップが、投票プロセスを遂行するステップであって、
    前記ブロックチェーンネットワークにおける1つまたは複数のノードに、前記変更に関して投票するように要求を送るステップと、
    前記1つまたは複数のノードから投票を収集するステップと、
    前記収集された投票が前記1つまたは複数のノードによる前記変更の承認を指示するとき、条件が満たされたと判定するステップとを含む、投票プロセスを遂行するステップを含む、請求項11に記載のコンピュータ可読記憶媒体。
  16. 前記投票プロセスを遂行するステップが、それぞれのノードに関連した重みによって投票に重み付けするステップを含み、承認は、前記収集された投票およびそれらの関連する重みの関数に基づくものである、請求項15に記載のコンピュータ可読記憶媒体。
  17. 前記投票プロセスを遂行するステップが、拒否権を有するノードから受け取られた否認を適用するステップであって、前記投票プロセス中に、前記変更に対する否認が受け取られたとき、前記投票プロセスが終結し、前記否認によって前記変更が拒否される、ステップを含む、請求項15に記載のコンピュータ可読記憶媒体。
  18. 前記投票プロセスを遂行するステップが、前記投票プロセスが前記変更の承認または前記変更の拒否をもたらすことになるときを規定する投票ルールを使用するステップを含む、請求項15に記載のコンピュータ可読記憶媒体。
  19. 前記投票プロセスを遂行するステップが、前記投票プロセスが生じる投票期間を定義する投票開始時間および投票終了時間を使用するステップを含む、請求項15に記載のコンピュータ可読記憶媒体。
  20. 閾値数の投票者が前記変更を承認したとき、あるいは1つまたは複数の特定の投票者の組合せが前記変更を承認したとき、前記投票プロセスを遂行するステップが終結し、前記条件が満たされる、請求項15に記載のコンピュータ可読記憶媒体。
  21. コンピュータデバイスと、
    命令を記憶して前記コンピュータデバイスに結合されたコンピュータ可読記憶デバイスであって、前記命令が前記コンピュータデバイスによって実行されたとき、前記コンピュータデバイスが、ブロックチェーンネットワークにおいて実行されるスマートコントラクトに対する更新を管理するための動作を遂行する、コンピュータ可読記憶デバイスとを備えるシステムであって、前記動作が、
    コントラクト更新管理システムによって、スマートコントラクトに対する変更を指示する更新要求を受け取るステップであって、前記変更が前記スマートコントラクトに対する提案された更新である、ステップと、
    前記コントラクト更新管理システムの内部のスマートコントラクトの更新を実行することにより、前記変更を組み込むように前記スマートコントラクトを更新するための条件が満たされているかどうかを判定するステップであって、前記スマートコントラクトの更新が前記条件を定義する、ステップと、
    前記コントラクト更新管理システムが、前記条件が満たされていると判定したとき、前記コントラクト更新管理システムによって前記スマートコントラクトを更新して、ブロックチェーンネットワークのブロックチェーンにおける1つまたは複数のブロックに対する前記変更を記録するステップとを含む、システム。
  22. 前記更新要求が、前記ブロックチェーンネットワークの内部の前記スマートコントラクトに割り当てられた識別子を含む、請求項21に記載のシステム。
  23. 前記更新要求が、前記ブロックチェーンネットワークの内部の前記スマートコントラクトの更新に割り当てられた識別子を含む、請求項21に記載のシステム。
  24. 前記スマートコントラクトが、
    ディスパッチャによって、前記スマートコントラクトを発信したコントラクト発信者による要求を受け取ったとき定義された、コントローラコントラクトと、
    前記スマートコントラクトのロジックを含むサービスコントラクトと、
    前記スマートコントラクトの条項を含むデータコントラクトとを含む、請求項21に記載のシステム。
  25. 前記条件が満たされているかどうかを判定するステップが、投票プロセスを遂行するステップであって、
    前記ブロックチェーンネットワークにおける1つまたは複数のノードに、前記変更に関して投票するように要求を送るステップと、
    前記1つまたは複数のノードから投票を収集するステップと、
    前記収集された投票が前記1つまたは複数のノードによる前記変更の承認を指示するとき、条件が満たされたと判定するステップとを含む、投票プロセスを遂行するステップを含む、請求項21に記載のシステム。
  26. 前記投票プロセスを遂行するステップが、それぞれのノードに関連した重みによって投票に重み付けするステップを含み、承認は、前記収集された投票およびそれらの関連する重みの関数に基づくものである、請求項25に記載のシステム。
  27. 前記投票プロセスを遂行するステップが、拒否権を有するノードから受け取られた否認を適用するステップであって、前記投票プロセス中に、前記変更に対する否認が受け取られたとき、前記投票プロセスが終結し、前記否認によって前記変更が拒否される、ステップを含む、請求項25に記載のシステム。
  28. 前記投票プロセスを遂行するステップが、前記投票プロセスが前記変更の承認または前記変更の拒否をもたらすことになるときを規定する投票ルールを使用するステップを含む、請求項25に記載のシステム。
  29. 前記投票プロセスを遂行するステップが、前記投票プロセスが生じる投票期間を定義する投票開始時間および投票終了時間を使用するステップを含む、請求項25に記載のシステム。
  30. 閾値数の投票者が前記変更を承認したとき、あるいは1つまたは複数の特定の投票者の組合せが前記変更を承認したとき、前記投票プロセスを遂行するステップが終結し、前記条件が満たされる、請求項25に記載のシステム。
JP2019521364A 2018-11-30 2018-11-30 分権的決定を使用するブロックチェーンスマートコントラクトの更新 Active JP6798087B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2018/118543 WO2019072289A2 (en) 2018-11-30 2018-11-30 INTELLIGENT BLOCK CHAIN CONTRACT UPDATES USING A DECENTRALIZED DECISION

Publications (3)

Publication Number Publication Date
JP2020501402A true JP2020501402A (ja) 2020-01-16
JP2020501402A5 JP2020501402A5 (ja) 2020-06-18
JP6798087B2 JP6798087B2 (ja) 2020-12-09

Family

ID=66100018

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019521364A Active JP6798087B2 (ja) 2018-11-30 2018-11-30 分権的決定を使用するブロックチェーンスマートコントラクトの更新

Country Status (14)

Country Link
US (1) US10594477B2 (ja)
EP (1) EP3552366A4 (ja)
JP (1) JP6798087B2 (ja)
KR (1) KR102151893B1 (ja)
CN (1) CN110168582A (ja)
AU (1) AU2018348329B2 (ja)
BR (1) BR112019008008A2 (ja)
CA (1) CA3041188C (ja)
MX (1) MX2019004666A (ja)
PH (1) PH12019500868A1 (ja)
RU (1) RU2721100C1 (ja)
SG (1) SG11201903533QA (ja)
TW (1) TWI695615B (ja)
WO (1) WO2019072289A2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023079832A1 (ja) * 2021-11-04 2023-05-11 ソニーグループ株式会社 情報処理装置、情報処理方法、及びプログラム
JP7325894B2 (ja) 2020-05-27 2023-08-15 ▲騰▼▲訊▼科技(深▲セン▼)有限公司 ブロックチェーンに基づくデータ処理方法、装置、デバイス及びコンピュータプログラム

Families Citing this family (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10944745B2 (en) 2018-12-06 2021-03-09 Bank Of America Corporation System and method for device and transaction authentication
US10986079B2 (en) * 2018-12-06 2021-04-20 Bank Of America Corporation System and method for hierarchical decisioning within a hybrid blockchain
US11734655B2 (en) * 2019-01-17 2023-08-22 Mastercard International Incorporated Method and system for a failsafe mechanism for blockchain wallets
CN110119430B (zh) * 2019-04-29 2023-06-30 深圳市元征科技股份有限公司 一种智能合约管理方法、服务器及计算机可读存储介质
US11257079B2 (en) * 2019-04-30 2022-02-22 Banco Bilbao Vizcaya Argentaria, S.A. Systems, methods, and interfaces for smart contract based exchanges via a blockchain
CN110288179A (zh) * 2019-05-10 2019-09-27 深圳壹账通智能科技有限公司 联盟链的治理方法及装置、计算机设备、存储介质
CN110348825A (zh) * 2019-06-26 2019-10-18 阿里巴巴集团控股有限公司 基于区块链的电子票据下发方法及装置和电子设备
CN110300167B (zh) * 2019-06-28 2020-07-31 京东数字科技控股有限公司 基于区块链的业务信息处理方法、设备及可读存储介质
CN112417030A (zh) * 2019-08-20 2021-02-26 中国电信股份有限公司 智能合约实现方法和装置、区块链系统和存储介质
US20210065317A1 (en) * 2019-08-30 2021-03-04 EnergyXchain, LLC Managing energy transactions using distributed ledger technology
CN112448817A (zh) * 2019-09-05 2021-03-05 陈小虎 一种去中心化的共识方案
US11132403B2 (en) 2019-09-06 2021-09-28 Digital Asset Capital, Inc. Graph-manipulation based domain-specific execution environment
US10831452B1 (en) * 2019-09-06 2020-11-10 Digital Asset Capital, Inc. Modification of in-execution smart contract programs
CN112468605B (zh) * 2019-09-06 2023-08-08 傲为有限公司 一种基于区块链的去中心化域名更新系统及方法
CN112541756B (zh) * 2019-09-20 2023-07-04 上海哔哩哔哩科技有限公司 区块链合约升级方法、装置、计算机设备及可读存储介质
CN110866753B (zh) * 2019-10-24 2021-04-06 腾讯科技(深圳)有限公司 一种第三方结算的控制方法、装置、电子设备和存储介质
WO2021125106A1 (ja) * 2019-12-19 2021-06-24 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 制御方法、装置、および、プログラム
CN111833510B (zh) * 2019-12-25 2021-12-14 北京熠智科技有限公司 基于区块链的投票处理方法及装置、设备、存储介质
CN113206748B (zh) * 2020-02-03 2022-10-18 北京百度网讯科技有限公司 联盟链网络的治理方法、联盟链网络和电子设备
CN111291365A (zh) * 2020-02-28 2020-06-16 上海哈世科技有限公司 联盟链系统的智能合约管理方法、装置、设备及存储介质
CN111461647B (zh) * 2020-03-24 2023-08-22 杭州溪塔科技有限公司 基于区块链的业务协作处理方法和系统
CN111461885B (zh) * 2020-03-31 2024-03-19 财付通支付科技有限公司 共识网络管理方法、装置、计算机以及可读存储介质
CN111475577B (zh) * 2020-04-21 2022-09-02 北京联合永道软件股份有限公司 积分联盟链中智能合约的上链表决方法及系统
CN111639127B (zh) * 2020-05-11 2022-05-13 支付宝实验室(新加坡)有限公司 一种智能合约的更新方法、系统、装置及设备
RU2751457C1 (ru) * 2020-06-16 2021-07-14 Публичное Акционерное Общество "Сбербанк России" Способ и система электронного голосования в распределенном реестре
CN113037817B (zh) * 2020-08-31 2022-12-20 支付宝(杭州)信息技术有限公司 启动智能合约的方法及装置、电子设备、存储介质
CN112035144B (zh) * 2020-09-01 2023-05-26 平安付科技服务有限公司 区块链系统的升级方法、装置、计算机设备及存储介质
DE102020212330A1 (de) * 2020-09-30 2022-03-31 Robert Bosch Gesellschaft mit beschränkter Haftung Verfahren und Vorrichtung zum Betreiben einer dezentralen Anwendung durch Teilnehmer einer Blockkette
CN112291327A (zh) * 2020-10-23 2021-01-29 中化能源股份有限公司 区块链节点管理方法、装置及电子设备
CN112182009B (zh) * 2020-10-27 2024-03-12 安信数字(广州)科技有限公司 区块链的数据更新方法及装置、可读存储介质
CN112765264A (zh) * 2020-12-29 2021-05-07 中国人寿保险股份有限公司上海数据中心 一种基于区块链智能合约的上链表决控制方法
CN113300855B (zh) * 2021-05-25 2022-05-03 浙江大学 基于可变策略的联盟链投票管理方法及系统
CN115701607A (zh) * 2021-08-02 2023-02-10 深圳富联富桂精密工业有限公司 基于区块链的规则更新方法、电子设备及存储介质
TWI778733B (zh) * 2021-08-02 2022-09-21 新加坡商鴻運科股份有限公司 基於區塊鏈的規則更新方法、電子設備及儲存介質
CN114422526B (zh) * 2021-12-31 2024-03-15 支付宝(杭州)信息技术有限公司 一种区块同步方法、装置、电子设备和存储介质
CN117172913B (zh) * 2023-10-12 2024-02-13 广州保德来小额贷款有限公司 一种基于智能合约的合约变更手续执行方法及系统

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180137465A1 (en) * 2016-11-11 2018-05-17 International Business Machines Corporation Smart contract admission check and fault tolerance in a blockchain
US20180181979A1 (en) * 2016-12-26 2018-06-28 International Business Machines Corporation Incentive-based crowdvoting using a blockchain
WO2018127923A1 (en) * 2017-01-08 2018-07-12 Eyal Hertzog Methods for exchanging and evaluating virtual currency
JP2018109878A (ja) * 2017-01-05 2018-07-12 株式会社日立製作所 分散コンピューティングシステム
WO2018149504A1 (en) * 2017-02-17 2018-08-23 Nokia Technologies Oy Changing smart contracts recorded in block chains
US20180343175A1 (en) * 2017-05-24 2018-11-29 International Business Machines Corporation Decentralized change management based on peer devices using a blockchain
JP2020080061A (ja) * 2018-11-13 2020-05-28 日本電信電話株式会社 ブロックチェーンシステム、承認端末、利用者端末、履歴管理方法、および、履歴管理プログラム

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100864987B1 (ko) * 2007-04-12 2008-10-22 디비코 주식회사 클라이언트 동기화 시스템 및 그 방법
US8090351B2 (en) * 2009-09-01 2012-01-03 Elliot Klein Geographical location authentication method
US20130007849A1 (en) * 2011-05-26 2013-01-03 FonWallet Transaction Soulutions, Inc. Secure consumer authorization and automated consumer services using an intermediary service
US10635471B2 (en) * 2015-05-15 2020-04-28 Joshua Paul Davis System and method for an autonomous entity
WO2017145019A1 (en) * 2016-02-23 2017-08-31 nChain Holdings Limited Registry and automated management method for blockchain-enforced smart contracts
US10346406B2 (en) * 2016-03-28 2019-07-09 International Business Machines Corporation Decentralized autonomous edge compute coordinated by smart contract on a blockchain
WO2018006072A1 (en) * 2016-06-30 2018-01-04 Clause, Inc. Systems and method for forming, storing, managing,and executing contracts
US11663609B2 (en) * 2016-10-04 2023-05-30 International Business Machines Corporation Method and apparatus to enforce smart contract execution hierarchy on blockchain
US20180114205A1 (en) * 2016-10-21 2018-04-26 Bank Of America Corporation Distributed ledger system for providing aggregate tracking and threshold triggering
US10719771B2 (en) * 2016-11-09 2020-07-21 Cognitive Scale, Inc. Method for cognitive information processing using a cognitive blockchain architecture
CN106778329B (zh) * 2016-11-28 2020-12-04 中国银行股份有限公司 一种区块链智能合约模板动态更新方法、装置及系统
TWI629884B (zh) * 2017-01-20 2018-07-11 現代財富控股有限公司 基於區塊鏈的節點推舉系統及其方法
CN108196872A (zh) * 2017-12-27 2018-06-22 邵美 一种区块链系统中智能合约的升级方法
CN108833398B (zh) * 2018-06-08 2020-12-15 深圳智链未来科技有限公司 一种区块链智能合约更新方法、装置及设备
CN109003187A (zh) * 2018-07-25 2018-12-14 广东工业大学 一种区块链智能合约的更新升级方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180137465A1 (en) * 2016-11-11 2018-05-17 International Business Machines Corporation Smart contract admission check and fault tolerance in a blockchain
US20180181979A1 (en) * 2016-12-26 2018-06-28 International Business Machines Corporation Incentive-based crowdvoting using a blockchain
JP2018109878A (ja) * 2017-01-05 2018-07-12 株式会社日立製作所 分散コンピューティングシステム
WO2018127923A1 (en) * 2017-01-08 2018-07-12 Eyal Hertzog Methods for exchanging and evaluating virtual currency
WO2018149504A1 (en) * 2017-02-17 2018-08-23 Nokia Technologies Oy Changing smart contracts recorded in block chains
US20180343175A1 (en) * 2017-05-24 2018-11-29 International Business Machines Corporation Decentralized change management based on peer devices using a blockchain
JP2020080061A (ja) * 2018-11-13 2020-05-28 日本電信電話株式会社 ブロックチェーンシステム、承認端末、利用者端末、履歴管理方法、および、履歴管理プログラム

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7325894B2 (ja) 2020-05-27 2023-08-15 ▲騰▼▲訊▼科技(深▲セン▼)有限公司 ブロックチェーンに基づくデータ処理方法、装置、デバイス及びコンピュータプログラム
US11914579B2 (en) 2020-05-27 2024-02-27 Tencent Technology (Shenzhen) Company Limited Blockchain-based data processing method and apparatus, device, and readable storage medium
WO2023079832A1 (ja) * 2021-11-04 2023-05-11 ソニーグループ株式会社 情報処理装置、情報処理方法、及びプログラム

Also Published As

Publication number Publication date
JP6798087B2 (ja) 2020-12-09
EP3552366A2 (en) 2019-10-16
EP3552366A4 (en) 2019-11-06
CA3041188A1 (en) 2019-04-18
CN110168582A (zh) 2019-08-23
SG11201903533QA (en) 2019-05-30
TWI695615B (zh) 2020-06-01
MX2019004666A (es) 2019-08-21
RU2721100C1 (ru) 2020-05-15
WO2019072289A2 (en) 2019-04-18
CA3041188C (en) 2021-01-12
KR102151893B1 (ko) 2020-09-03
BR112019008008A2 (pt) 2019-11-12
WO2019072289A3 (en) 2019-10-03
US20190253239A1 (en) 2019-08-15
KR20200067116A (ko) 2020-06-11
US10594477B2 (en) 2020-03-17
AU2018348329B2 (en) 2020-11-05
PH12019500868A1 (en) 2019-11-25
AU2018348329A1 (en) 2020-06-18
TW202023233A (zh) 2020-06-16

Similar Documents

Publication Publication Date Title
CA3041188C (en) Blockchain smart contract updates using decentralized decision
US11907947B2 (en) Resource transfer system
US11336713B2 (en) Methods, devices and systems for a distributed coordination engine-based exchange that implements a blockchain distributed ledger
US20190026821A1 (en) Intermediate blockchain system for managing transactions
US11030188B2 (en) Platform for atomic transfer of smart assets within blockchain networks
EP3808028B1 (en) Services platform for managing a verifiable permissioned ledger in a distributed database management system
KR102151896B1 (ko) 블록체인 네트워크 내에서 스마트 에셋의 원자적 전송을 위한 플랫폼
Fabrizio et al. Invoice discounting: A blockchain-based approach
US10931438B2 (en) Generating a representative article
US20200090090A1 (en) Distributed ledger system for venture management
Gómez et al. Blockverse: A cloud blockchain-based platform for tracking in affiliate systems
US11216573B1 (en) Privacy preservation in private consensus networks
US20230131232A1 (en) Verifying external accounts in real-time using dynamic smart contracts
US20230267518A1 (en) Intelligently managing invoice processing using blockchain and mixed reality applications
Batzavalis et al. A Platform for Leveraging Blockchain Technology for the Storage, Issuance and Authentication of Academic Credentials.

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190603

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200428

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20200428

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20200811

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200817

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200914

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

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201028

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20201028

R150 Certificate of patent or registration of utility model

Ref document number: 6798087

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250