(57)【要約】      （修正有）【課題】データパスを検証する方法を提供する。【解決手段】受信した第１のパス−メタデータが含む、第１のエンティティ識別子は、発信側エンティティからデータおよび第１のパス−メタデータを受信する第１の受信側エンティティと関連付けられる。第１のパス−メタデータは、発信側エンティティと関連付けられた第１のデジタル署名を含む。さらに第１のパス−メタデータと、第２の受信側エンティティと関連付けられた第２のエンティティ識別子とを含む第２のパス−メタデータを受信し、第２のパス−メタデータは、第１の受信側エンティティと関連付けられた第２のデジタル署名を含み、第１のパス−メタデータ、第２のパス−メタデータ、第１のデジタル署名、および第２のデジタル署名に基づいて、データが発信側エンティティによって第１の受信側エンティティに、そして、第１の受信側エンティティから第２の受信側エンティティに通信されたことを検証する。【選択図】図１
2015026362.tif 000002
【特許請求の範囲】
【請求項１】
データと、発信側エンティティから前記データおよび第１のパス−メタデータを受信する第１の受信側エンティティと関連付けられた第１のエンティティ識別子を含み且つ前記発信側エンティティと関連付けられた第１のデジタル署名を含む前記第１のパス−メタデータとを受信するステップと、
前記第１のパス−メタデータと、前記第１の受信側エンティティから前記データおよび第２のパス−メタデータを受信する第２の受信側エンティティと関連付けられた第２のエンティティ識別子と、前記第１の受信側エンティティと関連付けられた第２のデジタル署名とを含む前記第２のパス−メタデータを受信するステップと、
前記データが前記発信側エンティティによって前記第１の受信側エンティティに及び前記第１の受信側エンティティから前記第２の受信側エンティティに通信されたことを、前記第１のパス−メタデータ、前記第２のパス−メタデータ、前記第１のデジタル署名、及び前記第２のデジタル署名に基づいて検証するステップと、
を含むデータパスを検証する方法。
【請求項２】
前記第１のエンティティ識別子は、前記第１の受信側エンティティの公開鍵と関連付けられ、
前記第２のエンティティ識別子は、前記第２の受信側エンティティの公開鍵と関連付けられる、
請求項１に記載の方法。
【請求項３】
前記検証するステップは、前記発信側エンティティと関連付けられた第１のデジタル証明書および前記第１の受信側エンティティと関連付けられた第２のデジタル証明書にさらに基づく、請求項１に記載の方法。
【請求項４】
前記第１のデジタル署名は、前記発信側エンティティと関連付けられた秘密鍵に基づき、
前記第２のデジタル署名は、前記第１の受信側エンティティと関連付けられた秘密鍵に基づく、
請求項１に記載の方法。
【請求項５】
前記データは、墨消し可能署名方式に従って構造化される、請求項１に記載の方法。
【請求項６】
前記データは、エネルギー消費に関連するデマンドレスポンスと関連付けられる、請求項１に記載の方法。
【請求項７】
前記第１の受信側エンティティおよび前記第２の受信側エンティティのうちの１つ以上が前記データの対象とする受信者であるかどうかを、前記第１のパス−メタデータ、前記第２のパス−メタデータ、前記第１のデジタル署名、および前記第２のデジタル署名のうちの１つ以上に基づいて判断するステップと、
前記第１の受信側エンティティおよび前記第２の受信側エンティティのうちの１つ以上が前記データの対象とする受信者ではないと判断されたとき、前記データを拒否するステップと、
をさらに含む、請求項１に記載の方法。
【請求項８】
前記検証するステップは、前記受信されたデータからデータ固有メタデータを計算するステップを含む、請求項１に記載の方法。
【請求項９】
発信側エンティティから第１の受信側エンティティによって、データと、前記第１の受信側エンティティと関連付けられた第１のエンティティ識別子および前記発信側エンティティと関連付けられた第１のデジタル署名を含む第１のパス−メタデータとを受信するステップと、
前記第１の受信側エンティティによって、前記第１のパス−メタデータと、第２の受信側エンティティと関連付けられた第２のエンティティ識別子とを含む第２のパス−メタデータを生成するステップと、
前記第１の受信側エンティティによって、第２のデジタル署名を作成するために、前記第２のパス−メタデータに署名するステップと、
前記第１の受信側エンティティによって前記第２の受信側エンティティに、前記データ、前記第１のパス−メタデータ、前記第２のパス−メタデータ、および前記第２のデジタル署名を通信するステップと、
を含む方法。
【請求項１０】
前記第１のエンティティ識別子は、前記第１の受信側エンティティの公開鍵と関連付けられ、
前記第２のエンティティ識別子は、前記第２の受信側エンティティの公開鍵と関連付けられ、
前記第１のデジタル署名は、前記発信側エンティティと関連付けられた秘密鍵に基づき、
前記第２のデジタル署名は、前記第１の受信側エンティティと関連付けられた秘密鍵に基づく、
請求項９に記載の方法。
【請求項１１】
前記通信するステップは、前記データが前記発信側エンティティによって前記第１の受信側エンティティに通信され、そして、前記第１の受信側エンティティから前記第２の受信側エンティティに通信されたことを前記第１のパス−メタデータ、前記第２のパス−メタデータ、前記第１のデジタル署名、および前記第２のデジタル署名に基づいて前記第２の受信側エンティティによって検証することを可能にさせる、請求項９に記載の方法。
【請求項１２】
前記データは、墨消し可能署名方式に従って構造化される、請求項９に記載の方法。
【請求項１３】
前記データは、エネルギー消費に関連するデマンドレスポンスと関連付けられる、請求項９に記載の方法。
【請求項１４】
コンピューティングシステムにデータパスを検証する動作を実行させるためのコンピュータ命令を実行するように構成されるプロセッサであって、前記動作は、
データと、発信側エンティティから前記データおよび第１のパス−メタデータを受信する第１の受信側エンティティと関連付けられた第１のエンティティ識別子を含み及び前記発信側エンティティと関連付けられた第１のデジタル署名を含む前記第１のパスデータとを受信するステップと、
前記第１のパス−メタデータと、前記第１の受信側エンティティから前記データおよび第２のパス−メタデータを受信する第２の受信側エンティティと関連付けられた第２のエンティティ識別子と、前記第１の受信側エンティティと関連付けられた第２のデジタル署名とを含む前記第２のパス−メタデータを受信するステップと、
前記データが前記発信側エンティティによって前記第１の受信側エンティティに、そして、前記第１の受信側エンティティから前記第２の受信側エンティティに通信されたことを前記第１のパス−メタデータ、前記第２のパス−メタデータ、前記第１のデジタル署名、および前記第２のデジタル署名に基づいて検証するステップと、
を含む、プロセッサ。
【請求項１５】
前記検証するステップは、前記発信側エンティティと関連付けられた第１のデジタル証明書および前記第１の受信側エンティティと関連付けられた第２のデジタル証明書にさらに基づく、請求項１４に記載のプロセッサ。
【請求項１６】
前記データは、墨消し可能署名方式に従って構造化される、請求項１４に記載のプロセッサ。
【請求項１７】
前記動作は、
前記第１の受信側エンティティおよび前記第２の受信側エンティティのうちの１つ以上が、前記データの対象とする受信者であるかどうかを前記第１のパス−メタデータ、前記第２のパス−メタデータ、前記第１のデジタル署名、および前記第２のデジタル署名のうちの１つ以上に基づいて判断するステップと、
前記第１の受信側エンティティおよび前記第２の受信側エンティティのうちの１つ以上が前記データの対象とする受信者ではないと判断されたとき、前記データを拒否するステップと、
をさらに含む、請求項１４に記載のプロセッサ。
【請求項１８】
前記検証するステップは、前記受信されたデータからデータ固有メタデータを計算するステップを含む、請求項１４に記載のプロセッサ。
【請求項１９】
前記第１のエンティティ識別子は、前記第１の受信側エンティティの公開鍵と関連付けられ、
前記第２のエンティティ識別子は、前記第２の受信側エンティティの公開鍵と関連付けられる、
請求項１４に記載のプロセッサ。
【請求項２０】
前記第１のデジタル署名は、前記発信側エンティティと関連付けられた秘密鍵に基づき、
前記第２のデジタル署名は、前記第１の受信側エンティティと関連付けられた秘密鍵に基づく、
請求項１４に記載のプロセッサ。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書で検討される実施形態は、データ配信パスの検証に関連する。
【背景技術】
【０００２】
マルチホップデータ通信は、概して、発信側ドメインから１つ以上の中継体と受信側ドメインとへのデータの通信を伴う。マルチホップデータ通信は、複数の階層の中継体および受信側ドメインが単一の上流ドメインからデータを受信する分散環境で行われることがある。１つのドメインの上流にあるドメインと下流にあるドメイン、ならびに、１階層の中のドメインは、関係がなく、共通に制御されない。その結果、１つのドメインの上流にあるドメインおよび下流にあるドメインは、それぞれが危険な状態に陥りがちである。付加的に、データの一部分は、１階層の中の異なったドメインに不適切であり、または、適用できないことがある。
【０００３】
データを受け取るために、受信側ドメインは、発信側ドメインと各中継体とを暗黙的に信頼する。しかし、中継体を信頼することは、各中継体によって又は各中継体において持ち込まれ得る、マルウェアおよび／または無許可のデータ操作などの危険な状態が原因で実際的ではないことが多い。付加的に、受信側ドメインは、中継体を識別できないことがあり、本質的に中継体の責任を免除している。
【０００４】
本願において請求されている主題は、任意の不利点を解決するか、または、前述されているような環境で単に動作する実施形態に限定されない。むしろ、この背景技術の欄は、本明細書で説明される幾つかの実施形態が実施され得る例示的な技術分野を説明するためだけに設けられている。
【発明の概要】
【課題を解決するための手段】
【０００５】
データパスを検証する方法は、データと第１のパス−メタデータとを受信するステップを含んでも良い。第１のパス−メタデータは、第１のエンティティ識別子を含んでも良い。第１のエンティティ識別子は、発信側エンティティからデータおよび第１のパス−メタデータを受信する第１の受信側エンティティと関連付けられても良い。第１のパス−メタデータは、発信側エンティティと関連付けられた第１のデジタル署名をさらに含んでも良い。この方法は、第２のパス−メタデータを受信するステップをさらに含んでも良い。第２のパス−メタデータは、第１のパス−メタデータと、第１の受信側エンティティからデータおよび第２のパス−メタデータを受信する第２の受信側エンティティと関連付けられた第２のエンティティ識別子とを含んでも良い。第２のパス−メタデータは、第１の受信側エンティティと関連付けられた第２のデジタル署名をさらに含んでも良い。この方法は、第１のパス−メタデータ、第２のパス−メタデータ、第１のデジタル署名、および第２のデジタル署名に基づいて、データが発信側エンティティによって第１の受信側エンティティに、そして、第１の受信側エンティティから第２の受信側エンティティに伝達されたことを検証するステップをさらに含んでも良い。
【０００６】
実施形態の目的および利点は、少なくとも請求項において特に指摘された要素、特徴、および組み合わせによって実現され、達成されるであろう。
【０００７】
以上の概要および以下の詳細な説明は両方ともに例示および説明のためのものであり、請求されている発明を限定するものではない。
【０００８】
例示的実施形態は、添付図面を利用して特定性および詳細を付け加えて記載および説明する。
【図面の簡単な説明】
【０００９】
【図１】本明細書に開示された幾つかの実施形態が実施され得る例示的分散マルチドメイン環境（環境）を示す図である。
【図２】図１の環境において実施され得る例示的データパスを示す図である。
【図３Ａ】図１の環境において起こり得る、データパスが問題を含むことを示す例示的パス−メタデータと共に例示的データパスを示す図である。
【図３Ｂ】図１の環境において起こり得る、データパスが問題を含むことを示す例示的パス−メタデータと共に例示的データパスを示す図である。
【図３Ｃ】図１の環境において起こり得る、データパスが問題を含むことを示す例示的パス−メタデータと共に例示的データパスを示す図である。
【図４Ａ】データが図１の環境において構築され得る例示的マークル・ハッシュ・ツリーを示す図である。
【図４Ｂ】データが図１の環境において構築され得る例示的マークル・ハッシュ・ツリーを示す図である。
【図５】図１の環境で起こり得る例示的マルチホップ通信を示す図である。
【図６】データパスを検証する例示的方法のフローチャートである。
【図７】データパスを検証する例示的方法の別のフローチャートである。
【発明を実施するための形態】
【００１０】
本明細書に記載された幾つかの実施形態は、データのマルチホップ通信に関与する各エンティティの検証および識別を可能にする。付加的に、エンティティの各々が上流エンティティの対象とする受信者であったかどうかが、データが受け取られる前に検証されても良い。その結果、マルチホップ通信においてデータを受信する最後のエンティティは、受信されたデータの完全性が損なわれていないことを検証するのを助けるためにデータによって利用されるパス全体を検証し得る。本開示の実施形態は、添付図面を参照して説明される。
【００１１】
図１は、本明細書に記載された少なくとも１つの実施形態による例示的分散マルチドメイン環境（環境）１００を示す。環境１００は、データのマルチホップ通信を実行し得る複数のエンティティ１０２Ａ〜１０２Ｌ（総じて、エンティティまたはエンティティ群１０２）を含む。全般的に、環境１００は、データが発信側エンティティ１０２Ａから１つ以上の中間エンティティ１０２Ｂ〜１０２Ｈを介して、着信側エンティティ１０２Ｉ〜１０２Ｌに通信されるように描かれている。しかし、環境１００には、マルチホップ通信の複数の変形例が表されている。
【００１２】
環境１００は、１層以上の階層１０４Ａ〜１０４Ｄ（総じて、階層または階層群１０４）に分離されても良い。階層群１０４は、環境１００の中のエンティティ群１０２の全体的な組織を反映し得る。組織を慣例に合わせるために、第１の階層１０４Ａとこれに含まれるエンティティ群１０２とは、第２の階層１０４Ｂとこれに含まれるエンティティ群１０２との上流と呼ばれる。同様に、第２の階層１０４Ｂとこれに含まれるエンティティ群１０２とは、第１の階層１０４Ａとこれに含まれるエンティティ群１０２との下流と呼ばれ、かつ、第３の階層１０４Ｃとこれに含まれるエンティティ群１０２との上流と呼ばれ、以下同様に続く。マルチホップ通信の間に、データは、一般に、上流エンティティ群１０２から下流エンティティ群１０２に通信される。
【００１３】
第１の階層１０４Ａは、発信側エンティティ１０２Ａを含んでも良い。発信側エンティティ１０２Ａでは、その中でデータが生成されるか、またはその他の方法でデータが作成され得る。発信側エンティティ１０２Ａは、データを１つ以上の中間エンティティ群１０２Ｂ〜１０２Ｈに通信しても良い。第２の階層１０４Ｂおよび第３の階層１０４Ｃは、中間エンティティ群１０２Ｂ〜１０２Ｈを含んでも良い。中間エンティティ群１０２Ｂ〜１０２Ｈは、１つ以上のそれぞれの上流エンティティ１０２からデータを受信しても良く、データまたはデータの任意の派生物をそれぞれの下流エンティティ群１０２に通信しても良い。第４の階層１０４Ｄは、着信側エンティティ群１０２Ｉ〜１０２Ｌを含んでも良い。着信側エンティティ群１０２Ｉ〜１０２Ｌは、上流エンティティ群１０２から通信されたデータを受信しても良いが、該データを下流エンティティ群に通信しなくても良い。
【００１４】
エンティティ１０２がどの階層１０４に含まれているかは、環境１００の中のエンティティ１０２の機能または役割と、契約上の関係と、地理的位置などに基づいても良い。付加的に、エンティティ１０２がどの階層１０４に含まれているかは、環境１００が実施されるネットワークまたはシステムに基づいて異なっても良い。たとえば、環境１００は、公益事業通信ネットワークの中で実施されても良い。この実施および他の実施では、発信側エンティティ１０２Ａは、公益事業会社を含んでも良い。中間エンティティ群１０２Ｂ〜１０２Ｈは、サービス・プロバイダおよび／またはデマンドレスポンス（ＤＲ）アグリゲータでもよい。着信側エンティティ群１０２Ｉ〜１０２Ｌは、公益事業顧客群でもよい。データは、顧客使用に関係するＤＲ要求または情報でもよい。付加的または代替的に、環境１００は、Ｅ−健康管理システム、１つ以上の部門および／または従業員を含む企業、移動体間通信ネットワークなどによって実施されても良い。
【００１５】
これらの例示的実施によって示されるように、発信側エンティティ１０２Ａ、中間エンティティ群１０２Ｂ〜１０２Ｈおよび着信側エンティティ群１０２Ｉ〜１０２Ｌは、組織のコンピューティングシステム、個人のコンピューティングシステム、通信ネットワークにおけるノードなどを含んでも良い。付加的に、環境１００は、プログラム、ソフトウェア、機能、ライブラリ、サービスとしてのソフトウェア、アナログもしくはデジタル回路、またはこれらのいずれかの組み合わせなどの任意の適切な仕組みによって実施されても良い。
【００１６】
エンティティ群１０２は、環境１００の実施の範囲内で異っても良い。たとえば、第１の着信側エンティティ１０２Ｉは、個人の移動体装置を含んでも良く、その一方で発信側エンティティ１０２Ａは、公益事業会社のサーバを含んでも良い。エンティティ群１０２は、データを処理しても良く、または、修正または処理することなくデータを単に中継しても良い。たとえば、エンティティ群１０２は、メモリ１５２（発信側エンティティ１０２Ａだけに描かれている）に結合されるプロセッサ１５０をさらに含んでも良い。幾つかの実施形態では、環境１００または環境の幾らかの部分もしくは機能は、プロセッサ１５０による実行のためメモリ１５２に常駐するロジックまたは命令に具現化されても良い。プロセッサ１５０は、たとえば、プログラム命令を解釈および／または実行するように、および／または、データを処理するように構成されているマイクロプロセッサ、マイクロコントローラ、デジタル信号プロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、フィールド・プログラマブル・ゲート・アレイ（ＦＰＧＡ）、または他のデジタルもしくはアナログ回路を含んでも良い。幾つかの実施形態では、プロセッサ１５０は、プログラム命令を解釈および／または実行するか、および／または、メモリ１５２に記憶されたデータを処理しても良い。
【００１７】
メモリ１５２は、ある期間に亘ってプログラム命令および／またはデータを保持するように構成されている任意の適切なコンピュータ読み取り可能媒体を含んでも良い。一例として、かつ限定されることなく、このようなコンピュータ読み取り可能媒体は、コンピュータ実行可能命令もしくはデータ構造の形式で所望のプログラムコードを担持もしくは記憶するために使用され、そして、プロセッサ１５０によってアクセスされ得るランダム・アクセス・メモリ（ＲＡＭ）、リード・オンリー・メモリ（ＲＯＭ）、電気的消去可能プログラマブル・リード・オンリー・メモリ（ＥＥＰＲＯＭ）、コンパクト・ディスク・リード・オンリー・メモリ（ＣＤ−ＲＯＭ）もしくは他の光ディスク・ストレージ、磁気ディスク・ストレージもしくは他の磁気記憶装置、フラッシュ・メモリ装置（たとえば、固体メモリ装置）、特定の分子配列（たとえば、ＤＮＡまたはＲＮＡ）、または、任意の他の記憶媒体を含む、有形コンピュータ読み取り可能記憶媒体を含んでも良い。上記のものの組み合わせは、コンピュータ読み取り可能媒体の範囲内にさらに含まれ得る。コンピュータ実行可能な命令は、たとえば、汎用コンピュータ、専用コンピュータ、または専用処理装置（たとえば、プロセッサ１５０）に、ある特定の機能または機能のグループを実行させる命令およびデータを含んでも良い。
【００１８】
マルチホップデータ通信は、エンティティ群１０２の組を含む。通信されるデータが経由するエンティティ群１０２は、本明細書ではデータパスと呼ばれる。前述のとおり、環境１００の全体的な組織は、データが発信側エンティティ１０２Ａから中間エンティティ群１０２Ｂ〜１０２Ｈに、そして、着信側エンティティ１０２Ｉ〜１０２Ｌに通信されるというものである。しかし、これは限定ではない。マルチホップデータ通信は、様々な階層群１０４からの様々なエンティティ群１０２を含むデータパス群を含んでも良く、階層群１０４を飛び越しても良く、中間エンティティ１０２Ｂ〜１０２Ｈで終了しても良い、等々である。たとえば、図１に描かれるように、発信側エンティティ１０２Ａは、データを第１の中間エンティティ１０２Ｂおよび第４の中間エンティティ１０２Ｅに通信しても良い。第１の中間エンティティ１０２Ｂは、データまたはデータの任意の派生物を第５の中間エンティティ１０２Ｆ、第６の中間エンティティ１０２Ｇ、および第７の中間エンティティ１０２Ｈに通信しても良い。第６の中間エンティティ１０２Ｇは、その後、データまたはデータの任意の派生物を第１の着信側エンティティ１０２Ｉ、第２の着信側エンティティ１０２Ｊ、および第３の着信側エンティティ１０２Ｋに通信しても良い。その一方、幾つかの実施形態では、第５の中間エンティティ１０２Ｆおよび第７の中間エンティティ１０２Ｈは、データを通信しないことがある。第４の中間エンティティ１０２Ｅは、データまたはデータの任意の派生物を第４の着信側エンティティ１０２Ｌに通信しても良い。
【００１９】
環境１００では、データパス、データパス群に含まれるエンティティ群１０２の身元、およびデータパス群の中で通信されるデータは、パス−メタデータを使用して検証されても良い。パス−メタデータは、特定のデータパスに含まれる１つ以上のエンティティ群１０２によってデータが埋め込まれることがある。たとえば、図２は、本明細書に記載された少なくとも１つの実施形態により、図１の環境１００において実施され得る例示的データパス２００を示す。データパス２００は、図１の発信側エンティティ１０２Ａ、第１の中間エンティティ１０２Ｂ、第６の中間エンティティ１０２Ｇ、および第２の着信側エンティティ１０２Ｊを含む。図１に関連して記載された慣用語句「上流」および「下流」は、図２において同様である。具体的には、発信側エンティティ１０２Ａは、第１の中間エンティティ１０２Ｂの上流であり、第６の中間エンティティ１０２Ｇは、第１の中間エンティティ１０２Ｂの下流である、等々である。エンティティ群１０２のうちの各々の間には、エンティティ群１０２Ｂ間で通信されるデータ（後述される２０２Ａ、２０２Ｂ、および２０２Ｃ）とメタデータ（後述される２０４Ａ、２０４Ｂ、および２０４Ｃ）とを含むデータパケット群２０６Ａ〜２０６Ｃがある。
【００２０】
データパス２００では、発信側エンティティ１０２Ａは、下流に配信され得る原データ２０２を準備しても良い。付加的に、発信側エンティティ１０２Ａは、原データ２０２Ａに基づいてデータ固有メタデータを計算しても良い。幾つかの実施形態では、データ固有メタデータは、原データ２０２Ａのハッシュ値または墨消し可能署名方式のルートハッシュ値を含んでも良い。墨消し可能署名方式は、これらに限定されることなく、カメレオンハッシュ、部分黒塗り署名方式（たとえば、ＰＩＡＴＳ）、ＳＵＭＩ、またはマークル・ハッシュ・ツリーを含めて、署名方式を含んでも良い。マークル・ハッシュ・ツリーの幾つかのさらなる詳細は、本明細書でどこかに記載されている。カメルーンハッシュを含む例示的署名方式の幾つかのさらなる詳細は、Ａｔｅｎｉｅｓｅ，Ｇｉｕｓｅｐｐｅ，ｅｔ  ａｌ．「Ｓａｎｉｔｉｚａｂｌｅ  Ｓｉｇｎａｔｕｒｅｓ」，Ｃｏｍｐｕｔｅｒ  Ｓｅｃｕｒｉｔｙ−ＥＳＯＲＩＣＳ  ２００５，Ｓｐｒｉｎｇｅｒ  Ｂｅｒｌｉｎ  Ｈｅｉｄｅｂｅｒｇ，２００５，ｐ．１５９−１７７に見られることがあり、これの全体が参照により本明細書に組み込まれる。ＳＵＭＩの幾つかのさらなる詳細は、Ｋ．Ｍｉｙａｚａｋｉ，Ｓ．Ｓｕｓａｋｉ，Ｍ．Ｉｗａｍｕｒａ，Ｔ．Ｍａｔｓｕｍｏｔｏ，Ｒ．Ｓａｓａｋｉ，Ｈ．Ｙｏｓｈｉｕｒａ，「Ｄｉｇｉｔａｌ  Ｄｏｃｕｍｅｎｔｓ  Ｓａｎｉｔｉｚｉｎｇ  Ｐｒｏｂｌｅｍ」，Ｔｈｅ  Ｉｎｓｔｉｔｕｔｅ  ｏｆ  Ｅｌｅｃｔｒｏｎｉｃｓ，Ｉｎｆｏｒｍａｔｉｏｎ  ａｎｄ  Ｃｏｍｍｕｎｉｃａｔｉｏｎ  Ｅｎｇｉｎｅｅｒｓ（ＩＥＩＣＥ）ｔｅｃｈｎｉｃａｌ  ｒｅｐｏｒｔ，ＩＳＥＣ  ２００３−２０，Ｍａｙ  ２００３に見られることがあり、これの全体が参照により本明細書に組み込まれる。ＰＩＡＴＳの幾つかのさらなる詳細は、Ｉｚｕ，Ｔｅｔｓｕｙａ，ｅｔ  ａｌ．「ＰＯＡＴＳ：Ａ  ｐａｒｔｉａｌｌｙ  Ｓａｎｉｔｉｚａｂｌｅ  Ｓｉｇｎａｔｕｒｅ  Ｓｃｈｅｍｅ」，Ｉｎｆｏｒｍａｔｉｏｎ  ａｎｄ  Ｃｏｍｍｕｎｉｃａｔｉｏｎｓ  Ｓｅｃｕｒｉｔｙ，Ｓｐｒｉｎｇｅｒ  Ｂｅｒｌｉｎ  Ｈｅｉｄｅｌｂｅｒｇ，２００５，７２−８３に見られることがあり、これの全体が参照により本明細書に組み込まれる。
【００２１】
原データ２０２Ａは、データパケット２０６Ａによって発信側エンティティ１０２Ａから第１の中間エンティティ１０２Ｂに通信されても良い。データパケット２０６Ａを通信する前に、発信側エンティティ１０２Ａは、第１のパス−メタデータ２０４Ａの一部分をデータパケット２０６Ａに埋め込んでも良い。幾つかの実施形態では、第１のパス−メタデータ２０４Ａは、第１のパス−メタデータ表現：
【数１】
2015026362.tif 000003
によって表現されても良い。第１のパス−メタデータ表現では、Ｍは、データ固有メタデータを表すことがある。データ固有メタデータは、幾つかの実施形態では、原データ２０２Ａに一意に結合されても良い。ＥＩＦＩＥは、第１の中間エンティティ１０２Ｂ（ＦＩＥ）のエンティティ識別子（ＥＩ）を表すことがあり、ＳＩＧＯＥは、発信側エンティティ１０２Ａ（ＯＥ）のデジタル署名（ＳＩＧ）を表すことがあり、Ｐ１は、第１のパス−メタデータを表すことがあり、ＭおよびＥＩＦＩＥのペアについての発信側エンティティ１０２Ａの署名であることがある。幾つかの実施形態では、発信側エンティティ１０２Ａのデジタル署名は、発信側エンティティ１０２Ａの秘密鍵に基づくことがある。付加的にまたは代替的に、幾つかの実施形態では、エンティティ識別子は、第１の中間エンティティ１０２Ｂの公開鍵でもよく、第１の中間エンティティ１０２Ｂに属するデジタル証明書のフィンガープリントなどの第１の中間エンティティ１０２Ｂと関連付けられたハッシュ値でもよく、または第１の中間エンティティ１０２Ｂの公開鍵にリンクされ得る他の適切な識別子でもよい。ハッシュ値の幾つかの付加的な詳細は、後述される。
【００２２】
幾つかの実施形態では、発信側エンティティ１０２Ａは、原データ２０２Ａおよび第１のパス−メタデータ（それぞれ、ＥＩＦＩＥおよびＰ１）を第１の中間エンティティ１０２Ｂに通信しても良い。これらの実施形態および他の実施形態では、データ固有メタデータＭは、Ｍが原データ２０２Ａを受信する任意の下流エンティティから計算され得るので、通信されなくても良い。
【００２３】
このようにして、一般に、第１のパス−メタデータ２０４Ａは、データ固有メタデータと、原データ２０２Ａが直ちに通信されるエンティティ１０２に対するエンティティ識別子と、原データ２０２Ａが通信された発信側であるエンティティ１０２のデジタル署名とを含む。発信側エンティティ１０２Ａを参照すると、第１のパス−メタデータ２０４Ａは、第１のパス−メタデータ２０４Ａが、発信側エンティティ１０２Ａに関する下流エンティティに通知されるので、下流パス−メタデータと呼ばれることがある。
【００２４】
第１の中間エンティティ１０２Ｂは、発信側エンティティ１０２Ａから、原データ２０２Ａおよび第１のパス−メタデータ２０４Ａ、またはこれらのある部分を含んでも良い第１のデータパケット２０６Ａを受信しても良い。第１の中間エンティティ１０２Ｂに関連して、第１のパス−メタデータ２０４Ａは、第１のパス−メタデータ２０４Ａが上流エンティティから通知されるので、上流パス−メタデータと呼ばれることがある。
【００２５】
第１の中間エンティティ１０２Ｂは、原データ２０２Ａを修正するか、または、データパケット２０６Ｂによって第６の中間エンティティ１０２Ｇなどの下流エンティティ１０２に原データ２０２Ａを単に通信しても良い。幾つかの状況では、第１の中間エンティティ１０２Ｂは、原データ２０２Ａを修正しても良い。たとえば、第１の中間エンティティ１０２Ｂは、１つ以上の下流エンティティ群１０２および／または１つ以上の上流エンティティ群１０２のプライバシーを保護するために原データ２０２Ａを修正しても良い。しかし、第１の中間エンティティ１０２Ｂによって行われる原データ２０２Ａへの修正は、データ固有メタデータＭを計算する下流エンティティの能力に影響しないことがある。
【００２６】
たとえば、図１および２を併せて参照すると、第１の中間エンティティ１０２Ｂは、第６の中間エンティティ１０２Ｇおよび第７の中間エンティティ１０２Ｈの上流であることがある。原データ２０２Ａは、第６の中間エンティティ１０２Ｇおよび第７の中間エンティティ１０２Ｈに両方ともに関係する情報を含んでも良い。しかし、情報は、第６の中間エンティティ１０２Ｇが第７の中間エンティティ１０２Ｈに情報を取得して欲しくないという程度で、または、逆の場合も同様に、機密、見当違い、等々ということがある。その結果、第１の中間エンティティ１０２Ｂは、原データ２０２Ａに含まれる１つ以上のデータ項目に墨消しを行い、それによって、第１の中間データ２０２Ｂを作成しても良い。第１の中間データ２０２Ｂは、データ項目が墨消しされた状態で第６の中間エンティティ１０２Ｇに通信されても良い。代替的に、第１の中間エンティティ１０２Ｂは、修正されていない形式で原データ２０２Ａを第６の中間エンティティ１０２Ｇに単に通信しても良い。この状況では、第１の中間データ２０２Ｂは、原データ２０２Ａに実質的に等価であることがある。
【００２７】
図２を再び参照すると、第１の中間エンティティ１０２Ｂは、第１のパス−メタデータ２０４Ａおよび第２のパス−メタデータ２０４Ｂをデータパケット２０６Ｂにさらに埋め込んでも良い。幾つかの実施形態では、第２のパス−メタデータ２０４Ｂは、第２のパス−メタデータ表現：
【数２】
2015026362.tif 000004
によって表現されても良い。第２のパス−メタデータ表現では、Ｐ２は、第２のパス−メタデータ２０４Ｂを表すことがあり、Ｐ１およびＥＩＳＩＥのペアについての第１の中間エンティティ１０２Ｂの署名であることがあり、Ｐ１は、第１のパス−メタデータ２０４Ａ（たとえば、ＭおよびＥＩＦＩＥのペアについての発信側エンティティ１０２Ａの署名、すなわち、前述の
［Ｍ，ＥＩＦＩＥ］ＳＩＧＯＥ
）を表すことがある。ＥＩＳＩＥは、第６の中間エンティティ１０２Ｇ（ＳＩＥ）のエンティティ識別子（ＥＩ）を表すことがあり、ＳＩＧＦＩＥは、第１の中間エンティティ１０２Ｂ（ＦＩＥ）のデジタル署名（ＳＩＧ）を表すことがある。幾つかの実施形態では、第１の中間エンティティ１０２Ｂのデジタル署名は、第１の中間エンティティ１０２Ｂの秘密鍵に基づくことがある。付加的にまたは代替的に、幾つかの実施形態では、エンティティ識別子は、第６の中間エンティティ１０２Ｇの公開鍵でもよく、第６の中間エンティティ１０２Ｇと関連付けられたハッシュ値でもよく、または第６の中間エンティティ１０２Ｇの公開鍵にリンクされ得る他の適切な識別子でもよい。
【００２８】
幾つかの実施形態では、第１の中間エンティティ１０２Ｂは、第１の中間データ２０２Ｂ（原データ２０２Ａに実質的に等価であることがある）、第１のパス−メタデータ２０４Ａ（それぞれ、Ｐ１およびＥＩＦＩＥ）、第２のパス−メタデータ２０４Ｂ（それぞれ、Ｐ２およびＥＩＳＩＥ）を第６の中間エンティティ１０２Ｇに通信しても良い。これらの実施形態および他の実施形態では、データ固有メタデータＭは、Ｍが任意の下流エンティティから計算され得るので、通信されなくても良い。
【００２９】
従って、第１の中間データ２０２Ｂ、第１のパス−メタデータ２０４Ａ、および第２のパス−メタデータ２０４Ｂを含む第２のデータパケット２０６Ｂは、第６の中間エンティティ１０２Ｇに通信されても良い。第１の中間エンティティ１０２Ｂに関連して、第２のパス−メタデータ２０４Ｂは、第２のパス−メタデータ２０４Ｂが第１の中間エンティティ１０２Ｂに関して下流エンティティである第６の中間エンティティ１０２Ｇに通信されるので、下流パス−メタデータと呼ばれることがある。逆に、第６の中間エンティティ１０２Ｇに関連して、第２のパス−メタデータ２０４Ｂは、第１の中間エンティティ１０２Ｂが第６の中間エンティティ１０２Ｇに関連して上流エンティティであるので、上流パス−メタデータと呼ばれることがある。
【００３０】
このようにして、第１の中間データ２０２Ｂを第６の中間エンティティ１０２Ｇに通信する前に、第１の中間エンティティ１０２Ｂは、第１の中間データ２０２Ｂが通信されるべき下流エンティティ（たとえば、第６の中間エンティティ１０２Ｇ）を識別しても良い。第１の中間エンティティ１０２Ｂは、上流パス−メタデータ（たとえば、第１のパス−メタデータ）および下流エンティティのエンティティ識別子を下流パス−メタデータにさらに埋め込んでも良い。付加的に、第１の中間エンティティ１０２Ｂは、秘密鍵を使って下流パス−メタデータに署名しても良い。
【００３１】
第１の中間エンティティ１０２Ｂのように、第６の中間エンティティ１０２Ｇは、第２の修正済みデータ２０２Ｃを作成するために第１の中間データ２０２Ｂを修正しても良い。たとえば、第１の中間データ２０２Ｂは、データ項目が墨消しされた原データ２０２Ａを含むことがあり、第２の修正済みデータ２０２Ｃは、データ項目がさらに墨消しされた原データ２０２Ａを含んでも良い。代替的に、第２の中間データ２０２Ｃは、第１の中間データ２０２Ｂおよび／または原データ２０２Ａに実質的に等価であることがある。さらに代替的に、第１の中間データ２０２Ｂは、原データ２０２Ａに実質的に等価であることがあるが、第２の中間データ２０２Ｃは、データ項目が墨消しされた第１の中間データ２０２Ｂを含んでも良い。第６の中間エンティティ１０２Ｇによって行われる原データ２０２Ａおよび／または第１の中間データ２０２Ｂへの修正は、データ固有メタデータＭを計算する能力に影響しないことがある。
【００３２】
第６の中間エンティティ１０２Ｇは、第３のパス−メタデータ２０４Ｃをさらに生成しても良い。第３のパス−メタデータ２０４Ｃは、第３のパス−メタデータ表現：
【数３】
2015026362.tif 000005
によって表現されても良い。第３のパス−メタデータ表現では、Ｐ３は、第３のパス−メタデータを表しても良く、Ｐ２およびＥＩＳＤＥのペアについての第６の中間エンティティ１０２Ｇの署名であっても良く、Ｐ２は、第２のパス−メタデータ（すなわち、前述の
［Ｐ１，ＥＩＳＩＥ］ＳＩＧＦＩＥ
）を表しても良い。ＥＩＳＤＥは、第２の着信側エンティティ１０２Ｊ（ＳＤＥ）のエンティティ識別子（ＥＩ）を表しても良く、ＳＩＧは、第６の中間エンティティ１０２Ｇ（ＳＩＥ）のデジタル署名（ＳＩＧ）を表しても良い。幾つかの実施形態では、第６の中間エンティティ１０２Ｇのデジタル署名は、第６の中間エンティティ１０２Ｇの秘密鍵に基づいて生成されても良い。付加的にまたは代替的に、幾つかの実施形態では、エンティティ識別子は、第２の着信側エンティティ１０２Ｊの公開鍵でもよく、１０２Ｊに属するデジタル証明書のフィンガープリントなどの第２の着信側エンティティ１０２Ｊと関連付けられたハッシュ値でもよく、または第２の着信側エンティティ１０２Ｊの公開鍵にリンクされ得る他の適切な識別子でもよい。
【００３３】
幾つかの実施形態では、第６の中間エンティティ１０２Ｇは、原データ２０２Ａおよび／または第１の中間データ２０２Ｂに実質的に等価であっても良い第２の中間データ２０２Ｃと、第１のパス−メタデータ２０４Ａ（それぞれ、Ｐ１およびＥＩＦＬＥ）と、第２のパス−メタデータ２０４Ｂ（それぞれ、Ｐ２およびＥＩＳＩＥ）と、第３のパス−メタデータ２０４Ｃ（それぞれ、Ｐ３およびＥＩＳＤＲ）とを第２の着信側エンティティ１０２Ｊに通信しても良い。これらの実施形態およびその他の実施形態では、データ固有メタデータＭは、Ｍが任意の下流エンティティから計算され得るので、通信されなくても良い。
【００３４】
第２の中間データ２０２Ｃ、第１のパス−メタデータ２０４Ａ、第２のパス−メタデータ２０４Ｂ、および第３のパス−メタデータ２０４Ｃを含むデータパケット２０６Ｃは、第２の着信側エンティティ１０２Ｊに通信されても良い。第６の中間エンティティ１０２Ｇに関連して、第３のパス−メタデータ２０４Ｃは、第３のパス−メタデータ２０４Ｃが第６の中間エンティティ１０２Ｇに関して下流エンティティである第２の着信側エンティティ１０２Ｊに通信されるので、下流パス−メタデータと呼ばれるても良い。逆に、第２の着信側エンティティ１０２Ｊに関連して、第３のパス−メタデータ２０４Ｃは、第６の中間エンティティ１０２Ｇが第２の着信側エンティティ１０２Ｊに関連して上流であるので、上流パス−メタデータと呼ばれても良い。
【００３５】
要約すると、第２の着信側エンティティ１０２Ｊは、第１のパス−メタデータ２０４Ａ、第２のパス−メタデータ２０４Ｂ、および第３のパス−メタデータ２０４Ｃと共に第２の中間データ２０２Ｃを受信する。その結果、第２の着信側エンティティ１０２Ｊで受信された第２の中間データ２０２Ｃは、データ固有メタデータ（たとえば、第１のパス−メタデータ２０４Ａの中の「Ｍ」）の計算を可能にできる。上流メタデータは、上流エンティティ群の識別子を検証するために、上流エンティティ群（たとえば、発信側エンティティ１０２Ａ、第１の中間エンティティ１０２Ｂ、および第６の中間エンティティ１０２Ｇ）の各々に対するデジタル署名をさらに含んでも良い。
【００３６】
前述のとおり、上流メタデータから、エンティティ１０２は、データパス２００などの特定のデータパスを検証しても良い。具体的には、図２において、第１のパス−メタデータ２０４Ａ、第２のパス−メタデータ２０４Ｂ、および第３のパス−メタデータ２０４Ｃから、第２の着信側エンティティ１０２Ｊは、データパス２００を検証しても良く、第１のパス−メタデータ２０４Ａおよび第２のパス−メタデータ２０４Ｂから、第６の中間エンティティ１０２Ｇは、データパス２００の一部分を検証しても良く、第１のパス−メタデータ２０４Ａから、第１の中間エンティティ１０２Ｂは、データパス２００の一部分を検証しても良い。
【００３７】
データパス２００の検証は、原データ２０２Ａ、第１の中間データ２０２Ｂ、または第２の中間データ２０２Ｃからデータ固有メタデータを計算することを含んでも良い。データ固有メタデータは、原データ２０２Ａの一般的な暗号ハッシュ値、または、中間エンティティ１０２Ｂ〜１０２Ｈによるフレキシブルな墨消しを可能にするために原データ２０２Ａ、第１の中間データ２０２Ｂ、もしくは第２の中間データ２０２Ｃに基づいて構築されたマークル・ハッシュ・ツリーのルートハッシュ値などの墨消し可能署名方式で計算されたハッシュ値として計算されても良い。
【００３８】
データ固有メタデータを使用して、第１の中間エンティティ１０２Ｂ、第６の中間エンティティ１０２Ｇ、または第２の着信側エンティティ１０２Ｊなどの下流エンティティは、原データ２０２Ａ、または、第１の中間データ２０２Ｂもしくは第２の中間データ２０２Ｃなどの原データの派生物が発信側エンティティ１０２Ａによって作成されることを検証しても良い。付加的に、データパス２００の検証は、パス−メタデータに含まれるエンティティ識別子とデジタル署名との比較を通じて、系列の中で各上流エンティティ１０２を識別することを含んでも良い。付加的に、上流エンティティ群１０２が識別されたとき、検証は、上流エンティティ群１０２が信頼できるかどうかを判断することを含んでも良い。
【００３９】
たとえば、第２の着信側エンティティ１０２Ｊは、以下のとおりデータパス２００を検証しても良い。第２の着信側エンティティ１０２Ｊは、発信側エンティティ１０２Ａの公開鍵を知っていることがある。前述のとおり、発信側エンティティ１０２Ａは、信頼されているエンティティであることがある。その結果、第２の着信側エンティティ１０２Ｊは、発信側エンティティ１０２Ａから検証プロセスを始めることがあり、原データ２０２Ａまたはこれの任意の派生物が通信された順番に発信側エンティティ１０２Ａと第２の着信側エンティティ１０２Ｊとの間で下流エンティティ群（たとえば、１０２Ｂおよび１０２Ｇ）の各々を引き続いて検証しても良い。検証は、パス−メタデータ（たとえば、２０４Ａ、２０４Ｂ、および２０４Ｃ）の各々の一部として指定された各受信者が直ぐ下流のパス−メタデータの署名者であるかどうかを検証するために反復的に実行されても良い。たとえば、第１の中間エンティティ１０２Ｂが発信側エンティティ１０２Ａによって指定され、第１のパス−メタデータ２０４Ａの署名者であることが検証されても良く、以下同様である。
【００４０】
幾つかの実施形態では、第２の着信側エンティティ１０２Ｊが公開鍵は実際に発信側エンティティ１０２Ａと関連付けられていることを信頼するように、第２の着信側エンティティ１０２Ｊは、デジタル証明書の形式で信頼できる認証機関（たとえば、ベリサイン）から発信側エンティティ１０２Ａの公開鍵を受信しても良い。第２の着信側エンティティ１０２Ｊは、第１のパス−メタデータ２０４Ａのデジタル署名を検証するために、従って、第１のパス−メタデータ２０４Ａを検証するために発信側エンティティ１０２Ａと関連付けられた公開鍵を使用しても良い。
【００４１】
これらの実施形態および他の実施形態では、第２の着信側エンティティ１０２Ｊは、第２の中間データ２０２Ｃからデータ固有メタデータを計算しても良い。発信側エンティティ１０２Ａの公開鍵と、計算されたパス固有メタデータと、第１の中間エンティティ１０２Ｂのエンティティ識別子（ＥＩＦＩＥ）とを使用して、データ固有メタデータと第１の中間エンティティ１０２Ｂのエンティティ識別子（ＥＩＦＩＥ）とのペアのハッシュ値が計算されても良い。ハッシュ値は、第１のパス−メタデータ２０４Ａが発信側エンティティ１０２Ａによって生成されたことを検証するために使用されても良い。第２の着信側エンティティ１０２Ｊは、その後、エンティティ識別子とパス−メタデータの各々に含まれる署名の各々とを使用してエンティティ群の各々を検証しても良い。付加的に、第２の着信側エンティティ１０２Ｊは、第１のパス−メタデータ２０４Ａに含まれるエンティティ識別子と第２のパス−メタデータ２０４Ｂの中のデジタル署名とに基づいて、第１のパス−メタデータ２０４Ａおよび発信側データ２０２Ａが第１の中間エンティティ１０２Ｂによって受信されたことを判断しても良い。
【００４２】
幾つかの実施形態では、第１のパス−メタデータ２０４Ａに含まれるエンティティ識別子は、第２の着信側エンティティ１０２Ｊが、第１のパス−メタデータ２０４Ａに含まれる第１の中間エンティティ１０２Ｂの公開鍵を使用して第２のパス−メタデータ２０４Ｂを検証するように、第１の中間エンティティ１０２Ｂの公開鍵であっても良い。第１の中間エンティティ１０２Ｂのエンティティ識別子は、第１の中間エンティティ１０２Ｂの公開鍵を含むデジタル証明書でもよい。これらの実施形態または他の実施形態では、第２の着信側エンティティは、（たとえば、証明機関からの第１の中間エンティティ１０２Ｂと関連付けられたデジタル証明書の先の受信を通じて）第１の中間エンティティ１０２Ｂの公開鍵を既に知っていても良く、第１の中間エンティティ１０２Ｂのエンティティ識別子は、第１の中間エンティティ１０２Ｂの公開鍵を識別しても良い。第２の着信側エンティティ１０２Ｊは、その結果、第１の中間エンティティ１０２Ｂの公開鍵を取得するために、第１のパス−メタデータ２０４Ａに含まれるエンティティ識別子を使用しても良い。
【００４３】
第２の着信側エンティティ１０２Ｊは、第２のパス−メタデータ２０４Ｂのデジタル署名を検証するために、従って、第２のパス−メタデータ２０４Ｂを検証するために、第１の中間エンティティ１０２Ｂと関連付けられた公開鍵を使用しても良い。付加的に、第２の着信側エンティティ１０２Ｊは、第２のパス−メタデータ２０４Ｂに含まれるエンティティ識別子および第３のパス−メタデータ２０４Ｃに含まれるデジタル署名に基づいて、第２のパス−メタデータ２０４Ｂおよび第１の中間データ２０２Ｂが第６の中間エンティティ１０２Ｇによって受信されたことを導出しても良い。第２のパス−メタデータ２０４Ｂに含まれるエンティティ識別子は、第１の中間エンティティ１０２Ｂのエンティティ識別子から第１の中間エンティティ１０２Ｂの公開鍵を識別することに関連して前述された方法と同様の方法で第６の中間エンティティ１０２Ｇの公開鍵を識別するために、第２の着信側エンティティ１０２Ｊによって使用されても良い。
【００４４】
第２の着信側エンティティ１０２Ｊは、第３のパス−メタデータ２０４Ｃのデジタル署名を検証するために、従って、第３のパス−メタデータ２０４Ｃを検証するために、第６の中間エンティティ１０２Ｇと関連付けられた公開鍵を使用しても良い。付加的に、第２の着信側エンティティ１０２Ｊは、第３のパス−メタデータ２０４Ｃに含まれるエンティティ識別子に基づいて、第３のパス−メタデータ２０４Ｃおよび第２の中間データ２０２Ｃが第６の中間エンティティ１０２Ｇからの第２の着信側エンティティ１０２Ｊによる受信の対象とされていたことを導出しても良い。その結果、第２の着信側エンティティ１０２Ｊは、発信側エンティティ１０２Ａからデータパス２００を介して第２の中間エンティティ１０２Ｊに第２の中間データ２０２Ｃを通信することに関与する各エンティティを検証しても良い。
【００４５】
図３Ａ〜図３Ｃは、本明細書に記載された少なくとも１つの実施形態に従って、データパス３００Ａ〜３００Ｃが問題を含んでいることを示し得る例示的パス−メタデータと共に、データパス３００Ａ〜３００Ｃの例をそれぞれに示す。たとえば、データパス３００Ａ〜３００Ｃは、データの拒否という結果を招くか、または、データが信頼できない、悪意のある、または意図されていないエンティティから通信されていることを示しても良い。データパス３００Ａ〜３００Ｃは、第１の中間エンティティ１０２Ｂから第６の中間エンティティ１０２Ｇまで、そして、その後に、第２の着信側エンティティ１０２Ｊまでの図２に描かれた通信の問題のある変形例を示す。その結果、図３Ａ〜図３Ｃに含まれる第１の中間エンティティ１０２Ｂ、第６の中間エンティティ１０２Ｇ、第５の中間エンティティ１０２Ｆ、および第２の着信側エンティティ１０２Ｊは、図１および図２に関連して既に説明された。付加的に、第３のデータパス３００Ｃは、図１および図２に関連して説明されたエンティティ群１０２の１つ以上の特性および／または機能を含み得る未知エンティティ３０６を含む。エンティティ群１０２間で、データパス３００Ａ〜３００Ｃのうちの各々において、パス−メタデータは、破線のボックスに含まれている。
【００４６】
図３Ａは、第６の中間エンティティ１０２Ｇが第３のパス−メタデータ２０４Ｃを生成しないが、代わりに、第１のパス−メタデータ２０４Ａおよび第２のパス−メタデータ２０４Ｂを単に転送するだけである第１のデータパス３００Ａを含む。第６の中間エンティティ１０２Ｇが第３のパス−メタデータ２０４Ｃを組み込めないことが検出されても良い。なぜならば、第１のパス−メタデータ２０４Ａおよび第２のパス−メタデータ２０４Ｂの中のエンティティ識別子が第２の着信側エンティティ１０２Ｊを参照できないことがあるからである。付加的に、第１のパス−メタデータ２０４Ａおよび第２のパス−メタデータ２０４Ｂの中のデジタル署名は、第１のパス−メタデータ２０４Ａおよび第２のパス−メタデータ２０４Ｂを第２の着信側エンティティ１０２Ｊに通信した上流エンティティ（すなわち、第６の中間エンティティ１０２Ｇ）に一致しない。
【００４７】
図３Ｂは、第５の中間エンティティ１０２Ｆが意図されたとおりの第６の中間エンティティ１０２Ｇの代わりに第１のパス−メタデータ２０４Ａおよび第２のパス−メタデータ２０４Ｂを受信する盗聴者であり得る例を示す。従って、図３Ｂは、（図３Ａおよび３Ｃの場合のように）第６の中間エンティティ１０２Ｇではなく第５の中間エンティティ１０２Ｆを含む第２のデータパス３００Ｂを含む。第５の中間エンティティ１０２Ｆは、前述のフォーマットを有する第４のパス−メタデータ３０４を生成し得る。第５の中間エンティティ１０２Ｆは、第１のパス−メタデータ２０４Ａ、第２のパス−メタデータ２０４Ｂおよび第４のパス−メタデータ３０４を第２の着信側エンティティ１０２Ｊに通信しても良い。しかし、第２のパス−メタデータ２０４Ｂの中のエンティティ識別子は、第４のパス−メタデータ３０４の中のデジタル署名に一致しない。したがって、このようにして、第５の中間エンティティ１０２Ｆを盗聴することが検出され得る。
【００４８】
図３Ｃは、未知エンティティ３０６を含む第３のデータパス３００Ｃを示す。未知エンティティ３０６は、第１のパス−メタデータ２０４Ａを転送しても良く、前述の方法で第６のパス−メタデータ３０８を生成し署名しても良い。しかし、第２の着信側エンティティ１０２Ｊは未知エンティティ３０６を認識および／または信頼できないので、第６のパス−メタデータ３０８が適切に検証され得ない。データパス３００Ａ〜３００Ｃの各々において、第２の着信側エンティティ１０２Ｊによって受信された（図３Ａ〜図３Ｂに明示的に示されていない）データは、拒否されても良い。
【００４９】
前述のようにデータパスを検証することに加えて、幾つかの実施形態では、エンティティ群（たとえば、図１のエンティティ群１０２）は、データ項目が墨消しされたときでも本開示に従ってデータパスを検証しても良い。たとえば、図４Ａおよび図４Ｂは、本明細書に記載された少なくとも１つの実施形態に従って、データ４０２が図１の環境１００の中で構造化され得る例示的マークル・ハッシュ・ツリー４００Ａおよび４００Ｂを示す。具体的には、幾つかの実施形態では、データ４０２、データ固有メタデータ４０４、およびパス−メタデータは、マークル・ハッシュ・ツリー４００Ａおよび４００Ｂに従って構造化されても良い。マークル・ハッシュ・ツリー４００Ａおよび４００Ｂが利用される幾つかの実施形態が詳細に説明されているが、マークル・ハッシュ・ツリー４００Ａおよび４００Ｂを含めることに限定的されない。１つ以上の他の墨消し可能署名方式が本明細書に記載された１つ以上の実施形態で実施され得ることが、本開示の利点と共に理解されるであろう。たとえば、墨消し可能署名方式は、カメルーンハッシュ、ＳＵＭＩ、またはＰＩＴＳを使用する墨消し可能な署名方式と、他の適切な墨消し可能／黒塗り署名方式を使用する署名方式とを含んでも良い。
【００５０】
第１のマークル・ハッシュ・ツリー４００Ａは、原データ２０２Ａなどの原データを含む構造を表現しても良い。第２のマークル・ハッシュ・ツリー４００Ｂは、１つ以上のデータ項目が墨消しされている図２の第１または第２の中間データ２０２Ｂまたは２０２Ｃなどの中間データを表しても良い。
【００５１】
マークル・ハッシュ・ツリー４００Ａおよび４００Ｂの一般的な構造は、リーフノード４０８、ルートノード４１０、および１つ以上の中間ノード４１２を含んでも良い。リーフノード４０８は、データ４０２に含まれるデータ項目を表しても良い。ルートノード４１０は、エンティティ識別子と共に発信側エンティティによって署名され得る前述のデータ固有メタデータであっても良い。データ固有メタデータは、図４Ａおよび４Ｂでは４０４によって表されている。中間ノード４１２は、直下の子中間ノード４１２または直下の子リーフノード４０８のハッシュ値を表しても良い。
【００５２】
図４Ａの第１のマークル・ハッシュ・ツリー４００Ａは、（リーフノード４０８によって表現された）データ項目が墨消しされていないデータ４０２を表しても良い。図４Ｂと比較すると、第２のマークル・ハッシュ・ツリー４００Ｂは、幾つかのデータ項目４０８が墨消しされているデータ４０２を表しても良い。図４Ｂでは、墨消しされたデータ項目４０８は、黒色ブロック４１４によって表され、墨消しされていないデータ項目４０８は、白色ボックス４１８によって表される。マークル・ハッシュ・ツリーによって使用されたハッシュ化方式に基づいて、白色ボックス４１８に含まれる墨消しされていないデータ項目４０８は、エンティティが墨消しされたデータ項目４０８を知ることなく、エンティティによって検証されても良い。具体的には、ルートノード４１０および中間ノード４１２は、修正されなくても良い。このようにして、認証は、ルートノード４１０のデータ固有メタデータ４０４を検証し、ルートノード４１０および／または墨消しされたデータ項目４１４より上にある中間ノード４１６におけるハッシュ値を使用して第２のマークル・ハッシュ・ツリー４００Ｂを再構築することにより可能になる。墨消しされたデータ項目４１４は、知られている必要がなくても良い。なぜならば、中間ノード４１６は、第２のマークル・ハッシュ・ツリー４００Ｂを十分に再構築し認証するために、墨消し中の中間エンティティによって提供され、検証中のエンティティによって使用されても良いためである。幾つかの実施形態では、ルートノード４１０および中間ノード４１６のハッシュ値を使用して第２のマークル・ハッシュ・ツリー４００Ｂを再構築するために、セキュアなハッシュ関数が使用されても良い。すなわち、これらの実施形態および他の実施形態では、ルートハッシュ値４１０自体は、データ固有メタデータであっても良い。このようにして、墨消しされなかったデータ項目４０８の完全性は、ルートノード４１０を計算し、その後、発信側エンティティの公開鍵を使用することにより発信側エンティティのデジタル署名に対してルートノード４１０を検証することによって検証できる。同様に、検証中のエンティティは、全ての中間ノード４１２を知っていなくてもよい。その代わりに、検証中のエンティティは、墨消しされなかったデータ項目４０８と、墨消しされたデータ項目４１４より上にある中間ノード４１６からの墨消しされたデータ項目４１４に対応するハッシュ値とを知り得る。
【００５３】
その結果、データ４０２の幾つかのデータ項目４０８は、特定のエンティティによって受信され得るデータ項目４０８を信頼し認証するこの特定のエンティティの能力を損なうことなく、この特定のエンティティに与えられない。
【００５４】
図５は、本明細書に記載された少なくとも１つの実施形態に従って、図１の環境１００で行われ得る例示的マルチホップ通信５００を示す。具体的には、図５のマルチホップ通信５００は、マルチホップ通信５００がオープン自動デマンドレスポンス（ＯｐｅｎＡＤＲ）標準プロトコルにおいて実行される実施態様である。マルチホップ通信５００は、データを第１の下流エンティティ５２２に通信し得る発信側エンティティ５２０を含んでも良く、この下流エンティティは、その後、データを第２の下流エンティティ５２４に通信しても良い。
【００５５】
マルチホップ通信５００では、通信されたデータは、デマンドレスポンス（ＤＲ）イベントおよび／またはＤＲイベントに関係する情報を含んでも良い。ＤＲイベントは、たとえば、１人以上の顧客がエネルギー使用量を削減するように奨励され得る期間に関係する情報を含んでも良い。データは、ＥｉＥｖｅｎｔ  ５１８Ａに含まれることがある。ＥｉＥｖｅｎｔ  ５１８Ａは、最初にパス−メタデータを含まないことがあり、その結果、最初に空の仮想最上位ノードコメント（ｖｔｎＣｏｍｍｅｎｔ）５０２Ａを含んでも良い。このｖｔｎＣｏｍｍｅｎｔは、ＯｐｅｎＡＤＲ  ２．０標準プロトコルに規定されたＸＭＬ要素である。ＥｉＥｖｅｎｔ  ５１８Ａは、拡張マークアップ言語（ＸＭＬ）に従ってフォーマット化されても良い。
【００５６】
ＥｉＥｖｅｎｔ  ５１８Ａは、その後、ＥｉＥｖｅｎｔ（ＥＸＩ）５０８Ａを生成するために、効率的なＸＭＬ交換（ＥＸＩ）およびＢａｓｅ６４にエンコードされても良い。ＥｉＥｖｅｎｔ（ＥＸＩ）５０８Ａは、単にＥｉＥｖｅｎｔ  ５１８Ａの圧縮形式でもよく、その結果、ＥｉＥｖｅｎｔ  ５１８Ａの原ＸＭＬは、ＥｉＥｖｅｎｔ（ＥＸＩ）５０８Ａから復元されても良い。図５に示されるように、ＥｉＥｖｅｎｔ（ＥＸＩ）５０８Ａは、その後、第１の下流エンティティ５２２のエンティティ識別子５０４（図５の「識別子ＩＤ」）および発信側エンティティ５２０のデジタル署名５０６（図５の「署名」）と共にｖｔｎＣｏｍｍｅｎｔ  ５０２Ａに格納されても良い。図５と、図２に関連して説明された第１のパス−メタデータ表現とを併せて参照すると、署名５０６は、Ｐ１に対応しても良く、エンティティ識別子５０４、および、ＥｉＥｖｅｎｔ（ＥＸＩ）５０８Ａに基づいて計算され得るデータ固有メタデータの信憑性を保証しても良い。
【００５７】
図５を再び参照すると、幾つかの実施形態では、ＥｉＥｖｅｎｔ（ＥＸＩ）５０８Ａに含まれるデータは、マークル・ハッシュ・ツリーまたは別の墨消し可能署名方式に従って構造化されることがあり、署名されるべきデータ固有メタデータは、マークル・ハッシュ・ツリーのルートハッシュ値でもよい。エンティティ識別子５０４とＥｉＥｖｅｎｔ（ＥＸＩ）５０８Ａに基づいて計算されたデータ固有メタデータとのペアについての発信側エンティティの署名５０６は、ＥｉＥｖｅｎｔ（ＥＸＩ）５０８Ａに含まれるデータと、ＥｉＥｖｅｎｔ（ＥＸＩ）５０８Ａに含まれるデータが発信側エンティティ５２０で発信されたこととを認証するために使用されても良い。
【００５８】
ＥｉＥｖｅｎｔ（ＥＸＩ）５０８Ａ、エンティティ識別子５０４、およびデジタル署名５０６は、第１の下流エンティティ５２２に通信されても良い。第１の下流エンティティ５２２は、図１および図２に関連して説明された中間エンティティ１０２に実質的に類似している。第１の下流エンティティ５２２は、ＸＭＬに従ってフォーマット化され得る別のＥｉＥｖｅｎｔ  ５１８Ｂを発行しても良く、幾つかの状況では、ＥｉＥｖｅｎｔ  ５１８Ｂは、ＥｉＥｖｅｎｔ  ５１８Ａと意味的に整合性が取れていることがある。ＥｉＥｖｅｎｔ（ＥＸＩ）５０８Ｂは、発信側エンティティ５２０によって発行されたＥｉＥｖｅｎｔ  ５１８Ａの内容を下流エンティティ群（たとえば、第２の下流エンティティ５２４）に伝達しても良い。ＥｉＥｖｅｎｔ（ＥＸＩ）５０８Ｂは、ＥｉＥｖｅｎｔ（ＥＸＩ）５０８Ａに一致しても良い。代替的に、ＥｉＥｖｅｎｔ（ＥＸＩ）５０８Ａの一部分は、プライバシー保護のため第１の下流エンティティ５２２によって墨消しされても良い。
【００５９】
ＥｉＥｖｅｎｔ（ＥＸＩ）５０８Ｂは、第１の下流エンティティ５２２上のｖｔｎＣｏｍｍｅｎｔ  ５０２Ｂに含まれても良い。エンティティ識別子５０４およびデジタル署名５０６は、ｖｔｎＣｏｍｍｅｎｔ  ５０２Ｂにコピーされても良く、第２の下流エンティティ５２４の第２のエンティティ識別子５１０および第１の下流エンティティ５２２の第２のデジタル署名５１２は、ｖｔｎＣｏｍｍｅｎｔ  ５０２Ｂにさらに含まれても良い。図２および図５を併せて参照すると、第２のデジタル署名５１２は、（前述の）Ｐ２に対応しても良い。
【００６０】
付加的に、ＥｉＥｖｅｎｔ  ５１８Ａのマークル・ハッシュ・ツリーは、ＥｉＥｖｅｎｔ（ＥＸＩ）５０８Ａの墨消しされたバージョンが認証されるように、ｖｔｎＣｏｍｍｅｎｔ  ５０２Ｂの中のＥｉＥｖｅｎｔ（ＥＸＩ）５０８ＡまたはＥｉＥｖｅｎｔ（ＥＸＩ）５０８Ｂから第１の下流エンティティ５２２によって計算されても良い。中間エンティティ群５２２および／または５２４のうちの１つが上流パス−メタデータを検証しようとしない限り、墨消しは、ＥｉＥｖｅｎｔ（ＥＸＩ）５０８Ａのマークル・ルート・ハッシュ値を変更することがないので、中間エンティティ群５２２および／または５２４は、マークル・ハッシュ・ツリーを計算することがない。第１の下流エンティティ５２２によって作成されたＥｉＥｖｅｎｔ  ５１８Ｂと、発信側エンティティ５２０によって発行された原データを伝達するＥｉＥｖｅｎｔ（ＥＸＩ）５０８Ｂと、デジタル署名５０６および５１２と、エンティティ識別子５０４および５１０とは、第２の下流エンティティ５２４に通信されても良い。
【００６１】
第２の下流エンティティ５２４は、ＸＭＬでフォーマット化され得る別のＥｉＥｖｅｎｔ  ５１８Ｃを発行しても良い。幾つかの状況では、ＥｉＥｖｅｎｔ  ５１８Ｃは、ＥｉＥｖｅｎｔ  ５１８Ａと意味的に整合性が取れていても良い。幾つかの実施形態では、ＥｉＥｖｅｎｔ  ５１８Ｃは、ＥｉＥｖｅｎｔ  ５１８Ｂの内容に基づいて、第２の下流エンティティ５２４が発行するＤＲ信号を含んでも良い。それによって、これらの状況および他の状況では、ＥｉＥｖｅｎｔ  ５１８Ｂの内容は、ＥｉＥｖｅｎｔ  ５１８Ａおよび／または５１８Ｂと意味的に整合性が取れていても良い。ＥｉＥｖｅｎｔ（ＥＸＩ）５０８Ｃは、発信元エンティティ５２０によって発行されたＥｉＥｖｅｎｔ  ５１８Ａの内容を下流エンティティ群（図示せず）に伝達しても良い。ＥｉＥｖｅｎｔ（ＥＸＩ）５０８Ｃは、ＥｉＥｖｅｎｔ（ＥＸＩ）５０８Ａおよび／または５０８Ｂに一致しても良い。代替的に、ＥｉＥｖｅｎｔ（ＥＸＩ）５０８Ａおよび／または５０８Ｂの一部分は、プライバシー保護のため第２の下流エンティティ５２４によって墨消しされても良い。すなわち、ＥｉＥｖｅｎｔ（ＥＸＩ）５０８Ｃは、ＥｉＥｖｅｎｔ（ＥＸＩ）５０８ＡまたはＥｉＥｖｅｎｔ（ＥＸＩ）５０８Ｂの墨消しされていないバージョンまたは墨消しされたバージョンでもよく、ＥｉＥｖｅｎｔ  ５１８Ａの墨消しされていないバージョンまたは墨消しされたバージョンの情報を担持しても良い。デジタル署名５０６および５１２と、エンティティ識別子５０４および５１０とは、第２の下流エンティティ５２４の中のｖｔｎＣｏｍｍｅｎｔ  ５０２Ｃにコピーされても良い。付加的に、第３の下流エンティティ（図示せず）の第３のエンティティ識別子５１４と、第２の下流エンティティ５２４のデジタル署名５１６とがｖｔｎＣｏｍｍｅｎｔ  ５０２Ｃに追加されても良い。
【００６２】
マルチホップ通信５００では、エンティティ５２０、５２２、および５２４は、ＥｉＥｖｅｎｔ（ＥＸＩ）５０８Ａ〜５０８Ｃのうちの１つ以上、および／または、これらに含まれるデータを無視する選択肢を有しても良い。デジタル署名５０６、５１２、および５１６とエンティティ識別子５０４、５１０、および５１４とは、マルチホップ通信５００のデータパスを検証するために使用されても良い。付加的に、前述のとおり、マークル・ルート・ハッシュの計算は、ＥｉＥｖｅｎｔ（ＥＸＩ）５０８Ａの１つ以上のデータ項目が墨消しされていたとしてもＥｉＥｖｅｎｔ（ＥＸＩ）５０８Ｂ〜５０８Ｃに含まれるデータを認証するために使用されても良い。幾つかの実施形態では、ＥｉＥｖｅｎｔ  ５１８Ｃの受信者はだれでもＥｉＥｖｅｎｔ  ５１８ＣとＥｉＥｖｅｎｔ  ５１８Ａの墨消しされたバージョンまたは墨消しされていないバージョンとの間の意味的整合性をチェックしても良く、このＥｉＥｖｅｎｔ  ５１８Ａは、発信側エンティティ５２０によって当初発行され、ＥｉＥｖｅｎｔ（ＥＸＩ）５０８Ｃから復元されても良い。ＥｉＥｖｅｎｔ  ５１８ＣとＥｉＥｖｅｎｔ  ５１８Ａとの間の整合性をチェックすることにより、ＥｉＥｖｅｎｔ  ５１８Ａの有効性が判断されても良い。
【００６３】
図６は、本明細書に記載された少なくとも１つの実施形態によるデータパスを検証する例示的方法６００のフローチャートである。この方法６００は、幾つかの実施形態では、図１の例示的環境１００の中で動作している例示的エンティティ群１０２などの、環境の中で動作している１つ以上のエンティティ群によって実施されても良い。たとえば、図１のエンティティ群１０２のうちの１つ以上は、方法６００のブロック６０２、６０４、および／または６０６のうちの１つ以上によって表されるようにメタデータを生成する動作を実行するためのコンピュータ命令を実行するように構成されても良い。別個のブロックとして示されているが、様々なブロックは、所望の実施に依存して、付加的なブロックに分割されること、より少数のブロックに統合されること、または、削除されても良い。次に、方法６００は、図６を参照して検討される。
【００６４】
方法６００は、データが受信されるブロック６０２で始まり得る。データは、幾つかの実施形態ではＯｐｅｎＡＤＲ標準プロトコルのＥｉＥｖｅｎｔに含まれ得るＤＲイベントを含んでも良い。データは、マークル・ハッシュ・ツリーの中のリーフノードを隠すことにより墨消しされ得る墨消しされたデータ項目を含んでも良い。代替的に、データは、データ項目が墨消しされていない原データでもよい。このデータから、幾つかの実施形態ではこのデータに一意に結合されたデータ固有メタデータが前述のとおり計算されても良い。
【００６５】
ブロック６０４で、第１のパス−メタデータが受信されても良い。第１のパス−メタデータは、発信側エンティティから第１のパス−メタデータを受信する第１の受信側エンティティと関連付けられた第１のエンティティ識別子を含んでも良い。第１のパス−メタデータは、発信側エンティティと関連付けられ得る第１のデジタル署名をさらに有しても良い。
【００６６】
幾つかの実施形態では、第１のエンティティ識別子は、第１の受信側エンティティの公開鍵と関連付けられても良く、第２のエンティティ識別子は、第２の受信側エンティティの公開鍵と関連付けられても良い。付加的に、幾つかの実施形態では、第１のデジタル署名は、発信側エンティティの秘密鍵に基づいても良く、第２のデジタル署名は、第１の受信側エンティティの秘密鍵に基づいても良い。
【００６７】
ブロック６０６で、第２のパス−メタデータが受信されても良い。第２のパス−メタデータは、第１のパス−メタデータと、第１の受信側エンティティから第２のパス−メタデータを受信する第２の受信側エンティティと関連付けられた第２のエンティティ識別子とを含んでも良い。第２のパス−メタデータは、第１の受信側エンティティと関連付けられ得る第２のデジタル署名をさらに有しても良い。
【００６８】
ブロック６０８で、第１のパスパス−メタデータ、第２のパス−メタデータ、第１のデジタル署名、および第２のデジタル署名に基づいて、データが発信側エンティティによって第１の受信側ユニットに、そして、第１の受信側エンティティから第２の受信側エンティティに通信されたことが検証されても良い。幾つかの実施形態では、検証は、発信側エンティティおよび第１の受信側エンティティと関連付けられたデジタル証明書に基づいても良い。
【００６９】
その結果、方法６００は、データパスを検証するために使用されても良い。当業者は、本明細書に開示されたこの手順および他の手順と方法とについて、これらのプロセスおよび方法において実行される機能が、異なる順序で実施されてもよいことを理解するであろう。たとえば、幾つかの実施形態では、データ、第１のパス−メタデータ、および第２のパス−メタデータは、ブロック６０２、６０４、および６０６が実質的に同時に行われるように、同時に受信され得るデータパケットの中に含まれても良い。さらに、概説されたステップおよび動作は、例として提供されているに過ぎず、ステップおよび動作の一部は、開示された実施形態を損なうことなく、随意選択されても良く、より少数のステップおよび動作に統合されても良く、または、付加的なステップおよび動作に拡張されても良い。
【００７０】
たとえば、方法６００は、第１のパス−メタデータ、第２のパス−メタデータ、第１のデジタル署名、および第２のデジタル署名のうちの１つ以上に基づいて、第１の受信側エンティティおよび第２の受信側エンティティのうちの１つ以上がデータの対象とする受信者であるかどうかを判断するステップを含んでも良い。方法６００は、第１の受信側エンティティおよび第２の受信側エンティティのうちの１つ以上がデータの対象とする受信者ではないと判断されたとき、データを拒否するステップをさらに含んでも良い。
【００７１】
付加的にまたは代替的に、方法６００は、発信側エンティティおよび／または第１の受信側エンティティが信頼できるかどうかを判断するステップを含んでも良い。発信側エンティティおよび／または第１の受信側エンティティが信頼できないとき、データは拒否されても良い。
【００７２】
図７は、同様に、本明細書に記載された少なくとも１つの実施形態によるデータパスを検証する例示的方法７００のフローチャートである。方法７００は、幾つかの実施形態では、図１の例示的環境１００の中で動作する例示的エンティティ群１０２などの環境の中で動作する１つ以上のエンティティ群により実施されても良い。たとえば、図１のエンティティ群１０２のうちの１つ以上は、方法７００の１つ以上のブロックによって表されるようにメタデータを生成する動作を実行するためのコンピュータ命令を実行するように構成されても良い。別個のブロックとして示されているが、様々なブロックは、所望の実施態様に依存して、付加的なブロックに分割され、より少数のブロックに統合され、または、削除されても良い。
【００７３】
方法７００は、データが受信されるブロック７０２で始まることがある。データは、幾つかの実施形態では、ＯｐｅｎＡＤＲ標準プロトコルに規定されたＸＭＬ方式に従ってフォーマット化され、その後、ＥＸＩおよびＢａｓｅ６４を使用してエンコードされるＥｉＥｖｅｎｔに含まれ得るＤＲイベントを含んでも良い。データは、マークル・ハッシュ・ツリーの中でリーフノードを隠すことにより墨消しされ得る墨消しされたデータ項目を含んでも良い。代替的に、データは、データ項目が墨消しされていない原データでもよい。このデータから、幾つかの実施形態ではこのデータに一意に結合されたデータ固有メタデータが計算されても良い。
【００７４】
ブロック７０４で、第１のパス−メタデータが受信されても良い。第１のパス−メタデータは、データ固有メタデータと、発信側エンティティから第１のパス−メタデータを受信する第１の受信側エンティティと関連付けられた第１のエンティティ識別子とを含んでも良い。第１のパス−メタデータは、発信側エンティティと関連付けら得る第１のデジタル署名をさらに有しても良い。
【００７５】
幾つかの実施形態では、第１のエンティティ識別子は、第１の受信側エンティティの公開鍵と関連付けられても良く、第２のエンティティ識別子は、第２の受信側エンティティの公開鍵と関連付けられても良い。付加的に、幾つかの実施形態では、第１のデジタル署名は、発信側エンティティの秘密鍵に基づいても良く、第２のデジタル署名は、第１の受信側エンティティの秘密鍵に基づいても良い。
【００７６】
ブロック７０６で、第２のパス−メタデータが生成されても良い。第２のパス−メタデータは、第１のパス−メタデータと、第１の受信側エンティティから第２のパス−メタデータを受信しても良い第２の受信側エンティティと関連付けられた第２のエンティティ識別子とを含んでも良い。ブロック７０８で、第２のパス−メタデータは、第２のデジタル署名を生成するために第１の受信側エンティティによって署名されても良い。
【００７７】
ブロック７１０で、データは、第２の受信側エンティティに通信されても良い。ブロック７１２で、第１のパス−メタデータおよび第２のパス−メタデータは、第２の受信側エンティティにさらに通信されても良い。第１のパス−メタデータと、第２のパス−メタデータと、第１のデジタル署名と、第２のデジタル署名とに基づいて、データが発信側エンティティによって第１の受信側エンティティに、そして、第１の受信側エンティティから第２の受信側エンティティに通信されたことが検証されるように、第１のパス−メタデータおよび第２のパス−メタデータは、それぞれに第１のデジタル署名および第２のデジタル署名で署名されても良い。幾つかの実施形態では、検証は、発信側エンティティおよび第１の受信側エンティティと関連付けられたデジタル証明書にも基づいても良い。
【００７８】
その結果、方法７００は、データパスを検証するためにも使用されても良い。当業者は、本明細書に開示されたこの手順および他の手順と方法とについて、これらのプロセスおよび方法において実行される機能が、異なる順序で、または、同時に実施されてもよいことを理解するであろう。さらに、概説されたステップおよび動作は、例として提供されているに過ぎず、ステップおよび動作の一部は、開示された実施形態を損なうことなく、随意選択され、より少数のステップおよび動作に統合され、または、付加的なステップおよび動作に拡張されても良い。
【００７９】
本明細書に記載された実施形態は、図６の方法６００、図７の方法７００、および／または、これらの変形例を実行するために処理装置によって実行可能なエンコードされたプログラミングコードを有している有形の、および／または、一時的でないコンピュータ読み取り可能媒体を含んでも良い。処理装置は、たとえば、図１の環境１００またはエンティティ群１０２に含まれても良い。
【００８０】
前述のとおり、本明細書に記載された実施形態は、以下でより詳細に検討されるように、様々なコンピュータハードウェアまたはソフトウェアモジュールを含む専用または汎用コンピュータの使用を含んでも良い。
【００８１】
本明細書に記載された実施形態は、コンピュータ実行可能な命令もしくはデータ構造体を担持するか、または、これらの命令またはデータ構造体が記憶されているコンピュータ読み取り可能媒体を使用して実施されても良い。このようなコンピュータ読み取り可能媒体は、汎用または専用コンピュータによってアクセスされ得る利用可能などんな媒体でもよい。一例として、限定されることなく、このようなコンピュータ読み取り可能媒体は、コンピュータ実行可能な命令またはデータ構造体の形式で所望のプログラムコード手段を担持または記憶するために使用されても良く、汎用または専用コンピュータによってアクセスされ得るＲＡＭと、ＲＯＭと、ＥＥＰＲＯＭと、ＣＤ−ＲＯＭもしくは他の光ディスク・ストレージと、磁気ディスク・ストレージもしくは他の磁気記憶装置と、または、他の一時的でない記憶媒体とを含む一時的でないコンピュータ読み取り可能記憶媒体を備えても良い。
【００８２】
コンピュータ実行可能な命令は、たとえば、汎用コンピュータ、専用コンピュータ、または専用処理装置にある特定の機能または機能のグループを実行させる命令およびデータを含んでも良い。主題は、構造的特徴および／または方法的行為に固有の文言で記載されているが、特許請求の範囲に規定された主題は、前述の具体的な特徴または行為に必ずしも限定されないことが理解されるべきである。それどころか、前述の具体的な特徴および行為は、特許請求の範囲を実施する例示的形式として開示されている。
【００８３】
本明細書で使用されるように、用語「モジュール」または「コンポーネント」は、モジュールもしくはコンポーネントの動作、および／または、コンピューティングシステムの汎用ハードウェア（たとえば、コンピュータ読み取り可能媒体、処理装置など）に記憶および／または実行され得るソフトウェアオブジェクトもしくはソフトウェアルーチンを実行するように構成されている具体的なハードウェア実装態様に言及しても良い。幾つかの実施形態では、本明細書に記載された様々なコンポーネント、モジュール、エンジン、およびサービスは、コンピューティングシステム上で動くオブジェクトまたはプロセス（たとえば、別個のスレッド）として実装されても良い。本明細書に記載されたシステムおよび方法の一部は、（汎用ハードウェアに記憶および／または汎用ハードウェアによって実行される）ソフトウェアで実装されるものとして概ね説明されているが、具体的なハードウェア実装またはソフトウェア実装と具体的なハードウェア実装との組み合わせが同様に可能であり、検討されている。詳細な説明では、「コンピューティングエンティティ」は、既に本明細書に定義されているようなどんなコンピューティングシステムでもよく、または、コンピューティングシステム上で動くどんなモジュールでも、もしくは、モジュールの組み合わせでもよい。
【００８４】
本明細書に列挙された全ての例および条件語句は、読者が技術推進のため発明者が貢献した発明および概念を理解するのを助けるために教育的な目的が意図され、このような具体的に列挙された例および条件に制限がないものとして解釈されるべきである。本発明の実施形態は、詳細に説明されているが、様々な変更、置換、および代替が本発明の趣旨および範囲を逸脱することなくこれらの実施形態に行ってもよいことが理解されるべきである。
【符号の説明】
【００８５】
１００  環境
１０２，５２０，５２２，５２４  エンティティ
１０４  階層
１５０  プロセッサ
１５２  メモリ
２００  データパス
２０２  原データ
２０４Ａ，２０４Ｂ，２０４Ｃ  パス−メタデータ
２０６Ａ，２０６Ｂ，２０６Ｃ  データパケット
３００Ａ，３００Ｂ，３００Ｃ  データパス
３０４  第４のパス−メタデータ
３０６  未知エンティティ
３０８  第６のパス−メタデータ
４００Ａ，４００Ｂ  マークル・ハッシュ・ツリー
４０２  データ
４０４  データ固有メタデータ
４０８  データ項目（リーフノード）
４１０  ルートノード
４１２  中間ノード
４１８  白色ボックス
５００  マルチポップ通信
５０４，５１０，５１４  エンティティ識別子
５０６，５１２，５１６  デジタル署名
【図１】
2015026362.tif 000006
【図２】
2015026362.tif 000007
【図３Ａ】
2015026362.tif 000008
【図３Ｂ】
2015026362.tif 000009
【図３Ｃ】
2015026362.tif 000010
【図４Ａ】
2015026362.tif 000011
【図４Ｂ】
2015026362.tif 000012
【図５】
2015026362.tif 000013
【図６】
2015026362.tif 000014
【図７】
2015026362.tif 000015