(57)【要約】【課題】  セキュアなエンド・ツー・エンド通信パスにおける暗号化データの検査のために、セキュリティ・アソシエーション（「ＳＡ」）情報を通信ネットワーク・セキュリティ実施ポイント（「ＳＥＰ」）に選択的にロードするための、方法、ネットワーク要素、およびコンピュータ・ストレージ・プログラム製品を提供する。【解決手段】  少なくとも１つの暗号化データ・パケットが受信される。少なくとも１つの暗号化データ・パケットを復号するためのＳＡ情報がＳＥＰにローカルに存在しない旨が決定される。少なくとも１つの暗号化データ・パケットに関連付けられたＳＡ情報に関する要求が、通信ネットワーク・キー・サーバに送信される。少なくとも１つの暗号化データ・パケットに関連付けられたＳＡ情報が、通信ネットワーク・キー・サーバから受信される。【選択図】  図８
2011508550.tif 000002
【特許請求の範囲】
【請求項１】
セキュアなエンド・ツー・エンド通信パスにおける暗号化データの検査のために、セキュリティ・アソシエーション（「ＳＡ」）情報を通信ネットワーク・セキュリティ実施ポイント（「ＳＥＰ」）に選択的にロードするための方法であって、
少なくとも１つの暗号化データ・パケットを受信するステップと、
前記少なくとも１つの暗号化データ・パケットを復号するためのＳＡ情報が前記ＳＥＰにローカルに存在しない旨を決定するステップと、
前記少なくとも１つの暗号化データ・パケットに関連付けられたＳＡ情報に関する要求を通信ネットワーク・キー・サーバに送信するステップと、
前記少なくとも１つの暗号化データ・パケットに関連付けられた前記ＳＡ情報を前記通信ネットワーク・キー・サーバから受信するステップと、
を含む、ＳＥＰを伴う方法。
【請求項２】
前記ＳＡ情報がローカルに存在しないことに応答して、前記少なくとも１つの暗号化データ・パケットをドロップするステップと、
前記ＳＡ情報がローカルに存在しないことに応答して、前記少なくとも１つの暗号化データ・パケットを復号せずに、前記少なくとも１つの暗号化データ・パケットを前記ＳＥＰからその宛先に転送するステップと、
のうちの、少なくとも１つをさらに含む、請求項１に記載の方法。
【請求項３】
前記ＳＥＰを使用して、前記通信ネットワーク・キー・サーバから受信した前記ＳＡ情報に関連付けられた後続の暗号化データ・パケットを復号するステップをさらに含む、請求項１または２に記載の方法。
【請求項４】
前記復号に応答して、前記ＳＡ情報に関連付けられ、復号された、前記後続の暗号化データ・パケット上でセキュリティ機能を実行するステップをさらに含む、請求項３に記載の方法。
【請求項５】
前記キー・サーバから受信した前記ＳＡ情報が、少なくとも、ＳＡに関連付けられたセッション・キー・データを含む、前記請求項のいずれか一項に記載の方法。
【請求項６】
前記キー・サーバとの持続セキュア・セッションを確立するステップをさらに含む、前記請求項のいずれか一項に記載の方法。
【請求項７】
前記キー・サーバに送信される前記要求が、前記少なくとも１つの暗号化データ・パケットに関連付けられたＳＡに関連付けられた、少なくともｉＣｏｏｋｉｅ値およびｒＣｏｏｋｉｅ値を含む、前記請求項のいずれか一項に記載の方法。
【請求項８】
セキュアなエンド・ツー・エンド通信パスにおける暗号化データの検査のために、セキュリティ・アソシエーション（「ＳＡ」）情報をセキュリティ実施ポイント（「ＳＥＰ」）に選択的にロードするための方法であって、
第２のエンドポイントを備えたエンド・ツー・エンドのセキュア通信パスに関する前記ＳＡを使用して、第１のエンドポイントからＳＡに関連付けられたＳＡ情報を受信するステップと、
前記ＳＡ情報をメモリに格納するステップと、
少なくとも１つのＳＥＰが前記ＳＡ内に権利を登録した旨を決定するステップと、
前記ＳＡ情報を前記少なくとも１つのＳＥＰに送信するステップと、
を含む、キー・サーバでエンドポイント間にある１つまたは複数のエンド・ツー・エンドのセキュア通信パスに関するセキュリティ・アソシエーション（「ＳＡ」）を保持する方法。
【請求項９】
前記第１のエンドポイントから受信されるかまたは前記少なくとも１つのＳＥＰに送信される前記ＳＡ情報が、前記ＳＡに関連付けられたセッション・キー・データを含む、請求項８に記載の方法。
【請求項１０】
前記少なくとも１つのＳＥＰとの持続セキュア・セッションを確立するステップと、
前記ＳＡ内に権利を登録するための要求を前記少なくとも１つのＳＥＰから受信するステップと、
前記少なくとも１つのＳＥＰを前記ＳＡに関してメモリに格納された前記ＳＡ情報に関連付けるステップと、
をさらに含む、請求項８または９に記載の方法。
【請求項１１】
メモリと、
前記メモリに通信的に結合されたプロセッサと、
前記メモリおよび前記プロセッサに通信的に結合されたデータ・トラフィック・マネージャと、
を備える、セキュアなエンド・ツー・エンド通信パスにおいて暗号化データの検査が実行可能なネットワーク装置であって、前記データ・トラフィック・マネージャが、
少なくとも１つの暗号化データ・パケットを受信すること、
前記少なくとも１つの暗号化データ・パケットを復号するためのセキュリティ・アソシエーション（「ＳＡ」）情報がローカルに存在しない旨を決定すること、
前記少なくとも１つの暗号化データ・パケットに関連付けられたＳＡ情報に関する要求を通信ネットワーク・キー・サーバに送信すること、および、
前記少なくとも１つの暗号化データ・パケットに関連付けられた前記ＳＡ情報を前記通信ネットワーク・キー・サーバから受信すること、
を実行するように適合された、ネットワーク装置。
【請求項１２】
さらに前記データ・トラフィック・マネージャが、
前記通信ネットワーク・キー・サーバから受信した前記ＳＡ情報に関連付けられた後続の暗号化データ・パケットを復号すること、および、
前記復号に応答して、前記ＳＡ情報に関連付けられ、復号された、前記後続の暗号化データ・パケット上でセキュリティ機能を実行すること、
を、実行するように適合された、請求項１１に記載のネットワーク装置。
【請求項１３】
前記通信ネットワーク・キー・サーバに送信される前記要求が、前記少なくとも１つの暗号化データ・パケットに関連付けられたＳＡに関連付けられた、少なくともｉＣｏｏｋｉｅ値およびｒＣｏｏｋｉｅ値を含む、請求項１１または１２に記載のネットワーク装置。
【請求項１４】
さらに前記データ・トラフィック・マネージャが、
前記ＳＡ情報がローカルに存在しない旨の決定に応答して、前記少なくとも１つの暗号化データ・パケットをドロップすること、および、
前記ＳＡ情報がローカルに存在しない旨の決定に応答して、前記少なくとも１つの暗号化データ・パケットを復号せずに、前記少なくとも１つの暗号化データ・パケットをその宛先に転送すること、
を、実行するように適合された、請求項１１から１３のいずれか一項に記載のネットワーク装置。
【請求項１５】
コンピュータ・システムにロードされ、そこで実行された場合、前記請求項１から１０のいずれかに従った方法のすべてのステップを前記コンピュータ・システムに実行させるためのコンピュータ・プログラム・コードを備える、コンピュータ・プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般に、コンテンツ・ネットワーク・セキュリティの分野に関し、より具体的に言えば、通信パスにおける暗号化データのセキュリティ実施ポイント（security enforcement point）処理に関する。
【背景技術】
【０００２】
グローバルにアクセス可能なコンピュータ・ネットワークに参加している情報技術者にとって、インターネット・セキュリティはますます関心の的となりつつある。特に、ブロードバンド・インターネット・アクセスの可用性および値ごろ感により、たとえ小規模企業内であっても、多くのコンピュータおよび小規模コンピュータ・ネットワークがインターネットへの継続的なアクセスを享受している。にもかかわらず、継続的で高速なアクセスに、コストがかからない訳ではない。具体的に言えば、これまではインターネットのセキュリティ・リスクから切り離されていたそれらのコンピュータおよびコンピュータ・ネットワークが、今や、悪意あるインターネット不正行為者の主要なターゲットとなっている。
【０００３】
グローバル・インターネットにさらされているコンピューティング・デバイスの脆弱性に対処するために、情報技術者等は、セキュア通信を介してインターネット内のデータに真のエンド・ツー・エンド・セキュリティを提供しようとしている。当分野で「ＩＰｓｅｃ」として知られているインターネット・セキュリティ・プロトコルは、インターネットを介して使用するためのセキュア通信の一般的な形を表す。ＩＰｓｅｃでは、インターネット内での通信パスを介したソース・ノードと宛先ノードとの間の通信を、セキュリティ・アソシエーション（「ＳＡ」）に従って管理することができる。ＳＡは、ＩＰｓｅｃ処理を通信に適用する方法を定義する。ＩＰｓｅｃは、ＲＦＣの中でもとりわけＲＦＣ４３０１に取って代わられたＲｅｑｕｅｓｔ  ｆｏｒ  Ｃｏｍｍｅｎｔ（ＲＦＣ）２４０１に定義されている。
【０００４】
２つのＩＰｓｅｃエンドポイント間で定義されたセキュア通信パスは、しばしば、ファイアウォールなどの１つまたは複数のセキュリティ実施ポイントを組み込んでいる。セキュリティ実施ポイントは、しばしばＩＰｓｅｃセキュア通信パスの中に配置され、ＩＰｓｅｃ  ＳＡ処理を実行しない。この状況では、セキュア通信パス内に配置されたセキュリティ実施ポイントには、トラバースＩＰｓｅｃ  ＳＡ内の暗号化データを検査する方法がないことになる。したがって、ほとんどのセキュリティ機能が、暗号化されていないクリアなテキスト・データへのアクセスを必要とするため、セキュアＩＰｓｅｃ通信パス内のセキュリティ実施ポイントのセキュリティ機能は動作不能となる。現行のシステムは、一般に、セキュリティ実施ポイントに、いかなる暗号化アルゴリズムまたはセッション・キー情報も提供しないため、結果として、セキュリティ実施ポイントはそれらの機能を正しく実行することができない。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
したがって、前述のような従来技術に伴う諸問題を克服する必要がある。
【課題を解決するための手段】
【０００６】
したがって本発明は、第１の態様において、セキュアなエンド・ツー・エンド通信パスにおける暗号化データの検査のために、セキュリティ・アソシエーション（「ＳＡ」）情報を通信ネットワーク・セキュリティ実施ポイント（「ＳＥＰ」）に選択的にロードするための方法を提供し、ＳＥＰを伴うこの方法は、少なくとも１つの暗号化データ・パケットを受信すること、少なくとも１つの暗号化データ・パケットを復号するためのＳＡ情報がＳＥＰにローカルに存在しない旨を決定すること、少なくとも１つの暗号化データ・パケットに関連付けられたＳＡ情報に関する要求を通信ネットワーク・キー・サーバに送信すること、および、少なくとも１つの暗号化データ・パケットに関連付けられたＳＡ情報を通信ネットワーク・キー・サーバから受信することを含む。
【０００７】
さらにこの方法は、ＳＡ情報がローカルに存在しないことに応答して、少なくとも１つの暗号化データ・パケットをドロップすること、および、ＳＡ情報がローカルに存在しないことに応答して、少なくとも１つの暗号化データ・パケットを復号せずに、少なくとも１つの暗号化データ・パケットをＳＥＰからその宛先に転送することのうちの、少なくとも１つを含むことができる。
【０００８】
さらにこの方法は、ＳＥＰを使用して、通信ネットワーク・キー・サーバから受信したＳＡ情報に関連付けられた後続の暗号化データ・パケットを復号することを、含むことができる。
【０００９】
さらにこの方法は、復号に応答して、ＳＡ情報に関連付けられ、復号された、後続の暗号化データ・パケット上でセキュリティ機能を実行することを含むことができる。
【００１０】
好ましくは、キー・サーバから受信したＳＡ情報は、少なくとも、ＳＡに関連付けられたセッション・キー・データを含む。
【００１１】
さらにこの方法は、キー・サーバとの持続セキュア・セッションを確立することを含むことができる。
【００１２】
好ましくは、キー・サーバに送信される要求は、少なくとも１つの暗号化データ・パケットに関連付けられたＳＡに関連付けられた、少なくともｉＣｏｏｋｉｅ値およびｒＣｏｏｋｉｅ値を含む。
【００１３】
第２の態様では、セキュアなエンド・ツー・エンド通信パスにおける暗号化データの検査のために、セキュリティ・アソシエーション（「ＳＡ」）情報をセキュリティ実施ポイント（「ＳＥＰ」）に選択的にロードするための方法が提供され、キー・サーバでエンドポイント間にある１つまたは複数のエンド・ツー・エンドのセキュア通信パスに関するセキュリティ・アソシエーション（「ＳＡ」）を保持するこの方法は、第２のエンドポイントを備えたエンド・ツー・エンドのセキュア通信パスに関するＳＡを使用して、第１のエンドポイントからＳＡに関連付けられたＳＡ情報を受信すること、ＳＡ情報をメモリに格納すること、少なくとも１つのＳＥＰがＳＡ内に権利（interest）を登録した旨を決定すること、および、ＳＡ情報を少なくとも１つのＳＥＰに送信することを含む。
【００１４】
好ましくは、第１のエンドポイントから受信されるＳＡ情報は、ＳＡに関連付けられたセッション・キー・データを含む。
【００１５】
好ましくは、少なくとも１つのＳＥＰに送信されるＳＡ情報は、ＳＡに関連付けられたセッション・キー・データを含む。
【００１６】
さらにこの方法は、少なくとも１つのＳＥＰとの持続セキュア・セッションを確立することを含む。
【００１７】
さらにこの方法は、ＳＡ内に権利を登録するための要求を少なくとも１つのＳＥＰから受信すること、および、少なくとも１つのＳＥＰをＳＡに関してメモリに格納されたＳＡ情報に関連付けることを、含むことができる。
【００１８】
第３の態様では、セキュアなエンド・ツー・エンド通信パスにおいて暗号化データの検査が実行可能な装置、好ましくはネットワーク要素が提供され、ネットワーク要素は、メモリと、メモリに通信的に結合されたプロセッサと、メモリおよびプロセッサに通信的に結合されたデータ・トラフィック・マネージャとを備え、データ・トラフィック・マネージャは、少なくとも１つの暗号化データ・パケットを受信すること、少なくとも１つの暗号化データ・パケットを復号するためのセキュリティ・アソシエーション（「ＳＡ」）情報がローカルに存在しない旨を決定すること、少なくとも１つの暗号化データ・パケットに関連付けられたＳＡ情報に関する要求を通信ネットワーク・キー・サーバに送信すること、および、少なくとも１つの暗号化データ・パケットに関連付けられたＳＡ情報を通信ネットワーク・キー・サーバから受信することを、実行するように適合される。
【００１９】
好ましくは、さらにデータ・トラフィック・マネージャは、通信ネットワーク・キー・サーバから受信したＳＡ情報に関連付けられた後続の暗号化データ・パケットを復号すること、および、復号に応答して、ＳＡ情報に関連付けられ、復号された、後続の暗号化データ・パケット上でセキュリティ機能を実行することを、実行するように適合される。
【００２０】
好ましくは、通信ネットワーク・キー・サーバに送信される要求は、少なくとも１つの暗号化データ・パケットに関連付けられたＳＡに関連付けられた、少なくともｉＣｏｏｋｉｅ値およびｒＣｏｏｋｉｅ値を含む。
【００２１】
好ましくは、さらにデータ・トラフィック・マネージャは、ＳＡ情報がローカルに存在しない旨の決定に応答して、少なくとも１つの暗号化データ・パケットをドロップすること、および、ＳＡ情報がローカルに存在しない旨の決定に応答して、少なくとも１つの暗号化データ・パケットを復号せずに、少なくとも１つの暗号化データ・パケットをその宛先に転送することを、実行するように適合される。
【００２２】
第４の態様では、コンピュータ・システムにロードされ、そこで実行された場合、第１または第２の態様に従って方法のすべてのステップを当該コンピュータ・システムに実行させるためのコンピュータ・プログラム・コードを備える、コンピュータ・プログラムが提供される。
【００２３】
第４の態様のコンピュータ・プログラムは、セキュアなエンド・ツー・エンド通信パスにおける暗号化データの検査のために、セキュリティ・アソシエーション（「ＳＡ」）情報を通信ネットワーク・セキュリティ実施ポイント（「ＳＥＰ」）に選択的にロードするためのネットワーク要素に関する命令を含む、コンピュータ・ストレージ・プログラム製品の形で提供可能であり、コンピュータ・ストレージ・プログラム製品は、少なくとも１つの暗号化データ・パケットを受信するため、少なくとも１つの暗号化データ・パケットを復号するためのＳＡ情報がローカルに存在しない旨を決定するため、少なくとも１つの暗号化データ・パケットに関連付けられたＳＡ情報に関する要求を通信ネットワーク・キー・サーバに送信するため、および、少なくとも１つの暗号化データ・パケットに関連付けられたＳＡ情報を通信ネットワーク・キー・サーバから受信するための、命令を含む。
【００２４】
さらにコンピュータ・ストレージ・プログラム製品は、通信ネットワーク・キー・サーバから受信したＳＡ情報に関連付けられた後続の暗号化データ・パケットを復号するため、および、復号に応答して、ＳＡ情報に関連付けられ、復号された、後続の暗号化データ・パケット上でセキュリティ機能を実行するための命令を、含むことができる。
【００２５】
好ましくは、キー・サーバに送信される要求は、少なくとも１つの暗号化データ・パケットに関連付けられたＳＡに関連付けられた、少なくともｉＣｏｏｋｉｅ値およびｒＣｏｏｋｉｅ値を含む。
【００２６】
さらにコンピュータ・ストレージ・プログラム製品は、ＳＡ情報がローカルに存在しないことに応答して、少なくとも１つの暗号化データ・パケットをドロップするため、および、ＳＡ情報がローカルに存在しないことに応答して、少なくとも１つの暗号化データ・パケットを復号せずに、少なくとも１つの暗号化データ・パケットをその宛先に転送するための命令を、含むことができる。
【００２７】
一実施形態では、セキュアなエンド・ツー・エンド通信パスにおける暗号化データの検査のために、セキュリティ・アソシエーション（「ＳＡ」）情報を通信ネットワーク・セキュリティ実施ポイント（「ＳＥＰ」）に選択的にロードするための方法が提供される。この方法は、少なくとも１つの暗号化データ・パケットを受信することを含む。この方法は、少なくとも１つの暗号化データ・パケットを復号するためのＳＡ情報がＳＥＰにローカルに存在しない旨を決定することをさらに含む。少なくとも１つの暗号化データ・パケットに関連付けられたＳＡ情報に関する要求が、通信ネットワーク・キー・サーバに送信される。少なくとも１つの暗号化データ・パケットに関連付けられたＳＡ情報が通信ネットワーク・キー・サーバから受信される。
【００２８】
他の実施形態では、セキュアなエンド・ツー・エンド通信パスにおける暗号化データの検査のために、セキュリティ・アソシエーション（「ＳＡ」）情報をセキュリティ実施ポイント（「ＳＥＰ」）に選択的にロードするための他の方法が提供される。この方法は、エンドポイント間にある１つまたは複数のエンド・ツー・エンドのセキュア通信パスに関するセキュリティ・アソシエーション（「ＳＡ」）を保持しているキー・サーバを含む。この方法は、第２のエンドポイントを備えたエンド・ツー・エンドのセキュア通信パスに関するＳＡを使用して、第１のエンドポイントからＳＡに関連付けられたＳＡ情報を受信することをさらに含む。ＳＡ情報はメモリに格納される。少なくとも１つのＳＥＰがＳＡ内に権利を登録した旨を決定することをさらに含む。ＳＡ情報は少なくとも１つのＳＥＰに送信される。
【００２９】
さらに他の実施形態では、セキュアなエンド・ツー・エンド通信パスにおいて暗号化データを検査するためのネットワーク要素が開示される。ネットワーク要素は、メモリと、メモリに通信的に結合されたプロセッサとを含む。ネットワーク要素は、メモリおよびプロセッサに通信的に結合されたデータ・トラフィック・マネージャをさらに含む。データ・トラフィック・マネージャは、少なくとも１つの暗号化データ・パケットを受信するように適合される。さらにデータ・トラフィック・マネージャは、少なくとも１つの暗号化データ・パケットを復号するためのＳＡ情報がＳＥＰにローカルに存在しない旨を決定するように適合される。少なくとも１つの暗号化データ・パケットに関連付けられたＳＡ情報に関する要求は、通信ネットワーク・キー・サーバに送信される。少なくとも１つの暗号化データ・パケットに関連付けられたＳＡ情報は、ＳＡに関する通信ネットワーク・キー・サーバから受信される。
【００３０】
他の実施形態では、セキュアなエンド・ツー・エンド通信パスにおける暗号化データの検査のために、セキュリティ・アソシエーション（「ＳＡ」）情報を通信ネットワーク・セキュリティ実施ポイント（「ＳＥＰ」）に選択的にロードするための、コンピュータ・ストレージ・プログラム製品が提供される。コンピュータ・ストレージ・プログラム製品は、少なくとも１つの暗号化データ・パケットを受信するための命令を含む。コンピュータ・ストレージ・プログラム製品は、少なくとも１つの暗号化データ・パケットを復号するためのＳＡ情報がローカルに存在しない旨を決定するための命令をさらに含む。少なくとも１つの暗号化データ・パケットに関連付けられたＳＡ情報に関する要求は、通信ネットワーク・キー・サーバに送信される。少なくとも１つの暗号化データ・パケットに関連付けられたＳＡ情報は、通信ネットワーク・キー・サーバから受信される。
【００３１】
本発明の様々な実施形態の１つの利点は、セキュリティ実施ポイントが、セキュアなエンド・ツー・エンド通信パスにおけるトラバース暗号化データを検査できることである。言い換えれば、ＳＥＰは、実施ポイントを通過しているトラフィックを復号および検査することができるため、結果として、ＩＰパケット・フィルタリング、侵入検出、ロード・バランシング、およびサービス品質（「ＱｏＳ」）設定などの（ただし、これらに限定されない）セキュリティ・サービスを、クリア・テキスト（復号）パケット・ペイロードに適用することができる。たとえば、ＩＰｓｅｃエンドポイント間で定義されたようなセキュア通信パス内に配置されたセキュリティ実施ポイント（「ＳＥＰ」）は、キー・サーバを備えるセキュアな暗号化セッションを確立することができる。
【００３２】
セキュアな暗号化セッションが確立されると、ＳＥＰがＩＰｓｅｃのカプセル化解除を実行する必要のあるＳＡ情報の一部を、ＳＥＰにセキュアに提供することができる。次にセキュリティ実施ポイントは、たとえＩＰｓｅｃエンドポイント間に確立されたセキュア通信パスの中にセキュリティ実施が依然として存在する場合であっても、セキュリティ実施ポイントによって提供された１つまたは複数のセキュリティ機能を実行するように、対応するＩＰｓｅｃエンドポイントから発信されたトラバース・データをクリア・テキストに復号するために、受診されたＩＰｓｅｃ  ＳＡをインストールすることができる。他の利点は、事前に構成されたネットワークのトポグラフィ知識が不要であること、および、ＳＡ分布がＳＡまたはＳＡファミリ内に明示的な権利を表したＳＥＰにのみ限定されることである。
【００３３】
次に、本発明の好ましい実施形態について、添付の図面を参照しながら単なる例として説明する。
【図面の簡単な説明】
【００３４】
【図１】本発明の一実施形態に従った、ネットワーキング環境の一例を示すブロック図である。
【図２】本発明の一実施形態に従った、セキュアなエンド・ツー・エンド通信パスにおける暗号化データの検査のために、ＳＡ情報をＳＥＰに選択的にロードするために構成されたネットワーク・データ処理システムの異なる例を示すブロック図である。
【図３】本発明の一実施形態に従った、セキュアなエンド・ツー・エンド通信パスにおける暗号化データの検査のために、ＳＡ情報をＳＥＰに選択的にロードするために構成されたネットワーク・データ処理システムの異なる例を示すブロック図である。
【図４】本発明の一実施形態に従った、セキュアなエンド・ツー・エンド通信パスにおける暗号化データの検査のために、ＳＡ情報をＳＥＰに選択的にロードするために構成されたネットワーク・データ処理システムの異なる例を示すブロック図である。
【図５】本発明の一実施形態に従った、セキュアなエンド・ツー・エンド通信パスにおける暗号化データの検査のために、ＳＡ情報をＳＥＰに選択的にロードするために構成されたネットワーク・データ処理システムの異なる例を示すブロック図である。
【図６】本発明の一実施形態に従った、ＳＡ情報をキー・サーバに格納するためのＳＡ記録フォーマットの一例を示す図である。
【図７】本発明の一実施形態に従った、情報処理システムの詳細図を示すブロック図である。
【図８】本発明の一実施形態に従った、セキュアなエンド・ツー・エンド通信パスにおける暗号化データのセキュリティ実施ポイント検査のための、全体プロセスを示す動作流れ図である。
【図９】本発明の一実施形態に従った、暗号化ＩＰｓｅｃパケットを復号するために、ＳＡ情報をＳＥＰに選択的にロードするための様々なプロセスを示す動作流れ図である。
【図１０】本発明の一実施形態に従った、暗号化ＩＰｓｅｃパケットを復号するために、ＳＡ情報をＳＥＰに選択的にロードするための様々なプロセスを示す動作流れ図である。
【図１１】本発明の一実施形態に従った、暗号化ＩＰｓｅｃパケットを復号するために、ＳＡ情報をＳＥＰに選択的にロードするための様々なプロセスを示す動作流れ図である。
【発明を実施するための形態】
【００３５】
本明細書で使用される「ａ」および「ａｎ」という用語は、１つまたはそれ以上として定義される。本明細書で使用される「複数」という用語は、２つまたはそれ以上として定義される。本明細書で使用される「他の」という用語は、少なくとも２つ目またはそれ以上として定義される。本明細書で使用される「含む」あるいは「有する」またはその両方の用語は、「備える」（すなわちオープン言語）として定義される。本明細書で使用される「結合された」という用語は、必ずしも直接ではなく、また必ずしも機械的にではないが、「接続された」として定義される。本明細書で使用される「プログラム」、「ソフトウェア・アプリケーション」、および他の同様の用語は、コンピュータ・システム上で実行するように設計された一連の命令として定義される。プログラム、コンピュータ・プログラム、またはソフトウェア・アプリケーションは、サブルーチン、関数、手順、オブジェクト方法、オブジェクト実装、実行可能アプリケーション、アプレット、サーブレット、ソース・コード、オブジェクト・コード、共有ライブラリ／動的ロード・ライブラリ、あるいは、コンピュータ・システム上で実行するように設計された他の一連の命令、またはそれらすべてを含むことができる。
【００３６】
ネットワーク環境の例
図１は、セキュアなエンド・ツー・エンド通信パスにおける暗号化データのセキュリティ実施ポイント検査のために構成された、ネットワーク・データ処理システム１００の一例を示すブロック図である。セキュアなエンド・ツー・エンド通信パスを確立するために使用されるプロトコルの１つが、前述のようなＩＰｓｅｃプロトコルである。しかしながら、本発明は、ＳＳＨおよびＳＳＬ／ＴＬＳなどの（しかしこれらに限定されない）他のネットワーク暗号化方式にも適用可能であることに留意されたい。ＩＰｓｅｃでは、インターネット内での通信パスを介したソース・ノードと宛先ノードとの間の通信を、セキュリティ・アソシエーション（「ＳＡ」）に従って管理することができる。ＳＡは、ＩＰｓｅｃ処理がどのように通信に適用されるかを定義するものである。ＩＰｓｅｃは、ＲＦＣの中でもとりわけＲＦＣ４３０１によって取って代わられた、Ｒｅｑｕｅｓｔ  ｆｏｒ  Ｃｏｍｍｅｎｔ（ＲＦＣ）に定義されている。
【００３７】
ＩＰｓｅｃでは、セキュリティ・ポリシー・データベース（「ＳＰＤ」）のセキュリティ規則内でパケットの属性を突き合わせることによって、ＩＰｓｅｃ処理を伴うかまたはＩＰｓｅｃ処理なしで、パケットの伝送が拒否されるか許可されるかが決定される。これを決定するために、それぞれがＲＦＣ２４０１に記載されたようなＳＡを参照するＩｎｔｅｒｎｅｔ  Ｋｅｙ  Ｅｘｃｈａｎｇｅ（「ＩＫＥ」）の一部として取り決められたセキュリティ・ポリシーの静的規則および動的規則の両方を、発信パケットおよび着信パケットの両方について、最も特異的な属性から最も特異的でない属性の順にフィルタリング検索することができる。セキュリティ規則内でのパケットの属性フィルタリングは、セキュア通信に携わるペア・ノードに関するソース・アドレスおよび宛先アドレスに基づくものとすることができる。
【００３８】
ＩＰｓｅｃは、セキュリティ・アソシエーション（「ＳＡ」）を確立するための２相手法を使用する。ＳＡとは、エンドポイント間にセキュア・トンネルを作成するために、各エンドで認証あるいは暗号化またはその両方の技法を適用するための、２つのエンドポイント間の取り決めである。ＩＰｓｅｃ接続の第１相中に、第２相ＳＡを取り決める際に使用可能なセキュア・トンネルを提供するためのＳＡが構築される。第２相中に、データ・トラフィックを保護するＳＡが取り決められる。
【００３９】
具体的に言えば、図１は、コンピュータ通信ネットワーク１１０を介してサーバ１０８に通信的に結合された、１つまたは複数のクライアント・コンピューティング・デバイス１０２、１０４、１０６を示す。クライアント・コンピューティング・デバイス１０２、１０４、１０６のそれぞれは、デスクトップ・コンピュータ、ノートブック・コンピュータ、携帯電話、ハンドヘルド・コンピューティング・デバイス、サーバ、または他の同様のコンピューティング・デバイスとすることができる。また、クライアント・コンピューティング・デバイス１０２、１０４、１０６のそれぞれは、たとえばＩＰｓｅｃを使用するＶＰＮトンネルの確立を通じた、サーバ１０８とのエンド・ツー・エンド・セキュア通信用に構成することができる。そのため、セキュア・サーバ１１２は、クライアント・コンピューティング・デバイス１０２、１０４、１０６のそれぞれに結合し、クライアント・コンピューティング・デバイス１０２、１０４、１０６に代わってサーバ１０８とのＶＰＮトンネルを確立することができる。
【００４０】
１つまたは複数のセキュリティ実施ポイント１１６、１１８を、エンド・ツー・エンド・セキュア通信パスの中でサーバ１０８に通信的に結合することができる。セキュリティ実施ポイント１１６、１１８は、パケット・フィルタリングおよび侵入検出から、ロード・バランシングおよびＱｏＳ管理に及ぶ、いくつかのセキュリティ機能のうちのいずれかを実行するように構成可能である。特に、図１に示されるように、セキュリティ実施ポイント１１６、１１８のそれぞれをキー・サーバ１２０に結合することができる。次に、キー・サーバ１２０をサーバ１０８に結合することができる。したがって、一実施形態では、キー・サーバ１２０は、セキュア・サーバ１１２によって確立されたサーバ１０８とのエンド・ツー・エンド・セキュア通信パスに関する、ＳＡ１２２のアウェアネス（awareness）を維持することができる。ＳＥＰ１１６、１１８は直列に接続される必要がないことに留意されたい。
【００４１】
以下に、セキュリティ実施ポイント１１６、１１８が、セキュアなエンド・ツー・エンド通信パス内のトラバース暗号化データをどのように検査可能であるかの概要を示す。一実施形態では、エンド・ツー・エンド・セキュア通信パスを、クライアント・コンピューティング・デバイス１０２、１０４、１０６のうちの１つとサーバ１０８との間に確立することができる。エンド・ツー・エンド・セキュア通信パスの確立中に、セキュア・サーバ１０８上のＩＫＥデーモンは、キー・サーバ１２０へのエンド・ツー・エンド・セキュア通信パスに関するＩＰｓｅｃ  ＳＡを提供することができる。一実施形態では、サーバ１０８に関するＴＣＰ／ＩＰスタックにＳＡをロードする前、すなわちエンド・ツー・エンド・セキュア通信パスが実行可能となる前に、セキュリティ実施ポイント１１６、１１８のそれぞれとキー・サーバ１２０との間のＶＰＮトンネルなどの長期存続可能なセキュア・リンクを介して、キー・サーバ１２０により、セキュリティ実施ポイント１１６、１１８のそれぞれにＳＡを提供することができる。この実施形態について、以下でより詳細に考察する。
【００４２】
最終的に、キー・サーバ１２０はサーバ１０８への通知が可能であり、サーバ・コンピューティング・デバイス１０８はそのＴＣＰ／ＩＰスタックにＳＡをロードすることができる。しかしながら、ＳＡがエンドポイントに即時にインストールされた場合、実施ポイント１１６、１１８が未だに取り決め済みＳＡを有していない可能性があるため、潜在的にいくつかの暗号化パケットが実施ポイント１１６、１１８で復号できない可能性があることに留意されたい。この状況では、受信したパケットを廃棄するか、またはパケットを未検査とするように、実施ポイント１１６、１１８を構成することができる。
【００４３】
その後、クリア・テキスト・ペイロード１２４を暗号化ペイロード１２６に変換し、エンド・ツー・エンド・セキュア通信パスを介してサーバ１０８に送信することが可能であり、ここで暗号化ペイロード１２８をクリア・テキストに復号することができる。しかしながら、エンド・ツー・エンド・セキュア通信パスに関してＳＡ１２２によって提供される知識を通じて、関連付けられたセキュリティ機能を実行する際に使用するために、セキュリティ実施ポイント１１６、１１８のそれぞれで、それらの間の暗号化ペイロード１２８を復号することができる。結果として、中間に配置されたセキュリティ実施ポイント１１６、１１８は、クライアント・コンピューティング・デバイス１０２、１０４、１０６の知識を必要とすることなく、また、クライアント・コンピューティング・デバイス１０２、１０４、１０６またはサーバ１０８がセキュリティ実施ポイント１１６、１１８の知識を有する必要なく、復号されたクリア・テキスト上でセキュリティ機能を実行することができる。
【００４４】
セキュリティ実施ポイントへのＳＡ情報の選択的ロード
以下で、セキュアなエンド・ツー・エンド通信パス内のトラバース暗号化データが検査可能となるような、セキュリティ実施ポイントへのＳＡ情報の選択的ロードについてより詳細に考察する。図６に示されたようなＳＡに関連付けられた情報を、キー・サーバ１２０に登録することができる。ＳＥＰ１１６は、キー・サーバ１２０とのセッションを確立するため、結果として、ＳＥＰ１１６が２つのエンドポイント（たとえばセキュア・サーバ１１２およびサーバ１０８）の間で所与のＳＡを介して送られるトラフィックを受信した場合、ＳＥＰ１１６は、パケットを復号するためのＳＡ情報にアクセスすることができる。
【００４５】
具体的に言えば、本発明の様々な実施形態は、各ＳＥＰ１１６、１１８とキー・サーバ１２０との間に存在する長期の暗号化セッションを使用して、ＳＥＰとキー・サーバ１２０との間でメッセージ・セットを交換する。このメッセージング交換により、ＳＥＰ１１６、１１８は、その特定ＳＡを介して送られているトラフィックを復号するために必要なＳＡ情報を取得することができる。このメッセージング交換は、１）ＳＥＰに、認識していないＩＰｓｅｃ（ＡＨまたはＥＳＰ）ＳＡが提示された場合、２）ＳＥＰがすでに認識しているＩＫＥ  ＳＡの下で新しいＩＰｓｅｃ（ＡＨまたはＥＳＰ）ＳＡが取り決められた場合、および、３）新しいＩＫＥセキュリティ・アソシエーションが使用中であるかまたは取り決め中であることをＳＥＰが認識した場合（ただし、これらに限定されない）などの、様々な状況で発生可能である。ＩＫＥは、ＳＡをセットアップするためにＩＰｓｅｃで使用されるＩｎｔｅｒｎｅｔ  Ｋｅｙ  Ｅｘｃｈａｎｇｅプロトコルである。
【００４６】
図２は、セキュア・エンド・ツー・エンド通信パスを介して送られている暗号化トラフィックを処理するための、１つまたは複数のＳＥＰへのＳＡ情報の選択的ロードの一例を示す。具体的に言えば、図２は、セキュア・エンド・ツー・エンド通信パスを介して互いに通信を試行している、既知のＩＰｓｅｃエンドポイント２１２およびリモートＩＰｓｅｃエンドポイント２０８を示す。図２では、エンドポイント２１２、２０８の間でＩＰｓｅｃ第１相セッションまたはＩＫＥ  ＳＡがすでに確立されていること、および、既知のＩＰｓｅｃエンドポイント２１２とキー・サーバ２２０との間で暗号化セッションがセットアップされていることに留意されたい。また前述のように、移送レイヤ・セキュリティ（ＴＬＳ）セッションを介するなど、ＳＥＰ２１６とキー・サーバ２２０との間に、持続セキュア・セッションが確立されることも想定される。したがって図２では、エンド・ツー・エンド・セキュア通信パスは、ＩＰｓｅｃエンドポイント２１２、２０８の両方の間のみならず、ＳＥＰ  ２１６およびキー・サーバ２２０と別々に存在する。
【００４７】
一実施形態では、キー・サーバ２２０は、ＳＡマネージャ２３０と、ＳＡセッションに関連付けられた情報記録２３４を備えるデータベース２３２とを備える。たとえば図６は、データベース２３２によって維持されるタイプのＳＡ情報記録２３４の一例を示す。一実施形態では、ＩＰｓｅｃエンドポイント２１２、２０８は、新しいＳＡが正常に取り決められると、この情報をキー・サーバ２２０に送信する。次にキー・サーバ２２０は、この情報を将来参照するために、そのデータベース２３２に格納する。エンドポイント２１２、２０８からキー・サーバ２２０に伝送される情報は、エンドポイントＩＤ、Ｉ−Ｃｏｏｋｉｅ、Ｒ−Ｃｏｏｋｉｅ、およびＩＰｓｅｃ  ＳＡグループＩＤ情報を備える、１次キー６３６を含むことができる。エンドポイントＩＤは、ＳＡ情報を伝送しているエンドポイントを固有に識別する。ｉＣｏｏｋｉｅ（イニシエータ）およびｒＣｏｏｋｉｅ（レスポンダ）は、エンドポイント２１２、２０８のそれぞれによって、それらの第１相ＳＡのエンドに割り当てられる値である。これにより、第２相ＳＡを取り決めること、および第１相ＳＡを固有に識別することができる。ＩＰｓｅｃ  ＳＡグループＩＤフィールドは、第２相ＳＡのためにのみ読み込まれ（populate）、特定のエンドポイントが関連付けられている現在のＳＡグループを識別する。
【００４８】
ＳＡ情報記録２３４は、すべてのＳＡに対して維持される補助データ６３８も含む。この補助データ６３８は、ＳＡの作成時間、ＳＡの存続期間、ＳＡのライフ・サイズ、ＳＡのローカル・セキュリティＩＰアドレス、ＳＡのリモート・セキュリティＩＰアドレス、ＳＡのインスタントＩＤ、およびＳＡタイプなどの、情報を含むことができる（ただし、これらに限定されない）。第１相ＳＡ情報６４０は、各ＳＡについても同様に維持される。この第１相情報６４０は、ＩＫＥトンネルＩＤ、ＵＤＰエンキャップ（Encap）・ポート、ローカルＩＤタイプ、ローカルＩＤ長さ、リモートＩＤタイプ、リモートＩＤ長さ、ローカル識別子、およびリモート識別子などの情報を含むことができる（ただし、これらに限定されない）。ＳＡ情報記録２３４は、ある特定のフィールドに第２相ＳＡ情報６４２も読み込む。
【００４９】
この第２相ＳＡ情報６４２は、ＩＰｓｅｃトンネルＩＤ、ソース・データＩＰアドレス、宛先データＩＰアドレス、ソース・ポート低、ソース・ポート高、宛先ポート低、宛先ポート高、インバウンドＡＨ  ＳＰＩ（セキュリティ・パラメータ・インデックス）、アウトバウンドＡＨ  ＳＰＩ、インバウンドＥＳＰ  ＳＰＩ、アウトバウンドＥＳＰ  ＳＰＩ、認証アルゴリズム、暗号化アルゴリズム、認証キー長さ、暗号化キー長さ、認証セッション・キー、暗号化セッション・キー、および関与ＳＥＰのリストを含むことができる（ただし、これらに限定されない）。識別子、暗号化パラメータおよびキー、ならびに認証パラメータおよびキーを含む（ただし、これらに限定されない）、データベース２３２内に含まれる上記情報のサブセットは、関与ＳＥＰへと下方に送信される。これによりＳＥＰは、それを通じて流れているトラフィックを復号することができる。このプロセスについて、以下でより詳細に説明する。
【００５０】
図２に戻ると、ＳＥＰ２１６は、エンドポイントから受信したデータ・トラフィックを管理および監視する、トラフィック・マネージャ２４４を含む。トラフィック・マネージャ２４４は、一実施形態では、データ・トラフィックに関連付けられたＳＡ情報を分析するため、および、キー・サーバ２２０と通信するための、ＳＡマネージャ２４６を含む。図２の例では、ＳＥＰ２１６は、時間Ｔ１で、リモートＩＰｓｅｃエンドポイント２０８などのＩＰｓｅｃエンドポイントからデータ・トラフィックを受信する。トラフィック・マネージャ２４４は、データ・トラフィックを分析して、これがＩＰｓｅｃトラフィックであるかどうかを判別する。たとえば、リモートＩＰｓｅｃエンドポイント２０８は、ＩＰｓｅｃ  ＳＡを（認証ヘッダ（「ＡＨ」）またはカプセル化セキュリティ・ペイロード（「ＥＳＰ」）と共に）ＳＥＰ２１６に送信する。図２の例では、トラフィック・マネージャ２４４は、リモートＩＰｓｅｃエンドポイント２０８から受信したトラフィックがＩＰｓｅｃトラフィックであるものと判別する。トラフィック・マネージャ２４４は、ＩＰｓｅｃトラフィック内のＳＰＩ／プロトコル／宛先ＩＰアドレス情報などの情報を分析し、この情報に関連付けられたＩＰｓｅｃ  ＳＡがこれを認識していないものと判別する。言い換えれば、ＳＡマネージャ２４６は、この特定のＳＡに関するデータ・トラフィックを復号するために必要な情報を有していない。
【００５１】
ＳＥＰ２１６は、認識していないＳＡを検出すると、トラフィック（例えばデータ・パケット）を未検査で渡すか、またはパケットをドロップすることができる。ＳＥＰ２１６は、これらのアクションのいずれかを実行するように事前に構成することができる。図２の例は、ＳＥＰ２１６が時間Ｔ２でデータ・パケットをドロップし、それによって最終的に発信元エンドポイント（たとえば、リモートＩＰｓｅｃエンドポイント２０８）にパケットを再送させることになることを示す。トラフィック・マネージャ２４４が、データ・パケットをドロップするか、または未チェックで渡すことを可能にするかのいずれかを実行すると、ＳＡマネージャ２４６は、時間Ｔ３でキー・サーバ２２０を照会し、この特定のＳＡに関するＳＡ情報を有するかどうかを判別する。たとえば一実施形態では、ＳＡマネージャ２４６は、ＳＰＩ／プロトコル／宛先ＩＰアドレス情報を含む「ＳＡ発見」というメッセージを、ＳＥＰ２１６とキー・サーバ２２０との間に存在する暗号化セッションを介してキー・サーバ２２０に送信する。言い換えれば、ＳＥＰ２１６は、キー・サーバ２２０で権利を登録するか、またはその特定のＳＡに関するＳＡ情報を受信するためにキー・サーバ２２０に加入する。これによって、ＳＥＰ２１６は、ＩＰｓｅｃデータ・パケットを復号するために必要な情報を動的に獲得することができる。
【００５２】
キー・サーバ２２０が、そのデータベース２３２内にこの特定ＳＡに関するＳＡ情報を有する場合、キー・サーバ２２０のＳＡマネージャ２３０は、そのデータベース２３２からＳＡ情報を抽出し、時間Ｔ４で、ＩＰｓｅｃ  ＳＡコンテンツをＳＥＰ２１６に戻す。キー・サーバ２２０は、その構成済みポリシーに基づいて、他の動作も同様に実行することができる。たとえばキー・サーバ２２０は、このＩＰｓｅｃ  ＳＡがそれの下で取り決められた、ＩＫＥ  ＳＡのｉＣｏｏｋｉｅ／ｒＣｏｏｋｉｅを戻すことができる。ＩＫＥ  ＳＡに関連付けられた他のトラフィックが、将来このＳＥＰ２１６を介して渡されることになる可能性が高いため、これはＳＥＰ２１６にとっての特典である。これにより、実質的に、関連付けられたＩＫＥ  ＳＡに関してＳＥＰ２１６からの暗黙の「ＳＡ権利登録」が構成される。
【００５３】
この登録がキー・サーバ２１６で実行されると、関連付けられたＩＫＥ  ＳＡの下で取り決められた任意の新しいＩＰｓｅｃ  ＳＡは、自動的にＳＥＰ２１６に送達される。一実施形態では、キー・サーバ２２０のＳＡマネージャ２３０は、ＳＡおよび任意の関係ＳＡに関するＳＥＰ加入／登録済み権利を管理および維持する。キー・サーバ２２０は、ＩＫＥ  ＳＡに関連付けられたすべての他の既知のＩＰｓｅｃ  ＳＡに関するＳＡ情報を、それらのＳＡによって保護されているデータも同様にＳＥＰ２１６を通じて流れることになるものと予期して、戻すこともできる。
【００５４】
キー・サーバ２２０からの「ＳＡ発見」応答メッセージを受信すると、ＳＥＰ２１６はＳＡコンテンツ２４９をそのローカル・データベース２４８に格納する。この時点から、ＳＥＰ２１６は、そのＡＨまたはＥＳＰ  ＳＡを介してＳＥＰ２１６を通じて流れる任意のデータ・トラフィックをカプセル化解除するために、このＳＡ内のキーを使用することができる。同様に、キー・サーバ２２０の構成済みポリシーに基づいて戻される任意の他のＳＡ情報に関して、ＳＥＰのローカル・データベース２４８内に同様のエントリが作成される。
【００５５】
図３は、セキュア・エンド・ツー・エンド通信パスを介して送られている暗号化トラフィックを処理するための、１つまたは複数のＳＥＰへのＳＡ情報の選択的ロードの他の例を示す。具体的に言えば、図３は、図２と同様のセキュア・エンド・ツー・エンド通信パスを介して互いに通信を試行している、既知のＩＰｓｅｃエンドポイント３１２およびリモートＩＰｓｅｃエンドポイント３０８を示す。図３では、エンドポイント３１２、３０８の間でＩＰｓｅｃ第１相セッションまたはＩＫＥ  ＳＡがすでに確立されており、既知のＩＰｓｅｃエンドポイント３１２とキー・サーバ３２０との間で暗号化セッションがセットアップされている。図３では、前述のＳＥＰ３１６とキー・サーバ３２０との間の持続セキュア・セッションも存在する。
【００５６】
図３のリモートＩＰｓｅｃエンドポイント３０８および既知のＩＰｓｅｃエンドポイント３１２は、時間Ｔ１で、すでに確立されたＩＫＥ  ＳＡ（たとえばＶＰＮトンネル）全体にわたって新しいＩＰｓｅｃＳＡを取り決める。取り決めが完了すると、既知のＩＰｓｅｃエンドポイント３１２は、時間Ｔ２で、新しいＳＰＩ／プロトコル／宛先ＩＰアドレス情報、新しいＳＡコンテンツならびに関連付けられたｉＣｏｏｋｉｅ／ｒＣｏｏｋｉｅ情報を備える「ＳＡ格納」メッセージを、それらの暗号化セッションを介してキー・サーバ３２０に送信する。このメッセージを受信すると、キー・サーバ３２０のＳＡマネージャ３３０は、図５に関して前述した形式でＳＡをそのローカル・データベース３３２に格納する。
【００５７】
キー・サーバ３２０のＳＡマネージャ３３０は、その登録済み権利／加入者情報も分析し、新しいＳＡ情報が選択的にロードされることになる任意のＳＥＰ３１６を識別する。ＳＡマネージャ３３０が任意の関与ＳＥＰ３１６を識別した場合、ＳＡマネージャ３３０は、時間Ｔ３で、登録済み／加入者ＳＥＰ３１６、３１８に「新規ＳＡ」メッセージを送信する。一実施形態では、「新規ＳＡ」メッセージは、新しいＳＰＩ／プロトコル／宛先ＩＰアドレス情報、新しいＳＡコンテンツ、および関連付けられたｉＣｏｏｋｉｅ、ｒＣｏｏｋｉｅ情報を含む（ただし、これらに限定されない）。この情報は、キー・サーバ３２０とＳＥＰ  ３１６との間に存在する暗号化セッションを介して、ＳＥＰ３１６に伝送される。
【００５８】
このメッセージを受信すると、ＳＥＰ３１６はそのローカル・データベース３４８にＳＡコンテンツ３４９を格納する。これによってＳＥＰ３１６は、その特定のＩＰｓｅｃ  ＳＡを介してＳＥＰ３１６を通じて流れる任意のデータ・トラフィックをカプセル化解除するために、このＳＡでキーを使用することができる。言い換えれば、図３の例では、ＳＡ情報は、その特定のＩＰｓｅｃ  ＳＡに関してＳＥＰ３１６でデータ・トラフィックが受信されるのに先立って、キー・サーバ３２０から関与ＳＥＰ３１６に送信される。
【００５９】
図４は、１つまたは複数のＳＥＰへのＳＡ情報の選択的ロードの他の例を示す。具体的に言えば、図４は、ＳＥＰ４１６が、認識されていないイニシエータＣｏｏｋｉｅ（ｉＣｏｏｋｉｅ）および認識されていないレスポンダＣｏｏｋｉｅ（ｒＣｏｏｋｉｅ）を含むＩＫＥメッセージを検出した場合、ＳＥＰ４１６にＳＡ情報を選択的にロードする方法を示す。ＳＥＰ４１６は、新しいＩＫＥ  ＳＡの取り決め中、または認識されていないＩＫＥ  ＳＡの下での新しいＩＰｓｅｃ  ＳＡの取り決め中のいずれかに、これらの認識されていないクッキーを検出することができる。ＳＥＰ４１６は、認識されていないクッキーを検出した場合、（そのｉＣｏｏｋｉｅ／ｒＣｏｏｋｉｅによって識別された）ＳＡにおけるその権利を示すメッセージをキー・サーバ４２０に送信する。その後、キー・サーバ４２０は、新しいＩＫＥ  ＳＡに関してそのローカル・データベース４３２内に新しいエントリを作成し、その特定のＳＡ内で関与されるＳＥＰのリストにＳＥＰ４１６を追加する。この時点から、ＩＫＥ  ＳＡの下で確立された任意の新しいＩＰｓｅｃ  ＳＡは自動的に関与ＳＥＰ４１６に転送される。
【００６０】
たとえば、図４は、時間Ｔ１で、リモートＩＰｓｅｃエンドポイント４０８（または既知のＩＰｓｅｃエンドポイント４１２）が、既知のＩＰｓｅｃエンドポイントとの第１相取り決めを開始することを示す。別の方法では、２つのＩＰｓｅｃエンドポイント４１２、４０８は、ＳＥＰ４１６が認識していない（たとえば、ｉＣｏｏｋｉｅ／ｒＣｏｏｋｉｅは認識されていない）ＩＫＥ  ＳＡを使用して、第２相取り決めの一部としてＩＫＥクイック・モード・メッセージを交換する。ＳＥＰ４１６のＳＡマネージャ４４６は、新しいＩＫＥ  ＳＡ識別子を検出し、ＩＳＡＫＭＰヘッダからｉＣｏｏｋｉｅ値およびｒＣｏｏｋｉｅ値を抽出する。ＳＥＰ４１６のＳＡマネージャ４４６は、時間Ｔ２で、それらの暗号化セッションを介して「ＳＡ権利登録」メッセージ内でキー・サーバ４２０にｉＣｏｏｋｉｅ値およびｒＣｏｏｋｉｅ値を送信する。その後、ＳＥＰ４１６は、受信したデータ・パケットをターゲットのＩＰｓｅｃエンドポイントに転送する。
【００６１】
キー・サーバ４２０がＳＥＰ４１６から登録要求を受信した場合、キー・サーバは、新しいＩＫＥ  ＳＡに関して、そのＳＡデータベース４３２内に新しいＳＡエントリを作成する。キー・サーバ４２０は、送信側ＳＥＰ４１６が、この特定のＩＫＥ  ＳＡに関連付けられた任意のＩＰｓｅｃ（ＡＨまたはＥＳＰ）ＳＡに関与している旨も通知する。キー・サーバ４２０は、新しく登録されたＩＫＥ  ＳＡに関してある種の活動タイムアウトを実装し、結果として、正常に取り決めできなかったＩＫＥ  ＳＡが、最終的にキー・サーバ・データベース４３２から消去されるように選択できることに留意されたい。このクリーンアップの一部として、キー・サーバ４２０は、オプションで、すべての関与ＳＥＰにＩＫＥ  ＳＡがドロップされている旨の通知を送信することが可能であり、結果としてＳＥＰはそれらのローカル・ストレージ４４８からもＳＡを除去することができる。
【００６２】
図５は、図２に関して前述したプロセスの変形を示す。具体的に言えば、図５は、ネットワーク内でのＩＰルーティングの変更によって生じる、図２の例の特殊なケースを示す。図５では、ネットワークを介したパケットのルーティングが、理由のいかんに関わらず変更されるため、新しいＳＥＰ５１８は、その時点でそれを通じて流れているＳＡの知識を動的に獲得する。図２の場合と同様に、ＳＥＰ、ＳＥＰ５１８は、突然、未知のＡＨまたはＥＳＰ  ＳＡに関するＳＰＩ／プロトコル／宛先ＩＰアドレスに直面する（時間Ｔ１）。前述のように、パケットをドロップするかまたは許可するか（時間Ｔ２）のいずれかを選択しなければならず、その後ＳＥＰ５１８は、認識されていないＳＡに関して知っているかどうかをキー・サーバに問い合わせる（Ｔ３）。キー・サーバ５２０がＳＡについて知っている場合、そのＳＡに関する情報を送信し、関連付けられたＩＫＥ  ＳＡおよび他の関連ＩＰｓｅｃ  ＳＡに関する情報も送信することができる。
【００６３】
上記の例に加えて、キー・サーバ１２０は、ＩＰｓｅｃエンドポイント間で発生するＩＫＥ再伝送の数を最小限にすることも可能であることに留意されたい。具体的に言えば、キー・サーバ１２０は、ＳＥＰ１１６がＩＰｓｅｃ  ＳＡを定位置に有することを保証するために、データ・トラフィックがそのＳＡを介して流れ始める前に、ＩＫＥピア間での最終クイック・モード・メッセージ交換を効果的に中断することができる。一実施形態では、キー・サーバ１２０は、ＩＰｓｅｃエンドポイント１０８、１１２からの「ＳＡ格納」メッセージに応答する前に、「新規ＳＡ」メッセージをＳＥＰ１１６に送信することによって、これを実施する。キー・サーバ１２０は、ＳＥＰ１１６への送信が完了するのを待つだけでよく、ＳＥＰ１１６からの応答を待つ必要がないことに留意されたい。既知のＩＰｓｅｃエンドポイント１１２がイニシエータの場合、これは、既知のＩＰｓｅｃエンドポイントがクイック・モード・メッセージ３をそのピアに送信する前に発生する。既知のＩＰｓｅｃエンドポイント１１２がレスポンダの場合、これは、既知のＩＰｓｅｃエンドポイント１１２がクイック・モード・メッセージ４（コミット・ビット・サポートを使用する場合）またはメッセージ２（コミット・ビット・サポートなし）をそのピアに送信する前に発生する。
【００６４】
本発明の前述の諸実施形態は、セキュア・エンド・ツー・エンド通信パスを介して送られているデータ・パケットを復号するために、ＳＥＰにＳＡ情報を選択的にロードできるために有利であることを理解されよう。これにより、関与ＳＥＰは、データ・パケットを復号するため、および所望の動作を実行するために、ＳＡ情報を取得することができる。他の利点は、関与ＳＥＰのみにＳＡ情報が選択的にロードされることである。これにより、情報を必要としないＳＥＰにＳＡ情報が不必要に解放されることがなく、それによってＳＡ情報の脆弱性を減少させることができる。
【００６５】
情報処理ノードの例
図７は、本発明の一実施形態に従った、ＳＥＰ１１６またはキー・サーバ１２０などの情報処理ノード７００のより詳細な図を示すブロック図である。以下の考察はＳＥＰ１１６に関するものであるが、前述のそれぞれのコンポーネントを除き、キー・サーバ１２０にも同様に適用可能であることに留意されたい。
【００６６】
情報処理ノード７００はコンピュータ７０２を含む。コンピュータ７０２は、メイン・メモリ７０６、大容量ストレージ・インターフェース７０８、端末インターフェース７１０、およびネットワーク・アダプタ・ハードウェア７１２に接続された、プロセッサ７０４を有する。システム・バス７１４はこれらのシステム・コンポーネントを相互接続する。大容量ストレージ・インターフェース７０８は、データ・ストレージ・デバイス７１６などの大容量ストレージ・デバイスを情報処理システム７００に接続するために使用される。１つの特定タイプのデータ・ストレージ・デバイスが、ハード・ディスク・ドライブまたは他のストレージ・ドライブ、フラッシュ・メモリ、不揮発性メモリ、ＣＤ７１８またはＤＶＤ（図示せず）へデータを格納するためおよびそれらからデータを読み取るために使用可能な光ディスクなどの、コンピュータ読み取り可能メディアである。データ・ストレージ・デバイスの他の例は、ネットワーク要素としてＮＴＦＳタイプ・ファイル・システム動作をサポートするように構成された、データ・ストレージ・デバイスである。
【００６７】
一実施形態では、メイン・メモリ７０６は、トラフィック・マネージャ２４４、ＳＡマネージャ２４６、およびＳＡコンテンツ・データベース２４８（ＳＡコンテンツ２４９を備える）を含む。メイン・メモリ７０６のそれぞれのコンポーネントは、メイン・メモリ７０６内に同時に常駐しているように示されているが、メイン・メモリ７０６内に常時、または同時に、完全に常駐している必要がないことは明らかである。一実施形態では、情報処理ノード７００は、従来の仮想アドレッシング機構を使用して、メイン・メモリ７０６およびデータ・ストレージ・デバイス７１６などの複数のより小型のストレージ・エンティティにアクセスするのではなく、本明細書ではコンピュータ・システム・メモリと呼ばれる大型の単一ストレージ・エンティティにあたかもアクセスできるように、プログラムを挙動させることができる。「コンピュータ・システム・メモリ」という用語は、本明細書では一般に、情報処理ノード７００の仮想メモリ全体を言い表すために使用されることに留意されたい。
【００６８】
コンピュータ７０２について１つのＣＰＵ７０４のみが示されているが、複数のＣＰＵを備えるコンピュータ・システムも等しく効果的に使用可能である。本発明の様々な実施形態は、それぞれが、ＣＰＵ７０４から処理をオフロードするために使用される、別個の完全にプログラミングされたマイクロプロセッサを含む、インターフェースをさらに組み込む。端末インターフェース７１０は、コンピュータ７０２へのユーザ・インターフェースを提供するために、１つまたは複数の端末７２０をコンピュータ７０２に直接接続するために使用される。これらの端末７２０は、非インテリジェントであるかまたは完全にプログラム可能なワークステーションとすることが可能であり、システム管理者およびユーザが情報処理ノード７００と通信できるようにするために使用される。端末７２０は、ビデオ・アダプタならびに、キーボード、ポインティング・デバイス、および他のデバイス／インターフェースのためのインターフェースを含む、コンピュータ７０２に接続され、端末Ｉ／Ｆ  ７１０に含まれる端末インターフェース・ハードウェアによって制御される、ユーザ・インターフェースおよび周辺デバイスからなるものとすることもできる。
【００６９】
メイン・メモリに含まれるオペレーティング・システム（図示せず）は、Ｌｉｎｕｘ、ＵＮＩＸ、Ｗｉｎｄｏｗｓ  ＸＰ、およびＷｉｎｄｏｗｓ  Ｓｅｒｖｅｒ  ２００３オペレーティング・システムなどの（ただし、これらに限定されない）、好適なマルチタスキング・オペレーティング・システムである。本発明の様々な実施形態は、任意の他の好適なオペレーティング・システムを使用することが可能である。本発明のいくつかの実施形態は、オペレーティング・システムのコンポーネント（図示せず）の命令を、情報処理ノード７００内に配置された任意のプロセッサ上で実行可能にする、オブジェクト指向フレームワーク機構などのアーキテクチャを使用する。ネットワーク・アダプタ・ハードウェア７１２は、ネットワーク１１０へのインターフェースを提供するために使用される。本発明の様々な実施形態は、現在のアナログあるいはデジタルまたはその両方の技術を含む任意のデータ通信接続を使用するか、または将来のネットワーキング機構を介して、動作するように適合可能である。
【００７０】
本発明の諸実施形態について、完全に機能するコンピュータ・システムとの関連において説明しているが、当業者であれば、様々な実施形態が、たとえばＣＤ７１８などのＣＤまたはＤＶＤ、ＣＤ‐ＲＯＭ、または他の形の記録可能媒体を介して、あるいは、任意のタイプの電子伝送機構を介して、コンピュータ・ストレージ・プログラム製品として配布可能であることを理解されよう。一般に、コンピュータ・ストレージ・プログラム製品とは、メモリ・デバイスあるいはストレージ・デバイスあるいはコンピュータ読み取り可能メディア、またはそれらすべてに提供された、おそらくプログラムの一部として変数およびデータ構造を含む、プログラムを言い表すものである。
【００７１】
暗号化データのＳＥＰ検査に関する動作流れ
図８は、セキュアなエンド・ツー・エンド通信パス内での暗号化データのセキュリティ実施ポイント検査のプロセスを示す、動作流れ図である。図８の動作流れ図は、ステップ８０２で開始され、直接ステップ８０４へと流れる。ステップ８０４で、他のＩＰｓｅｃエンドポイント１０８とのＶＰＮトンネルのセットアップ中に、キー・サーバ１２０内で、ＩＰｓｅｃエンドポイント１１２からＩＰｓｅｃ  ＳＡを受信することができる。ステップ８０６で、第１の即時に配置されたセキュリティ実施ポイントを、エンド・ツー・エンド・セキュア通信パス内で識別することができる。ＳＥＰ１１６が識別されると、ステップ８０８で、ＳＥＰ１１６は、移送レイヤ・セキュリティ（ＴＬＳ）セッションを介するなど、キー・サーバ１２０との持続セキュア・セッションを確立するため（すでに確立されていない場合）、結果としてエンド・ツー・エンド・セキュア通信パスは、ＩＰｓｅｃエンドポイント１０８、１１２の間のみならず、ＳＥＰ１１６およびキー・サーバ１２０とも別個に、存在することになる。
【００７２】
ステップ８１０で、ＩＰｓｅｃエンドポイント１０８、１１２の間のエンド・ツー・エンド・セキュア通信パスに関するＩＰｓｅｃ  ＳＡを、キー・サーバ１２０とＳＥＰ１１６との間の別々のエンド・ツー・エンド・セキュア通信パス全体にわたって、ＳＥＰ１１６に提供することができる。その後、ステップ８１２で、ＩＰｓｅｃエンドポイント１０８、１１２の間で追加のＳＥＰが依然として処理される場合、ステップ８１４で、次のＳＥＰを取り出すことが可能であり、ステップ８０８から始まるプロセスが反復される。ＩＰｓｅｃエンドポイント１０８、１１２の間で依然として処理されるＳＥＰがない場合、ステップ８１６で、ＩＰｓｅｃエンドポイント１１２に対して、エンド・ツー・エンド・セキュア通信パスに関するＳＡのインストールを完了する旨の信号を送信することが可能であり、ＳＥＰ１１６は、ＩＰｓｅｃエンドポイントに関するＳＡに組み込まれたセッション・キー知識により、ＩＰｓｅｃエンドポイント１０８、１１２の間で伝送される暗号化データに対してセキュリティ機能を実行することができる。
【００７３】
オプションで、ＳＥＰ１１６に提供されるＳＡが、ＳＥＰ１１６をトラバースする暗号化データ内のクリア・テキストにＳＥＰ１１６がアクセスできるようにする暗号化キーを含むことができる一方で、セッション認証キーを保留することができる。この点に関して、セッション認証キーを保留することにより、実質上、セッション認証キーなしでは、ＳＥＰ１１６にはクリア・テキストのコンテンツを変更するための認証がないという点で、ＳＥＰ１１６に提供された暗号化データから復号されるクリア・テキストは、事実上「読み取り専用」である。その逆に、セッション認証キーをＳＥＰ１１６に提供して、クリア・テキストの選択部分を削除またはブロックすることを含むクリア・テキストの変更を許可することができる。その後、ステップ８１８で制御流れは終了する。
【００７４】
ＳＥＰにＳＡ情報を選択的にロードするための動作流れ
図９〜図１１は、ＳＥＰにＳＡ情報を選択的にロードするための様々なプロセスを示す動作流れ図である。図９の動作流れ図は、ステップ９０２で開始され、直接ステップ９０４へと流れる。ステップ９０４で、エンドポイント・ノード１１２はＳＥＰ１１６にデータを伝送する。ステップ９０６で、ＳＥＰ１１６はデータ・パケットを分析する。ステップ９０８で、ＳＥＰ１１６は、受信したパケットがＩＰｓｅｃパケットであるかどうかを判別する。この判別の結果が否定的な場合、ステップ９１０で制御流れは終了する。この判別の結果が肯定的な場合、ステップ９１２で、ＳＥＰ１６は、受信したＩＰｓｅｃパケットに関するＳＡ情報がローカルに使用可能であるかどうかを判別する。
【００７５】
この判別の結果が肯定的である場合、ステップ９１４で、ＳＥＰ１１６は、ローカルなＳＡ情報を使用してＩＰｓｅｃパケットを復号する。ステップ９１６で、ＳＥＰ１１６は、侵入検出などの様々な動作を実行する。その後、ステップ９１８で制御流れは終了する。この判別の結果が否定的な場合、ステップ９２０で、ＳＥＰ１１６は、パケットをドロップするか、またはこれを未チェックで渡せるようにする。ステップ９２２で、ＳＥＰ１１６は、受信したパケットに関連付けられたＳＡコンテンツに関する権利を登録する旨の要求を、１つまたは複数のキー・サーバ１２０に送信する。ステップ９２４で、キー・サーバ１２０はそのデータベース２３２を分析する。その後、ステップ９２６で、キー・サーバ１２０は、このＩＰｓｅｃパケットに関するＳＡコンテンツをローカルに有するかどうかを判別する。
【００７６】
この判別の結果が否定的な場合、ステップ９２８で、キー・サーバ１２０は、ＩＰｓｅｃパケットに関するＳＡコンテンツを有していない旨をＳＥＰ１１６に通知する。その後、ステップ９３０で制御流れは終了する。この判別の結果が肯定的な場合、ステップ９３２で、キー・サーバ１２０は、ＳＡ情報をＳＥＰ１１６へ送信する。ステップ９３４で、ＳＥＰ１１６は情報をローカルに格納する。これによってＳＥＰは、初期に受信したＩＰｓｅｃパケットのＳＡに関連付けられた任意の後続パケットを復号することができる。その後、ステップ９３６で制御流れは終了する。
【００７７】
図１０は、ＳＥＰにＳＡ情報を選択的にロードするための他のプロセスを示す、他の動作流れ図である。図１０の動作流れ図はステップ１００２で開始され、直接ステップ１００４へと流れる。ステップ１００４で、エンドポイント・ノード１１２、１０８は、すでに確立されている既存のＩＫＥ  ＳＡ全体にわたって新しいＩＰｓｅｃ  ＳＡを取り決める。取り決めが完了した場合、ステップ１００６で、エンドポイントのうちの１つがＳＡ情報を格納のためにキー・サーバ１２０に送信する。ステップ１００８で、キー・サーバ１２０はＳＡ情報を受信する。ステップ１０１０で、キー・サーバ１２０はＳＡ情報をデータベースに格納する。ステップ１０１２で、キー・サーバ１２０はそのデータベース２３２を分析し、新しく格納されたＳＡ内に登録済みの権利を有するＳＥＰ１１６、１１８を識別する。
【００７８】
ステップ１０１４で、キー・サーバ１２０は、識別されたＳＥＰ１１６、１１８にＳＡ情報を送信する。ステップ１０１６で、ＳＥＰ１１６、１１８は新しいＳＡ情報を受信し、この情報をローカルに格納する。ステップ１０１６で、ＳＥＰ１１６、１１８はこのＳＡ情報を使用して、暗号化ＩＰｓｅｃパケットを復号し、復号されたパケット上でそれらの内部動作を実行する。その後、ステップ１０２０で制御流れは終了する。
【００７９】
図１１は、ＳＥＰにＳＡ情報を選択的にロードするための他のプロセスを示す他の動作流れ図である。図１１の動作流れ図はステップ１１０２で開始され、直接ステップ１１０４へと流れる。ステップ１１０４で、ＩＰｓｅｃエンドポイント１０８、１１２は、ＳＥＰ１１６が認識していないＳＡを使用してＳＥＰ１１６を介してデータを伝送する。ステップ１１０６で、ＳＥＰ１１６は、ＩＰｓｅｃパケット・ヘッダからｉＣｏｏｋｉｅ値およびｒＣｏｏｋｉｅ値を抽出する。ステップ１１０８で、ＳＥＰ１１６は、少なくともｉＣｏｏｋｉｅ値およびｒＣｏｏｋｉｅ値を備えるＳＡ登録要求を作成する。ステップ１１１０で、ＳＥＰ１１６は、ＳＡ登録要求を１つまたは複数のキー・サーバ１２０に送信する。ステップ１１１２で、ＳＥＰ１１６は、受信したＩＰｓｅｃパケットをその宛先エンドポイントに転送する。ステップ１１１４で、キー・サーバ１２０は、ＳＥＰ１１６によって識別されたＳＡに関するＳＡエントリをそのデータベース２３２内に作成する。ステップ１１１６で、キー・サーバ１２０は、ＳＥＰ１１６によって識別されたＩＫＥ  ＳＡに関連付けられた任意のＳＡにＳＥＰに関する権利を登録する。その後、ステップ１１１８で制御流れは終了する。
【００８０】
限定しないことの例示
本発明は、ハードウェア、ソフトウェア、またはハードウェアおよびソフトウェアの組み合わせで実現可能である。本発明の一実施形態に従ったシステムは、１コンピュータ・システム内での集中様式で、または、異なる要素がいくつかの相互接続されたコンピュータ・システム全体に拡散される分散様式で、実現可能である。任意の種類のコンピュータ・システム、または、本明細書に記載された方法を実施するように適合された他の装置が好適である。ハードウェアおよびソフトウェアの典型的な組み合わせは、ロードされ実行された場合に、本明細書で説明された方法を実施するようにコンピュータ・システムを制御するコンピュータ・プログラムを備えた、汎用コンピュータ・システムとすることができる。
【００８１】
一般に、本発明の諸実施形態を実装するために実行されるルーチンは、オペレーティング・システム、あるいは特定のアプリケーション、コンポーネント、プログラム、モジュール、オブジェクト、または命令シーケンスの、一部として実装されるかどうかに関わらず、本明細書では「プログラム」と呼ばれる場合がある。コンピュータ・プログラムは、通常、ネイティブ・コンピュータによって機械読み取り可能形式および実行可能命令に変換されることになる、多数の命令からなる。またプログラムは、プログラムに対してローカルに常駐するか、あるいはメモリ内またはストレージ・デバイス上に常駐する、変数およびデータ構造からなる。加えて、本明細書で説明される様々なプログラムはアプリケーションに基づいて識別可能であり、本発明の特定の実施形態では、そのアプリケーションに関してそれらのプログラムが実装される。しかしながら、任意の特定プログラム用語は単に便宜上使用されており、本発明は、こうした用語によって識別されるかあるいは示唆される、またはその両方の、任意の特定アプリケーションで使用されることにのみ限定されるべきではないことを理解されたい。
【図１】
2011508550.tif 000003
【図２】
2011508550.tif 000004
【図３】
2011508550.tif 000005
【図４】
2011508550.tif 000006
【図５】
2011508550.tif 000007
【図６】
2011508550.tif 000008
【図７】
2011508550.tif 000009
【図８】
2011508550.tif 000010
【図９】
2011508550.tif 000011
【図１０】
2011508550.tif 000012
【図１１】
2011508550.tif 000013
【国際調査報告】
2011508550.tif 000014
2011508550.tif 000015