(57)【要約】【課題】  より多くのビットをＣＧＡおよびＨＢＡ技術とともに利用することを可能にする方法および装置を提供すること。【解決手段】  本発明の複数のネットワーク層を介して暗号化データを通信する方法は、該暗号化データをノードで受信するステップと、該暗号化データを複数のピースに分割するステップと、データパケットの異なるネットワーク層に関連するフィールドに、該暗号化データの異なるピースをカプセル化するステップであって、それにより、１つのフィールドで通信するには大きすぎる暗号化データは、異なるネットワーク層に関連する複数のフィールドを介して通信することができる、ステップとを包含する。【特許請求の範囲】
【請求項１】
複数のネットワーク層を介して暗号化データを通信する方法であって、
該暗号化データをノードで受信するステップと、
該暗号化データを複数のピースに分割するステップと、
データパケットの異なるネットワーク層に関連するフィールドに、該暗号化データの異なるピースをカプセル化するステップであって、それにより、１つのフィールドで通信するには大きすぎる暗号化データは、異なるネットワーク層に関連する複数のフィールドを介して通信することができる、ステップと
を包含する、方法。
【請求項２】
前記暗号化データを受信するステップは、入力データのピースにおいて少なくとも１つの不可逆関数を実行して該暗号化データを生成するステップを含む、請求項１に記載の方法。
【請求項３】
前記入力データは、前記ノードに関連する公開鍵を含む、請求項２に記載の方法。
【請求項４】
前記入力データは、前記ノードに関連するスタティック識別子を含む、請求項２に記載の方法。
【請求項５】
前記データパケットのＩＰｖ６アドレスフィールドは、６４ビットのプレフィクス、および、それに続く前記不可逆関数の出力の最上位の６４ビットから構成され、該ＩＰｖ６アドレスのユニバーサル／ローカルビットおよび個人／グループビットは、ともに「０」に設定される、請求項２に記載の方法。
【請求項６】
前記データパケットのＳＩＰコールＩＤフィールドは、ローカルＩＤおよびホストアドレスから構成され、
該ローカルＩＤは、前記不可逆関数の出力の最下位の１２８ビットから構成され、
該ホストアドレスは、該ＩＰｖ６アドレスから構成される、請求項５に記載の方法。
【請求項７】
前記データパケットのＳＳＨ公開鍵フィンガープリントフィールドは、前記不可逆関数の出力の最下位の１２８ビットから構成される、請求項２に記載の方法。
【請求項８】
前記データパケットのＭＡＣアドレスフィールドは、前記不可逆関数の出力の最下位の６４ビットから構成される、請求項２に記載の方法。
【請求項９】
前記データパケットのＪＸＴＡピアＩＤフィールドは、前記不可逆関数の出力の最下位の１２８ビットから構成される、請求項２に記載の方法。
【請求項１０】
前記データパケットのＪＸＴＡグループＩＤフィールドは、前記不可逆関数の出力の最下位の１２８ビットから構成される、請求項２に記載の方法。
【請求項１１】
複数のネットワーク層を介して暗号化データを通信する装置であって、
該暗号化データをノードで受信するように構成される受信メカニズムと、
該暗号化データを複数のピースに分割するように構成される分割メカニズムと、
データパケットの異なるネットワーク層に関連するフィールドに、該暗号化データの異なるピースをカプセル化するように構成されるカプセル化メカニズムであって、それにより、１つのフィールドで通信するには大きすぎる暗号化データは、異なるネットワーク層に関連する複数のフィールドを介して通信することができる、メカニズムと
を備える、装置。
【請求項１２】
前記受信メカニズムは、入力データのピースにおいて少なくとも１つの不可逆関数を実行して該暗号化データを生成するように構成される、請求項１１に記載の装置。
【請求項１３】
前記入力データは、前記ノードに関連する公開鍵を含む、請求項１２に記載の装置。
【請求項１４】
前記入力データは、前記ノードに関連するスタティック識別子を含む、請求項１２に記載の装置。
【請求項１５】
前記データパケットのＩＰｖ６アドレスフィールドは、６４ビットのプレフィクス、および、それに続く前記不可逆関数の出力の最上位の６４ビットから構成され、該ＩＰｖ６アドレスのユニバーサル／ローカルビットおよび個人／グループビットは、ともに「０」に設定される、請求項１２に記載の装置。
【請求項１６】
前記データパケットのＳＩＰコールＩＤフィールドは、ローカルＩＤおよびホストアドレスから構成され、
該ローカルＩＤは、前記不可逆関数の出力の最下位の１２８ビットから構成され、
該ホストアドレスは、該ＩＰｖ６アドレスから構成される、請求項１５に記載の装置。
【請求項１７】
前記データパケットのＳＳＨ公開鍵フィンガープリントフィールドは、前記不可逆関数の出力の最下位の１２８ビットから構成される、請求項１２に記載の装置。
【請求項１８】
前記データパケットのＭＡＣアドレスフィールドは、前記不可逆関数の出力の最下位の６４ビットから構成される、請求項１２に記載の装置。
【請求項１９】
前記データパケットのＪＸＴＡピアＩＤフィールドは、前記不可逆関数の出力の最下位の１２８ビットから構成される、請求項１２に記載の装置。
【請求項２０】
前記データパケットのＪＸＴＡグループＩＤフィールドは、前記不可逆関数の出力の最下位の１２８ビットから構成される、請求項１２に記載の装置。
【請求項２１】
複数のネットワーク層を介して暗号化データを通信するコンピュータシステムであって、
中央演算装置と、
半導体メモリと、
該暗号化データをノードで受信するように構成される受信メカニズムと、
該暗号化データを複数のピースに分割するように構成される分割メカニズムと、
データパケットの異なるネットワーク層に関連するフィールドに、該暗号化データの異なるピースをカプセル化するように構成されるカプセル化メカニズムと
を備え、それにより、１つのフィールドで通信するには大きすぎる暗号化データは、異なるネットワーク層に関連する複数のフィールドを介して通信することができる、コンピュータシステム。
【請求項２２】
前記受信メカニズムは、入力データのピースにおいて少なくとも１つの不可逆関数を実行して該暗号化データを生成するように構成される、請求項２１に記載のコンピュータシステム。
【請求項２３】
前記入力データは、前記ノードに関連する公開鍵を含む、請求項２２に記載のコンピュータシステム。
【請求項２４】
前記入力データは、前記ノードに関連するスタティック識別子を含む、請求項２２に記載のコンピュータシステム。
【請求項２５】
前記データパケットのＩＰｖ６アドレスフィールドは、６４ビットのプレフィクス、および、それに続く前記不可逆関数の出力の最上位の６４ビットから構成され、該ＩＰｖ６アドレスのユニバーサル／ローカルビットおよび個人／グループビットは、ともに「０」に設定される、請求項２２に記載のコンピュータシステム。
【請求項２６】
前記データパケットのＳＩＰコールＩＤフィールドは、ローカルＩＤおよびホストアドレスから構成され、
該ローカルＩＤは、前記不可逆関数の出力の最下位の１２８ビットから構成され、
該ホストアドレスは、該ＩＰｖ６アドレスから構成される、請求項２５に記載のコンピュータシステム。
【請求項２７】
前記データパケットのＳＳＨ公開鍵フィンガープリントフィールドは、前記不可逆関数の出力の最下位の１２８ビットから構成される、請求項２２に記載のコンピュータシステム。
【請求項２８】
前記データパケットのＭＡＣアドレスフィールドは、前記不可逆関数の出力の最下位の６４ビットから構成される、請求項２２に記載のコンピュータシステム。
【請求項２９】
前記データパケットのＪＸＴＡピアＩＤフィールドは、前記不可逆関数の出力の最下位の１２８ビットから構成される、請求項２２に記載のコンピュータシステム。
【請求項３０】
前記データパケットのＪＸＴＡグループＩＤフィールドは、前記不可逆関数の出力の最下位の１２８ビットから構成される、請求項２２に記載のコンピュータシステム。
【請求項３１】
暗号化データを含むデータパケットを検証する方法であって、
該データパケットを受信するステップと、
該データパケット内の異なるネットワーク層に関連するフィールドから暗号化データのピースを抽出するステップと、
抽出された暗号化データの各ピースが、以前に取得された暗号化データのピースに対応する部分と整合することを検証するステップと
を包含する、方法。
【請求項３２】
前記以前に取得された暗号化データは、入力データのピースにおいて少なくとも１つの不可逆関数を実行して該暗号化データを生成するステップを含む、請求項３１に記載の方法。
【請求項３３】
暗号化データを含むデータパケットを検証する装置であって、
該データパケットを受信するように構成される受信メカニズムと、
該データパケット内の異なるネットワーク層に関連するフィールドから暗号化データのピースを抽出するように構成される抽出メカニズムと、
抽出された暗号化データの各ピースが、以前に取得された暗号化データのピースに対応する部分と整合することを検証するように構成される検証メカニズムと
を備える、装置。
【請求項３４】
前記以前に取得された暗号化データは、入力データのピースにおいて少なくとも１つの不可逆関数を実行して該暗号化データを生成することに関するプロセスを通して取得される、請求項３３に記載の装置。
【請求項３５】
暗号化データを含むデータパケットを検証するコンピュータシステムであって、
中央演算装置と、
半導体メモリと、
該データパケットを受信するように構成される受信メカニズムと、
該データパケット内の異なるネットワーク層に関連するフィールドから暗号化データのピースを抽出するように構成される抽出メカニズムと、
抽出された暗号化データの各ピースが、以前に取得された暗号化データのピースに対応する部分と整合することを検証するように構成される検証メカニズムと
を備える、コンピュータシステム。
【請求項３６】
前記以前に取得された暗号化データは、入力データのピースにおいて少なくとも１つの不可逆関数を実行して該暗号化データを生成することに関するプロセスを通して取得される、請求項３５に記載のコンピュータシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信プロトコルのセキュリティを高めるための技術に関する。より詳細には、本発明は、異なるネットワーク層間で暗号化情報をカプセル化することによってネットワークセキュリティを増大させる方法および装置に関する。
【背景技術】
【０００２】
インターネットの指数関数的な成長は、過去数年にわたってネットワーク化されたデバイスの増殖を導いた。ネットワーク化されたデバイスの数が非常に増加したことにより、３２ビット長のアドレスフォーマットに基づくインターネットプロトコルバージョン４（ＩＰｖ４）アドレス空間は、まもなく利用可能なアドレスを使い果たしてしまうことになる。この問題を解決するために、インターネットプロトコルバージョン６（ＩＰｖ６）が提案された。ＩＰｖ６は、１２８ビット長のアドレスフォーマットを規定し、この長さは、ネットワーク化されたデバイスを収容するのに十分な数のアドレスを提供すると信じられている。これらのネットワーク化されたデバイスは、携帯電話、パーソナルデータアシスタント（ＰＤＡ）および他のコンピューティングデバイスを含み得る。
【０００３】
残念なことに、ＩＰｖ６が何年も前に設計されたとき、今日用いられているワイヤレスネットワークの幅広い展開を予見することは困難であった。従って、ローカルリンクを管理するＩＰｖ６メカニズムは、物理的に保護された、本当に（ｉｎ  ｍｉｎｄ）信頼に値するリンクに合わせて設計された。今日、人々は、空港、ホテル等のワイヤレスＬＡＮ（ＷＬＡＮ）のようなパブリックワイヤレスネットワークでＩＰｖ６を利用することを計画している。このようなネットワークでは、実際のリンクはどうにか層２（データリンク層）認証、アクセス制御および暗号化により保護され得るが、リンクのノードのいくつかは、依然として信頼に足るものではない。さらに、アクセススティーリング、ＤｏＳ（Ｄｅｎｉａｌ−ｏｆ−Ｓｅｒｖｉｃｅ）アタックおよびトラフィックスヌーピングアタックのような様々なタイプのアタックを実行するために用いられ得る非認証ＷＬＡＮ基地局をセットアップすることは容易である。
【０００４】
ＩＰｖ６のこれらのセキュリティの問題に対処するために、ＣＧＡ（Ｃｒｙｐｔｏｇｒａｐｈｉｃａｌｌｙ  Ｇｅｎｅｒａｔｅｄ  Ａｄｄｒｅｓｓ：暗号化して生成されるアドレス）が利用され得る。本質的には、ＣＧＡにより、ノードは、短いがセキュアな公開鍵の表現を、ＩＰｖ６アドレスの一部分（例えば、公開鍵のセキュアなハッシュの一部分）として利用することができる。このＣＧＡメカニズムにより、実際に、ノードは、ノードが特定のアドレスを利用するための認証を有していることを証明することができる。この単純であるが強力な概念は、ＩＰｖ６ネットワークの枠を超えて広がるネットワークセキュリティに対して非常に広範囲の意味合いと用途とを有する。
【０００５】
ＨＢＡ（Ｈａｓｈ  Ｂａｓｅｄ  Ａｄｒｅｓｓ：ハッシュベースのアドレス）の概念は、同様の概念である。これは、さらに、公開鍵ではなくセキュアなハッシュ（例えば、ＳＨＡ−１）を利用し、このセキュアなハッシュ関数への入力は、スタティック識別子である。従って、ＨＢＡだけでは、その所有者がそのアドレス上で特定の動作を実行することが認証された唯一のエンティティであることを証明することができない。しかしながら、これらは、セキュアなハッシュ関数の不可逆性の特性を有する。従って、これらは、ＨＢＡが特別のタイプのアドレス、すなわち、特定の（おそらくパブリックな）パラメータからセキュアに導出されるアドレスであることを証明するために利用され得る。ＨＢＡ特性を有するエンティティとＨＢＡ特性を有しないエンティティとの間で安全にアドレスを区別するこの特性は、特定のタイプのアタックを防止することに対して、極めて役立つ。
【０００６】
ＣＧＡおよびＨＢＡの提案の両方が、ＩＰｖ６アドレスを導出する方法を定義する。しかしながら、上述の両方が、ＩＰｖ６アドレス（より詳細には、ＩＰｖ６アドレスのインターフェース識別子の部分）がハッシュ値のために利用可能な６２ビットだけを残すという制限による被害を受ける。ＣＧＡ／ＨＢＡスキームのセキュリティ特性を導出するためには、セキュアなハッシュの一意性という特性が維持されるように、十分なビットが必要とされる。セキュアなハッシュ関数ＳＨＡ−１は、１６０ビットを生成するが、ＩＰｖ６アドレス（および他のＣＧＡ／ＨＢＡ用途）の制限により、出力が切り捨てられ、１６０ビットの全ては利用され得ない。
【０００７】
しかしながら、１２８ビットおよびそれより少ないビット（約１００ビット）であってさえ、無茶な力によってセキュアなハッシュの衝突を見つけようと努力しているアタッカーに対する保護には十分過ぎるほど多いということが、一般的に確認されている。
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかしながら、ＣＧＡ／ＨＢＡの場合、人々は、６２ビットが十分であるかどうかをますます疑っている。
【０００９】
アドレスを生成する際の保護の増大と増大した作業負荷とをトレードオフすることによって、６２ビット制限内で機能させるために、いくつかの努力がなされてきた。これは、セキュアなハッシュ関数の出力からより多くのビットを維持することができる程度に、ほとんど実際的ではない。
【００１０】
従って、必要とされるのは、より多くのビットをＣＧＡおよびＨＢＡ技術とともに利用することを可能にする方法および装置である。
【課題を解決するための手段】
【００１１】
（要旨）
本発明のある実施形態は、複数のネットワーク層を介して暗号化データを通信するシステムを提供する。動作中、このシステムは、暗号化データを受信し、その暗号化データを複数のピースに分割する。このシステムは、データパケットの異なるネットワーク層に関連するフィールド内に暗号化データの異なるピースをカプセル化する。これにより、１つのフィールドで通信するには大きすぎる暗号化データアイテムは、異なるネットワーク層に関連する複数のフィールドを介して通信され得る。
【００１２】
この実施形態のさらなる変形では、暗号化データを受信することは、入力データにおいて不可逆関数を実行して暗号化データを生成することに関する。
【００１３】
さらなる変形では、入力データは、ノードに関連する公開鍵を含む。
【００１４】
さらなる変形では、入力データは、ノードに関連するスタティック識別子を含む。
【００１５】
さらなる変形では、データパケットのＩＰｖ６アドレスフィールドは、６４ビットのプレフィクス、および、それに続く不可逆関数の出力の最上位の６４ビットから構成される。
【００１６】
さらなる変形では、データパケットのＳＳＨ公開鍵フィンガープリントフィールドは、不可逆関数の出力の最下位の１２８ビットから構成される。
【００１７】
さらなる変形では、データパケットのＭＡＣアドレスフィールドは、不可逆関数の出力の最下位の６４ビットから構成される。
【００１８】
さらなる変形では、データパケットのＪＸＴＡピアＩＤフィールドは、不可逆関数の出力の最下位の６４ビットから構成される。
【００１９】
さらなる変形では、データパケットのＪＸＴＡグループＩＤフィールドは、不可逆関数の出力の最下位の１２８ビットから構成される。
【００２０】
さらなる変形では、データパケットのＳＩＰコールＩＤフィールドは、ローカルＩＤおよびホストアドレスから構成される。ここで、ローカルＩＤは、不可逆関数の出力の最下位の１２８ビットから構成され、ホストアドレスは、ＩＰｖ６アドレスから構成される。
【００２１】
本発明の１つの実施形態は、暗号化データを含むデータパケットを検証するシステムを提供する。データパケットを受信する際には、このシステムは、データパケット内の異なるネットワーク層に関連するフィールドから暗号化データのピースを抽出する。このシステムは、抽出された暗号化データの各ピースが、以前に取得された暗号化データのピースに対応する部分と整合することを検証する。
【００２２】
本発明の複数のネットワーク層を介して暗号化データを通信する方法は、該暗号化データをノードで受信するステップと、該暗号化データを複数のピースに分割するステップと、データパケットの異なるネットワーク層に関連するフィールドに、該暗号化データの異なるピースをカプセル化するステップであって、それにより、１つのフィールドで通信するには大きすぎる暗号化データは、異なるネットワーク層に関連する複数のフィールドを介して通信することができる、ステップとを包含し、それにより上記目的が達成される。
【００２３】
前記暗号化データを受信するステップは、入力データのピースにおいて少なくとも１つの不可逆関数を実行して該暗号化データを生成するステップを含んでもよい。
【００２４】
前記入力データは、前記ノードに関連する公開鍵を含んでもよい。
【００２５】
前記入力データは、前記ノードに関連するスタティック識別子を含んでもよい。
【００２６】
前記データパケットのＩＰｖ６アドレスフィールドは、６４ビットのプレフィクス、および、それに続く前記不可逆関数の出力の最上位の６４ビットから構成され、該ＩＰｖ６アドレスのユニバーサル／ローカルビットおよび個人／グループビットは、ともに「０」に設定されてもよい。
【００２７】
前記データパケットのＳＩＰコールＩＤフィールドは、ローカルＩＤおよびホストアドレスから構成され、該ローカルＩＤは、前記不可逆関数の出力の最下位の１２８ビットから構成され、該ホストアドレスは、該ＩＰｖ６アドレスから構成されてもよい。
【００２８】
前記データパケットのＳＳＨ公開鍵フィンガープリントフィールドは、前記不可逆関数の出力の最下位の１２８ビットから構成されてもよい。
【００２９】
前記データパケットのＭＡＣアドレスフィールドは、前記不可逆関数の出力の最下位の６４ビットから構成されてもよい。
【００３０】
前記データパケットのＪＸＴＡピアＩＤフィールドは、前記不可逆関数の出力の最下位の１２８ビットから構成されてもよい。
【００３１】
前記データパケットのＪＸＴＡグループＩＤフィールドは、前記不可逆関数の出力の最下位の１２８ビットから構成されてもよい。
【００３２】
本発明の複数のネットワーク層を介して暗号化データを通信する装置は、該暗号化データをノードで受信するように構成される受信メカニズムと、該暗号化データを複数のピースに分割するように構成される分割メカニズムと、データパケットの異なるネットワーク層に関連するフィールドに、該暗号化データの異なるピースをカプセル化するように構成されるカプセル化メカニズムであって、それにより、１つのフィールドで通信するには大きすぎる暗号化データは、異なるネットワーク層に関連する複数のフィールドを介して通信することができる、メカニズムとを備え、それにより上記目的が達成される。
【００３３】
前記受信メカニズムは、入力データのピースにおいて少なくとも１つの不可逆関数を実行して該暗号化データを生成するように構成されてもよい。
【００３４】
前記入力データは、前記ノードに関連する公開鍵を含んでもよい。
【００３５】
前記入力データは、前記ノードに関連するスタティック識別子を含んでもよい。
【００３６】
前記データパケットのＩＰｖ６アドレスフィールドは、６４ビットのプレフィクス、および、それに続く前記不可逆関数の出力の最上位の６４ビットから構成され、該ＩＰｖ６アドレスのユニバーサル／ローカルビットおよび個人／グループビットは、ともに「０」に設定されてもよい。
【００３７】
前記データパケットのＳＩＰコールＩＤフィールドは、ローカルＩＤおよびホストアドレスから構成され、該ローカルＩＤは、前記不可逆関数の出力の最下位の１２８ビットから構成され、該ホストアドレスは、該ＩＰｖ６アドレスから構成されてもよい。
【００３８】
前記データパケットのＳＳＨ公開鍵フィンガープリントフィールドは、前記不可逆関数の出力の最下位の１２８ビットから構成されてもよい。
【００３９】
前記データパケットのＭＡＣアドレスフィールドは、前記不可逆関数の出力の最下位の６４ビットから構成されてもよい。
【００４０】
前記データパケットのＪＸＴＡピアＩＤフィールドは、前記不可逆関数の出力の最下位の１２８ビットから構成されてもよい。
【００４１】
前記データパケットのＪＸＴＡグループＩＤフィールドは、前記不可逆関数の出力の最下位の１２８ビットから構成されてもよい。
【００４２】
本発明の複数のネットワーク層を介して暗号化データを通信するコンピュータシステムは、中央演算装置と、半導体メモリと、該暗号化データをノードで受信するように構成される受信メカニズムと、該暗号化データを複数のピースに分割するように構成される分割メカニズムと、データパケットの異なるネットワーク層に関連するフィールドに、該暗号化データの異なるピースをカプセル化するように構成されるカプセル化メカニズムとを備え、それにより、１つのフィールドで通信するには大きすぎる暗号化データは、異なるネットワーク層に関連する複数のフィールドを介して通信することができ、それにより上記目的が達成される。
【００４３】
前記受信メカニズムは、入力データのピースにおいて少なくとも１つの不可逆関数を実行して該暗号化データを生成するように構成されてもよい。
【００４４】
前記入力データは、前記ノードに関連する公開鍵を含んでもよい。
【００４５】
前記入力データは、前記ノードに関連するスタティック識別子を含んでもよい。
【００４６】
前記データパケットのＩＰｖ６アドレスフィールドは、６４ビットのプレフィクス、および、それに続く前記不可逆関数の出力の最上位の６４ビットから構成され、該ＩＰｖ６アドレスのユニバーサル／ローカルビットおよび個人／グループビットは、ともに「０」に設定されてもよい。
【００４７】
前記データパケットのＳＩＰコールＩＤフィールドは、ローカルＩＤおよびホストアドレスから構成され、該ローカルＩＤは、前記不可逆関数の出力の最下位の１２８ビットから構成され、該ホストアドレスは、該ＩＰｖ６アドレスから構成されてもよい。
【００４８】
前記データパケットのＳＳＨ公開鍵フィンガープリントフィールドは、前記不可逆関数の出力の最下位の１２８ビットから構成されてもよい。
【００４９】
前記データパケットのＭＡＣアドレスフィールドは、前記不可逆関数の出力の最下位の６４ビットから構成されてもよい。
【００５０】
前記データパケットのＪＸＴＡピアＩＤフィールドは、前記不可逆関数の出力の最下位の１２８ビットから構成されてもよい。
【００５１】
前記データパケットのＪＸＴＡグループＩＤフィールドは、前記不可逆関数の出力の最下位の１２８ビットから構成されてもよい。
【００５２】
本発明の暗号化データを含むデータパケットを検証する方法は、該データパケットを受信するステップと、該データパケット内の異なるネットワーク層に関連するフィールドから暗号化データのピースを抽出するステップと、抽出された暗号化データの各ピースが、以前に取得された暗号化データのピースに対応する部分と整合することを検証するステップとを包含し、それにより上記目的が達成される。
【００５３】
前記以前に取得された暗号化データは、入力データのピースにおいて少なくとも１つの不可逆関数を実行して該暗号化データを生成するステップを含んでもよい。
【００５４】
本発明の暗号化データを含むデータパケットを検証する装置は、該データパケットを受信するように構成される受信メカニズムと、該データパケット内の異なるネットワーク層に関連するフィールドから暗号化データのピースを抽出するように構成される抽出メカニズムと、抽出された暗号化データの各ピースが、以前に取得された暗号化データのピースに対応する部分と整合することを検証するように構成される検証メカニズムとを備え、それにより上記目的が達成される。
【００５５】
前記以前に取得された暗号化データは、入力データのピースにおいて少なくとも１つの不可逆関数を実行して該暗号化データを生成することに関するプロセスを通して取得されてもよい。
【００５６】
本発明の暗号化データを含むデータパケットを検証するコンピュータシステムは、中央演算装置と、半導体メモリと、該データパケットを受信するように構成される受信メカニズムと、該データパケット内の異なるネットワーク層に関連するフィールドから暗号化データのピースを抽出するように構成される抽出メカニズムと、抽出された暗号化データの各ピースが、以前に取得された暗号化データのピースに対応する部分と整合することを検証するように構成される検証メカニズムとを備え、それにより上記目的が達成される。
【００５７】
前記以前に取得された暗号化データは、入力データのピースにおいて少なくとも１つの不可逆関数を実行して該暗号化データを生成することに関するプロセスを通して取得されてもよい。
【発明の効果】
【００５８】
本発明により、より多くのビットをＣＧＡおよびＨＢＡ技術とともに利用することを可能にする方法および装置を提供することができる。
【発明を実施するための最良の形態】
【００５９】
（詳細な説明）
以下の記載は、当業者が本発明を作製および使用することができるように提供され、かつ、特定の用途およびその要件の文脈で提供される。開示された実施形態への種々の改変が、当業者に容易に明らかになり、かつ、本明細書中に定義された一般的原理は、本発明の主旨および範囲から逸脱することなく、他の実施形態および用途に適用され得る。従って、本発明は、示される実施形態に限定されることを意図せず、本明細書中に開示された原理および特徴と一致する極めて広い範囲と一致することを意図する。
【００６０】
（ＩＳＯ／ＯＳＩネットワーク層モデル）
図１は、インターナショナルスタンダードオーガナイゼーション（ＩＳＯ）により定義されたオープンシステムインターコネクト（ＯＳＩ）ネットワーク層参照モデルを示す。エンド−トゥ−エンドのデータ送達経路では、ソースノード１１０、行き先ノード１４０および、通常、多くの中間ルーティングノード（この例では、ルーター１２０および１３０）が存在する。理論的には、ノードの通信プロトコルスタックは、７つの層から構成される。７つの層は、物理層（１０１）、データリンク層（１０２）、ネットワーク層（１０３）、トランスポート層（１０４）、セッション層（１０５）、プレゼンテーション層（１０６）およびアプリケーション層（１０７）である。ネットワーク間で送信されるデータパケットは、通常、特定のアドレスまたは識別情報を搬送するＯＳＩ層の少なくとも１つに対応するフィールドを含む。
【００６１】
（暗号ベースの識別子）
図２は、本発明の実施形態による、暗号ベース識別子（ｃｒｙｐｔ−ｂａｓｅｄ  ｉｄｅｎｔｉｆｉｅｒ：ＣＢＩＤ）が公開鍵証明書のハッシュ関数を実行することによって導出され得る様子を示す。公開鍵証明書２０１は、セキュアなハッシュアルゴリズム（ＳＨＡ−１）２０２に送られる。ハッシュ関数の結果は、その後、１６０ビット長のＣＢＩＤ２０３として利用される。
【００６２】
本発明の１つの実施形態は、プロトコルスタックの複数の層の複数のフィールド間にＣＢＩＤ２０３を分散する。別の実施形態は、２つの層の２つのフィールドを利用するが、２つより多い層にＣＢＩＤをカプセル化することを妨げるものは何もない。
【００６３】
ＣＢＩＤの一部分をカプセル化するために利用したい特定の層の各アドレスまたは識別子は、以下のように初期化され得る。このアドレスまたは識別子は、ＣＢＩＤ２０３のビットの切り捨てられたシーケンスを含み、ここで、含まれるＣＢＩＤビットの実際の数は、特定の層の対応するアドレスまたは識別子（例えば、メディアアクセス（ＭＡＣ）アドレス、ＩＰアドレス等）で利用可能なビットの数によって決定される。このように、シングルＣＢＩＤのいくつかの部分は、ＯＳＩ参照モデルの異なる層に関連するフィールドに組み込まれ得る。
【００６４】
公開鍵証明書２０１のハッシュは、１６０ビットの出力によりＳＨＡ−１ハッシュ関数を通して取得され得、ＣＢＩＤ＝ＳＨＡ−１（ＰＫ）であり、ここで、ＰＫは、公開鍵証明書を表す。１６０より多いビットが、異なる層に関連するいくつかのフィールドにカプセル化されることが望ましい場合、これらのビットは、１６０ビットの複数のセットを生成するために複数回ハッシュ関数を実行することによって取得され得る。ここで、第１のハッシュ関数への入力は、公開鍵証明書であり、第２のハッシュ関数への入力は、１つの「１」のビットが連結した公開鍵証明書であり、第３のハッシュ関数への入力は、２つの「１」のビットが連結した公開鍵証明書であり、同様に続く。
【００６５】
上述のメカニズムは、「ＣＬＥ」（Ｃｒｙｐｔｏｇｒａｐｈｉｃ  Ｌａｙｅｒｉｎｇ  Ｅｎｆｏｒｃｅｍｅｎｔ：暗号化の層状の実施）を構成する。なぜなら、公開鍵の保持者は、異なるＯＳＩ層に対応する多くの検証可能な識別子および／またはアドレスを利用することが要求されるからである。ＣＢＩＤは、いくつかの垂直にスタックされた（しかし隣接する必要はない）層を互いに結合する。ＣＢＩＤの検証可能性という特性、および、ＣＢＩＤが複数の層間でカプセル化されることにより、送信側ノードの公開鍵のハッシュ結果に対してこれらの層のＣＢＩＤの一部分をチェックすることによって、複数の層の識別子を検証することができる。さらに、この検証可能性は、２つのノード間のセキュリティの関連性をブートストラップするために利用され得、それにより、Ｄｉｆｆｉｅ−Ｈｅｌｌｍａｎ交換の中間者（ｍａｎ−ｉｎ−ｔｈｅ−ｍｉｄｄｌｅ）のアタックからノードを保護する。
【００６６】
ＣＬＥの可能な用途は、異なるＯＳＩ層の所与のサブセットに合わせて変更される。このような例は、ＩＰｖ６アドレス（ネットワーク層）およびセキュアセル（ＳＳＨ）公開鍵フィンガープリント（アプリケーション層）、ＩＰｖ６アドレスおよびＭＡＣアドレス（データリンク層）、ＩＰｖ６アドレスおよびセッション開始プロトコル（ＳＩＰ）コールＩＤ（アプリケーション層）、ならびに、ＩＰｖ６アドレスおよびＪＸＴＡピアＩＤまたはグループＩＤ（アプリケーション層）を含む。
【００６７】
（ＣＬＥの例）
図３は、ＣＢＩＤからともに導出される暗号化ＩＰｖ６アドレスおよびＳＳＨ公開鍵フィンガープリントを利用することによって、ＣＬＥが実装され得る様子を示す。図３では、暗号化ＩＰｖ６アドレス３０１は、ＣＢＩＤ２０３の最上位の６４ビット、および、それに続く６４ビットネットワーク識別子から構成される。なお、ＩＰｖ６アドレスのユニバーサル／ローカルビット（「ｕ」ビット）および個人／グループビット（「ｇ」ビット）の両方が、これが暗号化されて生成されたアドレスであることを示すために「０」に設定される。これは、効果的に、ＣＢＩＤ２３の一部分をカプセル化するために、ＩＰｖ６アドレスの利用可能な６２ビットを残す。
【００６８】
ＣＬＥの他の部分、すなわちＳＳＨ公開鍵フィンガープリント３０２は、ＣＢＩＤ２０３の最下位の１２８ビットから構成される。
【００６９】
図４は、ＣＢＩＤからともに導出される暗号化ＩＰｖ６アドレスおよび暗号化ＭＡＣアドレスを利用することによって、ＣＬＥが実装され得る様子を示す。ここで、ＭＡＣアドレス４０３は、ＣＢＩＤ２０３の最下位の６４ビットから構成される。
【００７０】
図５は、ＣＢＩＤからともに導出される暗号化ＩＰｖ６および暗号化ＳＩＰコールＩＤを利用することによって、ＣＬＥが実装され得る様子を示す。ＳＩＰコールＩＤ５０３は、ローカルＩＤとホストアドレスを含む。ローカルＩＤは、ＣＢＩＤ２０３の最下位の６４ビットから構成され、ホストアドレスは、ＩＰｖ６アドレス３０１と同じである。
【００７１】
図６は、ＣＢＩＤからともに導出される暗号化ＩＰｖ６および暗号化ＪＸＴＡグループＩＤを利用することによって、ＣＬＥが実装され得る様子を示す。ここで、ＪＸＴＡグループＩＤ６０３は、ＣＢＩＤ２０３の最下位の１２８ビットから構成される。
【００７２】
図７は、ＣＢＩＤからともに導出される暗号化ＩＰｖ６アドレスおよび暗号化ＪＸＴＡピアＩＤを利用することによって、ＣＬＥが実装され得る様子を示す。ここで、ＪＸＴＡピアＩＤ７０３は、ＣＢＩＤ２０３の最下位１２８ビットから構成される。
【００７３】
図８は、ＣＢＩＤから暗号化ＩＰｖ６アドレスおよびＳＩＰコールＩＤを構築する方法を示すフローチャートである。このシステムは、１６０ビットのＣＢＩＤを取得するために、ステップ８０１でノードの公開鍵証明書においてＳＨＡ−１ハッシュ関数を実行することによって開始する。次に、システムは、ノードのＩＰｖ６アドレスの最下位の６４ビットをＣＢＩＤの最上位の６４ビット（「０」に設定された「ｕ」ビットおよび「ｇ」ビットを有する）で置換し、暗号化ＩＰｖ６アドレスを生成する（ステップ８０２）。このシステムは、ＣＢＩＤの最下位の１２８ビットをＳＩＰローカルＩＤとして利用し（ステップ８０３）、ステップ８０１で生成された暗号化ＩＰｖ６をＳＩＰホストアドレスとして利用する（ステップ８０４）。
【００７４】
図９は、ＣＢＩＤに対する暗号化ＩＰｖ６アドレスおよびＳＩＰコールＩＤを含むパケットを検証する方法を示すフローチャートである。このシステムは、１６０ビットのＣＢＩＤを取得するために、公開鍵証明書においてＳＨＡ−１ハッシュ関数を実行することによって開始する。ここで、公開鍵証明書は、送信側から以前に取得されている（ステップ９０１）。次に、このシステムは、受信パケットのＩＰｖ６アドレスの最下位の６４ビットがＣＢＩＤの最上位の６４ビットと整合することを検証する（ステップ９０２）。このシステムは、さらに、ＳＩＰローカルＩＤがＣＢＩＤの最下位の１２８ビットと整合することを確認する（ステップ９０３）。
【００７５】
本発明の実施形態の以下の説明は、例示および説明のためだけに提示された。これらは、包括的であることも、本発明を開示された形式に制限することも意図されない。従って、多くの改変および変形が当業者には明らかである。従って、上述の開示は、本発明を制限することを意図しない。本発明の範囲は、添付の請求項によって規定される。
【００７６】
（要約）
本発明の１つの実施形態は、複数のネットワーク層を介して暗号化データを通信するシステムを提供する。動作中、このシステムは、暗号化データを受信し、その暗号化データを複数のピースに分割する。このシステムは、データパケットの異なるネットワーク層に関連するフィールド内に暗号化データの異なるピースをカプセル化する。これにより、１つのフィールドで通信するには大きすぎる暗号化データアイテムは、異なるネットワーク層に関連する複数のフィールドを介して通信され得る。
【図面の簡単な説明】
【００７７】
【図１】図１は、ＩＳＯ（Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｓｔａｎｄａｒｄｓ  Ｏｒｇａｎｉｚａｔｉｏｎ：国際標準化機構）によって定義されたオープンシステムインターコネクト（ＯＳＩ）ネットワーク層参照モデルを示す。
【図２】図２は、本発明の実施形態による、暗号ベース識別子（ｃｒｙｐｔ−ｂａｓｅｄ  ｉｄｅｎｔｉｆｉｅｒ：ＣＢＩＤ）が公開鍵証明書のハッシュ関数を実行することによって導出され得る様子を示す。
【図３】図３は、本発明の実施形態による、ＣＢＩＤからともに導出される暗号化ＩＰｖ６アドレスおよびセキュアシェル（ＳＳＨ）公開鍵フィンガープリントを利用することによって、暗号化の層状の実施（ＣＬＥ）が実装され得る様子を示す。
【図４】図４は、本発明の実施形態による、ＣＢＩＤからともに導出される暗号化ＩＰｖ６アドレスおよび暗号化ＭＡＣアドレスを利用することによって、ＣＬＥが実装され得る様子を示す。
【図５】図５は、本発明の実施形態による、ＣＢＩＤからともに導出される暗号化ＩＰｖ６アドレスおよび暗号化セッション開始プロトコル（ＳＩＰ）コールＩＤを利用することによって、ＣＬＥが実装され得る様子を示す。
【図６】図６は、本発明の実施形態による、ＣＢＩＤからともに導出される暗号化ＩＰｖ６アドレスおよび暗号化ＪＸＴＡグループＩＤを利用することによって、ＣＬＥが実装され得る様子を示す。
【図７】図７は、本発明の実施形態による、ＣＢＩＤからともに導出される暗号化ＩＰｖ６アドレスおよび暗号化ＪＸＴＡピアＩＤを利用することによって、ＣＬＥが実装され得る様子を示す。
【図８】図８は、本発明の実施形態による、ＣＢＩＤから暗号化ＩＰｖ６アドレスおよびＳＩＰコールＩＤを構築する方法を示すフローチャートである。
【図９】図９は、本発明の実施形態による、ＣＢＩＤに対する暗号化ＩＰｖ６アドレスおよびＳＩＰコールＩＤを含むパケットを検証する方法を示すフローチャートである。
【符号の説明】
【００７８】
２０１  公開鍵証明書
２０２  ＳＨＡ−１
２０３  ＣＢＩＤ
３０１  ＩＰｖ６アドレス
３０２  ＳＳＨ公開鍵のフィンガープリント
４０３  ＭＡＣアドレス
５０３  ＳＩＰコールＩＤ
６０３  ＪＸＴＡグループＩＤ
７０３  ＪＸＴＡピアＩＤ
【図１】
2005110269.tif 000002
【図２】
2005110269.tif 000003
【図３】
2005110269.tif 000004
【図４】
2005110269.tif 000005
【図５】
2005110269.tif 000006
【図６】
2005110269.tif 000007
【図７】
2005110269.tif 000008
【図８】
2005110269.tif 000009
【図９】
2005110269.tif 000010