(57)【特許請求の範囲】
【請求項１】
通信装置であって、
他の通信装置と暗号通信する通信手段と、
前記通信手段による暗号通信に用いられるパラメータとして、第１のパラメータと第２のパラメータとを保持する保持手段と、
前記保持手段により保持する前記第１のパラメータを用いた暗号通信を行うことができる期限を示す第１の有効期限と、前記第２のパラメータを用いた暗号通信を行うことができる期限を示す第２の有効期限とを比較し、比較の結果、短い方の有効期限とされた有効期限より第１の所定の期間分前の時点を、前記パラメータの更新処理ができない第１の状態から前記パラメータの更新処理が可能な第２の状態に前記通信装置の動作状態を遷移させるタイミングとして決定する決定手段と、
前記通信装置が前記第１の状態で動作している場合に、前記決定手段により決定された前記タイミングに基づいて動作状態を前記第２の状態に遷移させる制御手段と、
前記制御手段が前記通信装置の動作状態を前記第１の状態から前記第２の状態に遷移させたことに応じて、前記パラメータの更新処理を行う更新手段と、
を有することを特徴とする通信装置。
【請求項２】
前記通信装置の動作状態が前記第２の状態から前記第１の状態に遷移する際に、前記決定手段は前記タイミングを設定することを特徴とする請求項１に記載の通信装置。
【請求項３】
前記保持手段により保持している前記パラメータの内、第２の所定の期間内に行われた前記通信手段による暗号通信に用いられる前記パラメータを選択する選択手段を更に有し、
前記決定手段は、前記選択手段により選択された前記パラメータの有効期限を比較し、比較の結果、短い方の有効期限とされた有効期限より前記第１の所定の期間分前の時点を前記タイミングとして決定することを特徴とする請求項１または２に記載の通信装置。
【請求項４】
前記通信装置が前記第１の状態で動作しており、前記選択手段により選択されなかった前記パラメータを利用する暗号通信を行った場合に、前記決定手段により決定した前記タイミングを該パラメータの有効期限に基づいて変更する変更手段を更に有することを特徴とする請求項３に記載の通信装置。
【請求項５】
前記通信手段は、ＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）に準拠した通信を暗号化して前記他の通信装置と通信することを特徴とする請求項１から４のいずれか１項に記載の通信装置。
【請求項６】
前記通信手段は、前記他の通信装置とＩＰＳｅｃ（Ｓｅｃｕｒｉｔｙ  Ａｒｃｈｉｔｅｃｔｕｒｅ  ｆｏｒ  ｔｈｅ  Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）に準拠した暗号通信を行うことを特徴とする請求項１から５のいずれか１項に記載の通信装置。
【請求項７】
前記パラメータは、ＳＡ（Ｓｅｃｕｒｉｔｙ  Ａｓｓｏｃｉａｔｉｏｎ）であることを特徴とする請求項１から６のいずれか１項に記載の通信装置。
【請求項８】
前記更新手段は、ＩＫＥ（Ｉｎｔｅｒｎｅｔ  Ｋｅｙ  Ｅｘｃｈａｎｇｅ）プロトコルに準拠した更新処理を行うことを特徴とする請求項１から７のいずれか１項に記載の通信装置。
【請求項９】
前記決定手段は、前記保持手段が保持する前記パラメータの有効期限を比較し、比較の結果、最も短い有効期限とされた有効期限より前記第１の所定の期間分前の時点を前記タイミングとして決定することを特徴とする請求項１から８のいずれか１項に記載の通信装置。
【請求項１０】
通信装置の制御方法であって、
他の通信装置との暗号通信に用いられるパラメータとして、第１のパラメータと第２のパラメータとを保持する保持工程と、
前記保持工程により保持した前記第１のパラメータを用いた暗号通信を行うことができる期限を示す第１の有効期限と、前記第２のパラメータを用いた暗号通信を行うことができる期限を示す第２の有効期限とを比較し、比較の結果、短い方の有効期限とされた有効期限より所定の期間分前の時点を、前記パラメータの更新処理ができない第１の状態から前記パラメータの更新処理が可能な第２の状態に、前記通信装置の動作状態を遷移させるタイミングとして決定する決定工程と、
前記通信装置が前記第１の状態で動作している場合、前記決定工程により決定された前記タイミングに基づいて動作状態を前記第２の状態に遷移させる遷移工程と、
前記通信装置の動作状態が前記第１の状態から前記第２の状態に遷移されたことに応じて、前記パラメータの更新処理を行う更新工程と、
を有することを特徴とする制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、暗号通信を行う通信装置に関する。
【背景技術】
【０００２】
ＩＰＳｅｃ（Ｓｅｃｕｒｉｔｙ  Ａｒｃｈｉｔｅｃｔｕｒｅ  ｆｏｒ  ｔｈｅ  Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）により暗号通信を行う技術がある。ＩＰＳｅｃでは、暗号通信に用いられるパラメータに有効期限が定められている。当該パラメータは、ＳＡ（Ｓｅｃｕｒｉｔｙ  Ａｓｓｏｃｉａｔｉｏｎ）と呼ばれ、有効期限が切れるとＳＡを更新するまで暗号通信ができなくなる。
【０００３】
一方、通信機能を有したカメラなどの通信装置では省電力化が求められており、撮像などが行われていない場合には省電力状態に遷移する。省電力状態では、消費電力を低減するために多くのハードウェアモジュールへの電力提供を停止している。このとき、ＳＡを更新するために用いられるハードウェアモジュールも電力を消費するため電力提供を停止している（特許文献１）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００６−３０９４３８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
従って、省電力状態ではＳＡの更新処理を行うことができないため、省電力状態である際にＳＡの有効期限が切れると、その後、暗号通信ができなくなってしまう。
【０００６】
上記課題を鑑み、第１の電力状態で動作している際に、暗号通信に用いられるパラメータの有効期限が切れないようにすることを目的とする。
【課題を解決するための手段】
【０００７】
上記課題を鑑み、本発明の通信装置は、他の通信装置と暗号通信する通信手段と、前記通信手段による暗号通信に用いられるパラメータとして、第１のパラメータと第２のパラメータとを保持する保持手段と、前記保持手段により保持する前記第１のパラメータを用いた暗号通信を行うことができる期限を示す第１の有効期限と、前記第２のパラメータを用いた暗号通信を行うことができる期限を示す第２の有効期限とを比較し、比較の結果、短い方の有効期限とされた有効期限より第１の所定の期間分前の時点を、前記パラメータの更新処理ができない第１の状態から前記パラメータの更新処理が可能な第２の状態に前記通信装置の動作状態を遷移させるタイミングとして決定する決定手段と、前記通信装置が前記第１の状態で動作している場合に、前記決定手段により決定された前記タイミングに基づいて動作状態を前記第２の状態に遷移させる制御手段と、前記制御手段が前記通信装置の動作状態を前記第１の状態から前記第２の状態に遷移させたことに応じて、前記パラメータの更新処理を行う更新手段と、を有する。
【発明の効果】
【０００８】
本発明によれば、第１の電力状態で動作している間に、暗号通信に用いられるパラメータの有効期限が切れないようにすることができる。
【図面の簡単な説明】
【０００９】
【図１】通信システム構成図
【図２】通信装置のハードウェア構成図
【図３】通信装置の状態遷移図
【図４】通信装置が実現するフローチャート
【図５】通信装置が実現するフローチャート
【発明を実施するための形態】
【００１０】
＜実施形態１＞
図１に、本実施形態の通信システム構成図を示す。通信装置１０１は、リモートコントローラ（以下、コントローラ）１０２とＬＡＮやＷＡＮ等のネットワークを介して接続されている。ここで、通信装置１０１およびコントローラ１０２とは、具体的には、カメラ、プリンタ、スマートフォン、ＰＣ、サーバ、ストレージ、プロジェクタ、ディスプレイ、ルータ、ネットワークカメラ、車両等である。
【００１１】
また、ネットワークは、ここではイーサネット（登録商標）であるものとして説明するが、無線ネットワークや光ファイバーネットワーク等であってもよい。無線ネットワークとして、例えば、ＩＥＥＥ８０２．１１シリーズ（Ｗｉ−Ｆｉ）、Ｂｌｕｅｔｏｏｔｈ（登録商標）、ＬＴＥ、ＺｉｇＢｅｅ、ＭＢＯＡ、ＵＷＢ（ＷＵＳＢ、Ｗ１３９４、ＷＩＮＥＴ）などに準拠した無線ネットワークがある。ここで、ＭＢＯＡとは、Ｍｕｌｔｉ  Ｂａｎｄ  ＯＦＤＭ  Ａｌｌｉａｎｃｅの略である。
【００１２】
また、通信装置１０１はコントローラ１０２とＴＣＰ／ＩＰに準拠した通信（以下、ＴＣＰ／ＩＰ通信）を行う。ＴＣＰとはＴｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌの略であり、ＩＰとはＩｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌの略である。なお、ＴＣＰに代えてＵＤＰ（Ｕｓｅｒ  Ｄａｔａｇｒａｍ  Ｐｒｏｔｏｃｏｌ）であってもよい。以下、ＩＰに準拠したパケットのことをＩＰパケットと称する。
【００１３】
通信装置１０１は、更にＩＰＳｅｃ（Ｓｅｃｕｒｉｔｙ  Ａｒｃｈｉｔｅｃｔｕｒｅ  ｆｏｒ  ｔｈｅ  Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）を利用した暗号通信をコントローラ１０２と行うことができる。ＩＰＳｅｃではＩＰに準拠した通信を暗号化する。このような暗号通信をＩＰＳｅｃ通信と呼ぶ。ＩＰＳｅｃ通信では、ＩＰパケットをＩＰＳｅｃに従って暗号化されたＩＰＳｅｃパケットを送受信する。
【００１４】
ＩＰＳｅｃを利用することで、通信装置１０１はコントローラ１０２との通信の秘匿化や認証を行って、通信内容を保護することができる。
【００１５】
本実施形態では、通信装置１０１はＩＰＳｅｃを利用して、通信装置１０１に対する操作指示をコントローラ１０２から受信する。また、通信装置１０１はＩＰＳｅｃを利用して、通信装置１０１の状態を問合せる問合せをコントローラ１０２から受信する。そして、通信装置１０１はＩＰＳｅｃを利用して、当該問合せに対する応答をコントローラ１０２に送信する。
【００１６】
また、通信装置１０１はＩＰＳｅｃを利用して、コントローラ１０２から映像データや画像データ等の様々なデータを通信する。また、当該データに対する所定の処理の結果についても、通信装置１０１はＩＰＳｅｃを利用してコントローラ１０２と通信する。
【００１７】
また、通信装置１０１はＩＰＳｅｃを利用した暗号通信を複数の他の通信装置と並行して行うことができる。
【００１８】
図２に、通信装置１０１のハードウェア構成を示す。通信装置１０１は、ネットワーク通信部２０１、アプリケーションシステム部２０２、および、電源制御部２０３を有する。
【００１９】
まず、ネットワーク通信部２０１の内部構成について説明する。ネットワーク通信部２０１を構成するハードウェアモジュールの各々はローカルバス２１９を介して接続されている。
【００２０】
通信制御部２１１は、ネットワーク１１０に接続しており、ネットワーク１１０を介してコントローラ１０２とＩＰパケットを含む伝送フレームを送受信する。例えば、ネットワーク１１０がイーサネット（登録商標）の場合、通信制御部２１１は、イーサネット（登録商標）のＭＡＣ処理（伝送メディア制御処理）を行って、伝送フレームを送受信する。このＭＡＣはＭｅｄｉａ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌの略である。ローカルＲＡＭ２１２は、ネットワーク通信部２０１の一時記憶メモリである。
【００２１】
ＤＢ部２１３は、ＴＣＰ／ＩＰ通信やＩＰｓｅｃ通信に必要な情報を管理するためのデータベースである。より具体的には、ＤＢ部２１３は、ＴＣＰ／ＩＰ通信のコネクション情報を管理する。コネクション情報には、例えば、通信装置１０１とコントローラ１０２の各々のＩＰアドレスや、ＴＣＰやＵＤＰのポート番号、ＴＣＢ（ＴＣＰ  Ｃｏｎｔｒｏｌ  Ｂｌｏｃｋ）などが含まれる。
【００２２】
更に、ＤＢ部２１３は、ＩＰｓｅｃ処理に用いられるＳＡ（Ｓｅｃｕｒｉｔｙ  Ａｓｓｏｃｉａｔｉｏｎ）と、複数のＳＡを集約したＳＡＤ（Ｓｅｃｕｒｉｔｙ  Ａｓｓｏｃｉａｔｉｏｎ  Ｄａｔａｂａｓｅ）とを管理する。
【００２３】
ここで、ＳＡとは、ＩＰＳｅｃを利用するＩＰセッション（ＩＰＳｅｃセッション）毎に生成され、通信装置１０１とコントローラ１０２とで共有されるパラメータである。通常、１つのＩＰＳｅｃセッションに対して、ＩＰＳｅｃパケットを送信するために用いられるＳＡと、ＩＰＳｅｃパケットを受信するために用いられるＳＡの２つが存在する。
【００２４】
ＳＡは、当該ＩＰセッションで用いられる暗号アルゴリズムや暗号鍵の情報を含む。更に、ＳＡは当該ＳＡの有効期間を示す情報を含む。また、ＳＡは、当該ＳＡを識別するための値であるＳＰＩ（Ｓｅｃｕｒｉｔｙ  Ｐａｒａｍｅｔｅｒ  Ｉｎｄｅｘ）を含む。
【００２５】
また、ＳＡは、当該ＩＰセッションにおけるＩＰＳｅｃのプロトコル種別を示す情報を含む。具体的には、ＩＰパケットのペイロード部の暗号化を行うＥＳＰと、ペイロード部の暗号化を行わないＡＨと、のいずれのプロトコルに準拠したＩＰｓｅｃを行うかを示す情報である。ここで、ＥＳＰとはＥｎｃａｐｓｕｌａｔｉｎｇ  Ｓｅｃｕｒｉｔｙ  Ｐａｙｌｏａｄの略であり、ＡＨとはＡｕｔｈｅｎｔｉｃａｔｉｏｎ  Ｈｅａｄｅｒの略である。
【００２６】
また、ＳＡは、当該セッションにおけるＩＰＳｅｃのプロトコルモードを示す情報を含む。具体的には、ＩＰパケットのＩＰヘッダを暗号化するトンネルモードと、ＩＰヘッダを暗号化しないトランスポートモードと、のいずれの方式でＩＰＳｅｃを行うかを示す情報である。
【００２７】
また、ＳＡは、ＩＰパケットの認証処理であるＭＡＣ（Ｍｅｓｓａｇｅ  Ａｕｔｈｅｎｔｉｃａｔｉｏｎ  Ｃｏｄｅ）処理で利用される認証アルゴリズムを示す情報と該ＭＡＣ処理で利用される認証鍵を含む。
【００２８】
ＤＢ部２１３は、更に、ＩＰｓｅｃ処理におけるＳＰ（Ｓｅｃｕｒｉｔｙ  Ｐｏｌｉｃｙ）と、複数のＳＰを集約したＳＰＤ（Ｓｅｃｕｒｉｔｙ  Ｐｏｌｉｃｙ  Ｄａｔａｂａｓｅ）とを管理する。
【００２９】
ここで、ＳＰとは、ＩＰパケットにＩＰＳｅｃ処理を行う条件を示す情報である。当該条件は、ＩＰパケットの宛先のＩＰアドレスや、送信元のＩＰアドレス、ＩＰパケットの上位層のプロトコル種別、ポート番号、および／または、それらの組み合わせによって表わされる。
【００３０】
ＳＰには、更に、ＩＰパケットが所定の条件を満たす場合に行う処理の情報が含まれる。具体的には、ＩＰｓｅｃを適用する“ＰＲＯＴＥＣＴ”、ＩＰｓｅｃを適用しない“ＢＹＰＡＳＳ”、通信パケットを破棄する“ＤＩＳＣＡＲＤ”の３種類がある。
【００３１】
プロトコル処理部２１４は、通信プロトコル処理専用のハードウェア回路装置であり、ＴＣＰ／ＩＰプロトコルに準拠した通信処理を行う。より具体的には、プロトコル処理部２１４は、ＩＰｖ４（ＩＰバージョン４）、ＩＰｖ６（ＩＰバージョン６）、ＩＣＭＰ、ＵＤＰ、ＴＣＰの各通信プロトコル処理や、送信フロー制御や輻輳制御、通信エラー制御等を行う。ここで、ＩＣＭＰとは、Ｉｎｔｅｒｎｅｔ  Ｃｏｎｔｒｏｌ  Ｍｅｓｓａｇｅ  Ｐｒｏｔｏｃｏｌの略である。なお、通信プロトコル処理専用のハードウェア回路装置に代えて、通信プロトコル処理用に設計されたマイクロプロセッサや汎用プロセッサを用いてもよい。
【００３２】
更に、プロトコル処理部２１４は、ＩＰパケットに対してＩＰＳｅｃ処理を実施してＩＰＳｅｃパケットを生成するＩＰＳｅｃ処理部２１５を有する。そして、プロトコル処理部２１４は、ＩＰＳｅｃ処理部２１５および後述する暗号処理部２１７を利用して、ＩＰｓｅｃの暗号化機能で必要とする暗号アルゴリズム計算や、認証機能で必要とするＭＡＣに用いられるハッシュ値の計算を行う。このＭＡＣはＭｅｓｓａｇｅ  Ａｕｔｈｅｎｔｉｃａｔｉｏｎ  Ｃｏｄｅである。また、プロトコル処理部２１４はＩＰＳｅｃ処理部２１５を利用して、ＤＢ部２１３のＳＡＤに対して検索処理を実行する。そして、プロトコル処理部２１４は、ＩＰｓｅｃセッションに応じたＳＡを参照してＩＰｓｅｃパケットの送信・受信処理を行う。
【００３３】
また、プロトコル処理部２１４は、ネットワーク通信部２０１内のＤＢ部２１３と接続している。また、プロトコル処理部２１４は、電源制御部２０３と制御信号線で接続されており、電源制御部２０３を制御する。プロトコル処理部２１４は、ＩＰｓｅｃ処理において、ＤＢ部２１３や、後述する暗号処理部２１７への制御も行う。
【００３４】
暗号処理部２１７は、ＩＰｓｅｃに使用される暗号アルゴリズムによるデータ変換処理や、認証アルゴリズムによる認証処理を高速に実行するハードウェア処理回路である。ここで、暗号処理部２１７が処理する暗号アルゴリズムとしては例えば、ＤＥＳ、３ＤＥＳ、ＡＥＳがある。
【００３５】
ＩＫＥ処理部２１８は、ＩＫＥ（Ｉｎｔｅｒｎｅｔ  Ｋｅｙ  Ｅｘｃｈａｎｇｅ）プロトコル処理（以下、ＩＫＥ処理）を実行する。ＩＫＥ処理とは、ＳＡをコントローラ１０２との間で共有する処理である。より詳細には、ＩＫＥ処理部２１８は、通信相手であるコントローラ１０２をまず認証する。認証に成功するとＩＫＥ処理部２１８は、ＩＰＳｅｃ処理で用いるプロトコル種別やプロトコルモード、暗号や認証アルゴリズムの鍵データを決定するための折衝をコントローラ１０２と行う。ＩＫＥ処理部２１８は、折衝の結果に基づいてコントローラ１０２とのＩＰｓｅｃ通信に使用されるパラメータであるＳＡを作成する。このようにして、通信装置１０１はコントローラ１０２とＳＡを共有する。なお、上述の処理にはＳＡを更新する処理、即ち、新たなＳＡを再共有する処理も含まれる。
【００３６】
ＳＡを新規に共有した場合、ＩＫＥ処理部２１８は、ＤＢ部２１３が有するＳＡＤに対して当該ＳＡの登録処理を行う。また、同じＩＰＳｅｃセッションにおいてＳＡを更新する処理が行われた場合、ＩＫＥ処理部２１８は、ＤＢ部２１３が有するＳＡＤに対して当該ＳＡの更新処理を行う。また、ＩＫＥ処理部２１８は、ＩＰＳｅｃセッション終了時に、当該ＩＰＳｅｃに対応するＳＡをＤＢ部２１３が有するＳＡＤから削除する処理を行う。
【００３７】
バスブリッジ回路２１６は、ネットワーク通信部２０１とアプリケーションシステム部２０２との間でバス間転送を行う。
次に、アプリケーションシステム部２０２の内部構成について説明する。アプリケーションシステム部２０２を構成するハードウェアモジュールの各々はシステムバス２２５を介して接続されている。
【００３８】
通信装置１０１の主要な機能（主要機能）は、アプリケーションシステム部２０２により実現される。主要機能とは、通信装置１０１がカメラなら撮像機能、プロジェクタなら投影機能、プリンタなら印刷機能を指す。通信装置１０１における主要機能は通信装置１０１が実行可能な複数の機能のなかから適宜選択しておくことができるようにしてもよい。
【００３９】
ＣＰＵ２２１は、ＲＯＭ２２２に記憶されたアプリケーションプログラムやシステムプログラムを読み出して実行することで、主要機能を含む様々な機能を実現する。また、これらのアプリケーションプログラムは、ネットワーク通信を行うことが可能である。該ネットワーク通信は、ＴＣＰ／ＩＰプロトコルをベースとした通信である。該ＴＣＰ／ＩＰプロトコル処理は、ネットワーク通信部２０１において実行される。
【００４０】
ＲＡＭ２２３は、ＣＰＵ２２１がアプリケーションプログラムやシステムプログラムを読み出して実行する際に使用される一時記憶メモリである。アプリケーション機能部２２４は、主要機能を実行するハードウェアモジュールである。例えば、通信装置１０１がカメラなら撮像部であり、プロジェクタなら投影部であり、プリンタなら印刷部である。
【００４１】
電源制御部２０３は、ネットワーク通信部２０１及びアプリケーションシステム部２０２の電力供給を独立的に制御する。電源制御部２０３は、アプリケーションシステム部２０２全体を安全に起動・停止するためのシーケンス制御を行い、各ハードウェアモジュールに対する電源投入の制御やハードウェアリセット制御を実行する。
【００４２】
図３に、通信装置１０１の動作状態の遷移図を示す。なお、当該遷移の判定は、ＣＰＵ２２１がＲＯＭ２２２から所定のプログラムを読み出して実行することで行われる。
【００４３】
通信装置１０１は、通常電力状態３０１と省電力状態３０２とを有する。通常電力状態３０１では、アプリケーションシステム部２０２を含む通信装置１０１全体に電力が供給される。一方、省電力状態３０２では、ネットワーク通信部２０１と電源制御部２０３には電力が供給されるが、アプリケーションシステム部２０２には電力が供給されない。従って、通常電力状態３０１は省電力状態３０２と比べて、通信装置１０１の消費電力が高い。
【００４４】
また、通信装置１０１は、通常電力状態３０１である場合にはＩＫＥ処理部２１８によるＩＫＥ処理を実行可能であるが、省電力状態３０２である場合にはＩＫＥ処理部２１８によるＩＫＥ処理を実行しない。このため、電源制御部２０３は、ＩＫＥ処理部２１８への電力供給を停止する。これにより、より通信装置１０１の消費電力を抑えることができる。
【００４５】
通常電力状態３０１で動作している通信装置１０１は、主要機能を実行中である場合には通常電力状態３０１を維持する（３１１）。通信装置１０１は、通常電力状態３０１で動作している際に、主要機能を実行していないアイドル状態が所定時間継続すると、通常電力状態３０１から省電力状態３０２に遷移する（３１２）。
【００４６】
一方、省電力状態３０２で動作している通信装置１０１は、主要機能の起動要求やシステムの起動要求があった場合、省電力状態３０２から通常電力状態３０１に遷移する（３１３）。ここでは、不図示の操作部を介したユーザの指示、もしくは、コントローラ１０２からの所定の信号を受信した場合に、通信装置１０１は、当該起動要求があったと判定する。
【００４７】
また、通信装置１０１が省電力状態３０２の滞在期間を経過した場合、通信装置１０１は省電力状態３０２から通常電力状態３０１に遷移する（３１４）。省電力状態３０２の滞在期間については後述する。
【００４８】
このようにして、通信装置１０１が省電力状態３０２から通常電力状態３０１に遷移した場合、電源制御部２０３は、ＩＫＥ処理部２１８への電力供給を開始する。
【００４９】
図４に、通信装置１０１が省電力状態３０２から通常電力状態３０１に遷移する際に、ＲＯＭ２２２に記憶されたプログラムをＣＰＵ２２１が読み出すことで実現されるフローチャートを示す。図４のフローチャートにおいて、通信装置１０１は省電力状態３０２の滞在期間を設定する。
【００５０】
通信装置１０１が省電力状態３０２から通常電力状態３０１に遷移する場合、通信装置１０１は、まず省電力状態３０２の滞在期間を所定の値に設定する（Ｓ４０１）。所定の値としては、具体的な期間のみならず無限大であってもよい。滞在期間を無限大とした場合には特定のイベントが発生した場合に省電力状態から通常電力状態に遷移させる。
【００５１】
次に、通信装置１０１は省電力状態３０２において有効なＳＡを選択する（Ｓ４０２）。ここでは、通信装置１０１は、通常電力状態３０１において確立されているＩＰＳｅｃセッションに対応するＳＡをＳＡＤから選択する。通信装置１０１が複数の他の通信装置と並行してＩＰＳｅｃ通信をしている場合など、複数のＩＰＳｅｃセッションを確立している場合には、複数ＩＰＳｅｃセッションの各々に対応する複数のＳＡがＳＡＤから選択され得る。当該選択は、ＴＣＰ／ＩＰ通信のコネクション情報、および、ＳＰに基づいてＳＡＤを検索することで行われる。なお、所定期間内に利用されていないＩＰＳｅｃセッションに対応するＳＡについて、通信装置１０１は有効なＳＡとして選択しないようにしてもよい。
【００５２】
なお、上述の方法に代えて、下記のようにして通信装置１０１がＳＡを選択するようにしてもよい。通信装置１０１は、予め省電力状態３０２において通信装置１０１を遠隔制御可能なコントローラの条件を設定しておく。当該設定は、通信装置１０１が通常電力状態３０１である場合に、ユーザが不図示の操作部を介して設定する。
【００５３】
ここで、条件とは、例えば、ＩＰアドレス、ＩＰアドレスの範囲、遠隔制御のための通信に用いられる通信プロトコル（ＴＣＰ／ＵＤＰ等）、ポート番号、および／またはその組み合わせである。通信装置１０１は、当該条件に合致するＳＡをＳＡＤから選択する。なお、複数のＳＡが選択される場合もある。
【００５４】
次に、通信装置１０１は、Ｓ４０２において有効なＳＡが選択されたか否かを判定する（Ｓ４０３）。例えば、所定期間内に利用したＩＰＳｅｃセッションがない場合などは、Ｓ４０２において有効なＳＡが選択されない。
【００５５】
有効なＳＡがないと判定された場合（Ｓ４０３のＮｏ）、通信装置１０１は通常電力状態３０１から省電力状態３０２に遷移する（Ｓ４０４）。そして、通信装置１０１は図４に示すフローチャートを終了する。
【００５６】
一方、有効なＳＡが存在すると判定された場合（Ｓ４０３のＹｅｓ）、通信装置１０１は選択されたＳＡのうちの１つを抽出する（Ｓ４０５）。そして、通信装置１０１は抽出されたＳＡの有効期限の残存期間を判定する（Ｓ４０６）。ここで、残存期間とは、ＳＡの有効期限が切れるまでの時間である。
【００５７】
次に、通信装置１０１は、Ｓ４０６において判定された残存期間が、設定された滞在期間よりも短いか否かを判定する（Ｓ４０７）。残存期間が滞在期間よりも短い場合（Ｓ４０７のＹｅｓ）、通信装置１０１は、残存期間と同じか、残存期間よりも所定期間短い期間を新たな滞在期間として設定する（Ｓ４０８）。即ち、通信装置１０１は、残存期間以下の期間を滞在期間として設定する。ここで、残存期間はＳＡの有効期限に基づいて判定された期間であるため、通信装置１０１はＳＡの有効期限に基づいて残存期間を設定しているとも言うことができる。
【００５８】
次に、通信装置１０１は、Ｓ４０２において選択されたＳＡのうち未抽出のＳＡが存在するか否かを判定する（Ｓ４０９）。未抽出のＳＡが存在する場合、通信装置１０１は、未抽出のＳＡのうちの１つを抽出する（Ｓ４１０）。
【００５９】
その後、通信装置１０１は、未抽出のＳＡが存在しないと判定されるまで、即ち、Ｓ４０２において選択された全てのＳＡが抽出されるまで、Ｓ４０６〜４１０の処理を繰り返す。これにより、Ｓ４０３において選択されたＳＡのうち、有効期限の残存期間が最も短いＳＡの残存期間に基づいて省電力状態３０２の滞在期間が設定される。
【００６０】
その後、通信装置１０１は通常電力状態３０１から省電力状態３０２に遷移する（Ｓ４１１）。そして、通信装置１０１は設定された滞在期間が満了するまで省電力状態３０２を維持する（Ｓ４１２のＮｏ）。
【００６１】
設定された滞在期間が満了すると、通信装置１０１は省電力状態３０２から通常電力状態３０１に遷移する（Ｓ４１３）。省電力状態３０２から通常電力状態３０１に遷移すると、通信装置１０１は、有効期限の切れたＳＡを更新するためにＩＫＥ処理を実行する（Ｓ４１４）。その後、通信装置１０１は図４に示すフローチャートを終了する。
【００６２】
上述した実施形態では、通信装置１０１は、省電力状態３０２を維持する時間を、コントローラ１０２とのＩＰｓｅｃセッションに係るＳＡの有効期限内に設定した。これにより、省電力状態３０２においてＳＡの有効期限が切れてしまうことを防止することができる。従って、省電力状態３０２において有効期限切れのＳＡを更新するためのＩＫＥ処理の実行が防止される。
【００６３】
また、省電力状態３０２においてはＩＫＥ処理が行われないので、通信装置１０１は省電力状態３０２においてＩＫＥ処理部２１８への電力供給を停止させることができる。これにより、省電力状態３０２における省電力効果を向上させることができる。
【００６４】
また、通信装置１０１はＩＫＥ処理を行うことなく、通常電力状態３０１から省電力状態３０２に遷移するので、通常電力状態３０１から省電力状態３０２への遷移をスムーズに行うことができる。
【００６５】
なお、本実施形態では、ＩＫＥ処理をネットワーク通信部２０１内のＩＫＥ処理部２１８で実行するものとしたが、アプリケーションシステム部２０２内のＣＰＵ２２１によるソフトウェア処理で実行してもよい。
【００６６】
また、Ｓ４０８において、残存期間よりも所定期間短い期間を新たな滞在期間として設定する場合、Ｓ４０７において、通信装置１０１は、残存期間から所定期間だけ差し引いた期間が、設定された滞在期間よりも短いか否かを判定するようにしてもよい。これにより、より正確に残存期間が短いＳＡの残存期限、もしくは、有効期限に基づいて滞在期間を設定することができる。
【００６７】
＜実施形態２＞
実施形態１では、通信装置１０１が通常電力状態３０１から省電力状態３０２に遷移する際に、省電力状態３０２の滞在期間を設定した。実施形態２では、更に、通信装置１０１が省電力状態３０２である場合に、ＩＰＳｅｃ通信が発生したことに応じて滞在期間を再設定する。
【００６８】
本実施形態の通信システム構成は実施形態１と同様なので同じ符号を付し、ここでは説明を省略する。また、通信装置１０１のハードウェア構成も実施形態１と同様なので同じ符号を付し、ここでは説明を省略する。
【００６９】
図５に、通信装置１０１が省電力状態３０２である際にＩＰＳｅｃパケットを受信した場合、ＲＯＭ２２２に記憶されたプログラムをＣＰＵ２２１が読み出すことで実現されるフローチャートを示す。
【００７０】
まず、通信装置１０１はＩＰＳｅｃパケットを受信すると、通信装置１０１は、ＩＰＳｅｃパケットの受信処理を実行する（Ｓ５０１）。具体的には、通信装置１０１はＩＰＳｅｃパケットの復号化やＳＰに基づく条件チェック等を行う。通信装置１０１は、ＩＰＳｅｃパケットを復号化により、平文のＩＰパケットを取得することができる。
【００７１】
次に、通信装置１０１は、Ｓ５０１におけるＩＰＳｅｃパケットの受信処理の結果、当該ＩＰＳｅｃパケットを破棄するか否かを判定する（Ｓ５０２）。例えば、受信したＩＰＳｅｃパケットに対応するＳＰが“ＤＩＳＣＡＲＤ”であった場合、通信装置１０１は、当該ＩＰＳｅｃパケットを破棄すると判定する。
【００７２】
ＩＰＳｅｃパケットを破棄すると判定された場合（Ｓ５０２のＹｅｓ）、通信装置１０１は当該ＩＰＳｅｃパケットを破棄する（Ｓ５０３）。その後、通信装置１０１は図５に示すフローチャートを終了する。
【００７３】
一方、ＩＰＳｅｃパケットを破棄しないと判定された場合（Ｓ５０２のＮｏ）、通信装置１０１は、復号化されたＩＰパケットを解析する（Ｓ５０４）。なお、ＩＰパケットが応答を要求するパケットであり、省電力状態３０２のままで当該パケットに応答可能である場合には、Ｓ５０４において通信装置１０１は応答を送信する。
【００７４】
ＩＰＳｅｃパケットを解析すると、通信装置１０１は、省電力状態３０２から通常電力状態３０１に遷移するか否かを判定する（Ｓ５０５）。例えば、ＩＰＳｅｃパケットが通信装置１０１のアプリケーションシステム部２０２の起動要求である場合、通信装置１０１は、省電力状態３０２から通常電力状態３０１に遷移すると判定する。また、例えば、ＩＰＳｅｃパケットが応答を要求するパケットであり、省電力状態３０２のままでは当該パケットに応答できない場合、通信装置１０１は、省電力状態３０２から通常電力状態３０１に遷移すると判定する。
【００７５】
また、例えば、ＩＰＳｅｃパケットがＩＫＥ処理を要求するＩＳＡＫＭＰパケットである場合には、省電力状態３０２から通常電力状態３０１に遷移すると判定する。ここで、ＩＳＡＫＭＰとは、Ｉｎｔｅｒｎｅｔ  Ｓｅｃｕｒｉｔｙ  Ａｓｓｏｃｉａｔｉｏｎ  ａｎｄ  Ｋｅｙ  Ｍａｎａｇｅｍｅｎｔ  Ｐｒｏｔｏｃｏｌの略である。ＩＳＡＫＭＰパケットはＵＤＰに準拠したパケットであり、ポート番号は５００番が用いられる。また、ＩＳＡＫＭＰパケットには、ＵＤＰヘッダに続いて、暗号化されていないＩＫＥヘッダが格納されている。ＩＫＥヘッダには、ＩＫＥ処理を要求することを示すフラグが格納されている。
【００７６】
省電力状態３０２から通常電力状態３０１に遷移すると判定された場合、通信装置１０１は、アプリケーションシステム部２０２を起動し、省電力状態３０２から通常電力状態３０１に遷移する（Ｓ５０６）。そして、図５に示すフローチャートを終了する。その御、必要に応じて、通信装置１０１は受信したＩＰＳｅｃパケットに応じた処理を実行する。例えば、ＩＳＡＫＭＰパケットを受信した場合には、通信装置１０１はＩＫＥ処理を行う。
【００７７】
一方、省電力状態３０２から通常電力状態３０１に遷移しないと判定された場合、通信装置１０１は、受信したＩＰＳｅｃパケットに対応するＩＰＳｅｃセッションを特定する（Ｓ５０７）。更に、通信装置１０１は特定されたＩＰＳｅｃセッションに対応するＳＡを抽出する（Ｓ５０８）。
【００７８】
そして、通信装置１０１は抽出されたＳＡの有効期限の残存期間を判定する（Ｓ５０９）。なお、Ｓ５０９において複数のＳＡが抽出された場合には、通信装置１０１は、複数のＳＡの各々の有効期限の残存期間のうち、最も短い残存期間を判定する。
【００７９】
そして、通信装置１０１は、残存期間が残っているか否か、即ち、ＳＡの有効期限が切れているか否かを判定する（Ｓ５１０）。
【００８０】
ＳＡの有効期限が切れている場合には（Ｓ５１０のＹｅｓ）、通信装置１０１は、省電力状態３０２から通常電力状態３０１に遷移する（Ｓ５１１）。省電力状態３０２から通常電力状態３０１に遷移すると、通信装置１０１は、有効期限の切れたＳＡを更新するためにＩＫＥ処理を実行する（Ｓ５１２）。その後、通信装置１０１は図５に示すフローチャートを終了する。
【００８１】
ＳＡの有効期限が切れていない場合には（Ｓ５１０のＮｏ）、通信装置１０１は、通信装置１０１は、Ｓ５０９において判定された残存期間が、設定された滞在期間よりも短いか否かを判定する（Ｓ５１３）。残存期間が滞在期間よりも短い場合（Ｓ５１３のＹｅｓ）、通信装置１０１は、残存期間と同じか、残存期間よりも所定期間短い期間を新たな滞在期間として設定する（Ｓ５１４）。
【００８２】
その後、通信装置１０１は図５に示すフローチャートを終了する。
【００８３】
これにより、省電力状態３０２の滞在期間をＩＰＳｅｃ通信に応じて動的に変更することができる。上述したように、通常電力状態３０１から省電力状態３０２に移行する際、所定期間利用していなかったＩＰＳｅｃセッションに対応するＳＡは、通信装置１０１は有効なＳＡとして選択しないようにすることができる。このようなＳＡについても、当該ＳＡを用いた暗号通信があったことに応じて、当該ＳＡの有効期限に合わせた滞在期間を設定することができる。
【００８４】
なお、上述の実施形態では、実施形態１で設定された滞在期間を更新する例について説明した。しかしこれに限らず、実施形態１における滞在期間の設定を行わないようにしてもよい。このような場合には、省電力状態３０２において、実際にＩＰｓｅｃ通信に使われたＳＡのみを対象として滞在期間を設定することができる。
【００８５】
また、Ｓ５１４において、残存期間よりも所定期間短い期間を新たな滞在期間として設定する場合、Ｓ５１３において、通信装置１０１は、残存期間から所定期間だけ差し引いた期間が、設定された滞在期間よりも短いか否かを判定するようにしてもよい。これにより、より正確に残存期間が短いＳＡの残存期限、もしくは、有効期限に基づいて滞在期間を設定することができる。
【００８６】
また、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【００８７】
本発明は、上述した１つ乃至複数のうちのいくつかの効果を有する。
【符号の説明】
【００８８】
１０１  通信装置
１０２  リモートコントローラ
１１０  ＬＡＮ／ＷＡＮ
【図１】
0006429521.tif 000002
【図２】
0006429521.tif 000003
【図３】
0006429521.tif 000004
【図４】
0006429521.tif 000005
【図５】
0006429521.tif 000006