(57)【要約】【課題】  ＤＰＰ規格に準拠した通信パラメータの共有処理と、これとは異なる他の共有処理とを実行可能な装置において、ユーザの利便性を向上させる。【解決手段】  ユーザからの所定の操作を受け付けた場合に、ＤＰＰ規格に準拠した信号を受信するとＤＰＰ規格に準拠した方法に従って通信パラメータの共有処理を行い、他の規格に準拠した信号を受信すると当該他の規格に準拠した方法に従って通信パラメータの共有処理を行う。【選択図】  図３
2020088620.tif 000002
【特許請求の範囲】
【請求項１】
通信装置であって、
ユーザからの所定の操作を受け付ける受け付け手段と、
Ｗｉ−Ｆｉ  ＤＰＰ（Ｄｅｖｉｃｅ  Ｐｒｏｖｉｓｉｏｎｉｎｇ  Ｐｒｏｔｏｃｏｌ）規格に準拠した第１の方法に従って、第１の他の通信装置と、無線ネットワークに接続するための通信パラメータの共有処理を行う第１の処理手段と、
ＤＰＰ規格とは異なる他の規格に準拠した第２の方法に従って、第２の他の通信装置と、前記無線ネットワークに接続するための通信パラメータの共有処理を行う第２の処理手段と、
前記受け付け手段が前記所定の操作を受け付けた場合に、ＤＰＰ規格に準拠した第１の信号を受信した場合には前記第１の処理手段による共有処理を行い、前記他の規格に準拠した第２の信号を受信した場合には前記第２の処理手段による共有処理を行うように制御する制御手段と、
を有することを特徴とする通信装置。
【請求項２】
前記第１の信号は、認証コードを用いて、前記第１の他の通信装置との間で、ＤＰＰ規格によって定められた所定の公開鍵を前記第１の他の通信装置と共有するために用いられる信号であることを特徴とする請求項１の通信装置。
【請求項３】
前記所定の公開鍵は、ＤＰＰ規格に準拠したｂｏｏｔｓｔｒａｐｐｉｎｇ  ｋｅｙであることを特徴とする請求項２に記載の通信装置。
【請求項４】
ユーザにコードを入力させる入力手段を更に有し、
前記第１の処理手段と前記第２の処理手段とは、前記入力手段により入力された共通のコードを用いて共有処理を行うことを特徴とする請求項１から３のいずれか１項に記載の通信装置。
【請求項５】
前記他の規格は、ＷＰＳ（Ｗｉ−Ｆｉ  Ｐｒｏｔｅｃｔｅｄ  Ｓｅｔｕｐ）規格であって、
前記他の規格は、ＷＰＳ規格に準拠したＰＩＮ（Ｐｅｒｓｏｎａｌ  Ｉｄｅｎｔｉｆｉｃａｔｉｏｎ  Ｎｕｍｂｅｒ）方式に従った方法であることを特徴とする請求項１から４のいずれか１項に記載の通信装置。
【請求項６】
前記他の規格は、ＷＰＳ（Ｗｉ−Ｆｉ  Ｐｒｏｔｅｃｔｅｄ  Ｓｅｔｕｐ）規格であることを特徴とする請求項１から４のいずれか１項に記載の通信装置。
【請求項７】
前記第２の方法は、ＷＰＳ規格に準拠したＰＢＣ（Ｐｕｓｈ  Ｂｕｔｔｏｎ  Ｃｏｎｆｉｇｕｒａｔｉｏｎ）方式に従った方法であることを特徴とする請求項６に記載の通信装置。
【請求項８】
前記他の規格は、ＷＰＳ規格に準拠したＰＩＮ（Ｐｅｒｓｏｎａｌ  Ｉｄｅｎｔｉｆｉｃａｔｉｏｎ  Ｎｕｍｂｅｒ）方式に従った方法であることを特徴とする請求項６に記載の通信装置。
【請求項９】
前記他の規格は、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ規格であることを特徴とする請求項１から４のいずれか１項に記載の通信装置。
【請求項１０】
前記他の規格は、ＡＯＳＳ（ＡｉｒＳｔａｔｉｏｎ  Ｏｎｅ−Ｔｏｕｃｈ  Ｓｅｃｕｒｅ  Ｓｙｓｔｅｍ）規格であることを特徴とする請求項１から４のいずれか１項に記載の通信装置。
【請求項１１】
前記他の規格として、何れの規格を用いるかを設定する設定手段を更に有することを特徴とする請求項１から４のいずれか１項に記載の通信装置。
【請求項１２】
前記受け付け手段は、ボタンであることを特徴とする請求項１から１１のいずれか１項に記載の通信装置。
【請求項１３】
通信装置の制御方法であって、
ユーザからの所定の操作を受け付ける受け付け工程と、
Ｗｉ−Ｆｉ  ＤＰＰ（Ｄｅｖｉｃｅ  Ｐｒｏｖｉｓｉｏｎｉｎｇ  Ｐｒｏｔｏｃｏｌ）規格に準拠した第１の方法に従って、第１の他の通信装置と、無線ネットワークに接続するための通信パラメータの共有処理を行う第１の処理工程と、
ＤＰＰ規格とは異なる他の規格に準拠した第２の方法に従って、第２の他の通信装置と、前記無線ネットワークに接続するための通信パラメータの共有処理を行う第２の処理工程と、
前記所定の操作を受け付けた場合に、ＤＰＰ規格に準拠した第１の信号を受信した場合には前記第１の処理工程の共有処理を行い、前記他の規格に準拠した第２の信号を受信した場合には前記第２の処理工程の共有処理を行うように制御する制御工程と、
を有することを特徴とする制御方法。
【請求項１４】
コンピュータを請求項１から１２のいずれか１項に記載の通信装置として動作させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信パラメータの共有処理を行う装置に関する。
【背景技術】
【０００２】
近年、無線ネットワークにアクセスするための通信パラメータを共有する技術として、Ｗｉ−Ｆｉ  ＤＰＰ（Ｄｅｖｉｃｅ  Ｐｒｏｖｉｓｉｏｎｉｎｇ  Ｐｒｏｔｏｃｏｌ）規格が策定された。ＤＰＰ規格では、コンフィグレータと呼ばれる装置が、エンローリと呼ばれる装置に通信パラメータを提供することが定められている（特許文献１）。
【０００３】
また、ＤＰＰ規格とは異なる他の通信パラメータ共有規格として、ＷＰＳ（Ｗｉ−Ｆｉ  Ｐｒｏｔｅｃｔｅｄ  Ｓｅｔｕｐ）規格がある。ＷＰＳ規格では、レジストラと呼ばれる装置が、エンローリと呼ばれる装置に通信パラメータを提供することが定められている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】米国公開特許２０１７／０２９５４４８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ＤＰＰ規格だけでなく、他の通信パラメータ共有規格に対応した装置においては、いずれの共有規格を実行するかをユーザに選択させると、ユーザ操作が煩雑になってしまう。
【０００６】
上記課題を鑑み、本発明は、ＤＰＰ規格に準拠した通信パラメータの共有処理と、これとは異なる他の共有処理とを実行可能な装置において、ユーザの利便性を向上させることを目的とする。
【課題を解決するための手段】
【０００７】
本発明の通信装置は、ユーザからの所定の操作を受け付ける受け付け手段と、Ｗｉ−Ｆｉ  ＤＰＰ（Ｄｅｖｉｃｅ  Ｐｒｏｖｉｓｉｏｎｉｎｇ  Ｐｒｏｔｏｃｏｌ）規格に準拠した第１の方法に従って、第１の他の通信装置と、無線ネットワークに接続するための通信パラメータの共有処理を行う第１の処理手段と、ＤＰＰ規格とは異なる他の規格に準拠した第２の方法に従って、第２の他の通信装置と、前記無線ネットワークに接続するための通信パラメータの共有処理を行う第２の処理手段と、前記受け付け手段が前記所定の操作を受け付けた場合に、ＤＰＰ規格に準拠した第１の信号を受信した場合には前記第１の処理手段による共有処理を行い、前記他の規格に準拠した第２の信号を受信した場合には前記第２の処理手段による共有処理を行うように制御する制御手段と、を有する。
【発明の効果】
【０００８】
本発明によれば、ＤＰＰ規格に準拠した通信パラメータの共有処理と、これとは異なる他の共有処理とを実行可能な装置において、ユーザの利便性を向上させることができる。
【図面の簡単な説明】
【０００９】
【図１】通信システムの構成図。
【図２】通信装置１０１のハードウェア構成図。
【図３】通信装置１０１により実現されるフローチャート。
【図４】通信装置１０１と通信装置１０２との間のシーケンス図。
【図５】通信装置１０１により実現されるフローチャート。
【図６】通信装置１０１と通信装置１０２との間のシーケンス図。
【発明を実施するための形態】
【００１０】
図１に、本実施形態における通信システムの構成を示す。
【００１１】
通信装置１０１は、無線基地局であるアクセスポイントとして動作して、無線ネットワーク１０３を構築する。具体的には、通信装置１０１は、無線ネットワーク１０３の情報を含むビーコンを周期的に送信し、また、他の通信装置からの接続要求を受け付け、当該他の通信装置の無線ネットワーク１０３への接続を許可する。
【００１２】
また、通信装置１０１は、ＤＰＰ（Ｄｅｖｉｃｅ  Ｐｒｏｖｉｓｉｏｎｉｎｇ  Ｐｒｏｔｏｃｏｌ）規格に準拠したコンフィギュレータとして動作する。コンフィギュレータとは、無線ネットワーク１０３に接続するために必要な通信パラメータを提供する役割の装置である。即ち、通信装置１０１は、通信装置１０２に対して無線ネットワーク１０３の通信パラメータを提供する。また、通信装置１０１は、ＷＰＳ（Ｗｉ−Ｆｉ  Ｐｒｏｔｅｃｔｅｄ  Ｓｅｔｕｐ）規格に準拠したレジストラとしても動作する。レジストラとは、コンフィギュレータと同様に無線ネットワーク１０３に接続するために必要な通信パラメータを提供する役割の装置である。
【００１３】
なお、通信パラメータとは、例えば、ＤＰＰまたはＷＰＳ規格に準拠したクレデンシャルであり、無線ネットワーク１０３に接続するために必要な鍵情報であるｎｅｔＡｃｃｅｓｓＫｅｙ等の情報が含まれる。しかし、これに限らず、鍵情報としてＰｒｅ  Ｓｈａｒｅｄ  Ｋｅｙ等の情報含むものであってもよい。また、通信パラメータは、無線ネットワーク１０３の識別子であるＳＳＩＤ（Ｓｅｒｖｉｃｅ  Ｓｅｔ  Ｉｄｅｎｔｉｆｉｃａｔｉｏｎ）や周波数チャネルの情報を含んでいてもよい。また、無線ネットワーク１０３において用いられる暗号方式や認証方式等の情報を含んでいてもよいし、当該通信パラメータの有効期限を含んでいてもよい。
【００１４】
また、コンフィギュレータである通信装置１０１は、通信パラメータを提供する際に、役割情報も通知する。この役割情報とは、通信パラメータの共有処理が行われた後の役割を示す。この役割は、取得した通信パラメータを用いて無線ネットワークを構築するアクセスポイント、もしくは、取得した通信パラメータを用いて無線ネットワークに接続する接続装置（以下ステーションと称する）のどちらかを示す。通信装置１０１は、アクセスポイントとして動作するため、アクセスポイントを示す役割情報を通知する。
【００１５】
一方、通信装置１０２は、無線ネットワークに接続するステーションとして動作して、無線ネットワーク１０３に接続する。また、通信装置１０２は、ＤＰＰ及びＷＰＳ規格の各々に準拠したエンローリとして動作する。即ち、通信装置１０２は、通信装置１０１から通信パラメータを取得し、無線ネットワーク１０３に接続することができる。
【００１６】
以下では、ＤＰＰ規格に準拠したコンフィギュレータ、もしくは、エンローリとしての処理をＤＰＰ処理と呼ぶ。また、ＷＰＳ規格に準拠したレジストラ、もしくは、エンローリとしての処理をＷＰＳ処理と呼ぶ。なお、通信装置１０１および通信装置１０２の具体例としては、アクセスポイント、携帯電話、デジタルカメラ、ビデオカメラ、プリンタ、プロジェクタ、ＰＣ、ＰＤＡ、スマートフォン、スマートウォッチなどが挙げられるが、これらに限られない。
【００１７】
また、無線ネットワーク１０３は、ＩＥＥＥ８０２．１１シリーズに準拠した無線ネットワークであり、通信装置１０１が構築したネットワークである。ここで、ＩＥＥＥとは、Ｔｈｅ  Ｉｎｓｔｉｔｕｔｅ  ｏｆ  Ｅｌｅｃｔｒｉｃａｌ  ａｎｄ  Ｅｌｅｃｔｒｏｎｉｃｓ  Ｅｎｇｉｎｅｅｒｓの略である。しかしこれに限らず、無線ネットワーク１０３は、通信装置１０１や通信装置１０２とは異なる他のアクセスポイントが構築したネットワークであってもよい。また、通信装置１０１、もしくは、これとは異なる装置が、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ規格に準拠したＧｒｏｕｐ  Ｏｗｎｅｒとして構築したネットワークであってもよい。更に、無線ネットワーク１０３は、ワイヤレスＵＳＢ、ＭＢＯＡ、Ｂｌｕｅｔｏｏｔｈ(登録商標) 、ＵＷＢ、ＺｉｇＢｅｅ、ＮＦＣ等に準拠したネットワークであってもよい。ここで、ＭＢＯＡは、Ｍｕｌｔｉ  Ｂａｎｄ  ＯＦＤＭ  Ａｌｌｉａｎｃｅの略であり、ＵＷＢは、Ｕｌｔｒａ  Ｗｉｄｅ  Ｂａｎｄの略である。また、ＵＷＢは、ワイヤレスＵＳＢ、ワイヤレス１３９４、ＷＩＮＥＴなどが含まれる。
【００１８】
図２に、通信装置１０１のハードウェア構成を示す。なお、通信装置１０２も同様のハードウェア構成を有する。
【００１９】
記憶部２０１はＲＯＭやＲＡＭ等の１以上のメモリにより構成され、後述する各種動作を行うためのプログラムや、無線通信のための通信パラメータ等の各種情報を記憶する。なお、記憶部２０１として、ＲＯＭ、ＲＡＭ等のメモリの他に、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＤＶＤなどの記憶媒体を用いてもよい。
【００２０】
制御部２０２はＣＰＵやＭＰＵ等の１以上のプロセッサにより構成され、記憶部２０１に記憶されたプログラムを実行することにより通信装置１０１全体を制御する。なお、制御部２０２は、記憶部２０１に記憶されたプログラムとＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）との協働により通信装置１０１全体を制御するようにしてもよい。また、制御部２０２がマルチコア等の複数のプロセッサを備え、複数のプロセッサにより通信装置１０１全体を制御するようにしてもよい。
【００２１】
また、制御部２０２は、機能部２０３を制御して、撮像や印刷、投影等の所定の処理を実行する。機能部２０３は、通信装置１０１が所定の処理を実行するためのハードウェアである。例えば、通信装置１０１がカメラである場合、機能部２０３は撮像部であり、撮像処理を行う。また、例えば、通信装置１０１がプリンタである場合、機能部２０３は印刷部であり、印刷処理を行う。また、例えば、通信装置１０１がプロジェクタである場合、機能部２０３は投影部であり、投影処理を行う。機能部２０３が処理するデータは、記憶部２０１に記憶されているデータであってもよいし、後述する通信部２０６を介して他の通信装置と通信したデータであってもよい。
【００２２】
入力部２０４は、ユーザからの各種操作の受付を行う。出力部２０５は、ユーザに対して各種出力を行う。ここで、出力部２０５による出力とは、画面上への表示や、スピーカーによる音声出力、振動出力等の少なくとも１つを含む。なお、タッチパネルのように入力部２０４と出力部２０５の両方を１つのモジュールで実現するようにしてもよい。
【００２３】
通信部２０６は、ＩＥＥＥ８０２．１１シリーズに準拠した無線通信の制御や、ＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｏｒｏｔｏｃｏｌ）通信の制御を行う。また、通信部２０６はアンテナ２０７を制御して、無線通信のための無線信号の送受信を行う。通信装置１０１は通信部２０６を介して、画像データや文書データ、映像データ等のコンテンツを通信装置１０２と通信する。
【００２４】
図３に、通信装置１０１の電源が投入された場合に、記憶部２０１に記憶されたプログラムを制御部２０２が読み出し、それを実行することで実現される処理の流れのフローチャートを示す。なお、通信装置１０１の電源が投入された場合に代えて、ユーザ操作等により通信装置１０１が通信設定モード等、所定の動作モードに入った場合や、通信設定アプリケーション等、所定のアプリケーションが起動した場合に、実現されるようにしてもよい。
【００２５】
また、図３に示すフローチャートの少なくとも一部をハードウェアにより実現してもよい。ハードウェアにより実現する場合、例えば、所定のコンパイラを用いることで、各ステップを実現するためのプログラムからＦＰＧＡ上に自動的に専用回路を生成すればよい。ＦＰＧＡとは、Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙの略である。また、ＦＰＧＡと同様にしてＧａｔｅ  Ａｒｒａｙ回路を形成し、ハードウェアとして実現するようにしてもよい。また、ＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）により実現するようにしてもよい。この場合、以下のフローチャートにおける各ブロックは、ハードウェアブロックとして見做すことができる。なお、複数のブロックをまとめて１つのハードウェアブロックとして構成してもよいし、１つのブロックを複数のハードウェアブロックとして構成してもよい。
【００２６】
通信装置１０１は、まず、ユーザからの通信パラメータ共有開始指示を待ち受ける（Ｓ３０１）。ここでは、通信装置１０１は、入力部２０４を介してユーザからの通信パラメータ共有開始指示を受け付ける。なお、入力部２０４として、ハードウェアとしてのボタンであってもよいし、出力部２０５に表示されたＵＩ（Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）上のボタンであってもよい。また、通信装置１０１は、不図示の外部装置（例えば赤外線通信を行うリモコンなど）から通信パラメータ共有開始指示を受け付けるようにしてもよい。通信パラメータ共有開始指示を受け付けると、通信装置１０１は、ＤＰＰ処理を開始する。具体的には、通信装置１０１は、ＤＰＰ規格及びＩＥＴＦドラフトに準拠したＰＫＥＸ処理に用いられる認証コードとして、予め定められた固定の文字列を設定する（Ｓ３０２）。なお、ＩＥＴＦはＩｎｔｅｒｎｅｔ  Ｅｎｇｉｎｅｅｒｉｎｇ  Ｔａｓｋ  Ｆｏｒｃｅの略であり、ＰＫＥＸはＰｕｂｌｉｃ  Ｋｅｙ  Ｅｘｃｈａｎｇｅの略である。ＩＥＴＦドラフトに準拠したＰＫＥＸ処理は、公開鍵交換プロトコルとも呼ばれる。
【００２７】
ここで、固定の文字列とは、例えば、“００００”のような固定の数字列や、“Ｐｕｓｈ−Ｂｕｔｔｏｎ−Ｃｏｎｆｉｇｕｒａｔｉｏｎ”などの固定の英字列（記号を含んでもよい）や、英数字を組み合わせた英数字列である。固定の文字列は、ＤＰＰ規格において共通の文字列として定めるようにしてもよいし、各サービスに対応する固定の文字列として定めるようにしてもよい。例えば、プリントサービスを実行するためにＤＰＰ規格を用いて通信パラメータの共有処理を行う場合には第１の固定の文字列“Ｐｒｉｎｔ”が認証コードとして用いられるようにする。そして、ディスプレイサービスを実行するためにＤＰＰ規格を用いて通信パラメータの共有処理を行う場合には第２の固定の文字列“Ｄｉｓｐｌａｙ”が認証コードとして用いられるようにする。
【００２８】
なお、プリントサービスとは、一方の装置が印刷データを送信し、他方の装置が印刷データを受信して印刷するサービスのことである。また、ディスプレイサービスとは、一方の装置が表示画像データを送信し、他方の装置が表示画像データを受信して表示するサービスのことである。
【００２９】
また、認証コードは、ユーザがボタンを押す回数に対応する固定の文字列（例えば、５回ボタンを押した場合は“０００５”など）であってもよい。この場合、ユーザは通信装置１０１と通信装置１０２とで同じ回数だけボタンを押す必要がある。
【００３０】
なお、認証コードとして、いずれの固定コードを用いるかは、規格や、システムにおいて、予め決められているものとする。
【００３１】
認証コードの設定がされると通信装置１０１は、通信装置１０２との間で、当該認証コードを用いたＰＫＥＸ処理を開始する（Ｓ３０３）。具体的には、通信装置１０１は、所定の固定チャネル（例えば、６ｃｈ）において、ＤＰＰ規格に準拠したコード交換要求の送信および受信の待ち受けを開始する。なお、通信装置１０１は、コード交換要求を送信することなく、受信の待ち受けのみを行うようにしてもよい。ＰＫＥＸ処理の詳細については後述する。
【００３２】
通信装置１０１は、更にＷＰＳ処理を開始する（Ｓ３０４）。なお、ここでは、ＷＰＳ規格に準拠したＰＢＣ（Ｐｕｓｈ  Ｂｕｔｔｏｎ  Ｃｏｎｆｉｇｕｒａｔｉｏｎ）方式に準拠した処理を開始するものとする。具体的には、まず、通信装置１０１は、無線ネットワーク１０３を構築していなければ、無線ネットワーク１０３を構築する。この際、通信装置１０１は、コード交換要求の送信および受信の待ち受けを行う固定チャネル（例えば、６ｃｈ）において、無線ネットワーク１０３を構築するものとする。そして、通信装置１０１は、エンローリ（例えば、通信装置１０２）からのＰｒｏｂｅ  Ｒｅｑｕｅｓｔフレームの待ち受けを開始する。なお、通信装置１０１は、無線ネットワーク１０３の動作チャネルにおいてＰｒｏｂｅ  Ｒｅｑｕｅｓｔフレームを待ち受ける。
【００３３】
なお、通信装置１０１は、Ｐｒｏｂｅ  Ｒｅｑｕｅｓｔフレームを受信すると、ＷＰＳが起動中であることを示すＩｎｆｏｒｍａｔｉｏｎ  Ｅｌｅｍｅｎｔを付与したＰｒｏｂｅ  Ｒｅｓｐｏｎｓｅフレームを送信する。
【００３４】
次に、通信装置１０１は、ＤＰＰ規格に準拠したエンローリ（例えば、通信装置１０２）から、コード交換要求、もしくは、自装置が送信したコード交換要求に対する応答を受信したかを判定する（Ｓ３０５）。なお、コード交換要求も、コード交換要求に対する応答も、ＩＥＥＥ８０２．１１シリーズ規格に準拠したアクションフレームであり、ＤＰＰ規格に準拠した信号である。受信したと判定された場合にはステップＳ３０６に進み、受信していないと判定された場合にはステップＳ３１５に進む。
【００３５】
ステップＳ３０５における動作について具体的に説明する。通信装置１０１は、ステップＳ３０３においてコード交換要求を送信していれば、コード交換要求に対する応答を受信したかを判定し、受信していればステップＳ３０６に進み、受信していなければステップＳ３１５に進む。この際、通信装置１０１は、更に、エンローリから送信されたコード交換要求を受信したかを判定してもよい。この場合、通信装置１０１は、コード交換要求と、コード交換要求に対する応答のいずれかの信号を受信していればステップＳ３０６に進み、いずれの信号も受信していなければステップＳ３１５に進む。
【００３６】
また、通信装置１０１は、ステップＳ３０３において、コード交換要求を送信していない場合には、コード交換要求を受信したかを判定し、受信していればステップＳ３０６に進み、受信していなければステップＳ３１５に進む。
【００３７】
ステップＳ３０６において、通信装置１０１はＷＰＳ処理を停止する。しかし、これに限らず、本ステップをスキップしてもよいし、ステップＳ３０１において通信パラメータ共有開始指示を受け付けてから所定時間が経過するまでＷＰＳ処理を継続してもよい。また、ユーザにより停止指示があるまでＷＰＳ処理を継続してもよい。ＷＰＳ処理を継続している間に、後述するＷＰＳ開始要求をエンローリから受信した場合、通信装置１０１は、ＤＰＰ処理と並行して、もしくは、ＤＰＳ処理が終了した後に、後述するステップＳ３１７〜３１９を実行する。
【００３８】
そして、通信装置１０１はＰＫＥＸ処理が成功したかを確認する（Ｓ３０７）。
【００３９】
なお、ＰＫＥＸ処理では、認証コードを用いて互いの認証が行われ、また、その後の処理に用いられる認証用公開鍵（例えばＤＰＰ規格で規定されたｂｏｏｔｓｔｒａｐｐｉｎｇ  ｋｅｙ）の授受が為される。即ち、認証コードを用いたＰＫＥＸ処理に成功すると、通信装置１０１と通信装置１０２とは、各々、互いの認証用公開鍵を共有できる。なお、ＰＫＥＸ処理の詳細は、図４を用いて後述する。
【００４０】
認証コードの不一致や、通信エラー等によりＰＫＥＸ処理に失敗した場合（Ｓ３０７のＮｏ）、通信装置１０１はエラーを通知する（Ｓ３０８）。具体的には、通信装置１０１は、出力部２０５に通信パラメータの共有処理に失敗した旨や、認証処理に失敗をした旨を示すエラーを示すメッセージを表示することで、ユーザにエラーを通知する。なお、通信装置１０１は、これに加えて、もしくは、代えて、通信装置１０２に対してエラーを通知するようにしてもよい。また、通知するエラーに、エラーの理由を示すエラーコード等を含めてもよい。
【００４１】
その後、通信装置１０１は、図３に示す処理を終了する。なお、図３に示す処理を終了することに代えて、ステップＳ３０１に戻り、新たな通信パラメータ共有開始指示を待ち受けるようにしてもよい。
【００４２】
一方、ＰＫＥＸ処理に成功した場合（Ｓ３０７のＹｅｓ）は、通信装置１０１は、ＰＫＥＸ処理で行われた認証処理とは異なる認証処理であって、ＤＰＰ規格に準拠した認証処理を開始するための認証要求を通信装置１０２に送信する（Ｓ３０９）。ここで、認証要求とは、ＤＰＰ規格に準拠したＤＰＰ  Ａｕｔｈｅｎｔｉｃａｔｉｏｎ  Ｒｅｑｕｅｓｔフレームである。また、認証要求には、認証処理に用いられる認証情報、通信装置１０１の識別情報、通信装置１０１が生成した乱数、および、共有鍵を生成するために用いられる共有鍵生成用の公開鍵（通信装置１０１の公開鍵）が含まれる。なお、当該共有鍵は、認証のために当該乱数を暗号化する際に用いられる。
【００４３】
ここで、認証情報とは、具体的にはＰＫＥＸ処理により取得した通信装置１０２の認証用公開鍵のハッシュ値である。また、通信装置１０１の識別情報とは、具体的には、ＰＫＥＸ処理により通信装置１０２に送信した通信装置１０１の認証用公開鍵のハッシュ値である。また、乱数は、述する認証応答の受信時に、認証のために使用される。
【００４４】
認証要求を送信した通信装置１０１は、その後、通信装置１０２からの認証応答を所定時間、待ち受ける（Ｓ３１０）。なお、認証応答を待ち受ける時間は、認証要求を送信してから所定時間であってもよいし、ステップＳ３０１において通信パラメータ共有開始指示を受け付けてから所定時間であってもよい。
【００４５】
認証要求を受信した通信装置１０２は、認証要求を送信した装置の検証処理を行う。この判定は、認証要求に含まれている認証情報を用いて行われる。即ち、通信装置１０２が、通信装置１０２の認証用公開鍵のハッシュ値を計算し、計算されたハッシュ値と認証要求に含まれるハッシュ値（認証情報）とを比較し、両者が一致した場合に検証が成功したと判定する。なお、このときのハッシュ値の計算に用いられるハッシュ関数は、ＤＰＰ規格において定められており、通信装置１０１がハッシュ値の計算に用いたハッシュ関数と同じある。
【００４６】
検証に成功した場合、通信装置１０２は、認証に成功した場合、更に、通信装置１０１の共有鍵生成用の公開鍵と、通信装置１０２の共有鍵生成用の秘密鍵の双方を用いて共有鍵を生成する。共有鍵は、例えば、ＥＣＤＨ（Ｅｌｌｉｐｔｉｃ  Ｃｕｒｖｅ  Ｄｉｆｆｉｅ−Ｈｅｌｌｍａｎ）方式に基づいて生成される。なお、共有鍵の生成方法は、ＥＣＤＨ方式に限定されるものではなく、その他の公開鍵暗号方式であってもよい。
【００４７】
そして、通信装置１０２は認証応答を送信する。なお、検証に失敗した場合には、通信装置１０２は、通信装置１０２は認証応答を送信しない。しかし、これに代えて、検証に失敗した場合に、通信装置１０２は、検証に失敗したことを示す認証応答を送信するようにしてもよい。
【００４８】
ここで、認証応答とは、ＤＰＰ規格に準拠したＤＰＰ  Ａｕｔｈｅｎｔｉｃａｔｉｏｎ  Ｒｅｓｐｏｎｓｅフレームである。認証応答には、通信装置１０２の共有鍵生成用の公開鍵、通信装置１０２が生成した乱数、および、タグ情報が含まれる。なお、タグ情報とは、通信装置１０１の送信した認証要求に含まれていた乱数を、上述した共有鍵により暗号化したものである。当該タグ情報は、通信装置１０１における認証処理に用いられる。
【００４９】
ステップＳ３１０の説明に戻る。通信装置１０１は、所定時間内に認証応答を受信しなかった場合（Ｓ３１０のＮｏ）、エラーを通知する（Ｓ３０８）。なお、検証に失敗したことを示す認証応答を受信した場合にも、ステップＳ３０８に進む。
【００５０】
エラーの通知方法についてはステップＳ３０７と同様であるため説明を省略する。なお、エラーコード等を含める場合には、ステップＳ３０７とは異なる理由によるエラーであることを通知してもよい。その後、通信装置１０１は、図３に示す処理を終了する。なお、図３に示す処理を終了することに代えて、ステップＳ３０１に戻り、新たな通信パラメータ共有開始指示を待ち受けるようにしてもよい。
【００５１】
一方、所定時間内に認証応答を受信した場合（Ｓ３１０のＹｅｓ）、通信装置１０１は、認証応答に含まれる情報に基づいて、通信装置１０２の認証を行う（Ｓ３１１）。より具体的に説明する。通信装置１０１は、まず、通信装置１０１の共有鍵生成用の秘密鍵と通信装置１０２の共有鍵生成用の公開鍵とを用いて、通信装置１０２が共有鍵を生成したのと同じ方法により共有鍵を生成する。
【００５２】
ここで、通信装置１０１の共有鍵生成用の秘密鍵は、通信装置１０２が共有鍵を生成した際に用いられた通信装置１０１の共有鍵生成用の公開鍵に対応する通信装置１０１の秘密鍵である。また、通信装置１０２の共有鍵生成用の公開鍵は、通信装置１０２が共有鍵を生成した際に用いられた通信装置１０２の共有鍵生成用の秘密鍵に対応する公開鍵である。このような組み合わせの鍵を用いることにより、通信装置１０１は、通信装置１０２が生成した共有鍵と同じ共有鍵を生成することができる。
【００５３】
なお、共有鍵生成用の互いの公開鍵が、上述した認証要求および認証応答の送受により、通信装置１０１と通信装置１０２との間で正しく授受されなかった場合には、同じ共有鍵を生成できないことになる。
【００５４】
次に、通信装置１０１は、認証応答に含まれるタグ情報を、生成した共有鍵で復号し、認証要求に含めた乱数を正しく復号できるかを確認する。正しく復号できた場合には、通信装置１０１は、通信装置１０２の認証に成功したと判定する。一方、正しく復号できなかった場合には認証に失敗したと判定する。なお、正しく復号できない場合とは、例えば、同じ共有鍵を生成できなかった場合である。
【００５５】
認証に失敗した場合（Ｓ３１１のＮｏ）、ステップＳ３０８に進み、通信装置１０１はエラーを通知する。一方、認証に成功した場合（Ｓ３１１のＹｅｓ）、通信装置１０１は、通信装置１０２へ認証確認を送信する（Ｓ３１２）。ここで、認証確認とは、ＤＰＰ規格に準拠したＤＰＰ  Ａｕｔｈｅｎｔｉｃａｔｉｏｎ  Ｃｏｎｆｉｒｍフレームであり、タグ情報を含む。タグ情報は、通信装置１０２が送信した認証応答に含まれていた乱数を通信装置１０１が共有鍵によって暗号化したものである。
【００５６】
認証確認を送信した通信装置１０１は、その後、通信装置１０２からの設定要求を所定時間、待ち受ける（Ｓ３１３）。なお、設定要求を待ち受ける時間は、認証要求を送信してから所定時間であってもよいし、ステップＳ３０１において通信パラメータ共有開始指示を受け付けてから所定時間であってもよい。また、本ステップにおける所定時間は、ステップＳ３１０における所定時間と同じ時間であってもよいし、異なる時間であってもよい。
【００５７】
認証確認を受信した通信装置１０２は、当該認証確認に含まれているタグ情報を自身が生成した共有鍵で正しく復号できた場合に、認証成功と判定する。認証成功と判定すると、通信装置１０２は、認証要求を送信した通信装置１０１をコンフィギュレータと認定し、通信装置１０１に対して設定要求を送信する。ここで、設定要求とは、ＤＰＰ規格に準拠したＤＰＰ  Ｃｏｎｆｉｇｕｒａｔｉｏｎ  Ｒｅｑｕｅｓｔフレームである。この設定要求には、通信装置１０２のデバイス情報および役割情報が含まれる。デバイス情報とは、通信装置１０２のデバイス名などである。また、役割情報とは、通信パラメータ受信後の役割を示す情報であり、「アクセスポイント」もしくは「ステーション」である。設定要求に含まれる情報は、通信装置１０２が認証応答の送信時においてタグ情報の暗号化に使用した共有鍵で暗号化される。一方、認証成功と判定されなかった場合、即ち、認証に失敗した場合は、通信装置１０２は、設定要求を送信しない。
【００５８】
ステップＳ３１３の説明に戻る。通信装置１０１は、所定時間内に、通信装置１０２からの設定要求が受信されなかった場合（Ｓ３１３のＮｏ）、ステップＳ３０８に進み、エラーを通知する。一方、所定時間内に、通信装置１０２からの設定要求が受信された場合（Ｓ３１３のＹｅｓ）、通信装置１０１は、設定応答として、無線ネットワーク１０３に接続するための通信パラメータの提供処理を行う（Ｓ３１４）。ここで、設定応答とは、ＤＰＰ規格に準拠したＤＰＰ  Ｃｏｎｆｉｇｕｒａｔｉｏｎ  Ｒｅｓｐｏｎｓｅフレームである。
【００５９】
通信装置１０１の通信パラメータ処理部２０８が送信する設定応答には、通信パラメータ、通信パラメータの有効期限、通信装置１０１のコンフィギュレータ専用の公開鍵、役割情報などが含まれる。なお、通信パラメータは、ＤＰＰ規格に準拠したクレデンシャルの他、通信装置１０２からの認証応答に含まれる公開鍵を含む。また、設定応答において、通信パラメータは、通信装置１０１のコンフィギュレータ専用の秘密鍵で暗号化されている。さらに、設定応答に含まれる情報は、通信装置１０１において生成された共有鍵で暗号化される。
【００６０】
エンローリである通信装置１０２は、設定要求を送信後、コンフィギュレータである通信装置１０１から設定応答が送信されるのを待ち受ける。設定応答を受信した通信装置１０２は、設定応答に含まれる情報共有鍵で復号する。さらに、通信装置１０２は、通信装置１０１のコンフィギュレータ専用の秘密鍵で暗号化された通信パラメータを、通信装置１０１のコンフィギュレータ専用の公開鍵で復号する。通信装置１０２は、復号して得られた通信パラメータで無線ネットワーク１０３に接続することができる。
【００６１】
ステップＳ３０５の説明に戻る。通信装置１０１は、ステップＳ３０５においてＤＰＰ規格に準拠した信号を受信していない場合、エンローリからＷＰＳ開始要求があったか否かを判定する（Ｓ３１５）。なお、ＷＰＳ開始要求とは、例えばＩＥＥＥ８０２．１１シリーズ規格に準拠したＥＡＰＯＬ−Ｓｔａｒｔ信号である。なお、これに代えて、ＷＰＳのＩｎｆｏｒｍａｔｉｏｎ  Ｅｌｅｍｅｎｔが付いたＡｓｓｏｃｉａｔｉｏｎ  Ｒｅｑｕｅｓｔ（接続要求信号）であってもよい。
【００６２】
一方、ＷＰＳ開始要求がなかった場合（Ｓ３１５のＮｏ）、ステップＳ３０５に進み、通信装置１０１は再度、ＤＰＰ規格に準拠した信号を受信したかを判定する。なお、ステップＳ３０１において通信パラメータ共有開始指示を受け付けてから所定時間が経過している場合には、ステップＳ３０５に進まず、図３に示す処理を終了してもよい。ここでの所定時間とは、ＷＰＳ規格において定められた２分間である。なお、図３に示す処理を終了する場合、通信装置１０１は、出力部２０５を介してユーザにエラーを通知してもよい。
【００６３】
通信装置１０１は、エンローリからＷＰＳ開始要求があった場合（Ｓ３１５のＹｅｓ）、ＤＰＰ処理を停止する（Ｓ３１６）。しかし、これに限らず、本ステップをスキップしてもよいし、ステップＳ３０１において通信パラメータ共有開始指示を受け付けてから所定時間が経過するまでＤＰＰ処理を継続してもよい。また、ユーザにより停止指示があるまでＤＰＰ処理を継続してもよい。ＤＰＰ処理を継続している間に、ＤＰＰ規格に準拠した信号をエンローリから受信した場合、通信装置１０１は、ＷＰＳ処理と並行して、もしくは、ＷＰＳ処理が終了した後に、ステップＳ３０７〜３１４を実行する。
【００６４】
続いて、通信装置１０１はＷＰＳ規格に準拠した通信パラメータ共有処理を実行し（Ｓ３１７）、当該通信パラメータ共有処理が成功したかを判定する（Ｓ３１８）。通信エラー等によりＷＰＳ処理に失敗した場合（Ｓ３１８のＮｏ）、通信装置１０１はエラーを通知する（Ｓ３１９）。具体的には、通信装置１０１は、出力部２０５に通信パラメータの共有処理に失敗した旨を示すエラーを示すメッセージを表示することで、ユーザにエラーを通知する。なお、通信装置１０１は、これに加えて、もしくは、代えて、通信装置１０２に対してエラーを通知するようにしてもよい。また、通知するエラーに、エラーの理由を示すエラーコード等を含めてもよい。その後、通信装置１０１は、図３に示す処理を終了する。なお、図３に示す処理を終了することに代えて、ステップＳ３０１に戻り、新たな通信パラメータ共有開始指示を待ち受けるようにしてもよい。
【００６５】
以上のような処理を行う通信装置１０１が通信装置１０２に通信パラメータを提供するまでの、通信装置１０１と通信装置１０２の動作についてさらに説明する。図４は、通信装置１０１がＤＰＰ規格に準拠した信号を受信し、ＤＰＰ規格に従って通信装置１０２に通信パラメータを提供する際のシーケンス図である。
【００６６】
まず、通信装置１０２は、押しボタンによるＤＰＰ開始指示をユーザから受け付けると（Ｓ４０１）、固定の認証コードを設定する（Ｓ４０２）。この認証コードとは、ＩＥＴＦドラフトにおける公開鍵交換プロトコルのｐａｓｓｗｏｒｄに相当する。
【００６７】
一方、通信装置１０１は、押しボタンによる通信パラメータ共有開始指示をユーザから受け付けると（Ｓ４０３）、固定の認証コードを設定する（Ｓ４０４）。具体的には、通信装置１０１は、設定した認証コードのハッシュ（Ｈａｓｈ）と、ＤＰＰ規格において定められた要素（Ｐｉ）とを組み合わせて暗号要素Ｑａを生成する。また、通信装置１０１は、一時的な鍵ペア（秘密鍵ｘおよび公開鍵Ｘ）を生成し、暗号要素Ｑａに、生成された一時的な鍵ペアの公開鍵Ｘを付与して、情報要素Ｍを生成する。なお、公開鍵Ｘおよび情報要素Ｍは、ｘ成分およびｙ成分を含むベクトルである。
【００６８】
Ｑａ＝Ｈａｓｈ（認証コード）＊Ｐｉ
Ｍ＝Ｘ＋Ｑａ
【００６９】
そして、通信装置１０１は、生成した暗号要素Ｑａ、情報要素Ｍ、および、通信装置１０１の識別子（例えばＭＡＣアドレス）を含むコード交換要求を、通信装置１０２に送信する（Ｓ４０５）。ここでは、ＩＥＥＥ８０２．１１シリーズに準拠したアクションフレームを用いて、コード交換要求を送信するものとする。しかしこれに限らず、ＮＦＣやＢｌｕｅｔｏｏｔｈ、トランスファージェット（ＴｒａｎｓｆｅｒＪｅｔ）、Ｅｔｈｅｒｎｅｔ、ＵＳＢ等に準拠した信号を用いるようにしてもよい。なお、ＮＦＣとは、Ｎｅａｒ  Ｆｉｅｌｄ  Ｃｏｍｍｕｎｉｃａｔｉｏｎの、ＵＳＢとはＵｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓの各々、略である。
【００７０】
これにより、ＩＥＴＦドラフトにおける公開鍵交換プロトコルの認証フェーズ（Ａｕｔｈｅｎｔｉｃａｔｉｏｎ  Ｐｈａｓｅ）が開始される。通信装置１０１は、ＤＰＰ規格であるコード交換要求を送信後、並行して、ＷＰＳ処理を開始する（Ｓ４０６）。
【００７１】
通信装置１０２は、通信装置１０１からのコード交換要求を受信すると、コード交換要求に含まれる情報要素Ｍと、自装置で計算した暗号要素Ｑａ’とから、一時鍵Ｘ’の算出を行う。なお、通信装置１０２は、自装置が設定した認証コードのハッシュと、ＤＰＰ規格において定められた要素（Ｐｉ）とを組み合わせて暗号要素Ｑａ’を生成する。
【００７２】
Ｑａ’＝Ｈａｓｈ（認証コード）＊Ｐｉ
Ｘ’＝Ｍ-Ｑａ’
【００７３】
ここで、通信装置１０１が設定した固定の認証コードと、通信装置１０２が設定した固定の認証コードとが同じである場合には、ＱａとＱａ’とは同じ値になる。その結果、ＸとＸ’も同じ値となる。これにより、通信装置１０２は、通信装置１０１の一時的な鍵ペアの公開鍵Ｘを取得できることになる。
【００７４】
また、通信装置１０２は、更に、設定した認証コードのハッシュと、ＤＰＰ規格において定められた要素（Ｐｒ）とを組み合わせて暗号要素Ｑｂを生成する。また、通信装置１０１は、一時的な鍵ペア（秘密鍵ｙおよび公開鍵Ｙ）を生成し、暗号要素Ｑｂに、生成された一時的な鍵ペアの公開鍵Ｙを付与して、情報要素Ｎを生成する。なお、公開鍵Ｙ、および、情報要素Ｎは、ｘ成分およびｙ成分を含むベクトルである。
【００７５】
Ｑｂ＝Ｈａｓｈ（認証コード）＊Ｐｒ
Ｎ＝Ｙ＋Ｑｂ
【００７６】
そして、通信装置１０２は、生成した暗号要素Ｑｂ、情報要素Ｎ、および、通信装置１０２の識別子（例えばＭＡＣアドレス）を含むコード交換応答を、通信装置１０１に送信する（Ｓ４０７）。通信装置１０１は通信装置１０２コード交換応答を受信した場合、ＷＰＳ処理を停止する（Ｓ４０８）。通信装置１０１は、通信装置１０２からのコード交換応答を受信すると、コード交換応答に含まれる情報要素Ｎと、自装置で計算した暗号要素Ｑｂ’とから、一時鍵Ｙ’の算出を行う。なお、通信装置１０１は、自装置が設定した認証コードのハッシュと、ＤＰＰ規格において定められた要素（Ｐｒ）とを組み合わせて暗号要素Ｑｂ’を生成する。
【００７７】
Ｑｂ’＝Ｈａｓｈ（認証コード）＊Ｐｒ
Ｙ’＝Ｎ-Ｑｂ’
【００７８】
ここで、通信装置１０１が設定した固定の認証コードと、通信装置１０２が設定した固定の認証コードとが同じである場合には、ＱｂとＱｂ’とは同じ値になる。その結果、ＸとＸ’も同じ値となる。これにより、通信装置１０１は、通信装置１０２の一時的な鍵ペアの公開鍵Ｙを取得できることになる。
【００７９】
なお、通信装置１０１は、ＤＰＰ開始指示を受け付けてから所定時間内に通信装置１０２からコード交換応答を受信しなかった場合には、ＰＫＥＸ処理に失敗したものとして処理を進めるようにしてもよい。即ち、通信装置１０１は、図３におけるステップＳ３０５のエラー処理を実行して、通信パラメータを共有することなく、共有処理を終了してもよい。これにより、通信装置１０１と通信装置１０２との間で所定時間内にＤＰＰ開始指示が為されなければ共有処理が終了されるため、セキュリティが向上する。
【００８０】
次に、通信装置１０１は、通信装置１０１の秘密鍵ｘと通信装置１０２の公開鍵Ｙ’から一時的な暗号情報Ｋを算出する。ここで、暗号情報Ｋは、ｘ成分およびｙ成分を含むベクトル値である。通信装置１０１は、更に、ＩＥＴＦドラフトに定められた関数ＫＤＦ−ｎ（Ｋｅｙ  Ｄｅｌｉｖｅｒｙ  Ｆｕｎｃｔｉｏｎ）を用いて、共通鍵Ｚを算出する。
【００８１】
Ｋ＝ｘ＊Ｙ’
Ｚ＝ＫＤＦ−ｎ（＜＞，通信装置１０１の識別子｜通信装置１０２識別子｜Ｍ．ｘ｜Ｎ．ｘ｜認証コード，Ｋ．ｘ）
【００８２】
ここで、＜＞は関数に引き渡される第１の引数がブランクであることを示す。また、｜は、各要素を結合させることを示す。また、Ｍ．ｘ、Ｎ．ｘ、および、Ｋ．ｘは、各々、Ｍ、Ｎ、Ｋのｘ成分の値を示す。
【００８３】
一方、通信装置１０２は、通信装置１０２の秘密鍵ｙと通信装置１０１の公開鍵Ｘ’から一時的な暗号情報Ｋ’を算出する。そして、同じ関数ＫＤＦ−ｎを用いて、共通鍵Ｚ’を算出する。
【００８４】
Ｋ’＝ｙ＊Ｘ’
Ｚ＝ＫＤＦ−ｎ（＜＞，通信装置１０１の識別子｜通信装置１０２識別子｜Ｍ．ｘ｜Ｎ．ｘ｜認証コード，Ｋ’．ｘ）
【００８５】
ここで、ＸとＸ’とが同じ値であり、かつ、ＹとＹ’とが同じ値である場合には、ＫとＫ’とは同じ値になる。その結果、Ｚ’とＺも同じ値となる。これにより、通信装置１０１と通信装置１０２は、同じ共通鍵Ｚを共有することができ、公開鍵交換プロトコルの認証フェーズ（Ａｕｔｈｅｎｔｉｃａｔｉｏｎ  Ｐｈａｓｅ）が完了する。
【００８６】
公開鍵交換プロトコルの認証フェーズ（Ａｕｔｈｅｎｔｉｃａｔｉｏｎ  Ｐｈａｓｅ）が完了すると、ＩＥＴＦドラフトにおける公開鍵交換プロトコルの公開鍵共有フェーズ（Ｒｅｖｅａｌ  Ｐｈａｓｅ）が開始される。
【００８７】
具体的には、通信装置１０１は、通信装置１０１の識別子、通信装置１０１の認証用公開鍵（例えばＤＰＰ規格で規定されたｂｏｏｔｓｔｒａｐｐｉｎｇ  ｋｅｙ）、Ｘ．ｘ、および、Ｙ’．ｘを用いて情報要素ｕを算出する。ここで、Ｘ．ｘ、および、Ｙ’．ｘは、各々、ＸおよびＹ’のｘ成分の値を示す。そして、通信装置１０１は、情報要素ｕおよび通信装置１０１の認証用公開鍵を、共通鍵Ｚで暗号化して送信する（Ｓ４０９）。
【００８８】
また、通信装置１０２は、通信装置１０１の識別子、通信装置１０１の認証用公開鍵、Ｘ’．ｘ、および、Ｙ．ｘを用いて情報要素ｕ’を算出する。そして、通信装置１０２は、情報要素ｕ’および通信装置１０２の認証用公開鍵を、共通鍵Ｚで暗号化して送信する（Ｓ４１０）。
【００８９】
通信装置１０１は、共通鍵Ｚを用いて、通信装置１０２から受信した情報要素ｕ’および通信装置１０２の認証用公開鍵を復号する。その結果、取得した情報要素ｕ’が、自装置が算出した情報要素ｕと一致していた場合には、ＰＫＥＸ処理に成功したものと判定する。なお、上述したように、互いに設定された認証コードが一致していた場合には、情報要素ｕと情報要素ｕ’とが一致することになる。このようにして、ＰＫＥＸ処理における認証コードを用いた認証処理が行われ、互いの認証用公開鍵が共有される。互いの認証用公開鍵が共有されると、公開鍵交換プロトコルの公開鍵共有フェーズ（Ｒｅｖｅａｌ  Ｐｈａｓｅ）が完了する。
【００９０】
次に、通信装置１０１は認証要求を生成し、送信する（Ｓ４１１）。通信装置１０２はこの認証要求を受信し、受信した認証要求の内容を検証する（Ｓ４１２）。そして、通信装置１０２は、認証応答を生成、送信する（Ｓ４１３）。通信装置１０１へ認証応答を送信した通信装置１０２は、通信装置１０１から認証確認が送信されるのを待ち受ける。
【００９１】
認証応答を受信した通信装置１０１は、認証応答に基づく認証を行う（Ｓ４１４）。通信装置１０１は、認証成功と判定すると、通信装置１０２へ認証確認を送信する（Ｓ４１５）。通信装置１０１から認証確認を受信した通信装置１０２は、認証確認の内容を検証する（Ｓ４１６）。そして、認証に成功したと判定されると、通信装置１０２は、通信パラメータの設定処理を行うために設定要求を送信し（Ｓ４１７）、通信装置１０１から設定応答が送信されるのを待ち受ける。設定要求を受信した通信装置１０１は、通信装置１０１のコンフィギュレータ専用の秘密鍵で暗号化した通信パラメータと、コンフィギュレータ専用の公開鍵を設定応答に含めて送信する（Ｓ４１８）。設定応答を受信した通信装置１０２は、通信装置１０１のコンフィギュレータ専用の公開鍵で通信パラメータを復号する。その後、通信装置１０２は、この復号された通信パラメータを用いて無線ネットワーク１０３に接続する（Ｓ４１９）。
【００９２】
以上、図３、図４を用いて説明した処理によって、通信装置１０１が、通信装置１０２に通信パラメータを提供することができる。なお、上述の実施形態では、コンフィギュレータである通信装置１０１がコード交換要求を送信したが、エンローリである通信装置１０２が送信してもよい。その場合、コンフィギュレータである通信装置１０１がコード交換要求を待ち受け、コード交換応答を送信する。また、通信装置１０１と通信装置１０２がコード交換要求の送信処理と待ち受け処理を適当な時間間隔で交互に繰り返すことで、送受信できるようにしてもよい。
【００９３】
次に、通信装置１０１が、Ｐｒｏｂｅ  Ｒｅｓｐｏｎｓｅフレームを受信し、ＷＰＳ規格に従って通信装置１０２に通信パラメータを提供する場合のシーケンスについて、図６を用いて説明する。
【００９４】
まず、通信装置１０２は、ＷＰＳ開始指示（例えば、ボタンの押下）をユーザから受け付けると、ＷＰＳ規格のエンローリ処理を開始する（Ｓ６０１）。一方、通信装置１０１は、通信パラメータ共有開始指示（例えば、ボタンの押下）をユーザから受け付けると（Ｓ６０２）、固定の認証コードを設定する（Ｓ６０３）。そして、通信装置１０１は、コード交換要求を、通信装置１０２に送信する（Ｓ６０４）。
【００９５】
通信装置１０１は、ＤＰＰ規格であるコード交換要求を送信後、並行して、ＷＰＳ処理を開始する。具体的には通信装置１０１は、エンローリのＰｒｏｂｅ  Ｒｅｑｕｅｓｔフレームの待ち受けを開始する（Ｓ６０５）。通信装置１０２は、ＷＰＳを起動しているため、通信装置１０１からのコード交換要求を受信してもＤＰＰは実施せず、周辺にＷＰＳを起動している装置があるかを確認するため、Ｐｒｏｂｅ  Ｒｅｑｕｅｓｔフレームを送信する。（Ｓ６０６）。
【００９６】
通信装置１０１は、通信装置１０２からＰｒｏｂｅ  Ｒｅｑｕｅｓｔフレームを受信すると、通信装置１０２に対してＷＰＳの起動中を示すＩｎｆｏｒｍａｔｉｏｎ  Ｅｌｅｍｅｎｔを付与したＰｒｏｂｅ  Ｒｅｓｐｏｎｓｅフレームを送信する（Ｓ６０７）。通信装置１０２は、通信装置１０１からＰｒｏｂｅ  Ｒｅｓｐｏｎｓｅフレームを受信すると、通信装置１０１が構築する無線ネットワーク１０３に対して接続を行う。具体的には、通信装置１０２は、ＷＰＳのＩｎｆｏｒｍａｔｉｏｎ  Ｅｌｅｍｅｎｔを付与したＡｓｓｏｃｉａｔｉｏｎ  Ｒｅｑｕｅｓｔを通信装置１０１に送信する。
【００９７】
通信装置１０１は、通信装置１０２のＡｓｓｏｃｉａｔｉｏｎ  Ｒｅｑｕｅｓｔを受信すると、通信装置１０２に対して、ＷＰＳのＩｎｆｏｒｍａｔｉｏｎ  Ｅｌｅｍｅｎｔを付与したＡｓｓｏｃｉａｔｉｏｎ  Ｒｅｓｐｏｎｓｅを送信する（Ｓ６０８）。こうして、通信装置１０２による無線ネットワーク１０３への接続が完了する（Ｓ６０９）。なお、ＷＰＳのＩｎｆｏｒｍａｔｉｏｎ  Ｅｌｅｍｅｎｔを付与した信号を用いた接続を行った場合には、通信装置１０１と通信装置１０２とは、通信パラメータの共有に必要な信号のみを通信することができる。即ち、通信装置１０１と通信装置１０２とは、ユーザデータ等の通信を行うことはできない。
【００９８】
通信装置１０１は、通信装置１０２の無線ネットワーク１０３への接続が完了すると、ＤＰＰ処理を停止する（Ｓ６１０）。そして、通信装置１０２は、ＷＰＳ規格に準拠したパラメータ共有処理を開始する（Ｓ６１１）。具体的にはＥＡＰＯＬ−Ｓｔａｒｔフレームを送信してＷＰＳのパラメータ共有セッションを開始する。
【００９９】
通信装置１０１は通信装置１０２との間で、ＥＡＰフレームを用いて、ＷＰＳのパラメータ共有処理を行う。具体的にはＥＡＰフレームを用いて、ＤＨ（Ｄｉｆｆｉｅ−Ｈｅｌｌｍａｎ  ｋｅｙ  ｅｘｃｈａｎｇｅ）を利用して暗号鍵の共有を行う（Ｓ６１２）。通信装置１０１は、通信装置１０２と共有した暗号鍵で暗号化した通信パラメータを送信する。通信装置１０２は、通信装置１０１と共有した暗号鍵で通信パラメータを復号する（Ｓ６１３）。その後、通信装置１０２は、この復号された通信パラメータを用いて無線ネットワーク１０３に接続する（Ｓ６１４）。この場合、通信装置１０１と通信装置１０２とはユーザデータ等を通信することができる。このような処理によって、通信装置１０１は、通信装置１０２にＷＰＳ規格に準拠した方法により通信パラメータを提供することができる。
【０１００】
以上のようにして、ＤＰＰ規格を含む複数の通信パラメータの共有規格に準拠した装置が通信パラメータの共有処理を行う場合に、簡易なユーザインタフェースを利用することが可能となり、ユーザの利便性が向上する。より具体的には、例えば、ユーザは装置のボタンを押すだけで、複数ある通信パラメータ共有規格の中から実行する通信パラメータ共有規格が自動的に選択されることにより利便性を高めることができる。
【０１０１】
また、上述の実施形態では、通信装置１０１がコンフィギュレータとして動作して通信パラメータを提供した。これに限らず、通信装置１０１がエンローリとして動作し、通信装置１０２がコンフィギュレータとして動作することによって、通信装置１０１が通信装置１０２から通信パラメータを受信する構成であってもよい。
【０１０２】
また、通信装置１０１は、図３に代えて図５のように動作してもよい。即ち、通信装置１０１は、ユーザからの通信パラメータ共有開始指示を待ち受ける（Ｓ５０１）。ここでは、ユーザは複数の方法で、通信パラメータ共有の開始を指示できるものとする。例えば、通信装置１０１が、各々が異なる指示に対応する複数のボタンを有する構成であってもよいし、切り替えスイッチを有する構成であってもよい。また、これらのボタンやスイッチは、ハードウェアによって実現されてもよいし、ソフトウェアによって実現されてもよい。
【０１０３】
そして、通信装置１０１は、ユーザからの通信パラメータ共有開始指示を受け付けると、当該ＤＰＰ開始指示が所定のＤＰＰ開始指示であるかを判定する（Ｓ５０２）。所定のＤＰＰ開始指示である場合には（Ｓ５０２のＹｅｓ）、通信装置１０１は、上述したステップＳ３０２以降の処理を実行する。一方、所定のＤＰＰ開始指示でない場合には（Ｓ５０２のＮｏ）、ユーザに認証コードを入力させる（Ｓ５０３）。そして、通信装置１０１は、固定の認証コードではなく、ユーザに入力された認証コードを用いてＰＫＥＸ処理を開始する（Ｓ５０４）。その後、通信装置１０１は、上述したステップＳ３０４に進み、以降の処理を行う。
【０１０４】
このような構成によれば、固定の認証コードを用いたＤＰＰの通信パラメータ共有処理を行うか、ユーザに入力された認証コードを用いたＤＰＰの通信パラメータ共有処理を行うかを切り替えることができる。
【０１０５】
なお、ステップＳ５０３で入力された認証コードをＷＰＳ規格に準拠したＰＩＮモードにおけるＰＩＮとして用いて、ＷＰＳ処理を行うようにしてもよい。ここで、ＰＩＮとはＰｅｒｓｏｎａｌ  Ｉｄｅｎｔｉｆｉｃａｔｉｏｎ  Ｎｕｍｂｅｒの略である。このような構成によれば、ＤＰＰ処理と、ＷＰＳ規格に準拠したＰＩＮ方式による通信パラメータの共有処理とのいずれかを通信装置１０１は適切に選択することができる。また、ＰＫＥＸ処理において用いられる認証コードと、ＰＩＮ方式において用いられるＰＩＮの入力を共用できるため、ユーザの利便性が向上する。なお、入力された認証コードがＷＰＳ規格に準拠したＰＩＮの方式、即ち、４桁もしくは８桁の数字でない場合には、通信装置１０１は、ＰＩＮ方式を実行しないようにしてもよい。この場合、通信装置１０１は、ＤＰＰ処理のみを実行するようにしてもよいし、ＤＰＰ処理とＷＰＳ規格に準拠したＰＢＣモードとを実行するようにしてもよい。その際には、ＰＩＮ方式において用いることのできない認証コードが入力されたことを通信装置１０１は、ユーザに通知する。
【０１０６】
また、ステップＳ５０３において、認証コードの入力に代えて、ランダムな認証コードを通信装置１０１が生成して表示するようにしてもよい。この場合、通信装置１０１は、ＷＰＳ規格に準拠したＰＩＮの方式にも利用可能な認証コードを生成してもよい。そして、通信装置１０１は、当該認証コードを用いて、その後の処理を行う。なお、ユーザは、通信パラメータの共有相手となる通信装置１０２に、当該認証コードを入力することになる。
【０１０７】
また、ステップＳ５０２において、ＤＰＰ処理のみを実行する指示を受け付けるようにしてもよい。このような指示を受け付けた場合には、通信装置１０１は、ステップＳ３０２、Ｓ３０３、およびＳ３０５を実行する。そして、ステップＳ３０５でＮｏである場合には、ステップＳ３０５の処理を繰り返す。なお、この場合、ステップＳ５０１において通信パラメータ共有開始指示を受け付けてから所定時間が経過した場合には、図３に示す処理を終了してもよい。この場合、通信装置１０１は、出力部２０５を介してユーザにエラーを通知してもよい。一方、ステップＳ３０５でＹｅｓである場合には、ステップＳ３０７に進み、以降の処理を行う。
【０１０８】
上述の実施形態では、通信装置１０１がレジストラとして動作して通信パラメータを提供した。これに限らず、通信装置１０１がエンローリとして動作し、通信装置１０２がコンフィギュレータ、もしくはレジストラとして動作することによって、通信装置１０１が通信装置１０２から通信パラメータを受信する構成であってもよい。
【０１０９】
通信装置１０１がエンローリとして動作する場合には、ステップＳ３０４において、通信装置１０１は、Ｐｒｏｂｅ  Ｒｅｑｕｅｓｔフレームの送信を開始する。このとき、通信装置１０１は、複数のチャネルにわたって、Ｐｒｏｂｅ  Ｒｅｑｕｅｓｔフレームを送信し、Ｐｒｏｂｅ  Ｒｅｓｐｏｎｓｅフレームの受信を待ち受ける。なお、ＤＰＰ規格に準拠した固定チャネル（例えば、６ｃｈ）のみ、信号の受信待ち受け時間を長くするようにしてもよい。これにより、通信装置１０１がＰｒｏｂｅ  Ｒｅｓｐｏｎｓｅフレームの他、ＤＰＰ規格に準拠した信号を早期に受信できる可能性を高めることができる。ここで、ステップＳ３０５の判定で肯定的（Ｙｅｓ）となるＤＰＰ規格に準拠した信号をした場合には、ステップＳ３０６に進めばよい。
【０１１０】
通信装置１０２からＰｒｏｂｅ  Ｒｅｓｐｏｎｓｅフレームを受信した場合には、通信装置１０１は、通信装置１０２に対して、ＷＰＳのＩｎｆｏｒｍａｔｉｏｎ  Ｅｌｅｍｅｎｔを付与したＡｓｓｏｃｉａｔｉｏｎ  Ｒｅｑｕｅｓｔを送信する。その上で、ステップＳ３１５において、通信装置１０１はＷＰＳのＩｎｆｏｒｍａｔｉｏｎ  Ｅｌｅｍｅｎｔを付与したＡｓｓｏｃｉａｔｉｏｎ  Ｒｅｓｐｏｎｓｅを通信装置１０２から受信したかを判定する。Ａｓｓｏｃｉａｔｉｏｎ  Ｒｅｓｐｏｎｓｅを受信していない場合にはステップＳ３０５に戻る。一方、Ａｓｓｏｃｉａｔｉｏｎ  Ｒｅｓｐｏｎｓｅを受信した場合にはステップＳ３１６に進み、通信装置１０１は、ＥＡＰＯＬ−Ｓｔａｒｔフレームを送信して、通信装置１０２とＷＰＳのパラメータ共有セッションを開始する。そして、通信装置１０１が、通信装置１０２から通信パラメータを受信すると（Ｓ３１８のＹｅｓ）、図３に示す処理を終了する。一方、通信装置１０２から通信パラメータを受信しなければ（Ｓ３１８のＮｏ）、通信装置１０１は、ユーザや通信装置１０２にエラーを通知する（Ｓ３１９）。
【０１１１】
このようにすることで、通信装置１０１がエンローリとして動作する場合であっても、本実施形態を適用することができる。
【０１１２】
また、上述の実施形態では、通信装置１０１は、ＤＰＰ処理と共に、ＷＰＳ処理を開始した。しかし、これに代えて、もしくは、加えて、通信装置１０１は、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔや、ＡＯＳＳ（ＡｉｒＳｔａｔｉｏｎ  Ｏｎｅ−Ｔｏｕｃｈ  Ｓｅｃｕｒｅ  Ｓｙｓｔｅｍ）等、他の通信パラメータ共有規格を開始するようにしてもよい。このとき、通信パラメータ共有開始指示を通信装置１０１が受け付けた場合に、何れの通信パラメータ共有規格を開始するかを予めユーザが設定できるようにしてもよい。
【０１１３】
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【０１１４】
１０１  通信装置
１０２  通信装置
１０３  無線ネットワーク
【図１】
2020088620.tif 000003
【図２】
2020088620.tif 000004
【図３】
2020088620.tif 000005
【図４】
2020088620.tif 000006
【図５】
2020088620.tif 000007
【図６】
2020088620.tif 000008