(57)【要約】【課題】  ＩＰｓｅｃにおける通信相手のなりすましを防止する。【解決手段】  ＩＫＥを行うネットワーク接続機器３００Ａが、通信相手のネットワーク接続機器３００ＣのＩＰアドレスと公開鍵証明書の識別情報との対応を示したＩＰアドレステーブルを記憶するＩＰアドレステーブル記憶部１１３と、ＩＰアドレステーブルを検索して、ＩＫＥ処理部１２１が受信したＩＰアドレスと公開鍵証明書との組み合わせがＩＰアドレステーブルに記憶されているか否かを判断する検証部１２３を備える構成とした。【選択図】    図４
2005244573.tif 000002
【特許請求の範囲】
【請求項１】
自動鍵交換プロトコルであるＩＫＥにより公開鍵証明書およびＩＰアドレスを交換して通信相手のネットワーク接続機器とのセキュリティアソシエーションを確立するネットワーク接続機器であって、
ネットワーク経由で各種情報の送受信を行うインターフェース部と、
前記通信相手のネットワーク接続機器のＩＰアドレスと公開鍵証明書の識別情報との対応を示したＩＰアドレステーブルを記憶するＩＰアドレステーブル記憶部と、
前記インターフェース部を介して、他のネットワーク接続機器から送信されたＩＰアドレスおよび公開鍵証明書を受信して、前記他のネットワーク接続機器とのＩＫＥによるセキュリティアソシエーションの折衝処理を行うＩＫＥ処理部と、
前記ＩＰアドレステーブル記憶部の前記ＩＰアドレステーブルを検索して、前記他のネットワーク接続機器から送信されたＩＰアドレスと公開鍵証明書との組み合わせが前記ＩＰアドレステーブルに記憶されているか否かを判断する検証部と、
を含み、
前記他のネットワーク接続機器から送信されたＩＰアドレスと公開鍵証明書との組み合わせが、前記ＩＰアドレステーブルに記憶されていると前記検証部が判断したとき、前記ＩＫＥ処理部は、前記他のネットワーク接続機器とのセキュリティアソシエーションを確立可能とするよう構成したことを特徴とするネットワーク接続機器。
【請求項２】
前記通信相手のネットワーク接続機器のＩＰアドレスおよび公開鍵証明書の入力を受けて、前記通信相手のネットワーク接続機器のＩＰアドレスと公開鍵証明書の識別情報との対応を示したＩＰアドレステーブルを作成するＩＰアドレステーブル作成部をさらに備えることを特徴とする請求項１に記載のネットワーク接続機器。
【請求項３】
前記ＩＰアドレステーブル作成部は、前記ＩＫＥによるセキュリティアソシエーション開始前に、前記通信相手のネットワーク接続機器のＩＰアドレスおよび公開鍵証明書の入力を受けて、前記通信相手のネットワーク接続機器のＩＰアドレスと公開鍵証明書の識別情報との対応を示したＩＰアドレステーブルを作成するよう構成し、
前記検証部が、前記他のネットワーク接続機器から送信されたＩＰアドレスと公開鍵証明書との組み合わせが、前記ＩＰアドレステーブルに記憶されていると判断したとき、前記ＩＫＥ処理部は、前記他のネットワーク接続機器とのＩＫＥフェーズ１のセキュリティアソシエーションを確立するよう構成したことを特徴とする請求項２に記載のネットワーク接続機器。
【請求項４】
前記ＩＰアドレステーブルの公開鍵証明書の識別情報は、前記公開鍵証明書の所有者を示すSubjectフィールドに記載された文字列、または前記公開鍵証明書を発行した認証局を示すIssuerフィールドに記載された文字列と前記認証局が発行した前記公開鍵証明書の通し番号を示すSerial Numberフィールドの文字列との組み合わせで構成されていることを特徴とする請求項２または請求項３に記載のネットワーク接続機器。
【請求項５】
ネットワーク接続機器が、自動鍵交換プロトコルであるＩＫＥにより公開鍵証明書およびＩＰアドレスを交換して通信相手のネットワーク接続機器とのセキュリティアソシエーションを確立するネットワーク接続方法であって、
記憶部に前記通信相手のネットワーク接続機器のＩＰアドレスと公開鍵証明書の識別情報との対応を示したＩＰアドレステーブルを記憶するネットワーク接続機器が、
他のネットワーク接続機器とのＩＫＥ処理を行うＩＫＥ処理部で、前記他のネットワーク接続機器から送信されたＩＰアドレスおよび公開鍵証明書を受信するステップと、
前記公開鍵証明書の検証およびデジタル署名の検証を行う検証部で、前記記憶手段に記憶されたＩＰアドレステーブルを検索して、前記他のネットワーク接続機器から送信されたＩＰアドレスと公開鍵証明書との組み合わせが前記ＩＰアドレステーブルに記憶されているか否かを判断するステップと、
前記他のネットワーク接続機器から送信されたＩＰアドレスと公開鍵証明書との組み合わせが、前記ＩＰアドレステーブルに記憶されていると前記検証部が判断したとき、前記ＩＫＥ処理部で、前記他のネットワーク接続機器とのセキュリティアソシエーションを確立可能とするステップと、
を実行することを特徴とするネットワーク接続方法。
【請求項６】
ネットワーク接続機器が、自動鍵交換プロトコルであるＩＫＥにより公開鍵証明書およびＩＰアドレスを交換して通信相手のネットワーク接続機器とのセキュリティアソシエーションを確立するネットワーク接続方法であって、
前記ネットワーク接続機器が、
前記通信相手のネットワーク接続機器のＩＰアドレスおよび公開鍵証明書の入力を受け付けるステップと、
前記入力された前記通信相手のネットワーク接続機器のＩＰアドレスと公開鍵証明書の識別情報との対応を示したＩＰアドレステーブルを作成するＩＰアドレステーブル作成部で、前記ＩＰアドレステーブルを作成し、このＩＰアドレステーブルを記憶手段に記憶するステップと、
他のネットワーク接続機器とのＩＫＥ処理を行うＩＫＥ処理部で、ＩＫＥにより前記他のネットワーク接続機器から送信されたＩＰアドレスおよび公開鍵証明書を受信するステップと、
前記他のネットワーク接続機器の公開鍵証明書の検証およびデジタル署名の検証を行う検証部で、前記記憶手段のＩＰアドレステーブルを検索して、前記他のネットワーク接続機器から送信されたＩＰアドレスと公開鍵証明書との組み合わせが前記ＩＰアドレステーブルに記憶されているか否かを判断するステップと、
前記他のネットワーク接続機器から受信したＩＰアドレスと公開鍵証明書との組み合わせが前記ＩＰアドレステーブルに記憶されていると前記検証部で判断したとき、前記ＩＫＥ処理部で、前記他のネットワーク接続機器とのセキュリティアソシエーションを確立可能とするステップと、
を実行することを特徴とするネットワーク接続方法。
【請求項７】
前記ＩＰアドレステーブル作成部で、前記公開鍵証明書の所有者を示すSubjectフィールドに記載された文字列、または前記公開鍵証明書を発行した認証局を示すIssuerフィールドに記載された文字列と前記認証局が発行した前記公開鍵証明書の通し番号を示すSerial Numberフィールドの文字列との組み合わせに基づいて、前記ＩＰアドレステーブルの公開鍵証明書の識別情報を作成することを特徴とする請求項６に記載のネットワーク接続方法。
【請求項８】
ネットワーク接続機器を動作させるコンピュータに、請求項５ないし請求項７のいずれか１項に記載のネットワーク接続方法を実行させることを特徴とするネットワーク接続用プログラム。
【請求項９】
請求項８に記載のネットワーク接続用プログラムを記憶し、前記ネットワーク接続機器を動作させるコンピュータに読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、自動鍵交換プロトコルにより公開鍵証明書およびＩＰアドレスを交換して通信相手のネットワーク接続機器とのセキュリティアソシエーションを確立するネットワーク接続機器に関する。
【背景技術】
【０００２】
従来、インターネット上での通信セキュリティに関する技術としては、ＩＥＴＦ（The Internet Engineering Task Force）のＩＰｓｅｃ（Internet Protocol Security）ワーキンググループで議論されている技術、例えばSecurity Architecture for the Internet Protocol（インターネットプロトコルのためのセキュリティアーキテクチャ）や公開鍵基盤（Public Key Infrastructure）を利用したＩＫＥ（自動鍵交換プロトコル、Internet Key Exchange）等が知られている（非特許文献１、非特許文献２参照）。
ここでＩＰｓｅｃとは、インターネット上でパケットを暗号化して、通信を安全に行うためのプロトコルであり、ＩＫＥとは、通信を始める前に暗号化アルゴリズムや暗号化鍵等の情報を交換・共有するための折衝を自動で行うプロトコルである。
【０００３】
ＩＰｓｅｃでは、通信を始める前に、暗号化方式、暗号鍵の情報、自身のＩＤ等を交換・共有するセキュリティアソシエーション（以下、ＳＡと略す）の折衝を行い、安全な通信路を確立する。このＳＡ（ＩＰｓｅｃ ＳＡ）を確立する際、ＩＫＥを用いて通信相手の認証を行う方法があるが、この方法は、ＩＫＥのフェーズ1で通信主体側ノードが、通信相手から送信された公開鍵証明書の検証を行うので、通信相手のいわゆる「なりすまし（spoofing）」を防止できたり、通信相手のアクセス否認を防止できるという特徴がある。
なお、前記したＩＫＥのフェーズ１では、ＩＰｓｅｃにおいてセキュリティプロトコルのＳＡの折衝等を安全に行うためのＳＡの折衝を行う。すなわち、ＩＳＡＫＭＰ ＳＡ（Internet Security Association Key Management Protocol Security Association）の折衝を行う。ちなみに、ＩＫＥのフェーズ２では、フェーズ１で折衝し、確立したＩＳＡＫＭＰ ＳＡに基づいて、セキュリティプロトコルのＳＡの折衝や共有秘密鍵の生成を行う。
【非特許文献１】IETF、RFC2401、[online]、[2004年2月17日検索]、インターネット、<URL:http://www.ietf.org/rfc/rfc2401.txt >
【非特許文献２】IETF、RFC2409、[online]、[2004年2月17日検索]、インターネット、<URL:http://www.ietf.org/rfc/rfc2409.txt >
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかし、ＩＫＥのフェーズ１では、通信主体側ノードと通信相手側ノードとの間でのＩＤ（ＩＰアドレス）の交換で、通信主体側ノードは、通信相手側ノードが送信してきたＩＤ（ＩＰアドレス）の使用権がその通信相手側ノードにあるかどうかを判断することができない。すなわち、通信相手側ノードが他人のＩＰアドレスを利用して（なりすまして）アクセスしても、それがなりすましであることをチェックできない。つまり、通信主体側ノードが、なりすましのＩＰアドレスを申請してきたノードとのＩＰｓｅｃＳＡを確立してしまう可能性がある。
【０００５】
本発明は、前記した事情を鑑みてなされたものであり、なりすましのＩＰアドレスを申請してきたノードとのＩＰｓｅｃＳＡの確立を防止するネットワーク接続機器等を提供することを課題とする。
【課題を解決するための手段】
【０００６】
前記した課題を解決するため、本発明は、自動鍵交換プロトコルであるＩＫＥにより公開鍵証明書およびＩＰアドレスを交換して通信相手のネットワーク接続機器とのセキュリティアソシエーションを確立するネットワーク接続機器を、ネットワーク経由で各種情報の送受信を行うインターフェース部と、通信相手のネットワーク接続機器のＩＰアドレスと公開鍵証明書の識別情報との対応を示したＩＰアドレステーブルを記憶するＩＰアドレステーブル記憶部と、インターフェース部を介して、他のネットワーク接続機器から送信されたＩＰアドレスおよび公開鍵証明書を受信して、他のネットワーク接続機器とのＩＫＥによるセキュリティアソシエーションの折衝処理を行うＩＫＥ処理部と、ＩＰアドレステーブル記憶部のＩＰアドレステーブルを検索して、他のネットワーク接続機器から送信されたＩＰアドレスと公開鍵証明書との組み合わせがＩＰアドレステーブルに記憶されているか否かを判断する検証部とを含み、他のネットワーク接続機器から送信されたＩＰアドレスと公開鍵証明書との組み合わせが、ＩＰアドレステーブルに記憶されていると検証部が判断したとき、ＩＫＥ処理部は、他のネットワーク接続機器とのセキュリティアソシエーションを確立可能とする構成とした。
その他の構成については、後記する実施の形態で述べる。
【０００７】
なお、請求項における「ネットワーク接続機器」とは、後記する実施の形態における「ノード」に相当する。また、請求項における「通信相手のネットワーク接続機器」とは、通信主体（ネットワーク接続機器）が通信相手として意図するネットワーク接続機器のことを指し、「他のネットワーク接続機器」とは、ネットワーク経由で通信主体にアクセスしてくる（データを送信してくる）ネットワーク接続機器全般を指すものとする。
【発明の効果】
【０００８】
本発明によれば、通信主体のネットワーク接続機器が、通信相手のネットワーク接続機器のＩＰアドレスと公開鍵証明書との対応関係を示したＩＰアドレステーブルを記憶するので、他のネットワーク接続機器から送信されたＩＰアドレスと公開鍵証明書が、このＩＰアドレステーブルに記載されていないとき、このネットワーク接続機器との間でＩＫＥフェーズ１におけるＩＳＡＫＭＰ ＳＡを確立しないようにすることができる。したがって、通信主体のネットワーク接続機器は、なりすましによりアクセスしてきたネットワーク接続機器との間でＩＰｓｅｃＳＡを確立しないようにすることができる。
【発明を実施するための最良の形態】
【０００９】
以下、本発明の実施の形態について、図面を参照して詳細に説明する。
【００１０】
まず、本発明の実施の形態であるノードを含むシステムの基本的構成および基本的処理手順について図１〜図３を用いて説明し、その後、本発明の特徴的構成を説明する。
なお、ここではＩＰｓｅｃＳＡの折衝（より詳細には、ＩＰｓｅｃＳＡのＩＫＥのフェーズ１）において、デジタル署名を用いるデジタル署名認証方式（アレグレッシブモード）を用いた場合の適用例を説明する。
なお、アレグレッシブモードとは、ＩＫＥのフェーズ１におけるＳＡパラメータ、鍵情報、ＩＤ（ＩＰアドレス）の交換を、３つのメッセージで交換する方法である。
図１は、本発明の実施の形態であるノード（ネットワーク接続機器）を含むネットワーク接続システムの基本的構成を示したブロック図である。
図２および図３は、本発明の実施の形態であるノード（ネットワーク接続機器）を含むネットワーク接続システムの基本的処理手順を示したシーケンス図である。
【００１１】
＜基本的構成＞
本実施の形態の基本的構成であるネットワーク接続システムは、図１に示すようにノード１００（１００Ａ〜Ｃ）と、このノード１００（１００Ａ〜Ｃ）の公開鍵証明書や秘密鍵を発行する認証局２００（２００Ａ、２００Ｂ）と、これらを接続するネットワーク４とを含んで構成される。
ノード１００（１００Ａ〜Ｃ）は、ネットワーク４を介して通信データの送受信を行うネットワーク接続機器であり、例えばＰＣ（Personal Computer）や、ルータ等である。ネットワーク４は、例えば、地域ＩＰ網やインターネット網である。
なお、ノード１００は、複数のノード１００の間で互いにデータの送受信（通信）を行うものであるが、ここでは説明のため、ＩＫＥフェーズ１の第１メッセージを送信する側のノードをノード１００Ｂ（請求項における他のネットワーク接続機器）とし、ＩＫＥフェーズ１の第１メッセージを受信し、通信主体となるノードをノード１００Ａとする。また、ノード１００Ａの通信相手のノード（通信相手として意図しているノード）をノード１００Ｃとする。
【００１２】
ノード１００Ａは、ＩＫＥ開始前にノード１００Ｃの認証局である認証局２００Ｂから認証局２００Ｂの公開鍵証明書を取得しておく。そして、ＩＫＥ開始後、ノード１００Ｂからノード１００ＢのＩＤ（ＩＰアドレス）、公開鍵証明書およびデジタル署名を含むＩＫＥのメッセージを受信する。次に、認証局２００Ｂの公開鍵証明書で、ＩＫＥメッセージに含まれる公開鍵証明書が正当な公開鍵証明書であるか否かを検証する。そして、ノード１００Ｂから受信した公開鍵証明書が正当な公開鍵証明書であることの検証ができたとき、この公開鍵証明書で、ノード１００Ｂのデジタル署名を検証する。
このようにして、ノード１００Ａは、ノード１００Ｂが正当な通信相手（ノード１００Ｃ）であることの確認（認証）をした上で、ノード１００Ｂ（ノード１００Ｃ）との間でＩＫＥフェーズ２以降の処理を行う。
【００１３】
次に、図１を用いて、ノード１００（１００Ａ〜Ｃ）の基本的構成を説明する。
なお、ノード１００Ａは、ノード１００Ｂ，Ｃと同様の構成であるので、ノード１００（１００Ａ〜Ｃ）の構成は、図１の通信主体のノード１００Ａの構成を用いて説明する。
【００１４】
ノード１００（１００Ａ〜Ｃ）は、ネットワーク４経由で各種情報の送受信を行うインターフェース部１０１と、ＩＫＥを用いて通信相手のノード１００Ｂ，ＣとのＩＫＥによるＳＡの折衝処理を行う処理手段１２０と、ＳＡに関する各種情報を記憶する記憶手段１１０とを含んで構成される。
【００１５】
（処理手段）
処理手段１２０は、ＩＫＥ処理部１２１と、公開鍵証明書取得部１２２と、検証部１２３とを含んで構成される。
ＩＫＥ処理部１２１は、ノード１００Ｂとの間でＩＫＥフェーズ１（ＩＳＡＫＭＰ ＳＡの折衝）を実行する。具体的には、１）ノード１００Ｂからノード１００ＢのＩＰアドレス、公開鍵証明書およびデジタル署名を含むＩＳＡＫＭＰ ＳＡ用データ（メッセージ）を受信し、２）これに応じてノード１００ＡのＩＳＡＫＭＰ ＳＡ用データ（メッセージ）を作成し、３）このメッセージをノード１００Ｂへ送信してノード１００ＢとのＩＳＡＫＭＰ ＳＡの折衝を行う。
【００１６】
公開鍵証明書取得部１２２は、ＩＫＥフェーズ１のＩＳＡＫＭＰ ＳＡの折衝開始前に、ネットワーク４経由で、通信相手のノード１００Ｃの認証局である認証局２００Ｂから認証局２００Ｂの公開鍵証明書を取得する。そして、認証局２００Ｂの公開鍵証明書を公開鍵証明書記憶部１１１に格納し、ノード１００Ａ（自身のノード）の公開鍵証明書等をＩＫＥ用データ記憶部１１２に格納する。
【００１７】
検証部１２３は、ノード１００Ｂから送信されたＩＳＡＫＭＰ ＳＡ用データに含まれる公開鍵証明書を、後記する公開鍵証明書記憶部１１１に記憶された認証局２００Ｂの公開鍵証明書で検証し、ノード１００Ｂから送信された公開鍵証明書が正当な公開鍵証明書であるか否かを判断する。また、ノード１００Ｂから送信された公開鍵証明書が、正当な公開鍵証明書であると判断したときに、その公開鍵証明書の公開鍵でノード１００Ｂのデジタル署名を検証する。つまり、認証局２００Ｂから取得した公開鍵証明書の検証と、デジタル署名の検証との２つのステップでノード１００Ｂが通信相手（ノード１００Ｃ）であるか否かを確認する。
これら処理手段１２０の各構成要素の動作は、後記する通信処理手順の項で詳細に説明する。
【００１８】
（記憶手段）
次に、記憶手段１１０を説明する。記憶手段１１０は、公開鍵証明書記憶部１１１と、ＩＫＥ用データ記憶部１１２とを含んで構成される。
【００１９】
公開鍵証明書記憶部１１１は、公開鍵証明書取得部１２２が取得した認証局２００Ｂの公開鍵証明書を記憶する。
【００２０】
ＩＫＥ用データ記憶部１１２は、ノード１００Ｂとの間のＩＫＥによる折衝（ＩＳＡＫＭＰ ＳＡの折衝）用の各種データを記憶する。ＩＳＡＫＭＰ ＳＡの折衝用のデータとは、ノード１００Ａが認証局２００Ａから取得した秘密鍵、公開鍵証明書、ＩＳＡＫＭＰ ＳＡ用のパラメータの候補、ノード１００Ａの鍵情報、ノード１００ＡのＩＤ（ＩＰアドレス）等である。
ＩＫＥ処理部１２１は、このＩＫＥ用データ記憶部１１２のデータを読み出して、ＩＳＡＫＭＰ ＳＡの折衝用メッセージを作成する。
【００２１】
＜通信処理手順＞
次に、図２および図３を用いてノード１００（１００Ａ，Ｂ）の基本的通信処理手順を説明する。
【００２２】
まず、ノード１００ＢとのＩＫＥによるＳＡ（ＩＳＡＫＭＰ ＳＡ）を開始する前に、ノード１００Ａの公開鍵証明書取得部１２２は、認証局２００Ａからノード１００Ａの秘密鍵と、この秘密鍵の対となる公開鍵の公開鍵証明書とを取得する（ステップＳ１０１）。そして、これらの情報をＩＫＥ用データ記憶部１１２に格納する。併せて、ノード１００Ｃの認証局である認証局２００Ｂの公開鍵証明書を取得し（ステップＳ１０２）、この公開鍵証明書を公開鍵証明書記憶部１１１に格納する。
【００２３】
このとき、ノード１００Ｂも、ノード１００ＡのステップＳ１０１およびステップＳ１０２と同様に、認証局２００Ｂからノード１００Ｂの秘密鍵とこの秘密鍵の対となる公開鍵の公開鍵証明書とを取得し（ステップＳ１０３）、ノード１００Ａの認証局である認証局２００Ａから公開鍵証明書を取得しておく（ステップＳ１０４）。
【００２４】
次に、ノード１００Ａは、ノード１００Ｂから送信されたＩＫＥフェーズ１（ＩＳＡＫＭＰ ＳＡの折衝）の第１メッセージを受信してＩＫＥを開始する。すなわち、ＩＳＡＫＭＰ ＳＡのパラメータの候補、ノード１００Ｂの鍵情報、ノード１００ＢのＩＤ（ＩＰアドレス）、ノード１００Ａの公開鍵証明書の要求等を受信すると（ステップＳ２０１）、ノード１００ＡはＩＫＥの処理を開始する。
【００２５】
具体的には、ノード１００ＡがＩＫＥフェーズ１の第１メッセージを受信すると、ＩＫＥ処理部１２１が、１)ノード１００Ｂから送信されたＩＳＡＫＭＰ ＳＡパラメータ候補からＩＳＡＫＭＰ ＳＡパラメータを選択し、２)ノード１００Ａの鍵情報を作成し、３)ＩＫＥ用データ記憶部１１２から読み出したノード１００Ａの秘密鍵でノード１００Ａの署名（デジタル署名）を作成し、４)これらの情報に、ノード１００Ａの公開鍵証明書、ノード１００ＡのＩＰアドレスおよびノード１００Ｂの公開鍵証明書の要求を含めたＩＫＥフェーズ１の第２メッセージを作成する。そして、このメッセージをノード１００Ｂへ送信する（ステップＳ２０２）。
【００２６】
次に、ノード１００Ａは、ノード１００Ｂから送信されたＩＫＥフェーズ１の第３メッセージ（ノード１００Ｂの公開鍵証明書および署名）を受信すると（ステップＳ２０３）、図３のステップＳ３０１へ進み、ステップＳ２０３で受信したノード１００Ｂの署名の検証を行う。つまり、ノード１００Ｂがノード１００Ａの通信相手（ノード１００Ｃ）であるか否かを判断する。
【００２７】
このときのノード１００Ａの処理手順を、図３を用いて具体的に説明する。
まず、検証部１２３が、ノード１００Ｂの認証局である認証局２００Ｂの公開鍵証明書を公開鍵証明書記憶部１１３から読み出し、ステップＳ２０３で取得した公開鍵証明書が正当なものであるか否かを検証する（ステップＳ３０１）。次に、ステップＳ２０３で受信した公開鍵証明書が正当なものであることが検証できたとき（ステップＳ３０２のＹｅｓ）、ステップＳ３０３へ進む。
【００２８】
一方、検証部１２３が、ステップＳ２０３で受信した公開鍵証明書が正当なものでないと判断したとき（ステップＳ３０２のＮｏ）、ノード１００ＢへＩＫＥフェーズ１（ＩＳＡＫＭＰ ＳＡ）の折衝が失敗した旨を通知し、処理を終了する（ステップＳ３０６）。つまり、ノード１００Ａは、アクセスしてきたノード１００Ｂの公開鍵証明書が正当なものか否かを確認し、正当なものではないときは、なりすまし等によるアクセスの可能性もあるので、その後のＩＰｓｅｃＳＡの処理を行わないようにする。
【００２９】
公開鍵証明書が正当なものであることの確認ができたステップＳ３０３では、ステップＳ２０３で受信した公開鍵証明書で、検証部１２３がノード１００Ｂの署名の検証を行う。
具体的には、検証部１２３がステップＳ２０３で受信した公開鍵証明書の公開鍵で、ノード１００Ｂの署名に含まれる暗号文が復号できるか否かを判断する。ここで、ステップＳ２０３で受信した公開鍵証明書の公開鍵で、署名に含まれる暗号文を検証部１２３が復号できたとき（ステップＳ３０４のＹｅｓ）、ステップＳ３０５へ進む。
そして、ＩＫＥ処理部１２１が、ノード１００Ｂとの間でＩＳＡＫＭＰ ＳＡを確立し、ＩＫＥフェーズ２以降の処理を行う（ステップＳ３０５）。すなわち、ノード１００Ａは、ノード１００Ｂが通信相手（ノード１００Ｃ）であると確認できたとき、その後のＩＰｓｅｃＳＡの処理を行うようにする。
【００３０】
なお、ステップＳ３０４において、検証部１２３がノード１００Ｂから送信された公開鍵証明書の公開鍵で、ノード１００Ｂの署名に含まれる暗号文が復号できなかったとき（ステップＳ３０４のＮｏ）、ＩＫＥ処理部１２０は、ノード１００ＢへＩＫＥフェーズ１（ＩＳＡＫＭＰ ＳＡ）の折衝が失敗した旨を通知し、処理を終了する（ステップＳ３０６）。すなわち、ノード１００Ｂは、ノード１００ＡのＩＰｓｅｃの通信相手（ノード１００Ｃ）ではないと判断し、ＩＰｓｅｃＳＡの処理を行わないようにする。
【００３１】
このようにすることで、ノード１００Ａはノード１００Ｂが通信相手（ノード１００Ｃ）であることを確認した上でＩＰｓｅｃＳＡを確立するようにすることができる。
【００３２】
＜特徴的構成＞
次に、本発明の実施の形態であるノード３００（３００Ａ〜Ｃ）を含むネットワーク接続システムの特徴的構成および処理手順について適宜図１〜図３を参照しつつ、図４〜図６を用いて説明する。なお、ＩＫＥフェーズ１の第１メッセージを送信する側のノードをノード３００Ｂ（請求項における他のネットワーク接続機器）とし、ＩＫＥフェーズ１の第１メッセージを受信する側のノードをノード３００Ａとする。また、ノード３００Ａの通信相手のノード（通信相手として意図しているノード）をノード３００Ｃとする。
図４は、本発明の実施の形態であるノードを含むネットワーク接続システムの構成を示したブロック図である。
図５および図６は、本発明の実施の形態であるノードを含むネットワーク接続システムの処理手順を示したシーケンス図である。
なお、前記した基本的構成と同様の構成要素は同じ符号を付して、説明を省略する。
【００３３】
本実施の形態の特徴は、ノード３００Ａが、１)通信相手（ノード３００Ｃ）の公開鍵証明書の識別情報とＩＰアドレスとの対応関係を示したＩＰアドレステーブルを格納し、２)ノード３００ＢからＩＫＥで受信したＩＰアドレスと公開鍵証明書との組み合わせがＩＰアドレステーブルに記憶されている（ある）とき、ノード３００Ｂを通信相手（ノード３００Ｃ）と判断して、ＩＰｓｅｃＳＡを確立可能とするように構成されていることである。
【００３４】
すなわち、ノード３００Ａは、前記したノード１００Ａの基本的構成に、ＩＰアドレステーブルを作成するＩＰアドレステーブル作成部１２４と、このＩＰアドレステーブルを記憶するＩＰアドレステーブル記憶部１１３とを加えた構成となっている。また、検証部１２３は、ノード３００ＢからＩＫＥで受信したＩＰアドレスと公開鍵証明書との組み合わせがＩＰアドレステーブルにあるか否かを判断する。そして検証部１２３で、ノード３００Ｂから受信したＩＰアドレスと公開鍵証明書との組み合わせがＩＰアドレステーブルにあると判断したときに、ＩＫＥ処理部１２１は、ノード３００Ｂとの間でＩＳＡＫＭＰ ＳＡを確立し、ＩＫＥのフェーズ２以降の処理を行うようにする。
【００３５】
以下に、本実施の形態の構成要素を説明する。
ＩＰアドレステーブル作成部１２４は、通信相手（ノード３００Ｃ）のＩＰアドレスと認証局２００Ｂから取得した通信相手（ノード３００Ｃ）の公開鍵証明書との対応関係を示したＩＰアドレステーブルを作成する。
【００３６】
表１は、ＩＰアドレステーブル作成部１２４が作成するＩＰアドレステーブルを例示したものである。
【００３７】
【表１】
2005244573.tif 000003
【００３８】
表１に例示されるように、ＩＰアドレステーブルは、ノード３００ＣのＩＰアドレスと、そのノード３００Ｃの公開鍵証明書の識別情報とから構成される。
例えば、表１のＩＰアドレステーブルのＮｏ．１の情報は、ＩＰアドレス「aaa.aaa.aaa.aaa」のノード３００Ｃの公開鍵証明書の識別情報は「xxx」であることを示している。
【００３９】
ここで、通信相手（ノード３００Ｃ）のＩＰアドレスおよび公開鍵証明書は、ノード３００Ａのユーザが通信相手（ノード３００Ｃ）から事前に書面やメール等で入手しておくものとする。すなわち、ノード３００Ａのユーザが、ノード３００ＣからＩＰアドレスおよび公開鍵証明書の通知等を受けて、図示しない入力手段（キーボードやマウス等）を介してノード３００Ａに入力し、ノード３００Ａの記憶手段１１０等で記憶するものとする。
【００４０】
また、公開鍵証明書の識別情報は、公開鍵証明書取得部１２２が認証局２００から取得した公開鍵証明書の、１)Subjectフィールド（公開鍵証明書の所有者の情報が書き込まれるフィールド）に記載された文字列から作成するようにしても良いし、２)Issuerフィールド（当該公開鍵証明書を発行した認証局２００Ｂの識別情報が書き込まれるフィールド）に記載された文字列とSerial Numberフィールド（認証局２００が作成した公開鍵証明書の通し番号が書き込まれるフィールド）の文字列との組みあわせから作成するようにしても良い。
【００４１】
ここで、公開鍵証明書の識別情報として、Subjectフィールドの文字列の他、Issuerフィールドの文字列とSerial Numberフィールドの文字列との組み合わせも用いることができるのは、これらの情報の組み合わせでもノード３００Ａは「どの認証局２００が作成（発行）した、どの公開鍵証明書であるか」を特定（識別）できるからである。すなわち、ノード３００Ａが取得した公開鍵証明書を識別することができるからである。
【００４２】
このように、ＩＰアドレステーブルで用いる公開鍵証明書の識別情報は、公開鍵証明書の識別ができる情報であれば、前記した情報に限定されない。また、ＩＰアドレスの形式はＩＰｖ４（Internet Protocol version 4）でも良いし、ＩＰｖ６（Internet Protocol version 6）でも良い。さらに、本実施の形態では、ノード３００のＩＤ（識別情報）としてＩＰアドレスを用いることとしたが、ネットワーク４上でノード３００を識別できる情報であれば、ＩＰアドレスに限定されない。
【００４３】
ＩＰアドレステーブル作成部１２４が作成したＩＰアドレステーブルは、ＩＰアドレステーブル記憶部１１３に格納される。
【００４４】
検証部１２３は、前記した基本的構成の項で述べた公開鍵証明書の検証機能の他に、ＩＫＥ処理部１２１がＩＫＥフェーズ１でノード３００ＢのＩＰアドレスおよび公開鍵証明書を受信すると、これらの組みあわせがＩＰアドレステーブルに記憶されているか否かを判断し、ノード３００Ｂが通信相手（ノード３００Ｃ）であることの検証を行う機能を有する。
【００４５】
＜処理手順＞
次に、適宜図１〜図４を参照しつつ、図５および図６を用いてノード３００（３００Ａ，Ｂ）の通信処理手順を説明する。ここでも、基本的処理手順と同様にＩＫＥのフェーズ１で、デジタル署名認証方式（アレグレッシブモード）を用いた場合を例として通信処理手順を説明する。
【００４６】
まず、ノード３００Ａは、ＩＫＥ開始前に、ＩＰアドレステーブル作成部１２４で、ノード３００Ｃの公開鍵証明書のSubjectフィールドの文字列およびノード３００ＣのＩＤ（ＩＰアドレス）の入力を受けて、これらの対応関係を示したＩＰアドレステーブルを作成する（図５のステップＳ４００）。
なお、ＩＰアドレステーブルの作成は、事前に記憶部１１０等に記憶されたＩＰアドレスおよび公開鍵証明書を読み出して作成するようにしても良い。
【００４７】
図５のステップＳ４０１〜ステップＳ５０３の処理は、図２のステップＳ１０１〜ステップＳ２０３の処理と同様なので説明を省略し、ステップＳ５０３の後の処理を示す図６のステップＳ６０１の処理から説明する。
【００４８】
ステップＳ６０１では、検証部１２３が、１)ステップＳ５０１（ＩＫＥフェーズ１の第１メッセージ）で受信したＩＤ（ＩＰアドレス）と、２)ステップＳ５０３（ＩＫＥフェーズ１の第３メッセージ）で受信した公開鍵証明書のSubjectフィールドの文字列の組み合わせをＩＰアドレステーブル記憶手段１１３のＩＰアドレステーブルから検索する。つまり、検証部１２３は、ノード３００Ｂから送信された公開鍵証明書とＩＰアドレスとの組み合わせが、ＩＰアドレステーブルに有るか否かを判断する。
【００４９】
ここで、検証部１２３が、ノード３００Ｂから送信された公開鍵証明書とＩＰアドレスとの組み合わせがＩＰアドレステーブルに有る（記憶されている）と判断したとき（ステップＳ６０２のＹｅｓ）、ステップＳ７０１以降の処理を行う。このステップＳ７０１〜ステップＳ７０６の処理は、図３のステップＳ３０１〜ステップＳ３０６の処理と同様なので説明を省略する。
【００５０】
一方、検証部１２３が、ノード３００Ｂから送信された公開鍵証明書とＩＰアドレスの組み合わせが無いと判断したとき（ステップＳ６０２のＮｏ）、すなわちこれらの情報のうち、１）両方ともＩＰアドレステーブルに記載されていないと判断したとき、２)どちらか一方しかＩＰアドレステーブルに記載されていないと判断したとき、３)これらの情報の組み合わせがＩＰアドレステーブルに記載されている組み合わせと異なると判断したとき、ＩＫＥ処理部１２０は、ノード３００ＢへＩＫＥフェーズ１（ＩＳＡＫＭＰ ＳＡ）の折衝が失敗した旨を通知し（ステップＳ７０６）、処理を終了する。
【００５１】
このようにノード３００（３００Ａ）が、１）公開鍵証明書の正当性の検証、２）デジタル署名の検証、３）ＩＰアドレスと公開鍵証明書の組み合わせの確認の３つのステップを実行することで、ノード３００Ｂが確かに通信相手（ノード３００Ｃ）であることを確認した上で、ＩＰｓｅｃＳＡの確立を行うことができる。つまり、通信主体であるノード３００Ａが、なりすましのＩＰアドレスでアクセスしてきたノード３００とＩＰｓｅｃＳＡを確立してしまうことを防ぐことができるので、よりセキュリティ度の高いネットワーク接続を行うことができる。
【００５２】
本発明は発明の趣旨を逸脱しない範囲で応用可能である。例えば、前記した実施の形態では、ノード３００ＡがＩＫＥフェーズ１における通信相手の認証にデジタル認証方式（アレグレッシブモード）を用いる場合を例として説明したが、公開鍵証明書とノード３００ＣのＩＰアドレス（ＩＤ）の交換を行う方法であれば、デジタル認証方式（メインモード）を用いる場合や、改良型公開鍵暗号化方式（アレグレッシブモード、メインモード）を用いる場合にも適用である。
【００５３】
また、前記した実施の形態では、ノード３００（３００Ａ〜Ｃ）が格納するＩＰアドレステーブルは、ノード３００（３００Ａ〜Ｃ）内のＩＰアドレステーブル作成部１２４が作成することとしたが、外部のサーバ等（図示せず）で作成するようにしても良い。すなわち、外部のサーバ等で作成したＩＰアドレステーブルを処理手段１２０等によりネットワーク４経由で取得するようにしても良い。
【００５４】
本実施の形態に係るネットワーク接続機器は、前記したような処理を実行させるネットワーク接続用プログラムによって実現することができ、そのプログラムをコンピュータによる読み取り可能な記憶媒体に記憶して提供することが可能である。また、そのプログラムを、ネットワークを通して提供することも可能である。
【図面の簡単な説明】
【００５５】
【図１】本発明の実施の形態であるノードを含むネットワーク接続システムの基" 本発明の実施の形態であるノードを含むネットワーク接続システムの基本的構成を示したブロック図である。
【図２】本発明の実施の形態であるノードを含むネットワーク接続システムの基" 本発明の実施の形態であるノードを含むネットワーク接続システムの基本的処理手順を示したシーケンス図である
【図３】本発明の実施の形態であるノードを含むネットワーク接続システムの基" 本発明の実施の形態であるノードを含むネットワーク接続システムの基本的処理手順を示したシーケンス図である
【図４】本発明の実施の形態であるノードを含むネットワーク接続システムの処" 本発明の実施の形態であるノードを含むネットワーク接続システムの構成を示したブロック図である。
【図５】本発明の実施の形態であるノードを含むネットワーク接続システムの処" 本発明の実施の形態であるノードを含むネットワーク接続システムの処理手順を示したシーケンス図である。
【図６】本発明の実施の形態であるノードを含むネットワーク接続システムの処" 本発明の実施の形態であるノードを含むネットワーク接続システムの処理手順を示したシーケンス図である。
【符号の説明】
【００５６】
１００（１００Ａ〜Ｃ）  ノード（ネットワーク接続機器）
１０１  インターフェース部
１１０  記憶手段
１１１  公開鍵証明書記憶部
１１２  ＩＫＥ用データ記憶部
１１３  ＩＰアドレステーブル記憶部
１２０  処理手段
１２１  ＩＫＥ処理部
１２２  公開鍵証明書取得部
１２３  検証部
１２４  ＩＰアドレステーブル作成部
２００（２００Ａ，Ｂ）  認証局
３００（３００Ａ〜Ｃ）  ノード（ネットワーク接続機器）
【図１】
2005244573.tif 000004
【図２】
2005244573.tif 000005
【図３】
2005244573.tif 000006
【図４】
2005244573.tif 000007
【図５】
2005244573.tif 000008
【図６】
2005244573.tif 000009