(57)【要約】  デジタルツインから取得したデータのための記憶システムとしてブロックチェーン技術を使用するコンピュータにより実施される方法及びシステムが記載される。ブロックチェーンは、デジタルツインにより生成されたデータの不変のトランザクション履歴を生成するために使用できる。エラー、障害、事故、災難が生じた場合に、関心パーティは不変データセットにアクセスし分析できる。ブロックチェーンネットワークは、デジタルツインから受信したデータに基づきデジタルスマートコントラクトを実行することもできる。本発明は、Ｂｉｔｃｏｉｎブロックチェーン又は別のブロックチェーンプロトコルと関連して使用されてよい。
2021502018.tif 000002
【特許請求の範囲】
【請求項１】
ブロックチェーンのための、コンピュータにより実施される方法であって、前記コンピュータにより実施される方法は、
バッファにおいてデジタルツインからデータストリームを受信するステップと、
前記データストリームを個別メッセージのシーケンスに変換するステップと、
ブロックチェーンにトランザクションを後に記録するために、個別メッセージの前記シーケンスをブロックチェーンネットワークの受信ノードへ送信するステップであって、前記トランザクションは、個別メッセージの前記シーケンスに関連付けられたデータを含む、ステップと、
を含むコンピュータにより実施される方法。
【請求項２】
個別メッセージの前記シーケンスは、メッセージの前記シーケンスのうちの各メッセージを暗号化することにより、セキュアなチャネルを通じて、前記バッファから前記受信ノードへ送信される、請求項１に記載のコンピュータにより実施される方法。
【請求項３】
前記セキュアなチャネルは、各メッセージを暗号化し及び解読するための共有鍵を生成するために、前記バッファと前記受信ノードとの間の鍵交渉プロトコルを用いて確立される、請求項２に記載のコンピュータにより実施される方法。
【請求項４】
前記セキュアなチャネルが確立される度に、前記共有鍵の新しい値が生成される、請求項３に記載のコンピュータにより実施される方法。
【請求項５】
前記受信ノードへ送信される個別メッセージ毎に、前記共有鍵の新しい値が生成される、請求項３又は４に記載のコンピュータにより実施される方法。
【請求項６】
前記バッファは、前記受信ノードへ送信される個別メッセージの数及び／又はレートを決定する、請求項１乃至５のいずれか一項に記載のコンピュータにより実施される方法。
【請求項７】
前記バッファは、送信するときの前記ブロックチェーンネットワークの状態を示す１つ以上のパラメータに基づき、前記受信ノードへ送信される個別メッセージの前記数及び／又はレートを決定する、請求項６に記載のコンピュータにより実施される方法。
【請求項８】
前記バッファは、送信される個別メッセージの前記数を追跡するカウンタを初期化する、請求項１乃至７のいずれか一項に記載のコンピュータにより実施される方法。
【請求項９】
前記受信ノードへ送信される各個別メッセージｍｉについて、前記バッファはハッシュＨ（ｍｉ）を計算し格納する、請求項１乃至８のいずれか一項に記載のコンピュータにより実施される方法。
【請求項１０】
多数の個別メッセージが送信された時間ｔの後に、前記バッファは、前記時間ｔまでに送信された個別メッセージに関連するハッシュのシーケンスで構成されるメッセージｍｈを送信する、請求項９に記載のコンピュータにより実施される方法。
【請求項１１】
前記バッファは、前記メッセージｍｈのハッシュを含む更なるメッセージｍＨを送信する、請求項１０に記載のコンピュータにより実施される方法。
【請求項１２】
個別メッセージの前記シーケンスは、２つのセキュアなチャネルを通じて、前記バッファから前記受信ノードへ送信される、請求項１乃至１１のいずれか一項に記載のコンピュータにより実施される方法。
【請求項１３】
ブロックチェーンのための、コンピュータにより実施される方法であって、
ブロックチェーンネットワークの受信ノードにおいて、請求項１乃至１２のいずれか一項に記載のコンピュータにより実施される方法に従い、デジタルツインから、データストリームから生成された個別メッセージのシーケンスを受信するステップと、
ブロックチェーンにトランザクションを後に記録するために、個別メッセージの前記シーケンスを検証するステップであって、前記トランザクションは、個別メッセージの前記シーケンスに関連付けられたデータを含む、ステップと、
を含むコンピュータにより実施される方法。
【請求項１４】
個別メッセージの前記シーケンスは、前記受信ノードにおいて、ｍｈ及びｍＨを用いて検証され、ｍｈは時間ｔまでに送信された個別メッセージに関連するハッシュのシーケンスで構成され、ｍＨは前記メッセージｍｈのハッシュを含む、請求項１３に記載のコンピュータにより実施される方法。
【請求項１５】
個別メッセージの前記シーケンスは、２つのセキュアなチャネルを通じて受信され、該２つのセキュアなチャネルにより、比較器は、前記２つのセキュアなチャネルを介して送信された個別メッセージの前記シーケンスが一致するかどうかを検証でき、前記２つのセキュアなチャネルから受信した個別メッセージの前記シーケンスが異なる場合、前記受信ノードは前記シーケンスを拒否し、個別メッセージの前記シーケンスを再送するよう通知を送信する、請求項１３又は１４に記載のコンピュータにより実施される方法。
【請求項１６】
検証の後に、個別メッセージの前記シーケンスは、前記ブロックチェーンネットワークの分散型メモリプールに格納される、請求項１３乃至１５のいずれか一項に記載のコンピュータにより実施される方法。
【請求項１７】
個別メッセージの前記シーケンスのハッシュは、前記ブロックチェーンに格納される、請求項１３乃至１６のいずれか一項に記載のコンピュータにより実施される方法。
【請求項１８】
前記受信ノードは、パブリックブロックチェーンネットワークのノードである、請求項１乃至１７のいずれか一項に記載のコンピュータにより実施される方法。
【請求項１９】
前記受信ノードは、プライベートブロックチェーンネットワークのノードで有り、前記バッファにより生成された個別メッセージの前記シーケンスは、個別メッセージの前記シーケンスに関連付けられたデータをパブリックブロックチェーンに取り込む前にプライベートブロックチェーンに格納される、請求項１乃至１７のいずれか一項に記載のコンピュータにより実施される方法。
【請求項２０】
前記バッファにより生成され前記プライベートブロックチェーンに格納された各メッセージｍｉについて、ハッシュＨ（ｍ）が生成され、前記パブリックブロックチェーンに格納される、請求項１９に記載のコンピュータにより実施される方法。
【請求項２１】
コンピュータ実行可能命令を含むコンピュータ可読記憶媒体であって、前記コンピュータ実行可能命令は、実行されると、１つ以上のプロセッサを、請求項１乃至２０のいずれか一項に記載の方法を実行するよう構成する、コンピュータ可読記憶媒体。
【請求項２２】
電子装置であって、
インタフェース装置と、
前記インタフェース装置に結合された１つ以上のプロセッサと、
前記１つ以上のプロセッサに結合されたメモリであって、前記メモリはコンピュータ実行可能命令を格納し、前記コンピュータ実行可能命令は、実行されると、前記１つ以上のプロセッサを、請求項１乃至２０のいずれか一項に記載の方法を実行するよう構成する、メモリと、
を含む電子装置。
【請求項２３】
バッファであって、前記バッファは、請求項１乃至１２のいずれか一項に記載の方法を実行するよう構成されるバッファ。
【請求項２４】
ブロックチェーンネットワークのノードであって、前記ノードは、請求項１３乃至２０のいずれか一項に記載の方法を実行するよう構成されるノード。
【請求項２５】
デジタルツインと、請求項２３に記載のバッファと、請求項２４に記。であって、
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書は、概して、ブロックチェーンネットワークのノードに実装するのに適するコンピュータにより実施される方法及びシステムに関する。本発明は、限定ではなく、Ｂｉｔｃｏｉｎブロックチェーンと共に使用することに特に適する。本発明は、コンピュータにより実施されるシステムにおけるセキュリティ、完全性、及び効率にも関する。
【背景技術】
【０００２】
今日の工業的資産は、種々のモデル及び膨大な数のデータソースに依存して設計される。データ科学者は、膨大な量のデータと共に研究し、一方で、専門チームが彼ら固有の研究について別個にモデルを生成し分析を行う。大部分の現在の情報及び計算は、重要な決定のために直ちに利用可能ではない場合がある。このような個々に（in  silos）研究する方法は、コストと非効率を引き起こし、不確実性を生成し、膨大な時間及びリソースを浪費させる。センサ及びプロセスにより生成されたデータを最大限に利用するために、デジタルツインが非常に役立つ。
【０００３】
デジタルツインは、テストを行いエラー又は障害を防ぐことの可能な現実のオブジェクト、プロセス、又はサービスの仮想動的コピーである。製品、航空機又は車両の機械的部分、生産プロセス、等のデジタルツインを生成することが可能である。デジタルツインは、シミュレーション及びリアルタイムデータ及び応答の革命的な結合として理解できる。
【０００４】
プロセス又はシステムのシミュレーションの動作は、シミュレーションに含まれる全ての変数が過去にどのように動作したかの知識、及び全ての入力／出力変数が記録されるテスト中のシステムが観察される十分に大きな時間枠を前提とする。過去の知識を有することは、良好なシミュレータを構築するために必須である。リアルタイム情報をこのプロセスに追加する可能性は、システム又はプロセスの正確な動作をミラーリングする時点まで、シミュレーション全体の正確さ及び精度を劇的に向上できる。この可能性は、工業界（Industry  ４．０）にとって革命的であり、Ｇａｒｔｎｅｒは、デジタルツインを２０１７年の最も重要な破壊的技術の１つとして分類した［http://www.gartner.com/smarterwithgartner/gartners-top-１０-technology-trends-２０１７/］。
【０００５】
図１は、物理的システムのためのデジタルツインの単純な概略図を示す。センサは、例えば航空機の部品であり得る物理的システムに関するデータを収集する。履歴データは、デジタルツインを構築するために使用され、デジタルツインは次に、更なるリアルタイムデータがシステムに供給されるとき、物理的システムのシミュレーションを展開する。デジタルツインは、物理的システムのパラメータを監視し、物理的システムの現在状態を評価し、物理的システムの将来状態を予測し、例えば物理的システムの障害を予測するためにテストを行い、例えば部品を交換することにより又は異なる方法で物理的システムを作動することにより、障害を回避することを助けるために使用できる。
【０００６】
後述するように、多数の問題が、現在のデジタルツイン技術と共に特定されている。
【０００７】
デジタルツインの信頼性及びセキュリティは、デジタルツインが依存するデータのセキュリティに依存する。データは、デジタルツインの動作がリアルタイム動作の間に改ざんできないように及び物理的システムの状態を正しく反映するために、理想的には不変であるべきである。これは、例えば、第三者がデータに干渉して、デジタルツインが物理的システムのリアルタイム状態を正しく表さないようにし、物理的システムの動作誤り又は障害を生じ得る誤った情報を提供するようにすることを防ぐために、重要であり得る。
【０００８】
さらに、格納されたデータは、システムの性能の正確な信頼できる過去の記録が保たれるように、不変であるべきである。これは、例えば、物理的システムが故障し、物理的システムがなぜ故障したのかを確認するためにデータを調べる必要がある場合に、及び物理的システムのユーザ又は製造者の一部に責任が存在する場合に、重要になることがある。これは、特定の動作が早期の措置の実行に依存し得る処理においても重要になることがある。この場合、第三者は、格納されたデータを変更して、特定の動作が実行されたように見せかけ、実際に実行されていないときに、誤って更なる動作をトリガする可能性がある。
【０００９】
更なる問題は、多数の関心パーティの各々に対するデータのアクセス可能性の問題である。パーティは矛盾する関心を有することがあり、したがって全てのパーティによりアクセス可能でありながらセキュア且つ不変であるデータの中立的な記録を有することが有利である。
【００１０】
更なる問題は、航空機のブラックボックスレコーダのような従来のデータ記憶ソリューションが、事故が生じた場合に損傷し又は損失し得ることである。
【００１１】
更なる問題は、前の動作が完了すると、更なる動作が要求されるシナリオであり、デジタルツインは、更なる動作が要求されることを示すことができるが、それが実際に実行されることを保証できない。例えば、デジタルツインは、特定の物理的プロセスが完了したことを示してよく、したがって、物理的プロセスの完了に対する支払いのような更なるステップを要求する。しかしながら、デジタルツインは、このような支払いが実際に行われることを保証できず、したがって、プロセスの当事者を信頼して支払い、又はプロセスの提供者の信頼性に依存して前払いして、プロセスを適正に完了する。
【発明の概要】
【００１２】
本発明の特定の実施形態の目的は、ここに説明されるようなソリューションを提供することにより、上述の問題を解決することである。
【００１３】
本発明の発明者らは、前述の問題が、デジタルツインを用いるリアルタイムアプリケーションを含む物理的システムから取得したデータ及びプロセスのための記憶システムとしてブロックチェーン技術を用いて解決できることを理解した。デジタルツインから生成されたデータは、例えば、物理的システムの１つ以上のパラメータを監視する１つ以上のセンサにより生成された物理的システムの１つ以上のパラメータに関連付けられたデータであり得る。ブロックチェーンは、デジタルツインにより生成されたデータの不変のトランザクション履歴を生成するために使用できる。エラー、障害、事故、災難が生じた場合に、関心パーティは不変データセットにアクセスし分析できる。これは、航空機のような安全重視のシステムにおいて特に重要であり得る。さらに、ブロックチェーンは、データの分散型記憶を提供するので、個々の記憶ユニットの損傷又は損失の影響を受けにくい。またさらに、本発明の発明者らは、デジタルツインが、パーティにデジタルスマートコントラクトをブロックチェーンネットワーク上で実施させることを可能にすることを理解した。これは、ステップが、ブロックチェーンネットワークにより、物理的システムの状態を示すデジタルツインにより受信されるデータに従い実行可能であることを保証できる。つまり、ブロックチェーンネットワークは、デジタルツインを組み込むシステム又は処理に関連する複数のパーティとのデジタルスマートコントラクトを実行するために使用可能である。
【００１４】
現在のブロックチェーン技術は、比較的頻繁ではない時間期間で比較的少ないデータ量が格納される必要があるとき、前述の機能を満たすことができる。しかしながら、ブロックサイズ制限、及びブロックが約１０分毎にブロックチェーンに組み込まれるだけであるという事実は、標準的なブロックチェーン技術が、生成されるデータ量が非常に大きく及び／又は高い頻度／忠実度で、例えば１秒毎又は１ミリ秒毎にデータを格納するという要件があるリアルタイムアプリケーションのための記憶システムとしてはあまり適さないことを意味する。ブロックチェーンをリアルタイムシステムのための記憶システムとして利用するために、これらの問題を克服するアプローチも、ここに記載される。アプローチは、デジタルツインからの膨大なデータを処理するためにブロックチェーンネットワーク内に実装される適切なプロトコル；ブロックチェーンネットワーク内でデータを処理するための変更されたブロックチェーンネットワークアーキテクチャ；デジタルツインからの膨大なデータを処理するためのデジタルツインとブロックチェーンネットワークとの間の適切なインタフェースの提供；のうちの１つ以上を含む。
【００１５】
デジタルツインからの膨大なデータを処理するための、デジタルツインとブロックチェーンネットワークとの間の適切なインタフェースを提供する観点から、コンピュータにより実施される方法であって、バッファにおいてデジタルツインからのデータストリームを受信するステップと、データストリームを個別メッセージのシーケンスに変換するステップと、ブロックチェーンにトランザクションを後に記録するために、個別メッセージのシーケンスをブロックチェーンネットワークの受信ノードへ送信するステップであって、トランザクションは、個別メッセージのシーケンスに関連付けられたデータを含コンピュータにより実施される方法が提供され得る。
【００１６】
個別メッセージのシーケンスは、メッセージのシーケンスのうちの各メッセージを暗号化することにより、セキュアなチャネルを通じて、バッファから受信ノードへ送信できる。セキュアなチャネルは、各メッセージを暗号化し及び解読するための共有鍵を生成するために、バッファと受信ノードとの間の鍵交渉プロトコルを用いて確立できる。共有鍵の新しい値は、セキュアなチャネルが確立される度に生成できる。例えば、受信ノードへ送信される個別メッセージ毎に、共有鍵の新しい値が生成される。
【００１７】
受信ノードへ送信される各個別メッセージｍｉについて、バッファはハッシュＨ（ｍｉ）を計算し格納できる。多数の個別メッセージが送信された時間ｔの後に、バッファは、時間ｔまでに送信された個別メッセージに関連するハッシュのシーケンスで構成されるメッセージｍｈを送信できる。バッファは、メッセージｍｈのハッシュを含む更なるメッセージｍＨも送信できる。個別メッセージのシーケンスは、受信ノードにおいて、ｍｈ及びｍＨを用いて検証でき、ｍｈは時間ｔまでに送信された個別メッセージに関連するハッシュのシーケンスで構成され、ｍＨはメッセージｍｈのハッシュを含む。
【００１８】
これらの特徴は、両方とも、デジタルツインからのデータをブロックチェーンネットワークへ送信するセキュアな手段を提供し、データがブロックチェーンネットワークにより一層迅速に処理される形式で提供されることを保証する。追加レベルのセキュリティが、個別メッセージのシーケンスを２つのセキュアなチャネルを通じて、バッファから受信ノードへ送信することにより提供できる。比較器は、２つのセキュアなチャネルを通じて送信された個別メッセージのシーケンスが一致するかどうかを検証でき、該２つのセキュアなチャネルから受信した個別メッセージのシーケンスが異なる場合、受信ノードはシーケンスを拒否し、個別メッセージのシーケンスを再送するよう通知を送信できる。
【００１９】
さらに、バッファは、送信された個別メッセージの数を追跡するカウンタを初期化でき、例えば送信するときのブロックチェーンネットワークの状態を示す１つ以上のパラメータに基づき、受信ノードへ送信される個別メッセージの数及び／又はレートを決定できる。ここでも、これはデータ管理を支援でき、ブロックチェーンネットワークがデータにより過負荷にならないことを保証する。
【００２０】
受信ノードのための、コンピュータにより実施される方法であって、ブロックチェーンネットワークの受信ノードにおいて、デジタルツインからのデータストリームから生成された個別メッセージのシーケンスを受信するステップと、ブロックチェーンにトランザクションを後に記録するために、個別メッセージのシーケンスを検証するステップであって、トランザクションは、個別メッセージのシーケンスに関連付けられたデータを含む、ステップと、を含む方法も提供される。トランザクションの記憶は、受信ノードに、ブロックチェーンネットワークの別のノードに、又はブロックチェーンネットワーク内の複数のノードに渡り分散して行われ得る。例えば、検証の後に、個別メッセージのシーケンスは、ブロックチェーンネットワークの分散メモリプールに格納できる。さらに、個別メッセージのシーケンス、又は個別メッセージのシーケンスのハッシュは、次に、ブロックチェーンに格納できる。
【００２１】
受信ノードは、パブリックブロックチェーンネットワークのノードであり得る。しかしながら、変更されたインタフェース構成では、受信ノードは、プライベートブロックチェーンネットワークのノードであり、バッファにより生成された個別メッセージのシーケンスは、個別メッセージのシーケンスに関連付けられたデータをパブリックブロックチェーンに取り込む前にプライベートブロックチェーンに格納される。この構成では、バッファにより生成されプライベートブロックチェーンに格納された各メッセージｍｉについて、ハッシュＨ（ｍ）が生成され、パブリックブロックチェーンに格納される。
【００２２】
本発明の実施形態は、様々な形式で提供できる。例えば、実行されると１つ以上のプロセッサをここに記載の方法を実行させるよう構成するコンピュータ実行可能命令を含むコンピュータ可読記憶媒体が提供できる。電子装置であって、インタフェース装置と、インタフェース装置に結合された１つ以上のプロセッサと、１つ以上のプロセッサに結合されたメモリであって、メモリはコンピュータ実行可能命令を格納し、コンピュータ実行可能命令は、実行されると、１つ以上のプロセッサを、ここに記載の方法を実行するよう構成する、メモリと、を含む電子装置も提供できる。ここに記載のコンピュータにより実施される方法は、デジタルツイン、バッファ、ブロックチェーンネットワークノード、又は前記のコンポーネントを含むシステム、のうちの１つ以上の中にも実装できる。コンポーネントは、互いに遠隔に置かれ、又はコンポーネントのうちの１つ以上が統合されてよい。
【図面の簡単な説明】
【００２３】
本発明の上述の及び他の太陽は、ここに記載の実施形態から明らかであり及びそれらを参照して教示される。本発明の実施形態は、単なる例を用いて及び添付の図面を参照して以下に説明される。
【図１】物理的システムのためのデジタルツインの単純な概略図を示す。
【図２】ブロックチェーン及びプロセスの条件を設定するスマートコントラクトを用いてパーティ間で自動化されたプロセスを有する商業チェーンの単純な例を示す。
【図３】図２のシステムにデジタルツインを組み込むプロセスの図を示す。
【図４】航空機に関連付けられたデジタルツインのための独立記憶システムとしてのブロックチェーンの使用を示す。
【図５】所与の時間枠の中のデジタルツインにより生成された所与の量のデータを格納するために使用できる増分ハッシュ手順を示す。
【図６】デジタルツインにより生成された膨大なデータを格納可能な変更されたブロックチェーンネットワークアーキテクチャを示す。
【図７】デジタルツインとブロックチェーンネットワークとの間のインタフェース構成として、バッファ、セキュアなチャネル、及び受信機の使用を示す。
【図８】デジタルツインからのデータストリームを個別メッセージのシーケンスに変換するステップを含む、図７に示すバッファの役割を示す。
【図９】セキュアなチャネルを介してバッファから受信したメッセージのシーケンスを検証するステップを含む、図７に示す受信機の役割を示す。
【図１０】第２のセキュアなチャネルを含むデジタルツインとブロックチェーンネットワークとの間のインタフェース構成の変更されたバージョン、及び２つのセキュアなチャネルを介して送信された個別メッセージのシーケンスが一致することを検証することにより、セキュリティレベルを向上する比較器、を示す。
【図１１】受信したメッセージを分散型ハッシュテーブルに格納し、次にハッシュをブロックチェーンに格納するステップを示す。
【図１２】パブリックブロックチェーンにデータを組み込む前に、デジタルツインからのデータを格納するプライベートブロックチェーンを含む、デジタルツインとブロックチェーンネットワークとの間のインタフェース構成の一部の変更されたバージョンを示す。
【図１３】種々の実施形態が実装できるコンピューティング環境を示す概略図である。
【発明を実施するための形態】
【００２４】
本願明細書では、私たちは、全ての形式の電子的、コンピュータに基づく、分散型台帳を包含するために用語「ブロックチェーン」を使用する。これらは、限定ではないが、総意に基づくブロックチェーン及びトランザクションチェーン技術、許可及び未許可台帳、共有台帳、及びそれらの変形を含む。他のブロックチェーン実装が提案され開発されているが、ブロックチェーン技術の最も広く知られているアプリケーションは、Ｂｉｔｃｏｉｎ台帳である。Ｂｉｔｃｏｉｎは、ここでは、便宜上及び説明の目的で参照されることがあるが、本発明はＢｉｔｃｏｉｎブロックチェーンと共に使用することに限定されず、代替のブロックチェーン実装及びプロトコルが本発明の範囲に包含されることに留意すべきである。
【００２５】
ブロックチェーンは、コンピュータに基づく非集中型の分散型システムとして実装される総意に基づく電子台帳であり、ブロックにより構成され、ブロックはまたトランザクション及び他の情報により構成される。Ｂｉｔｃｏｉｎの場合には、各トランザクションは、ブロックチェーンシステムの中の参加者間でデジタルアセットの制御の移転を符号化するデータ構造であり、少なくとも１つのインプット及び少なくとも１つのアウトプットを含む。各ブロックは前のブロックのハッシュを含み、これらのブロックは一緒に繋げられて、起源以来ブロックチェーンに書き込まれている全てのトランザクションの永久的な不変の記録を生成する。トランザクションは、スクリプトとして知られている小さなプログラムを含む。スクリプトは、それらのインプット及びアウトプットを埋め込まれ、トランザクションのアウトプットがどのように及び誰によりアクセス可能であるかを指定する。Ｂｉｔｃｏｉｎプラットフォームでは、これらのスクリプトはスタックに基づくスクリプト言語を用いて記述される。
【００２６】
トランザクションがブロックチェーンに書き込まれるためには、検証されなければならない。幾つかのネットワークノードは、マイナーとして動作し、各トランザクションが検証されることを保証するために作業を実行し、無効なトランザクションはネットワークから拒否される。例えば、ノードにインストールされたソフトウェアクライアントは、未使用トランザクションアウトプット（unspent  transaction  outputs：UTXO）を参照するトランザクションに対してこの検証作業を実行する。検証は、そのロック及びアンロックスクリプトを実行することにより実行されてよい。ロック及びアンロックスクリプトの実行が真（TRUE）と評価する場合、及び特定の他の条件が満たされた場合、トランザクションは有効であり、トランザクションはブロックチェーンに書き込まれてよい。したがって、トランザクションがブロックチェーンに書き込まれるためには、（ｉ）トランザクションを受信したノードにより検証され、トランザクションが有効な場合には、ノードが該トランザクションをネットワーク内の他のノードに中継する、（ｉｉ）マイナーにより構築された新しいブロックに追加される、（ｉｉｉ）マイニングされる、つまり過去のトランザクションのパブリック台帳に追加される、ことが必要である。トランザクションは、十分な数のブロックがブロックチェーンに追加されて、トランザクションが現実的に取り消しできないようになると、承認（confirm）されると考えられる。書き込むときに、Ｂｉｔｃｏｉｎブロックチェーンネットワークは、約２０００個のトランザクションを含むブロックサイズに基づき、ブロックは約１０分毎にマイニングされる。
【００２７】
ブロックチェーン技術は、暗号通貨の実装の使用のために最も広く知られているが、デジタル事業家が、Bitcoinの基づく暗号セキュリティシステム及び新しいシステムを実装するためにブロックチェーンに格納できるデータの両方の使用を開発し始めている。ブロックチェーンが、暗号通貨において支払いと呼ばれるものだけに限定されない自動化タスク及びプロセスのために使用できれば、非常に有利になる。このようなソリューションは、ブロックチェーンの利益（例えば、永久性、イベントの記録の耐タンパー性、分散型処理、等）を利用しながら、それらの用途をより多様化し得る。
【００２８】
研究の一分野は、「スマートコントラクト」の実装のためのブロックチェーンの使用である。これらは、機械可読コントラクト又は合意の条項の実行を自動化するよう設計されたコンピュータプログラムである。自然言語で記述され得る伝統的なコントラクトと異なり、スマートコントラクトは、結果を生成するためにインプットを処理できるルールを含む機械実行可能プログラムであり、これは次に該結果に依存して動作を実行させることができる。
【００２９】
本願明細書は、デジタルツインと結合して、及び任意でスマートコントラクトの使用とも結合して、ブロックチェーンの使用を記載する。前述のように、デジタルツインは、サプライ管理プロセスを単純化でき、安全重視のシステム（例えば、航空機及び航空宇宙産業または一般に輸送）のための重要な診断であり得る。デジタルツインとブロックチェーン技術との結合のための可能な用途は多数ある。例えば、ブロックチェーンネットワークは、デジタルツインにより生成された情報を安全に格納するために、又はデジタルツインを組み込むシステム又はプロセスに関連する複数の関連パーティとのコントラクトを実行するために、使用できるデジタルツインは、物理的システムとブロックチェーンとの間のインタフェースとして効果的に機能できる。その結果、システム又はプロセスに関するデータは、デジタルツインにより取得され、ブロックチェーンに格納でき、ブロックチェーンは、ブロックチェーンに格納された１つ以上のスマートコントラクトに従い、受信したデータに基づき特定の動作をトリガできる。
【００３０】
デジタルツインにより生成されたリアルタイムデータの量は、ミラーリングされるシステムの複雑性に依存して変化し得る。例えば、デジタルツインは、オフィスの温度をミラーリングするよう構成され得る。この場合、室温は通常、急激に変化しないことを考えると、ネットワークを介して送信されるデータの量を削減するために、温度の値を毎分（又は５分毎）に送信するのが妥当であり得る。毎分の温度の値の場合には、デジタルツインは、毎時６０個の温度値を（リアルタイムに）記録し送信する。
【００３１】
このようなデータ量は、勿論、ブロックチェーン上の記録にとっては妥当であり、大きな問題を生じない。しかしながら、ミラーリングされるシステムが例えば飛行中の航空機のエンジン、又は列車走行中の列車のシリンダである場合、状況はより複雑になる。これらの例では、値を毎秒送信しても不十分である可能性があり、より高い忠実度、例えばミリ秒毎のサンプル（航空機の場合に正に起こり得る）を保証する必要があり得る。また、記録される変数の数は変化し得る。複雑なシステムでは、高い忠実度で膨大な数の変数を記録するという要件が存在することがある。
【００３２】
デジタルツインにより送信されるデータの量及び頻度を考える必要性は、特定のオブジェクト又はプロセスに関連する情報を格納するために可能なバックボーンインフラストラクチャとしてブロックチェーンを検討するとき、制約を伴う重要な前提である。
【００３３】
＜スマートコントラクト、デジタルツイン、及びブロックチェーン＞
デジタルツインは、ブロックチェーンと相互作用する外部オブジェクトとして、例えばブロックチェーン上に実装されるデジタルコントラクトにおける関連パーティとして考えられる。つまり、デジタルツインは、ブロックチェーン上にトランザクションを記録し１つ以上のデジタルコントラクトに参加できるエンティティと考えることができる。エージェントが、ドメイン固有言語（domain  specific  languages：DSL）を用いて金融商品を構成し、信頼不要なパーティにコントラクトの実行をアウトソースし、及びコントラクト実行の正確さを公に検証することを可能にするプロトコルが提供できる。
【００３４】
このようなプロトコルは、完全性（つまり、プロトコルに正しく従う場合、正直な検証者がアウトプットの有効性を確信する）；健常性（つまり、不正な証明者が、正直な検証者に、アウトプットが真正であることが真であると確信させることができない）；ゼロ知識（つまり、アウトプットが有効である場合、不正な検証者がこの事実から何も知ることができない）；を保証する暗号プリミティブ（cryptographic  primitives）を利用する。
【００３５】
このようなプロトコルの基本的利点は、参加者間の通信が要求されないので中間者攻撃を防ぐことができること、ブロックチェーン技術の使用により悪意あるノードがデータを改ざんすることが困難であること、及びコントラクト検証がコード再実行を含まないことである。計算は、ネットワーク内の各ノードにより複製されない。代わりに、正直な実行の証拠が、パブリックブロックチェーンに格納され、検証目的でのみ使用される。
【００３６】
＜実際の例＞
ブロックチェーンの出現は、高価な集中型のネットワークインフラストラクチャを設定する必要を伴わずに、且つ全ての参加者が耐タンパー性レコードに格納された同じデータへのアクセスを有するという大きな利益を伴い、複数のパーティを含むプロセスを自動化する新しい方法の可能性を開いた。さらに、ブロックチェーン技術は、スマートコントラクトプロトコルが交渉及びコントラクトの実行を促進しできることを可能にする。
【００３７】
３つのパーティ、つまり（ｉ）スーパーマーケット、（ｉｉ）運送会社、（ｉｉｉ）有機農家、が含まれる実際の例を考える。農家は、４８時間以内に消費されなければならない有機野菜を販売し、スーパーマーケット（又は一般に店）に販売した場合、商品は、配送中に冷蔵されたまま、最終的な目的地に８時間以内に届かなければならない。図２は、ブロックチェーン及びプロセスの条件を設定するスマートコントラクトを用いるパーティ間の自動化されたプロセスを有する商業チェーンを含む。
【００３８】
プロセスに関連する３つのパーティは独立しており、全てがバリューチェーンに含まれる。この単純な例は、このプロセスの中で何ら指標が検討されなかった場合に、このシナリオでパーティ間の信頼がどれだけ重要かを示す。単純な世界では、農家は配達員を知っており信頼し、配達員は、配達用に使用されるトラックが正しく動作すること及び荷台の中の温度がスーパーマーケットにより指定されたコントラクトの中で要求されるように３度より低く保たれることを保証している。農家も、商品が最大８時間以内に配達されるという事実を信頼する。同時に、スーパーマーケットのマネージャは、農家及び配達員の両者を知っており、彼らの両方を信頼する。信頼又は既往歴がない場合には、ブロックチェーンとデジタルツインとの結合が、問題を解決できる。
【００３９】
デジタルツインは、荷台の中で使用され、有機野菜が輸送される環境条件をミラーリングする。このような情報は、ブロックチェーンに格納でき、農家及びスーパーマーケットのマネージャの両者が、配送中に何が起こったかを検証することができる。ブロックチェーンは、プロセス全体のバックボーンとして機能できる。図３は、（ｉ）配送中にデジタルツインにより提供されたデータを登録するステップ、及び（ｉｉ）全ての条件がコントラクトに適合することを保証するために、異なるトランザクションを記録するステップ、を含むプロセスでブロックチェーンがどのように使用できるかの単純な例を示す。シナリオは、プロセスに含まれる全てのパーティが全てのトランザクションに署名できる場合を考えると、より明確に且つより複雑にすることができる。提案された例では、スーパーマーケットのマネージャは農家と取引しない。提案された例は、非常に単純であり、目的は、ブロックチェーンがデジタルツイン技術をどのように織り込むことができるかを示すことである。
【００４０】
図２及び３に示した例では、デジタルツインは、配送プロセスを擬態するために、荷台の中の温度及び配送の時間の両方をミラーリングする。しかしながら、より単純な例では、温度の挙動だけを擬態することが望ましい場合には、温度センサは、このようなシステムについてデジタルツインとして定めることができる。
【００４１】
＜デジタルツインのための記憶システムとしてのブロックチェーン＞
この章は、ブロックチェーンをデジタルツインネットワークインフラストラクチャの主要要素として使用することを説明する。図４のシナリオは、ブロックチェーンがインフラストラクチャの基本コンポーネントである実際の安全重視の例を示す。図示の構成では、航空機に関連付けられたデジタルツインのための独立記憶システムとしてのブロックチェーンが使用される。
【００４２】
航空機は、航空機関及び航空会社（例えば、民間航空）の両者による頻繁な保守活動及び厳しい制御を受ける非常に複雑なシステムである。航空機の異なるサブシステム、例えば油圧ポンプ、ブレーキシステム、翼、着陸ギア、等をミラーリングするデジタルツインは、保守プロセスを最適化する際に及び事故を防ぐ際に非常に有用であり得る。ブロックチェーンは、デジタルツインにより生成されたデータの不変のトランザクション履歴を生成する。
【００４３】
見落とし、又は事故の場合には最悪のシナリオで、一般的航空機関と航空会社の両者が、ブロックチェーンに格納された不変のデータセットにアクセスし、飛行の履歴全体を分析することが可能である。飛行中の航空機の挙動を記録するデジタルツインのアレイは、データセットを調べることに関心のある全てのパーティによりアクセス可能な中立的記録（ブロックチェーン）に格納された強力な「フライトレコーダ」を構成し得る。
【００４４】
＜データサイズ及び頻度の問題＞
上述のように、現在のブロックチェーン技術は、比較的頻繁ではない時間期間で比較的少ないデータ量が格納される必要があるとき、前述の機能を満たすことができる。しかしながら、ブロックサイズ制限、及びブロックが約１０分毎にブロックチェーンに組み込まれるだけであるという事実は、標準的なブロックチェーン技術が、生成されるデータ量が非常に大きく及び／又は高い頻度／忠実度で、例えば１秒毎又は１ミリ秒毎にデータを格納するという要件があるリアルタイムアプリケーションのための記憶システムとしてはあまり適さないことを意味する。本願明細書は、ブロックチェーンにより課される（現在ある）制約を克服する２つのアプローチ：（ｉ）履歴の増分ハッシュ（現在のビットコインネットワークアーキテクチャに実装されてよい）；及び（ｉｉ）より高いレートでより大きなデータ量を処理するために適応される変更されたブロックチェーンネットワークアーキテクチャの使用；を説明する。
【００４５】
＜履歴の増分ハッシュ＞
履歴の増分ハッシュ（incremental  hashing）の思想は、ブロックチェーンの機能に厳密にリンクされる。ブロックチェーンに格納された情報は、デジタルツインにより生成されたデータではないが、所与の時間枠Ｔの中で生成された所与のデータ量Ｄの署名されたハッシュである。時間Ｔは、分析中のシステムに依存する（例えば、デジタルツインが室温をミラーリング（mirroring）している場合、時間枠は、例えばデジタルツインが航空機エンジンの機能をミラーリングしている場合より大きい）。記憶ノードは、署名されブロックチェーンに格納されたハッシュがデジタルツインにより生成されたデータの存在の証拠を提供できる根拠を有する専用ノードであり得る。
【００４６】
図５は、所与の時間枠の中でデジタルツインにより生成された所与の量のデータを格納するために使用できる増分ハッシュ手順を示す。ステップは、以下の通りである：
（１）デジタルツインは、所与の頻度ｆでデータを記録し始める；
（２）データはプライベートノードに記録される；
（３）時間Ｔ０で、ノードは、デジタルツインにより記録されたデータをハッシングする第１ハッシュ（Ｈ０）を生成し：時間Ｔ０でＨ０＝Ｈ（Ｄ）、ローカル及びブロックチェーンの両方にハッシュを記録する；
（４）時間Ｔ０＋ｘで、全ての新しいハッシュは、前のハッシュにリンクされ（第２ハッシュはＨ０にリンクされ、以下同様である）、ブロックチェーンに記録されるハッシュのチェーンを生成する。
【００４７】
ブロックチェーンは、デジタルツインにより生成されたデータの全体の履歴を再構築することの可能な、且つプライベートノードにより記録された情報の真正さを検証することの可能な、ハッシュのシーケンスを含む。
【００４８】
＜変更されたＢｉｔｃｏｉｎネットワークアーキテクチャの使用＞
第２のソリューションは、変更されたＢｉｔｃｏｉｎネットワークアーキテクチャを使用して、検証、マイニング、及びＢｉｔｃｏｉｎネットワークの中の機能を格納するための専用ノード及びプロトコルを提供する。Ｂｉｔｃｏｉｎネットワークのために私たちの提案するアーキテクチャは、図６に示される。図６は、ユーザがトランザクションを提出した瞬間から該トランザクションがブロックチェーン上で終了するまでのステップを示す動作図を示す。このアーキテクチャは、データセットが大きく且つ高頻度／忠実性で生成される場合でも、デジタルツインにより生成されたデータの完全な履歴をブロックチェーン上に格納することを可能にする。
【００４９】
特別な検証ノードがそれらの間で分散型ハッシュテーブル（distributed  hash  table：DHT）によりトランザクションの共有メモリプールを維持するシステムが提供される。これらの専用検証ノードは、マーチャント（merchant）ノードとも呼ばれてよい（図６では「Ｍノード」として表される）。Ｍノードは、トランザクションの高速な伝搬に焦点を当てて設計される。それらは、完全なブロックチェーンを格納してもよく又はしなくてもよく、及びマイニング機能を実行することを要求されない。Ｍノードの動作上の焦点は、未承認トランザクションの迅速な検証及び特に他のＭノードへの伝搬である。他のＭノードから、未承認トランザクションが迅速にブロックチェーンネットワーク内の他のノードへと押し出される。この機能を実現するために、Ｍノードは、その他の場合に統治プロトコルの下でノードに許可され得る、多数の入力及び特に出力接続を許可される。
【００５０】
専用検証ノードは、トランザクションを受信し、それらを検証し、それらを分散型メモリプール（メモプールとも呼ばれる）に割り当てる。検証ノードは、次に、有効トランザクションハッシュのリストを提供するそれらのサービスを、マイナーに提供する。マイナーは、これらのハッシュに基づきプレブロック（pre-block）（ブロックスケルトン、block  skeleton）を組み立て、ハッシュパズルを解くことを試みる。パズルの解が見付かると、勝者であるマイナーは、ブロックスケルトンを検証ノードへと返送する。検証ノードは、次に、ブロックを検証して、それが格納されることを保証する。最初に、検証ノードがブロック自体を格納することが可能であり便利である。ブロックサイズが最終的に特定のサイズ閾を超えると、検証ノードは、（ａ）それら自身の記憶能力を超える、又は（ｂ）専用記憶ノードに格納をアウトソースする、のいずれかを行う。
【００５１】
前述のネットワークシステムでは、トランザクションのメモリプールは、検証ノード間で同期する必要がある。これは、可逆ブルームフィルタルックアップテーブル（Invertible  Bloom  filter  Lookup  Tables：IBLTs-Michael  T.  Goodrich,  ２０１１）を交換するステップを含む。検証ノードは、マイナー及び他の検証ノードと交換したＩＢＬＴにより、最新のメモプールを保つ。検証及び記憶機能が結合される場合、これは、図６におけるように新しいフルノードと呼ばれる。
【００５２】
マイナーは、（１）ノンスｎ；（２）ＩＢＬＴ；（３）Ｃｏｉｎｂａｓｅトランザクション；で構成されるブロックスケルトン（タプル）を送信する。
【００５３】
これに基づき、新しいフルノードは、相応してトランザクションを発注し、新しくマイニングされたブロックを組み立てる。新しいフルノードは、次に、ブロックを彼ら自身の記憶に格納すること、及びスケルトンを他の新しいフルノードへと伝搬させることに進む。
【００５４】
このソリューションは、履歴の増分ハッシュの制限を克服する。増分ハッシュソリューションに伴う主な問題は、デジタルツインにより生成されたデータセットが、１つのプライベートノード（又は複数のプライベートノード）に記録されることがあり、ブロックチェーンがフルデータセットの履歴に関連付けられた署名データのみを含むことがある、という事実に起因する。この条件は、例えば商品を売る及びサプライチェーン管理の多数のアプリケーションにとっては十分であるが、一方で、例えば飛行履歴のような安全重視の他のアプリケーションは、分散型ブロックチェーン台帳に完全なデータセットが記録されることを要求することがある。
【００５５】
Ｂｉｔｃｏｉｎネットワーク内の個々のノードは、分散型メモリプール（distributed  memory  pool：DMP）を提供するノードのクラスタとして見ることができる。提案したＤＭＰは、正直なノード間の個々の信頼関係で構成されるネットワーク内に展開された分散型ハッシュテーブル（Distributed  Hash  Table：DHT）構造に依存する。ノードの接続のセットは、ルーティング及びアプリケーションレベル情報の集合の上に構築される。中央機関は信頼証明の解放又は記憶に関連せず、各ノードは自身の信頼できるピアの記録を維持する。
【００５６】
悪意あるエンティティは、何らかの形式の攻撃を実行するためにネットワークに参加する必要がある。例えば、Ｓｙｂｉｌ攻撃は、システムを傷つけるために、多数の偽アイデンティティの生成に焦点を当てた。ネットワークに接続されたＳｙｂｉｌノードは、適法なルーティングクエリを中断し又は遅延させ、誤ったルーティング情報を広めることがある。しかしながら、提案されたＤＨＴルーティングプロトコルは、劣線形の時間及び空間複雑性を有し、以下の仮定に基づく：
（１）ノードは、正直なノードと悪意あるノードとを区別できない；
（２）正直なノードの大部分は、他の正直なノードへのより多くの接続を有する；
（３）各ノードは、鍵空間のパーティションに関する情報を格納する責任がある。
【００５７】
ＤＨＴプロトコルは２つの主な機能を提供する：
・ＵＰＤＡＴＥ（）は、各ＤＨＴノードにおいて、ルーティング手０ブルを構築し及び鍵を挿入するために使用される。
・ＧＥＴ（ｘ，ｋ）は、鍵ｋにより表される目標鍵−値レコードを見付けるために、ＤＨＴノードｘにより使用される。
【００５８】
各ＤＨＴノードｘは、通常、公開鍵Ｐｘ及び現在のＩＰアドレスａｄｄｒｘにより識別される。この情報は、レコードｓｉｇｎｘ（Ｐｘ，ａｄｄｒｘ）によりセキュアにリンクされる。ここで、ｓｉｇｎｘ（）は対応する秘密鍵による署名を表す。ノードＩＤは、次に、署名されたレコードを用いてＤＨＴに格納される。ノードが位置を変え、又は新しいＩＰアドレスを受信すると、新しいレコード［Ｐｘ，ａｄｄｒｘ］はＤＨＴに格納されなければならない。悪意あるノードは、誤った鍵−値ペアを挿入し得る。ＧＥＴメソッドは、返された鍵−値レコードの中の署名を検証することを担う。
【００５９】
データルーティングネットワークは、無向性グラフにより表すことができる。悪意あるエッジは、悪意あるノードを正直なノードに接続し、一方で、正直なエッジは２つの正直なノードを接続する。任意の数のＳｙｂｉｌアイデンティティを生成することは悪意あるノードにとっては入手可能であるが、悪意あるエッジを生成することは、Ｓｙｂｉｌ制御下のアイデンティティのうちの１つへの信頼できるリンクを確立するよう正直なノードを説得する必要がある。正直な領域を２つに切り分ける僅かな隙もない場合、正直なノードから開始する短いランダム歩行は、正直なノードで終わる可能性がある。したがって、本ソリューションは、ブロックチェーンネットワークのデジタルツインシステムとの結合ことをサポートするために、デジタルツインにより生成された膨大な量のデータを高い忠実度で格納することの可能なＢｉｔｃｏｉｎネットワークアーキテクチャを提供するためのセキュアな方法を提供する。
【００６０】
＜インタフェース構成＞
デジタルツインが重要な情報を送信している場合、例えば、安全重視の運用に関連する装置の機械部品をミラーリングしている場合、私たちは、情報がセキュアなチャネルを通じてネットワークを介して送信されることを保証したいと望む。
【００６１】
この章では、ブロックチェーンをデジタルツインにより生成された情報を格納するための保証されたシステムとして使用するために、更に特別な詳細なプロトコルが説明される。特に、この章は、デジタルツインとブロックチェーンネットワークとの間の適切なインタフェースを提供する構成及びプロトコルを記載する。
【００６２】
図７は、デジタルツインとブロックチェーンネットワークとの間のインタフェース構成として、バッファ、セキュアなチャネル、及び受信機の使用を示す。セキュアなチャネル（Ｂ）を実装するために、私たちは、送信機、図７のバッファ（Ａ）、及び受信機（Ｃ）の間の共有鍵Ｋを検討する必要がある。鍵Ｋは、送信機及び受信機にのみ知られいている必要がある。
【００６３】
バッファ（Ａ）の役割は、デジタルツインをセキュアなチャネルに接続可能なインタフェースとして動作することであり、生成されたデータストリームＳを個別メッセージｍ１，ｍ２，．．．，ｍｎのシーケンスに変換する。このアプローチを用いて、デジタルツインにより生成されネットワークを介して送信される非常に大量のデータを処理する問題は、少なくとも部分的に解決される。バッファは、デジタルツインにより生成された全てのデータの収集及び記憶を管理し、セキュアなチャネルを介するデータの送信も管理する。図８は、デジタルツインからのデータストリームＳを個別メッセージｍ１，ｍ２，．．．，ｍｎのシーケンスに変換するステップを含む、図７に示すバッファの役割を示す。
【００６４】
データストリームＳの離散化（discretization）及びネットワークを介して送信されるべきｎ個のメッセージの生成の後に、鍵Ｋの新しい値が各メッセージｍｉについて生成される。鍵生成プロトコルは、バッファと受信機との間で、セキュアなチャネルが確立される度に、例えばメッセージｍｉが送信される度に、ユニークな鍵（セッション鍵）を構成するために必要とされる。バッファは、（例えば送信時のネットワークの条件に従い）どれだけ多くの個別メッセージが送信されるかを決定するよう、及び送信されたメッセージを追跡するカウンタを初期化するよう、構成され得る。チャネルを介して送信される各個別メッセージｍｉについて、バッファはハッシュＨ（ｍｉ）を計算し格納する。特定数のメッセージが送信された後に、時間ｔで、バッファは、特定時間ｔまでに送信されたメッセージに関連するハッシュのシーケンスで構成される特定メッセージｍｈを送信できる。この手順は、受信した個別メッセージの完全性を調べる際に受信機を助ける。メッセージｍｈは、以下の形式を有する：
ｍｈ＝Ｈ（ｍ１），Ｈ（ｍ２），．．．，Ｈ（ｍｎ）
【００６５】
最後に、手順を完結するために第３メッセージｍＨが送信される。第３メッセージｍＨは、ハッシュのシーケンスＨ（ｍｈ）を含むメッセージのハッシュを含む：
ｍＨ＝Ｈ（ｍｈ）
【００６６】
バッファは、したがって、セキュアなチャネルにより処理され及び次に受信機へと送信されるメッセージのシーケンスを送信する。
【００６７】
受信機は、次に、メッセージのシーケンスを受信し処理する。図９は、セキュアなチャネルを介してバッファから受信したメッセージのシーケンスを検証するステップを含む、図７に示す受信機の役割を示す。受信したシーケンスは、ｍｈ及びｍＨを用いて受信機により検証できる。
【００６８】
セキュリティのレベルを向上するために、冗長性の追加レイヤが、第２のセキュアなチャネル及び比較器の形式で導入できる。図１０は、第２のセキュアなチャネル（Ｂ）を含むデジタルツインとブロックチェーンネットワークとの間のインタフェース構成のこのような変更されたバージョン、及び２つのセキュアなチャネルを介して送信された個別メッセージのシーケンスが一致することを検証することにより、セキュリティレベルを向上する比較器（Ｃ）、を示す。比較器は、２つのセキュアなチャネルを介して送信された個別メッセージのシーケンスが一致するかどうかを検証できる。一致しない場合、つまりチャネルＡから受信したシーケンスがチャネルＢから受信したシーケンスと異なる場合、受信機は、シーケンスを受け入れず、シーケンスを再送するようバッファに通知する。
【００６９】
セキュアなチャネルの初期化中に、鍵及びメッセージ番号の両方を設定する必要がある。Ferguson,  Niels,  et  al.,  Cryptography  engineering:  design  principles  and  practical  applications,  John  Wiley  &  Sons,  ２０１１で説明されているように、４個の鍵が導出される：バッファから受信機へメッセージを送信するための（Ｉ）暗号鍵及び（ＩＩ）認証鍵、受信機からバッファへメッセージを送信するための（ＩＩＩ）暗号鍵及び（ＩＶ）認証鍵、である。私たちは、２つのインプットである鍵及び役割を有する関数ｆ、つまりｆ（ｋ，ｒ）を有し、アウトプットはチャネルＳの状態である。セキュアなチャネルの設定は、以下のように符号化されてよい。
【数１】
2021502018.tif 000003
【００７０】
（デジタルツインにより生成されたデータストリームを離散化するためにバッファにより行われた離散化プロセスの後に）メッセージを送信するために、上述のように定義されたセッション状態を検討し、暗号化され認証されたメッセージを生成する必要がある。
私たちは、３つのインプット：状態S；送信されるべきメッセージｍ；及び認証されるべき追加データｄを有する関数ｆ１，つまりｆ１（Ｓ，ｍ，ｄ）を有する。
【００７１】
アウトプットｏ’は、受信機へ送信されるべきデータである。これは、以下のように符号化されてよい。
【数２】
2021502018.tif 000004
【００７２】
（デジタルツインにより生成されたストリームを離散化するためにバッファにより行われた離散化プロセスの後に）メッセージを受信するために、メッセージ送信段階の間に生成された暗号化された認証されたメッセージ、及び認証されるべき追加データを処理する必要がある。メッセージを受信するために、私たちは、３つのインプット：セッション状態Ｓ；送信段階の間にｆ１から取得されたアウトプットｏ’；及び認証されるべき追加データｄ；を有する関数ｆ２、つまりｆ２（Ｓ，ｏ’，ｄ）を有する。
【００７３】
ｆ２から取得されたアウトプットは、バッファにより送信されたメッセージである。受信プロトコルは、以下のように符号化されてよい。
【数３】
2021502018.tif 000005
【００７４】
全てのメッセージが受信機により受信されると、それらを分散型ハッシュテーブル（ＤＨＴ）に格納し、次にハッシュ（及び前述のようなハッシュの履歴）をブロックチェーンに格納する必要がある。図１１は、受信したメッセージを分散型ハッシュテーブルに格納し、次にハッシュをブロックチェーンに格納するステップを示す。ステップは以下の通りである。
【数４】
2021502018.tif 000006
【００７５】
ブロックチェーンをデジタルツインのためのバックボーンとして使用することを可能にする異なるアプローチは、パブリックブロックチェーンの中でミラーリングされ得るプライベートブロックチェーンの使用に基づく。図１２は、パブリックブロックチェーンにデータを組み込む前に、デジタルツインからのデータを格納するプライベートブロックチェーンを含む、デジタルツインとブロックチェーンネットワークとの間のインタフェース構成の一部の変更されたバージョンを示す。
【００７６】
バッファの役割は、前述の通りであり、プライベートブロックチェーンを有するソリューションが、デジタルツインにより送信されたデータを記録するために、より少ない時間しか必要としない場合でも、ストリームの離散化は、プロセスの第２のステップ、パブリックブロックチェーン上のメッセージのミラーリング又は認証を簡略化することを助ける。バッファにより生成されプライベートチェーンに格納された各メッセージｍｉについて、ハッシュＨ（ｍ）が生成され、パブリックブロックチェーンに格納される。
【００７７】
＜コンピューティング環境＞
図１３は、種々の実施形態が実装できるコンピューティング環境を示す概略図である。本開示の少なくとも一実施形態を実施するために使用可能なコンピューティング装置２６００の簡略ブロック図が提供される。種々の実施形態で、コンピューティング装置２６００は、上述の図示のシステムのうちのいずれかを実装するために使用されてよい。例えば、コンピューティング装置２６００は、データサーバ、ウェブサーバ、ポータブルコンピューティング装置、パーソナルコンピュータ、又は任意の電子コンピューティング装置として使用するために構成されてよい。図１３に示すように、コンピューティング装置２６００は、主メモリ２６０８及び永久記憶装置２６１０を含む記憶サブシステム２６０６と通信するよう構成され得る１つ以上のレベルのキャッシュメモリ及びメモリ制御部（集合的に２６０２とラベル付けされる）を備える１つ以上のプロセッサを含んでよい。主メモリ２６０８は、図示のように、動的ランダムアクセスメモリ（ＤＲＡＭ）２６１８及び読み出し専用メモリ（ＲＯＭ）２６２０を含み得る。記憶サブシステム２６０６及びキャッシュメモリ２６０２は、本開示で説明されたようなトランザクション及びブロックに関連付けられた詳細事項のような情報の記憶のために使用されてよい。プロセッサ２６０２は、本開示で説明されたような任意の実施形態のステップ又は機能を提供するために利用されてよい。
【００７８】
プロセッサ２６０２は、１つ以上のユーザインタフェース入力装置２６１２、１つ以上のユーザインタフェース出力装置２６１４、及びネットワークインタフェースサブシステム２６１６とも通信できる。
【００７９】
バスサブシステム２６０４は、コンピューティング装置２６００の種々のコンポーネント及びサブシステムが意図した通りに互いに通信できるようにするメカニズムを提供してよい。バスサブシステム２６０４は、単一のバスとして概略的に示されるが、バスサブシステムの代替の実施形態は、複数のバスを利用してよい。
【００８０】
ネットワークインタフェースサブシステム２６１６は、他のコンピューティング装置及びネットワークへのインタフェースを提供してよい。ネットワークインタフェースサブシステム２６１６は、幾つかの実施形態では、コンピューティング装置２６００の他のシステムからデータを受信し及びそれへデータを送信するインタフェースとして機能してよい。例えば、ネットワークインタフェースサブシステム２６１６は、データ技術者が、装置をネットワークに接続することを可能にする。その結果、データ技術者は、データセンタのような遠隔地にいがなら、データを装置へ送信し、データを装置から受信できる。
【００８１】
ユーザインタフェース入力装置２６１２は、キーボード、統合型マウス、トラックボール、タッチパッド、又はグラフィックタブレットのような指示装置、スキャナ、バーコードスキャナ、ディスプレイに組み込まれたタッチスクリーン、音声認識システム、マイクロフォンのようなオーディオ入力装置、及び他の種類の入力装置のような、１つ以上のユーザ入力装置を含んでよい。通常、用語「入力装置」の使用は、コンピューティング装置２６００に情報を入力する全ての可能な種類の装置及びメカニズムを含むことを意図する。
【００８２】
１つ以上のユーザインタフェース出力装置２６１４は、ディスプレイサブシステム、プリンタ、又はオーディオ出力装置のような非視覚的ディスプレイ、等を含んでよい。ディスプレイサブシステムは、陰極線管（CRT）、液晶ディスプレイ（LCD）、発光ダイオード（LED）ディスプレイ、又はプロジェクションのような平面装置、又は他のディスプレイ装置を含んでよい。通常、用語「出力装置」の使用は、コンピューティング装置２６００から情報を出力する全ての可能な種類の装置及びメカニズムを含むことを意図する。１つ以上のユーザインタフェース出力装置２６１４は、例えば、ユーザインタフェースを提示して、ここに記載したプロセス及び変形を実行するアプリケーションとのユーザ相互作用が適切であるとき、そのような相互作用を実現するために使用されてよい。
【００８３】
記憶サブシステム２６０６は、本開示の少なくとも１つの実施形態の機能を提供する基本プログラミング及びデータ構造を記憶するコンピュータ可読記憶媒体を提供してよい。アプリケーション（例えば、プログラム、コードモジュール、命令）は、１つ以上のプロセッサにより実行されると、本開示の１つ以上の実施形態の機能を提供し、記憶サブシステム２６０６に格納されてよい。これらのアプリケーションモジュール又は命令は、１つ以上のプロセッサ２６０２により実行されてよい。記憶サブシステム２６０６は、更に、本開示に従い使用されるデータを格納するレポジトリを提供する。例えば、主メモリ２６０８及びキャッシュメモリ２６０２は、プログラム及びデータのための揮発性記憶を提供できる。永久記憶装置２６１０は、プログラム及びデータの永久（不揮発性）記憶を提供でき、磁気ハードディスクドライブ、取り外し可能媒体に関連付けられた１つ以上のフロッピディスクドライブ、取り外し可能媒体に関連付けられた１つ以上の光ドライブ（例えば、ＣＤ−ＲＯＭ、又はＤＶＤ、又はＢｌｕｅ−Ｒａｙ）ドライブ、及び他の同様の記憶媒体を含んでよい。このようなプログラム及びデータは、本開示に記載した１つ以上の実施形態のステップを実行するためのプログラム、及び本開示に記載したトランザクション及びブロックに関連付けられたデータを含み得る。
【００８４】
コンピューティング装置２６００は、ポータブルコンピュータ装置、タブレットコンピュータ、ワークステーション、又は後述する任意の他の装置を含む種々のタイプのものであってよい。さらに、コンピューティング装置２６００は、１つ以上のポート（例えば、USB、ヘッドフォンジャック、光コネクタ、等）を通じてコンピューティング装置２６００に接続可能な別の装置を含み得る。コンピューティング装置２６００に接続され得る装置は、光ファイバコネクタを受けるよう構成される複数のポートを含んでよい。したがって、この装置は、光信号を、処理のために装置を接続するポートを通じてコンピューティング装置２６００に送信される電気信号に変換するよう構成されてよい。コンピュータ及びネットワークの絶えず変化する特性により、図１３に示したコンピューティング装置２６００の説明は、装置の好適な実施形態を説明する目的の特定の例としてのみ意図される。図１３に示したシステムより多くの又は少ないコンポーネントを有する多くの他の構成が可能である。
【００８５】
＜まとめ＞
本願明細書は、ブロックチェーンをデジタルツインのための独立記憶システムとしてどのように使用するかを記載した。本願明細書は、ブロックチェーン、デジタルツイン、及び外部物理的システムｔの間の相互作用を管理するために、デジタルスマートコントラクトがどのように使用できるかも記載した。大量のデータが格納される必要がある場合、２つのソリューションが記載された。第１のソリューションでは、特定のハッシュのみがブロックチェーンに記録される履歴の増分ハッシュに基づき、第２のソリューションでは、ブロックチェーンをデジタルツインインフラストラクチャの完全なバックボーンとして有効にするために、分散型メモリプール及び新しいフルノードの使用が提供される。また、大量のデータを処理し及びデータをセキュアに処理できる、デジタルツインとブロックチェーンネットワークとの間の適切なインタフェースを提供するための構成も記載された。２つの主なソリューションが記載され、第１の技術は、デジタルツインのインタフェースとして動作可能なインフラストラクチャをどのように構築するかを説明した。ソリューションの構造は、特定のハッシュのみがブロックチェーンに記録される、履歴の増分ハッシュに基づく。第２のソリューションは、例えばＢｉｇＣｈａｉｎＤＢ（McConaghy,  Trent,  et  al.,  “BigchainDB:  a  scalable  blockchain  database.",  BigChainDB,  ２０１６）及びパブリックブロックチェーン内の各ブロックをミラーリングすることに基づくプライベートブロックチェーンを使用する。
【００８６】
上述の実施形態は、本発明を限定するのではなく、説明すること、及び当業者は添付の特許請求の範囲により定められる本発明の範囲から逸脱することなく多くの代替的実施形態を考案できることに留意すべきである。特許請求の範囲において、括弧内の任意の参照符号は、請求項を限定することを意図しない。用語「有する」及び「含む」（comprising、comprises）等は、任意の請求項又は明細書全体に列挙されたもの以外の要素またはステップの存在を排除しない。本願明細書では、「有する」は「有する又は構成される」を意味し、「含む」は「含む又は構成される」を意味する。要素の単数の参照は、該要素の複数の参照を排除しない。逆も同様である。本発明は、幾つかの別個の要素を含むハードウェアにより、及び適切にプログラムされたコンピュータにより、実装できる。幾つかの手段を列挙する装置クレームでは、これらの手段のうちの幾つかは、１つの同じハードウェアアイテムにより具現化されてよい。単に特定の手段が相互に異なる従属請求項に記載されるという事実は、これらの手段の組み合わせが有利に使用されないことを示さない。
【図１】
2021502018.tif 000007
【図２】
2021502018.tif 000008
【図３】
2021502018.tif 000009
【図４】
2021502018.tif 000010
【図５】
2021502018.tif 000011
【図６】
2021502018.tif 000012
【図７】
2021502018.tif 000013
【図８】
2021502018.tif 000014
【図９】
2021502018.tif 000015
【図１０】
2021502018.tif 000016
【図１１】
2021502018.tif 000017
【図１２】
2021502018.tif 000018
【図１３】
2021502018.tif 000019
【国際調査報告】
2021502018.tif 000020
2021502018.tif 000021
2021502018.tif 000022
2021502018.tif 000023