JP2021507407A - ブロックチェーン・ライフサイクルを管理するための方法、装置及びコンピュータ・プログラム - Google Patents

ブロックチェーン・ライフサイクルを管理するための方法、装置及びコンピュータ・プログラム Download PDF

Info

Publication number
JP2021507407A
JP2021507407A JP2020534294A JP2020534294A JP2021507407A JP 2021507407 A JP2021507407 A JP 2021507407A JP 2020534294 A JP2020534294 A JP 2020534294A JP 2020534294 A JP2020534294 A JP 2020534294A JP 2021507407 A JP2021507407 A JP 2021507407A
Authority
JP
Japan
Prior art keywords
blockchain
assets
transactions
new
attributes
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
JP2020534294A
Other languages
English (en)
Other versions
JP7028532B2 (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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JP2021507407A publication Critical patent/JP2021507407A/ja
Application granted granted Critical
Publication of JP7028532B2 publication Critical patent/JP7028532B2/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]
    • 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
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/123Applying verification of the received information received data contents, e.g. message integrity
    • 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/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
    • H04L2463/00Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
    • H04L2463/102Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00 applying security measure for e-commerce

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】 ブロックチェーン・ライフサイクル管理のための方法、装置、及びコンピュータ・プログラムを提供する。【解決手段】 例示的動作は、ブロックチェーンの1つ又は複数の属性を識別すること、1つ又は複数の属性に基づいてブロックチェーンを閉鎖すべきであると判断すること、ブロックチェーンを閉鎖すること、新しいブロックチェーンを作成すること、ブロックチェーンから1つ又は複数のアセットを識別すること、及びブロックチェーンの1つ又は複数のアセットに基づいて新しいブロックチェーンに対する繰り越しブロックチェーンを作成することのうちの1つ又は複数を含むことができる。【選択図】 図4

Description

本出願は、一般に、ブロックチェーンを管理することに関し、より特定的には、ブロックチェーン・ライフサイクル管理に関する。
ブロックチェーンは、任意の種類の情報を格納するためのパブリック台帳(ledger)として使用することができる。ブロックチェーンは主として金融トランザクションに使用されるが、アセット(asset)(すなわち、製品、パッケージ、サービス、ステータス等)を含む、任意のタイプの情報を格納することができる。分散型スキームは、権限及び信用を分散型ネットワークに委譲し、そのネットワークのノードがそれぞれのトランザクションをパブリック「ブロック」に連続的かつ順次に記録することができるようにし、ブロックチェーンと呼ばれる一意の「チェーン」を作成する。ハッシュ・コードによる暗号技術を使用して、トランザクション・ソースの認証をセキュア保護し、中央の介在を取り除く。ブロックチェーンは、ブロックチェーンのブロック内の増大し続ける記録のリストを保持する分散型データベースであり、それらの記録は、それらの不変的性質により、改ざん及び改訂からセキュア保護される。各ブロックは、タイムスタンプ、及び前のブロックへのリンクを含む。ブロックチェーンは、任意の情報を保持、追跡、伝達、及び確認するために用いることができる。ブロックチェーンは分散システムであるので、ブロックチェーン台帳にトランザクションを付加する前に、全てのピアが、コンセンサス(合意)状態に至る必要がある。
拡張性(scalability)は、これらに限定されるものではないが、CPU、ネットワーク制約、及びストレージなどの幾つかの要因の制約を受ける。全ての確認を行わず、CPU及びネットワーク負荷を低減させることができる代替的なブロックチェーン実装を行い得るので、現在、CPUとネットワークは大きな関心事ではない。ストレージ制約も、現在動作しているインフラストラクチャから最適な変化を経てきたが、現在、完全に使い果たされたトランザクションについての不必要なデータを削除するデータのプルーニング(pruning of data)のような付加的な課題があり、これは、不幸にも相対的に小さいストレージの最適化しかもたらさない。トランザクションを別の/より小さいタイプのブロックチェーンにマージバックする(すなわち、簡単化する/低減させる)「サイド・チェーン(side chain)」又は代替的チェーンを使用するなどの他の手法は、古いトランザクションがネットワークから忘れ去られることができるが、この実装の実施が複雑であるので、限定された結果しかもたらさなかった。また、ブロックチェーンにマージバックされるポイント・ツー・ポイント・トランザクションも、それらの実施が複雑であることが多いため、限定された結果をもたらす。
ブロックチェーン・ライフサイクル管理のための方法、装置、及び非一時的コンピュータ可読ストレージ媒体を提供する。
1つの例示的実施形態は、ブロックチェーンの1つ又は複数の属性を識別すること、1つ又は複数の属性に基づいてブロックチェーンを閉鎖(close)すべきであると判断すること、ブロックチェーンを閉鎖すること、新しいブロックチェーンを作成すること、ブロックチェーンから1つ又は複数のアセットを識別すること、及びブロックチェーンの1つ又は複数のアセットに基づいて繰り越し(carry-over)トランザクションを作成することのうちの1つ又は複数を含む方法を提供することができる。
別の例示的実施形態は、ブロックチェーンの1つ又は複数の属性を識別すること、1つ又は複数の属性に基づいてブロックチェーンを閉鎖すべきであると判断すること、ブロックチェーンを閉鎖すること、新しいブロックチェーンを作成すること、ブロックチェーンから1つ又は複数のアセットを識別すること、及びブロックチェーンの1つ又は複数のアセットに基づいて、新しいブロックチェーンのための繰り越しトランザクションを作成することのうちの1つ又は複数を実行するように構成されたプロセッサを含む装置を含むことができる。
さらに別の例示的実施形態は、実行されるとき、プロセッサに、ブロックチェーンの1つ又は複数の属性を識別すること、1つ又は複数の属性に基づいてブロックチェーンを閉鎖すべきであると判断すること、ブロックチェーンを閉鎖すること、新しいブロックチェーンを作成すること、ブロックチェーンから1つ又は複数のアセットを識別すること、ブロックチェーンの1つ又は複数のアセットに基づいて繰り越しトランザクションを作成することのうちの1つ又は複数を実行させる命令を格納するように構成された非一時的コンピュータ可読ストレージ媒体を提供することができる。
ここで、添付図面を参照して、本発明の実施形態を単なる例として説明する。
例示的実施形態による、ブロックチェーン閉鎖サイクルの論理図を示す。 例示的実施形態による、ブロックチェーン閉鎖サイクルを実行するための例示的ブロックチェーン構成を示す。 例示的実施形態による、例示的なピア・ノード、ブロックチェーン構成を示す。 例示的実施形態による、ブロックチェーン閉鎖サイクル及び新しいブロックチェーン作成サイクルを処理するためのシステム・メッセージング図を示す。 例示的実施形態による、ブロックチェーン・ライフサイクルを管理する例示的方法のフロー図を示す。 例示的実施形態による、ブロックチェーン・ライフサイクルを管理する例示的方法の別のフロー図を示す。 例示的実施形態の1つ又は複数をサポートするように構成された例示的コンピュータ・システム/サーバを示す。
本明細書において一般的に説明され図において示されている本発明のコンポーネントは、様々な異なる構成で配置及び設計され得ることが容易に理解されるであろう。従って、添付図面に示されている方法、装置、非一時的コンピュータ可読媒体、及びシステムのうちの少なくとも1つの実施形態の以下の詳細な説明は、特許請求されている本出願の範囲を限定することを意図するものではなく、選択されている実施形態の代表に過ぎない。
本明細書の全体を通じて記載されている本発明の特徴、構造、又は特性は、1つ又は複数の実施形態において任意の適切な手法で組み合わせることが可能である。例えば、「例示的実施形態(example embodiments)」、「幾つかの実施形態(some embodiments)」という句、又は他の類似の言葉の本明細書の全体を通じた使用は、その実施形態に関連して記載されている特定の特徴、構造、又は特性が、少なくとも1つの実施形態に含まれ得るという事実を指している。従って、「例示的実施形態」、「幾つかの実施形態において(in some embodiments)」、「他の実施形態において(in other embodiments)」という句、又は他の類似の言葉の本明細書を通じた出現は、必ずしも全てが実施形態の同じグループを指しているわけではなく、記載されている特徴、構造、又は特性は、1つ又は複数の実施形態において任意の適切な手法で組み合わせることが可能である。
さらに、「メッセージ」という用語が実施形態の説明において使用されていることがあるが、本出願は、多くのタイプのネットワーク・データ、例えば、パケット、フレーム、データグラムなどに適用することができる。また、「メッセージ」という用語は、パケット、フレーム、データグラム、及びそれらの任意の同等物も含む。さらに、特定のタイプのメッセージ及び信号方式(signaling)が例示的実施形態において示されていることがあるが、それらは、特定のタイプのメッセージに限定されず、本出願は、特定のタイプの信号方式に限定されない。
本出願は、1つの実施形態においては、ブロックチェーンのライフサイクル管理に関し、別の実施形態においては、時間と共にブロックチェーンの特性/属性を識別し、進行中のブロックチェーン・ライフサイクル管理に基づいて、ブロックチェーンを閉鎖し、新しいブロックチェーンを作成するための最適時期を判断することに関する。
例示的実施形態は、アクティブなブロックチェーンを閉鎖し、新しいブロックチェーンを作成する時期を判断することを含む、ブロックチェーン・ライフサイクル管理を提供する。過度のデータ、又は帯域幅の制約、及び/又はCPUの制約のために、ブロックチェーン台帳が必要以上に大きくなると、こうした台帳構成を継続させるために、ある時点でより古いデータ及び/又は履歴データの一部を減少させることがある。一例においては、ブロックチェーンは「自己分析」を受け、次に、アプリケーションは、いつどこでブロックチェーンの前の長さをアーカイブに除去し(すなわち、閉鎖し)、次に新しいブロックチェーンを作成するかを判断することができる。システムは、ブロックチェーンの現在の長さ/内容、及びその構成当事者及びトランザクションに基づいて、ハッシュを作成することができる。そのハッシュは、部分的に、多くの他の可能性の中からアクティブなリソース又は図書館において貸し出されている本の状態とすることができる、エンティティのライフ・ステータスを識別、記録及び処理するために、チェーンにわたるシステムのバックトラッキングによって作成される。閉鎖されるブロックチェーンは、可能な限り、全ての関連したトランザクションを有するべきである。例えば、古いブロックチェーンは、ブロックチェーンを閉鎖する前に完了したパターン/サイクルに関連するトランザクションの大部分/全てを有していれば有利であろう。
一例において、トランザクションのフィードがブロックチェーンに与えられ、従来のブロックチェーンの実装をもたらす。関連したブロックチェーンからの実世界のトランザクションの監視を、ネットワークと提携して行うことができる。上の判定基準を用いて、ソーシャル・グラフ内の特定のリンクがネットワーク内に残る可能性が識別され、リンク切れ(link decay)及び相対的な関連性を予測するために組み合わされる。システム構成は、ブロックチェーンの現在の長さ及びその構成、当事者及びトランザクションに基づいて、ハッシュを作成することができる。そのハッシュは、部分的に、エンティティのライフ・ステータスを識別、記録及び処理するために、チェーンにわたるシステムのバックトラッキングによって作成される。例えば、ユーザの身体活動モデルの場合、ブロックチェーンにおける関連したトランザクションは、ジムの料金、試合の料金、トレーナの料金、イベント等を含むことができ、それらは、ソーシャル・ネットワーク減衰(decay)モデルにマッピングし戻される。進行中の手続きにおいて、実装のために設定された定められたキー性能インジケータ(KPI)(例えば、速度、リスク等)を監視し、ライフサイクルをもうすぐ終了するとして識別することができ、ある時点及び/又はサイクルを識別し、それらのイベントを閉鎖し、データをアーカイブして、新しいライフサイクルをサポートすることができる。
ブロックチェーン・ライフサイクル管理の1つの例において、上記からの、ある調査期間(例えば、12日又は12ヵ月等)の後、最適なチェーン長さを記載する「i」パターンを識別することができる。古いブロックチェーンが閉鎖され、新しいブロックチェーンが作成される際の連続性を保持するために、アクティブ・チェーンと非アクティブ・チェーンとの間のリンク機構を有するように、アーカイブ・チェーンを作成することができる。例えば、前のブロックチェーンへのリンク機構を有するように、新しいブロックチェーンが作成される。対応する「繰り越し(carry forward)」トランザクションを新しいチェーンに付加しながら、アセットについてのバランス/状態を閉鎖するために、台帳内の各アセットについて、トランザクションが古いチェーンに付加される。ひとたびそうしたブロックチェーン・トランザクションが、全てのアクティブ・アセットに対して付加されると、古いブロックチェーンをアーカイブすることができ、システムは、新しいブロックチェーンで継続することができる。
ブロックチェーンの自己分析の際、ブロックチェーンは、ライフサイクル・トリガ、ブロックチェーンの閾値サイズ、時間経過、又は例示的実施形態に記載される他の要因などの識別されたライフサイクルの終了に基づいて、ブロックチェーンを終了する必要があると識別することができる。この例においては、ブロックチェーンの長さが十分に長く、新しいブロックチェーンを作成する必要があるとき、その理由を識別し、それに応じて変更を行うことができる。一例において、ブロックチェーンのエンティティ/アセットの関連性のため、変更又はトリガにより、ブロックチェーンが終了されることがあり、関連したトランザクションの大部分がほぼ完了すると、それは、現在のブロックチェーンを閉鎖し、新しいブロックチェーンを作成するのに適切な時期であり得る。相対減衰率(すなわち、寿命)は、ソーシャル・ネットワークから導出することができる。例えば、トピック、スレッド、又はディスカッションが「猫」に関連する場合、ディスカッションの平均長さは4時間であり、「映画のディスカッション」についての平均ディスカッション長さは5日間である。また、関連性についてトピックが追跡され、その結果、「猫」のトピックは、通常、「映画のディスカッション」スレッドとは関連付けられず、従って、ディスカッションがほぼ同時に発生しても、それらのトピックを、切り離されたものとして別個のブロックチェーンに入れることは許容可能である。ブロックチェーンの管理者が、使用されているCPU、ストレージ、メモリ、及び/又は帯域幅が多過ぎる事例を識別した場合、それを、新しいブロックチェーンをいつ作成するかについての付加的な重み因子又はライフサイクル・トリガとして用いることができる。例えば、現在のブロックチェーンにおいて2300MBより多くが使用されている場合、分析を用いて、新しいブロックチェーンを作成することが論理的であるかどうかを判断することができる。分析に基づいて、現在のブロックチェーンは、依然として8900MBまで拡大し続けることができ、その理由は、ソーシャル・ライフサイクル・トリガの現在のステータスによって、ブロックチェーンを閉鎖するのはまだ論理的ではないためである。ブロックチェーンが閉鎖され、新しいブロックチェーンが作成されると、古いブロックチェーンを用いて、新しいブロックチェーン内に格納され、本質的により古い有効な/関連するチェーンへの「ポインタ」として機能する、繰り越し(carry-over)トランザクションを作成することができる。ブロックチェーン管理アプリケーション及び/又はシステムは、現在のブロックチェーンから関心あるオブジェクト又はエンティティを突き止めることができ、また、関連する既存の統計技術を用いて、関連性、減衰率及びクラスタ化に関してソーシャル・ネットワークを用いて、それらのオブジェクトをモデル化することができる。それらのオブジェクト、変更及び他の考慮事項を用いて、新しいブロックチェーンをどのように作成するかを決定することができる。
図1は、例示的実施形態による、ブロックチェーン閉鎖サイクルの論理図を示す。図1を参照すると、この構成100において、ブロックチェーン130はアクティブであり、現在新しいトランザクションを格納し、コミットしており、前のトランザクションの参照のために監査手続きを介して参照されているとき、ブロックチェーンを持続し、無期限に新しいトランザクションを付加することができる。監視中、1つ又は複数のライフサイクル・トリガ条件が識別され、新しいブロックチェーン140に対する必要性がトリガされることがある。ブロックチェーン分析器120は、メモリ内に格納され、ブロックチェーン・トランザクション、ブロックチェーンのサイズ、日付、及びそれらのトランザクション関係のライフサイクルに関する相対確度を提供するトランザクション間の相互関係であるトランザクション相互作用を識別するように構成された、進行中のソフトウェア・プロセス/モジュールとすることができる。ブロックチェーン・トランザクションについての例示的基準が識別され、適切な時期にブロックチェーンを閉鎖するために、最終的なハッシュが作成される122。前のブロックチェーンに関する情報が新しいトランザクションに書き込まれ124、この情報は、新しいトランザクションが作成され、古いブロックチェーン130が閉鎖され、新しいトランザクションの付加が遮断されたときに、新しいブロックチェーン140に付加される。
図2は、例示的実施形態による、ブロックチェーンの閉鎖及び新しいブロックチェーンの作成を実行するための例示的ブロックチェーン構成を示す。図2を参照すると、ブロックチェーン・システム200Aが、ブロックチェーン・トランザクションの付加及び検証プロセス(コンセンサス(合意))に関与する、割り当てられたピア・ブロックチェーン・ノード「ピア・ノード」282〜285とすることができる一群のブロックチェーン・ノード280などの特定の共通のブロックチェーン要素を含むことができる。ブロックチェーン・ピア・ノード280のいずれかが、新しいトランザクションを開始し、ブロックチェーンの不変台帳272に書き込もうとすることができ、これらのコピーは、ブロックチェーン270の土台となる物理インフラストラクチャ271上に格納される。この構成において、関係者によって求められるカスタマイズされた構成に従って作成され、これら自体の状態を維持し、これら自体のアセットを制御し、外部情報を受け取ることができる(例えば、チェーンコード、スマート・コントラクト等の)格納されたプログラム/アプリケーション・コード275にアクセス及び実行するためのAPI276にリンクされる1つ又は複数のアプリケーション277を含むことができる。このコードは、全てのブロックチェーン・ピア・ノード上に、分散型台帳に添付することによってトランザクションとしてデプロイし、インストールすることができる。
ブロックチェーン・プラットフォーム270は、新しいトランザクションを受け取って格納し、データ・エントリへのアクセスを求めている監査人へのアクセスを提供するのに必要な、ブロックチェーンのデータ、サービス(例えば、暗号信用サービス、仮想実行環境等)、及び土台となる物理コンピュータのインフラストラクチャといった様々な層を含む。ブロックチェーン層272は、プログラム・コードを処理し、物理インフラストラクチャ271を利用するのに必要な仮想実行環境へのアクセスを提供するインターフェースを公開することができる。暗号信用サービス273は、トランザクションを確認し、機密情報を維持するために用いられる。
図2のブロックチェーン構成は、ブロックチェーン・プラットフォーム270によって公開されたインターフェース及び提供されるサービスを介して、プログラム/アプリケーション・コード275を処理し、実行することができる。コードは、ブロックチェーン・アセットを制御することができ、例えば、コードは、データを格納し転送することができ、例えばスマート・コントラクト、及び条件又はその実行を受ける他のコード要素を有する関連したチェーンコードの形で、ブロックチェーンによって実行することができる。スマート・コントラクト275は、リマインダ、更新、及び/又は変更、更新等を受ける他の通知を実行するために作成され得る。スマート・コントラクトは、それ自体、権限付与及びアクセス要求、並びに使用と関連付けられた規則を識別するために使用することができる。1つの例において、ブロックチェーン閉鎖インジケータ又はトリガ212は、ピア・ノード280により識別され得る。ノードは、ブロックチェーンを閉鎖する必要性を識別し、次に、ある時点でコンセンサスに達し、新しいブロックの作成を可能にすることができる。また、閉鎖及び新しいブロックチェーン作成サイクルを実施するように、ブロックチェーン閉鎖動作214を実行することができる。
図3は、例示的実施形態による、ブロックチェーンのノード間のトランザクション・フロー200Bの例を示す。図3を参照すると、トランザクション・フローは、承認(endorsing)ピア・ノード281にアプリケーション・クライアント・ノード201によって送られたトランザクションの提案を含むことができる。承認ピア281は、クライアントの署名を確認し、チェーンコード機能を実行してトランザクションをシミュレートすることができる。出力は、チェーンコードの結果、チェーンコードで読み取られたキー/値のバージョンのセット(読み取りセット)、チェーンコードで書き込まれたキー/値のセット(書き込みセット)である。提案の応答が、エンドースメント署名と共にクライアント201に送り返される。クライアントは、トランザクションのペイロードの中にエンドースメントを集め、これを順序付けサービス・ノード284にブロードキャストする。次に、順序付けサービス・ノード284は、順序付けされたトランザクションをブロックとしてチャネル上の全てのピア281〜283に配信する。コミットの前に、各ピア281〜283は、トランザクションを検証(validate)することができる。例えば、これらのピアは、エンドースメント・ポリシーをチェックし、指定されたピアの正しい割り当てが結果に署名されたことを保証し、トランザクション・ペイロードに対する署名を認証することができる。
図3を参照すると、ステップ291において、クライアント・ノード201は、要求を構成し、承認者であるピア・ノード281に送ることによって、トランザクションを開始する。クライアント201は、NODE、JAVA、PYTHON等のような、サポートされるソフトウェア開発キット(SDK:software development kit)を利用するアプリケーションを含むことができ、これは、利用可能なAPIを用いてトランザクションの提案を生成する。提案は、データを読み取ること、及び/又は台帳に書き込むこと(すなわち、アセットについての新しいキー値ペア(key value pair)を書き込むこと)ができるように、チェーンコード機能を呼び出す要求である。SDKは、トランザクションの提案を適切に設計されたフォーマット(例えば、遠隔手続き呼び出し(gRPC)上のプロトコル・バッファ)の中にパッケージするためのくさびとしての役割を果たし、クライアントの暗号信任状を用いて、このトランザクションの提案に対する一意の署名を生成することができる。
それに応じて、承認ピア・ノード281は、(a)トランザクションの提案の形式が適格であること、(b)トランザクションが過去にまだサブミットされていないこと(リプレイ・アタックの保護)、(c)署名が有効であること、及び(d)サブミッタ(例におけるクライアント201)が、このチャネル上で、提案された動作を実施するために適切に権限付与されることを確認することができる。承認ピア・ノード281は、呼び出されたチェーンコード機能への引数としてトランザクションの提案の入力を用いることができる。次に、チェーンコードは、応答値、読み取りセット、及び書き込みセットを含むトランザクションの結果を生成するために、現在の状態のデータベースに対して実行される。しかしながら、この時点で、台帳に対して更新は行われない。ステップ292において、これらの値のセットは、承認ピア・ノード281の署名と共に、アプリケーションが消費するペイロードを解析するクライアント201のSDKへの提案応答として戻される。
それに応じて、クライアント201のアプリケーションは、承認ピアの署名を検査/確認し、提案応答を比較し、提案応答が同じであるかどうかを判断する。チェーンコードが台帳に問い合わせただけである場合、アプリケーションは、クエリの応答を検査し、典型的には、トランザクションを順序付けサービス284にサブミットしないであろう。クライアントのアプリケーションが、台帳を更新するために、トランザクションを順序付けサービス284にサブミットすることを意図する場合、アプリケーションは、サブミットする前に指定されたエンドースメント・ポリシーが満たされたかどうかを判断する(すなわち、トランザクションに必要なピア・ノードの両方が承認したかどうか)。ここで、クライアントは、トランザクションに対して複数の当事者のうちの1つのみを含むことができる。この場合、各クライアントには独自の承認ノードがあり、各承認ノードは、トランザクションに承認する必要がある。アーキテクチャは、アプリケーションが応答を検査しないこと又はそうでなければ未承認のトランザクションを転送することを選ぶ場合でも、エンドースメント・ポリシーがなお、ピアによって実施され、コミット検証段階で支持されるようになっている。
検査が成功した後、ステップ293において、クライアント201は、トランザクションの中にエンドースメントを集め、トランザクション・メッセージ内のトランザクションの提案及び応答を順序付けノード284にブロードキャストする。トランザクションは、読み取り/書き込みのセット、承認ピアの署名、及びチャネルIDを含むことができる。順序付けノード284は、その動作を行うためにトランザクションの内容全体を検査する必要はなく、順序付けノード284は単に、ネットワーク内の全てのチャネルからトランザクションを受け取り、チャネルによってそれらのトランザクションを時系列に順序付け、チャネルごとにトランザクションのブロックを作成することができる。
ステップ294において、トランザクションのブロックは、順序付けノード284から、チャネル上の全てのピア・ノード281〜283に配信される。ブロック内のトランザクションは、エンドースメント・ポリシーが満たされることを保証するため、及び、読み取りセットがトランザクションの実行によって生成されてから読み取りセットの変数に対する台帳の状態への変更がなかったことを保証するために検証される。ブロック内のトランザクションは、有効又は無効としてタグ付けされる。さらに、ステップ295において、各ピア・ノード281〜283は、ブロックをチャネルのチェーンに追加し、それぞれの有効なトランザクションに対して、書き込みセットが現在状態データベースにコミットされる。イベントは、トランザクション(呼び出し)が、チェーンに不変的に追加されたことをクライアント・アプリケーションに通知するため、並びにトランザクションが有効化されたか、又は無効化されたかについての通知のために発せられる。
図4は、例示的実施形態による、ブロックチェーン閉鎖サイクル及び新しいブロックチェーン生成サイクルを処理するためのシステム・メッセージング図300を示す。図4を参照すると、ブロックチェーン・ライフサイクルを管理するエンティティが、ブロックチェーン・ピア310、ブロックチェーン分析器モジュール320、及びブロックチェーン330を含むことができる。動作において、ブロックチェーンを閉鎖するために用いられるトリガ及び他の条件312を含む理由及びアクションを識別し、スマート・コントラクト又は分析器320により管理される他の処理エンジンにおける規則のセットとして格納することができる。条件が格納され314、ブロックチェーン330を監査及び監視する316ために用いられる。ブロックチェーン・トリガ条件の終わりを最終的に識別し318、それを用いて、最終的及び最後のトランザクションをブロックチェーンに書き込むための清算(winding-up)手続きとして、現在のブロックチェーンの最終的なトランザクション322を準備することができる。トランザクションがブロックチェーンに書き込まれ324、ブロックチェーンの完結(finalize)及び閉鎖の前に、条件が要求及び許可(すなわち、コンセンサス)を必要とし得る326。特定のトランザクションを指し示すために用いられる繰り越しトランザクション332、及び新しいブロックチェーンにおいて参照目的のために必要とされる可能性が高い関連情報並びにブロックチェーンを表すハッシュ328を計算することができる。次に、新しいブロックチェーンを作成し334、繰り越しトランザクションをポピュレートする336。
図5は、例示的実施形態による、ブロックチェーン・ライフサイクルを管理する例示的方法のフロー図を示す。図5を参照すると、方法400は、ブロックチェーンの1つ又は複数の属性を識別すること412、1つ又は複数の属性に基づいてブロックチェーンを閉鎖すべきであると判断すること414、ブロックチェーンを閉鎖すること416、新しいブロックチェーンを作成すること418、ブロックチェーンから1つ又は複数のアセットを識別すること422、及びブロックチェーンの1つ又は複数のアセットに基づいてキャリーオーバー・ブロックチェーンを作成すること424を提供することができる。1つ又は複数の属性は、識別されると、ブロックチェーンを閉鎖するライフサイクル・トリガを含み、ライフサイクル・トリガは、多数のブロックチェーン・トランザクション、ブロックチェーン・トランザクションの1つ又は複数を監査してからの時間経過、満了日、及びブロックチェーンの閾値サイズを含むことができる。1つ又は複数のアセットは、アクティブなライフサイクルを有するアクティブ・アセットと、非アクティブ・アセットとを提供することができる。方法はまた、繰り越しトランザクションを新しいブロックチェーン内に格納することと、1つ又は複数のアセットに基づいて1つ又は複数のブロックチェーン・トランザクションを作成することとを含むこともでき、そこで、1つ又は複数のブロックチェーン・トランザクションは、1つ又は複数のアセットの完了(close-out)状態を表すように作成され、繰り越しトランザクションは、完了状態を受け取っていない1つ又は複数のアセットのアクティブなアセット情報を含む。
図6は、例示的実施形態による、ブロックチェーン・ライフサイクルを管理する例示的方法の別のフロー図を示す。図6を参照すると、方法450は、ブロックチェーンの1つ又は複数の属性を識別すること452、1つ又は複数の属性に基づいてブロックチェーンを閉鎖すべきであると判断すること454、ブロックチェーンを閉鎖すること456、新しいブロックチェーンを作成すること458、ブロックチェーン及び新しいブロックチェーン上のアセット及びアセットと関連付けられたアセットの権利(asset rights)を判断すること462、並びにアセット及びアセットの権利に基づいてブロックチェーン及び新しいブロックチェーンの1つ又は複数への権限付与キーを作成すること464を含む。
この実施形態において、ブロックチェーンの閉鎖は、ブロックチェーンの種々の情報/アセットの権利を新しいブロックチェーンの1又は複数のメンバーに転送すべきかどうかを確立するための機会を表す。ブロックチェーンを閉鎖する理由の一つは、ブロックチェーンの権利をセキュア保護し、特に、ブロックチェーンについてのアセット情報又は権利及び既知の当事者のために、付加的な当事者がブロックチェーンにアクセスできないようにすることであり得る。新しいブロックチェーン及び古いブロックチェーンの両方若しくは一方についてアクセスが特定の当事者に与えられること、又はブロックチェーンのどちらについても、アクセスが特定の当事者に与えられないことがある。ブロックチェーンにおけるアセット情報を、アクセスする価値があるメンバー及びアクセスする価値がないメンバーと対にすることができる。権限付与キーは、特定のメンバーが、古いブロックチェーン内にアーカイブに入れられた情報にアクセスするのを可能にする一方で、他のメンバーはそうした情報へのアクセスを受け取れなくすることができる。また、全てのメンバーは、新しいブロックチェーンに書き込まれるアセットに関するより多くの情報を待つ間、新しいブロックチェーンが閉鎖させられ、別の新しいブロックチェーンが開始されるまで、新しいブロックチェーンにアクセスすることができる。
上記の実施形態は、ハードウェアにおいて、プロセッサによって実行されるコンピュータ・プログラムにおいて、ファームウェアにおいて、又は上記の組み合わせにおいて実装することができる。コンピュータ・プログラムは、ストレージ媒体などのコンピュータ可読ストレージ上に具体化され得る。例えば、コンピュータ・プログラムは、ランダム・アクセス・メモリ(「RAM」)、フラッシュ・メモリ、読み出し専用メモリ(「ROM」)、消去可能プログラム可能読み出し専用メモリ(「EPROM」)、電気的消去可能プログラム可能読み出し専用メモリ(「EEPROM」)、レジスタ、ハードディスク、取り外し可能なディスク、コンパクト・ディスク読み出し専用メモリ(CD−ROM)、又は当技術分野において知られる任意の他の形態のストレージ媒体内に存在し得る。
例示的なストレージ媒体は、プロセッサがストレージ媒体から情報を読み取り、ストレージ媒体に情報を書き込むことができるように、プロセッサに結合することができる。代案においては、ストレージ媒体はプロセッサと一体とすることができる。プロセッサ及びストレージ媒体は、特定用途向け集積回路(「ASIC」)内に存在し得る。代案においては、プロセッサ及びストレージ媒体は、個別のコンポーネントとして存在し得る。例えば、図7は、上述したコンポーネントのいずれかなどで表すか、又はそれらに統合することができる、例示的なコンピュータ・システム・アーキテクチャ500を示している。
図7は、本明細書に記載された本出願の実施形態の使用又は機能の範囲に関して、いかなる制限を示唆することも意図されていない。それにも関わらず、コンピューティング・ノード500は、上述した機能のいずれかを実装すること及び/又は実行することができる。
コンピューティング・ノード500内には、他の多数の汎用又は専用コンピューティング・システム環境又は構成で動作できるコンピュータ・システム/サーバ502が存在する。コンピュータ・システム/サーバ502と共に使用するのに適した周知のコンピューティング・システム、環境、及び/又は構成の例は、これらに限定されるものではないが、パーソナル・コンピュータ・システム、サーバ・コンピュータ・システム、シン・クライアント、シック・クライアント、手持ち式若しくはラップトップ・デバイス、マルチプロセッサ・システム、マイクロプロセッサベース・システム、セット・トップ・ボックス、プログラム可能民生電子機器、ネットワークPC、ミニコンピュータ・システム、メインフレーム・コンピュータ・システム、及び上記の任意のシステム又はデバイスを含む分散クラウド・コンピューティング環境などを含む。
コンピュータ・システム/サーバ502は、プログラム・モジュールなどの、コンピュータ・システムによって実行可能な命令との一般的な関連において説明することができる。通常、プログラム・モジュールは、特定のタスクを実行する、又は特定の抽象データ型を実装するルーチン、プログラム、オブジェクト、コンポーネント、論理、データ構造などを含むことができる。コンピュータ・システム/サーバ502は、通信ネットワークを介してリンクされた遠隔処理デバイスによってタスクが実行される、分散型クラウド・コンピューティング環境において実施することができる。分散型クラウド・コンピューティング環境において、プログラム・モジュールは、メモリ・ストレージ・デバイスを含む、ローカル及び遠隔の両方のコンピュータ・システム・ストレージ媒体内に配置することができる。
図7に示すように、クラウド・コンピューティング・ノード500内のコンピュータ・システム/サーバ502は、汎用コンピューティング・デバイスの形態で示される。コンピュータ・システム/サーバ502のコンポーネントは、これらに限定されるものではないが、1つ又は複数のプロセッサ又は処理ユニット504、システム・メモリ506、及びシステム・メモリ506を含む様々なシステム・コンポーネントをプロセッサ504に接続するバスを含むことができる。
バスは、メモリ・バス又はメモリ・コントローラ、ペリフェラル・バス、アクセラレーテッド・グラフィックス・ポート、及び任意の様々なバス・アーキテクチャを用いるプロセッサ若しくはローカル・バスを含む、1つ又は複数の任意のタイプのバス構造を表す。例として、制限なく、そのようなアーキテクチャは、Industry Standard Architecture(ISA)バス、Micro Channel Architecture(MCA)バス、Enhanced ISA(EISA)バス、Video Electronics Standards Association(VESA)ローカル・バス、及びPeripheral Component Interconnects(”PCI)バスを含む。
コンピュータ・システム/サーバ502は、一般的に、様々なコンピュータ・システム可読媒体を含む。そのような媒体は、コンピュータ・システム/サーバ502によってアクセス可能な任意の使用可能な媒体とすることができ、揮発性及び不揮発性媒体、取り外し可能及び取り外し不能媒体の両方を含む。システム・メモリ506は、1つの実施形態においては、他の図のフロー図を実装する。システム・メモリ506は、ランダム・アクセス・メモリ(RAM)510及び/又はキャッシュ・メモリ512などの、揮発性メモリの形態のコンピュータ・システム可読媒体を含むことができる。コンピュータ・システム/サーバ502は、他の取り外し可能/取り外し不能、揮発性/不揮発性のコンピュータ・システム・ストレージ媒体をさらに含むことができる。単なる例として、取り外し不能、不揮発性の磁気媒体(図示されておらず、一般的には「ハード・ドライブ」と呼ばれる)に対する読み取りと書き込みを行うために、ストレージ・システム514を提供することができる。図示されていないが、取り外し可能、不揮発性の磁気ディスク(例えば、「フロッピー・ディスク」)に対する読み取りと書き込みを行うための磁気ディスク・ドライブ、及びCD−ROM、DVD−ROM、又は他の光媒体などの取り外し可能、不揮発性の光ディスクに対する読み取りと書き込みを行うための光ディスク・ドライブを提供することができる。そのような例では、それぞれを、1つ又は複数のデータ媒体インターフェースによってバスに接続することができる。以下に詳細に示され、説明されるように、メモリ506は、本出願の様々な実施形態の機能を実行するように構成されたプログラム・モジュールのセット(例えば、少なくとも1つ)を有する少なくとも1つのプログラム製品を含むことができる。
例えば、プログラム・モジュール518のセット(少なくとも1つ)を有するプログラム/ユーティリティ516がメモリ506に格納され得るが、これに限定されることなく、オペレーティング・システム、1つ又は複数のアプリケーション・プログラム、他のプログラム・モジュール、及びプログラム・データも格納され得る。オペレーティング・システム、1つ又は複数のアプリケーション・プログラム、他のプログラム・モジュール、及びプログラム・データ又はこれらの組み合わせの各々は、ネットワーク環境の実装を含むことができる。プログラム・モジュール518は、通常、本明細書に記載された本出願の様々な実施形態の機能及び/又は方法を実行する。
当業者によって理解されるように、本出願の態様は、システム、方法、又はコンピュータ・プログラム製品として具体化することができる。従って、本出願の態様は、完全にハードウェアの実施形態、完全にソフトウェアの実施形態(ファームウェア、常駐ソフトウェア、マイクロコードなどを含む)、又はソフトウェアの態様とハードウェアの態様を組み合わせる実施形態の形態を取ることができ、これらは全て、本明細書では、一般に「回路」、「モジュール」、又は「システム」と呼ぶことができる。さらに、本出願の態様は、コンピュータ可読プログラム・コードがそこに具体化されている1つ又は複数のコンピュータ可読媒体において具体化されたコンピュータ・プログラム製品の形態を取ることができる。
また、コンピュータ・システム/サーバ502は、キーボード、ポインティング・デバイス、ディスプレイ522などの1つ又は複数の外部デバイス520、ユーザがコンピュータ・システム/サーバ502と対話できるようにする1つ又は複数のデバイス、及び/又はコンピュータ・システム/サーバ502が1つ又は複数の他のコンピューティング・デバイスと通信するのを可能にする任意のデバイス(例えば、ネットワーク・カード、モデムなど)と通信することもできる。このような通信は、I/Oインターフェース524を介して行うことができる。さらに、コンピュータ・システム/サーバ502は、ネットワーク・アダプタ526を介して、ローカル・エリア・ネットワーク(LAN)、一般的な広域ネットワーク(WAN)、及び/又はパブリック・ネットワーク(例えば、インターネット)などの1つ又は複数のネットワークと通信することができる。図示されるように、ネットワーク・アダプタ526は、バスを介してコンピュータ・システム/サーバ502の他のコンポーネントと通信する。図示されていないが、他のハードウェア・コンポーネント及び/又はソフトウェア・コンポーネントを、コンピュータ・システム/サーバ502と併用できるということを理解されたい。例として、これらに限定されるものではないが、マイクロコード、デバイス・ドライバ、冗長処理ユニット、外部ディスク・ドライブ・アレイ、RAIDシステム、テープ・ドライブ、及びデータ・アーカイブ・ストレージ・システムなどが挙げられる。
システム、方法、及び非一時的コンピュータ可読媒体のうちの少なくとも1つの例示的実施形態が添付図面において示され、前述の詳細な説明において説明されたが、本出願が、開示された実施形態に限定されず、以下の特許請求の範囲によって示され、定義されるように、多数の再配置、変更、及び置き換えを行い得ることが理解されるであろう。例えば、様々な図のシステムの機能は、本明細書に記載されたモジュール又はコンポーネントのうちの1つ又は複数によって、又は分散型アーキテクチャにおいて実行することができ、送信機、受信機、又はその両方の対を含むこともできる。例えば、個々のモジュールによって実行される機能の全部又は一部は、それらのモジュールのうちの1つ又は複数によって実行され得る。さらに、本明細書に記載された機能は、様々な時間に、様々なイベントに関して、モジュール又はコンポーネントの内部または外部で、実行することができる。また、様々なモジュールの間で送信される情報は、データ・ネットワーク、インターネット、音声ネットワーク、インターネット・プロトコル・ネットワーク、無線デバイス、有線デバイスのうちの少なくとも1つを介して、及び/又は複数のプロトコルを介して、モジュール間で送信することができる。また、モジュールのいずれかによって送信又は受信されるメッセージは、直接的に、及び/又は他のモジュールのうちの1つ又は複数を介して、送信又は受信され得る。
当業者であれば、「システム」を、パーソナル・コンピュータ、サーバ、コンソール、携帯情報端末(PDA)、携帯電話、タブレット・コンピューティング・デバイス、スマートフォン、又は任意の他の適切なコンピューティング・デバイス、又はデバイスの組み合わせとして具体化できるとことを理解するであろう。「システム」によって実行されている上述の機能を提示することは、本出願の範囲を限定するように全く意図されておらず、多くの実施形態のうちの1つの例を提供するよう意図されている。実際に、本明細書で開示された方法、システム、及び装置は、計算技術に一致する局所的な分散された形態で実装することができる。
本明細書において説明されたシステムの特徴の一部が、それらの実装の独立性を特に強調するために、モジュールとして提示されていることに留意されたい。例えば、モジュールは、カスタム超大規模集積(VLSI)回路又はゲート・アレイ、論理チップなどの市販の半導体、トランジスタ、又は他の個別のコンポーネントを含むハードウェア回路として実装することができる。モジュールは、フィールド・プログラマブル・ゲート・アレイ、プログラマブル・アレイ論理、プログラマブル論理デバイス、グラフィックス処理ユニットなどの、プログラム可能なハードウェア・デバイスにおいて実装することができる。
モジュールは、様々なタイプのプロセッサによって実行するために、ソフトウェアにおいて少なくとも部分的に実装することもできる。例えば、実行可能コードの識別されたユニットは、例えば、オブジェクト、プロシージャ、又は関数として編成することができるコンピュータ命令の1つ又は複数の物理又は論理ブロックを含むことができる。それにも関わらず、識別されたモジュールの実行ファイルは、物理的に一緒に配置する必要はなく、異なる位置に格納された異種の命令を含むことができ、それらの命令は、論理的に一緒に結合された場合にモジュールを構成し、モジュールについての規定された目的を達成する。さらに、モジュールは、コンピュータ可読媒体上に格納することができ、このコンピュータ可読媒体は、例えば、ハード・ディスク・ドライブ、フラッシュ・デバイス、ランダム・アクセス・メモリ(RAM)、テープ、又はデータの格納に用いられる任意の他のそうした媒体とすることもできる。
実際に、実行可能コードのモジュールは、単一の命令、又は多くの命令とすることができ、幾つかの異なるコード・セグメントにわたって、異なるプログラム間、及び幾つかのメモリ・デバイスにまたがって、分散することもできる。同様に、動作データが識別され、本明細書ではモジュール内で示され、任意の適切な形態で具体化され、任意の適切なタイプのデータ構造内で編成することが可能である。動作データは、単一のデータ・セットとして収集されてよく、又は異なるストレージ・デバイスを含む、異なる位置にわたって分散されてよく、システム若しくはネットワーク上の単なる電子信号として、少なくとも部分的に存在することができる。
本明細書の図において概略的に説明され、示されるように、本出願のコンポーネントは、種々の異なる構成で配置及び設計され得ることが、容易に理解されるであろう。従って、実施形態の詳細な説明は、特許請求される本出願の範囲を限定するよう意図されておらず、単に、本出願の選択された実施形態を表すに過ぎない。
当業者は、開示される順序とは異なる順序でステップを用いて、及び/又は開示される構成におけるハードウェア要素とは異なるハードウェア要素を用いて、上記を実施できることを容易に理解するであろう。従って、本出願は、これらの好ましい実施形態に基づいて説明されたが、特定の変更、変形、及び代替の構成が明白であるということは、当業者には明らかであろう。
本出願の好ましい実施形態が説明されたが、説明された実施形態は単なる例であり、それらの実施形態と同等のもの及びそれらの実施形態に対する変更の完全な範囲(例えば、プロトコル、ハードウェア・デバイス、ソフトウェア・プラットフォームなど)で考えた場合、本出願の範囲が添付の特許請求の範囲のみによって定義されるべきであることを理解されたい。
100:構成
120、320:ブロックチェーン分析器
130、330:(古い)ブロックチェーン
140:新しいブロックチェーン
200A:ブロックチェーン・システム
200B:トランザクション・フロー
201:クライアント・ノード
212:ブロックチェーン閉鎖インジケータ
270:ブロックチェーン・プラットフォーム
271:インフラストラクチャ
272:ブロックチェーン層
273:暗号信用サービス
275:プログラム/アプリケーション・コード(スマート・コントラクト)
276:API
277:アプリケーション
280:ブロックチェーン・ノード
281:第1のピア・ノード(承認ピア・ノード)
282:第2のピア・ノード
283:第3のピア・ノード
284:第4のピア・ノード(順序付けノード)
310:ブロックチェーン・ピア
500:コンピューティング・ノード
502:コンピュータ・システム/サーバ
504:プロセッサ又は処理ユニット
506:システム・メモリ
516:プログラム/ユーティリティ
518:プログラム・モジュール
520:外部デバイス
ブロックチェーン・ライフサイクル管理のための方法、装置、及びコンピュータ・プログラムを提供する。

Claims (20)

  1. ブロックチェーンの1つ又は複数の属性を識別することと、
    前記1つ又は複数の属性に基づいて、前記ブロックチェーンを閉鎖すべきであると判断することと、
    前記ブロックチェーンを閉鎖することと、
    新しいブロックチェーンを作成することと、
    前記ブロックチェーンから1つ又は複数のアセットを識別することと、
    前記ブロックチェーンの前記1つ又は複数のアセットに基づいて、前記新しいブロックチェーンに対する繰り越しブロックチェーンを作成することと、
    を含む、方法。
  2. 前記1つ又は複数の属性は、識別されると、前記ブロックチェーンを閉鎖させるライフサイクル・トリガを含み、前記ブロックチェーンのライフサイクルは、ソーシャル・ネットワークから識別される、請求項1に記載の方法。
  3. 前記ライフサイクル・トリガは、ブロックチェーン・トランザクションの数、前記ブロックチェーン・トランザクションの1つ又は複数が監査されてからの経過時間、満了日、及び前記ブロックチェーンの閾値サイズを含む、請求項2に記載の方法。
  4. 前記1つ又は複数のアセットは、アクティブ・ライフサイクルを有するアクティブ・アセット、及び非アクティブ・アセットを含む、請求項1に記載の方法。
  5. 前記繰り越しトランザクションを前記新しいブロックチェーン内に格納することをさらに含む、請求項1に記載の方法。
  6. 前記1つ又は複数のアセットに基づいて1つ又は複数のブロックチェーン・トランザクションを作成することをさらに含み、前記1つ又は複数のブロックチェーン・トランザクションは、前記1つ又は複数のアセットの完了状態を表すように作成される、請求項1に記載の方法。
  7. 前記繰り越しトランザクションは、完了ステータスを受け取っていない前記1つ又は複数のアセットのアクティブ・アセット情報を含む、請求項1に記載の方法。
  8. ブロックチェーンの1つ又は複数の属性を識別し、
    前記1つ又は複数の属性に基づいて、前記ブロックチェーンを閉鎖すべきであると判断し、
    前記ブロックチェーンを閉鎖し、
    新しいブロックチェーンを作成し、
    前記ブロックチェーンから1つ又は複数のアセットを識別し、
    前記ブロックチェーンの前記1つ又は複数のアセットに基づいて、前記新しいブロックチェーンに対する繰り越しブロックチェーンを作成する、
    ように構成されたプロセッサを含む、装置。
  9. 前記1つ又は複数の属性は、識別されると、前記ブロックチェーンを閉鎖させるライフサイクル・トリガを含み、前記ブロックチェーンのライフサイクルは、ソーシャル・ネットワークから識別される、請求項8に記載の装置。
  10. 前記ライフサイクル・トリガは、ブロックチェーン・トランザクションの数、前記ブロックチェーン・トランザクションの1つ又は複数が監査されてからの経過時間、満了日、及び前記ブロックチェーンの閾値サイズを含む、請求項9に記載の装置。
  11. 前記1つ又は複数のアセットは、アクティブ・ライフサイクルを有するアクティブ・アセット、及び非アクティブ・アセットを含む、請求項8に記載の装置。
  12. 前記プロセッサはさらに、
    前記繰り越しトランザクションを前記新しいブロックチェーン内に格納するように構成される、請求項8に記載の装置。
  13. 前記プロセッサはさらに、
    前記1つ又は複数のアセットに基づいて1つ又は複数のブロックチェーン・トランザクションを作成するように構成され、前記1つ又は複数のブロックチェーン・トランザクションは、前記1つ又は複数のアセットの完了状態を表すように作成される、請求項8に記載の装置。
  14. 前記繰り越しトランザクションは、完了ステータスを受け取っていない前記1つ又は複数のアセットのアクティブ・アセット情報を含む、請求項8に記載の装置。
  15. 実行されるとき、プロセッサに、
    ブロックチェーンの1つ又は複数の属性を識別することと、
    前記1つ又は複数の属性に基づいて、前記ブロックチェーンを閉鎖すべきであると判断することと、
    前記ブロックチェーンを閉鎖することと、
    新しいブロックチェーンを作成することと、
    前記ブロックチェーンから1つ又は複数のアセットを識別することと、
    前記ブロックチェーンの前記1つ又は複数のアセットに基づいて、前記新しいブロックチェーンに対する繰り越しブロックチェーンを作成することと、
    を実行させる命令を格納するように構成された、非一時的コンピュータ可読ストレージ媒体。
  16. 前記1つ又は複数の属性は、識別されると、前記ブロックチェーンを閉鎖させるライフサイクル・トリガを含み、前記ブロックチェーンのライフサイクルは、ソーシャル・ネットワークから識別される、請求項15に記載の非一時的コンピュータ可読ストレージ媒体。
  17. 前記ライフサイクル・トリガは、ブロックチェーン・トランザクションの数、前記ブロックチェーン・トランザクションの1つ又は複数が監査されてからの経過時間、満了日、及び前記ブロックチェーンの閾値サイズを含む、請求項16に記載の非一時的コンピュータ可読ストレージ媒体。
  18. 前記1つ又は複数のアセットは、アクティブ・ライフサイクルを有するアクティブ・アセット、及び非アクティブ・アセットを含む、請求項15に記載の非一時的コンピュータ可読ストレージ媒体。
  19. 前記プロセッサはさらに、
    前記繰り越しトランザクションを前記新しいブロックチェーン内に格納することを実行するように構成される、請求項15に記載の非一時的コンピュータ可読ストレージ媒体。
  20. 前記プロセッサはさらに、
    前記1つ又は複数のアセットに基づいて1つ又は複数のブロックチェーン・トランザクションを作成することをさらに含み、前記1つ又は複数のブロックチェーン・トランザクションは、前記1つ又は複数のアセットの完了状態を表すように作成される、請求項15に記載の非一時的コンピュータ可読ストレージ媒体。
JP2020534294A 2017-12-20 2018-12-18 ブロックチェーン・ライフサイクルを管理するための方法、装置及びコンピュータ・プログラム Active JP7028532B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/848,036 2017-12-20
US15/848,036 US10833844B2 (en) 2017-12-20 2017-12-20 Blockchain lifecycle management
PCT/EP2018/085456 WO2019121656A1 (en) 2017-12-20 2018-12-18 Blockchain lifecycle management

Publications (2)

Publication Number Publication Date
JP2021507407A true JP2021507407A (ja) 2021-02-22
JP7028532B2 JP7028532B2 (ja) 2022-03-02

Family

ID=64899315

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020534294A Active JP7028532B2 (ja) 2017-12-20 2018-12-18 ブロックチェーン・ライフサイクルを管理するための方法、装置及びコンピュータ・プログラム

Country Status (5)

Country Link
US (1) US10833844B2 (ja)
EP (1) EP3724786A1 (ja)
JP (1) JP7028532B2 (ja)
CN (1) CN111417941B (ja)
WO (1) WO2019121656A1 (ja)

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210035217A1 (en) * 2018-02-08 2021-02-04 2Bc Innovations, Llc Updating blockchain-encoded records of rived longevity-contingent instruments
US20210099284A1 (en) * 2018-02-08 2021-04-01 2Bc Innovations, Llc Modifying blockchain-encoded records of rived longevity-contingent instruments
US20210097610A1 (en) * 2018-02-08 2021-04-01 2Bc Innovations, Llc Utilizing blockchain-encoded records for rived longevity-contingent instruments
US12008649B1 (en) * 2018-02-14 2024-06-11 Equity Shift, Inc. Blockchain instrument for transferable equity
US11625783B1 (en) * 2018-02-14 2023-04-11 Equity Shift, Inc. Blockchain instrument for transferable equity
US10713722B2 (en) 2018-02-14 2020-07-14 Equity Shift, Inc. Blockchain instrument for transferable equity
US10699340B2 (en) * 2018-02-14 2020-06-30 Equity Shift, Inc. Blockchain instrument for transferable equity
US11164254B1 (en) 2018-02-14 2021-11-02 Equity Shift, Inc. Blockchain instrument for transferable equity
US11836720B2 (en) * 2018-03-12 2023-12-05 The Pen Infinitely scalable cryptocurrency system with fast, secure verification
US10929352B2 (en) * 2018-05-29 2021-02-23 Oracle International Corporation Securing access to confidential data using a blockchain ledger
US11521232B2 (en) 2018-06-04 2022-12-06 Yahoo Ad Tech Llc Method and system for identifying recipients of a reward associated with a conversion
US11599897B2 (en) * 2018-06-04 2023-03-07 Yahoo Ad Tech Llc Method and system for identifying recipients of a reward associated with a conversion
US11625748B2 (en) 2018-06-04 2023-04-11 Yahoo Ad Tech Llc Method and system for identifying recipients of a reward associated with a conversion
US11328278B2 (en) * 2018-06-29 2022-05-10 Xenial, Inc. Point of sale terminal system and multi terminal network
US10671315B2 (en) 2018-08-17 2020-06-02 Bank Of America Corporation Blockchain architecture for selective data restore and migration
US10671515B1 (en) * 2018-11-30 2020-06-02 Bank Of America Corporation Recording and playback of electronic event sequence in a distributed ledger system
US10681083B2 (en) 2018-12-29 2020-06-09 Alibaba Group Holding Limited System and method for detecting replay attack
US10735464B2 (en) 2018-12-29 2020-08-04 Alibaba Group Holding Limited System and method for detecting replay attack
US11283634B2 (en) 2018-12-29 2022-03-22 Advanced New Technologies Co., Ltd. System and method for detecting replay attack
EP3545665B1 (en) 2018-12-29 2023-05-03 Advanced New Technologies Co., Ltd. System and method for detecting replay attack
US11729175B2 (en) 2019-04-25 2023-08-15 Comcast Cable Communications, Llc Blockchain folding
US10860259B1 (en) * 2019-07-17 2020-12-08 Tyson York Winarski Multi-tiered storage system for blockchain
EP4107645A1 (en) * 2020-02-19 2022-12-28 nChain Licensing AG Methods, data structures, and systems for ordered data logging
CN115151899A (zh) * 2020-03-04 2022-10-04 三菱电机株式会社 管理装置、管理方法和管理程序
WO2021220360A1 (ja) * 2020-04-27 2021-11-04 三菱電機株式会社 管理装置、管理方法、及び、管理プログラム
WO2022245351A1 (en) * 2021-05-19 2022-11-24 Micro Focus Llc Blockchain consolidation with active archiving
US11522947B1 (en) * 2021-06-09 2022-12-06 Bank Of America Corporation System for implementing hybrid cloud computation engines using infrastructure optimization

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160330034A1 (en) * 2015-05-07 2016-11-10 Blockstream Corporation Transferring ledger assets between blockchains via pegged sidechains
US20170116693A1 (en) * 2015-10-27 2017-04-27 Verimatrix, Inc. Systems and Methods for Decentralizing Commerce and Rights Management for Digital Assets Using a Blockchain Rights Ledger
WO2017136879A1 (en) * 2016-02-08 2017-08-17 Moloney Lindsay A system and method for document information authenticity verification
WO2017145019A1 (en) * 2016-02-23 2017-08-31 nChain Holdings Limited Registry and automated management method for blockchain-enforced smart contracts

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7904450B2 (en) * 2008-04-25 2011-03-08 Wilson Kelce S Public electronic document dating list
US20160342977A1 (en) 2015-05-20 2016-11-24 Vennd.io Pty Ltd Device, method and system for virtual asset transactions
GB201511964D0 (en) 2015-07-08 2015-08-19 Barclays Bank Plc Secure digital data operations
US11941588B2 (en) * 2015-11-06 2024-03-26 Cable Television Laboratories, Inc. Systems and methods for blockchain virtualization and scalability
EP3411824B1 (en) * 2016-02-04 2019-10-30 Nasdaq Technology AB Systems and methods for storing and sharing transactional data using distributed computer systems
US10417188B2 (en) * 2016-05-27 2019-09-17 Mastercard International Incorporated Method and system for transferring trust across block chain segments
US20180062831A1 (en) * 2016-08-31 2018-03-01 Jiangang Zhang Massively Scalable Blockchain Ledger
US10587628B2 (en) * 2016-09-29 2020-03-10 Microsoft Technology Licensing, Llc Verifiable outsourced ledgers
CN106506203B (zh) * 2016-10-25 2019-12-10 杭州云象网络技术有限公司 一种应用于区块链的节点监控系统
US10942956B2 (en) * 2016-10-27 2021-03-09 International Business Machines Corporation Detecting medical fraud and medical misuse using a shared virtual ledger
WO2018083712A1 (en) * 2016-11-04 2018-05-11 Jain Kamal Kant System and method for allocation, management and peer review based transfer of electronic tokens
CN106778329B (zh) * 2016-11-28 2020-12-04 中国银行股份有限公司 一种区块链智能合约模板动态更新方法、装置及系统
US10523421B2 (en) * 2016-11-30 2019-12-31 International Business Machines Corporation Checkpoints for permissionless blockchains
CN106961481B (zh) * 2017-04-01 2020-04-07 中链科技有限公司 基于区块链技术的不良资产信息共享方法和服务器
US11240035B2 (en) * 2017-05-05 2022-02-01 Jeff STOLLMAN Systems and methods for extending the utility of blockchains through use of related child blockchains
US10341105B2 (en) * 2017-06-07 2019-07-02 At&T Intellectual Property I, L.P. Blockchain-based social media history maps
US11256799B2 (en) * 2017-08-29 2022-02-22 Seagate Technology Llc Device lifecycle distributed ledger
US10361870B2 (en) * 2017-09-14 2019-07-23 The Toronto-Dominion Bank Management of cryptographically secure exchanges of data using permissioned distributed ledgers
US11159537B2 (en) * 2017-11-30 2021-10-26 Bank Of America Corporation Multicomputer processing for data authentication and event execution using a blockchain approach

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160330034A1 (en) * 2015-05-07 2016-11-10 Blockstream Corporation Transferring ledger assets between blockchains via pegged sidechains
US20170116693A1 (en) * 2015-10-27 2017-04-27 Verimatrix, Inc. Systems and Methods for Decentralizing Commerce and Rights Management for Digital Assets Using a Blockchain Rights Ledger
WO2017136879A1 (en) * 2016-02-08 2017-08-17 Moloney Lindsay A system and method for document information authenticity verification
WO2017145019A1 (en) * 2016-02-23 2017-08-31 nChain Holdings Limited Registry and automated management method for blockchain-enforced smart contracts

Also Published As

Publication number Publication date
EP3724786A1 (en) 2020-10-21
WO2019121656A1 (en) 2019-06-27
US20190190697A1 (en) 2019-06-20
JP7028532B2 (ja) 2022-03-02
US10833844B2 (en) 2020-11-10
CN111417941A (zh) 2020-07-14
CN111417941B (zh) 2023-09-15

Similar Documents

Publication Publication Date Title
JP7028532B2 (ja) ブロックチェーン・ライフサイクルを管理するための方法、装置及びコンピュータ・プログラム
EP3804217B1 (en) Efficient validation for blockchain
EP3776208B1 (en) Runtime self-correction for blockchain ledgers
JP7250568B2 (ja) ブロックチェーン・ノード、ブロックチェーン・ノードの方法、およびブロックチェーン・ノードのコンピュータ・プログラム
US10963400B2 (en) Smart contract creation and monitoring for event identification in a blockchain
US10985907B2 (en) Identifying faults in a blockchain ordering service
US11677542B2 (en) Ad-hoc smart contract generation in a blockchain
US11296864B2 (en) Identifying faults in a blockchain ordering service
US11924323B2 (en) On-chain governance of blockchain
US20200013025A1 (en) Conditional deferred transactions for blockchain
US11663197B2 (en) Convolutional and ephemeral datachains with conditional period
US11917088B2 (en) Integrating device identity into a permissioning framework of a blockchain
US11489662B2 (en) Special relationships in a blockchain
CN110874739A (zh) 实现高完整性、高带宽、低延迟、安全处理的分布式计算和存储网络
US11194555B2 (en) Optimization of execution of smart contracts
US11070563B2 (en) Trace-based transaction validation and commitment
US20210297264A1 (en) Enabling consensus in distributed transaction processing systems
US11196543B2 (en) Minimum evidence calculation in blockchain transactions
US11782823B2 (en) Automatically capturing weather data during engineering tests
US20220051129A1 (en) Blockchain-enabled model drift management
US11249949B2 (en) Batch processing
CN114579585A (zh) 区块链选择性世界状态数据库

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200820

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210525

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210820

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20211005

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220105

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

RD14 Notification of resignation of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7434

Effective date: 20220208

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220215

R150 Certificate of patent or registration of utility model

Ref document number: 7028532

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150