(57)【要約】  デジタルツインのセットから取得したデータのための記憶システムとしてブロックチェーン技術を使用するコンピュータにより実施される方法及びシステムが記載される。ブロックチェーンは、デジタルツインのセットにより生成されたデータの不変のトランザクション履歴を生成するために使用できる。エラー又は障害の場合に、関心パーティはデータの不変レコードにアクセスし分析できる。本発明は、Ｂｉｔｃｏｉｎブロックチェーン又は別のブロックチェーンプロトコルと関連して使用されてよい。
2021501935.tif 000002
【特許請求の範囲】
【請求項１】
ブロックチェーンネットワークのためのコンピュータにより実施される方法であって、前記コンピュータにより実施される方法は、
デジタルツインのセットからデータを受信するステップと、
アクセス可能な分散型記憶システムに前記データを格納するステップと、
前記デジタルツインのセットから受信した前記データの圧縮バージョンを表すデータ構造のダイジェストを計算するステップと、
ブロックチェーン上に記憶するために前記ダイジェストを送信するステップと、
を含むコンピュータにより実施される方法。
【請求項２】
前記データ構造は、前記アクセス可能な分散型記憶システムのどのノードに前記データが格納されたかを識別するよう構成される、請求項１に記載のコンピュータにより実施される方法。
【請求項３】
前記データ構造は、前記アクセス可能な分散型記憶システムに格納される、請求項１又は２に記載のコンピュータにより実施される方法。
【請求項４】
前記データ構造の前記ダイジェストは、前記ブロックチェーン上に記憶するために転送される前に、バッファへ送信され、前記バッファは、前記データ構造の前記ダイジェストにより表される情報のサンプリング頻度を選択する、請求項１乃至３のいずれか一項に記載のコンピュータにより実施される方法。
【請求項５】
前記バッファは、前記ダイジェストの情報を含むメッセージを生成し、前記ブロックチェーン上に記憶するために前記メッセージをセキュアなチャネルを通じて送信する、請求項４に記載のコンピュータにより実施される方法。
【請求項６】
受信側が、前記メッセージを前記バッファから受信し、前記メッセージを検証するために前記分散型記憶システムにアクセスする、請求項５に記載のコンピュータにより実施される方法。
【請求項７】
検証の後に、前記受信側は、前記ブロックチェーン上に記憶するために、前記データ構造の前記ダイジェストを送信する、請求項６に記載のコンピュータにより実施される方法。
【請求項８】
前記デジタルツインのセットから受信した前記データから導出した第２ダイジェストを有する第２データ構造を更に含む、請求項１乃至７のいずれか一項に記載のコンピュータにより実施される方法。
【請求項９】
各データ構造からの前記ダイジェストは、前記アクセス可能な分散型記憶システムに格納される、請求項８に記載のコンピュータにより実施される方法。
【請求項１０】
各データ構造からの前記ダイジェストは、請求項４に記載の前記バッファに格納され、前記バッファは、両方の前記ダイジェストを用いて前記分散型記憶システムにアクセスして、前記ダイジェストが同じか否かを確認し、同じ場合に、前記バッファは、ブロックチェーン上に記憶するために、前記ダイジェストのうちの１つを送信する、請求項９に記載のコンピュータにより実施される方法。
【請求項１１】
前記ダイジェストが異なると分かった場合、前記ダイジェストは、どのデジタルツインが応答していないかを検出するために検証される、請求項１０に記載のコンピュータにより実施される方法。
【請求項１２】
前記分散型記憶システムは、分散型ハッシュテーブルを有し、前記データ構造の前記ダイジェストは、前記デジタルツインのセットから受信した前記データから導出されたマークル木のルートである、請求項１乃至１１のいずれか一項に記載のコンピュータにより実施される方法。
【請求項１３】
コンピュータ実行可能命令を含むコンピュータ可読記憶媒体であって、前記コンピュータ実行可能命令は、実行されると、１つ以上のプロセッサを、請求項１乃至１２のいずれか一項に記載の方法を実行するよう構成する、コンピュータ可読記憶媒体。
【請求項１４】
電子装置であって、
インタフェース装置と、
前記インタフェース装置に結合された１つ以上のプロセッサと、
前記１つ以上のプロセッサに結合されたメモリであって、前記メモリはコンピュータ実行可能命令を格納し、前記コンピュータ実行可能命令は、実行されると、前記１つ以上のプロセッサを、請求項１乃至１２のいずれか一項に記載の方法を実行するよう構成する、メモリと、
を含む電子装置。
【請求項１５】
システムであって、請求項１乃至１２のいずれか一項に記載の方法を実行するよう構成され、前記システムは、
デジタルツインのセットと、
前記デジタルツインのセットからのデータを格納するアクセス可能な分散型記憶システムと、
前記デジタルツインのセットから受信した前記データの圧縮バージョンを表すデータ構造のダイジェストを計算するプロセッサと、
ブロックチェーン上に記憶するために前記ダイジェストを送信する送信機と、
を含むシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書は、概して、ブロックチェーンネットワークによる実装に適するコンピュータにより実施される方法及びシステムに関する。本発明は、限定ではなく、Ｂｉｔｃｏｉｎブロックチェーンと共に使用することに特に適する。本発明は、コンピュータにより実施されるシステムにおけるセキュリティ、完全性、及び効率にも関する。
【背景技術】
【０００２】
工業的資産は、種々のモデル及び膨大な数のデータソースに依存して設計される。データ科学者は、膨大な量のデータと共に研究し、一方で、専門チームが彼ら固有の研究について別個にモデルを生成し分析を行う。大部分の現在の情報及び計算は、重要な決定のために直ちに利用可能ではない場合がある。このような個々に（in  silos）研究する方法は、コストと非効率を引き起こし、不確実性を生成し、膨大な時間及びリソースを浪費させる。
【０００３】
デジタルツインは、テストを行いエラー又は障害を防ぐことの可能な現実のオブジェクト、プロセス、又はサービスの仮想動的コピーである。製品、航空機又は車両の機械的部分、生産プロセス、等のデジタルツインを生成することが可能である。デジタルツインは、シミュレーション及びリアルタイムデータ及び応答の革命的な結合として理解できる。
【０００４】
プロセス又はシステムのシミュレーションの動作は、シミュレーションに含まれる全ての変数が過去にどのように動作したかの知識、及びテスト中のシステムが観察され全ての入力／出力変数が記録される十分に大きな時間枠を前提とする。過去の知識を有することは、良好なシミュレータを構築するために必須である。リアルタイム情報をこのプロセスに追加する可能性は、システム又はプロセスの正確な動作をミラーリングする時点まで、シミュレーション全体の正確さ及び精度を劇的に向上できる。
【０００５】
図１は、物理的システムのためのデジタルツインの単純な概略図を示す。センサは、例えば航空機の部品であり得る物理的システムに関するデータを収集する。履歴データは、デジタルツインを構築するために使用され、デジタルツインは次に、更なるリアルタイムデータがシステムに供給されるとき、物理的システムのシミュレーションを展開する。デジタルツインは、物理的システムのパラメータを監視し、物理的システムの現在の状態を評価し、物理的システムの将来の状態を予測し、テストを行い、前述のような障害を予測するために使用できる。
【発明の概要】
【０００６】
後述するように、多数の問題が、現在のデジタルツイン技術と共に特定されている。
【０００７】
デジタルツインの信頼性及びセキュリティは、デジタルツインが依存するデータのセキュリティに依存する。データは、デジタルツインの動作がリアルタイム動作の間に改ざんできないように及び物理的システムの状態を正しく反映するように、理想的には不変であるべきである。これは、例えば、第三者がデータに干渉して、デジタルツインが物理的システムのリアルタイム状態を正しく表さないようにすることを防ぐために、重要であり得る。これは、デジタルツインが、物理的システムにおける動作エラー又は障害に繋がり得る誤った情報を提供することをもたらし得る。
【０００８】
さらに、格納されたデータは、システムの性能の正確な信頼できる過去の記録が保たれるように、不変であるべきである。これは、例えば、物理的システムが故障し、物理的システムがなぜ故障したのかを確認するためにデータを調べる必要がある場合に、及び物理的システムのユーザ又は製造者の一部に責任が存在する場合に、重要になることがある。これは、特定の動作が早期の措置の実行に依存し得る処理においても重要になることがある。この場合、第三者は、格納されたデータを変更して、特定の動作が実行されたように見せかけ、実際に実行されていないときに、誤って更なる動作をトリガする可能性がある。
【０００９】
更なる問題は、多数の関心パーティの各々に対するデータのアクセス可能性の問題である。パーティは矛盾する関心を有することがあり、したがって全てのパーティによりアクセス可能でありながらセキュア且つ不変であるデータの正確且つ公平な記録を有することが有利である。
【００１０】
更なる問題は、航空機のブラックボックスレコーダのような従来のデータ記憶ソリューションが、事故が生じた場合に損傷し又は損失し得ることである。
【００１１】
更なる問題は、前の動作が完了すると、更なる動作が要求されるシナリオであり、デジタルツインは、更なる動作が要求されることを示すことができるが、それが実際に実行されることを保証できない。例えば、デジタルツインは、特定の物理的プロセスが完了したことを示してよく、したがって、物理的プロセスの完了に対する支払いのような更なるステップを要求する。しかしながら、デジタルツインは、このような支払いが実際に行われることを保証できず、したがって、プロセスの当事者を信頼して支払い、又はプロセスの提供者の信頼性に依存して前払いして、プロセスを適正に完了する。
【００１２】
本発明の特定の実施形態の目的は、ここに説明されるようなソリューションを提供することにより、上述の問題を解決することである。
【００１３】
前述の問題が、デジタルツインを用いるリアルタイムアプリケーションを含む物理的システムから取得したデータ及びプロセスのための記憶システムとしてブロックチェーン技術を用いて解決できる。デジタルツインから生成されたデータは、例えば、物理的システムの１つ以上のパラメータを監視する１つ以上のセンサにより生成された物理的システムの１つ以上のパラメータに関連付けられたデータであり得る。ブロックチェーンは、デジタルツインにより生成されたデータの不変のトランザクション履歴を生成するために使用できる。エラー、障害、事故、災難が生じた場合に、関心パーティは不変データセットにアクセスし分析できる。これは、航空機のような安全重視のシステムにおいて特に重要であり得る。さらに、ブロックチェーンは、データの分散型記憶を提供するので、個々の記憶ユニットの損傷又は損失の影響を受けにくい。またさらに、デジタルツインからのデータは、ブロックチェーンネットワーク上のデジタルスマートコントラクトの実装において利用できる。これは、ステップが、ブロックチェーンネットワークにより、物理的システムの状態を示すデジタルツインにより受信されるデータに従い実行可能であることを保証できる。つまり、ブロックチェーンネットワークは、デジタルツインを組み込むシステム又は処理に関連する複数のパーティとのデジタルスマートコントラクトを実行するために使用可能である。
【００１４】
現在のブロックチェーン技術は、比較的頻繁ではない時間期間で比較的少ないデータ量が格納される必要があるとき、前述の機能を満たすことができる。しかしながら、ブロックサイズ制限、及びブロックが約１０分毎にブロックチェーンに組み込まれるだけであるという事実は、標準的なブロックチェーン技術が、生成されるデータ量が非常に大きく及び／又は高い頻度／忠実度で、例えば１秒毎又は１ミリ秒毎にデータを格納するという要件があるリアルタイムアプリケーションのための記憶システムとしてはあまり適さないことを意味する。ブロックチェーンをリアルタイムシステムのための記憶システムとして利用するために、これらの問題を克服するアプローチが、ここに記載される。
【００１５】
本発明の実施形態は、様々な形式で提供できる。例えば、実行されると１つ以上のプロセッサをここに記載の方法を実行させるよう構成するコンピュータ実行可能命令を含むコンピュータ可読記憶媒体が提供できる。電子装置であって、インタフェース装置と、インタフェース装置に結合された１つ以上のプロセッサと、１つ以上のプロセッサに結合されたメモリであって、メモリはコンピュータ実行可能命令を格納し、コンピュータ実行可能命令は、実行されると、１つ以上のプロセッサを、ここに記載の方法を実行するよう構成する、メモリと、を含む電子装置も提供できる。ここに記載のコンピュータにより実施される方法は、デジタルツイン、バッファ、ブロックチェーンネットワークノード、又は前記のコンポーネントの組み合わせを含むシステム、のうちの１つ以上の中にも実装できる。コンポーネントは、互いに遠隔に置かれ、又はコンポーネントのうちの１つ以上が統合されてよい。
【００１６】
詳細な説明において記載されるように、ブロックチェーンネットワークのためのコンピュータにより実施される方法であって、前記コンピュータにより実施される方法は、デジタルツインのセットからデータを受信するステップと、アクセス可能な分散型記憶システムに前記データを格納するステップと、前記デジタルツインのセットから受信した前記データの圧縮バージョンを表すデータ構造のダイジェストを計算するステップと、ブロックチェーン上に記憶するために前記ダイジェストを送信するステップと、を含むコンピュータにより実施される方法が提供される。
【００１７】
詳細な説明において、前記分散型記憶システムは、分散型ハッシュテーブルを有し、前記データ構造の前記ダイジェストは、前記デジタルツインのセットから受信した前記データから導出されたマークル木のルートである、一実施形態が記載される。しかしながら、方法は、前記デジタルツインのセットから受信したデータの圧縮バージョンを表すデータ構造の関連付けられたダイジェストを有する異なる暗号化機能を用いて実装することもできる。
【００１８】
データ構造（例えば、マークル木）は、分散型記憶システム（例えば分散型ハッシュテーブル）のどのノードに、データが格納されたかを識別するよう構成できる。さらに、データ構造は、アクセス可能な分散型記憶システムに格納できる。さらにまた、前記データ構造の前記ダイジェスト（例えば、マークル木のルート）は、前記ブロックチェーン上に記憶するために転送される前に、バッファへ送信でき、前記バッファは、前記データ構造の前記ダイジェストにより表される情報のサンプリング頻度を選択する。前記バッファは、前記ダイジェストの情報を含むメッセージを生成し、前記ブロックチェーン上に記憶するために前記メッセージをセキュアなチャネルを通じて送信できる。受信側は、前記バッファから前記メッセージを受信し、前記分散型記憶システムにアクセスして前記メッセージを検証できる。検証の後に、前記受信側は、次に、前記ブロックチェーン上に記憶するために、前記データ構造の前記ダイジェストを送信できる。
【００１９】
特定の構成に従い、前記デジタルツインのセットから受信した前記データから導出した第２ダイジェスト（例えば、第２マークル木は、デジタルツインのセットから受信したデータから導出した第２ルートを有する）を有する第２データ構造が提供され得る。各データ構造からのダイジェストは、アクセス可能な分散型記憶システムに格納できる。さらに、各データ構造からのダイジェストは、バッファに格納できる。前記バッファは、次に、両方のダイジェストを用いて前記分散型記憶システムにアクセスでき、前記ダイジェストが同じか否かを確認し、同じ場合に、前記バッファは、前記ダイジェストのうちの１つをブロックチェーン上に記憶するために送信する。その他の場合、前記ダイジェストが異なると分かった場合、前記ダイジェストは、どのデジタルツインが応答していないかを検出するために検証され得る。
【００２０】
実行されると１つ以上のプロセッサをここに記載の方法を実行させるよう構成するコンピュータ実行可能命令を含むコンピュータ可読記憶媒体が提供される。
【００２１】
電子装置であって、インタフェース装置と、インタフェース装置に結合された１つ以上のプロセッサと、１つ以上のプロセッサに結合されたメモリであって、メモリはコンピュータ実行可能命令を格納し、コンピュータ実行可能命令は、実行されると、１つ以上のプロセッサを、ここに記載の方法を実行するよう構成する、メモリと、を含む電子装置も提供される。
【００２２】
システムであって、ここに記載の方法を実行するよう構成され、前記システムは、デジタルツインのセットと、前記デジタルツインのセットからのデータを格納するアクセス可能な分散型記憶システムと、前記デジタルツインのセットから受信した前記データの圧縮バージョンを表すデータ構造のダイジェストを計算するプロセッサと、ブロックチェーン上に記憶するために前記ダイジェストを送信する送信機と、を含むシステムが提供される。
【００２３】
本発明は、単一のデジタルツインではなくデジタルツインのセットからのデータストリームを管理するブロックチェーンの方法を特に対象としている点で、デジタルツインに関連する従来技術と異なる。本発明の概念は、デジタルツインのセットからデータを受信するステップと、アクセス可能な分散型記憶システムに前記データを格納するステップと、前記デジタルツインのセットから受信した前記データの圧縮バージョンを表すデータ構造のダイジェストを計算するステップと、ブロックチェーン上に記憶するために前記ダイジェストを送信するステップと、を含む。
【００２４】
記載の実施形態において、前記分散型記憶システムは、分散型ハッシュテーブルを有し、前記データ構造の前記ダイジェストは、前記デジタルツインのセットから受信した前記データから導出されたマークル木のルートである。つまり、デジタルツイン毎に別個のマークル木ではなく、デジタルツインのセットに対して共通のマークル木構造が使用される。本発明は、デジタルツインからの膨大な量のデータを処理する問題に対するソリューションを提供すると同時に、該データをセキュアに検証させることも可能にする。本発明の場合には、ソリューションは、膨大な量のデータをデジタルツインのセットから管理させると同時に、ブロックチェーン上に格納される必要のあるデータ量を圧縮して、更にまた該データの検証を可能にする。これは、以下に簡単に議論するような従来技術と対照的である。
【００２５】
ＵＳ２０１７／０２８４６７４は、デジタルツインシステムを開示している。しかしながら、このようなデジタルツインシステムからのデータをブロックチェーン上に格納することに関する開示はなく、もちろん、本願明細書に記載するような特定の方法の開示もない。
【００２６】
ＣＮ１０５８１２１２６は、人間の生理学上のデータの取得、及び該データのブロックチェーン上での記憶を開示する。しかしながら、デジタルツインのセットからのデータを処理する、本願明細書に記載するような方法の開示はない。
【００２７】
Carlo  Gutierrezの文献「Boeing  Improves  Operations  with  Blockchain  and  the  Internet  of  Things」は、デジタルツインの利用、及びブロックチェーンへのデータの格納を開示している。しかしながら、この文献は、比較的高レベルの概略を提供するのみであり、これを実際にどのように達成するかに関する詳細を開示していない。ここでも、デジタルツインのセットからのデータを処理する、本願明細書に記載するような方法の開示はない。
【００２８】
Burkhard  Blechschmidtの文献「Digital  Twin  on  Blockchain,  Enabling  the  Circular  Economy」は、デジタルツイン及びブロックチェーンを含むアプリケーションに関する別の高レベルの文献である。ここでも、これを実際にどのように達成するかに関する詳細がなく、もちろん、デジタルツインのセットからのデータを処理する、本願明細書に記載するような方法の開示はない。
【００２９】
Trouton  et  al.による文献「３D  Opportunity  for  Blockchain」も、システムデータを管理するために、デジタルツインと結合したブロックチェーンの使用を開示する。ここでも、システムがデータをどのように処理し保存するよう構成されるかに関する詳細がない。特に、デジタルツインのセットからのデータストリームを処理する、本願明細書に記載するような方法の開示はない。
【００３０】
Stockerによる文献「Implementing  First  Industry  ４.０  Use    Cases  with  DAG  TangleーMachine  Tagging  for  Digital  Twins」も、データを管理するために、デジタルツインと結合したブロックチェーンの方法の使用を開示する。ここでも、システムがデータをどのように処理し保存するよう構成されるかに関する詳細がない。特に、デジタルツインのセットからのデータを処理する、本願明細書に記載するような方法の開示はない。
【図面の簡単な説明】
【００３１】
本発明の態様は、ここに記載の実施形態から明らかであり及びそれらを参照して教示される。本発明の実施形態は、単なる例を用いて及び添付の図面を参照して以下に説明される。
【図１】物理的システムのためのデジタルツインの単純な概略図を示す。
【図２】マークル木の一例を示す。
【図３】２つの異なるマークル木を示す。
【図４】４個のデジタルツインを含むシステム、４個のデジタルツインからのデータから導出されるルートを有するマークル木、及びルートが格納されるブロックチェーンを示す。
【図５】デジタルツインにより生成されたデータの存在の証拠としてのブロックチェーンの使用を説明するものであり、システムは図４に示したものと同様であるが、デジタルツインからのデータが分散型ハッシュテーブルに格納され、デジタルツインとブロックチェーンネットワークとの間の接続が故障した場合に退化（degeneracy）を提供する第２の二重化マークル木が提供される点が変更されている。
【図６】履歴の増分ハッシュのためのマークル木に基づくプロトコルに含まれるパーティを示す。
【図７】履歴の増分ハッシュのためのマークル木に基づくプロトコルに含まれる段階を示す。
【図８】履歴の増分ハッシュのためのマークル木に基づくプロトコルに含まれるステップを示す。
【図９】デジタルツインとブロックチェーンネットワークとの間の接続が故障した場合に退化を提供する、図５に示したミラーリング又は二重化マークル木を示す。
【図１０】送信の信頼性をチェックし及び一貫したデータを維持するために、ミラーリングされたルート及び検証のためのステップを示す。
【図１１】種々の実施形態が実装できるコンピューティング環境を示す概略図である。
【発明を実施するための形態】
【００３２】
本願明細書では、私たちは、全ての形式の電子的、コンピュータに基づく、分散型台帳を包含するために用語「ブロックチェーン」を使用する。これらは、限定ではないが、総意に基づくブロックチェーン及びトランザクションチェーン技術、許可及び未許可台帳、共有台帳、及びそれらの変形を含む。他のブロックチェーン実装が提案され開発されているが、ブロックチェーン技術の最も広く知られているアプリケーションは、Ｂｉｔｃｏｉｎ台帳である。Ｂｉｔｃｏｉｎは、ここでは、便宜上及び説明の目的で参照されることがあるが、本発明はＢｉｔｃｏｉｎブロックチェーンと共に使用することに限定されず、代替のブロックチェーン実装及びプロトコルが本発明の範囲に包含されることに留意すべきである。
【００３３】
ブロックチェーンは、コンピュータに基づく非集中型の分散型システムとして実装される総意に基づく電子台帳であり、ブロックにより構成され、ブロックはまたトランザクション及び他の情報により構成される。Ｂｉｔｃｏｉｎの場合には、各トランザクションは、ブロックチェーンシステムの中の参加者間でデジタルアセットの制御の移転を符号化するデータ構造であり、少なくとも１つのインプット及び少なくとも１つのアウトプットを含む。各ブロックは、前のブロックのハッシュを含む。これらのブロックは一緒に繋げられて、起源以来ブロックチェーンに書き込まれている全てのトランザクションの永久的な不変の記録を生成する。トランザクションは、スクリプトとして知られている小さなプログラムを含む。スクリプトは、それらのインプット及びアウトプットを埋め込まれ、トランザクションのアウトプットがどのように及び誰によりアクセス可能であるかを指定する。Ｂｉｔｃｏｉｎプラットフォームでは、これらのスクリプトはスタックに基づくスクリプト言語を用いて記述される。
【００３４】
トランザクションがブロックチェーンに書き込まれるためには、検証されなければならない。幾つかのネットワークノードは、マイナーとして動作し、各トランザクションが検証されることを保証するために作業を実行し、無効なトランザクションはネットワークから拒否される。例えば、ノードにインストールされたソフトウェアクライアントは、未使用トランザクションアウトプット（unspent  transaction  outputs：UTXO）を参照するトランザクションに対してこの検証作業を実行する。検証は、そのロック及びアンロックスクリプトを実行することにより実行されてよい。ロック及びアンロックスクリプトの実行が真（TRUE）と評価する場合、及び特定の他の条件が満たされた場合、トランザクションは有効であり、トランザクションはブロックチェーンに書き込まれてよい。したがって、トランザクションがブロックチェーンに書き込まれるためには、（ｉ）トランザクションを受信したノードにより検証され、トランザクションが有効な場合には、ノードが該トランザクションをネットワーク内の他のノードに中継する、（ｉｉ）マイナーにより構築された新しいブロックに追加される、（ｉｉｉ）マイニングされる、つまり過去のトランザクションのパブリック台帳に追加される、ことが必要である。トランザクションは、実際に取り消し不可能なトランザクションを作成するために十分な数のブロックがブロックチェーンに追加されると、承認されたと考えられる。書き込むとき、Ｂｉｔｃｏｉｎブロックチェーンネットワークは、約２０００個のトランザクションを含むブロックサイズに基づき、ブロックは約１０分毎にマイニングされる。
【００３５】
ブロックチェーン技術は、暗号通貨の実装の使用のために最も広く知られているが、デジタル事業家が、Ｂｉｔｃｏｉｎの基づく暗号セキュリティシステム及び新しいシステムを実装するためにブロックチェーンに格納できるデータの両方の使用を開発し始めている。ブロックチェーンが、暗号通貨において支払いと呼ばれるものだけに限定されない自動化タスク及びプロセスのために使用できれば、非常に有利になる。このようなソリューションは、ブロックチェーンの利益（例えば、永久性、イベントの記録の耐タンパ性、分散型処理、等）を利用しながら、それらの用途をより多様化し得る。
【００３６】
研究の一分野は、「スマートコントラクト」の実装のためのブロックチェーンに基づくコンピュータプログラムの使用である。これらは、機械可読コントラクト又は合意の条項の実行を自動化するよう設計されたコンピュータプログラムである。自然言語で記述される伝統的なコントラクトと異なり、スマートコントラクトは、結果を生成するためにインプットを処理できるルールを含む機械実行可能プログラムであり、これは次に該結果に依存して動作を実行させる。
【００３７】
本願明細書は、デジタルツインと結合した及び任意でスマートコントラクトの使用とも結合したブロックチェーンの使用を記載する。前述のように、デジタルツインは、サプライ管理プロセスを簡略化でき、安全重視のシステム（例えば、航空機及び航空産業又は一般に輸送）にとって重要な診断ツールであり得る。デジタルツインとブロックチェーン技術との結合のための可能性のあるアプリケーションは、多数ある。例えば、ブロックチェーンネットワークは、デジタルツインにより生成された情報を安全に格納するために、又はデジタルツインを組み込んだシステム又はプロセスに関連する複数の関連パーティとのコントラクトを実行するために、使用できる。デジタルツインは、物理的システムとブロックチェーンとの間のインタフェースとして効果的に機能できる。その結果、システム又はプロセスに関するデータは、デジタルツインにより取得され、ブロックチェーン上に格納でき、ブロックチェーンは、ブロックチェーン上に格納された１つ以上のスマートコントラクトに従い、受信したデータに基づき特定の動作をトリガできる。
【００３８】
デジタルツインにより生成されるリアルタイムデータの量は、ミラーリングされているシステムの複雑性に依存して変化し得る。例えば、デジタルツインは、オフィスの温度をミラーリングするよう構成できる。この場合、室温が、通常、急激な変化を有しないことを考えると、ネットワークを介して送信されるデータ量を削減するために、温度値を毎分（又は５分毎に）送信することが妥当であり得る。温度値が毎分である場合には、デジタルツインは、毎時６０個の温度値を（リアルタイムに）記録し送信する。
【００３９】
このようなデータ量は、もちろん、ブロックチェーン上の記憶にとっては実現可能であり、何ら大きな問題を生じない。しかしながら、ミラーリングされているシステムが、例えば、飛行中の航空機のエンジン、又は列車走行中の列車のシリンダである場合には、状況はより複雑になる。これらの例では、値を毎秒送信しても、十分ではない場合があり、より高い忠実度、例えばミリ秒毎のサンプルを保証する必要があり得る（航空機の場合に正に起こり得る）。また、記録される変数の数は変化し、複雑なシステムでは、高い忠実度で膨大な数の変数を記録することが要求されることがある。
【００４０】
デジタルツインにより送信されるデータの量及び頻度を考慮する必要は、特定のオブジェクト又はプロセスに関連する情報を格納するための可能なバックボーンインフラストラクチャとしてブロックチェーンを考えるとき、必然的に伴う重要な前提である。デジタルツインにより生成されるデータの量は非常に多く、したがって、このような膨大な量のデータを管理することは、デジタルツインの構造をブロックチェーンとインタフェースしようとするとき、非常に困難になり得る。本願明細書には、マークル木に基づき以下の特徴を有する改良されたプロトコルが記載される。
（１）私たちは、ＤＨＴ（分散型ハッシュテーブル）にデジタルツインのセットにより生成された非常に膨大な情報を記憶すること、及びパブリックブロックチェーンにマークル木のルートの対応する値を記憶することを可能にするソリューションを提案する。
（２）私たちは、デジタルツインのセットにより生成されたデータの存在の証拠として、及びＤＨＴのどのノードに実際のデータが格納されたかを識別する方法として、マークル木構造の使用を提案する。
（３）私たちは、追加のセキュリティレイヤ及びバッファから受信側へ送信されるデータの信頼性を導入するために、ミラーリングされたマークル木の概念を提案する。
【００４１】
＜マークル木＞
ハッシュ関数は、インプットを取り入れ、固定長のアウトプットを生成する一方向関数である。うまく設計されたハッシュ関数は、２つのインプットが高い確率で同じアウトプットを生成（衝突）しないという特性に基づく。したがって、ハッシュは、所与のコンテンツピースのユニークな識別子として考えることができる。
【００４２】
例えば、ファイルＦは、小さなチャンクに分割し及びそれらをネットワークに渡り分散させることにより、ピアツーピアネットワークに格納できる。このプロセスに含まれるピアは、十分な帯域幅及びディスク空間を提供することを要求される。さらに、ピアは、匿名であり信頼不要である。したがって、最初にコンテンツが正当であることを検証しないで、ピアからＦを受け取ることは危険なことがある。
【００４３】
マークル木は、ピアのネットワークに渡るデータを効率的に検証することを可能にするユニークな特性を有する。マークル木は、図２に示すように、そのノードがデータのピースの代わりにハッシュを格納する２分木である。リーフノードは、データの部分のハッシュを格納し、親ノードは、左及び右の子の連結のハッシュを格納する。
【００４４】
図３に示すように、基本的特性は、２つのマークル木を比較するためにチェックする必要のある要素はルートだけであることである。２つのルートＲ及びＳが異なるので、２つのマークル木は異なる。したがって、２つの木は、２つの異なるデータセットを表し、例えば左の｛ａ，ｂ，ｃ，ｄ｝及び右の｛ａ，ｂ，ｃ，ｅ｝である。
【００４５】
＜履歴の増分ハッシュ＞
ブロックチェーンに格納された情報は、デジタルツインにより生成されたデータではないが、所与の時間枠Ｔの中で生成された所与のデータ量Ｄの署名されたハッシュである。
【００４６】
履歴の増分ハッシュは、以下のステップに基づく。
（１）デジタルツインは、所与の頻度ｆでデータを記録し始める；
（２）データはプライベートノードに記録される；
（３）時間Ｔ０で、ノードは、デジタルツインにより記録されたデータをハッシングする第１ハッシュ（Ｈ０）を生成する：時間Ｔ０で、（Ｈ０）＝Ｈ（Ｄ）であり、ローカル及びブロックチェーン上の両方にハッシュを記録する；
（４）時間Ｔ０＋ｘで、全ての新しいハッシュが前のハッシュとリンクされ（第２ハッシュはＨ０とリンクされ、以下同様である）、ブロックチェーン上に記録されるハッシュのチェーンを生成する。
【００４７】
ブロックチェーンは、デジタルツインにより生成されたデータの全体の履歴を再構築するために及びプライベートノードにより記録された情報の真正さを検証するために使用可能なハッシュのシーケンスを含む。
【００４８】
さらに、デジタルツインが重要な情報を送信している場合、例えば、安全重視の運用に関連する装置の機械部品をミラーリングしている場合、情報はセキュアなチャネルを通じてネットワークを介して送信されるべきである。
【００４９】
＜存在の証拠として使用されるブロックチェーン＞
マークル木の特性は、複雑なシステム（例えば航空機）に接続されたデジタルツインから収集されたデータを格納する及び検証するプロセスをより効率的にするために利用できる。実際に、デジタルツインの数と同じくらい多くのハッシュを格納する代わりに、図４（ａ）〜（ｃ）に示すように、観察中のシステム（system  under  observation：SUO）を表すマークル木のルートだけを格納することが可能である。
【００５０】
図４（ａ）は、航空機の特定の部品を擬態する４個のデジタルツイン｛ａ，ｂ，ｃ，ｄ｝により監視される観察中のシステムを示す。デジタルツインは、所与のレートでデータを生成する。データは、プライベートノード（又は複数のノード）に格納され、それらのハッシュはルートを計算するために使用される（図４（ｂ））。ブロックチェーン上に格納される情報は、マークル木のルートのみである（図４（ｃ））。これは、デジタルツインのアレイにより生成される情報の量が、ブロックチェーンに対する記憶要件に影響を与えないことを意味する。また、各タイムスタンプ（マークル木のルート）を生成するために使用される頻度は、アプリケーションに依存することに留意する。
【００５１】
このように、私たちは、生成されたデータの存在のオンチェーンプルーフを構築するために、マークル木及びデジタルツインを使用できる。図５（ａ）及び５（ｂ）は、デジタルツインにより生成されたデータの存在の証拠としてのブロックチェーンの使用を示す。ブロックチェーン上に格納されたデータ（図５（ｂ））は、図５（ａ）に示すような、特定の時間における、デジタルツインにより生成され分散型ハッシュテーブル（ＤＨＴ）に格納されたデータセットの存在を証明するために使用され得る。記録されたハッシュは、ＤＨＴのどのノードが特定の情報を含むかを識別するためにも使用され得る。
【００５２】
次の章で、私たちは、（単一の又は組み合わせの）マークル木を用いてデジタルツインにより生成されたデータを格納するための改良されたプロトコルを提案する。
【００５３】
＜履歴の増分ハッシュのためのマークル木に基づくプロトコル＞
私たちは、ブロックチェーンをデジタルツインのアレイにより生成された情報の格納のための保証されたシステムとして使用するために、マークル木及び履歴の増分ハッシュに基づく最適化されたソリューションを提案する。
【００５４】
図６は、１つのソリューションに関連するパーティの方式を示す。セキュアなチャネルを実装するために、私たちは、送信側（図６のケース（Ａ）におけるバッファ）と受信側との間の共有鍵Ｋを生成する必要があり、鍵Ｋは送信側及び受信側にのみ知られている必要がある。バッファの役割は、デジタルツインのセットを表すマークル木をセキュアなチャネルに接続するインタフェースとして動作することである。このプロセスの間に、デジタルツインにより生成された生データ及びマークル木のハッシュにより構成されるデータストリームＳは、個別メッセージ｛ｍ１，ｍ２，．．．，ｍｎ｝のシーケンスに変換される。バッファは、生成された全データの収集、格納、及び送信を引き受ける。Ｓの離散化及びｎ個の必要なメッセージの生成の後に、鍵Ｋｉの新しい値が各メッセージｍｉについて生成される。鍵生成プロトコルは、バッファと受信側との間で、セキュアなチャネルが確立される度に、例えばメッセージｍｉが送信される度に、ユニークな鍵（セッション鍵）を構成するために使用される。バッファは、例えば送信時のネットワークの条件に従い、何個の個別メッセージが送信されるかを決定する。
【００５５】
チャネルを介して送信される各個別メッセージｍｉについて、バッファはハッシュＨ（ｍｉ）を計算し格納する。バッファは、次に、メッセージｍｈ＝Ｈ（ｍ１），Ｈ（ｍ２），．．．，Ｈ（ｍｎ）を構成し、ｍＨ＝Ｈ（ｍｈ）を付加して手順を終わりにする。受信側は、ｍｈ及びｍＨを用いて検証できるメッセージのシーケンスを受信する。
【００５６】
＜プロトコル＞
前章に記載したソリューションは、ＳＵＯをミラーリングするデジタルツインのセットが大容量データを生成しないプロセス／システムに限定される又は関連する場合に動作する。ＳＵＯが膨大な数のデジタルツインにより特徴付けられるとき、又はデジタルツインのセットが大容量データを必要とする多数の変数により記述される複雑なシステムをミラーリングしているとき、所与の時間におけるメッセージ（生データを含む）及び関連するマークル木のルートの両方の送信は、効率的でない場合がある。この章で、私たちは、（ｉ）ＤＨＴ上への生データの直接記憶、（ｉｉ）ブロックチェーン上の関連するマークル木のルートの計算、送信、及び記憶、により特徴付けられるプロトコルを提案する。
【００５７】
提案するプロトコルは、図７に示す以下のステップに基づく。
（１）（ａ）システムをミラーリングするデジタルツインのセットにより（絶えず）提供されるデータは、（ｂ）ＤＨＴに格納される。
（２）（ａ）マークル木は、システムをミラーリングする全てのデジタルツインを一緒にリンクするために使用される。木のルートのみが、送信されブロックチェーン上に格納される。
（３）ステップ（ｂ）の間、バッファは、マークル木のルートにより表される情報のサンプリング頻度の選択を担う。頻度は、制御下のシステム及び所望の分解能に依存する。
（４）ステップ（ｂ）でバッファにより生成されたメッセージは、（ｃ）セキュアなチャネルを介して送信され、ステップ（ｄ）で受信側により受信される。
（５）受信側は、ＤＨＴへのアクセスを有し、ＤＨＴにはデジタルツインのセットにより生成されたデータが格納される。ＤＨＴは、情報の完全性を検証するために使用できる。使用されるＤＨＴは、プライベートプラットフォームである。したがって、非認証ユーザは、ＤＨＴ内に格納された情報にアクセスできない。
（６）最終ステップとして、マークル木のルートのハッシュがブロックチェーン上に格納される。
【００５８】
（ｂ）受信側は、ＳＵＯとブロックチェーンとの間のインタフェースとして動作する。受信されたマークル木のルートの数は非常に多くなり得るので、またネットワーク遅延を考慮すると、ブロックチェーン上に公開されるまでに受信される情報を一時的に格納する必要がある。さらに、受信側は、所与のルートが正しいか及び所与のマークル木により表されるかを以下により検証できる：
・メッセージｍｈ及びｍＨをチェックすることによる；
・関連するＤＨＴにアクセスすることによる。
【００５９】
図８は、履歴の増分ハッシュのためのマークル木に基づくプロトコルに含まれるステップを示す。
【００６０】
前述のアプローチは、デジタルツインのセットからの大容量データの管理を可能にするが、１つの起こり得る問題は、デジタルツインとネットワークとの間の接続の故障のために矛盾したデータを生じることであり得る。次の章では、私たちは、プロトコルの信頼性及びセキュリティを向上するための改良されたソリューションを説明する。
【００６１】
＜ミラーリングされたマークル木＞
送信プロトコルのステップＢの信頼性を向上するために、つまり、マークル木のルートがバッファに正しく格納されるかどうかを評価するために、私たちは、図９に示す二重化構造を提案する。
【００６２】
マークル木のルートの２つのハッシュＲ及びＲ’は、ＤＨＴ及びバッファに格納され、デジタルツインのアレイが一貫したデータを提供しているか否かを検証するために使用できる。マークル木のルートの一貫性をチェックするために、キャッシュシステムがバッファに追加される。
【００６３】
バッファは、３個のルートのセット：つまり、キャッシュセット、承認済みセット、及び未承認セット、を含む。以下のステップは、プロトコルの追加部分を説明する。
・キャッシュセットは、ミラーリングされた木により生成されたルートのペア、つまりＲ及びＲ’を含む。
・バッファは、ルートＲ及びＲ’を用いてＤＨＴにアクセスできる。
・Ｒ及びＲ’によるＤＨＴへのアクセスが成功した場合、２つのルートは同じである、つまりルートＲは承認済みセットへと転送される。
・Ｒ及びＲ’によるＤＨＴへのアクセスが不調である場合、ルートＲは未承認セットへと転送される。
【００６４】
承認済みセットの中のルートは、ネットワークを介して転送される。一方、未承認セットの中のルートは、どのデジタルツインが正しく応答していないかを検出するために検証される。図１０は、ミラーリングされたルート及び検証のためのステップを示す。
【００６５】
＜コンピューティング環境＞
図１１は、種々の実施形態が実装できるコンピューティング環境を示す概略図である。本開示の少なくとも一実施形態を実施するために使用可能なコンピューティング装置２６００の簡略ブロック図が提供される。種々の実施形態で、コンピューティング装置２６００は、上述の図示のシステムのうちのいずれかを実装するために使用されてよい。例えば、コンピューティング装置２６００は、データサーバ、ウェブサーバ、ポータブルコンピューティング装置、パーソナルコンピュータ、又は任意の電子コンピューティング装置として使用するために構成されてよい。図１１に示すように、コンピューティング装置２６００は、主メモリ２６０８及び永久記憶装置２６１０を含む記憶サブシステム２６０６と通信するよう構成され得る１つ以上のレベルのキャッシュメモリ及びメモリ制御部（集合的に２６０２とラベル付けされる）を備える１つ以上のプロセッサを含んでよい。主メモリ２６０８は、図示のように、動的ランダムアクセスメモリ（ＤＲＡＭ）２６１８及び読み出し専用メモリ（ＲＯＭ）２６２０を含み得る。記憶サブシステム２６０６及びキャッシュメモリ２６０２は、本開示で説明されたようなトランザクション及びブロックに関連付けられた詳細事項のような情報の記憶のために使用されてよい。プロセッサ２６０２は、本開示で説明されたような任意の実施形態のステップ又は機能を提供するために利用されてよい。
【００６６】
プロセッサ２６０２は、１つ以上のユーザインタフェース入力装置２６１２、１つ以上のユーザインタフェース出力装置２６１４、及びネットワークインタフェースサブシステム２６１６とも通信できる。
【００６７】
バスサブシステム２６０４は、コンピューティング装置２６００の種々のコンポーネント及びサブシステムが意図した通りに互いに通信できるようにするメカニズムを提供してよい。バスサブシステム２６０４は、単一のバスとして概略的に示されるが、バスサブシステムの代替の実施形態は、複数のバスを利用してよい。
【００６８】
ネットワークインタフェースサブシステム２６１６は、他のコンピューティング装置及びネットワークへのインタフェースを提供してよい。ネットワークインタフェースサブシステム２６１６は、幾つかの実施形態では、コンピューティング装置２６００の他のシステムからデータを受信し及びそれへデータを送信するインタフェースとして機能してよい。例えば、ネットワークインタフェースサブシステム２６１６は、データ技術者が、装置をネットワークに接続することを可能にする。その結果、データ技術者は、データセンタのような遠隔地にいがなら、データを装置へ送信し、データを装置から受信できる。
【００６９】
ユーザインタフェース入力装置２６１２は、キーボード、統合型マウス、トラックボール、タッチパッド、又はグラフィックタブレットのような指示装置、スキャナ、バーコードスキャナ、ディスプレイに組み込まれたタッチスクリーン、音声認識システム、マイクロフォンのようなオーディオ入力装置、及び他の種類の入力装置のような、１つ以上のユーザ入力装置を含んでよい。通常、用語「入力装置」の使用は、コンピューティング装置２６００に情報を入力する全ての可能な種類の装置及びメカニズムを含むことを意図する。
【００７０】
１つ以上のユーザインタフェース出力装置２６１４は、ディスプレイサブシステム、プリンタ、又はオーディオ出力装置のような非視覚的ディスプレイ、等を含んでよい。ディスプレイサブシステムは、陰極線管（CRT）、液晶ディスプレイ（LCD）、発光ダイオード（LED）ディスプレイ、又はプロジェクションのような平面装置、又は他のディスプレイ装置を含んでよい。通常、用語「出力装置」の使用は、コンピューティング装置２６００から情報を出力する全ての可能な種類の装置及びメカニズムを含むことを意図する。１つ以上のユーザインタフェース出力装置２６１４は、例えば、ユーザインタフェースを提示して、ここに記載したプロセス及び変形を実行するアプリケーションとのユーザ相互作用が適切であるとき、そのような相互作用を実現するために使用されてよい。
【００７１】
記憶サブシステム２６０６は、本開示の少なくとも１つの実施形態の機能を提供する基本プログラミング及びデータ構造を記憶するコンピュータ可読記憶媒体を提供してよい。アプリケーション（例えば、プログラム、コードモジュール、命令）は、１つ以上のプロセッサにより実行されると、本開示の１つ以上の実施形態の機能を提供し、記憶サブシステム２６０６に格納されてよい。これらのアプリケーションモジュール又は命令は、１つ以上のプロセッサ２６０２により実行されてよい。記憶サブシステム２６０６は、更に、本開示に従い使用されるデータを格納するレポジトリを提供する。例えば、主メモリ２６０８及びキャッシュメモリ２６０２は、プログラム及びデータのための揮発性記憶を提供できる。永久記憶装置２６１０は、プログラム及びデータの永久（不揮発性）記憶を提供でき、磁気ハードディスクドライブ、取り外し可能媒体に関連付けられた１つ以上のフロッピディスクドライブ、取り外し可能媒体に関連付けられた１つ以上の光ドライブ（例えば、ＣＤ−ＲＯＭ、又はＤＶＤ、又はＢｌｕｅ−Ｒａｙ）ドライブ、及び他の同様の記憶媒体を含んでよい。このようなプログラム及びデータは、本開示に記載した１つ以上の実施形態のステップを実行するためのプログラム、及び本開示に記載したトランザクション及びブロックに関連付けられたデータを含み得る。
【００７２】
コンピューティング装置２６００は、ポータブルコンピュータ装置、タブレットコンピュータ、ワークステーション、又は後述する任意の他の装置を含む種々のタイプのものであってよい。さらに、コンピューティング装置２６００は、１つ以上のポート（例えば、USB、ヘッドフォンジャック、光コネクタ、等）を通じてコンピューティング装置２６００に接続可能な別の装置を含み得る。コンピューティング装置２６００に接続され得る装置は、光ファイバコネクタを受けるよう構成される複数のポートを含んでよい。したがって、この装置は、光信号を、処理のために装置を接続するポートを通じてコンピューティング装置２６００に送信される電気信号に変換するよう構成されてよい。コンピュータ及びネットワークの絶えず変化する特性により、図１１に示したコンピューティング装置２６００の説明は、装置の好適な実施形態を説明する目的の特定の例としてのみ意図される。図１１に示したシステムより多くの又は少ないコンポーネントを有する多くの他の構成が可能である。
【００７３】
＜まとめ＞
本願明細書で、私たちは、デジタルツインのアレイにより生成されたデータを格納するための、マークル木の使用に基づくソリューションを提案した。
【００７４】
デジタルツインにより生成された情報を格納するためにパブリックブロックチェーンを使用することの主な問題は、デジタルツインにより生成されるデータの量が非常に多く、そのような大容量データセットをパブリック分散型台帳に格納することが、それらの構造により課される技術的制限があるならば不可能であり得ることである。
【００７５】
本願明細書では、
（１）私たちは、ＤＨＴ（分散型ハッシュテーブル）にデジタルツインのセットにより生成された非常に膨大な情報を記憶すること、及びパブリックブロックチェーンにマークル木のルートの対応する値を記憶することを可能にするソリューションを記載した。
（２）私たちは、デジタルツインのセットにより生成されたデータの存在の証拠として、及びＤＨＴのどのノードに実際のデータが格納されたかを識別する方法として、マークル木構造の使用を記載した。
（３）私たちは、追加のセキュリティレイヤ及びバッファから受信側へ送信されるデータの信頼性を導入するために、ミラーリングされたマークル木の概念を記載した。
【００７６】
上述の実施形態は、本発明を限定するのではなく、説明すること、及び当業者は添付の特許請求の範囲により定められる本発明の範囲から逸脱することなく多くの代替的実施形態を考案できることに留意すべきである。特許請求の範囲において、括弧内の任意の参照符号は、請求項を限定することを意図しない。用語「有する」及び「含む」（comprising、comprises）等は、任意の請求項又は明細書全体に列挙されたもの以外の要素またはステップの存在を排除しない。本願明細書では、「有する」は「有する又は構成される」を意味し、「含む」は「含む又は構成される」を意味する。要素の単数の参照は、該要素の複数の参照を排除しない。逆も同様である。本発明は、幾つかの別個の要素を含むハードウェアにより、及び適切にプログラムされたコンピュータにより、実装できる。幾つかの手段を列挙する装置クレームでは、これらの手段のうちの幾つかは、１つの同じハードウェアアイテムにより具現化されてよい。単に特定の手段が相互に異なる従属請求項に記載されるという事実は、これらの手段の組み合わせが有利に使用されないことを示さない。
【図１】
2021501935.tif 000003
【図２】
2021501935.tif 000004
【図３】
2021501935.tif 000005
【図４】
2021501935.tif 000006
【図５】
2021501935.tif 000007
【図６】
2021501935.tif 000008
【図７】
2021501935.tif 000009
【図８】
2021501935.tif 000010
【図９】
2021501935.tif 000011
【図１０】
2021501935.tif 000012
【図１１】
2021501935.tif 000013
【国際調査報告】
2021501935.tif 000014
2021501935.tif 000015
2021501935.tif 000016
2021501935.tif 000017
2021501935.tif 000018