(57)【要約】 【課題】    該当するSPがSPDになくてもパケットにIPsec処理が要求されていれば、許容できる新しいSPを生成してIPsec処理を適用した通信ができるようにする。【解決手段】  自ノード装置が使えるIPsec情報を格納するSecurity許容リストと、Security Policyを格納するSecurity Policy Databaseとを備え、他ノード装置からIKE交渉の要求を受けたときに、その交渉に使われるSecurity PolicyがSecurity Policy Databaseに登録されていなければIKE交渉の要求の内容とSecurity許容リストの設定内容を比較し、IKE交渉の要求を許容できるときは新たなSecurity Policyを生成して設定し、Security Policy Databaseに登録する。【選択図】  図１
2007251300.tif 000002
【特許請求の範囲】
【請求項１】
Ipsecを用いた通信とIKE交渉ができる複数のノード装置が接続されたネットワークシステムにおいて、
自ノード装置が使えるIPsec情報を格納するSecurity許容リストと、Security Policyを格納するSecurity Policy Databaseとを備え、
他ノード装置からIKE交渉の要求を受けたときに、その交渉に使われるSecurity Policyが前記Security Policy Databaseに登録されていなければ前記IKE交渉の要求の内容と前記Security許容リストの設定内容を比較し、前記IKE交渉の要求を許容できるときは新たなSecurity Policyを生成して設定し、前記Security Policy Databaseに登録する
ことを特徴とするノード装置。
【請求項２】
IPsecを用いた通信とIKE交渉ができる複数のノード装置が接続されたネットワークシステムにおいて、
自ノード装置が使えるIPsec情報を格納するSecurity許容リストと、Security Policyを格納するSecurity Policy Databaseと、他ノード装置と通信するアプリケーションとを備え、
前記アプリケーションが他ノード装置と通信を始める際にIPsec適用の要求がされたとき、送信するパケットのSecurity Policyが前記Security Policy Databaseになければ前記パケットの内容と前記Security 許容リストの設定内容が比較され、IPsec適用が許容できるときは新たにSecurity Policy を生成して設定し、前記Security Policy Databaseに登録する
ことを特徴とするノード装置。
【請求項３】
IPsecを用いた通信とIKE交渉ができる複数のノード装置が接続されたネットワークシステムにおいて、
他ノード装置のIKE交渉の要求をうけたときに、その交渉に使われるSecurity PolicyがSecurity Policy Databaseに登録されていなければ、以下の手順によって新Security Policyが動的に生成されてIKE交渉が継続することを特徴とするSecurity Policy動的生成方法。
（１）IKE交渉の要求の内容とSecurity許容リストの設定内容を比較する。このとき自ノード装置がIKE交渉の要求の内容を許容できなければ他ノード装置にIKE交渉の中断を通知する（Security許容リスト比較手順）。
（２）自ノード装置がIKE交渉の要求を許容できれば、新Security Policyを生成してからIKE交渉の要求とSecurity許容リストの情報をもとに設定し、Security Policy Databaseに登録する（新Security Policy生成手順）。
（３）自ノード装置が新Security Policyに基づいて他ノード装置とIKE交渉を継続し、必要な追加情報を新Security Policyに設定する（新Security Policy設定手順）。
【請求項４】
IPsecを用いた通信とIKE交渉ができる複数のノード装置が接続されたネットワークシステムにおいて、
他ノード装置と通信する自ノード装置のアプリケーションがIPsecの適用を要求するときは、以下の手順によって新Security Policyが動的に生成されてIKE交渉がされることを特徴とするSecurity Policy動的生成方法。
（１）送信するパケットに使われるSecurity PolicyがSecurity Policy Databaseになければ、前記パケットの内容とSecurity許容リストの設定内容を比較する。このときパケットにIPsecを適用することが許容できなければ、前記アプリケーションにエラー情報を通知する（Security許容リスト比較手順）。
（２）パケットにIPsecを適用することが許容できれば、新Security Policyを生成してからパケットとSecurity許容リストの情報をもとに設定し、Security Policy Databaseに登録する（新Security Policy生成手順）。
（３）自ノード装置が新Security Policyに基づいて他ノード装置とIKE交渉を継続し、必要な追加情報を新Security Policyに設定する（新Security Policy設定手順）。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はSecurity Architecture for the Internet Protocol（以下IPsecという）と動的な鍵管理をするInternet Key Exchange（以下IKEという）を使うノード装置に関する技術であり、特に、該当するSecurity Policy（以下SPという）がSecurity Policy Database（以下SPDという）にないときでもIKE交渉を継続させる技術に関する。
【背景技術】
【０００２】
インターネットに接続された複数のノード装置間で伝送されるパケットを保護する技術としてIPsecが標準化されている（例えば非特許文献１参照）。このIPsecは、ノード装置間やネットワーク間でパケット通信するときに、暗号アルゴリズムや認証アルゴリズムと、それらで使われる暗号鍵や認証鍵などの情報を含むSecurity Association for IPsec（以下IPsec SAという）を双方のノード装置で生成してパケットに適用するので、IPレベルで保護をしてセキュアな通信をすることができる。
【０００３】
そのIPsec SAの管理方法には静的鍵管理と動的鍵管理の２とおりがあり、前者の静的鍵管理の場合は、双方のノード装置で固定のIPsec SAが生成されて使われる。そのため、暗号鍵と認証鍵も固定となり、通常はノード装置の管理者によって手動で設定されている。
後者の動的鍵管理の場合は、双方のノード装置で設定されるSPを基にし、標準化されたIKEにより必要に応じてノード装置間で交渉され、暗号鍵と認証鍵が動的に生成される（例えば非特許文献２及び非特許文献３参照）。また、IPsec SAを動的に管理して有効期間を設定できるため、静的鍵管理の場合と比較して、よりセキュアな通信をすることができる。
【０００４】
IPsecではSPを格納するSPDとIPsec SAを格納するSecurity Association Database（以下SADという）の２つのDatabaseが使われる。有効なSPはSPDに登録すれば使えるようになり、有効なIPsec SAもSADに登録すれば使えるようになる。ただし登録されるSPやIPsec SAの無効エントリについては管理が定められていない（例えば、事前にエントリのみが登録されており有効／無効の切り替えが可能、など）。そこで以下では、SPDに有効なSPが登録され、SADに有効なIPsec SAが登録されていることを前提として説明するが、例えば事前に無効エントリを登録しているような場合には、新たにエントリを生成して登録することは無効エントリを有効エントリに切り替えることと同義であるものとする。
ノード装置はSPDを検索し対応するSPを確認してから送受信するパケットにIPsecを適用すべきかどうかを判断しており、その後、SADを検索して適用するIPsec SAを取得する。SPDに登録されたSPには、パケットにIPsecを適用する（Apply）か、適用しない（Bypass）か、処理を中断する（Drop）か、いずれかの情報が含まれており、そのSPに基づいて処理される。
【０００５】
図６はノード装置がパケットを送信するときの基本的な処理を説明する概略図である。パケットが送信されるときは、その全ての対応するSPについてSPDが検索され、検索されたSPの情報によって、ApplyとBypass、Dropのいずれかの処理が適用される。Applyが適用されると、SADが検索されて適用するIPsec SAが取得され決定される。その後、IPsec SAの情報に応じてIPsec処理され、処理されたパケットが相手ノード装置に送信される。
ノード装置が送信するパケットに対応するSPの情報がApplyであり、SADの検索によってIPsec SAがないことがわかればノード装置はIKE交渉をして新たにIPsec SAを生成する。IKE交渉するときは、指定されたSPの情報に従って相手ノード装置と交渉し、暗号鍵や認証鍵を含む新規IPsec SAを生成してSADに登録される。こうしてパケットにIPsec処理をすることができるようになるのである。
【０００６】
図７はノード装置がパケットを受信するときの基本的な処理を説明する概略図である。パケットが受信されると、そのパケットがIPsec 処理されていれば最初にSADが検索される。そして検索されたIPsec SAに基づき、パケットの復号化と認証確認がされて平文パケットが取り出される。
次に全ての平文パケットについてSPDが検索され、検索されたSPの情報に基づいてパケットが処理される。
【０００７】
【非特許文献１】Security Architecture for the Internet Protocol（RFC2401）、1998、Stephen Kent、Randall Atkinson：（URL  http://www.ietf.org/rfc/rfc2401.txt）
【非特許文献２】The Internet Key Exchange（IKE）（RFC2409）、1998、Dan Harkins、Dave Carrel：（URL  http://www.ietf.org/rfc/rfc2409.txt）
【非特許文献３】Internet Key Exchange（IKEv2）Protocol（RFC4306）、2005、C.Kaufman、Ed：（URL  http://www.ietf.org/rfc/rfc4306.txt）
【発明の開示】
【発明が解決しようとする課題】
【０００８】
ところが上記のような従来技術の場合、各ノード装置は事前に全てのSPを登録し保持しておく必要があって、そのSPをノード装置管理者等が手動で設定する必要があるが、図８に示すように、図示しない他ノード装置からIKE 交渉の要求を受けたときに対応するSPがSPDに登録されていなければ、他ノード装置がIKE交渉を継続できないと判断してIKE処理が中断されるため、IPsecが適用されたパケットを受信することができないという問題があった。
また、図６に示すように図示しない他ノード装置へパケットを送信するときに、アプリケーションがIPsec処理を要求する場合であっても、対応するSPがSPDになければ、相手ノード装置にIPsec処理をするべきではないと判断され、IPsec処理後のパケットを相手ノード装置に送信することができないという問題があった。
なお、パケット送信時に対応するSPがSPDになければパケットを破棄するか平文のまま送信するかについては明確に規定されていない。
【０００９】
そこで本発明は、かかる従来技術の問題点に鑑みてなされたものであり、該当するSPがSPDになくてもパケットにIPsec処理が要求されていれば、許容できる新しいSPを生成してSPDに登録し、パケットにIPsec処理を適用した通信ができるようにすることを目的とする。
【課題を解決するための手段】
【００１０】
そこで第１及び第３の発明は、Ipsecを用いた通信とIKE交渉ができる複数のノード装置が接続されたネットワークシステムにおいて、自ノード装置が使えるIPsec情報を格納するSecurity許容リストと、Security Policyを格納するSecurity Policy Databaseとを備え、他ノード装置からIKE交渉の要求を受けたときに、その交渉に使われるSecurity Policyが前記Security Policy Databaseに登録されていなければ前記IKE交渉の要求の内容と前記Security許容リストの設定内容を比較し、前記IKE交渉の要求を許容できるときは新たなSecurity Policyを生成して設定し、前記Security Policy Databaseに登録することを特徴としている。
また第２及び第４の発明は、自ノード装置が使えるIPsec情報を格納するSecurity許容リストと、Security Policyを格納するSecurity Policy Databaseと、他ノード装置と通信するアプリケーションとを備え、前記アプリケーションが他ノード装置と通信を始めてIPsec適用の要求がされたとき、送信するパケットのSecurity Policyが前記Security Policy Databaseになければ前記パケットの内容と前記Security 許容リストの設定内容が比較され、IPsec適用が許容できるときは新たにSecurity Policy を生成して設定し、前記Security Policy Databaseに登録することを特徴としている。
【００１１】
このようになっているので、該当するSPがSPDになくても、パケットにIPsec処理を適用することが要求されていれば、許容可能な新しいSPを生成してSPDに登録し、パケットのIPsec処理をすることができるようになる。
【発明の効果】
【００１２】
第１及び第３の発明によれば、他ノード装置が要求したIKE交渉に使われるSecurity PolicyがSecurity Policy Databaseに登録されていなかったとしても、自ノード装置が許容できるSecurity Policyを生成してSecurity Policy Databaseに登録するので、IKE交渉とIPsec処理を継続することができるのである。
また、第２及び第４の発明によれば、自ノード装置のアプリケーションが送信するパケットにIPsec処理を適用することが要求され、適用すべきSecurity PolicyがSecurity Policy Databaseに登録されていなかったとしても、自ノード装置が許容できるSecurity Policyを生成してSecurity Policy Databaseに登録するので、IKE交渉とIPsec処理を継続することができるのである。
【発明を実施するための最良の形態】
【００１３】
以下、本発明の実施の形態として、ノード装置間でパケットを送受信するときに対応するSPがSPDにないときでもIPsecを適用した通信ができるネットワークシステムについて、IPsecとIKEv1を使用する場合の例を図１〜図５に基づいて説明する。まず図１、２を用いて全体的な動作について説明する。
【実施例１】
【００１４】
図１は自ノード装置に登録されていないSPについて、自ノード装置が図示しない他ノード装置からIKE交渉を受けたときの処理の概要を説明する図である。自ノード装置が他ノード装置からIKE交渉を受けるとResponderとして動作を始める。まず自ノード装置がIKE 1st messageを受信すると、対象となるSPについてSPDが検索される（A11）。対象となるSPがSPDにあれば、そのSPの情報を用いてIKE交渉が開始され（A12）、交渉によって生成したIPsec SAがSADに登録される（A13）。その後、登録されたIPsec SAを用いて暗号化と認証がされ、IPsecパケットが送受信される。
しかし、対象となるSPがSPDになければ受信したIKE 1st messageの設定内容がSecurity許容リストと比較され（A14）、自ノード装置が許容できるときはSPが生成されてSPDに登録される（A15）。その後は対象となるSPがあるときと同じ処理がされる。このような処理が実施されるので、対象となるSPがSPDにないときでもIKE交渉によって、IPsec SAが生成される。
【実施例２】
【００１５】
図２は自ノード装置のアプリケーションがパケットを送信するときの処理の概要を説明する図であり、送信するパケットにIPsecが適用されるときの処理を示している。自ノード装置がパケットを送信するときは、初めに対象となるSPがSPDにあるかどうかが確認される（A21）。SPがSPDになければ送信するパケットとSecurity許容リストが比較され（A22）、SPが生成されてSPDに登録される（A23）。その後SADが検索されてSPに対応するIPsec SAが取り出される（A24）。IPsec SAがなければIKE交渉を始めてIPsec SAが生成され、SADへ登録される（A25）。この登録によって自ノード装置はパケットにIPsecを適用して送信することができるようになる。
【００１６】
図３は、自ノード装置がSPDに登録されていないSPについてIKE交渉要求をうけたときの処理手順を示すフローチャートであり、順を追って説明する。まず自ノード装置が相手ノード装置からIKE 1st messageを受信すると（A31）SPDが検索される（A32）。結果としてIKE交渉の対象となるSPがあれば（A33）、そのSPの情報を用いてIKE交渉が開始され（A37）、その後IKE交渉が正常に完了すると（A3A）、生成されたIPsec SAがSADに登録される（A3B）。
しかし、IKE交渉の対象となるSPがSPDになければ（A33）、受信したIKE 1st messageの情報とSecurity許容リストの内容が比較される（A34）。このIKE 1st messageにはIKE phase1 1st messageとIKE phase2 2st messageがあるので、受信した時点でIKE 1st messageの比較内容が異なることがあるが、ここでは比較可能な項目のみについて比較される。その結果、許容可能と判断されれば新規にSPが生成されてSPDに登録され（A35）、許容不可であればIKE交渉が中断する（A36）。
図４はSecurity許容リストのイメージを示している。Security許容リストには許容可能テーブルと許容不可テーブルが含まれており、許容可能テーブルには自ノード装置が許容できるIPsec情報が格納され、許容不可テーブルには自ノード装置が許容不可能なIPsec情報が格納されている。これらの情報とIKE 1st messageの情報を比較することによって、IKE交渉ができるかどうかが判断され、許容不可能と判断されれば他ノード装置にIKE交渉の中断を通知して（A36）IKE処理が中止される。
その後、新規に生成されたSPを基にIKE交渉が開始される（A37）。IKE交渉中に新規SPの未設定の項目を使用する必要が生じたときは、再度Security許容リストの内容が比較され（A38）、許容可能と判断されれば引き続きIKE交渉が継続される（A39）。IKE交渉が正常に完了すれば（A3A）、IPsec SAが生成されてSADに登録される（A3B）。IKE交渉中にSecurity許容リストの内容が比較され（A38）、許容不可能であると判断されれば他ノード装置にIKE交渉の中断を通知して（A36）IKE処理が中止される。
以上説明したように、自ノード装置がSPDに登録されていないSPを用いたIKE交渉の要求を受けても、Security許容リストと比較して許容可能と判断されれば、新規にSPを生成してIKE交渉が継続可能となり、IPsec SAを生成することができるようになる。なお、他ノード装置はIKEの仕組みで規定されている方法（ディジタル署名認証、公開鍵暗号化認証など）で認証されるため、上記の手順により新たな認証を行う必要はない。
【００１７】
図５は自ノード装置のアプリケーションを用いてパケットを送信するときの処理手順を示すフローチャートである。この図５は、IKE交渉の処理だけではなくパケットの送信処理全体を示しており、図３とは異なっている。
自ノード装置のアプリケーションによってパケットの送信要求が出されると（A41）、パケットの情報を基にSPDが検索される（A42）。検索された結果、SPがあればSPの内容が確認され（A43）、ApplyであればSADが検索され（A45）、検索されたIPsec SAの情報を用いて暗号化と認証処理がされ（A46）、IPsecを適用したパケットが送信される（A47）。SPの設定がBypassであれば送信パケットが平文のまま送信され（A47）、Dropであればパケットの送信処理は中断される（A44）。
SPDを検索して（A42）適用すべきSPがなければアプリケーションによるIPsec適用の要求があるかどうかが確認される（A48）（アプリケーションからIPsec適用要求を通知する方法としては、アプリケーションにAPIを提供するなどの方法が考えられる）。IPsec適用の要求がなければ送信パケットは平文のまま送信される（A47）。しかしIPsec適用の要求があれば、Security許容リストから必要な情報が取得され（A49）新規に生成されるSPがSPDに登録される（A4A）。この登録されたSPの情報は、Security許容リストの各項目における優先順位に応じて使用される。
図４に示すSecurity許容リストの許容可能テーブルには、自ノード装置が許容可能なIPsec情報が優先順位をつけて格納されているため、優先順位の高いものから順に新規SPに設定される。
その後、新規に登録されたSPの情報を基に他ノード装置とIKE交渉を始め（A4B）、IKE交渉が正常に完了すると（A4C）IPsec SAが生成されてSADに登録される（A4D）。
以上説明したように対応するSPが自ノード装置のSPDに保持されていないパケットが送信されても、アプリケーションがIPsecの適用を要求し新規にSPを生成してSPDに登録するので、IKE交渉を始めることができ、IPsec SAを生成することができるのである。これ以降、同一アプリケーションが同一他ノード装置に同種類のパケットを送受信するときは、常にIPsecを適用することが可能となる。
【図面の簡単な説明】
【００１８】
【図１】本発明のノード装置がIKE交渉を受けた時の処理を説明する概要図
【図２】本発明のノード装置がパケット送信をする時の処理を説明する概要図
【図３】図１の処理手順を示すフローチャート
【図４】Security許容リストの構成例
【図５】図２の処理手順を示すフローチャート
【図６】従来のノード装置がパケット送信をする時の処理を説明する概要図
【図７】従来のノード装置がパケット受信をする時の処理を説明する概要図
【図８】従来のノード装置がIKE交渉の要求を受けた時の処理を説明する概要図
【符号の説明】
【００１９】
SPD    Security Policy Database
SAD    Security Association Database
SP     Security Policy
IPsec SA      Security Association for IPsec
【図１】
2007251300.tif 000003
【図２】
2007251300.tif 000004
【図３】
2007251300.tif 000005
【図４】
2007251300.tif 000006
【図５】
2007251300.tif 000007
【図６】
2007251300.tif 000008
【図７】
2007251300.tif 000009
【図８】
2007251300.tif 000010