(57)【要約】【課題】  ブロックチェーン・ライフサイクル管理のための方法、装置、及びコンピュータ・プログラムを提供する。【解決手段】  例示的動作は、ブロックチェーンの１つ又は複数の属性を識別すること、１つ又は複数の属性に基づいてブロックチェーンを閉鎖すべきであると判断すること、ブロックチェーンを閉鎖すること、新しいブロックチェーンを作成すること、ブロックチェーンから１つ又は複数のアセットを識別すること、及びブロックチェーンの１つ又は複数のアセットに基づいて新しいブロックチェーンに対する繰り越しブロックチェーンを作成することのうちの１つ又は複数を含むことができる。【選択図】      図４
2021507407.tif 000002
【特許請求の範囲】
【請求項１】
ブロックチェーンの１つ又は複数の属性を識別することと、
前記１つ又は複数の属性に基づいて、前記ブロックチェーンを閉鎖すべきであると判断することと、
前記ブロックチェーンを閉鎖することと、
新しいブロックチェーンを作成することと、
前記ブロックチェーンから１つ又は複数のアセットを識別することと、
前記ブロックチェーンの前記１つ又は複数のアセットに基づいて、前記新しいブロックチェーンに対する繰り越しブロックチェーンを作成することと、
を含む、方法。
【請求項２】
前記１つ又は複数の属性は、識別されると、前記ブロックチェーンを閉鎖させるライフサイクル・トリガを含み、前記ブロックチェーンのライフサイクルは、ソーシャル・ネットワークから識別される、請求項１に記載の方法。
【請求項３】
前記ライフサイクル・トリガは、ブロックチェーン・トランザクションの数、前記ブロックチェーン・トランザクションの１つ又は複数が監査されてからの経過時間、満了日、及び前記ブロックチェーンの閾値サイズを含む、請求項２に記載の方法。
【請求項４】
前記１つ又は複数のアセットは、アクティブ・ライフサイクルを有するアクティブ・アセット、及び非アクティブ・アセットを含む、請求項１に記載の方法。
【請求項５】
前記繰り越しトランザクションを前記新しいブロックチェーン内に格納することをさらに含む、請求項１に記載の方法。
【請求項６】
前記１つ又は複数のアセットに基づいて１つ又は複数のブロックチェーン・トランザクションを作成することをさらに含み、前記１つ又は複数のブロックチェーン・トランザクションは、前記１つ又は複数のアセットの完了状態を表すように作成される、請求項１に記載の方法。
【請求項７】
前記繰り越しトランザクションは、完了ステータスを受け取っていない前記１つ又は複数のアセットのアクティブ・アセット情報を含む、請求項１に記載の方法。
【請求項８】
ブロックチェーンの１つ又は複数の属性を識別し、
前記１つ又は複数の属性に基づいて、前記ブロックチェーンを閉鎖すべきであると判断し、
前記ブロックチェーンを閉鎖し、
新しいブロックチェーンを作成し、
前記ブロックチェーンから１つ又は複数のアセットを識別し、
前記ブロックチェーンの前記１つ又は複数のアセットに基づいて、前記新しいブロックチェーンに対する繰り越しブロックチェーンを作成する、
ように構成されたプロセッサを含む、装置。
【請求項９】
前記１つ又は複数の属性は、識別されると、前記ブロックチェーンを閉鎖させるライフサイクル・トリガを含み、前記ブロックチェーンのライフサイクルは、ソーシャル・ネットワークから識別される、請求項８に記載の装置。
【請求項１０】
前記ライフサイクル・トリガは、ブロックチェーン・トランザクションの数、前記ブロックチェーン・トランザクションの１つ又は複数が監査されてからの経過時間、満了日、及び前記ブロックチェーンの閾値サイズを含む、請求項９に記載の装置。
【請求項１１】
前記１つ又は複数のアセットは、アクティブ・ライフサイクルを有するアクティブ・アセット、及び非アクティブ・アセットを含む、請求項８に記載の装置。
【請求項１２】
前記プロセッサはさらに、
前記繰り越しトランザクションを前記新しいブロックチェーン内に格納するように構成される、請求項８に記載の装置。
【請求項１３】
前記プロセッサはさらに、
前記１つ又は複数のアセットに基づいて１つ又は複数のブロックチェーン・トランザクションを作成するように構成され、前記１つ又は複数のブロックチェーン・トランザクションは、前記１つ又は複数のアセットの完了状態を表すように作成される、請求項８に記載の装置。
【請求項１４】
前記繰り越しトランザクションは、完了ステータスを受け取っていない前記１つ又は複数のアセットのアクティブ・アセット情報を含む、請求項８に記載の装置。
【請求項１５】
実行されるとき、プロセッサに、
ブロックチェーンの１つ又は複数の属性を識別することと、
前記１つ又は複数の属性に基づいて、前記ブロックチェーンを閉鎖すべきであると判断することと、
前記ブロックチェーンを閉鎖することと、
新しいブロックチェーンを作成することと、
前記ブロックチェーンから１つ又は複数のアセットを識別することと、
前記ブロックチェーンの前記１つ又は複数のアセットに基づいて、前記新しいブロックチェーンに対する繰り越しブロックチェーンを作成することと、
を実行させる命令を格納するように構成された、非一時的コンピュータ可読ストレージ媒体。
【請求項１６】
前記１つ又は複数の属性は、識別されると、前記ブロックチェーンを閉鎖させるライフサイクル・トリガを含み、前記ブロックチェーンのライフサイクルは、ソーシャル・ネットワークから識別される、請求項１５に記載の非一時的コンピュータ可読ストレージ媒体。
【請求項１７】
前記ライフサイクル・トリガは、ブロックチェーン・トランザクションの数、前記ブロックチェーン・トランザクションの１つ又は複数が監査されてからの経過時間、満了日、及び前記ブロックチェーンの閾値サイズを含む、請求項１６に記載の非一時的コンピュータ可読ストレージ媒体。
【請求項１８】
前記１つ又は複数のアセットは、アクティブ・ライフサイクルを有するアクティブ・アセット、及び非アクティブ・アセットを含む、請求項１５に記載の非一時的コンピュータ可読ストレージ媒体。
【請求項１９】
前記プロセッサはさらに、
前記繰り越しトランザクションを前記新しいブロックチェーン内に格納することを実行するように構成される、請求項１５に記載の非一時的コンピュータ可読ストレージ媒体。
【請求項２０】
前記プロセッサはさらに、
前記１つ又は複数のアセットに基づいて１つ又は複数のブロックチェーン・トランザクションを作成することをさらに含み、前記１つ又は複数のブロックチェーン・トランザクションは、前記１つ又は複数のアセットの完了状態を表すように作成される、請求項１５に記載の非一時的コンピュータ可読ストレージ媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本出願は、一般に、ブロックチェーンを管理することに関し、より特定的には、ブロックチェーン・ライフサイクル管理に関する。
【背景技術】
【０００２】
ブロックチェーンは、任意の種類の情報を格納するためのパブリック台帳（ledger）として使用することができる。ブロックチェーンは主として金融トランザクションに使用されるが、アセット（asset）（すなわち、製品、パッケージ、サービス、ステータス等）を含む、任意のタイプの情報を格納することができる。分散型スキームは、権限及び信用を分散型ネットワークに委譲し、そのネットワークのノードがそれぞれのトランザクションをパブリック「ブロック」に連続的かつ順次に記録することができるようにし、ブロックチェーンと呼ばれる一意の「チェーン」を作成する。ハッシュ・コードによる暗号技術を使用して、トランザクション・ソースの認証をセキュア保護し、中央の介在を取り除く。ブロックチェーンは、ブロックチェーンのブロック内の増大し続ける記録のリストを保持する分散型データベースであり、それらの記録は、それらの不変的性質により、改ざん及び改訂からセキュア保護される。各ブロックは、タイムスタンプ、及び前のブロックへのリンクを含む。ブロックチェーンは、任意の情報を保持、追跡、伝達、及び確認するために用いることができる。ブロックチェーンは分散システムであるので、ブロックチェーン台帳にトランザクションを付加する前に、全てのピアが、コンセンサス（合意）状態に至る必要がある。
【０００３】
拡張性（scalability）は、これらに限定されるものではないが、ＣＰＵ、ネットワーク制約、及びストレージなどの幾つかの要因の制約を受ける。全ての確認を行わず、ＣＰＵ及びネットワーク負荷を低減させることができる代替的なブロックチェーン実装を行い得るので、現在、ＣＰＵとネットワークは大きな関心事ではない。ストレージ制約も、現在動作しているインフラストラクチャから最適な変化を経てきたが、現在、完全に使い果たされたトランザクションについての不必要なデータを削除するデータのプルーニング（pruning of data）のような付加的な課題があり、これは、不幸にも相対的に小さいストレージの最適化しかもたらさない。トランザクションを別の／より小さいタイプのブロックチェーンにマージバックする（すなわち、簡単化する／低減させる）「サイド・チェーン（side chain）」又は代替的チェーンを使用するなどの他の手法は、古いトランザクションがネットワークから忘れ去られることができるが、この実装の実施が複雑であるので、限定された結果しかもたらさなかった。また、ブロックチェーンにマージバックされるポイント・ツー・ポイント・トランザクションも、それらの実施が複雑であることが多いため、限定された結果をもたらす。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ブロックチェーン・ライフサイクル管理のための方法、装置、及び非一時的コンピュータ可読ストレージ媒体を提供する。
【課題を解決するための手段】
【０００５】
１つの例示的実施形態は、ブロックチェーンの１つ又は複数の属性を識別すること、１つ又は複数の属性に基づいてブロックチェーンを閉鎖（close）すべきであると判断すること、ブロックチェーンを閉鎖すること、新しいブロックチェーンを作成すること、ブロックチェーンから１つ又は複数のアセットを識別すること、及びブロックチェーンの１つ又は複数のアセットに基づいて繰り越し（carry-over）トランザクションを作成することのうちの１つ又は複数を含む方法を提供することができる。
【０００６】
別の例示的実施形態は、ブロックチェーンの１つ又は複数の属性を識別すること、１つ又は複数の属性に基づいてブロックチェーンを閉鎖すべきであると判断すること、ブロックチェーンを閉鎖すること、新しいブロックチェーンを作成すること、ブロックチェーンから１つ又は複数のアセットを識別すること、及びブロックチェーンの１つ又は複数のアセットに基づいて、新しいブロックチェーンのための繰り越しトランザクションを作成することのうちの１つ又は複数を実行するように構成されたプロセッサを含む装置を含むことができる。
【０００７】
さらに別の例示的実施形態は、実行されるとき、プロセッサに、ブロックチェーンの１つ又は複数の属性を識別すること、１つ又は複数の属性に基づいてブロックチェーンを閉鎖すべきであると判断すること、ブロックチェーンを閉鎖すること、新しいブロックチェーンを作成すること、ブロックチェーンから１つ又は複数のアセットを識別すること、ブロックチェーンの１つ又は複数のアセットに基づいて繰り越しトランザクションを作成することのうちの１つ又は複数を実行させる命令を格納するように構成された非一時的コンピュータ可読ストレージ媒体を提供することができる。
【０００８】
ここで、添付図面を参照して、本発明の実施形態を単なる例として説明する。
【図面の簡単な説明】
【０００９】
【図１】例示的実施形態による、ブロックチェーン閉鎖サイクルの論理図を示す。
【図２】例示的実施形態による、ブロックチェーン閉鎖サイクルを実行するための例示的ブロックチェーン構成を示す。
【図３】例示的実施形態による、例示的なピア・ノード、ブロックチェーン構成を示す。
【図４】例示的実施形態による、ブロックチェーン閉鎖サイクル及び新しいブロックチェーン作成サイクルを処理するためのシステム・メッセージング図を示す。
【図５】例示的実施形態による、ブロックチェーン・ライフサイクルを管理する例示的方法のフロー図を示す。
【図６】例示的実施形態による、ブロックチェーン・ライフサイクルを管理する例示的方法の別のフロー図を示す。
【図７】例示的実施形態の１つ又は複数をサポートするように構成された例示的コンピュータ・システム／サーバを示す。
【発明を実施するための形態】
【００１０】
本明細書において一般的に説明され図において示されている本発明のコンポーネントは、様々な異なる構成で配置及び設計され得ることが容易に理解されるであろう。従って、添付図面に示されている方法、装置、非一時的コンピュータ可読媒体、及びシステムのうちの少なくとも１つの実施形態の以下の詳細な説明は、特許請求されている本出願の範囲を限定することを意図するものではなく、選択されている実施形態の代表に過ぎない。
【００１１】
本明細書の全体を通じて記載されている本発明の特徴、構造、又は特性は、１つ又は複数の実施形態において任意の適切な手法で組み合わせることが可能である。例えば、「例示的実施形態（example embodiments）」、「幾つかの実施形態（some embodiments）」という句、又は他の類似の言葉の本明細書の全体を通じた使用は、その実施形態に関連して記載されている特定の特徴、構造、又は特性が、少なくとも１つの実施形態に含まれ得るという事実を指している。従って、「例示的実施形態」、「幾つかの実施形態において（in some embodiments）」、「他の実施形態において（in other embodiments）」という句、又は他の類似の言葉の本明細書を通じた出現は、必ずしも全てが実施形態の同じグループを指しているわけではなく、記載されている特徴、構造、又は特性は、１つ又は複数の実施形態において任意の適切な手法で組み合わせることが可能である。
【００１２】
さらに、「メッセージ」という用語が実施形態の説明において使用されていることがあるが、本出願は、多くのタイプのネットワーク・データ、例えば、パケット、フレーム、データグラムなどに適用することができる。また、「メッセージ」という用語は、パケット、フレーム、データグラム、及びそれらの任意の同等物も含む。さらに、特定のタイプのメッセージ及び信号方式（signaling）が例示的実施形態において示されていることがあるが、それらは、特定のタイプのメッセージに限定されず、本出願は、特定のタイプの信号方式に限定されない。
【００１３】
本出願は、１つの実施形態においては、ブロックチェーンのライフサイクル管理に関し、別の実施形態においては、時間と共にブロックチェーンの特性／属性を識別し、進行中のブロックチェーン・ライフサイクル管理に基づいて、ブロックチェーンを閉鎖し、新しいブロックチェーンを作成するための最適時期を判断することに関する。
【００１４】
例示的実施形態は、アクティブなブロックチェーンを閉鎖し、新しいブロックチェーンを作成する時期を判断することを含む、ブロックチェーン・ライフサイクル管理を提供する。過度のデータ、又は帯域幅の制約、及び／又はＣＰＵの制約のために、ブロックチェーン台帳が必要以上に大きくなると、こうした台帳構成を継続させるために、ある時点でより古いデータ及び／又は履歴データの一部を減少させることがある。一例においては、ブロックチェーンは「自己分析」を受け、次に、アプリケーションは、いつどこでブロックチェーンの前の長さをアーカイブに除去し（すなわち、閉鎖し）、次に新しいブロックチェーンを作成するかを判断することができる。システムは、ブロックチェーンの現在の長さ／内容、及びその構成当事者及びトランザクションに基づいて、ハッシュを作成することができる。そのハッシュは、部分的に、多くの他の可能性の中からアクティブなリソース又は図書館において貸し出されている本の状態とすることができる、エンティティのライフ・ステータスを識別、記録及び処理するために、チェーンにわたるシステムのバックトラッキングによって作成される。閉鎖されるブロックチェーンは、可能な限り、全ての関連したトランザクションを有するべきである。例えば、古いブロックチェーンは、ブロックチェーンを閉鎖する前に完了したパターン／サイクルに関連するトランザクションの大部分／全てを有していれば有利であろう。
【００１５】
一例において、トランザクションのフィードがブロックチェーンに与えられ、従来のブロックチェーンの実装をもたらす。関連したブロックチェーンからの実世界のトランザクションの監視を、ネットワークと提携して行うことができる。上の判定基準を用いて、ソーシャル・グラフ内の特定のリンクがネットワーク内に残る可能性が識別され、リンク切れ（link decay）及び相対的な関連性を予測するために組み合わされる。システム構成は、ブロックチェーンの現在の長さ及びその構成、当事者及びトランザクションに基づいて、ハッシュを作成することができる。そのハッシュは、部分的に、エンティティのライフ・ステータスを識別、記録及び処理するために、チェーンにわたるシステムのバックトラッキングによって作成される。例えば、ユーザの身体活動モデルの場合、ブロックチェーンにおける関連したトランザクションは、ジムの料金、試合の料金、トレーナの料金、イベント等を含むことができ、それらは、ソーシャル・ネットワーク減衰（decay）モデルにマッピングし戻される。進行中の手続きにおいて、実装のために設定された定められたキー性能インジケータ（ＫＰＩ）（例えば、速度、リスク等）を監視し、ライフサイクルをもうすぐ終了するとして識別することができ、ある時点及び／又はサイクルを識別し、それらのイベントを閉鎖し、データをアーカイブして、新しいライフサイクルをサポートすることができる。
【００１６】
ブロックチェーン・ライフサイクル管理の１つの例において、上記からの、ある調査期間（例えば、１２日又は１２ヵ月等）の後、最適なチェーン長さを記載する「ｉ」パターンを識別することができる。古いブロックチェーンが閉鎖され、新しいブロックチェーンが作成される際の連続性を保持するために、アクティブ・チェーンと非アクティブ・チェーンとの間のリンク機構を有するように、アーカイブ・チェーンを作成することができる。例えば、前のブロックチェーンへのリンク機構を有するように、新しいブロックチェーンが作成される。対応する「繰り越し（carry forward）」トランザクションを新しいチェーンに付加しながら、アセットについてのバランス／状態を閉鎖するために、台帳内の各アセットについて、トランザクションが古いチェーンに付加される。ひとたびそうしたブロックチェーン・トランザクションが、全てのアクティブ・アセットに対して付加されると、古いブロックチェーンをアーカイブすることができ、システムは、新しいブロックチェーンで継続することができる。
【００１７】
ブロックチェーンの自己分析の際、ブロックチェーンは、ライフサイクル・トリガ、ブロックチェーンの閾値サイズ、時間経過、又は例示的実施形態に記載される他の要因などの識別されたライフサイクルの終了に基づいて、ブロックチェーンを終了する必要があると識別することができる。この例においては、ブロックチェーンの長さが十分に長く、新しいブロックチェーンを作成する必要があるとき、その理由を識別し、それに応じて変更を行うことができる。一例において、ブロックチェーンのエンティティ／アセットの関連性のため、変更又はトリガにより、ブロックチェーンが終了されることがあり、関連したトランザクションの大部分がほぼ完了すると、それは、現在のブロックチェーンを閉鎖し、新しいブロックチェーンを作成するのに適切な時期であり得る。相対減衰率（すなわち、寿命）は、ソーシャル・ネットワークから導出することができる。例えば、トピック、スレッド、又はディスカッションが「猫」に関連する場合、ディスカッションの平均長さは４時間であり、「映画のディスカッション」についての平均ディスカッション長さは５日間である。また、関連性についてトピックが追跡され、その結果、「猫」のトピックは、通常、「映画のディスカッション」スレッドとは関連付けられず、従って、ディスカッションがほぼ同時に発生しても、それらのトピックを、切り離されたものとして別個のブロックチェーンに入れることは許容可能である。ブロックチェーンの管理者が、使用されているＣＰＵ、ストレージ、メモリ、及び／又は帯域幅が多過ぎる事例を識別した場合、それを、新しいブロックチェーンをいつ作成するかについての付加的な重み因子又はライフサイクル・トリガとして用いることができる。例えば、現在のブロックチェーンにおいて２３００ＭＢより多くが使用されている場合、分析を用いて、新しいブロックチェーンを作成することが論理的であるかどうかを判断することができる。分析に基づいて、現在のブロックチェーンは、依然として８９００ＭＢまで拡大し続けることができ、その理由は、ソーシャル・ライフサイクル・トリガの現在のステータスによって、ブロックチェーンを閉鎖するのはまだ論理的ではないためである。ブロックチェーンが閉鎖され、新しいブロックチェーンが作成されると、古いブロックチェーンを用いて、新しいブロックチェーン内に格納され、本質的により古い有効な／関連するチェーンへの「ポインタ」として機能する、繰り越し（carry-over）トランザクションを作成することができる。ブロックチェーン管理アプリケーション及び／又はシステムは、現在のブロックチェーンから関心あるオブジェクト又はエンティティを突き止めることができ、また、関連する既存の統計技術を用いて、関連性、減衰率及びクラスタ化に関してソーシャル・ネットワークを用いて、それらのオブジェクトをモデル化することができる。それらのオブジェクト、変更及び他の考慮事項を用いて、新しいブロックチェーンをどのように作成するかを決定することができる。
【００１８】
図１は、例示的実施形態による、ブロックチェーン閉鎖サイクルの論理図を示す。図１を参照すると、この構成１００において、ブロックチェーン１３０はアクティブであり、現在新しいトランザクションを格納し、コミットしており、前のトランザクションの参照のために監査手続きを介して参照されているとき、ブロックチェーンを持続し、無期限に新しいトランザクションを付加することができる。監視中、１つ又は複数のライフサイクル・トリガ条件が識別され、新しいブロックチェーン１４０に対する必要性がトリガされることがある。ブロックチェーン分析器１２０は、メモリ内に格納され、ブロックチェーン・トランザクション、ブロックチェーンのサイズ、日付、及びそれらのトランザクション関係のライフサイクルに関する相対確度を提供するトランザクション間の相互関係であるトランザクション相互作用を識別するように構成された、進行中のソフトウェア・プロセス／モジュールとすることができる。ブロックチェーン・トランザクションについての例示的基準が識別され、適切な時期にブロックチェーンを閉鎖するために、最終的なハッシュが作成される１２２。前のブロックチェーンに関する情報が新しいトランザクションに書き込まれ１２４、この情報は、新しいトランザクションが作成され、古いブロックチェーン１３０が閉鎖され、新しいトランザクションの付加が遮断されたときに、新しいブロックチェーン１４０に付加される。
【００１９】
図２は、例示的実施形態による、ブロックチェーンの閉鎖及び新しいブロックチェーンの作成を実行するための例示的ブロックチェーン構成を示す。図２を参照すると、ブロックチェーン・システム２００Ａが、ブロックチェーン・トランザクションの付加及び検証プロセス（コンセンサス（合意））に関与する、割り当てられたピア・ブロックチェーン・ノード「ピア・ノード」２８２〜２８５とすることができる一群のブロックチェーン・ノード２８０などの特定の共通のブロックチェーン要素を含むことができる。ブロックチェーン・ピア・ノード２８０のいずれかが、新しいトランザクションを開始し、ブロックチェーンの不変台帳２７２に書き込もうとすることができ、これらのコピーは、ブロックチェーン２７０の土台となる物理インフラストラクチャ２７１上に格納される。この構成において、関係者によって求められるカスタマイズされた構成に従って作成され、これら自体の状態を維持し、これら自体のアセットを制御し、外部情報を受け取ることができる（例えば、チェーンコード、スマート・コントラクト等の）格納されたプログラム／アプリケーション・コード２７５にアクセス及び実行するためのＡＰＩ２７６にリンクされる１つ又は複数のアプリケーション２７７を含むことができる。このコードは、全てのブロックチェーン・ピア・ノード上に、分散型台帳に添付することによってトランザクションとしてデプロイし、インストールすることができる。
【００２０】
ブロックチェーン・プラットフォーム２７０は、新しいトランザクションを受け取って格納し、データ・エントリへのアクセスを求めている監査人へのアクセスを提供するのに必要な、ブロックチェーンのデータ、サービス（例えば、暗号信用サービス、仮想実行環境等）、及び土台となる物理コンピュータのインフラストラクチャといった様々な層を含む。ブロックチェーン層２７２は、プログラム・コードを処理し、物理インフラストラクチャ２７１を利用するのに必要な仮想実行環境へのアクセスを提供するインターフェースを公開することができる。暗号信用サービス２７３は、トランザクションを確認し、機密情報を維持するために用いられる。
【００２１】
図２のブロックチェーン構成は、ブロックチェーン・プラットフォーム２７０によって公開されたインターフェース及び提供されるサービスを介して、プログラム／アプリケーション・コード２７５を処理し、実行することができる。コードは、ブロックチェーン・アセットを制御することができ、例えば、コードは、データを格納し転送することができ、例えばスマート・コントラクト、及び条件又はその実行を受ける他のコード要素を有する関連したチェーンコードの形で、ブロックチェーンによって実行することができる。スマート・コントラクト２７５は、リマインダ、更新、及び／又は変更、更新等を受ける他の通知を実行するために作成され得る。スマート・コントラクトは、それ自体、権限付与及びアクセス要求、並びに使用と関連付けられた規則を識別するために使用することができる。１つの例において、ブロックチェーン閉鎖インジケータ又はトリガ２１２は、ピア・ノード２８０により識別され得る。ノードは、ブロックチェーンを閉鎖する必要性を識別し、次に、ある時点でコンセンサスに達し、新しいブロックの作成を可能にすることができる。また、閉鎖及び新しいブロックチェーン作成サイクルを実施するように、ブロックチェーン閉鎖動作２１４を実行することができる。
【００２２】
図３は、例示的実施形態による、ブロックチェーンのノード間のトランザクション・フロー２００Ｂの例を示す。図３を参照すると、トランザクション・フローは、承認（endorsing）ピア・ノード２８１にアプリケーション・クライアント・ノード２０１によって送られたトランザクションの提案を含むことができる。承認ピア２８１は、クライアントの署名を確認し、チェーンコード機能を実行してトランザクションをシミュレートすることができる。出力は、チェーンコードの結果、チェーンコードで読み取られたキー／値のバージョンのセット（読み取りセット）、チェーンコードで書き込まれたキー／値のセット（書き込みセット）である。提案の応答が、エンドースメント署名と共にクライアント２０１に送り返される。クライアントは、トランザクションのペイロードの中にエンドースメントを集め、これを順序付けサービス・ノード２８４にブロードキャストする。次に、順序付けサービス・ノード２８４は、順序付けされたトランザクションをブロックとしてチャネル上の全てのピア２８１〜２８３に配信する。コミットの前に、各ピア２８１〜２８３は、トランザクションを検証（validate）することができる。例えば、これらのピアは、エンドースメント・ポリシーをチェックし、指定されたピアの正しい割り当てが結果に署名されたことを保証し、トランザクション・ペイロードに対する署名を認証することができる。
【００２３】
図３を参照すると、ステップ２９１において、クライアント・ノード２０１は、要求を構成し、承認者であるピア・ノード２８１に送ることによって、トランザクションを開始する。クライアント２０１は、ＮＯＤＥ、ＪＡＶＡ、ＰＹＴＨＯＮ等のような、サポートされるソフトウェア開発キット（ＳＤＫ：software development kit）を利用するアプリケーションを含むことができ、これは、利用可能なＡＰＩを用いてトランザクションの提案を生成する。提案は、データを読み取ること、及び／又は台帳に書き込むこと（すなわち、アセットについての新しいキー値ペア（key value pair）を書き込むこと）ができるように、チェーンコード機能を呼び出す要求である。ＳＤＫは、トランザクションの提案を適切に設計されたフォーマット（例えば、遠隔手続き呼び出し（ｇＲＰＣ）上のプロトコル・バッファ）の中にパッケージするためのくさびとしての役割を果たし、クライアントの暗号信任状を用いて、このトランザクションの提案に対する一意の署名を生成することができる。
【００２４】
それに応じて、承認ピア・ノード２８１は、（ａ）トランザクションの提案の形式が適格であること、（ｂ）トランザクションが過去にまだサブミットされていないこと（リプレイ・アタックの保護）、（ｃ）署名が有効であること、及び（ｄ）サブミッタ（例におけるクライアント２０１）が、このチャネル上で、提案された動作を実施するために適切に権限付与されることを確認することができる。承認ピア・ノード２８１は、呼び出されたチェーンコード機能への引数としてトランザクションの提案の入力を用いることができる。次に、チェーンコードは、応答値、読み取りセット、及び書き込みセットを含むトランザクションの結果を生成するために、現在の状態のデータベースに対して実行される。しかしながら、この時点で、台帳に対して更新は行われない。ステップ２９２において、これらの値のセットは、承認ピア・ノード２８１の署名と共に、アプリケーションが消費するペイロードを解析するクライアント２０１のＳＤＫへの提案応答として戻される。
【００２５】
それに応じて、クライアント２０１のアプリケーションは、承認ピアの署名を検査／確認し、提案応答を比較し、提案応答が同じであるかどうかを判断する。チェーンコードが台帳に問い合わせただけである場合、アプリケーションは、クエリの応答を検査し、典型的には、トランザクションを順序付けサービス２８４にサブミットしないであろう。クライアントのアプリケーションが、台帳を更新するために、トランザクションを順序付けサービス２８４にサブミットすることを意図する場合、アプリケーションは、サブミットする前に指定されたエンドースメント・ポリシーが満たされたかどうかを判断する（すなわち、トランザクションに必要なピア・ノードの両方が承認したかどうか）。ここで、クライアントは、トランザクションに対して複数の当事者のうちの１つのみを含むことができる。この場合、各クライアントには独自の承認ノードがあり、各承認ノードは、トランザクションに承認する必要がある。アーキテクチャは、アプリケーションが応答を検査しないこと又はそうでなければ未承認のトランザクションを転送することを選ぶ場合でも、エンドースメント・ポリシーがなお、ピアによって実施され、コミット検証段階で支持されるようになっている。
【００２６】
検査が成功した後、ステップ２９３において、クライアント２０１は、トランザクションの中にエンドースメントを集め、トランザクション・メッセージ内のトランザクションの提案及び応答を順序付けノード２８４にブロードキャストする。トランザクションは、読み取り／書き込みのセット、承認ピアの署名、及びチャネルＩＤを含むことができる。順序付けノード２８４は、その動作を行うためにトランザクションの内容全体を検査する必要はなく、順序付けノード２８４は単に、ネットワーク内の全てのチャネルからトランザクションを受け取り、チャネルによってそれらのトランザクションを時系列に順序付け、チャネルごとにトランザクションのブロックを作成することができる。
【００２７】
ステップ２９４において、トランザクションのブロックは、順序付けノード２８４から、チャネル上の全てのピア・ノード２８１〜２８３に配信される。ブロック内のトランザクションは、エンドースメント・ポリシーが満たされることを保証するため、及び、読み取りセットがトランザクションの実行によって生成されてから読み取りセットの変数に対する台帳の状態への変更がなかったことを保証するために検証される。ブロック内のトランザクションは、有効又は無効としてタグ付けされる。さらに、ステップ２９５において、各ピア・ノード２８１〜２８３は、ブロックをチャネルのチェーンに追加し、それぞれの有効なトランザクションに対して、書き込みセットが現在状態データベースにコミットされる。イベントは、トランザクション（呼び出し）が、チェーンに不変的に追加されたことをクライアント・アプリケーションに通知するため、並びにトランザクションが有効化されたか、又は無効化されたかについての通知のために発せられる。
【００２８】
図４は、例示的実施形態による、ブロックチェーン閉鎖サイクル及び新しいブロックチェーン生成サイクルを処理するためのシステム・メッセージング図３００を示す。図４を参照すると、ブロックチェーン・ライフサイクルを管理するエンティティが、ブロックチェーン・ピア３１０、ブロックチェーン分析器モジュール３２０、及びブロックチェーン３３０を含むことができる。動作において、ブロックチェーンを閉鎖するために用いられるトリガ及び他の条件３１２を含む理由及びアクションを識別し、スマート・コントラクト又は分析器３２０により管理される他の処理エンジンにおける規則のセットとして格納することができる。条件が格納され３１４、ブロックチェーン３３０を監査及び監視する３１６ために用いられる。ブロックチェーン・トリガ条件の終わりを最終的に識別し３１８、それを用いて、最終的及び最後のトランザクションをブロックチェーンに書き込むための清算（winding-up）手続きとして、現在のブロックチェーンの最終的なトランザクション３２２を準備することができる。トランザクションがブロックチェーンに書き込まれ３２４、ブロックチェーンの完結（finalize）及び閉鎖の前に、条件が要求及び許可（すなわち、コンセンサス）を必要とし得る３２６。特定のトランザクションを指し示すために用いられる繰り越しトランザクション３３２、及び新しいブロックチェーンにおいて参照目的のために必要とされる可能性が高い関連情報並びにブロックチェーンを表すハッシュ３２８を計算することができる。次に、新しいブロックチェーンを作成し３３４、繰り越しトランザクションをポピュレートする３３６。
【００２９】
図５は、例示的実施形態による、ブロックチェーン・ライフサイクルを管理する例示的方法のフロー図を示す。図５を参照すると、方法４００は、ブロックチェーンの１つ又は複数の属性を識別すること４１２、１つ又は複数の属性に基づいてブロックチェーンを閉鎖すべきであると判断すること４１４、ブロックチェーンを閉鎖すること４１６、新しいブロックチェーンを作成すること４１８、ブロックチェーンから１つ又は複数のアセットを識別すること４２２、及びブロックチェーンの１つ又は複数のアセットに基づいてキャリーオーバー・ブロックチェーンを作成すること４２４を提供することができる。１つ又は複数の属性は、識別されると、ブロックチェーンを閉鎖するライフサイクル・トリガを含み、ライフサイクル・トリガは、多数のブロックチェーン・トランザクション、ブロックチェーン・トランザクションの１つ又は複数を監査してからの時間経過、満了日、及びブロックチェーンの閾値サイズを含むことができる。１つ又は複数のアセットは、アクティブなライフサイクルを有するアクティブ・アセットと、非アクティブ・アセットとを提供することができる。方法はまた、繰り越しトランザクションを新しいブロックチェーン内に格納することと、１つ又は複数のアセットに基づいて１つ又は複数のブロックチェーン・トランザクションを作成することとを含むこともでき、そこで、１つ又は複数のブロックチェーン・トランザクションは、１つ又は複数のアセットの完了（close-out）状態を表すように作成され、繰り越しトランザクションは、完了状態を受け取っていない１つ又は複数のアセットのアクティブなアセット情報を含む。
【００３０】
図６は、例示的実施形態による、ブロックチェーン・ライフサイクルを管理する例示的方法の別のフロー図を示す。図６を参照すると、方法４５０は、ブロックチェーンの１つ又は複数の属性を識別すること４５２、１つ又は複数の属性に基づいてブロックチェーンを閉鎖すべきであると判断すること４５４、ブロックチェーンを閉鎖すること４５６、新しいブロックチェーンを作成すること４５８、ブロックチェーン及び新しいブロックチェーン上のアセット及びアセットと関連付けられたアセットの権利（asset rights）を判断すること４６２、並びにアセット及びアセットの権利に基づいてブロックチェーン及び新しいブロックチェーンの１つ又は複数への権限付与キーを作成すること４６４を含む。
【００３１】
この実施形態において、ブロックチェーンの閉鎖は、ブロックチェーンの種々の情報／アセットの権利を新しいブロックチェーンの１又は複数のメンバーに転送すべきかどうかを確立するための機会を表す。ブロックチェーンを閉鎖する理由の一つは、ブロックチェーンの権利をセキュア保護し、特に、ブロックチェーンについてのアセット情報又は権利及び既知の当事者のために、付加的な当事者がブロックチェーンにアクセスできないようにすることであり得る。新しいブロックチェーン及び古いブロックチェーンの両方若しくは一方についてアクセスが特定の当事者に与えられること、又はブロックチェーンのどちらについても、アクセスが特定の当事者に与えられないことがある。ブロックチェーンにおけるアセット情報を、アクセスする価値があるメンバー及びアクセスする価値がないメンバーと対にすることができる。権限付与キーは、特定のメンバーが、古いブロックチェーン内にアーカイブに入れられた情報にアクセスするのを可能にする一方で、他のメンバーはそうした情報へのアクセスを受け取れなくすることができる。また、全てのメンバーは、新しいブロックチェーンに書き込まれるアセットに関するより多くの情報を待つ間、新しいブロックチェーンが閉鎖させられ、別の新しいブロックチェーンが開始されるまで、新しいブロックチェーンにアクセスすることができる。
【００３２】
上記の実施形態は、ハードウェアにおいて、プロセッサによって実行されるコンピュータ・プログラムにおいて、ファームウェアにおいて、又は上記の組み合わせにおいて実装することができる。コンピュータ・プログラムは、ストレージ媒体などのコンピュータ可読ストレージ上に具体化され得る。例えば、コンピュータ・プログラムは、ランダム・アクセス・メモリ（「ＲＡＭ」）、フラッシュ・メモリ、読み出し専用メモリ（「ＲＯＭ」）、消去可能プログラム可能読み出し専用メモリ（「ＥＰＲＯＭ」）、電気的消去可能プログラム可能読み出し専用メモリ（「ＥＥＰＲＯＭ」）、レジスタ、ハードディスク、取り外し可能なディスク、コンパクト・ディスク読み出し専用メモリ（ＣＤ−ＲＯＭ）、又は当技術分野において知られる任意の他の形態のストレージ媒体内に存在し得る。
【００３３】
例示的なストレージ媒体は、プロセッサがストレージ媒体から情報を読み取り、ストレージ媒体に情報を書き込むことができるように、プロセッサに結合することができる。代案においては、ストレージ媒体はプロセッサと一体とすることができる。プロセッサ及びストレージ媒体は、特定用途向け集積回路（「ＡＳＩＣ」）内に存在し得る。代案においては、プロセッサ及びストレージ媒体は、個別のコンポーネントとして存在し得る。例えば、図７は、上述したコンポーネントのいずれかなどで表すか、又はそれらに統合することができる、例示的なコンピュータ・システム・アーキテクチャ５００を示している。
【００３４】
図７は、本明細書に記載された本出願の実施形態の使用又は機能の範囲に関して、いかなる制限を示唆することも意図されていない。それにも関わらず、コンピューティング・ノード５００は、上述した機能のいずれかを実装すること及び／又は実行することができる。
【００３５】
コンピューティング・ノード５００内には、他の多数の汎用又は専用コンピューティング・システム環境又は構成で動作できるコンピュータ・システム／サーバ５０２が存在する。コンピュータ・システム／サーバ５０２と共に使用するのに適した周知のコンピューティング・システム、環境、及び／又は構成の例は、これらに限定されるものではないが、パーソナル・コンピュータ・システム、サーバ・コンピュータ・システム、シン・クライアント、シック・クライアント、手持ち式若しくはラップトップ・デバイス、マルチプロセッサ・システム、マイクロプロセッサベース・システム、セット・トップ・ボックス、プログラム可能民生電子機器、ネットワークＰＣ、ミニコンピュータ・システム、メインフレーム・コンピュータ・システム、及び上記の任意のシステム又はデバイスを含む分散クラウド・コンピューティング環境などを含む。
【００３６】
コンピュータ・システム／サーバ５０２は、プログラム・モジュールなどの、コンピュータ・システムによって実行可能な命令との一般的な関連において説明することができる。通常、プログラム・モジュールは、特定のタスクを実行する、又は特定の抽象データ型を実装するルーチン、プログラム、オブジェクト、コンポーネント、論理、データ構造などを含むことができる。コンピュータ・システム／サーバ５０２は、通信ネットワークを介してリンクされた遠隔処理デバイスによってタスクが実行される、分散型クラウド・コンピューティング環境において実施することができる。分散型クラウド・コンピューティング環境において、プログラム・モジュールは、メモリ・ストレージ・デバイスを含む、ローカル及び遠隔の両方のコンピュータ・システム・ストレージ媒体内に配置することができる。
【００３７】
図７に示すように、クラウド・コンピューティング・ノード５００内のコンピュータ・システム／サーバ５０２は、汎用コンピューティング・デバイスの形態で示される。コンピュータ・システム／サーバ５０２のコンポーネントは、これらに限定されるものではないが、１つ又は複数のプロセッサ又は処理ユニット５０４、システム・メモリ５０６、及びシステム・メモリ５０６を含む様々なシステム・コンポーネントをプロセッサ５０４に接続するバスを含むことができる。
【００３８】
バスは、メモリ・バス又はメモリ・コントローラ、ペリフェラル・バス、アクセラレーテッド・グラフィックス・ポート、及び任意の様々なバス・アーキテクチャを用いるプロセッサ若しくはローカル・バスを含む、１つ又は複数の任意のタイプのバス構造を表す。例として、制限なく、そのようなアーキテクチャは、Ｉｎｄｕｓｔｒｙ  Ｓｔａｎｄａｒｄ  Ａｒｃｈｉｔｅｃｔｕｒｅ（ＩＳＡ）バス、Ｍｉｃｒｏ  Ｃｈａｎｎｅｌ  Ａｒｃｈｉｔｅｃｔｕｒｅ（ＭＣＡ）バス、Ｅｎｈａｎｃｅｄ  ＩＳＡ（ＥＩＳＡ）バス、Ｖｉｄｅｏ  Ｅｌｅｃｔｒｏｎｉｃｓ  Ｓｔａｎｄａｒｄｓ  Ａｓｓｏｃｉａｔｉｏｎ（ＶＥＳＡ）ローカル・バス、及びＰｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔｓ（”ＰＣＩ）バスを含む。
【００３９】
コンピュータ・システム／サーバ５０２は、一般的に、様々なコンピュータ・システム可読媒体を含む。そのような媒体は、コンピュータ・システム／サーバ５０２によってアクセス可能な任意の使用可能な媒体とすることができ、揮発性及び不揮発性媒体、取り外し可能及び取り外し不能媒体の両方を含む。システム・メモリ５０６は、１つの実施形態においては、他の図のフロー図を実装する。システム・メモリ５０６は、ランダム・アクセス・メモリ（ＲＡＭ）５１０及び／又はキャッシュ・メモリ５１２などの、揮発性メモリの形態のコンピュータ・システム可読媒体を含むことができる。コンピュータ・システム／サーバ５０２は、他の取り外し可能／取り外し不能、揮発性／不揮発性のコンピュータ・システム・ストレージ媒体をさらに含むことができる。単なる例として、取り外し不能、不揮発性の磁気媒体（図示されておらず、一般的には「ハード・ドライブ」と呼ばれる）に対する読み取りと書き込みを行うために、ストレージ・システム５１４を提供することができる。図示されていないが、取り外し可能、不揮発性の磁気ディスク（例えば、「フロッピー・ディスク」）に対する読み取りと書き込みを行うための磁気ディスク・ドライブ、及びＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、又は他の光媒体などの取り外し可能、不揮発性の光ディスクに対する読み取りと書き込みを行うための光ディスク・ドライブを提供することができる。そのような例では、それぞれを、１つ又は複数のデータ媒体インターフェースによってバスに接続することができる。以下に詳細に示され、説明されるように、メモリ５０６は、本出願の様々な実施形態の機能を実行するように構成されたプログラム・モジュールのセット（例えば、少なくとも１つ）を有する少なくとも１つのプログラム製品を含むことができる。
【００４０】
例えば、プログラム・モジュール５１８のセット（少なくとも１つ）を有するプログラム／ユーティリティ５１６がメモリ５０６に格納され得るが、これに限定されることなく、オペレーティング・システム、１つ又は複数のアプリケーション・プログラム、他のプログラム・モジュール、及びプログラム・データも格納され得る。オペレーティング・システム、１つ又は複数のアプリケーション・プログラム、他のプログラム・モジュール、及びプログラム・データ又はこれらの組み合わせの各々は、ネットワーク環境の実装を含むことができる。プログラム・モジュール５１８は、通常、本明細書に記載された本出願の様々な実施形態の機能及び／又は方法を実行する。
【００４１】
当業者によって理解されるように、本出願の態様は、システム、方法、又はコンピュータ・プログラム製品として具体化することができる。従って、本出願の態様は、完全にハードウェアの実施形態、完全にソフトウェアの実施形態（ファームウェア、常駐ソフトウェア、マイクロコードなどを含む）、又はソフトウェアの態様とハードウェアの態様を組み合わせる実施形態の形態を取ることができ、これらは全て、本明細書では、一般に「回路」、「モジュール」、又は「システム」と呼ぶことができる。さらに、本出願の態様は、コンピュータ可読プログラム・コードがそこに具体化されている１つ又は複数のコンピュータ可読媒体において具体化されたコンピュータ・プログラム製品の形態を取ることができる。
【００４２】
また、コンピュータ・システム／サーバ５０２は、キーボード、ポインティング・デバイス、ディスプレイ５２２などの１つ又は複数の外部デバイス５２０、ユーザがコンピュータ・システム／サーバ５０２と対話できるようにする１つ又は複数のデバイス、及び／又はコンピュータ・システム／サーバ５０２が１つ又は複数の他のコンピューティング・デバイスと通信するのを可能にする任意のデバイス（例えば、ネットワーク・カード、モデムなど）と通信することもできる。このような通信は、Ｉ／Ｏインターフェース５２４を介して行うことができる。さらに、コンピュータ・システム／サーバ５０２は、ネットワーク・アダプタ５２６を介して、ローカル・エリア・ネットワーク（ＬＡＮ）、一般的な広域ネットワーク（ＷＡＮ）、及び／又はパブリック・ネットワーク（例えば、インターネット）などの１つ又は複数のネットワークと通信することができる。図示されるように、ネットワーク・アダプタ５２６は、バスを介してコンピュータ・システム／サーバ５０２の他のコンポーネントと通信する。図示されていないが、他のハードウェア・コンポーネント及び／又はソフトウェア・コンポーネントを、コンピュータ・システム／サーバ５０２と併用できるということを理解されたい。例として、これらに限定されるものではないが、マイクロコード、デバイス・ドライバ、冗長処理ユニット、外部ディスク・ドライブ・アレイ、ＲＡＩＤシステム、テープ・ドライブ、及びデータ・アーカイブ・ストレージ・システムなどが挙げられる。
【００４３】
システム、方法、及び非一時的コンピュータ可読媒体のうちの少なくとも１つの例示的実施形態が添付図面において示され、前述の詳細な説明において説明されたが、本出願が、開示された実施形態に限定されず、以下の特許請求の範囲によって示され、定義されるように、多数の再配置、変更、及び置き換えを行い得ることが理解されるであろう。例えば、様々な図のシステムの機能は、本明細書に記載されたモジュール又はコンポーネントのうちの１つ又は複数によって、又は分散型アーキテクチャにおいて実行することができ、送信機、受信機、又はその両方の対を含むこともできる。例えば、個々のモジュールによって実行される機能の全部又は一部は、それらのモジュールのうちの１つ又は複数によって実行され得る。さらに、本明細書に記載された機能は、様々な時間に、様々なイベントに関して、モジュール又はコンポーネントの内部または外部で、実行することができる。また、様々なモジュールの間で送信される情報は、データ・ネットワーク、インターネット、音声ネットワーク、インターネット・プロトコル・ネットワーク、無線デバイス、有線デバイスのうちの少なくとも１つを介して、及び／又は複数のプロトコルを介して、モジュール間で送信することができる。また、モジュールのいずれかによって送信又は受信されるメッセージは、直接的に、及び／又は他のモジュールのうちの１つ又は複数を介して、送信又は受信され得る。
【００４４】
当業者であれば、「システム」を、パーソナル・コンピュータ、サーバ、コンソール、携帯情報端末（ＰＤＡ）、携帯電話、タブレット・コンピューティング・デバイス、スマートフォン、又は任意の他の適切なコンピューティング・デバイス、又はデバイスの組み合わせとして具体化できるとことを理解するであろう。「システム」によって実行されている上述の機能を提示することは、本出願の範囲を限定するように全く意図されておらず、多くの実施形態のうちの１つの例を提供するよう意図されている。実際に、本明細書で開示された方法、システム、及び装置は、計算技術に一致する局所的な分散された形態で実装することができる。
【００４５】
本明細書において説明されたシステムの特徴の一部が、それらの実装の独立性を特に強調するために、モジュールとして提示されていることに留意されたい。例えば、モジュールは、カスタム超大規模集積（ＶＬＳＩ）回路又はゲート・アレイ、論理チップなどの市販の半導体、トランジスタ、又は他の個別のコンポーネントを含むハードウェア回路として実装することができる。モジュールは、フィールド・プログラマブル・ゲート・アレイ、プログラマブル・アレイ論理、プログラマブル論理デバイス、グラフィックス処理ユニットなどの、プログラム可能なハードウェア・デバイスにおいて実装することができる。
【００４６】
モジュールは、様々なタイプのプロセッサによって実行するために、ソフトウェアにおいて少なくとも部分的に実装することもできる。例えば、実行可能コードの識別されたユニットは、例えば、オブジェクト、プロシージャ、又は関数として編成することができるコンピュータ命令の１つ又は複数の物理又は論理ブロックを含むことができる。それにも関わらず、識別されたモジュールの実行ファイルは、物理的に一緒に配置する必要はなく、異なる位置に格納された異種の命令を含むことができ、それらの命令は、論理的に一緒に結合された場合にモジュールを構成し、モジュールについての規定された目的を達成する。さらに、モジュールは、コンピュータ可読媒体上に格納することができ、このコンピュータ可読媒体は、例えば、ハード・ディスク・ドライブ、フラッシュ・デバイス、ランダム・アクセス・メモリ（ＲＡＭ）、テープ、又はデータの格納に用いられる任意の他のそうした媒体とすることもできる。
【００４７】
実際に、実行可能コードのモジュールは、単一の命令、又は多くの命令とすることができ、幾つかの異なるコード・セグメントにわたって、異なるプログラム間、及び幾つかのメモリ・デバイスにまたがって、分散することもできる。同様に、動作データが識別され、本明細書ではモジュール内で示され、任意の適切な形態で具体化され、任意の適切なタイプのデータ構造内で編成することが可能である。動作データは、単一のデータ・セットとして収集されてよく、又は異なるストレージ・デバイスを含む、異なる位置にわたって分散されてよく、システム若しくはネットワーク上の単なる電子信号として、少なくとも部分的に存在することができる。
【００４８】
本明細書の図において概略的に説明され、示されるように、本出願のコンポーネントは、種々の異なる構成で配置及び設計され得ることが、容易に理解されるであろう。従って、実施形態の詳細な説明は、特許請求される本出願の範囲を限定するよう意図されておらず、単に、本出願の選択された実施形態を表すに過ぎない。
【００４９】
当業者は、開示される順序とは異なる順序でステップを用いて、及び／又は開示される構成におけるハードウェア要素とは異なるハードウェア要素を用いて、上記を実施できることを容易に理解するであろう。従って、本出願は、これらの好ましい実施形態に基づいて説明されたが、特定の変更、変形、及び代替の構成が明白であるということは、当業者には明らかであろう。
【００５０】
本出願の好ましい実施形態が説明されたが、説明された実施形態は単なる例であり、それらの実施形態と同等のもの及びそれらの実施形態に対する変更の完全な範囲（例えば、プロトコル、ハードウェア・デバイス、ソフトウェア・プラットフォームなど）で考えた場合、本出願の範囲が添付の特許請求の範囲のみによって定義されるべきであることを理解されたい。
【符号の説明】
【００５１】
１００：構成
１２０、３２０：ブロックチェーン分析器
１３０、３３０：（古い）ブロックチェーン
１４０：新しいブロックチェーン
２００Ａ：ブロックチェーン・システム
２００Ｂ：トランザクション・フロー
２０１：クライアント・ノード
２１２：ブロックチェーン閉鎖インジケータ
２７０：ブロックチェーン・プラットフォーム
２７１：インフラストラクチャ
２７２：ブロックチェーン層
２７３：暗号信用サービス
２７５：プログラム／アプリケーション・コード（スマート・コントラクト）
２７６：ＡＰＩ
２７７：アプリケーション
２８０：ブロックチェーン・ノード
２８１：第１のピア・ノード（承認ピア・ノード）
２８２：第２のピア・ノード
２８３：第３のピア・ノード
２８４：第４のピア・ノード（順序付けノード）
３１０：ブロックチェーン・ピア
５００：コンピューティング・ノード
５０２：コンピュータ・システム／サーバ
５０４：プロセッサ又は処理ユニット
５０６：システム・メモリ
５１６：プログラム／ユーティリティ
５１８：プログラム・モジュール
５２０：外部デバイス
【図１】
2021507407.tif 000003
【図２】
2021507407.tif 000004
【図３】
2021507407.tif 000005
【図４】
2021507407.tif 000006
【図５】
2021507407.tif 000007
【図６】
2021507407.tif 000008
【図７】
2021507407.tif 000009
【手続補正書】
【提出日】令和2年8月20日(2020.8.20)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
コンピュータの情報処理により実行される方法であって、
ブロックチェーンの１つ又は複数の属性を識別することと、
前記１つ又は複数の属性に基づいて、前記ブロックチェーンを閉鎖すべきであると判断することと、
前記ブロックチェーンを閉鎖することと、
新しいブロックチェーンを作成することと、
前記ブロックチェーンから１つ又は複数のアセットを識別することと、
前記ブロックチェーンの前記１つ又は複数のアセットに基づいて、前記新しいブロックチェーンに対する繰り越しブロックチェーンを作成することと、
を含む、方法。
【請求項２】
前記１つ又は複数の属性は、識別されると、前記ブロックチェーンを閉鎖させるライフサイクル・トリガを含み、前記ブロックチェーンのライフサイクルは、ソーシャル・ネットワークから識別される、請求項１に記載の方法。
【請求項３】
前記ライフサイクル・トリガは、ブロックチェーン・トランザクションの数、前記ブロックチェーン・トランザクションの１つ又は複数が監査されてからの経過時間、満了日、及び前記ブロックチェーンの閾値サイズを含む、請求項２に記載の方法。
【請求項４】
前記１つ又は複数のアセットは、アクティブ・ライフサイクルを有するアクティブ・アセット、及び非アクティブ・アセットを含む、請求項１に記載の方法。
【請求項５】
前記繰り越しトランザクションを前記新しいブロックチェーン内に格納することをさらに含む、請求項１に記載の方法。
【請求項６】
前記１つ又は複数のアセットに基づいて１つ又は複数のブロックチェーン・トランザクションを作成することをさらに含み、前記１つ又は複数のブロックチェーン・トランザクションは、前記１つ又は複数のアセットの完了状態を表すように作成される、請求項１に記載の方法。
【請求項７】
前記繰り越しトランザクションは、完了ステータスを受け取っていない前記１つ又は複数のアセットのアクティブ・アセット情報を含む、請求項１に記載の方法。
【請求項８】
ブロックチェーンの１つ又は複数の属性を識別し、
前記１つ又は複数の属性に基づいて、前記ブロックチェーンを閉鎖すべきであると判断し、
前記ブロックチェーンを閉鎖し、
新しいブロックチェーンを作成し、
前記ブロックチェーンから１つ又は複数のアセットを識別し、
前記ブロックチェーンの前記１つ又は複数のアセットに基づいて、前記新しいブロックチェーンに対する繰り越しブロックチェーンを作成する、
ように構成されたプロセッサを含む、装置。
【請求項９】
前記１つ又は複数の属性は、識別されると、前記ブロックチェーンを閉鎖させるライフサイクル・トリガを含み、前記ブロックチェーンのライフサイクルは、ソーシャル・ネットワークから識別される、請求項８に記載の装置。
【請求項１０】
前記ライフサイクル・トリガは、ブロックチェーン・トランザクションの数、前記ブロックチェーン・トランザクションの１つ又は複数が監査されてからの経過時間、満了日、及び前記ブロックチェーンの閾値サイズを含む、請求項９に記載の装置。
【請求項１１】
前記１つ又は複数のアセットは、アクティブ・ライフサイクルを有するアクティブ・アセット、及び非アクティブ・アセットを含む、請求項８に記載の装置。
【請求項１２】
前記プロセッサはさらに、
前記繰り越しトランザクションを前記新しいブロックチェーン内に格納するように構成される、請求項８に記載の装置。
【請求項１３】
前記プロセッサはさらに、
前記１つ又は複数のアセットに基づいて１つ又は複数のブロックチェーン・トランザクションを作成するように構成され、前記１つ又は複数のブロックチェーン・トランザクションは、前記１つ又は複数のアセットの完了状態を表すように作成される、請求項８に記載の装置。
【請求項１４】
前記繰り越しトランザクションは、完了ステータスを受け取っていない前記１つ又は複数のアセットのアクティブ・アセット情報を含む、請求項８に記載の装置。
【請求項１５】
請求項１から請求項７までのいずれか１項に記載の方法をコンピュータに実行させるコンピュータ・プログラム。
【請求項１６】
請求項１５に記載のコンピュータ・プログラムを格納したコンピュータ可読ストレージ媒体。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】０００４
【補正方法】変更
【補正の内容】
【０００４】
ブロックチェーン・ライフサイクル管理のための方法、装置、及びコンピュータ・プログラムを提供する。
【国際調査報告】
2021507407.tif 000010