(57)【要約】【課題】リプレイ攻撃チェックを適切に実行する。【解決手段】パケット送信装置は、異なるＱｏＳの優先度が設定されたパケットに対して同一の暗号鍵を用いて該パケットを暗号化し、暗号化したパケットに対して、該パケットに設定されたＱｏＳの優先度ごとに異なる一連のシーケンス番号を付与して送信する。そして、パケット受信装置は、パケット送信装置から受信したパケットに付与されていたシーケンス番号の履歴を優先度ごとに記憶しておき、パケット送信装置からパケットを受信すると、受信したパケットに対して付与されたシーケンス番号を識別し、受信したパケットに設定されたＱｏＳの優先度に対応付けて記憶部に記憶された履歴と照合することで、受信したパケットが既に受信済みかを判定する。そして、パケット受信装置は、受信済みではないと判定すると、異なるＱｏＳの優先度が設定されたパケットに対して同一の復号鍵を用いてパケットを復号する。【選択図】図１
2010273225.tif 000002
【特許請求の範囲】
【請求項１】
パケット送信装置とパケット受信装置とを有するパケット送受信システムであって、
前記パケット送信装置は、
異なる通話品質の優先度が設定されたパケットに対して同一の暗号鍵を用いて暗号化する暗号化部と、
前記暗号化部によって暗号化されたパケットに対して、該パケットに設定された通話品質の優先度ごとに異なる一連のシーケンス番号を付与して送信する送信部とを備え、
前記パケット受信装置は、
前記パケット送信装置から受信したパケットに付与されていたシーケンス番号の履歴を優先度ごとに記憶する記憶部と、
前記パケット送信装置からパケットを受信すると、受信したパケットに対して前記送信部によって付与されたシーケンス番号を識別し、受信したパケットに設定された通話品質の優先度に対応付けて前記記憶部に記憶された履歴と照合することで、受信したパケットが既に受信済みかを判定する判定部と
前記判定部によって受信済みではないと判定された場合に、異なる通話品質の優先度が設定されたパケットに対して同一の復号鍵を用いてパケットを復号する復号部と
を備えたことを特徴とするパケット送受信システム。
【請求項２】
前記パケット送信装置と前記パケット受信装置とは、異なる通話品質の優先度に対して一つのセキュリティアソシエーションを前記パケット受信装置と確立する第一の確立部を備え、
前記パケット送信装置において、前記第一の確立部は、セキュリティアソシエーションを確立する場合に、前記パケット受信装置に対して、前記パケット送信装置から送信されるパケットに設定される通話品質の優先度を識別する優先度識別情報を送信し、
前記パケット受信装置において、前記第一の確立部は、前記パケット送信装置によって送信された優先度識別情報各々を受信すると、該優先度識別情報を前記記憶部に格納し、該優先度識別情報ごとにシーケンス番号の履歴を記憶するように該記憶部を設定することを特徴とする請求項１に記載のパケット送受信システム。
【請求項３】
前記パケット送信装置と前記パケット受信装置とは、異なる通話品質の優先度に対して一つのセキュリティアソシエーションを確立する第二の確立部を備え、
前記第二の確立部は、前記パケット送信装置からパケットを受信すると、受信したパケットに対して設定された通話品質の優先度を示す優先度識別情報が前記記憶部に格納されているか検索し、格納されていないとの検索結果が得られると、受信したパケットに対して設定された通話品質の優先度を示す優先度識別情報を該記憶部に格納し、該優先度識別情報に対応付けてシーケンス番号の履歴を記憶するように該記憶部を設定することを特徴とする請求項１に記載のパケット送受信システム。
【請求項４】
前記パケット送信装置と前記パケット受信装置とは、異なる通話品質の優先度ごとに異なるセキュリティアソシエーションを確立する第三の確立部を備え、
前記第三の確立部は、セキュリティアソシエーションを確立する場合に、セキュリティアソシエーションを確立する通話品質の優先度とは異なる通話品質の優先度についてセキュリティアソシエーションが既に確立されているかを判定し、確立されていると判定した場合に、既に確立されているセキュリティアソシエーションにて用いられる情報を共有するセキュリティアソシエーションを確立することを特徴とする請求項１に記載のパケット送受信システム。
【請求項５】
前記記憶部は、優先度ごとに、前記パケット送信装置から受信したパケットに付与されていたシーケンス番号を所定の数履歴として記憶し、
前記判定部は、受信したパケットに対して付与されたシーケンス番号と前記記憶部に記憶された履歴とを照合する場合に、受信したパケットに付与されたシーケンス番号について、履歴に含まれるシーケンス番号と重複せず、履歴に含まれるシーケンス番号の内最小の番号よりも小さい番号ではないかを照合することで、パケットが受信済みではないかを判定することを特徴とする請求項１〜４のいずれか一つに記載のパケット送受信システム。
【請求項６】
パケットを送信する場合に、異なる通話品質の優先度が設定されたパケットに対して同一の暗号鍵を用いて該パケットを暗号化する暗号化部と、
前記暗号化部によって暗号化されたパケットに対して、該パケットに設定された通話品質の優先度ごとに異なる一連のシーケンス番号を付与して送信する送信部とを備え、
パケットを受信する場合に、
受信したパケットに付与されていたシーケンス番号の履歴を優先度ごとに記憶する記憶部と、
パケットを受信する場合に、受信したパケットに対して前記送信部によって付与されたシーケンス番号を識別し、受信したパケットに設定された通話品質の優先度に対応付けて前記記憶部に記憶された履歴と照合することで、受信したパケットが既に受信済みかを判定する判定部と
前記判定部によって受信済みではないと判定された場合に、異なる通話品質の優先度が設定されたパケットに対して同一の復号鍵を用いてパケットを復号する復号部と
を備えたことを特徴とするパケット送受信装置。
【請求項７】
パケット送信装置とパケット受信装置とを有するパケット送受信方法であって、
パケットを送信する場合に、異なる通話品質の優先度が設定されたパケットに対して同一の暗号鍵を用いて該パケットを暗号化する暗号化ステップと、
前記暗号化ステップによって暗号化されたパケットに対して、該パケットに設定された通話品質の優先度ごとに異なる一連のシーケンス番号を付与して送信する送信ステップと含み、
パケットを受信する場合に、受信したパケットに対して前記送信テップ部によって付与されたシーケンス番号を識別し、前記パケット送信装置から受信したパケットに付与されていたシーケンス番号の履歴を優先度ごとに記憶する記憶部に記憶された履歴の内受信したパケットに設定された通話品質の優先度に対応付けられた履歴と照合することで、受信したパケットが既に受信済みかを判定する判定ステップと
前記判定ステップによって受信済みではないと判定された場合に、異なる通話品質の優先度が設定されたパケットに対して同一の復号鍵を用いてパケットを復号する復号ステップと
を含んだことを特徴とするパケット送受信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パケット送受信システム、パケット送受信装置、および、パケット送受信方法に関する。
【背景技術】
【０００２】
ネットワークにおける脅威の一つとして、リプレイ攻撃がある。リプレイ攻撃では、悪意の第三者は、ネットワーク上において送受信されている認証用のデータを盗聴する。そして、悪意の第三者は、盗聴により取得した認証用のデータをそのまま送信することによって「なりすまし」を行い、他者のシステムに不正なログインを試みる。
【０００３】
ここで、リプレイ攻撃に対する対策としては、シーケンス番号を用いたリプレイ攻撃チェック技術がある。シーケンス番号を用いたリプレイ攻撃チェックについて、図２１に示す例を用いて簡単に説明する。なお、図２１に示す例では、ＩＰｓｅｃを実行するＮｏｄｅ  ＡとＮｏｄｅ  Ｃとが、ＱｏＳによる送信制御を実行するＲｏｕｔｅｒを経由してパケット通信を行う例を示した。
【０００４】
パケットを送信するＮｏｄｅ  Ａは、Ｎｏｄｅ  Ｃに向けて送信するパケットに対して、パケットの優先度に関係なく、パケットを送信する毎に「１」ずつ増やしたシーケンス番号を付与する。そして、Ｎｏｄｅ  Ｃは、Ｎｏｄｅ  Ａから受信したシーケンス番号の受信履歴を記憶しておき、パケットを受信すると、例えば、過去に受信した最大のシーケンス番号から予め定められた数以上小さいシーケンス番号ではないかを判定する。ここで、悪意の第三者が取得したパケットは過去のパケットであり、シーケンス番号が最大のシーケンス番号よりも小さくなるので、Ｎｏｄｅ  Ｃは、小さいと判定すると、パケットを廃棄する。なお、予め定められた数のことを、リプレイウィンドウサイズとも称する。
【０００５】
ところで、ネットワークにおいて通信の品質を保証する技術としてＱｏＳ（Quality  of  Service）が知られている。ＱｏＳによる送信制御を実行する装置は、相対的に低い優先度が設定されたパケットに優先して、相対的に高い優先度が設定されたパケットを送信する。
【０００６】
また、ネットワークセキュリティに関する技術として、例えば、ＩＰｓｅｃ（Security  Architecture  for  Internet  Protocol）が知られている。ＩＰｓｅｃを実行する装置間にてパケットの送受信を行う場合には、パケット送信装置とパケット受信装置とが、暗号の種類や暗号鍵を予め取り決め、取り決めた暗号の種類や暗号鍵を用いてパケットの送受信を行う。なお、ここで、ＩＰｓｅｃを実行する装置によって暗号の種類や暗号鍵を取り決めることをＳＡ（Security  Association、セキュリティアソシエーション）を確立すると称する。
【０００７】
また、リプレイ攻撃チェックを行う技術としては、例えば、ＱｏＳ単位で別々のＳＡを確立する技術が知られている（RFC4301  4.1.項716行）。また、他にも、パケットを送信するパケット送信装置によって付与された一連のシーケンス番号について、受信装置が、ＱｏＳの優先度単位で管理する技術も知られている。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２００５−２６０５２０号公報
【特許文献２】特開２００５−６４５９４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
しかしながら、上記した従来技術では、リプレイ攻撃チェックを適切に行うことができなかったという課題があった。具体的には、上記したＱｏＳの優先度単位で別々のＳＡを確立する技術では、取り決めた暗号の種類や暗号鍵をＱｏＳごとに管理しなければならず、管理するデータ量が大量になっていた。
【００１０】
また、受信装置がＱｏＳの優先度単位でシーケンス番号を管理する技術では、同一のＱｏＳの優先度が設定されたパケット間にて順序入れ替えが発生した場合に、不当なパケット廃棄を防止できなかった。
【００１１】
例えば、パケット送信装置は、同一のＱｏＳの優先度が設定されたパケットを連続して送信するとは限らず、連続する同一のＱｏＳの優先度が設定されたパケットに対して、リプレイウィンドウサイズよりも大きく離れた番号を付与することがある。具体的な例をあげて説明すると、同一のＱｏＳの優先度が設定された連続するパケットに対して、シーケンス番号「３」「１６」が付与されることがある。
【００１２】
この場合、同一のＱｏＳの優先度が設定されたパケット間にて順序入れ替えが発生すると、パケット受信装置は、「１６」の後に「３」を受信することになる。この結果、パケットを受信する装置は、例えば、リプレイウィンドウサイズが「４」である場合には、リプレイウィンドウサイズ以上小さいと判定し、シーケンス番号「３」が付与されたパケットを破棄し、不当なパケット破棄が発生していた。
【００１３】
開示の技術は、上記に鑑みてなされたものであって、リプレイ攻撃チェックを適切に実行可能なパケット送受信システム、パケット送受信装置、および、パケット送受信方法を提供することを目的とする。
【課題を解決するための手段】
【００１４】
本願の開示するパケット送受信システムは、１つの態様において、パケット送信装置とパケット受信装置とを有するパケット送受信システムである。また、前記パケット送信装置は、異なる通話品質の優先度が設定されたパケットに対して同一の暗号鍵を用いて該パケットを暗号化する暗号化部を備える。また、前記パケット送信装置は、前記暗号化部によって暗号化されたパケットに対して、該パケットに設定された通話品質の優先度ごとに異なる一連のシーケンス番号を付与して送信する送信部を備える。また、前記パケット受信装置は、前記パケット送信装置から受信したパケットに付与されていたシーケンス番号の履歴を優先度ごとに記憶する記憶部を備える。また、前記パケット受信装置は、前記パケット送信装置からパケットを受信すると、受信したパケットに対して前記送信部によって付与されたシーケンス番号を識別し、受信したパケットに設定された通話品質の優先度に対応付けて前記記憶部に記憶された履歴と照合することで、受信したパケットが既に受信済みかを判定する判定部を備える。また、前記パケット受信装置は、前記判定部によって受信済みではないと判定された場合に、異なる通話品質の優先度が設定されたパケットに対して同一の復号鍵を用いてパケットを復号する復号部を備える。
【発明の効果】
【００１５】
本願の開示するパケット送受信システムの１つの態様によれば、アンチリプレイ攻撃への対策を適切に実現可能であるという効果を奏する。
【図面の簡単な説明】
【００１６】
【図１】図１は、実施例１に係るパケット送受信システムの概要を説明するためのシーケンス図である。
【図２】図２は、実施例１に係るパケット送受信システムの構成を説明するためのブロック図である。
【図３】図３は、実施例１に係るパケット送受信システムが適用される無線ネットワークの一例について説明するための図である。
【図４】図４は、実施例１における送信側ポリシ記憶部に記憶される情報の一例を説明するための図である。
【図５】図５は、実施例１における送信側ＳＡ記憶部に記憶される情報の一例を説明するための図である。
【図６】図６は、実施例１におけるＩＫＥパケットについて説明するための図である。
【図７】図７は、実施例１におけるパケット送受信システムにおけるＳＡ確立処理の流れを説明するためのシーケンス図である。
【図８】図８は、実施例１におけるパケット送信装置によるパケット送信処理の流れを説明するためのフローチャートである。
【図９】図９は、実施例１におけるパケット受信装置によるパケット受信処理の流れを説明するためのフローチャートである。
【図１０】図１０は、実施例１におけるパケット送受信システムによる効果を説明するための図である。
【図１１】図１１は、実施例２における受信側ＳＡ記憶部に記憶される情報の一例を説明するための図である。
【図１２】図１２は、実施例２における受信側ＳＡ記憶部に記憶される情報の一例を説明するための図である。
【図１３】図１３は、実施例２におけるパケット受信装置によるパケット受信処理の流れを説明するためのフローチャートである。
【図１４】図１４は、実施例３における受信側ＳＡ記憶部に記憶される情報の一例を説明するための図である。
【図１５】図１５は、実施例３における受信側ＳＡ記憶部に記憶される情報の一例を説明するための図である。
【図１６】図１６は、実施例３におけるＳＡ確立処理の流れを説明するためのフローチャートである。
【図１７】図１７は、シーケンス番号保持方式によるリプレイ攻撃チェック処理を説明するための図である。
【図１８】図１８は、シーケンス番号保持方式によるリプレイ攻撃チェック処理の流れを説明するためのフローチャートである。
【図１９】図１９は、シーケンス最新番号方式によるリプレイ攻撃チェック処理の流れを説明するためのフローチャートである。
【図２０】図２０は、実施例１に係るパケット送受信プログラムを実行するコンピュータの一例について説明するための図である。
【図２１】図２１は、従来技術を説明するための図である。
【発明を実施するための形態】
【００１７】
以下に、本願の開示するパケット送受信システム、パケット送受信装置、および、パケット送受信方法の実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。
【実施例１】
【００１８】
［パケット送受信システムの概要］
最初に、図１を用いて、実施例１に係るパケット送受信システムの概要を説明する。図１は、実施例１に係るパケット送受信システムの概要を説明するためのシーケンス図である。
【００１９】
実施例１に係るパケット送受信システムは、パケット送信装置とパケット受信装置とを有するパケット送受信システムである。また、パケット送信装置とパケット受信装置とは、ＳＡを確立し、以下に説明するように、確立したＳＡに従ってパケットの送受信を行う。なお、ＳＡとは、ＩＰｓｅｃを実行する装置によって行われる取り決めを示す。
【００２０】
具体的には、図１に示すように、実施例１におけるパケット送信装置は、パケットを送信するタイミングとなると（ステップＳ１０１肯定）、異なるＱｏＳ（通話品質とも称する）の優先度が設定されたパケットに対して同一の暗号鍵を用いて暗号化する（ステップＳ１０２）。例えば、パケット送信装置は、パケットに設定されたＱｏＳの優先度が「ＥＦ（Expedited  Forwarding）」であっても「ＢＦ（Best  Effort）」であっても、同一の暗号鍵を用いて暗号化する。
【００２１】
そして、実施例１におけるパケット送信装置は、暗号化したパケットに対して、パケットに設定されたＱｏＳの優先度ごとに異なる一連のシーケンス番号を付与し（ステップＳ１０３）、パケット受信装置に対してパケットを送信する（ステップＳ１０４）。例えば、パケット送信装置は、ＱｏＳの優先度が「ＥＦ」であるか「ＢＦ」であるかに関係なく同じ一連のシーケンス番号を送信順に付与するのではなく、送信するパケットに設定されたＱｏＳの優先度を識別し、ＱｏＳの優先度ごとに一連のシーケンス番号を付与する。
【００２２】
そして、実施例１におけるパケット受信装置は、パケット送信装置からパケットを受信すると、ＱｏＳの優先度ごとにリプレイ攻撃チェックを行う（ステップＳ１０５）。
【００２３】
具体的には、パケット受信装置は、パケット送信装置から受信したパケットに付与されていたシーケンス番号の履歴を優先度ごとに記憶する記憶部を備える。そして、パケット受信装置は、受信したパケットに対して送信部によって付与されたシーケンス番号を識別する。そして、パケット受信装置は、受信したパケットに設定されたＱｏＳの優先度に対応付けて記憶部に記憶された履歴と照合することで、受信したパケットが既に受信済みかを判定する。
【００２４】
そして、実施例１におけるパケット受信装置は、受信済みではないと判定した場合に、異なるＱｏＳの優先度が設定されたパケットに対して同一の復号鍵を用いてパケットを復号化する（ステップＳ１０６）。
【００２５】
このようなことから、実施例１に係るパケット送受信装置は、リプレイ攻撃チェックを適切に実現可能である。具体的には、暗号鍵数を最小限に抑えることができ、また、優先度ごとに異なるシーケンス番号を用いてチェックを行うので、優先度の違いによるパケットの受信順序逆転による不当なパケット廃棄を防止することが可能である。
【００２６】
［パケット送受信システムの詳細］
以下では、まず、ブロック図を用いて、図１を用いて説明したパケット送受信システムの構成について簡単に説明し、その後、パケット送受信システムによる処理の説明において、パケット送受信システムについて詳細に説明する。
【００２７】
また、以下では、実施例１として、異なるＱｏＳの優先度に対して１つのＳＡを確立し、パケットに設定されたＱｏＳの優先度ごとに異なる一連のシーケンス番号を付与する手法について説明する。なお、実施例１にて説明する手法は、後述するシーケンス制御方式「シーケンスリスト方式」に対応する。
【００２８】
［パケット送受信システムの構成］
図２を用いて、図１を用いて説明したパケット送受信システムの構成について簡単に説明する。図２は、実施例１に係るパケット送受信システムの構成を説明するためのブロック図である。
【００２９】
図２に示すように、パケット送受信システムは、パケット送信装置１００とパケット受信装置２００とを備え、パケット送信装置１００とパケット受信装置２００とがネットワーク３００を介して接続される。また、パケット送受信システムでは、パケット送信装置１００とパケット受信装置２００とが、暗号技術を用いてパケットの送受信を行い、具体的には、ＩＰｓｅｃのＳＡを確立し、確立したＳＡに従ってパケットの送受信を行う。
【００３０】
また、図２には図示していないが、ネットワーク３００において、ＱｏＳによる送信制御を行う装置が、パケット送信装置１００とパケット受信装置２００との間のパケット送受信を中継する。
【００３１】
例えば、図３に示すように、パケット送受信システムは、ＬＴＥ（Long  Term  Evolution、ロング・ターム・エボリューション）などの無線ネットワークシステムに適用される。なお、図３は、実施例１に係るパケット送受信システムが適用される無線ネットワークの一例について説明するための図である。
【００３２】
図３に示す例では、無線ネットワークシステムには、無線基地局装置（eNodeB）やセキュリティＧＷ（ゲートウェイ）装置、サービングＧＷ（ゲートウェイ）装置などで構成されており、各装置間のデータ送受信にＩＰｓｅｃのＳＡを適用している。また、無線ネットワークシステムにおいて送受信されるデータの種類には、音声データやパケットデータが混在しており、ＱｏＳによる送信制御を行う。なお、図３に示す例では、セキュリティＧＷ装置やサービングＧＷ装置、無線基地局装置などが、パケット送信装置１００やパケット受信装置２００に対応し、Ｒｏｕｔｅｒが、ネットワーク３００に存在するＱｏＳによる送信制御を行う装置に対応する。
【００３３】
なお、実施例１では、説明の便宜上、パケット送信装置１００とパケット受信装置２００とを用いて説明するが、本発明はこれに限定されるものではなく、パケットを送受信するパケット送受信装置であってもよい。
【００３４】
［パケット送信装置の構成］
次に、パケット送信装置１００が備える各部について簡単に説明する。パケット送信装置１００は、ネットワーク３００を介してパケット受信装置２００と接続され、送信側ポリシ記憶部１０１と送信側ＳＡ記憶部１０２と送信側終端部１１１と送信側ＳＡ処理部１１２と送信側ＩＫＥ処理部１１３とを備える。
【００３５】
パケット送信装置１００が備える各部の内、送信側ポリシ記憶部１０１と送信側ＳＡ記憶部１０２とは、パケット送信装置１００による各種送信処理に用いられるデータを記憶する。
【００３６】
送信側ポリシ記憶部１０１は、送信側ＩＫＥ処理部１１３と接続され、図４に示すように、自装置がＳＡにて用いることが可能な情報を記憶し、図４に示す例では、自装置が使用可能な「暗号鍵」や「復号鍵」、「シーケンス制御方式」を記憶する。なお、図４は、実施例１における送信側ポリシ記憶部に記憶される情報の一例を説明するための図である。
【００３７】
図４に示す例では、パケット送信装置１００は、暗号鍵として、暗号鍵「Ａ」「Ｂ」「Ｃ」を用いることができ、また、復号鍵として復号鍵「ａ」「ｂ」「ｃ」を用いることができることを示す。
【００３８】
なお、シーケンス制御方式とは、どのようなＳＡかを識別するための情報であり、「シーケンスリスト方式」は、異なるＱｏＳの優先度に対して１つのＳＡを確立し、パケットに設定されたＱｏＳの優先度ごとに異なる一連のシーケンス番号を付与する方式を示す。また、「シーケンスリスト方式」では、以下に詳述するように、一回目にＳＡを確立する際に、ＱｏＳの優先度全てについて、それぞれ付与するシーケンス番号を決定する手法である。
【００３９】
なお、「シーケンス独立方式」や「シーケンス鍵共有方式」については、それぞれ、実施例２や実施例３で説明するため、ここでは説明を省略する。
【００４０】
なお、送信側ポリシ記憶部１０１に記憶されたデータは、パケット送信装置１００とパケット受信装置２００とがＳＡを確立する際に送信側ＩＫＥ処理部１１３によって用いられ、また、パケット送信装置１００を管理する管理者によって予め格納される。
【００４１】
送信側ＳＡ記憶部１０２は、送信側ＳＡ処理部１１２と送信側ＩＫＥ処理部１１３と接続され、図５に示すように、確立されたＳＡについての情報を記憶する。なお、図５は、実施例１における送信側ＳＡ記憶部に記憶される情報の一例を説明するための図である。
【００４２】
図５に示す例では、送信側ＳＡ記憶部１０２は、「ＳＰＩ（Security  Parameters  Index）」と「ＩＰアドレス」と「暗号鍵」と「復号鍵」と「シーケンス制御方式」とを記憶する。また、送信側ＳＡ記憶部１０２は、「ＱｏＳ」ごとに、「最新シーケンス番号」と「リプレイウィンドウサイズ」とを記憶する。
【００４３】
ここで、送信側ＳＡ記憶部１０２によって記憶された情報の内、「ＳＰＩ」は、パケット送信装置１００とパケット受信装置２００とによって確立されたＳＡを一意に識別する情報である。実施例１では、異なるＱｏＳの優先度に対して１つのＳＡが確立されるため、送信側ＳＡ記憶部１０２は、「ＳＰＩ」を１つのみ記憶し、図５に示す例では、ＳＰＩ「１」のみを記憶する。
【００４４】
また、送信側ＳＡ記憶部１０２によって記憶された情報の内、「ＩＰアドレス」は、確立されたＳＡにおいて送信元となるパケット送信装置１００のＩＰ（Internet  Protocol）アドレスと、送信先となるパケット受信装置２００のＩＰアドレスとが該当する。図５に示す例では、送信側ＳＡ記憶部１０２は、「255.255．ｘｘｘ．ｘｘｘ、255.255．ｙｙｙ．ｙｙｙ」を記憶する。また、暗号鍵や復号鍵、シーケンス制御方式は、確立されたＳＡにおいて用いられる暗号鍵や復号鍵、シーケンス制御方式であり、図５に示す例では、暗号鍵「Ａ」や復号鍵「ａ」、シーケンス制御方式「シーケンスリスト方式」を記憶する。
【００４５】
また、送信側ＳＡ記憶部１０２によって記憶された情報の内、「最新シーケンス番号」は、使用されたシーケンス番号の内最新の番号を識別するための情報であり、具体的には、パケット送信装置１００によって送信するパケットに付与されたシーケンス番号の内、最新のシーケンス番号である。なお、ＱｏＳの優先度ごとに付与される一連のシーケンス番号は、ＱｏＳの優先度ごとにそれぞれことなる。また、「リプレイウィンドウサイズ」は、確立されたＳＡに設定されたリプレイウィンドウサイズを示す。また、「ＱｏＳ」は、ＱｏＳの優先度を識別するための情報である。
【００４６】
なお、送信側ＳＡ記憶部１０２は、パケット送受信システムにおいて用いられるＱｏＳの優先度全てについて、それぞれ、「最新シーケンス番号」や「リプレイウィンドウサイズ」が格納される。つまり、図５示す例では、例えば、ＱｏＳ「ＥＦ」やＱｏＳ「ＢＦ」について、それぞれ、「最新シーケンス番号」や「リプレイウィンドウサイズ」が格納される。
【００４７】
また、実施例１では、送信側ＳＡ記憶部１０２は、パケット受信装置２００と最初にＳＡを確立する際に、ＱｏＳの優先度全てについて、「最新シーケンス番号」、「リプレイウィンドウサイズ」が格納される。
【００４８】
なお、送信側ＳＡ記憶部１０２に記憶されたデータは、ＳＡ確立時に送信側ＩＫＥ処理部１１３によって格納される。また、送信側ＳＡ記憶部１０２に記憶されたデータは、パケット送信装置１００がパケットを送信する際に送信側ＳＡ処理部１１２によって用いられ、また、送信するごとに「最新シーケンス番号」が更新される。
【００４９】
また、パケット送信装置１００が備える各部の内、送信側終端部１１１と送信側ＳＡ処理部１１２と送信側ＩＫＥ処理部１１３とは、各種の送信処理手順などを規定したプログラムを記憶するための内部メモリを有し、各種の送信処理を行う。
【００５０】
送信側終端部１１１は、送信側ＳＡ処理部１１２と接続され、パケット受信装置２００に送信するパケットを送信側ＳＡ処理部１１２に送る。例えば、パケット送信装置１００がパケット受信装置２００とは異なる他の装置と接続される場合には、送信側終端部１１１は、他の装置からパケットを受信すると、受信したパケットを送信側ＳＡ処理部１１２に送る。
【００５１】
送信側ＳＡ処理部１１２は、送信側ＳＡ記憶部１０２と送信側終端部１１１と送信側ＩＫＥ処理部１１３と接続される。また、送信側ＳＡ処理部１１２は、送信側ＳＡ記憶部１０２を参照し、既に確立されたＳＡに従って、パケット受信装置２００にパケットを送信する。
【００５２】
具体的には、送信側ＳＡ処理部１１２は、送信側終端部１１１からパケットを受信すると、送信側ＳＡ記憶部１０２を参照し、ＳＡが確立されているかを判定する。例えば、送信側ＳＡ処理部１１２は、送信側ＳＡ記憶部１０２に既に確立されたＳＡについての情報が格納されているかを判定する。
【００５３】
また、送信側ＳＡ処理部１１２は、ＳＡが確立されていると判定した場合には、既に確立されたＳＡに従って、パケット受信装置２００にパケットを送信する。具体的には、送信側ＳＡ処理部１１２は、異なるＱｏＳの優先度が設定されたパケットに対して同一の暗号鍵を用いてパケットを暗号化し、パケットに設定されたＱｏＳの優先度ごとに異なる一連のシーケンス番号を付与して送信する。例えば、送信側ＳＡ処理部１１２は、パケットに設定されたＱｏＳの優先度ごとに、それぞれ異なるシーケンス番号を昇順にて付与し、パケットを送信する。
【００５４】
また、送信側ＳＡ処理部１１２は、ＳＡが確立されていないと判定した場合には、その旨を送信側ＩＫＥ処理部１１３に送る。その後、送信側ＩＫＥ処理部１１３によってＳＡが確立された旨の情報を受信すると、確立されたＳＡに従って、パケット受信装置２００にパケットを送信する。
【００５５】
送信側ＩＫＥ処理部１１３は、送信側ポリシ記憶部１０１と送信側ＳＡ記憶部１０２と送信側ＳＡ処理部１１２と接続される。また、送信側ＩＫＥ処理部１１３は、ＳＡが確立されていないと判定した旨を送信側ＳＡ処理部１１２から受信すると、パケットを送信する送信先となるパケット受信装置２００との間にＳＡを確立する。つまり、送信側ＩＫＥ処理部１１３は、パケット受信装置２００内にある後述する受信側ＩＫＥ処理部２１１と共働して、パケット送信装置１００とパケット受信装置２００との間にＳＡを確立する。
【００５６】
また、実施例１では、送信側ＩＫＥ処理部１１３は、受信側ＩＫＥ処理部２１１と共働して、異なるＱｏＳの優先度に対して１つのＳＡを確立する。
【００５７】
また、送信側ＩＫＥ処理部１１３と受信側ＩＫＥ処理部２１１とは、ＳＡを確立する際に、ＩＫＥ（Internet  Key  Exchange）パケットを送受信することでネゴシエーションし、ＳＡにて用いる暗号鍵や復号鍵、シーケンス制御方式を決定する。
【００５８】
図６を用いて、ＩＫＥパケットの一例について説明する。図６に示す例は、ＩＫＥパケットに含まれるペイロードのヘッダである。図６に示す例では、送信側ＩＫＥ処理部１１３が、シーケンス制御方式についての３つのプロポーザルをパケット受信装置２００に提案する場合を例に示した。なお、図６に示した例は、ＩＫＥｖ２（Internet  Key  Exchange  version  2）に関するものである。また、図６に示す例では、シーケンス制御方式に関する情報のみが含まれているが、他にも、暗号鍵や復号鍵など、ＳＡを確立するうえで用いられる情報であって、ネゴシエーションを要する情報も含まる。
【００５９】
図６に示すＩＫＥパケットでは、プロポーザル各々に、「トランスフォームタイプ」や「トランスフォーム長」、「トランスフォームＩＤ」、「トランスフォーム属性」が含まれる。また、プロポーザルには、希望順位が設定されている。ここで、「トランスフォームタイプ」には、シーケンス制御方式を識別するための情報が設定され、例えば、「６」〜「２５５」までの数のいずれかが設定される。また、「トランスフォームタイプ」に設定される数のいずれかに、シーケンス制御方式がそれぞれ対応付けられる。「トランスフォーム長」には、トランスフォームフィールドの長さが設定される。「トランスフォームＩＤ」には、シーケンス制御方式の名称が設定され、例えば、「シーケンスリスト方式」が設定される。また、「トランスフォーム属性」には、シーケンス制御方式に対応する情報が設定され、例えば、シーケンスリスト方式である場合には、ＱｏＳの優先度とシーケンス番号との組み合わせが設定される。なお、シーケンスリスト方式以外の場合におけるトランスフォーム属性については、実施例１以降にて後述するため、ここでは説明を省略する。
【００６０】
［パケット受信装置の構成］
パケット受信装置２００は、ネットワーク３００を介してパケット送信装置１００と接続され、受信側ポリシ記憶部２０１と受信側ＳＡ記憶部２０２と受信側ＩＫＥ処理部２１１と受信側ＳＡ処理部２１２と受信側終端部２１３とを備える。
【００６１】
パケット受信装置２００が備える各部の内、受信側ポリシ記憶部２０１と受信側ＳＡ記憶部２０２とは、パケット受信装置２００による各種送信処理に用いられるデータを記憶する。また、受信側ポリシ記憶部２０１は、送信側ポリシ記憶部１０１に対応し、送信側ポリシ記憶部１０１と同様の情報を記憶する。また、受信側ＳＡ記憶部２０２は、送信側ＳＡ記憶部１０２に対応し、送信側ＳＡ記憶部１０２と同様の情報を記憶する。
【００６２】
ここで、受信側ポリシ記憶部２０１や受信側ＳＡ記憶部２０２と、送信側ポリシ記憶部１０１や送信側ＳＡ記憶部１０２との違いについて簡単に説明する。これらの記憶部は、受信側ポリシ記憶部２０１や受信側ＳＡ記憶部２０２が、パケット受信装置２００についての情報を記憶し、送信側ポリシ記憶部１０１や送信側ＳＡ記憶部１０２が、パケット送信装置１００についての情報を記憶する点において異なる。
【００６３】
受信側ＳＡ記憶部２０２は、パケット送信装置１００から受信したパケットに付与されていたシーケンス番号の履歴を優先度ごとに記憶する。また、受信側ＳＡ記憶部２０２は、送信側ＳＡ記憶部１０２の例としてあげた図５に示す例と同様の構成にて、情報を記憶する。なお、送信側ＳＡ記憶部１０２の例としてあげた図５に示す例の内、受信側ＳＡ記憶部２０２では、「最新シーケンス番号」が履歴に該当する。つまり、受信側ＳＡ記憶部２０２が記憶する「最新シーケンス番号」は、パケット受信装置２００が受信したパケットに付与されていたシーケンス番号の内、もっとも大きなシーケンス番号が該当する。
【００６４】
また、パケット受信装置２００が備える各部の内、受信側終端部２１３と受信側ＳＡ処理部２１２と受信側ＩＫＥ処理部２１１とは、各種の受信処理手順などを規定したプログラムを記憶するための内部メモリを有し、各種の受信処理を行う。
【００６５】
受信側ＩＫＥ処理部２１１は、受信側ポリシ記憶部２０１と受信側ＳＡ記憶部２０２と接続され、送信側ＩＫＥ処理部１１３と共働して、パケット送信装置１００との間にＳＡを確立する。そして、受信側ＩＫＥ処理部２１１は、確立したＳＡについての情報を受信側ＳＡ記憶部２０２に格納する。なお、受信側ＩＫＥ処理部２１１のその他の点については、送信側ＩＫＥ処理部１１３と同様のため、説明を省略する。
【００６６】
受信側ＳＡ処理部２１２は、受信側ＳＡ記憶部２０２と受信側終端部２１３と接続され、また、ネットワーク３００を介して送信側ＳＡ処理部１１２と接続される。また、受信側ＳＡ処理部２１２は、送信側ＳＡ処理部１１２によって送信されたパケットを受信すると、受信側ＩＫＥ処理部２１１によって既に確立されたＳＡに従って、シーケンス番号を用いてリプレイ攻撃チェックを行う。
【００６７】
具体的には、受信側ＳＡ処理部２１２は、受信したパケットに付与されたシーケンス番号を識別する。そして、受信側ＳＡ処理部２１２は、受信したパケットに設定されたＱｏＳの優先度に対応付けて受信側ＳＡ記憶部２０２に記憶された履歴と照合することで、受信したパケットが既に受信済みかを判定する。
【００６８】
ここで、受信側ＳＡ処理部２１２は、受信済みではないと判定すると、異なるＱｏＳの優先度が設定されたパケットに対して同一の復号鍵を用いてパケットを復号する。そして、受信側ＳＡ処理部２１２は、復号したパケットを受信側終端部２１３に送る。また、受信側ＳＡ処理部２１２は、受信側ＳＡ記憶部２０２に記憶された履歴を更新し、具体的には、最新のシーケンス番号を更新する。一方、受信側ＳＡ処理部２１２は、受信済みであると判定すると、パケットを破棄する。
【００６９】
受信側終端部２１３は、受信側ＳＡ処理部２１２と接続され、送信側ＳＡ処理部１１２からパケットを受信し、パケット受信装置２００が受信したパケットを利用する他の装置に送信する。
【００７０】
［実施例１に係るパケット送受信システムによる処理］
次に、実施例１に係るパケット送受信システムによる処理の流れについて説明する。以下では、パケット送受信システムにおけるＳＡ確立処理の流れ、パケット送信装置１００によるパケット送信処理の流れ、パケット受信装置２００によるパケット受信処理の流れについて、順に説明する。
【００７１】
［実施例１におけるパケット送受信システムにおけるＳＡ確立処理］
次に、図７を用いて、実施例１におけるパケット送受信システムにおけるＳＡ確立処理の流れについて説明する。なお、図７は、実施例１におけるパケット送受信システムにおけるＳＡ確立処理の流れを説明するためのシーケンス図である。
【００７２】
図７に示すように、パケット送信装置１００では、ＳＡを確立するタイミングになると（ステップＳ２０１肯定）、例えば、パケット送信時にＳＡが確立されていないと送信側ＳＡ処理部１１２によって判定されると、ＳＡを確立する処理を開始する。具体的には、送信側ＩＫＥ処理部１１３は、図６に示すようなＩＫＥパケットをパケット受信装置２００に送信する（ステップＳ２０２）。
【００７３】
ここで、送信側ＩＫＥ処理部１１３は、これから確立するＳＡにて使用することを希望する暗号鍵や復号鍵、シーケンス制御方式について、ＩＫＥパケットを用いて受信側ＩＫＥ処理部２１１に送信する。また、ＩＫＥパケットを用いて送信する暗号鍵や復号鍵、シーケンス制御方式に対して、希望順位を設定しておく。なお、送信側ＩＫＥ処理部１１３は、暗号鍵や復号鍵そのものを送信するのではなく、暗号鍵や復号鍵を一意に識別するための情報を送信する。
【００７４】
例えば、図６に示す例では、送信側ＩＫＥ処理部１１３は、第１希望となるプロポーザル［０］の「トランスフォームＩＤ」に、「シーケンスリスト方式」を設定する。また、送信側ＩＫＥ処理部１１３は、「シーケンスリスト方式」を設定する場合には、ＩＫＥパケットの「トランスフォーム属性」に、ＱｏＳの優先度とシーケンス番号との組み合わせを設定する。例えば、送信側ＩＫＥ処理部１１３は、ＱｏＳの優先度「ＥＦ」と「ＢＦ」とを用いる場合には、ＱｏＳの優先度「ＥＦ」や「ＢＦ」を設定する。
【００７５】
ここで、送信側ＩＫＥ処理部１１３は、パケット送受信システムにおいて用いられるすべてのＱｏＳの優先度について、それぞれ「トランスフォーム属性」に設定する。送信側ＩＫＥ処理部１１３は、ＳＡを確立する場合に、パケット受信装置に対して、パケット送信装置から送信されるパケットに設定されるＱｏＳの優先度各々を示す優先度識別情報すべてを送信することになる。なお、優先度識別情報とは、例えば、「ＥＦ」や「ＢＦ」などが該当する。
【００７６】
そして、パケット受信装置２００では、受信側ＩＫＥ処理部２１１は、ＩＫＥパケットに含まれる方式の内、自装置が対応する方式を１つ選択する（ステップＳ２０３）。例えば、受信側ＩＫＥ処理部２１１は、希望順位の高いプロポーザルから、自装置が対応するシーケンス制御方式かを判定し、対応すると最初に判定したシーケンス制御方式を選択する。例えば、図６に示す例では、受信側ＩＫＥ処理部２１１は、プロポーザル［０］の「シーケンスリスト方式」を選択する。
【００７７】
また、受信側ＩＫＥ処理部２１１は、シーケンス制御方式と同様に、「暗号鍵」や「複合鍵」についても、シーケンス制御方式と同様に選択する。
【００７８】
そして、パケット受信装置２００では、受信側ＩＫＥ処理部２１１は、選択した方式を示すＩＫＥパケットを送信側ＩＫＥ処理部１１３に対して送信する（ステップＳ２０４）。
【００７９】
そして、パケット送信装置１００では、送信側ＩＫＥ処理部１１３が、受信側ＩＫＥ処理部２１１から受信したＩＫＥパケットによって特定される方式を用いて、ＳＡを確立する（ステップＳ２０５）。また、ここで、送信側ＩＫＥ処理部１１３は、確立したＳＡについての情報を送信側ＳＡ記憶部１０２に格納する。
【００８０】
図５に示す例を用いて説明すると、送信側ＩＫＥ処理部１１３は、ＳＰＩを１つ設定したうえで、「ＩＰアドレス」や「暗号鍵」、「シーケンス制御方式」を送信側ＳＡ記憶部１０２に格納する。また、パケット送受信システムにおいて用いられるＱｏＳの優先度ごとに、「最新シーケンス番号」や「リプレイウィンドウ」、「ＱｏＳ」を送信側ＳＡ記憶部１０２に格納する。
【００８１】
ここで、送信側ＩＫＥ処理部１１３が送信側ＳＡ記憶部１０２に格納する情報の内、「暗号鍵」や「シーケンス制御方式」、「リプレイウィンドウ」、「ＱｏＳ」については、ＩＫＥパケットによって識別される。また、「最新シーケンス番号」については、ＳＡを新たに確立した時点においては、未だシーケンス番号が使用されていないため、初期設定として「０」になる。
【００８２】
また、受信側ＩＫＥ処理部２１１は、送信側ＩＫＥ処理部１１３と同様に、受信したＩＫＥパケットによって特定される方式の内選択した方式を用いて、送信側ＩＫＥ処理部１１３と同様にＳＡを確立する（ステップＳ２０６）。また、ここで、受信側ＩＫＥ処理部２１１は、確立したＳＡについての情報を受信側ＳＡ記憶部２０２に格納し、送信側ＩＫＥ処理部１１３によって送信された優先度識別情報ごとにシーケンス番号の履歴を記憶するように受信側ＳＡ記憶部２０２を設定する。
【００８３】
［実施例１におけるパケット送信装置によるパケット送信処理］
次に、図８を用いて、実施例１におけるパケット送信装置１００によるパケット送信処理の流れについて説明する。なお、図８は、実施例１におけるパケット送信装置によるパケット送信処理の流れを説明するためのフローチャートである。
【００８４】
なお、以下では、ＳＡを確立する処理の流れについては、図７を用いて説明したため、予めＳＡが確立されている場合におけるパケット送信処理の流れについて説明する。また、実施例１におけるパケット送信装置によるパケット送信処理の流れでは、特に言及しない限り、送信するパケットに設定されたＱｏＳの優先度が「ＢＦ」である場合を例に説明する。
【００８５】
図８に示すように、パケット送信装置１００では、送信タイミングとなると（ステップＳ３０１肯定）、送信側ＳＡ処理部１１２は、送信するパケットを解析し（ステップＳ３０２）、パケットに設定されたＱｏＳの優先度を識別する（ステップＳ３０３）。例えば、送信側ＳＡ処理部１１２は、パケットに設定されたＱｏＳの優先度が「ＢＦ」であると識別する。
【００８６】
そして、送信側ＳＡ処理部１１２は、送信側ＳＡ記憶部１０２から、識別したＱｏＳの優先度に対応する最新のシーケンス番号を取得する（ステップＳ３０４）。図５に示す例を用いて説明すると、送信側ＳＡ処理部１１２は、ＱｏＳの優先度が「ＢＦ」に対応する最新のシーケンス番号「６」を取得する。
【００８７】
そして、送信側ＳＡ処理部１１２は、最新のシーケンス番号を更新する（ステップＳ３０５）。図５に示す例を用いて説明すると、送信側ＳＡ処理部１１２は、ＱｏＳの優先度が「ＢＦ」に対応する最新のシーケンス番号について、「６」から「７」へと更新する。
【００８８】
そして、送信側ＳＡ処理部１１２は、送信側ＳＡ記憶部１０２から暗号鍵を取得し（ステップＳ３０６）、図５に示す例を用いて説明すると、暗号鍵「Ａ」を取得する。そして、送信側ＳＡ処理部１１２は、送信するパケットを暗号化し（ステップＳ３０７）、例えば、送信するパケットに設定されたＱｏＳの優先度に関係なく、暗号鍵「Ａ」を用いて暗号化する。
【００８９】
そして、送信側ＳＡ処理部１１２は、パケットに設定されたＱｏＳの優先度ごとに異なる一連のシーケンス番号を付与する（ステップＳ３０８）。例えば、更新後の最新のシーケンス番号である「７」を、ＱｏＳの優先度が「ＢＦ」が設定されたパケットに付与する。なお、ここで、例えば、送信するパケットに設定されたＱｏＳの優先度が「ＥＦ」である場合には、ＱｏＳの優先度が「ＥＦ」に対応するシーケンス番号が付与され、図５に示す例では、「１０」の次の番号になる「１１」が付与される。
【００９０】
そして、送信側ＳＡ処理部１１２は、パケット受信装置２００に対してパケットを送信する（ステップＳ３０９）。つまり、送信側ＳＡ処理部１１２は、異なるＱｏＳの優先度が設定されたパケットに対して同一の暗号鍵を用いて暗号化し、パケットに設定されたＱｏＳの優先度ごとに異なる一連のシーケンス番号を付与した上で、パケットを送信する。
【００９１】
［実施例１におけるパケット受信装置によるパケット受信処理］
次に、図９を用いて、実施例１におけるパケット受信装置２００によるパケット受信処理の流れについて説明する。なお、図９は、パケット受信装置によるパケット受信処理の流れを説明するためのフローチャートである。また、実施例１におけるパケット送信装置１００によるパケット送信処理の流れでは、特に言及しない限り、受信したパケットに設定されたＱｏＳの優先度が「ＢＦ」である場合を例に説明する。
【００９２】
図９に示すように、パケット受信装置２００では、受信側ＳＡ処理部２１２は、パケットを受信すると（ステップＳ４０１肯定）、受信したパケットを解析し（ステップＳ４０２）、パケットに設定されたＱｏＳの優先度を識別する（ステップＳ４０３）。例えば、受信側ＳＡ処理部２１２は、受信したパケットに設定されたＱｏＳの優先度が「ＢＦ」であると識別する。
【００９３】
そして、受信側ＳＡ処理部２１２は、受信側ＳＡ記憶部２０２から、識別したＱｏＳの優先度に対応する最新のシーケンス番号とリプレイウィンドウサイズを取得する（ステップＳ４０４）。例えば、受信側ＳＡ処理部２１２は、ＱｏＳの優先度が「ＢＦ」に対応する最新のシーケンス番号「６」とリプレイウィンドウサイズ「３」とを取得する。
【００９４】
ここで、受信側ＳＡ記憶部２０２は、ＱｏＳの優先度ごとに最新のシーケンス番号を記憶しており、受信側ＳＡ処理部２１２は、ＱｏＳの優先度ごとに異なる最新のシーケンス番号を取得することになる。
【００９５】
そして、受信側ＳＡ処理部２１２は、ＱｏＳの優先度ごとに異なるシーケンス番号を用いて、リプレイ攻撃チェックを行う（ステップＳ４０５）。具体的には、まず、受信側ＳＡ処理部２１２は、受信したパケットに対して付与されたシーケンス番号を識別する。そして、受信側ＳＡ処理部２１２は、受信したパケットに設定されたＱｏＳの優先度に対応付けて受信側ＳＡ記憶部２０２に記憶された履歴と照合することで、受信したパケットが既に受信済みかを判定する。
【００９６】
最新のシーケンス番号「６」とリプレイウィンドウサイズ「３」とを用いて判定する場合を例に、さらに説明する。受信側ＳＡ処理部２１２は、識別したシーケンス番号が最新のシーケンス番号より大きければ、例えば、「７」以上であれば、受信済みでないと判定する。また、受信側ＳＡ処理部２１２は、識別したシーケンス番号が「６」である場合には、受信済みのシーケンス番号と重複することになり、受信済みであると判定する。また、受信側ＳＡ処理部２１２は、識別したシーケンス番号が「６」未満である場合には、リプレイウィンドウサイズ「３」の範囲内になるシーケンス番号であれば、受信済みでないと判定し、例えば、シーケンス番号が「４、５、６」であれば、受信済みでないと判定する。ただし、シーケンス番号が「４、５、６」の内、シーケンス番号が「６」については、「最新シーケンス番号」として記憶されており、上記したように、受信済みであると優先して判定することになる。また、受信側ＳＡ処理部２１２は、識別したシーケンス番号が６未満であり、リプレイウィンドウサイズ「３」の範囲外になるシーケンス番号であれば、受信済みであると判定し、例えば、シーケンス番号が「３」未満であれば、受信済みであると判定する。
【００９７】
なお、シーケンス番号が「４、５」について、受信済みであると判定しない理由について簡単に説明する。パケット送信装置１００による送信順番と、パケット受信装置２００による受信順番とは、必ずしも同一にならず、順番に入れ替えが発生することがある。このような場合に、誤って不当なパケット破棄が発生しないように、リプレイウィンドウを用い、この結果、上記した例では、シーケンス番号が「４、５」受信済みでないと判定する。
【００９８】
そして、受信側ＳＡ処理部２１２は、受信済みであると判定すると（ステップＳ４０６肯定）、つまり、例えば、「最新シーケンス番号」と重複し、または、リプレイウィンドウサイズ外であると判定すると、受信したパケットを破棄する（ステップＳ４０７）。一方、受信側ＳＡ処理部２１２は、受信済みでないと判定すると（ステップＳ４０６否定）、つまり、例えば、受信側ＳＡ処理部２１２は、「最新シーケンス番号」より大きく、または、リプレイウィンドウサイズ内であると判定すると、受信したパケットを復号化する（ステップＳ４０８）。つまり、受信側ＳＡ処理部２１２は、異なるＱｏＳの優先度が設定されたパケットに対して同一の復号鍵を用いてパケットを復号し、図５に示す例では、復号鍵「ａ」を用いて復号する。また、受信側ＳＡ処理部２１２は、最新シーケンス番号を受信側ＳＡ記憶部２０２に格納する。
【００９９】
［実施例１の効果］
上記したように、実施例１によれば、パケット送信装置１００は、異なるＱｏＳの優先度が設定されたパケットに対して同一の暗号鍵を用いて暗号化し、パケットに設定されたＱｏＳの優先度ごとに異なる一連のシーケンス番号を付与して送信する。そして、パケット受信装置２００は、受信したパケットに付与されていたシーケンス番号の履歴を優先度ごとに記憶する受信側ＳＡ記憶部２０２を備える。そして、パケット受信装置２００は、受信したパケットに対して付与されたシーケンス番号を識別し、受信したパケットに設定されたＱｏＳの優先度に対応付けられた履歴と照合することで、受信したパケットが既に受信済みかを判定する。そして、パケット受信装置２００は、受信済みではないと判定された場合に、異なるＱｏＳの優先度が設定されたパケットに対して同一の復号鍵を用いてパケットを復号する。
【０１００】
この結果、実施例１によれば、リプレイ攻撃チェックを適切に実現可能である。具体的には、複数のＱｏＳにて同一の暗号鍵を用いるので、暗号鍵数を最小限に抑えることが可能である。また、優先度ごとに異なるシーケンス番号を用いてチェックを行うので、優先度の違いによるパケットの受信順序逆転による不当なパケット廃棄を防止することが可能である。
【０１０１】
ここで、図１０を用いて、不当なパケット廃棄を防止することが可能であるという効果についてさらに説明する。なお、図１０は、実施例１におけるパケット送受信システムによる効果を説明するための図である。
【０１０２】
例えば、従来の手法では、パケット送信装置は、ＱｏＳの優先度に関係なくシーケンス番号を送信順に付与し、図１０の（１）に示す例では、ＱｏＳの優先度「ＥＦ」に対して、シーケンス番号「１〜３、５、７、９〜１５」を付与する。また、同様に、パケット送信装置１００は、ＱｏＳの優先度「ＢＦ」に対して、シーケンス番号「４、６、８、１６」を付与する。
【０１０３】
ここで、パケット送信装置によって送信されたパケットがＱｏＳによる送信制御を行うルータなどを経由してパケット受信装置に届く場合には、図１０の（２）に示すように、ルータにて、送信順番が変更される。つまり、ルータは、相対的に高いＱｏＳの優先度が設定されたパケットについて、相対的に低いＱｏＳの優先度が設定されたパケットに優先して送信する。この結果、パケット送信装置１００による送信順番とは異なる送信順にてパケットを送信する。例えば、図１０の（２−１）の「ＱｏＳ制御前」に示す例では、パケット送信装置１００によって送信された送信順と同じ並びになっている。これに対して、ＱｏＳの優先度「ＥＦ」は「ＢＦ」よりも優先度が高いため、図１０の（２−２）の「ＱｏＳ制御後」に示す例では、シーケンス番号の大小に関係なく、ＱｏＳの優先度「ＥＦ」が設定されたパケットの送信順が、ＱｏＳの優先度「ＢＦ」が設定されたパケットの送信順よりも早くなる。
【０１０４】
この結果、パケット受信装置は、図１０の（２−２）に示す送信順でパケットを受信した場合には、シーケンス番号「１５」が付与されたパケットの後に、シーケンス番号「４」が付与されたパケットを受信することになる。ここで従来の手法では、リプレイウィンドウサイズが「４」である場合には、パケット受信装置は、シーケンス番号「４」が付与されたパケットが既に受信済みであると判定し、シーケンス番号「８」が付与されたリプレイウィンドウ外であると判定し、パケットを破棄する。つまり、ＱｏＳの優先度の違いによるパケットの受信順序逆転による不当なパケット廃棄が発生する。
【０１０５】
また、パケットの伝送過程では、同じＱｏＳの優先度であったとしても、送信順番が入れ替わることがあり、図１０の（２−３）の「同一優先度内での逆転」に示す例では、ＱｏＳの優先度「ＢＦ」が設定されたパケット内にて、送信順序が入れ替わっている。この結果、従来の手法では、パケット受信装置は、図１０の（２−３）に示す送信順にてパケットを受信した場合には、シーケンス番号「１６」が付与されたパケットの後に、シーケンス番号「８」が付与されたパケットを受信することになる。このため、リプレイウィンドウサイズが「４」である場合には、図１０の（３）の「パケット受信装置によるリプレイ攻撃チェック」に示すように、パケット受信装置２００が、シーケンス番号「８」が付与されたパケット破棄する。つまり、同一優先度内における順序逆転による不当なパケット廃棄が発生する。
【０１０６】
これに対して、実施例１によれば、ＱｏＳの優先度ごとに異なる一連のシーケンス番号を付与するので、ＱｏＳの優先度の違いによるパケットの受信順序逆転による不当なパケット廃棄や、同一優先度内における順序逆転による不当なパケット破棄を防止可能である。
【０１０７】
また、実施例１によれば、パケット送信装置１００は、異なるＱｏＳの優先度に対して１つのＳＡをパケット受信装置２００と確立する。また、パケット送信装置１００は、ＳＡを確立する場合に、パケット受信装置２００に対して、パケット送信装置１００から送信されるパケットに設定されるＱｏＳの優先度を示す優先度識別情報を送信する。そして、パケット受信装置２００は、優先度識別情報を受信すると、優先度識別情報を受信側ＳＡ記憶部２０２に格納し、優先度識別情報ごとにシーケンス番号の履歴を記憶するように設定する。
【０１０８】
この結果、実施例１によれば、ＳＡ確立時に、パケット送受信システムにおいて用いられるＱｏＳの優先度すべてについて、それぞれ異なる一連のシーケンス番号が設定されるため、厳密な設定を実現することが可能である。
【０１０９】
このように、実施例１によれば、同一のＱｏＳの優先度が設定されたパケットにおいて、送信順と受信順とが同一になる保障がないルータやセキュリティ機器を使用したネットワークにおいても、ＳＡリソースを増やすことなく、リプレイ攻撃チェックを実行可能である。この結果、安価でセキュリティの高いネットワークを提供することが可能となる。特に、無線ネットワークシステムにおいては、隣接するノード間のネットワークとＱｏＳの組み合わせがメッシュ構成となっている。このため、ＳＡリソース数が多く、従来の手法では、多くのＳＡリソースを実現することを目的として、多くの機器や高価な部品を採用していた。これに対して、実施例１によれば、従来採用していた多くの機器や高価な部品を削減するができ、大きな効果を得ることが可能である。
【０１１０】
また、実施例１によれば、すべてのＱｏＳの優先度について、一度にＳＡを確立することが可能である。
【実施例２】
【０１１１】
さて、これまで、実施例１として、パケット送信装置１００が、ＳＡ確立時に、パケット送信装置１００において用いられるＱｏＳの優先度を示す優先度識別情報すべてを送信する手法について説明した。また、その後、パケット受信装置２００が、ＳＡ確立時に、ＱｏＳの優先度全てについて、ＱｏＳの優先度と一連のシーケンス番号との組み合わせを受信側ＳＡ記憶部２０２に格納する手法について説明した。
【０１１２】
しかし、本発明はこれに限定されるものではなく、パケット送信装置１００は、ＱｏＳの優先度の数のみを送信してもよい。また、その後、パケット受信装置２００は、ＳＡ確立時に、ＱｏＳの優先度のみを把握しており、その後、受信したパケットを解析し、ＱｏＳの優先度と一連のシーケンス番号の組み合わせを識別して受信側ＳＡ記憶部２０２に格納してもよい。
【０１１３】
そこで、以下では、実施例２として、ＳＡ確立時にＱｏＳの優先度の数のみを送信する手法について説明する。
【０１１４】
具体的には、異なるＱｏＳの優先度に対して一つのＳＡを確立し、パケット送信装置１００がＱｏＳの優先度の数のみを送信する手法について説明する。また、パケット受信装置２００が、受信したパケットに設定されたＱｏＳの優先度を示す優先度識別情報が受信側ＳＡ記憶部２０２に格納されていない場合に、該優先度識別情報に対応付けてシーケンス番号の履歴を記憶するように設定する手法について説明する。なお、実施例２において説明する手法は、シーケンス制御方式「シーケンス独立方式」に対応する。
【０１１５】
なお、以下では、実施例１に係るパケット送受信システムと同様の点については簡単に説明し、または、説明を省略する。
【０１１６】
［実施例２におけるパケット送信装置およびパケット受信装置の構成］
実施例２における送信側ＩＫＥ処理部１１３と受信側ＩＫＥ処理部２１１とは、共働して、異なるＱｏＳの優先度に対して１つのＳＡを確立する。ここで、送信側ＩＫＥ処理部１１３は、ＱｏＳの優先度の個数を設定したＩＫＥパケットを送信し、図６に示す例を用いて説明すると、ＩＫＥパケットの「トランスフォーム属性」に、ＱｏＳの優先度の数を示すＱｏＳ個数を設定する。例えば、送信側ＩＫＥ処理部１１３は、ＱｏＳの優先度として、「ＥＦ」と「ＢＦ」とをパケット送信装置１００が用いる場合には、ＱｏＳ個数「２」を設定する。
【０１１７】
また、受信側ＩＫＥ処理部２１１は、送信側ＩＫＥ処理部１１３からのＩＫＥパケットを用いて、受信側ＳＡ記憶部２０２に、確立したＳＡについての情報を格納する。ここで、受信側ＩＫＥ処理部２１１は、ＳＡ確立時には、パケット送信装置１００がＱｏＳの優先度が何であるかは把握しておらず、ＱｏＳ個数のみを把握している。このため、図１１に示すように、受信側ＳＡ記憶部２０２は、「ＱｏＳ」各々については、何ら情報が格納されておらず、同様に、「最新シーケンス番号」にも何ら情報が格納されていない。言い換えると、受信側ＩＫＥ処理部２１１は、受信側ＳＡ記憶部２０２に、ＱｏＳ個数分、「ＱｏＳ」ごとに「最新シーケンス番号」を格納するための空きのレコードを予め用意する。また、「ＳＰＩ」や「ＩＰアドレス」、「暗号鍵」、「復号鍵」、「リプレイウィンドウサイズ」については、実施例１と同様であり、説明を省略する。なお、図１１に示す例では、ＱｏＳ個数が「ｎ」である場合を例に示した。なお、図１１は、実施例２における受信側ＳＡ記憶部に記憶される情報の一例を説明するための図である。
【０１１８】
そして、実施例２における受信側ＳＡ処理部２１２は、ＳＡが確立された後にパケット送信装置１００からパケットを受信すると、受信したパケットに対して設定されたＱｏＳの優先度を識別する。そして、識別したＱｏＳの優先度を示す優先度識別情報が受信側ＳＡ記憶部２０２に格納されているか検索する。
【０１１９】
例えば、受信側ＳＡ処理部２１２は、受信したパケットに設定されたＱｏＳの優先度が「ＥＦ」である場合には、「ＱｏＳ」が「ＥＦ」となっている「ＱｏＳ」があるか検索する。
【０１２０】
そして、受信側ＳＡ処理部２１２によって格納されていないとの検索結果を得ると、その旨を受信側ＩＫＥ処理部２１１に送る。その後、受信側ＩＫＥ処理部２１１は、受信側ＳＡ処理部２１２によって識別されたＱｏＳの優先度を示す優先度識別情報を受信側ＳＡ記憶部２０２に格納し、該優先度識別情報に対応付けてシーケンス番号の履歴を記憶するように設定する。
【０１２１】
具体的には、受信側ＩＫＥ処理部２１１は、受信側ＳＡ記憶部２０２に設けられた空きのレコードの内末尾の「ＱｏＳ」を割り当て、識別したＱｏＳの優先度を格納する。例えば、受信側ＩＫＥ処理部２１１は、図１２に示す例では、「ＱｏＳ  ｎｕｌｌ（１）」に、ＱｏＳの優先度「ＥＦ」を格納する。そして、受信側ＩＫＥ処理部２１１は、ＱｏＳ「ＥＦ」に対応付けられる「最新シーケンス番号」を初期化し、例えば、「０」を格納する。なお、図１２は、実施例２における受信側ＳＡ記憶部に記憶される情報の一例を説明するための図である。
【０１２２】
つまり、図１１に示すように、受信側ＩＫＥ処理部２１１は、ＳＡ確立時には、「最新シーケンス番号」や「ＱｏＳ」には何も情報を格納しなかったが、図１２に示すように、受信したパケットについてのＱｏＳの優先度をＱｏＳに格納する。
【０１２３】
このようにして、受信側ＩＫＥ処理部２１１は、受信側ＳＡ記憶部２０２に格納されていないＱｏＳが設定されたパケットを受信するごとに、新たなＱｏＳの優先度を受信側ＳＡ記憶部２０２に格納することになる。
【０１２４】
また、受信側ＳＡ処理部２１２の説明に戻ると、受信側ＳＡ処理部２１２は、格納されているとの検索結果を得ると、受信側ＳＡ記憶部２０２を参照してリプレイ攻撃チェックを実行する。
【０１２５】
［実施例２におけるパケット受信装置の処理］
次に、図１３を用いて、実施例２におけるパケット受信装置２００によるパケット受信処理の流れを説明する。なお、図１３は、実施例２におけるパケット受信装置によるパケット受信処理の流れを説明するためのフローチャートである。なお、実施例２におけるパケット送信装置１００による処理の流れについては、実施例１におけるパケット送信装置１００による処理の流れと同様のため、説明を省略する。
【０１２６】
なお、図１３に示す各処理の内、ステップＳ５０１〜５０３は、それぞれ、図９におけるステップＳ４０１〜Ｓ４０３に対応する。また、ステップＳ５０７〜５１１は、それぞれ、図９におけるステップＳ４０４〜Ｓ４０８に対応する。すなわち、実施例２におけるパケット受信装置２００による処理は、実施例１におけるパケット受信装置２００による処理に、図１３におけるステップＳ５０４〜Ｓ５０６を加えたものになる。
【０１２７】
図１３に示すように、実施例２におけるパケット受信装置２００では、受信側ＳＡ処理部２１２は、パケットを受信すると（ステップＳ５０１肯定）、受信したパケットを解析してＱｏＳの優先度を識別する（ステップＳ５０２、ステップＳ５０３）。
【０１２８】
そして、受信側ＳＡ処理部２１２は、取得したＱｏＳの優先度に対応する情報があるかについて、受信側ＳＡ記憶部２０２を検索し（ステップＳ５０４）、つまり、取得したＱｏＳの優先度を示す優先度識別情報が格納されているかを検索する。例えば、受信側ＳＡ処理部２１２は、受信したパケットに設定されたＱｏＳの優先度が「ＥＦ」である場合には、「ＱｏＳ」が「ＥＦ」となっている「ＱｏＳ」があるか検索する。
【０１２９】
ここで、受信したパケットに設定されたＱｏＳの優先度が受信側ＳＡ記憶部２０２にないと（ステップＳ５０５肯定）、識別したＱｏＳの優先度を空きのレコードに格納する（ステップＳ５０６）。例えば、受信側ＩＫＥ処理部２１１は、「ＱｏＳ  ｎｕｌｌ（１）」にＱｏＳの優先度「ＥＦ」を格納し、「最新シーケンス番号」を初期化して「０」を格納する。そして、受信側ＳＡ処理部２１２は、ステップＳ５０７以降の処理を実行する。
【０１３０】
一方、受信側ＩＫＥ処理部２１１は、受信したパケットに設定されたＱｏＳの優先度に対応する情報が受信側ＳＡ記憶部２０２にあると（ステップＳ５０５否定）、つまり、受信側ＳＡ処理部２１２によって格納されているとの検索結果が得られると、上記したステップＳ５０６を実行することなく、ステップＳ５０７以降の処理を実行する。
【０１３１】
［実施例２の効果］
上記したように、実施例２によれば、パケット送信装置１００は、異なるＱｏＳの優先度に対して１つのＳＡを確立する。そして、パケット受信装置２００は、ＳＡが確立された後にパケット送信装置１００からパケットを受信すると、受信したパケットに対して設定されたＱｏＳの優先度を識別する。そして、パケット受信装置２００は、識別したＱｏＳの優先度を示す優先度識別情報が受信側ＳＡ記憶部２０２に、格納されているか検索する。そして、パケット受信装置２００は、格納されていないとの検索結果が得られる場合に、識別したＱｏＳの優先度を示す優先度識別情報を受信側ＳＡ記憶部２０２に格納し、格納した優先度識別情報に対応付けてシーケンス番号の履歴を記憶するように設定する。
【０１３２】
この結果、ＳＡ確立時にパケットのＱｏＳをすべて指定することなく、送信されたパケットに設定されていた優先度に応じて受信側ＳＡ記憶部２０２を設定でき、実施例１の手法と比較して汎用性を高くすることが可能である。
【実施例３】
【０１３３】
さて、これまで、実施例１や２では、異なるＱｏＳの優先度に対して１つのＳＡを確立する場合について説明した。しかし、本発明はこれに限定されるものではなく、異なるＱｏＳの優先度ごとに異なるＳＡを確立し、暗号鍵や復号鍵などの設定を複数のＳＡが共有してもよい。
【０１３４】
そこで、以下では、実施例３として、異なるＱｏＳの優先度ごとに異なるＳＡを確立し、暗号鍵や復号鍵などの設定を複数のＳＡが共有する手法について説明する。
【０１３５】
具体的には、異なるＱｏＳの優先度ごとに異なるＳＡを確立し、ＳＡを確立する場合に、既に確立されているＳＡにて用いられる情報を参照して用いるＳＡを確立する手法について説明する。なお、実施例３において説明する手法は、シーケンス制御方式「シーケンス鍵共有方式」に対応する。
【０１３６】
実施例３における送信側ＳＡ処理部１１２は、送信側終端部１１１からパケットを受信するごとにＱｏＳの優先度を識別し、識別したＱｏＳの優先度についてＳＡが確立されているかを判定する。例えば、送信側ＳＡ処理部１１２は、送信側ＳＡ記憶部１０２に、識別したＱｏＳに用いられるＳＡに対応する情報が格納されているかを判定する。
【０１３７】
そして、送信側ＳＡ処理部１１２によって格納されていないと判定された場合に、つまり、識別されたＱｏＳの優先度についてＳＡが確立されていない場合に、実施例３における送信側ＩＫＥ処理部１１３と受信側ＩＫＥ処理部２１１とは、新たにＳＡを確立する。
【０１３８】
具体的には、送信側ＩＫＥ処理部１１３は、シーケンス制御方式として「シーケンス鍵共有方式」を希望するＩＫＥパケットをパケット受信装置２００に送信する。ここで、図６に示す例を用いて説明すると、ＩＫＥパケットの「トランスフォーム属性」に、参照元となるＳＡを示す「参照元ＱｏＳ」を設定する。例えば、送信側ＩＫＥ処理部１１３は、既にＱｏＳの優先度「ＥＦ」が既に確立されており、新たなＳＡの参照元とする場合には、参照元ＱｏＳ「ＥＦ」についてのＳＡを識別する「ＳＰＩ「１」」を設定する。その後、受信側ＩＫＥ処理部２１１によってシーケンス制御方式として「シーケンス鍵共有方式」が選択されると、送信側ＩＫＥ処理部１１３と受信側ＩＫＥ処理部２１１とは、「シーケンス鍵共有方式」にてＳＡを確立する。
【０１３９】
ここで、ＳＡを確立する処理について、受信側ＩＫＥ処理部２１１を例に説明する。受信側ＩＫＥ処理部２１１は、参照元として指定されたＳＡが既に確立されているか受信側ＳＡ記憶部２０２を検索し、確立されていないとの検索結果が得られると、ＳＡにて用いる暗号鍵や復号鍵などを共働して新たに決定し、新たなＳＡを一から確立する。例えば、図１４に示すように、受信側ＩＫＥ処理部２１１は、暗号鍵や復号鍵を送信側ＩＫＥ処理部１１３とのネゴシエーションにより決定し、ＱｏＳの優先度「ＥＦ」についてのＳＰＩ「１」を新たに確立する。
【０１４０】
また、受信側ＩＫＥ処理部２１１は、参照元として指定されたＳＡが既に確立されているか受信側ＳＡ記憶部２０２を検索し、確立されているとの検索結果が得られると、既に確立されているＳＡにて用いられる暗号鍵や復号鍵を参照して用いるＳＡを確立する。例えば、図１５に示すように、受信側ＩＫＥ処理部２１１とは、新たにＳＰＩ「２」を確立し、その際、「ＩＰアドレス」や「暗号鍵」、「復号鍵」について新たに共働して決定することなく、参照元となるＳＰＩ「１」の内容をそのまま使用する。図１５に示す例では、受信側ＩＫＥ処理部２１３は、「ＩＰアドレス」や「暗号鍵」、「復号鍵」について、「ＳＰＩ「１」を参照」と受信側ＳＡ記憶部２０２に格納し、言い換えると、ＳＰＩ「１」の「ＩＰアドレス」や「暗号鍵」、「復号鍵」にリンク設定を行う。なお、送信側ＩＫＥ処理部１１３も、受信側ＩＫＥ処理部２１１と同様にＳＡを確立する。
【０１４１】
つまり、送信側ＩＫＥ処理部１１３や受信側ＩＫＥ処理部２１１は、参照元として指定されたＳＡが確立されているかを検索する。そして、送信側ＩＫＥ処理部１１３や受信側ＩＫＥ処理部２１１は、ある場合には、つまり、参照元として指定されたＳＡがあり、具体的には、二回目以降にＳＡを確立する場合には、新たな「暗号鍵」や「復号鍵」をネゴシエーションにより決定することなく、確立されていたＳＡの「暗号鍵」や「復号鍵」を共働して使用するＳＡを確立する。
【０１４２】
［実施例３におけるＳＡ確立処理］
次に、図１６を用いて、実施例３におけるＳＡ確立処理の流れについて説明する。なお、図１６は、実施例３におけるＳＡ確立処理の流れを説明するためのフローチャートである。なお、図１６に示す処理は、図７におけるステップＳ２０５やＳ２０６に対応する。
【０１４３】
以下では、既に、ＩＫＥパケットを送受信することで、「シーケンス鍵共有方式」にてＳＡを確立することを決定したものとし、「シーケンス鍵共有方式」を用いて新たにＳＡを確立する処理について説明する。また、以下では、受信側ＩＫＥ処理部２１１を例に説明するが、送信側ＩＫＥ処理部１１３であっても同様の処理にてＳＡを確立する。
【０１４４】
図１６に示すように、受信側ＩＫＥ処理部２１１は、参照元となるＳＡがあるかを検索する（ステップＳ６０１）。そして、受信側ＩＫＥ処理部２１１は、参照元となるＳＡがないとの検索結果が得られると（ステップＳ６０１否定）、ＳＡにて用いる暗号鍵や復号鍵などを送信側ＩＫＥ処理部１１３と共働して決定し、新たなＳＡを一から確立する（ステップＳ６０２）。
【０１４５】
一方、受信側ＩＫＥ処理部２１１は、参照元となるＳＡがあるとの検索結果が得られると（ステップＳ６０１肯定）、既に確立されている参照元となるＳＡにて用いられる暗号鍵や復号鍵にリンク設定するＳＡを確立する（ステップＳ６０３）。
【０１４６】
［実施例３の効果］
上記したように、実施例３によれば、パケット送信装置１００は、異なるＱｏＳの優先度ごとに異なるＳＡを確立する。また、送信側ＩＫＥ処理部１１３や受信側ＩＫＥ処理部２１１は、ＳＡを確立する場合に、ＳＡを確立するＱｏＳの優先度とは異なる他の優先度についてＳＡが確立されているかを判定し、確立されていると判定した場合に、既に確立されているＳＡにて用いられる情報を共有するＳＡを確立する。この結果、実施例３によれば、ＳＡを確立するごとに、暗号鍵や復号鍵などをネゴシエーションにより決定する処理を不要にすることが可能である。また、他のＳＡの暗号鍵や復号鍵などを参照するＳＡを確立することで、複数のＳＡを確立する場合であっても、管理するデータ量の増加を抑制することが可能である。
【実施例４】
【０１４７】
さて、上記した実施例１では、最新のシーケンス番号とリプレイウィンドウサイズとを用いてリプレイ攻撃チェックを実行する手法について説明した。しかし、本発明はこれに限定されるものではなく、例えば、パケット受信装置２００は、優先度ごとに、パケット送信装置から受信したパケットに付与されていたシーケンス番号を所定数履歴として記憶し、リプレイ攻撃チェックを実行してもよい。
【０１４８】
そこで、以下では、受信側ＳＡ記憶部２０２が、優先度ごとに、シーケンス番号を所定の数履歴として記憶する手法について説明する。また、受信側ＳＡ処理部２１２が、履歴に含まれるシーケンス番号と重複せず、履歴に含まれるシーケンス番号の内最小の番号よりも小さい番号ではないかを照合する手法について説明する。なお、実施例４にて説明する手法は、「シーケンス番号保持方式」とも称する。
【０１４９】
具体的には、受信側ＳＡ記憶部２０２は、優先度ごとに、パケット送信装置１００から受信したパケットに付与されていたシーケンス番号を所定数履歴として記憶する。例えば、図１７の（１）に示す例では、受信側ＳＡ記憶部２０２は、４つのシーケンス番号を記憶し、例えば、「８０」と「１００」と「１０２」と「１０３」とを記憶する。なお、図１７は、シーケンス番号保持方式によるリプレイ攻撃チェック処理を説明するための図である。
【０１５０】
そして、受信側ＳＡ処理部２１２は、受信したパケットに対して付与されたシーケンス番号について、受信側ＳＡ記憶部２０２に記憶されたシーケンス番号の履歴と照合し、リプレイ攻撃チェックを実行する。具体的には、受信側ＳＡ処理部２１２は、受信したパケットに付与されたシーケンス番号について、履歴に含まれるシーケンス番号と重複せず、履歴に含まれるシーケンス番号の内最小の番号よりも小さい番号ではないかを照合する。
【０１５１】
ここで、図１８を用いて、さらに詳細に説明する。なお、図１８は、シーケンス番号保持方式によるリプレイ攻撃チェック処理の流れを説明するためのフローチャートである。図１８に示すように、リプレイ攻撃チェックを実行する場合に（ステップＳ７０１肯定）、受信側ＳＡ処理部２１２は、受信したパケットに付与されたシーケンス番号が、履歴に含まれるシーケンス番号と重複するかを照合する（ステップＳ７０２）。ここで、図１７の（１）に示す例では、受信したパケットに付与されたシーケンス番号が「１００」である場合には、履歴に含まれるシーケンス番号と重複するため（ステップＳ７０２肯定）、パケットを破棄する（ステップＳ７０３）。
【０１５２】
そして、重複しない場合には（ステップＳ７０２否定）、受信側ＳＡ処理部２１２は、受信したパケットに付与されたシーケンス番号が、履歴に含まれるシーケンス番号の内最小の番号よりも小さい番号ではないかを照合する（ステップＳ７０４）。ここで、図１７の（１）に示す例では、受信したパケットに付与されたシーケンス番号が「５０」である場合には、履歴に含まれるシーケンス番号の内最小の番号よりも小さい番号になり（ステップＳ７０４肯定）、パケットを破棄する（ステップＳ７０３）。
【０１５３】
そして、履歴に含まれるシーケンス番号の内最小の番号よりも小さい番号でないと判定すると（ステップＳ７０４否定）、例えば、受信したパケットに付与されたシーケンス番号が「１０１」や「１２０」である場合に、パケットを復号化する（ステップＳ７０５）。
【０１５４】
また、受信側ＳＡ処理部２１２は、履歴に含まれるシーケンス番号を更新する。例えば、図１７の（２）に示すように、受信側ＳＡ処理部２１２は、履歴に含まれるシーケンス番号の内、「８０」や「１００」を削除し、「１０１」や「１２０」を格納することで、「１０１」と「１０２」と「１０３」と「１２０」との４つに更新する。
【０１５５】
なお、上記したように、リプレイ攻撃チェックを実行する場合には、パケット送信装置１００は、ＱｏＳの優先度ごとに異なる一連のシーケンス番号を付与せず、パケット受信装置２００にて、優先度ごとにシーケンス番号の履歴を記憶し、リプレイ攻撃チェックを実行してもよい。
【０１５６】
また、例えば、シーケンス番号保持方式によるリプレイ攻撃チェックを行う場合には、ＳＡを確立する際に、シーケンス番号保持方式によるリプレイ攻撃チェックを希望する旨の情報をＩＫＥパケットに設定する。
【０１５７】
［実施例４の効果］
このように、シーケンス番号保持方式によるリプレイ攻撃チェックを行うことで、リプレイウィンドウサイズを不要とすることが可能である。また、パケット送信装置１００による送信順番と、パケット受信装置２００による受信順番とが大きく異なったとしても、不当なパケット破棄を防止することが可能である。例えば、実施例１のように、リプレイウィンドウサイズを用いる手法では、リプレイウィンドウサイズよりも大きく送信順番と受信順番とが異なった場合には、不当なパケット破棄が発生してしまう。これに対して、シーケンス番号保持方式によるリプレイ攻撃チェックによれば、このような不当なパケット破棄を防止することが可能である。
【０１５８】
また、例えば、ＱｏＳの優先度ごとに異なる一連のシーケンス番号を付与しない場合であっても、不当なパケット破棄を防止可能である。図１０の（１）に示す例を用いて説明する。具体的には、ＱｏＳの優先度「ＥＦ」が設定された連続するパケットについて、シーケンス番号「９」〜「１５」が付与され、ＱｏＳの優先度「ＢＦ」が設定された連続するパケットについて、シーケンス番号「８」「１６」が付与された場合を例として用いる。ここで、ＱｏＳの優先度「ＢＦ」が設定された連続するパケットに対して、シーケンス番号「８」「１６」がそれぞれ付与されており、例えば、リプレイウィンドウサイズが「４」である場合には、「８」と「１６」との受信順が入れ替わり、「１６」「８」という受信順になってしまうと、従来のパケット受信装置は、後から受信する「８」のパケットが破棄する。これに対して、実施例４によれば、履歴とするシーケンス番号と重複するか、あるいは、履歴となるシーケンス番号の内最も小さい番号よりも小さいかを判定するので、不当なパケット破棄を防止することが可能である。
【実施例５】
【０１５９】
さて、これまで本発明の実施例について説明したが、本発明は上述した実施例以外にも、その他の実施例にて実施されてもよい。そこで、以下では、その他の実施例について説明する。
【０１６０】
［シーケンス最新番号方式によるリプレイ攻撃チェック］
また、例えば、パケット受信装置２００にて、受信したパケットに付与されていたシーケンス番号と、最新のシーケンス番号との大小を比較するのみで、リプレイ攻撃チェックを実行してもよい。
【０１６１】
具体的には、受信側ＳＡ記憶部２０２は、受信したパケットに付与されていたシーケンス番号の内最新のシーケンス番号のみを優先度ごとに履歴として記憶する。そして、図１９に示すように、受信側ＳＡ処理部２１２は、リプレイ攻撃チェックを実行する場合に（ステップＳ８０１肯定）、最新のシーケンス番号以下であるかを判定する（ステップＳ８０２）。ここで、受信側ＳＡ処理部２１２は、最新のシーケンス番号以下である場合には（ステップＳ８０２肯定）、パケットを破棄する（ステップＳ８０３）。一方、受信側ＳＡ処理部２１２は、最新のシーケンス番号以下でない場合には（ステップＳ８０２否定）、パケットを復元化する（ステップＳ８０４）。なお、図１９は、シーケンス最新番号方式によるリプレイ攻撃チェック処理の流れを説明するためのフローチャートである。
【０１６２】
このように、例えば、送信順と受信順との入れ替えが発生しない環境においては、最新のシーケンス番号のみを用いてリプレイ攻撃チェックを実行することで、リプレイ攻撃チェック実行時の処理負荷を軽減でき、高速・低負荷なリプレイ攻撃チェックを実現することが可能である。
【０１６３】
［実施例の組み合わせについて］
例えば、実施例１や２、３にて説明した「シーケンスリスト方式」や「シーケンス独立方式」、「シーケンス鍵共有方式」に加えて、実施例４にて説明した「シーケンス最新番号確認方式」または「シーケンス番号保持方式」を併せて実施してもよい。
【０１６４】
［システム構成］
また、本実施例において説明した各処理のうち、自動的におこなわれるものとして説明した処理の全部または一部を手動的におこなうこともでき、あるいは、手動的におこなわれるものとして説明した処理の全部または一部を公知の方法で自動的におこなうこともできる。例えば、上記した実施例では、ＳＡを自動的に確立する手法について説明したが、本発明はこれに限定されるものではなく、パケット送受信システムを管理する管理者が手動にて確立してもよい。
【０１６５】
また、この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報（図１〜図１９）については、特記する場合を除いて任意に変更することができる。例えば、図１８に示す例では、ステップＳ７０２とＳ７０４とを入れ替えても良い。
【０１６６】
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、図２に示す例を用いて説明すると、パケット送信装置１００とパケット受信装置２００とが有する機能を併せて備えるパケット送受信装置としてもよい。
【０１６７】
［コンピュータ］
また、上記の実施例で説明した各種の処理は、あらかじめ用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータで実行することによって実現することができる。そこで、以下では、図２０を用いて、上記したパケット送信装置１００とパケット受信装置２００とが有する機能を併せて備えるパケットと同様の機能を有するパケット送受信プログラムを実行するコンピュータの一例を説明する。なお、図２０は、実施例１に係るパケット送受信プログラムを実行するコンピュータの一例について説明するための図である。
【０１６８】
図２０に示すように、コンピュータ３０００は、ＣＰＵ（Central  Processing  Unit）３０１０、ＲＯＭ（Read  Only  Memory）３０１１、ＨＤＤ（Hard  Disk  Drive）３０１２、ＲＡＭ（Random  Access  Memory）３０１３をバス３００９などで接続して構成されている。
【０１６９】
ＲＯＭ３０１１には、上記の実施例１で示した送信側終端部１１１や受信側終端部２１３、送信側ＳＡ処理部１１２や受信側ＳＡ処理部２１２、送信側ＩＫＥ処理部１１３や受信側ＩＫＥ処理部２１１と同様の機能を発揮する制御プログラムを備える。つまり、図２０に示すように、終端プログラム３０１１ａと、ＳＡ処理プログラム３０１１ｂと、ＩＫＥ処理プログラム３０１１ｃとが予め記憶されている。なお、これらのプログラム３０１１ａ〜３０１１ｃについては、図２に示したパケット送信装置１００やパケット受信装置２００の各部と同様、適宜統合または分離してもよい。
【０１７０】
そして、ＣＰＵ３０１０が、これらのプログラム３０１１ａ〜３０１１ｃをＲＯＭ３０１１から読み出して実行することにより、図２０に示すように、各プログラム３０１１ａ〜３０１１ｃについては、終端プロセス３０１０ａと、ＳＡ処理プロセス３０１０ｂと、ＩＫＥ処理プロセス３０１０ｃとして機能するようになる。なお、各プロセス３０１０ａ〜３０１０ｃは、それぞれ、図２に示した送信側終端部１１１や受信側終端部２１３、送信側ＳＡ処理部１１２や受信側ＳＡ処理部２１２、送信側ＩＫＥ処理部１１３や受信側ＩＫＥ処理部２１１に対応する。
【０１７１】
そして、ＨＤＤ３０１２には、ポリシテーブル３０１２ａと、ＳＡテーブル３０１２ｂとが設けられている。なお、各テーブル３０１２ａ〜３０１２ｂは、それぞれ、図３に示した送信側ポリシ記憶部１０１や受信側ポリシ記憶部２０１、送信側ＳＡ記憶部１０２や受信側ＳＡ記憶部２０２に対応する。
【０１７２】
そして、ＣＰＵ３０１０は、ポリシテーブル３０１２ａと、ＳＡテーブル３０１２ｂとを読み出してＲＡＭ３０１３に格納し、ＲＡＭ３０１３に格納されたポリシデータ３０１３ａと、ＳＡデータ３０１３ｂと、パケットデータ３０１３ｃと、ＱｏＳの優先度データ３０１３ｄと、シーケンス番号データ３０１３ｅとを用いて、パケット送受信プログラムを実行する。
【０１７３】
以上の各実施例を含む実施形態に関し、さらに以下の付記を開示する。
【０１７４】
（付記１）パケット送信装置とパケット受信装置とを有するパケット送受信システムであって、
前記パケット送信装置は、
異なる通話品質の優先度が設定されたパケットに対して同一の暗号鍵を用いて暗号化する暗号化部と、
前記暗号化部によって暗号化されたパケットに対して、該パケットに設定された通話品質の優先度ごとに異なる一連のシーケンス番号を付与して送信する送信部とを備え、
前記パケット受信装置は、
前記パケット送信装置から受信したパケットに付与されていたシーケンス番号の履歴を優先度ごとに記憶する記憶部と、
前記パケット送信装置からパケットを受信すると、受信したパケットに対して前記送信部によって付与されたシーケンス番号を識別し、受信したパケットに設定された通話品質の優先度に対応付けて前記記憶部に記憶された履歴と照合することで、受信したパケットが既に受信済みかを判定する判定部と
前記判定部によって受信済みではないと判定された場合に、異なる通話品質の優先度が設定されたパケットに対して同一の復号鍵を用いてパケットを復号する復号部と
を備えたことを特徴とするパケット送受信システム。
【０１７５】
（付記２）前記パケット送信装置と前記パケット受信装置とは、異なる通話品質の優先度に対して一つのセキュリティアソシエーションを前記パケット受信装置と確立する第一の確立部を備え、
前記パケット送信装置において、前記第一の確立部は、セキュリティアソシエーションを確立する場合に、前記パケット受信装置に対して、前記パケット送信装置から送信されるパケットに設定される通話品質の優先度を識別する優先度識別情報を送信し、
前記パケット受信装置において、前記第一の確立部は、前記パケット送信装置によって送信された優先度識別情報各々を受信すると、該優先度識別情報を前記記憶部に格納し、該優先度識別情報ごとにシーケンス番号の履歴を記憶するように該記憶部を設定することを特徴とする付記１に記載のパケット送受信システム。
【０１７６】
（付記３）前記パケット送信装置と前記パケット受信装置とは、異なる通話品質の優先度に対して一つのセキュリティアソシエーションを確立する第二の確立部を備え、
前記第二の確立部は、前記パケット送信装置からパケットを受信すると、受信したパケットに対して設定された通話品質の優先度を示す優先度識別情報が前記記憶部に格納されているか検索し、格納されていないとの検索結果が得られると、受信したパケットに対して設定された通話品質の優先度を示す優先度識別情報を該記憶部に格納し、該優先度識別情報に対応付けてシーケンス番号の履歴を記憶するように該記憶部を設定することを特徴とする付記１に記載のパケット送受信システム。
【０１７７】
（付記４）前記パケット送信装置と前記パケット受信装置とは、異なる通話品質の優先度ごとに異なるセキュリティアソシエーションを確立する第三の確立部を備え、
前記第三の確立部は、セキュリティアソシエーションを確立する場合に、セキュリティアソシエーションを確立する通話品質の優先度とは異なる通話品質の優先度についてセキュリティアソシエーションが既に確立されているかを判定し、確立されていると判定した場合に、既に確立されているセキュリティアソシエーションにて用いられる情報を共有するセキュリティアソシエーションを確立することを特徴とする付記１に記載のパケット送受信システム。
【０１７８】
（付記５）前記記憶部は、優先度ごとに、前記パケット送信装置から受信したパケットに付与されていたシーケンス番号を所定の数履歴として記憶し、
前記判定部は、受信したパケットに対して付与されたシーケンス番号と前記記憶部に記憶された履歴とを照合する場合に、受信したパケットに付与されたシーケンス番号について、履歴に含まれるシーケンス番号と重複せず、履歴に含まれるシーケンス番号の内最小の番号よりも小さい番号ではないかを照合することで、パケットが受信済みではないかを判定することを特徴とする付記１〜４の内いずれか一つに記載のパケット送受信システム。
【０１７９】
（付記６）前記記憶部は、受信したパケットに付与されていたシーケンス番号の内最新のシーケンス番号のみを優先度ごとに履歴として記憶することを特徴とする付記１〜４の内いずれか一つに記載のパケット送受信システム。
【０１８０】
（付記７）パケットを送信する場合に、異なる通話品質の優先度が設定されたパケットに対して同一の暗号鍵を用いて該パケットを暗号化する暗号化部と、
前記暗号化部によって暗号化されたパケットに対して、該パケットに設定された通話品質の優先度ごとに異なる一連のシーケンス番号を付与して送信する送信部とを備え、
パケットを受信する場合に、
受信したパケットに付与されていたシーケンス番号の履歴を優先度ごとに記憶する記憶部と、
パケットを受信すると、受信したパケットに対して前記送信部によって付与されたシーケンス番号を識別し、受信したパケットに設定された通話品質の優先度に対応付けて前記記憶部に記憶された履歴と照合することで、受信したパケットが既に受信済みかを判定する判定部と
前記判定部によって受信済みではないと判定された場合に、異なる通話品質の優先度が設定されたパケットに対して同一の復号鍵を用いてパケットを復号する復号部と
を備えたことを特徴とするパケット送受信装置。
【０１８１】
（付記８）パケット送信装置とパケット受信装置とを有するパケット送受信方法であって、
パケットを送信する場合に、異なる通話品質の優先度が設定されたパケットに対して同一の暗号鍵を用いて該パケットを暗号化する暗号化ステップと、
前記暗号化ステップによって暗号化されたパケットに対して、該パケットに設定された通話品質の優先度ごとに異なる一連のシーケンス番号を付与して送信する送信ステップと含み、
パケットを受信する場合に、受信したパケットに対して前記送信テップ部によって付与されたシーケンス番号を識別し、前記パケット送信装置から受信したパケットに付与されていたシーケンス番号の履歴を優先度ごとに記憶する記憶部に記憶された履歴の内受信したパケットに設定された通話品質の優先度に対応付けられた履歴と照合することで、受信したパケットが既に受信済みかを判定する判定ステップと
前記判定ステップによって受信済みではないと判定された場合に、異なる通話品質の優先度が設定されたパケットに対して同一の復号鍵を用いてパケットを復号する復号ステップと
を含んだことを特徴とするパケット送受信方法。
【符号の説明】
【０１８２】
１００  パケット送信装置
１０１  送信側ポリシ記憶部
１０２  送信側ＳＡ記憶部
１１１  送信側終端部
１１２  送信側ＳＡ処理部
１１３  送信側ＩＫＥ処理部
２００  パケット受信装置
２０１  受信側ポリシ記憶部
２０２  受信側ＳＡ記憶部
２１１  受信側ＩＫＥ処理部
２１２  受信側ＳＡ処理部
２１３  受信側終端部
【図１】
2010273225.tif 000003
【図２】
2010273225.tif 000004
【図３】
2010273225.tif 000005
【図４】
2010273225.tif 000006
【図５】
2010273225.tif 000007
【図６】
2010273225.tif 000008
【図７】
2010273225.tif 000009
【図８】
2010273225.tif 000010
【図９】
2010273225.tif 000011
【図１０】
2010273225.tif 000012
【図１１】
2010273225.tif 000013
【図１２】
2010273225.tif 000014
【図１３】
2010273225.tif 000015
【図１４】
2010273225.tif 000016
【図１５】
2010273225.tif 000017
【図１６】
2010273225.tif 000018
【図１７】
2010273225.tif 000019
【図１８】
2010273225.tif 000020
【図１９】
2010273225.tif 000021
【図２０】
2010273225.tif 000022
【図２１】
2010273225.tif 000023