(57)【特許請求の範囲】
【請求項１】
コンテンツを１つ以上のオブジェクトに分割して配信するコンテンツ配信ネットワークの代理装置であって、
クライアント装置と共有した共通鍵を保持する第１保持手段と、
所定フィールドに前記代理装置を示す値が含まれた第１要求パケットを前記クライアント装置から受信すると、前記第１要求パケットに格納された暗号化オブジェクト名を前記共通鍵で復号することでオブジェクト名を取得する復号手段と、
前記オブジェクト名に対応するオブジェクトを要求する第２要求パケットを前記コンテンツ配信ネットワークに送信して当該オブジェクトを取得し、取得した当該オブジェクトを前記クライアント装置に向けて送信する処理を行う処理手段と、
を備えており、
前記暗号化オブジェクト名は、前記オブジェクト名に、ランダム値及びタイムスタンプの少なくとも１つを付加した値を前記共通鍵で暗号化して生成されていることを特徴とする代理装置。
【請求項２】
オブジェクトを保持する第２保持手段をさらに備えており、
前記処理手段は、前記オブジェクト名に対応するオブジェクトを前記第２保持手段が保持していない場合に前記第２要求パケットを前記コンテンツ配信ネットワークに送信することを特徴とする請求項１に記載の代理装置。
【請求項３】
取得待ちのオブジェクトを示す情報を保持する第３保持手段をさらに備えており、
前記処理手段は、前記オブジェクト名に対応するオブジェクトの取得待ちでない場合に前記第２要求パケットを前記コンテンツ配信ネットワークに送信することを特徴とする請求項１又は２に記載の代理装置。
【請求項４】
前記第１要求パケットは、前記共通鍵の識別子を含む値を前記代理装置の公開鍵で暗号化した暗号化識別子を含み、
前記代理装置は、前記暗号化識別子を前記公開鍵に対応する秘密鍵で復号して前記識別子を取得し、前記識別子に基づき前記共通鍵を特定することを特徴とする請求項１から３のいずれか１項に記載の代理装置。
【請求項５】
前記共通鍵の識別子を含む値は、前記識別子にランダム値及びタイムスタンプの少なくとも１つを付加した値であることを特徴とする請求項４に記載の代理装置。
【請求項６】
前記共通鍵の識別子は、前記共通鍵のハッシュ値であることを特徴とする請求項４又は５に記載の代理装置。
【請求項７】
前記第１要求パケットは、前記暗号化オブジェクト名及び前記暗号化識別子の前記共通鍵による認証情報を含むことを特徴とする請求項４から６のいずれか１項に記載の代理装置。
【請求項８】
前記暗号化オブジェクト名は、前記代理装置を示す値のサフィックスとして前記第１要求パケットの前記所定フィールドに格納されることを特徴とする請求項１から７のいずれか１項に記載の代理装置。
【請求項９】
コンテンツを１つ以上のオブジェクトに分割して配信するコンテンツ配信ネットワークの転送装置であって、
クライアント装置と共有した共通鍵を保持する第１保持手段と、
オブジェクトを保持する第２保持手段と、
所定フィールドに所定の代理装置を示す値が含まれた要求パケットを前記クライアント装置から受信すると、前記要求パケットに格納された暗号化オブジェクト名を前記共通鍵で復号することでオブジェクト名を取得する復号手段と、
前記オブジェクト名に対応するオブジェクトを前記第２保持手段が保持していると、当該オブジェクトを前記クライアント装置に向けて送信する処理を行う処理手段と、
を備えており、
前記暗号化オブジェクト名は、前記オブジェクト名に、ランダム値及びタイムスタンプの少なくとも１つを付加した値を前記共通鍵で暗号化して生成されていることを特徴とする転送装置。
【請求項１０】
取得待ちのオブジェクトを示す情報を保持する第３保持手段をさらに備えており、
前記処理手段は、前記オブジェクト名に対応するオブジェクトを前記第２保持手段が保持しておらず、かつ、前記オブジェクト名に対応するオブジェクトの取得待ちでない場合、前記要求パケットを前記代理装置に向けて転送することを特徴とする請求項９に記載の転送装置。
【請求項１１】
コンテンツを１つ以上のオブジェクトに分割して配信するコンテンツ配信ネットワークのクライアント装置であって、
代理装置及び前記コンテンツ配信ネットワークの所定の転送装置と共有した共通鍵を保持する第１保持手段と、
取得したいオブジェクトのオブジェクト名に、ランダム値及びタイムスタンプの少なくとも１つを付加した値を前記共通鍵で暗号化して暗号化オブジェクト名を生成し、前記前記暗号化オブジェクト名と前記代理装置を示す値を含む要求パケットを前記コンテンツ配信ネットワークに送信する処理を行う処理手段と、
を備えていることを特徴とするクライアント装置。
【請求項１２】
前記要求パケットは、前記共通鍵の識別子を含む値を前記代理装置の公開鍵で暗号化した暗号化識別子を含むことを特徴とする請求項１１に記載のクライアント装置。
【請求項１３】
前記共通鍵の識別子を含む値は、前記識別子にランダム値及びタイムスタンプの少なくとも１つを付加した値であることを特徴とする請求項１２に記載のクライアント装置。
【請求項１４】
前記共通鍵の識別子は、前記共通鍵のハッシュ値であることを特徴とする請求項１２又は１３に記載のクライアント装置。
【請求項１５】
前記要求パケットは、前記暗号化オブジェクト名及び前記暗号化識別子の前記共通鍵による認証情報を含むことを特徴とする請求項１２から１４のいずれか１項に記載のクライアント装置。
【請求項１６】
請求項１から８のいずれか１項に記載の代理装置としてコンピュータを機能させることを特徴とするプログラム。
【請求項１７】
請求項９から１０のいずれか１項に記載の転送装置としてコンピュータを機能させることを特徴とするプログラム。
【請求項１８】
請求項１１から１５のいずれか１項に記載のクライアント装置としてコンピュータを機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、コンテンツに関する名前に基づきルーティングを行うコンテンツ配信ネットワークの代理装置、転送装置、クライアント装置及びプログラムに関する。
【背景技術】
【０００２】
コンテンツに関する名前に基づきコンテンツの配信を行うネットワークが提案されている。特許文献１及び非特許文献１は、その様なネットワークの１つであるコンテンツ・セントリック・ネットワーク（ＣＣＮ：Ｃｏｎｔｅｎｔ  Ｃｅｎｔｒｉｃ  Ｎｅｔｗｏｒｋｉｎｇ）を開示している。
【０００３】
ＣＣＮにおいて、コンテンツを公開するサーバ装置は当該コンテンツを１つ以上のチャンクと呼ばれるオブジェクトに分割し、クライアント装置は、この分割されたオブジェクト単位でコンテンツを取得する。また、ＣＣＮにおいて、オブジェクトの転送を行った通信装置（以下、転送装置と呼ぶ。）は、当該オブジェクトを保存（キャッシュ）できる。この転送装置は、自装置が保持しているオブジェクトを要求するインタレスト・パケット（要求パケット）をクライアント装置から受信すると、当該インタレスト・パケットをサーバ装置に向けて転送することなく、自装置が保持するオブジェクトを、当該インタレスト・パケットの送信元のクライアント装置に向けて送信できる。
【０００４】
以下に、転送装置の動作の一例を説明する。転送装置は、ＣＳ（Ｃｏｎｔｅｎｔｓ  Ｓｔｏｒｅ）と、ＦＩＢ（Ｆｏｒｗａｒｄ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｂａｓｅ）と、ＰＩＴ（ＰＩＴ：Ｐｅｎｄｉｎｇ  Ｉｎｔｅｒｅｓｔ  Ｔａｂｌｅ）を管理する。ＣＳは、自装置が保持しているオブジェクトを示す情報である。ＦＩＢは、オブジェクト名と、当該オブジェクト名のオブジェクトを要求するインタレスト・パケットの転送インタフェースとの関係を示す情報である。ＰＩＴは、転送したインタレスト・パケットが要求するオブジェクトと、当該転送したインタレスト・パケットを受信したインタフェースとの関係を示す情報である。
【０００５】
転送装置は、インタレスト・パケットを受信すると、ＣＳを検索し、当該インタレスト・パケットが要求するオブジェクトを保持しているか否かを判定する。保持している場合には、自装置が保持しているオブジェクトを、当該インタレスト・パケットの送信元のクライアント装置に向けて送信する。一方、受信したインタレスト・パケットが要求するオブジェクトを保持していない場合には、ＰＩＴを検索して、当該インタレスト・パケットと同じオブジェクトを要求するインタレスト・パケットを既に転送し、当該オブジェクトの受信待ちの状態であるかを判定する。受信待ちの状態であると、受信したインタレスト・パケットを転送せず、当該インタレスト・パケットの受信インタフェースを、当該インタレスト・パケットが要求するオブジェクトに関連付ける様にＰＩＴを更新する。一方、受信したインタレスト・パケットが要求するオブジェクトの受信待ちでなければ、ＦＩＢに基づき判定したインタフェースから当該インタレスト・パケットを転送すると共にＰＩＴを更新する。また、転送装置は、オブジェクトを受信すると、当該オブジェクトの転送先インタフェースをＰＩＴに基づき判定し、当該オブジェクトに関する情報をＰＩＴから削除する。また、転送装置は、受信して転送したオブジェクトを保存するとＣＳを更新する。
【０００６】
オブジェクト名は、通常、コンテンツ名にオブジェクトの番号を付した名前とされ、コンテンツ名は、ＵＲＬやファイルシステムと同様の考え方により付与される。つまり、例えば、ドメイン名、サーバ名、フォルダ名、ファイル名を連結した名前で表される。したがって、インタレスト・パケットにより、ユーザがどの様なコンテンツを取得しようとしているのかが明らかとなる。
【０００７】
ユーザが取得しようとしているコンテンツを秘匿するため、非特許文献２及び３は、インタレスト・パケット内のオブジェクト名を難読化又は暗号化する構成を開示している。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２００９−２７７２３４号公報
【非特許文献】
【０００９】
【非特許文献１】Ｖ．Ｊａｃｏｂｓｏｎ，ｅｔ  ａｌ．，"Ｎｅｔｗｏｒｋｉｎｇ  Ｎａｍｅｄ  Ｃｏｎｔｅｎｔ"，ｉｎ  Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  ＡＣＭ  ＣｏＮＥＸＴ  ２００９，２００９年１２月
【非特許文献２】Ｒ．Ｔｏｕｒａｎｉ，ｅｔ  ａｌ．，"Ｃａｔｃｈ  ｍｅ  ｉｆ  ｙｏｕ  ｃａｎ：Ａ  ｐｒａｃｔｉｃａｌ  ｆｒａｍｅｗｏｒｋ  ｔｏ  ｅｖａｄｅ  ｃｅｎｓｏｒｓｈｉｐ  ｉｎ  ｉｎｆｏｒｍａｔｉｏｎ  ｃｅｎｔｒｉｃ  ｎｅｔｗｏｒｋｓ"，Ｉｎ Ｐｒｏｃ．ＡＣＭ  ＩＣＮ  ２０１５，１６７−１７６頁，２０１５年９月〜１０月
【非特許文献３】Ｃ．Ｇｈａｌｉ  ａｌ．，"Ｉｎｔｅｒｅｓｔ  ｂａｓｅｄ  ａｃｃｅｓｓ  ｃｏｎｔｒｏｌ  ｆｏｒ  ｃｏｎｔｅｎｔ  ｃｅｎｔｒｉｃ  ｎｅｔｗｏｒｋｓ"，Ｉｎ Ｐｒｏｃ．ＡＣＭ  ＩＣＮ  ２０１５，１４７−１５６頁，２０１５年９月〜１０月
【発明の概要】
【発明が解決しようとする課題】
【００１０】
非特許文献２及び３は、オブジェクト名の暗号化・難読化について、所謂、確定論的な手法を使用している。つまり、オブジェクト名と、当該オブジェクト名を暗号化した値との関係が常に同じとなる手法を使用している。ＣＣＮにおいては、１つのオブジェクトのサイズについて、例えば、６４ＫＢ程度の上限値が定められており、１つのコンテンツの総てのオブジェクトを取得するには多数のインタレスト・パケットを発行する必要がある。通常、同じコンテンツのオブジェクトの名前は、最後のオブジェクト番号が異なるのみであり、クライアント装置は、オブジェクト番号の順にインタレスト・パケットを発行する。
【００１１】
したがって、非特許文献２及び３の構成では、巨大な暗号文の辞書を作成して統計的な解析を施すことで、あるユーザがクライアント装置を使用して取得しようとしているコンテンツが解読され得る。また、暗号化されたオブジェクト名が常に同じであるため、クライアント装置が定期的に同じ名前のオブジェクトをポーリングしている等、ユーザの振る舞いについての情報が漏洩し得る。さらに、転送装置がインタレスト・パケットのオブジェクト名を判定できないため、転送装置のキャッシュを使用することができなくなる。
【００１２】
本発明は、クライアント装置が取得するオブジェクトを効果的に秘匿できるコンテンツ配信ネットワークの代理装置、転送装置、クライアント装置及びプログラムを提供するものである。
【課題を解決するための手段】
【００１３】
本発明の一側面によると、コンテンツを１つ以上のオブジェクトに分割して配信するコンテンツ配信ネットワークの代理装置は、クライアント装置と共有した共通鍵を保持する第１保持手段と、所定フィールドに前記代理装置を示す値が含まれた第１要求パケットを前記クライアント装置から受信すると、前記第１要求パケットに格納された暗号化オブジェクト名を前記共通鍵で復号することでオブジェクト名を取得する復号手段と、前記オブジェクト名に対応するオブジェクトを要求する第２要求パケットを前記コンテンツ配信ネットワークに送信して当該オブジェクトを取得し、取得した当該オブジェクトを前記クライアント装置に向けて送信する処理を行う処理手段と、を備えており、前記暗号化オブジェクト名は、前記オブジェクト名に、ランダム値及びタイムスタンプの少なくとも１つを付加した値を前記共通鍵で暗号化して生成されている。
【発明の効果】
【００１４】
本発明によると、クライアント装置が取得するオブジェクトを効果的に秘匿できる。
【図面の簡単な説明】
【００１５】
【図１】一実施形態によるコンテンツ配信ネットワークの構成図。
【図２】一実施形態による登録処理で使用されるパケットの説明図。
【図３】一実施形態によるインタレスト・パケットを示す図。
【図４】一実施形態によるクライアント装置の構成図。
【図５】一実施形態による信頼転送装置の構成図。
【図６】一実施形態による代理装置の構成図。
【発明を実施するための形態】
【００１６】
以下、本発明の例示的な実施形態について図面を参照して説明する。なお、以下の実施形態において、コンテンツ名（オブジェクト名）に基づきルーティング及びコンテンツの配信を行うネットワークがＣＣＮであるものとするが、本発明はＣＣＮに限定されず、コンテンツ名に基づきルーティング及びコンテンツの配信を行う任意のネットワークに本発明を適用することができる。また、以下の各図においては実施形態の説明に必要ではない構成要素については図から省略する。さらに、以下の実施形態は例示であり本発明を実施形態の内容に限定するものではない。
【００１７】
＜第一実施形態＞
図１は、本実施形態によるコンテンツ配信システムの構成図である。ＣＣＮ１００には、コンテンツを公開するサーバ装置５と、コンテンツを取得するユーザが使用するクライアント装置１が接続されている。また、ＣＣＮ１００は、非信頼転送装置２と、信頼転送装置３と、代理装置４とを含んでいる。なお、図１では、簡略化のため、非信頼転送装置２と、信頼転送装置３と、代理装置４とを、それぞれ、１つのみ表示しているが、ＣＣＮ１００内には、複数の非信頼転送装置２と、複数の信頼転送装置３と、複数の代理装置４とが存在し得る。なお、非信頼転送装置２及び信頼転送装置３の機能は同じであり、"信頼"及び"非信頼"の区別は代理装置４との関係で定義される。例えば、ある代理装置４を設置・運用しているものと同じものが設置・運用する転送装置が、当該代理装置４の信頼転送装置３であり、それ以外の転送装置が、当該代理装置４の非信頼転送装置２である。したがって、転送装置が非信頼転送装置２及び信頼転送装置３であるかは、代理装置４が異なれば異なり得る。なお、以下の説明において、非信頼転送装置２と信頼転送装置３を区別する必要が無い場合には、単に、転送装置と表記する。また、代理装置４は、少なくとも２つの公開鍵Ｋ１ｐ及び公開鍵Ｋ２ｐを使用する。なお、公開鍵Ｋ１ｐは、一般的に公開されており、後述する登録処理を行うことなく各クライアント装置１は利用可能であるものとする。さらに、代理装置４の公開鍵Ｋ１ｐに対応する秘密鍵Ｋ１ｓと、公開鍵Ｋ２ｐに対応する秘密鍵Ｋ２ｓとを、当該代理装置４の信頼転送装置３は予め保持しているものとする。
【００１８】
まず、本実施形態において、クライアント装置１は、事前に、１つの代理装置４に対して登録処理を行う。以下、登録処理について説明する。まず、クライアント装置１は、暗号化用の共通鍵Ｋｃを生成し、この共通鍵Ｋｃを代理装置４の公開鍵Ｋ１ｐで暗号化し、インタレスト・パケットのペイロードに格納する。そして、当該インタレスト・パケットのオブジェクト名フィールドに、代理装置４を示す名前にランダム文字列を追加した値を設定してＣＣＮ１００に送信する。なお、以下では、代理装置４を示す名前を"Ａｎｏｎｙｍ"とする。なお、オブジェクト名フィールドとは、インタレスト・パケットにおいて、取得するオブジェクト名を設定するフィールドである。図２（Ａ）は、このインタレスト・パケットを示している。
【００１９】
ＣＣＮ１００において、転送装置は、オブジェクト名に基づきルーティングを行うため、クライアント装置１が送信したインタレスト・パケットは、代理装置４に到達する。その過程において、インタレスト・パケットを転送した信頼転送装置３は、オブジェクト名の代理装置４を示す名前の部分"Ａｎｏｎｙｍ"により、自装置を信頼している代理装置４宛のインタレスト・パケットであるかを識別し、自装置を信頼している代理装置４宛のインタレスト・パケットである場合には、秘密鍵Ｋ１ｓによりペイロードに格納された値を復号してクライアント装置１の共通鍵Ｋｃを取得する。また、代理装置４も、秘密鍵Ｋ１ｓによりペイロードに格納された値を復号してクライアント装置１の共通鍵Ｋｃを取得する。
【００２０】
代理装置４は、クライアント装置１からインタレスト・パケットを受信すると、その応答として、図２（Ｂ）に示すＡＣＫパケットをクライアント装置１に向けて送信する。当該ＡＣＫパケットには、クライアント装置１がコンテンツの取得時に使用する公開鍵Ｋ２ｐを含める。
【００２１】
続いて、クライアント装置１によるコンテンツの取得処理について説明する。なお、以下の説明において、クライアント装置１は、オブジェクト名が"Ｎａｍｅ"であるオブジェクトを取得するものとする。クライアント装置１は、"Ｎａｍｅ"に、タイムスタンプ"ＴｉｍｅＳｔａｍｐ"及びランダム値"Ｒａｎｄｏｍ"を連結し、この連結した値を共通鍵Ｋｃで暗号化することで暗号化オブジェクト名を生成する。この暗号化オブジェクト名を以下では"Ｃ"で表す。なお、タイムスタンプとしては、例えば、処理時の時刻に基づく値を使用することができる。
【００２２】
続いて、クライアント装置１は、共通鍵Ｋｃの識別子として、共通鍵Ｋｃのハッシュ値を求める。以下ではこの識別子を"ＩＤ"とする。続いて、クライアント装置１は、"ＩＤ"、"ＴｉｍｅＳｔａｍｐ"及び"Ｒａｎｄｏｍ"を連結した値を公開鍵Ｋ２ｐで暗号化して暗号化識別子を生成する。なお、"ＴｉｍｅＳｔａｍｐ"及び"Ｒａｎｄｏｍ"は、暗号化オブジェクト名の生成に使用したものと同じであっても異なるものであっても良い。この暗号化識別子を以下では"Ｂ"で表す。その後、クライアント装置１は、例えば、ＨＭＡＣ（Ｋｅｙｅｄ−Ｈａｓｈｉｎｇ  ｆｏｒ  Ｍｅｓｓａｇｅ  Ａｕｔｈｅｎｔｉｃａｔｉｏｎ）により、共通鍵Ｋｃを使用して暗号化オブジェクト名"Ｃ"及び暗号化識別子"Ｂ"の連結値の認証情報を求める。この認証情報を以下では"ＭＡＣ"と表記する。
【００２３】
クライアント装置１は、代理装置４を示す名前"Ａｎｏｎｙｍ"に暗号化オブジェクト名"Ｃ"を付加した値をインタレスト・パケットのオブジェクト名フィールドに設定し、さらに、暗号化識別子"Ｂ"及び認証情報"ＭＡＣ"をインタレスト・パケットのペイロードに格納する。図３は、この様に設定したインタレスト・パケットを示している。クライアント装置１は、このインタレスト・パケットをＣＣＮ１００に送信する。インタレスト・パケットのオブジェクト名の最初の部分、つまり、プレフィックスは"Ａｎｏｎｙｍ"であるため、ＣＣＮ１００の転送装置は、このインタレスト・パケットを代理装置４に向けて転送する。
【００２４】
代理装置４は、クライアント装置１が登録処理を行い、当該クライアント装置１と共通鍵Ｋｃを共有したときに、その識別子"ＩＤ"を求め、識別子"ＩＤ"と共通鍵Ｋｃとの関係を保持しておく。代理装置４は、複数のクライアント装置１の処理を行うため、代理装置４は、当該代理装置４に対して登録処理を行った複数のクライアント装置１それぞれについて、共通鍵と、その識別子との関係を保持している。したがって、代理装置４は、インタレスト・パケットを受信すると、暗号化識別子"Ｂ"を秘密鍵Ｋ２ｓで復号し、識別子"ＩＤ"を取得する。そして、この復号して得た識別子"ＩＤ"に基づき、当該インタレスト・パケットを送信したクライアント装置１との共通鍵Ｋｃを判定する。その後、代理装置４は、判定した共通鍵Ｋｃにより認証情報"ＭＡＣ"を認証し、暗号化識別子"Ｂ"及び暗号化オブジェクト名"Ｃ"の正当性を検証する。認証情報の認証が不成功であると、代理装置４は、以後の処理を行うことなく受信したインタレスト・パケットを廃棄する。
【００２５】
一方、認証が成功であると、代理装置４は、受信したインタレスト・パケットのオブジェクト名フィールドの所定部分、本例では、代理装置４の名前のサフィックスにある暗号化オブジェクト名"Ｃ"を共通鍵Ｋｃで復号して"Ｎａｍｅ"、つまり、クライアント装置１が取得したいオブジェクトのオブジェクト名を取得する。そして、代理装置４は、クライアント装置１に代わって、クライアント装置１が取得したいオブジェクトを取得する。なお、このときの代理装置４における処理は通常の転送装置と同様である。即ち、代理装置４は、転送装置と同様にＣＳ、ＰＩＴ、ＦＩＢを管理している。そして、クライアント装置１が取得したいオブジェクトを保持している場合には、当該オブジェクトをクライアント装置１に向けて送信する。一方、クライアント装置１が取得したいオブジェクトを保持していないが、他のクライアント装置１からの要求等により取得待ちである場合には、当該オブジェクトを取得後にクライアント装置１に向けて送信する。さらに、当該オブジェクトの取得待ちでもなければ、当該オブジェクトを取得する通常のインタレスト・パケットを生成しＦＩＢに従いサーバ装置５に向けて送信する。この場合、代理装置４は、ＰＩＴを更新する。
【００２６】
なお、本実施形態において、信頼転送装置３は、秘密鍵Ｋ２ｓ及びクライアント装置１との共通鍵Ｋｃを保持しているため、上記代理装置４と同様の処理が可能である。即ち、信頼転送装置３は、ＣＳ、ＰＩＴ、ＦＩＢを管理している。そして、信頼転送装置３は、インタレスト・パケットの宛先が、自装置を信頼している代理装置４である場合、代理装置４での処理と同様に、共通鍵Ｋｃの特定と、認証情報"ＭＡＣ"の認証を行い、認証が成功すると、クライアント装置１が取得したいオブジェクトを判定する。そして、クライアント装置１が取得したいオブジェクトを保持している場合には、当該オブジェクトをクライアント装置１に向けて送信する。一方、クライアント装置１が取得したいオブジェクトを保持していないが、他のクライアント装置１からの要求等により取得待ちである場合には、当該オブジェクトを取得後にクライアント装置１に向けて送信する。これらの場合、信頼転送装置３は、受信したインタレスト・パケットを廃棄する。さらに、当該オブジェクトの取得待ちでもなければ、信頼転送装置３は、受信したインタレスト・パケットを代理装置４に向けて転送する。この場合、信頼転送装置３は、ＰＩＴを更新する。
【００２７】
以上、本実施形態では、クライアント装置１は、事前に代理装置４及び信頼転送装置３と共通鍵Ｋｃを共有する。そして、オブジェクト名を単に共通鍵Ｋｃで暗号化するのではなく、タイムスタンプ及びランダム値を付加して暗号化する。したがって、暗号化後の値は、同一のオブジェクト名であっても異なることになり、辞書攻撃を効果的に防止することができる。なお、本実施形態では、タイムスタンプ及びランダム値を付加したがタイムスタンプ及びランダム値の何れかのみを付加する構成であっても良い。なお、タイムスタンプを付与することで再生成攻撃を効果的に防ぐことができる。また、暗号化識別子"Ｂ"の生成においても、識別子"ＩＤ"にタイムスタンプ及び／又はランダム値を連結して暗号化を行う。したがって、暗号化識別子"Ｂ"もインタレスト・パケット毎に変化し、同一ユーザの挙動が漏洩することを防ぐことができる。
【００２８】
さらに、本実施形態では、信頼転送装置３においてインタレスト・パケットの復号が可能であるため、信頼転送装置３におけるキャッシュを利用することができ、かつ、重複するインタレスト・パケットの送信を防止することができる。
【００２９】
なお、図３においては、暗号化オブジェクト名"Ｃ"をオブジェクト名フィールドに設定し、ペイロードに暗号化識別子"Ｂ"及び認証情報"ＭＡＣ"を格納していた。しかしながら、暗号化オブジェクト名"Ｃ"、暗号化識別子"Ｂ"及び認証情報"ＭＡＣ"の総てをペイロードに格納する構成であって良い。また、暗号化オブジェクト名"Ｃ"、暗号化識別子"Ｂ"及び認証情報"ＭＡＣ"の総てをオブジェクト名フィールドに格納する構成であって良い。より一般的には、オブジェクト名フィールドには、代理装置４を示す情報が格納されていれば良く、暗号化オブジェクト名"Ｃ"、暗号化識別子"Ｂ"及び認証情報"ＭＡＣ"は、インタレスト・パケットの所定フィールドに格納する形態とすることができる。また、本実施形態では、２つの公開鍵Ｋ１ｐ及びＫ２ｐを使用したが１つの公開鍵Ｋ１ｐを使用する構成であっても良い。
【００３０】
図４は、本実施形態によるクライアント装置１の構成図である。保持部１１は、共通鍵Ｋｃ及び登録処理で受信した公開鍵Ｋ２ｐを保持する。処理部１２は、登録処理において共通鍵Ｋｃを生成して保持部１１に保持すると共に、共通鍵Ｋｃを暗号化して代理装置４に送信する。なお、保持部１１は１つのメモリデバイスであっても、複数のメモリデバイスであっても良い。さらに、処理部１２は、オブジェクトを取得する際、当該オブジェクトのオブジェクト名に、ランダム値及びタイムスタンプの少なくとも１つを付加した値を共通鍵Ｋｃで暗号化して暗号化オブジェクト名を生成し、暗号化オブジェクト名を含むインタレスト・パケットを、その宛先を代理装置４としてＣＣＮ１００に送信する。なお、インタフェース部１３は、ＣＣＮ１００との通信部である。
【００３１】
図５は、本実施形態による信頼転送装置３の構成図である。保持部３１は、キャッシュしたオブジェクト、ＣＳ、ＦＩＢ、ＰＩＴを保持する。さらに、保持部３１は、共通鍵Ｋｃ及び秘密鍵Ｋ１ｓ、Ｋ２ｓを保持する。なお、共通鍵Ｋｃは、そのハッシュ値である識別子と関連付けて記憶される。なお、保持部３１は１つのメモリデバイスであっても、複数のメモリデバイスであっても良い。処理部３２は、各パケットの転送処理を行う。また、オブジェクト名フィールドに自装置を信頼している代理装置４を示す値が含まれたインタレスト・パケットを受信すると、当該インタレスト・パケットに格納された暗号化オブジェクト名を共通鍵Ｋｃで復号することでオブジェクト名を取得する。そして、処理部３２は、オブジェクト名に対応するオブジェクトを保持部３１が保持していると、当該オブジェクトをクライアント装置１に向けて送信する。一方、オブジェクト名に対応するオブジェクトを保持部３１が保持していないと、オブジェクト名に対応するオブジェクトの取得待ちであるかをＰＩＴにより判定し、取得待ちであると、ＰＩＴを更新する。この場合、受信したインタレスト・パケットの転送は行わない。一方、オブジェクト名に対応するオブジェクトを保持部３１が保持しておらず、かつ、当該オブジェクトの取得待ちでない場合、処理部３２は、受信したインタレスト・パケットを代理装置４に向けて転送する。なお、インタフェース部３３は、他の装置との通信部である。
【００３２】
図６は、本実施形態による代理装置４の構成図である。保持部４１は、キャッシュしたオブジェクト、ＣＳ、ＦＩＢ、ＰＩＴを保持する。さらに、保持部４１は、共通鍵Ｋｃ並びに公開鍵Ｋ１ｐ、Ｋ２ｐ及び秘密鍵Ｋ１ｓ、Ｋ２ｓを保持する。なお、共通鍵Ｋｃは、そのハッシュ値である識別子と関連付けて記憶される。なお、保持部４１は１つのメモリデバイスであっても、複数のメモリデバイスであっても良い。処理部４２は、インタレスト・パケットを受信すると、当該インタレスト・パケットに格納された暗号化オブジェクト名を共通鍵Ｋｃで復号することでオブジェクト名を取得する。そして、処理部４２は、オブジェクト名に対応するオブジェクトを保持部４１が保持していると、当該オブジェクトをクライアント装置１に向けて送信する。一方、オブジェクト名に対応するオブジェクトを保持部４１が保持していないと、オブジェクト名に対応するオブジェクトの取得待ちであるかをＰＩＴにより判定し、取得待ちであると、ＰＩＴを更新する。一方、オブジェクト名に対応するオブジェクトを保持部４１が保持しておらず、かつ、当該オブジェクトの取得待ちでない場合、処理部４２は、当該オブジェクトを取得するインタレスト・パケットを生成してＣＣＮ１００に送信する。このインタレスト・パケットのオブジェクト名フィールドには、当該オブジェクトのオブジェクト名が平文で格納される。そして、処理部４２は、オブジェクトを受信すると、受信したオブジェクトをクライアント装置１に向けて送信する。さらに、処理部４２は、クライアント装置１から登録を要求するパケットを受信すると、公開鍵Ｋ２ｐをクライアント装置１に送信する。なお、インタフェース部４３は、他の装置との通信部である。
【００３３】
また、本発明によるクライアント装置１、信頼転送装置３及び代理装置４は、それぞれ、コンピュータを上記クライアント装置１、信頼転送装置３及び代理装置４として動作させるプログラムにより実現することができる。これらコンピュータプログラムは、コンピュータが読み取り可能な記憶媒体に記憶されて、又は、ネットワーク経由で配布が可能なものである。
【符号の説明】
【００３４】
４１：保持部、４２：処理部、４３：インタフェース部
【図１】
0006549518.tif 000002
【図２】
0006549518.tif 000003
【図３】
0006549518.tif 000004
【図４】
0006549518.tif 000005
【図５】
0006549518.tif 000006
【図６】
0006549518.tif 000007