(57)【特許請求の範囲】
【請求項１】
証明書を用いて通信相手装置とセキュアな無線通信が可能な通信装置であって、
前記通信装置において、前記通信相手装置との直接的な無線接続のために使用される通信チャネルを決定する役割として動作する第１モードが有効化されているか、または、前記通信相手装置との直接的な無線接続のために使用される通信チャネルを決定する役割として動作するか否かを決定する役割決定処理を実行する第２モードが有効化されているかを判定する判定手段と、
前記判定手段により前記第１モードが有効化されていると判定された場合、前記通信相手装置と接続される前に証明書の生成処理を実行し、前記第２モードが有効化されていると判定された場合、前記役割決定処理の実行前に前記通信装置に保持されていた証明書を取得する制御手段と
を有することを特徴とする通信装置。
【請求項２】
前記通信装置は、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔによる無線通信が可能であり、
前記第１モードは、Ａｕｔｏｎｏｍｏｕｓ  ＧＯモードであり、
前記第２モードは、ＧＯ  Ｎｅｇｏｔｉａｔｉｏｎモードである
ことを特徴とする請求項１に記載の通信装置。
【請求項３】
証明書を用いて通信相手装置とセキュアな無線通信が可能な通信装置であって、
前記通信装置において、前記通信相手装置との直接的な無線接続のために使用される通信チャネルを決定する役割として動作する第１モードが有効化されているか、または、前記通信相手装置との直接的な無線接続のために使用される通信チャネルを決定する役割として動作するか否かを決定する役割決定処理を実行する第２モードが有効化されているかを判定する判定手段と、
前記判定手段により前記第１モードが有効化されていると判定された場合、第１の暗号化方式を用いて生成された証明書を利用し、前記第２モードが有効化されていると判定された場合、前記第１の暗号化方式よりも証明書の生成処理の負荷が低い第２の暗号化方式を用いて生成された証明書を利用する制御手段と
を有することを特徴とする通信装置。
【請求項４】
前記第１の暗号化方式は、ＲＳＡ暗号であり、
前記第２の暗号化方式は、楕円曲線暗号である
ことを特徴とする請求項３に記載の通信装置。
【請求項５】
前記通信装置は、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔによる通信が可能であり、
前記第１モードは、Ａｕｔｏｎｏｍｏｕｓ  ＧＯモードであり、
前記第２モードは、ＧＯ  Ｎｅｇｏｔｉａｔｉｏｎモードである
ことを特徴とする請求項３または４に記載の通信装置。
【請求項６】
暗号化方式に対応した鍵情報を生成する手段と、
前記鍵情報を保持する手段と、
を更に有することを特徴とする請求項３乃至５のいずれか一項に記載の通信装置。
【請求項７】
前記鍵情報は、公開鍵とプライベート鍵の対からなることを特徴とする請求項６に記載の通信装置。
【請求項８】
前記無線通信における接続の設定情報を保持する保持手段を更に有し、
前記判定手段は、前記保持手段にて保持された設定情報に基づいて判定を行うことを特徴とする請求項１乃至７のいずれか一項に記載の通信装置。
【請求項９】
証明書を記憶する記憶手段を更に有し、
前記制御手段は、前記生成処理において、前記記憶手段にて記憶された証明書にて指定された設定情報と、前記保持手段にて保持された設定情報とが異なる場合に、新たな証明書を生成させることを特徴とする請求項８に記載の通信装置。
【請求項１０】
証明書を用いて通信相手装置とセキュアな無線通信が可能な通信装置における通信方法であって、
前記通信装置において、前記通信相手装置との直接的な無線接続のために使用される通信チャネルを決定する役割として動作する第１モードが有効化されているか、または、前記通信相手装置との直接的な無線接続のために使用される通信チャネルを決定する役割として動作するか否かを決定する役割決定処理を実行する第２モードが有効化されているかを判定する判定工程と、
前記判定工程にて前記第１モードが有効化されていると判定された場合、前記通信相手装置と接続される前に証明書の生成処理を実行し、前記第２モードが有効化されていると判定された場合、前記役割決定処理の実行前に前記通信装置に保持されていた証明書を取得する制御工程と
を有することを特徴とする通信方法。
【請求項１１】
証明書を用いて通信相手装置とセキュアな無線通信が可能な通信装置における通信方法であって、
前記通信装置において、前記通信相手装置との直接的な無線接続のために使用される通信チャネルを決定する役割として動作する第１モードが有効化されているか、または、前記通信相手装置との直接的な無線接続のために使用される通信チャネルを決定する役割として動作するか否かを決定する役割決定処理を実行する第２モードが有効化されているかを判定する判定工程と、
前記判定工程にて前記第１モードが有効化されていると判定された場合、第１の暗号化方式を用いて生成された証明書を利用し、前記第２モードが有効化されていると判定された場合、前記第１の暗号化方式よりも証明書の生成処理の負荷が低い第２の暗号化方式を用いて生成された証明書を利用する制御工程と
を有することを特徴とする通信方法。
【請求項１２】
コンピューターを、
前記コンピューターにおいて、通信相手装置との直接的な無線接続のために使用される通信チャネルを決定する役割として動作する第１モードが有効化されているか、または、前記通信相手装置との直接的な無線接続のために使用される通信チャネルを決定する役割として動作するか否かを決定する役割決定処理を実行する第２モードが有効化されているかを判定する判定手段、
前記判定手段により前記第１モードが有効化されていると判定された場合、前記通信相手装置と接続される前に証明書の生成処理を実行し、前記第２モードが有効化されていると判定された場合、前記役割決定処理の実行前に前記コンピューターに保持されていた証明書を取得する制御手段
として機能させるためのプログラム。
【請求項１３】
コンピューターを、
前記コンピューターにおいて、通信相手装置との直接的な無線接続のために使用される通信チャネルを決定する役割として動作する第１モードが有効化されているか、または、前記通信相手装置との直接的な無線接続のために使用される通信チャネルを決定する役割として動作するか否かを決定する役割決定処理を実行する第２モードが有効化されているかを判定する判定手段、
前記判定手段により前記第１モードが有効化されていると判定された場合、第１の暗号化方式を用いて生成された証明書を利用し、前記第２モードが有効化されていると判定された場合、前記第１の暗号化方式よりも証明書の生成処理の負荷が低い第２の暗号化方式を用いて生成された証明書を利用する制御手段
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信装置、通信方法、およびプログラムに関する。
【背景技術】
【０００２】
近年、ネットワーク環境においてセキュアな暗号化通信方法として、証明書を使用したＳＳＬ（Ｓｅｃｕｒｅ  Ｓｏｃｋｅｔｓ  Ｌａｙｅｒ）通信の利用が拡大している。ＭＦＰ（Ｍｕｌｔｉ−Ｆｕｎｃｔｉｏｎ  Ｐｒｉｎｔｅｒ）のような装置においても、装置の状態の確認や設定を行うためのリモートＵＩアクセスや、セキュアプリント等の通信においてＳＳＬを利用する機会が増えている。特許文献１は、装置で証明書を生成する方法について開示している。
【０００３】
無線通信システムでは、複数の接続方式が知られている。具体的には、アクセスポイントを介して相手側の装置と無線接続を行う方式（例えば、インフラストラクチャモード）がある。また、自装置又は相手側の装置がアクセスポイントとして動作することで、相手側の装置と直接に無線接続を行う方式（ピアツーピア（Ｐ２Ｐ）モード）がある。Ｐ２Ｐ無線接続方式を実現する規格として、例えば、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ（登録商標）が知られている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特許第３９２８５８９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１に記載の装置は、クライアントから暗号化を用いた接続が要求された際に、サーバー証明書を生成するよう制御する。しかしながら、証明書の生成には暗号化処理を伴うため、計算処理の負荷が高い。従って、クライアントから暗号化を用いた接続が要求された際に証明書を生成していては、応答に時間がかかることがある。その結果、例えば、ユーザは、自らの端末装置を用いてＷｉ−Ｆｉ  Ｄｉｒｅｃｔ（登録商標）の通信相手装置を見つけているにもかかわらず、証明書の生成が完了するまで通信処理を待機しなければならない。その結果、ユーザの操作性が低下するおそれがあった。
【課題を解決するための手段】
【０００６】
上記課題を鑑み、本願発明は以下の構成を有する。すなわち、証明書を用いて通信相手装置とセキュアな無線通信が可能な通信装置であって、前記通信装置において、前記通信相手装置との直接的な無線接続のために使用される通信チャネルを決定する役割として動作する第１モードが有効化されているか、または、前記通信相手装置との直接的な無線接続のために使用される通信チャネルを決定する役割として動作するか否かを決定する役割決定処理を実行する第２モードが有効化されているかを判定する判定手段と、前記判定手段により前記第１モードが有効化されていると判定された場合、前記通信相手装置と接続される前に証明書の生成処理を実行し、前記第２モードが有効化されていると判定された場合、前記役割決定処理の実行前に前記通信装置に保持されていた証明書を取得する制御手段とを有する。
【発明の効果】
【０００７】
本発明により、ユーザの操作性を下げずにセキュア通信を実行することが可能となる。
【図面の簡単な説明】
【０００８】
【図１】無線通信システムの構成の一例を示す図。
【図２】一実施形態である端末装置の外観を示す図。
【図３】一実施形態であるＭＦＰの外観を示す図。
【図４】ＭＦＰの操作部に表示される画面の一例を示す図。
【図５】端末装置のハードウェア構成の例を示す図。
【図６】ＭＦＰのハードウェア構成の例を示す図。
【図７】Ａｕｔｏｎｏｍｏｕｓ  ＧＯモードの無線接続シーケンスを示す図。
【図８】ＧＯ  Ｎｅｇｏｔｉａｔｉｏｎモードの無線接続シーケンスを示す図。
【図９】第１の実施形態に係るＭＦＰの起動からＳＳＬ通信が可能になるまでのフローチャート。
【図１０】第１の実施形態に係るサーバー証明書生成処理を示すフローチャート。
【図１１】第１の実施形態に係る証明書の生成処理を示すフローチャート。
【図１２】第１の実施形態に係るＭＦＰに保存される情報の構成例を示す図。
【図１３】第２の実施形態に係るＭＦＰの起動からＳＳＬ通信が可能になるまでのフローチャート。
【図１４】第２の実施形態に係るＭＦＰに保存される情報の構成例を示す図。
【発明を実施するための形態】
【０００９】
以下に、図面を参照しながら、本発明の実施形態を例示的に詳しく説明する。但し、本実施形態に記載されている構成要素の相対配置、表示画面等は、特に、特定的な記載がない限りは、この発明の範囲をそれらのみに限定する趣旨のものではない。
【００１０】
［システム構成］
まず、以下で説明する実施形態を実現するためのシステム構成の例について、図１〜図６を用いて説明する。
【００１１】
図１は、携帯型通信端末装置（以下、単に端末装置）２００、印刷装置（Ｍｕｌｔｉ  Ｆｕｎｃｔｉｏｎ  Ｐｒｉｎｔｅｒ（以下、ＭＦＰ））３００、およびアクセスポイント４００を含むシステムの構成例を示す図である。なお、図１では、３つの装置を示したが、これに限定するものではなく、他の装置が含まれていてもよい。また、各装置は１つに限定するものではなく、複数の装置を含んでもよい。また、本実施形態において、複数の無線通信機能が同時に動作可能な装置として印刷装置（ＭＦＰ）を例に挙げて説明するが、これに限定するものではなく、他の通信装置に適用してもよい。
【００１２】
端末装置２００は、無線ＬＡＮ（以下、ＷＬＡＮ）に対応した通信部を有する装置である。端末装置２００としては、例えば、ＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔ）等の個人情報端末、携帯電話、デジタルカメラ等などが挙げられる。印刷装置（ＭＦＰ）３００は、端末装置２００と無線通信可能であればよく、その他、読取機能（スキャナ）やＦＡＸ機能、電話機能を有していてもよい。本実施形態では、印刷装置を、読取機能と印刷機能を有するＭＦＰを例に挙げて説明しているが、これに限定するものではなく、更に他の機能を備えていてもよい。アクセスポイント４００は、ＷＬＡＮ通信部を有し、アクセスポイント４００への接続を許可した装置同士の通信を中継することでインフラストラクチャモードの通信を提供する。
【００１３】
端末装置２００とＭＦＰ３００は各々が有するＷＬＡＮ通信部によって、アクセスポイント４００を介したインフラストラクチャモードの無線通信を行うことも可能であり、また、ＷＦＤなどのＰ２Ｐモードの通信を行うことも可能である。なお、端末装置２００及びＭＦＰ３００は、後述するようにＷＬＡＮ経由で複数の印刷サービスに対応した処理を実行可能である。
【００１４】
図２は、本実施形態に係る端末装置２００の外観を示す図である。本実施形態では、端末装置２００として、スマートフォンを例に挙げて説明する。スマートフォンは、電話の機能の他に、カメラや、ウェブブラウザ、電子メール機能等を搭載した多機能型の携帯電話を指す。
【００１５】
ＷＬＡＮユニット２０１は、ＷＬＡＮで通信を行うためのユニットである。ＷＬＡＮユニット２０１は、例えばＩＥＥＥ８０２．１１シリーズに準拠したＷＬＡＮシステムにおけるデータ（パケット）通信が可能である。また、ＷＬＡＮユニット２０１を用いた無線通信では、ＷＦＤをベースにした通信、ソフトウェアＡＰ（Ａｃｃｅｓｓ  Ｐｏｉｎｔ）モード、インフラストラクチャモードによる通信などが可能である。表示部２０２は、例えば、ＬＣＤ方式の表示機構を備えたディスプレイである。操作部２０３は、タッチパネル方式の操作機構を備えており、ユーザによる操作を検知する。代表的な操作方法には、表示部２０２がボタンアイコンやソフトウェアキーボードの表示を行い、ユーザがそれらの箇所に触れることによって操作イベントを検知するものがある。本実施形態では、表示部２０２と操作部２０３とは、タッチパネル方式として一体型の構成であるとする。電源キー２０４は、端末装置２００の電源のオン及びオフをする際に用いるハードキーである。
【００１６】
図３は、本実施形態に係るＭＦＰ３００の外観を示す図である。図３において、原稿台３０１は、スキャナ（読取部）で読み取らせる原稿を載せるガラス状の透明な台である。原稿蓋３０２は、スキャナで読取を行う際に原稿を押さえたり、読取の際に原稿を照射する光源からの光が外部に漏れないようにしたりするための部位である。印刷用紙挿入口３０３は、様々なサイズの用紙をセット可能な挿入口である。印刷用紙挿入口３０３にセットされた紙等の記録材は一枚ずつ印刷部に搬送され、印刷部で印刷が行われて印刷用紙排出口３０４から排出される。操作表示部３０５は、文字入力キー、カーソルキー、決定キー、取り消しキー等のキーと、ＬＥＤ（発光ダイオード）やＬＣＤ（液晶ディスプレイ）などから構成される。ユーザは、操作表示部３０５を介して、ＭＦＰ３００における各種機能の起動や各種設定を行うことができる。操作表示部３０５は、タッチパネルで構成され、表示部と操作部が一体となって構成されてもよい。ＷＬＡＮアンテナ３０６は、ＷＬＡＮで通信するためのアンテナであり、ＭＦＰ３００内部に備えられている。
【００１７】
図４は、ＭＦＰ３００の操作表示部３０５の画面表示の一例を模式的に示す図である。図４（ａ）は、ＭＦＰ３００が電源オンし、印刷やスキャン等の動作をしていない状態（アイドル状態）を示すホーム画面４１０の構成例を示す。操作表示部３０５上におけるキー操作やタッチパネル操作により、コピーやスキャン、インターネット通信を利用したクラウド機能のメニュー表示や各種設定、機能実行が可能である。また、図４（ａ）のホーム画面４１０からキー操作やタッチパネルの操作によってシームレスに図４（ａ）とは異なる機能（図４（ｂ））を表示することができる。図４（ｂ）は、操作により異なる機能を表示した画面の一例であり、ここでは、プリントやフォト機能の実行やＬＡＮ設定の変更が実行可能な機能を選択可能に表示する画面４１１を示す。図４（ｃ）は、図４（ｂ）の画面４１１において、ＬＡＮ設定を選択した際に表示される画面４１２を示す。画面４１２を介して、ユーザは、「無線ＬＡＮ」を選択することでインフラストラクチャモードの有効／無効を設定できる。また、「無線ダイレクト」を選択することでＰ２Ｐモード（ピアツーピアモード）の有効／無効を設定できる。なお、図４にて示す機能は一例であり、これらに限定するものではない。また、操作により切り替え可能な画面は上記に限定するものではなく、更に他の画面に切り替えて表示できるようにしてもよい。
【００１８】
図５は、端末装置２００のハードウェア構成の例を示す図である。端末装置２００は、装置自身のメインの制御を行うメインボード５０１と、ＷＬＡＮ通信を行うＷＬＡＮユニット５１７とを有する。
【００１９】
メインボード５０１において、ＣＰＵ（中央演算処理部）５０２は、システム制御部であり、端末装置２００の各種動作全体を制御する。以降に示す端末装置２００の処理はＣＰＵ５０２の制御によって実行される。ＲＯＭ５０３は、不揮発性の記憶領域であり、ＣＰＵ５０２が実行する制御プログラムや組込オペレーティングシステム（ＯＳ）プログラム等を記憶する。本実施形態では、ＲＯＭ５０３に記憶されている各制御プログラムは、ＣＰＵ５０２に実行されることにより、ＲＯＭ５０３に記憶されている組込ＯＳの管理下で、スケジューリングやタスクスイッチ等のソフトウェア制御を行う。
【００２０】
ＲＡＭ５０４は、揮発性の記憶領域であり、ＳＲＡＭ（Ｓｔａｔｉｃ  ＲＡＭ）等で構成される。ＲＡＭ５０４は、プログラム制御変数等のデータを記憶し、また、ユーザが登録した設定値や端末装置２００の管理データ等のデータを記憶し、各種ワーク用バッファ領域が設けられている。画像メモリ５０５は、ＤＲＡＭ（Ｄｙｎａｍｉｃ  ＲＡＭ）等のメモリで構成され、ＷＬＡＮユニット５１７を介して受信した画像データや、データ蓄積部５１３から読み出した画像データをＣＰＵ５０２で処理するために一時的に記憶する。不揮発性メモリ５１２は、フラッシュメモリ（ｆｌａｓｈ  ｍｅｍｏｒｙ）等のメモリで構成され、電源がオフされてもデータを記憶し続ける。尚、メモリ構成は上記の構成に限定されるものではない。例えば、画像メモリ５０５とＲＡＭ５０４を共有させてもよいし、データ蓄積部５１３にデータのバックアップ等を行ってもよい。また、本実施形態では、画像メモリ５０５にＤＲＡＭを用いているが、ハードディスクや不揮発性メモリ等の他の記憶媒体を使用してもよいし、また、外付けの記憶領域が更に接続されてもよい。
【００２１】
データ変換部５０６は、種々の形式のデータの解析や、色変換、画像変換等のデータ変換を行う。電話部５０７は、電話回線の制御を行い、スピーカ部５１４を介して入出力される音声データを処理することで電話による通信を実現している。操作部５０８は、図２に示す操作部２０３の信号を制御する。ＧＰＳ（Ｇｌｏｂａｌ  Ｐｏｓｉｔｉｏｎｉｎｇ  Ｓｙｓｔｅｍ）５０９は、端末装置２００の現在の緯度や経度等の位置情報を外部から取得する。表示部５１０は、図２に示す表示部２０２の表示内容を電子的に制御しており、各種入力操作や、端末装置２００の動作状況、ステータス状況の表示等を行うことができる。
【００２２】
カメラ部５１１は、レンズ（不図示）を介して入力された画像を電子的に記録して符号化する機能を有する。カメラ部５１１で撮影された画像はデータ蓄積部５１３に保存される。スピーカ部５１４は電話機能のための音声を入力または出力する機能や、その他、アラーム通知等の機能を実現する。電源部５１５は、携帯可能な電池であり、装置内への電力供給制御を行う。電源状態には、電池に残量が無い電池切れ状態、電源キー２０４を押下していない電源オフ状態、通常起動している起動状態、起動しているが省電力になっている省電力状態などがある。
【００２３】
端末装置２００は、通信部としてのＷＬＡＮユニット５１７により、ＷＬＡＮを介して外部装置と無線通信をすることができる。これにより、端末装置２００は、ＭＦＰ３００やアクセスポイント４００等の他デバイスとのデータ通信を行う。ＷＬＡＮユニット５１７は、データをパケットに変換し、他デバイスにパケット送信を行う。また、ＷＬＡＮユニット５１７は、逆に、外部の他デバイスから受信したパケットを元のデータに復元し、ＣＰＵ５０２に対して送信する。ＷＬＡＮユニット５１７は、バスケーブル５１６介してメインボード５０１に接続されている。ＷＬＡＮユニット５１７は、規格に準拠した通信を実現するためのユニットである。
【００２４】
メインボード５０１内の各種構成要素（５０３〜５１５及び５１７）は、システムバス５１８を介して、相互に接続され、通信可能に構成される。なお、データ変換部５０６などは、必要に応じて、ＣＰＵ５０２が実行するプログラムによって機能を実現する構成であってもよい。
【００２５】
図６は、ＭＦＰ３００のハードウェア構成の例を示す図である。ＭＦＰ３００は、装置自身のメインの制御を行うメインボード６０１、ＷＬＡＮ通信を行うＷＬＡＮユニット６１６、および、モデム６１９を有する。
【００２６】
メインボード６０１において、ＣＰＵ（中央演算処理部）６０２は、システム制御部であり、ＭＦＰ３００の各種動作全体を制御する。以降に示すＭＦＰ３００の処理はＣＰＵ６０２の制御によって実行される。ＲＯＭ６０３は、不揮発性の記憶領域であり、ＣＰＵ６０２が実行する制御プログラムや組込オペレーティングシステム（ＯＳ）プログラム等を記憶する。本実施形態では、ＲＯＭ６０３に記憶されている各制御プログラムは、ＣＰＵ６０２に実行されることにより、ＲＯＭ６０３に記憶されている組込ＯＳの管理下で、スケジューリングやタスクスイッチ等のソフトウェア制御を行う。
【００２７】
ＲＡＭ６０４は、揮発性の記憶領域であり、ＳＲＡＭ（Ｓｔａｔｉｃ  ＲＡＭ）等で構成される。ＲＡＭ６０４は、プログラム制御変数等のデータを記憶し、また、ユーザが登録した設定値やＭＦＰ３００の管理データ等のデータを記憶し、各種ワーク用バッファ領域が設けられている。不揮発性メモリ６０５は、フラッシュメモリ（ｆｌａｓｈ  ｍｅｍｏｒｙ）等のメモリで構成され、電源がオフされてもデータを記憶し続ける。画像メモリ６０６は、ＤＲＡＭ（Ｄｙｎａｍｉｃ  ＲＡＭ）等のメモリで構成され、ＷＬＡＮユニット６１６を介して受信した画像データや、符号復号化処理部６１１で処理した画像データなどを蓄積する。なお、端末装置２００のメモリ構成と同様に、メモリ構成は上記の構成に限定されるものではない。
【００２８】
データ変換部６０８は、種々の形式のデータの解析や、画像データから印刷データへの変換等を行う。読取制御部６０７は、読取部６０９（例えば、ＣＩＳイメージセンサ（密着型イメージセンサ））を制御して、原稿上の画像を光学的に読み取る。次に、読取制御部６０７は、読み取った画像を電気的な画像データに変換した画像信号を出力する。このとき、画像データに対し、２値化処理や中間調処理等の各種画像処理を施してから出力してもよい。
【００２９】
操作表示部６１０は、図３の操作表示部３０５に対応する。符号復号化処理部６１１は、ＭＦＰ３００で扱う画像データ（ＪＰＥＧ、ＰＮＧ等）の符号復号化処理や、拡大縮小処理を行う。給紙部６１３は、印刷のための用紙を保持する。ＭＦＰ３００は、印刷制御部６１４からの制御により、給紙部６１３から用紙の給紙を行うことができる。また、給紙部６１３は、複数種類の用紙を一つの装置に保持するために、複数の給紙部を設けてよい。この場合、印刷制御部６１４は、どの給紙部から給紙を行うかの制御を行う。
【００３０】
印刷制御部６１４は、印刷される画像データに対し、スムージング処理や印刷濃度補正処理、色補正等の各種画像処理を施し、処理後の画像データを印刷部６１２に出力する。印刷部６１２は、例えば、インクタンクから供給されるインクをプリントヘッドから吐出させて画像を印刷するインクジェット方式を採用可能である。また、印刷制御部６１４は、印刷部６１２の情報を定期的に読み出してＲＡＭ６０４の情報を更新する役割も果たす。具体的には、インクタンクの残量やプリントヘッドの状態等のステータス情報を更新することである。
【００３１】
ＭＦＰ３００にも、端末装置２００と同様にＷＬＡＮユニット６１６が搭載されており、機能は同等のため、説明は省略する。ここで、ＷＬＡＮユニット６１６はバスケーブル６１５を介してメインボード６０１に接続されている。なお、端末装置２００及びＭＦＰ３００はＷＦＤ（Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ）をベースにした通信が可能であり、ソフトウェアアクセスポイント（ソフトウェアＡＰ）機能を有する。モデム６１９は、デジタル信号とアナログ信号との変換を行い、電話回線を用いて、外部機器と通信を行う際に用いられる。
【００３２】
メインボード６０１内の各種構成要素（６０２〜６１４、６１６〜６１７、６１９）は、ＣＰＵ６０２が管理するシステムバス６１８を介して、相互に接続され、通信可能に構成される。なお、データ変換部６０８、符号復号化処理部６１１などは、必要に応じて、ＣＰＵ６０２が実行するプログラムによって機能を実現する構成であってもよい。
【００３３】
［Ｐ２Ｐ（Ｐｅｅｒ  ｔｏ  Ｐｅｅｒ）方式］
本実施形態におけるＭＦＰ３００は、Ｐ２Ｐ接続方式として、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ（登録商標）の以下の２つのモードに対応している。
・Ａｕｔｏｎｏｍｏｕｓ  ＧＯモード：自主的にグループオーナーの役割を担い、アクセスポイントとして振る舞う。
・ＧＯ  Ｎｅｇｏｔｉａｔｉｏｎモード：Ｇｒｏｕｐ  Ｏｗｎｅｒ  Ｎｅｇｏｔｉａｔｉｏｎシーケンスにより互いの役割（グループオーナー、クライアント）を決定する。
なお、ＷＦＤによる通信機能を有する機器では、その操作部から、その通信機能を実現する専用のアプリケーションを呼び出す。そして、そのアプリケーションによって提供される操作画面であるＵＩ（ユーザインタフェース）に対する操作に基づいて、ＷＦＤの通信を行うためのネゴシエーションを実行する。
【００３４】
以下、各モードにおける無線接続シーケンスについて、図７、図８を用いて説明する。
【００３５】
図７は、Ａｕｔｏｎｏｍｏｕｓ  ＧＯモードの無線接続シーケンスを示す図である。ここでは、ＭＦＰ３００が、無線ＬＡＮにおけるアクセスポイントの機能をソフトウェアにより実現する、ソフトウェアＡＰとなる。一方、端末装置２００が、各種サービスを依頼する役割を果たすクライアントとなる。つまり、ＭＦＰ３００が、自主的にグループオーナーとしての役割を担うものとして動作している。ＭＦＰ３００は、Ａｕｔｏｎｏｍｏｕｓ  ＧＯモードが有効化されていると判定した場合、自身のソフトウェアＡＰを起動する。
【００３６】
クライアントは、機器探索コマンドによりアクセスポイントを探索し、アクセスポイントから機器探索コマンドに対する機器探索応答を受信することによってアクセスポイントを検出する（７０１）。次に、クライアントとアクセスポイントとの間で無線接続（認証、アソシエーション等）を確立する（７０２）。その後、クライアントとアクセスポイントは、ＩＰ接続の処理（ＩＰアドレスの割当等）を行う（７０３）。
【００３７】
なお、クライアントとアクセスポイントとの間で無線接続を実現する場合に送受信されるコマンドやパラメータについては、Ｗｉ−Ｆｉ（登録商標）の規格で規定されているものを用いればよく、特に限定するものではないため、ここでの説明は省略する。
【００３８】
図８は、ＧＯ  Ｎｅｇｏｔｉａｔｉｏｎモードの無線接続シーケンスを示す図である。ここでは、端末装置２００とＭＦＰ３００とが通信を行うものとし、当初は各機器の役割は決まっていないものとする。まず通信を行う機器間で、一方の機器（例えば、端末装置２００）が、機器探索コマンドを発行し、ＷＦＤモードで接続する機器を探索する（８０１）。機器探索コマンドに対する機器探索応答により通信相手となる他方の機器（例えば、ＭＦＰ３００）が検出されると、両者の間で、互いの機器で供給可能なサービスや機能に関する情報を確認する（８０２）。尚、この機器供給情報確認はオプションであり、必須ではない。この機器供給情報確認フェーズは、例えばＰ２ＰのＰｒｏｖｉｓｉｏｎ  Ｄｉｓｃｏｖｅｒｙに相当する。
【００３９】
次に、各機器は、機器供給情報を互いに確認することで、その役割として、どちらがＰ２Ｐのクライアントとなり、どちらがＰ２Ｐのグループオーナーとなるかを決定する（８０３）（ネゴシエーション処理を実行する）。図８の例では、ＭＦＰ３００がグループオーナーに決定し、端末装置２００がクライアントに決定したものとする。
【００４０】
各機器の役割としてクライアントとグループオーナーが決定した後、両者の間で、ＷＦＤによる通信を行うためのパラメータを交換する（８０４）。パラメータ交換フェーズは、例えば、Ｗｉ−Ｆｉ  Ｐｒｏｔｅｃｔｅｄ  Ｓｅｔｕｐを用いて自動的に無線ＬＡＮセキュリティのパラメータ交換することに対応する。交換したパラメータに基づいて、Ｐ２Ｐのクライアントとグループオーナーとの間で残りの無線接続の処理（８０５）、ＩＰ接続の処理（８０６）を行う。なお、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔモードにおけるグループオーナーとして動作する装置は、ＡＰのような動作を行い、クライアントは、ＡＰに接続するステーション（ＳＴＡ）のような動作を行う。一般的に、グループオーナーとして動作する装置は、クライアントとして動作する装置から送信された機器探索リクエストコマンドに応じて機器探索応答コマンドを送信する。また、グループオーナーとして動作する装置は、ＧｒｏｕｐＯｗｎｅｒＮｅｇｏｔｉａｔｉｏｎで得られたクライアントのチャネル情報と、自身が使用できるチャネルとを照らし合わせて、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔモードにおいて使用するチャネルを決定する。
【００４１】
＜第１の実施形態＞
本発明の第１の実施形態について、図９〜図１２を用いて説明する。
【００４２】
本実施形態において、通信装置であるＭＦＰ３００は、不揮発性メモリ６０５に、図１２に示す、Ｐ２Ｐ接続情報１２０１および証明書情報１２０２を保持する。Ｐ２Ｐ接続情報１２０１は、本実施形態に係るＰ２Ｐ接続方式にて通信相手装置と接続するために用いられる情報を含む。Ｐ２Ｐ接続情報１２０１としては、例えば、Ｐ２Ｐ接続の有効／無効の設定、接続モードの指定、インテント値、ＳＳＩＤ（Ｓｅｒｖｉｃｅ  Ｓｅｔ  Ｉｄｅｎｔｉｆｉｅｒ）、ＩＰアドレスなどが含まれる。この情報は、通信装置のユーザによって設定されてもよいし、製品の出荷時に設定されていてもよい。また、上記の設定項目に限定されるものではなく、他の情報を含んでもよい。
【００４３】
証明書情報１２０２は、ＳＳＬ通信にて用いられる証明書に関する情報を含む。証明書情報１２０２としては、例えば、ルート証明書、ルート証明書のプライベート鍵、サーバー証明書、サーバー証明書のプライベート鍵などが含まれる。また、各証明書には、公開鍵や署名に関する情報が含まれる。なお、証明書の構成に関しては、公知の構成を適用できるものとし、上記に限定するものではない。
【００４４】
図９は、本実施形態における、ＭＦＰ３００の起動からセキュアな通信であるＳＳＬ（Ｓｅｃｕｒｅ  Ｓｏｃｋｅｔｓ  Ｌａｙｅｒ）通信が可能になるまでのフローチャートである。本処理フローは、ＭＦＰ３００が起動されることにより開始される。また、本処理フローは、例えば、ＭＦＰ３００のＣＰＵ６０２が、ＲＯＭ６０３等に格納されたプログラム等を読み出して実行することにより実現される。
【００４５】
Ｓ９０１にて、ＭＦＰ３００は、不揮発性メモリ６０５に記憶された設定情報のうち、図１２で示すＰ２Ｐ接続情報１２０１（接続モード、ＩＰアドレス等）を取得する。なお、本実施形態では、Ｐ２Ｐ接続は「有効」として設定されているものとする。また、接続モードとしては、Ａｕｔｏｎｏｍｏｕｓ  ＧＯモードもしくはＧＯ  Ｎｅｇｏｔｉａｔｉｏｎモードのいずれかが設定されているものとする。ＭＦＰ３００が、Ａｕｔｏｎｏｍｏｕｓ  ＧＯモードとして動作する場合、ＭＦＰ３００が、直接的な無線接続のために使用される通信チャネルを決定する役割として動作する。一方、ＭＦＰ３００が、ＧＯ  Ｎｅｇｏｔｉａｔｉｏｎモードとして動作する場合は別の処理を実行する。すなわち、ＭＦＰ３００は、通信相手装置との直接的な無線接続のために使用される通信チャネルを決定する役割として動作するか否かを決定する役割決定処理を実行する。なお、役割決定処理とは、ＭＦＰ３００と通信相手装置とがＩｎｔｅｎｔ値を交換して、どちらが直接的な無線接続のために使用される通信チャネルを決定する役割として動作するかを決定する処理である。
【００４６】
Ｓ９０２にて、ＭＦＰ３００は、Ｓ９０１で取得した情報に基づき、接続モードがＡｕｔｏｎｏｍｏｕｓ  ＧＯモードか否かを判定する。Ａｕｔｏｎｏｍｏｕｓ  ＧＯモードであれば（Ｓ９０２にてＹＥＳ）、Ｓ９０３に進み、そうでなければ（Ｓ９０２にてＮＯ）Ｓ９０８に進む。
【００４７】
Ｓ９０３にて、ＭＦＰ３００は、Ｐ２Ｐのネットワークインタフェース（例えば、ＷＬＡＮユニット６１６）に対してＳ９０１で取得したＩＰアドレスを設定する。
【００４８】
Ｓ９０４にて、ＭＦＰ３００は、Ｐ２ＰのＳＳＬ通信で使用するサーバー証明書を生成する。Ｓ９０４の詳細については、図１０を用いて後述する。
【００４９】
Ｓ９０５にて、ＭＦＰ３００は、クライアントにＩＰアドレスを割り当てるためＤＨＣＰ（Ｄｙｎａｍｉｃ  Ｈｏｓｔ  Ｃｏｎｆｉｇｕｒａｔｉｏｎ  Ｐｒｏｔｏｃｏｌ）サーバー（不図示）を起動し、ＷＦＤ接続待ち状態に入る。なお、ＤＨＣＰサーバーは、ＭＦＰ３００が内部にその機能を備え、例えば、ＣＰＵ６０２がＲＯＭ６０３等に格納されたプログラムを実行することにより実現されてよい。
【００５０】
Ｓ９０６にて、ＭＦＰ３００は、クライアントとのＷＦＤ接続処理を実行する。ＷＦＤ接続処理は、図７で説明したＡｕｔｏｎｏｍｏｕｓ  ＧＯモードのシーケンスである。
【００５１】
ＷＦＤ接続処理の完了後、Ｓ９０７にて、ＭＦＰ３００は、ＤＨＣＰによりクライアントにＩＰアドレスを割り当てる。ＤＨＣＰによるクライアントへのＩＰアドレスの割り当ては、周知の技術を用いるものとし、ここでの詳細な説明は省略する。以上により、ＳＳＬ通信可能状態となり、本処理フローを終了する。
【００５２】
続いて、Ｓ９０２にてＮｏと判定された場合の処理について説明する。Ｓ９０８にて、ＭＦＰ３００は、ＷＦＤ接続待ち状態に入り、通信相手装置とのＷＦＤ接続処理を実行する。Ｓ９０８のＷＦＤ接続処理は、図８で説明したＧＯ  Ｎｅｇｏｔｉａｔｉｏｎモードの無線接続シーケンスである。
【００５３】
ＷＦＤ接続処理の完了後、Ｓ９０９にて、ＭＦＰ３００は、自身の役割がグループオーナーかクライアントかを判定する。つまり、Ｓ９０８の処理により、ＭＦＰ３００の役割がグループオーナーかクライアントかが決定されている。自身の役割がグループオーナーである場合（Ｓ９０９にてＹＥＳ）、Ｓ９１０へ進み、自身の役割がクライアントである場合（Ｓ９０９にてＮＯ）Ｓ９１４へ進む。
【００５４】
Ｓ９１０にて、ＭＦＰ３００は、Ｐ２Ｐのネットワークインタフェース（例えば、ＷＬＡＮユニット６１６）に対してＳ９０１で取得したＩＰアドレスを設定する。
【００５５】
Ｓ９１１にて、ＭＦＰ３００は、不揮発性メモリ６０５に記憶されたＰ２ＰのＳＳＬ通信で使用するサーバー証明書を取得する。つまり、この時点では、新たなサーバー証明書の作成は行わず、既存のサーバー証明書を取得する。
【００５６】
Ｓ９１２にて、ＭＦＰ３００は、ＤＨＣＰサーバー（不図示）を起動する。
【００５７】
Ｓ９１３にて、ＭＦＰ３００は、ＤＨＣＰによりクライアントにＩＰアドレスを割り当てる。ＤＨＣＰによるクライアントへのＩＰアドレスの割り当ては、周知の技術を用いるものとし、ここでの詳細な説明は省略する。以上により、ＳＳＬ通信可能状態となり、本処理フローを終了する。
【００５８】
Ｓ９１４にて、ＭＦＰ３００は、ＩＰアドレスを取得するためＤＨＣＰクライアント（不図示）を起動する。ＤＨＣＰクライアントは、ＭＦＰ３００が内部にその機能を備え、例えば、ＣＰＵ６０２がＲＯＭ６０３等に格納されたプログラムを実行することにより実現されてよい。
【００５９】
Ｓ９１５にて、ＭＦＰ３００は、ＤＨＣＰクライアントによりＩＰアドレスを取得する。
【００６０】
Ｓ９１６にて、ＭＦＰ３００は、不揮発性メモリ６０５に記憶されたＰ２ＰのＳＳＬ通信で使用するサーバー証明書を取得する。つまり、この時点では、新たなサーバー証明書の作成は行わず、既存のサーバー証明書を取得する。以上により、ＳＳＬ通信可能状態となり、本処理フローを終了する。
【００６１】
本実施形態では、ＭＦＰ３００は、Ａｕｔｏｎｏｍｏｕｓ  ＧＯモードの場合はサーバー証明書を生成し（Ｓ９０４）、そのサーバー証明書を使用する。一方、ＧＯ  Ｎｅｇｏｔｉａｔｉｏｎモードの場合はサーバー証明書を生成せず、役割決定処理の実行前に保持されていた既存のサーバー証明書を使用する（Ｓ９１１、Ｓ９１６）。これは、Ａｕｔｏｎｏｍｏｕｓ  ＧＯモードの場合は、ＩＰアドレスが確定した後でクライアントとの無線接続が確立する。従って、確定したＩＰアドレスを組み込んだサーバー証明書を生成した上で、クライアントからの接続を待つことができるからである。言い換えると、Ａｕｔｏｎｏｍｏｕｓ  ＧＯモードでは、事前にサーバー証明書を生成して（Ｓ９０３、Ｓ９０４）、クライアントからの接続要求を待つことができる。一方、ＧＯ  Ｎｅｇｏｔｉａｔｉｏｎモードの場合、ＩＰアドレスが確定する時点で既に（Ｓ９０８の時点で）無線接続は確立している。従って、ＩＰアドレス確定後にサーバー証明書を生成すると、ＳＳＬ通信可能になるまでの間、無線接続が確立している通信相手先のユーザを待たせてしまう。そのため、ＧＯ  Ｎｅｇｏｔｉａｔｉｏｎモードでは、クライアントとの接続が確立した後にサーバー証明書の生成を行わず、既存のサーバー証明書の取得のみを行う。上記により、各モードに応じて、サーバー証明書の生成を制御している。つまり、本実施形態では、端末装置２００のユーザが、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ（登録商標）の相手としてＭＦＰ３００を見つけてから印刷データを送信可能となるまでの時間を短縮化することが可能となる。
【００６２】
図１０は、図９のＳ９０４の工程におけるサーバー証明書生成処理を示すフローチャートである。
【００６３】
Ｓ１００１にて、ＭＦＰ３００は、図１２に示す不揮発性メモリ６０５に記憶された証明書情報１２０２の中から、Ｐ２ＰのＳＳＬ通信で使用するサーバー証明書を取得する。各種証明書には、サブジェクト情報（所有者に関する情報）が含まれており、その中にコモンネームフィールド（不図示）がある。本実施形態では、サーバー証明書のコモンネームにＩＰアドレスを設定している。
【００６４】
Ｓ１００２にて、ＭＦＰ３００は、Ｓ１００１で取得したサーバー証明書からコモンネーム情報を取り出し、コモンネームのＩＰアドレスとＳ９０１で取得したＩＰアドレス（Ｐ２Ｐ接続情報１２０１にて指定されたＩＰアドレス）とを比較する。
【００６５】
Ｓ１００３にて、ＭＦＰ３００は、比較の結果、ＩＰアドレスが変更されていたか否かを判定する。ＩＰアドレスが変更されていた場合（Ｓ１００３にてＹＥＳ）、Ｓ１００４へ進み、変更されていなかった場合（Ｓ１００３にてＮＯ）、サーバー証明書を新たに生成する必要が無いため、本処理フローを終了する。
【００６６】
Ｓ１００４にて、ＭＦＰ３００は、変更後のＩＰアドレス情報（Ｐ２Ｐ接続情報１２０１にて指定されたＩＰアドレス）を使用してサーバー証明書を生成する。Ｓ１００４の詳細については、図１１を用いて後述する。
【００６７】
Ｓ１００５にて、ＭＦＰ３００は、生成した証明書をＰ２Ｐ用のサーバー証明書として不揮発性メモリ６０５に保存する。そして、本処理フローを終了する。
【００６８】
図１１は、図１０のＳ１００４の工程における証明書の生成処理を示すフローチャートである。
【００６９】
Ｓ１１０１にて、ＭＦＰ３００は、公開鍵を用いて暗号化処理を実行するために使用される鍵情報として公開鍵とプライベート鍵とのペア（鍵ペア）を生成する。公開鍵暗号方式としては、例えば、ＲＳＡ暗号や楕円曲線暗号（ＥＣＣ）が挙げられる。また、鍵の生成方法については、周知の方法を用いるものとし、ここでの詳細な説明は省略する。
【００７０】
Ｓ１１０２にて、ＭＦＰ３００は、Ｓ１１０１で生成した公開鍵を証明書として使用できるようにするため、必要なパラメータを設定する。ここでの必要なパラメータとは、例えば、国名、都道府県名、市町村名、組織名、部署名、コモンネーム、有効期限、暗号方式等が該当する。
【００７１】
Ｓ１１０３にて、ＭＦＰ３００は、Ｓ１１０１で生成した公開鍵とＳ１１０２で設定したパラメータに対して、ＳＨＡ−２５６等のハッシュアルゴリズムを用いてハッシュ値を算出する。なお、ここで用いるハッシュアルゴリズムは一例であり、これに限定するものではない。
【００７２】
Ｓ１１０４にて、ＭＦＰ３００は、Ｓ１１０３で算出したハッシュ値を証明書のプライベート鍵で暗号化することで、署名をする。Ｓ１１０４の署名で使用する証明書は、生成したい証明書によって使い分けることができる。ルート証明書を生成したい場合は、Ｓ１１０１で生成した公開鍵に対してペアとなるプライベート鍵で署名する。これにより、発行者と主体者が同一な、いわゆる自己署名証明書を生成することができる。ＭＦＰ３００は、この自己署名証明書を初回起動時に生成し、プライベート鍵と併せてルート証明書として不揮発性メモリ６０５に保存しておく。また、ＳＳＬ通信で使用するサーバー証明書を生成する際は、Ｓ１１０１で生成した公開鍵に対して予め生成しておいたルート証明書を上位の認証局として、ルート証明書のプライベート鍵で署名する。
【００７３】
Ｓ１１０５にて、ＭＦＰ３００は、公開鍵に署名情報を付加して証明書を生成する。そして、本処理フローを終了する。
【００７４】
以上、本実施形態により、無線接続を行う際のモードを判定し、そのモードの判定結果に応じて、サーバー証明書の生成を制御することで、クライアントから接続が要求されてからＳＳＬ通信が可能になるまでの時間を短縮することができる。
【００７５】
＜第２の実施形態＞
本発明の第２の実施形態について、図１３、図１４を用いて説明する。第１の実施形態では、無線接続を行う際のモードに応じて証明書の生成処理の有無を制御していた。第２の実施形態では、モードに応じて、証明書の生成処理における処理負荷に影響する暗号化方式を切り替える。
【００７６】
本実施形態において、通信装置であるＭＦＰ３００は、不揮発性メモリ６０５に、図１４に示す、Ｐ２Ｐ接続情報１４０１、証明書情報１４０２、および鍵ペア情報１４０３を保持する。Ｐ２Ｐ接続情報１４０１は、第１の実施形態にて図１２を用いて説明したＰ２Ｐ接続情報１２０１と同様である。
【００７７】
証明書情報１４０２は、ルート証明書、ルート証明書のプライベート鍵に加え、各暗号化方式に対応したサーバー証明書およびサーバー証明書のプライベート鍵が含まれる。鍵ペア情報１４０３は、各暗号化方式に対応した鍵のペア（公開鍵およびプライベート鍵）が含まれる。鍵ペア情報１４０３の詳細については、フローチャートと併せて後述する。なお、本実施形態において、ＭＦＰ３００が対応する暗号化方式として、ＲＳＡ暗号方式および楕円曲線暗号方式を例に挙げて説明する。
【００７８】
図１３は、本実施形態における、ＭＦＰ３００の起動からＳＳＬ通信が可能になるまでのフローチャートである。本処理フローは、ＭＦＰ３００が起動されることにより開始される。また、本処理フローは、例えば、ＭＦＰ３００のＣＰＵ６０２が、ＲＯＭ６０３等に格納されたプログラム等を読み出して実行することにより実現される。
【００７９】
Ｓ１３０１にて、ＭＦＰ３００は、不揮発性メモリ６０５に記憶された設定情報のうち、図１４に示す鍵ペア情報１４０３を取得する。
【００８０】
Ｓ１３０２にて、ＭＦＰ３００は、Ｓ１３０１にて取得した情報に基づき、ＲＳＡ暗号、楕円曲線暗号ともに鍵ペアが存在するか確認する。鍵ペア情報が存在する場合は（Ｓ１３０２にてＹＥＳ）Ｓ１３０４へ進み、存在しない場合は（Ｓ１３０２にてＮＯ）、Ｓ１３０３へ進む。
【００８１】
Ｓ１３０３にて、ＭＦＰ３００は、鍵ペアを生成する。各暗号化方式に対応した鍵ペアの生成方法については、周知の方法を用いるものとし、ここでの詳細な説明は省略する。生成した鍵ペアは、不揮発性メモリ６０５に保持される。その後、Ｓ１３０４へ進む。
【００８２】
Ｓ１３０４〜Ｓ１３０６は、基本的にはＳ９０１〜Ｓ９０３と同じであり、異なる点は、取得する情報が図１２から図１４に変更した点である。そのため、詳細な説明は省略する。
【００８３】
Ｓ１３０７にて、ＭＦＰ３００は、Ｐ２ＰのＳＳＬ通信で使用するＲＳＡ暗号のサーバー証明書を生成する。本工程の基本的な流れは、第１の実施形態にて示した図１０、図１１と同様であり、また、ＲＳＡ暗号によるサーバー証明書の生成方法は、周知技術に基づくものを適用可能であるため、ここでの詳細な説明は省略する。
【００８４】
Ｓ１３０８〜Ｓ１３１０は、Ｓ９０５〜Ｓ９０７と基本的に同じ処理であるため詳細な説明は省略する。
【００８５】
続いて、Ｓ１３０５にてＮＯと判定された場合の処理について説明する。なお、Ｓ１３１１〜Ｓ１３１３は、Ｓ９０８〜Ｓ９１０と基本的には同じ処理であるため詳細な説明は省略する。
【００８６】
Ｓ１３１４にて、ＭＦＰ３００は、Ｐ２ＰのＳＳＬ通信で使用する楕円曲線暗号のサーバー証明書を生成する。本工程の基本的な流れは、Ｓ１３０７と同様に、第１の実施形態にて示した図１０、図１１と同様であり、また、楕円曲線暗号によるサーバー証明書の生成方法は、従来技術に基づくものを適用可能であるため、ここでの詳細な説明は省略する。
【００８７】
Ｓ１３１５〜Ｓ１３１６は、Ｓ９１２〜Ｓ９１３と基本的には同じ処理であるため詳細な説明は省略する。
【００８８】
Ｓ１３１７〜Ｓ１３１８は、Ｓ９１４〜Ｓ９１５と基本的には同じ処理であるため詳細な説明は省略する。
【００８９】
Ｓ１３１９にて、ＭＦＰ３００は、Ｓ１３１８で取得したＩＰアドレスを使用して、Ｐ２ＰのＳＳＬ通信で使用する楕円曲線暗号のサーバー証明書を生成する。本工程の基本的な流れは、Ｓ１３０７と同様に、第１の実施形態にて示した図１０、図１１と同様であり、また、楕円曲線暗号によるサーバー証明書の生成方法は、従来技術に基づくものを適用可能であるため、ここでの詳細な説明は省略する。以上により、ＳＳＬ通信可能な状態となり、本処理フローを終了する。
【００９０】
なお、図示はしていないが、ＳＳＬ通信が可能な状態になったら、次回の証明書生成のため、別タスクで鍵ペアを生成して不揮発性メモリ６０５に保存しておいてもよい。
【００９１】
本実施形態では、Ｐ２Ｐの接続モードがＡｕｔｏｎｏｍｏｕｓ  ＧＯモードの場合はＲＳＡ暗号の証明書を使用し、ＧＯ  Ｎｅｇｏｔｉａｔｉｏｎモードの場合は楕円曲線暗号の証明書を使用している。これは、Ａｕｔｏｎｏｍｏｕｓ  ＧＯモードで接続待ちしているグループオーナーに対して、ＷＦＤ非対応の端末からでも通常のアクセスポイントに接続するのと同じ方法で接続することが可能とするためである。つまり、ＷＦＤに対応している端末だけでなく、様々な端末から接続されることを考慮すると、現在広く使用されているＲＳＡ暗号方式を使用することが望ましい。なお、上記の観点から、広く普及している（通信相手装置がサポートしている）暗号化方式であれば、ＲＳＡ暗号方式に限定するものではなく、他の暗号化方式であってもよい。
【００９２】
一方、ＧＯ  Ｎｅｇｏｔｉａｔｉｏｎモードで接続した場合は、接続相手は相応の機能を有した端末であり、ＲＳＡ暗号方式よりも比較的新しい楕円曲線暗号にも対応している可能性が高い。楕円曲線暗号は、ＲＳＡ暗号と比較して短い鍵長で同程度の暗号強度を実現できるので、計算処理の負荷（すなわち証明書の生成処理負荷）が軽減される。従って、Ｓ１３０６でＮｏと判定された場合は、証明書生成に要する時間を短縮できる楕円曲線暗号を使用することが望ましい。なお、上記の観点から、通信相手装置となる端末の暗号化方式の対応状況を考慮し、他の暗号化方式を用いてもよい。
【００９３】
上述したように、本実施形態におけるＳ１３０７、Ｓ１３１４、およびＳ１３１９のサーバー証明書生成処理は、第１の実施形態にて図１０および図１１を用いて説明したものと同等である。ただし、接続モード（Ａｕｔｏｎｏｍｏｕｓ  ＧＯモードもしくはＧＯ  Ｎｅｇｏｔｉａｔｉｏｎモード）によって使用する暗号方式を使い分けているため、どの暗号方式の証明書を生成しているかパラメータを保持しておく必要がある。また、本実施形態では、予め鍵ペアを生成しているため、図１１におけるＳ１１０１の鍵ペア生成は、不揮発性メモリ６０５から鍵ペアを取得することで置き換えられる。
【００９４】
以上、本実施形態により、接続モードに応じて、処理負荷の異なる暗号化方式を切り替えることで、処理負荷を低減することができ、その結果、クライアントから接続が要求されてからＳＳＬ通信が可能になるまでの時間を短縮することができる。また、通信相手装置における暗号化方式の対応状況を考慮して暗号化方式を設定できるため、柔軟なシステム構築が可能となる。
【００９５】
＜その他の実施形態＞
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピューターにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００９６】
２００…端末装置、３００…ＭＦＰ、４００…アクセスポイント、５１７、６１６…ＷＬＡＮユニット
【図１】
0006656084.tif 000002
【図２】
0006656084.tif 000003
【図３】
0006656084.tif 000004
【図４】
0006656084.tif 000005
【図５】
0006656084.tif 000006
【図６】
0006656084.tif 000007
【図７】
0006656084.tif 000008
【図８】
0006656084.tif 000009
【図９】
0006656084.tif 000010
【図１０】
0006656084.tif 000011
【図１１】
0006656084.tif 000012
【図１２】
0006656084.tif 000013
【図１３】
0006656084.tif 000014
【図１４】
0006656084.tif 000015