(57)【要約】【課題】通信パラメータの自動設定を行った際に、ユーザの操作性を損なうことなくセキュリティレベルを向上する。【解決手段】  ネットワークを構成する通信装置は、通信パラメータの提供を受ける受信装置に、通信パラメータを提供する提供装置として動作する。このとき、通信パラメータに含まれる暗号鍵をランダムに生成するか否かを、当該通信装置のネットワークへの参加状態に基づいて決定する。【選択図】  図５
2010081117.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを構成する通信装置であって、
通信パラメータの提供を受ける受信装置に、通信パラメータを提供する提供手段と、
前記通信パラメータに含まれる暗号鍵をランダムに生成する生成手段と、
前記生成手段によって暗号鍵の生成をするか否かを、当該通信装置のネットワークへの参加状態に基づいて決定する決定手段とを有することを特徴とする通信装置。
【請求項２】
前記決定手段は、自身がネットワークに参加中の場合には前記生成手段に暗号鍵の生成を実行させず、自身がネットワークに参加していない場合には前記生成手段に暗号鍵の生成を実行させることを特徴とする請求項１に記載の通信装置。
【請求項３】
ユーザ操作により、新規にアドホックネットワークを構成して通信パラメータを設定する初期設定情報モード、あるいは、確立済みのアドホックネットワークへ通信パラメータの自動設定を用いて装置を追加する追加設定情報モードのいずれかを設定する設定手段を更に備え、
前記決定手段は、前記初期設定情報モードが設定されている場合に前記生成手段に暗号鍵の生成を実行させることを特徴とする請求項１に記載の通信装置。
【請求項４】
前記決定手段は、自身が電源が投入されてから初めて前記提供手段が通信パラメータを提供する処理を実施した場合に、前記生成手段に暗号鍵の生成を実行させることを特徴とする請求項１に記載の通信装置。
【請求項５】
前記提供手段は、前記生成手段で生成した暗号鍵を含む通信パラメータを提供する場合には、前記受信装置に対して、前記通信パラメータの有効期間、または、保持を制限する情報を通知する手段を更に有することを特徴とする請求項１乃至４のいずれか１項に記載の通信装置。
【請求項６】
ネットワークを構成する通信装置の制御方法であって、
通信パラメータの提供を受ける受信装置に、通信パラメータを提供する提供工程と、
前記通信パラメータに含まれる暗号鍵をランダムに生成する生成工程と、
前記生成工程で暗号鍵の生成をするか否かを、当該通信装置のネットワークへの参加状態に基づいて決定する決定工程とを有することを特徴とする通信装置の制御方法。
【請求項７】
前記決定工程では、自身がネットワークに参加中の場合には前記生成工程における暗号鍵の生成を実行させず、自身がネットワークに参加していない場合には前記生成工程における暗号鍵の生成を実行させることを特徴とする請求項６に記載の通信装置の制御方法。
【請求項８】
ユーザ操作により、新規にアドホックネットワークを構成して通信パラメータを設定する初期設定情報モード、あるいは、確立済みのアドホックネットワークへ通信パラメータの自動設定を用いて装置を追加する追加設定情報モードのいずれかを設定する設定工程を更に備え、
前記決定工程では、前記初期設定情報モードが設定されている場合に前記生成工程における暗号鍵の生成を実行させることを特徴とする請求項６に記載の通信装置の制御方法。
【請求項９】
前記決定工程では、自身の電源が投入されてから初めて前記提供工程における通信パラメータを提供する処理が実施された場合に、前記生成工程における暗号鍵の生成を実行させることを特徴とする請求項６に記載の通信装置の制御方法。
【請求項１０】
前記提供工程では、前記生成工程で生成した暗号鍵を含む通信パラメータを提供する場合には、前記受信装置に対して、前記通信パラメータの有効期間、または、保持を制限する情報を通知する工程を更に有することを特徴とする請求項６乃至９のいずれか１項に記載の通信装置の制御方法。
【請求項１１】
請求項６乃至１０のいずれか１項に記載の制御方法を、コンピュータに実行させるためのコンピュータプログラム。
【請求項１２】
請求項１１に記載のコンピュータプログラムを記憶したコンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信装置、通信装置の制御方法およびコンピュータプログラム、記憶媒体に関する。
【背景技術】
【０００２】
ＩＥＥＥ８０２．１１規格シリーズに準拠した無線ＬＡＮに代表される無線通信では、使用前に設定しなければならない設定項目が数多く存在する。例えば、設定項目として、ネットワーク識別子としてのＳＳＩＤ、暗号方式、暗号鍵、認証方式、認証鍵等の無線通信を行うために必要な通信パラメータがあり、ユーザが手入力により設定するには非常に煩雑である。
【０００３】
そこで、様々なメーカから、通信パラメータを簡単に無線機器に設定するための自動設定方法が考案されている。これら自動設定方法では、接続する機器間で予め定められた手順、及びメッセージにより、一方の機器から他方の機器に通信パラメータを提供し、通信パラメータの設定を自動的に行っている。
【０００４】
特許文献１には、無線ＬＡＮアドホックモードの通信（以下、アドホック通信）における通信パラメータの自動設定の一例が開示されている。また、非特許文献１には、アクセスポイント（基地局）とステーション（端末局）間における通信パラメータの自動設定の業界標準規格であるＷｉ−Ｆｉ  Ｐｒｏｔｅｃｔｅｄ  Ｓｅｔｕｐ（以下、ＷＰＳ）が開示されている。また、非特許文献２には、無線通信接続における暗号方式、暗号鍵、認証方式、認証鍵等の業界標準規格であるＷｉ−Ｆｉ  Ｐｒｏｔｅｃｔｅｄ  Ａｃｃｅｓｓ（以下、ＷＰＡ）が開示されている。
【特許文献１】特開２００６−３１１１３９号公報
【非特許文献１】Wi-Fi CERTIFIED for Wi-Fi Protected Setup: Easing the User Experience for Home and Small Office Wi-Fi Networks, http://www.wi-fi.org/wp/wifi-protected-setup
【非特許文献２】Wi-Fi Protected Access Enhanced Security Implementation Based on IEEE P802.11i standard
【発明の開示】
【発明が解決しようとする課題】
【０００５】
通信パラメータの自動設定技術を用いることで、ユーザの利便性は向上する。しかしながら、一方の機器から提供する通信パラメータが常に同一であると、それが特に暗号鍵の場合は、セキュリティ上の脆弱性となりえるという課題がある。
【０００６】
そこで、セキュリティを向上させるために例えば通信パラメータ自動設定処理を実施するたびに暗号鍵を新規に生成することが考えられる。この場合は、通信パラメータ提供装置と通信パラメータ受信装置との間の通信経路のセキュリティレベルは向上する。
【０００７】
しかしながら、複数の通信装置との間で通信パラメータ自動設定処理を実施した場合には、それぞれの通信パラメータ自動設定処理において、共有される暗号鍵が異なってしまう。よって通信パラメータ受信装置同士では、通信ができないという課題が存在する。
【０００８】
本発明は、かかる課題に鑑みてなされたものであり、通信パラメータの自動設定を行った際に、ユーザの操作性を損なうことなくセキュリティレベルを向上することを目的とする。
【課題を解決するための手段】
【０００９】
上記の目的を達成するための本発明の一態様による通信装置は以下の構成を備える。すなわち、
ネットワークを構成する通信装置であって、
通信パラメータの提供を受ける受信装置に、通信パラメータを提供する提供手段と、
前記通信パラメータに含まれる暗号鍵をランダムに生成する生成手段と、
前記生成手段によって暗号鍵の生成をするか否かを、当該通信装置のネットワークへの参加状態に基づいて決定する決定手段とを有する。
【００１０】
また、上記の目的を達成するための本発明の他の態様による通信装置の制御方法は、
ネットワークを構成する通信装置の制御方法であって、
通信パラメータの提供を受ける受信装置に、通信パラメータを提供する提供工程と、
前記通信パラメータに含まれる暗号鍵をランダムに生成する生成工程と、
前記生成工程で暗号鍵の生成をするか否かを、当該通信装置のネットワークへの参加状態に基づいて決定する決定工程とを有する。
【発明の効果】
【００１１】
本発明によれば、通信パラメータの自動設定の際に役割が予め決まっていない場合でも、ユーザが各機器の役割を選択すること無く適切に通信パラメータの設定処理およびネットワーク参加処理を実行できる。
【発明を実施するための最良の形態】
【００１２】
＜第１実施携帯＞
以下、本実施形態に係る通信装置について、図面を参照しながら詳細に説明する。以下では、ＩＥＥＥ８０２．１１シリーズに準拠した無線ＬＡＮシステムを用いた例について説明するが、通信形態は必ずしもＩＥＥＥ８０２．１１準拠の無線ＬＡＮには限らない。
【００１３】
本実施形態に好適な事例におけるハードウェア構成について説明する。
【００１４】
図１は本発明の一実施形態に係る通信装置（提供装置または受信装置）の構成の一例を表すブロック図である。１０１は装置全体を示す。１０２は、記憶部１０３に記憶されるコンピュータプログラムを実行することにより装置全体を制御する制御部である。制御部１０２は、他の装置との間で通信パラメータの設定制御も行う。１０３は制御部１０２が実行するコンピュータプログラムと、通信パラメータ等の各種情報を記憶する記憶部である。後述する各種動作は、記憶部１０３に記憶されたコンピュータプログラムを制御部１０２が実行することにより行われる。
【００１５】
１０４は無線通信を行うための無線部である。１０５は各種表示を行う表示部でありＬＣＤやＬＥＤのように視覚で認知可能な情報の出力、あるいはスピーカなどの音出力が可能な機能を有する。
【００１６】
１０６は通信パラメータ設定処理を開始するトリガを与える設定ボタンである。制御部１０２は、ユーザによる設定ボタン１０６の操作を検出すると、後述する処理を実行する。
【００１７】
１０７はアンテナ制御部、そして１０８はアンテナである。１０９は、ユーザが各種入力を行うための入力部である。
【００１８】
図２は、後述の通信パラメータ設定動作において、後述の各装置が実行するソフトウェア機能ブロックの構成の一例を表すブロック図である。
【００１９】
２０１は装置全体を示している。２０２は通信パラメータの自動設定機能ブロックである。本実施形態では、ネットワーク識別子としてのＳＳＩＤ、暗号方式、暗号鍵、認証方式、認証鍵等の無線通信を行うために必要な通信パラメータの自動設定を行う。
【００２０】
２０３は各種通信にかかわるパケットを受信するパケット受信部である。ビーコン（報知信号）の受信は、パケット受信部２０３によって行われる。２０４は各種通信にかかわるパケットを送信するパケット送信部である。ビーコンの送信は、パケット送信部２０４によって行われる。なおビーコンには、送信元の機器の各種情報（自己情報）が付加される。
【００２１】
２０５はプローブリクエストなどの機器検索信号の送信を制御する検索信号送信部である。なお、プローブリクエストは、所望のネットワークを検索するためのネットワーク検索信号ということもできる。プローブリクエストの送信は、検索信号送信部２０５により行われる。また、受信したプローブリクエストに対する応答信号であるプローブレスポンスの送信も検索信号送信部２０５により行われる。
【００２２】
２０６は他の装置からのプローブリクエストなどの機器検索信号の受信を制御する検索信号受信部である。プローブリクエストの受信は、検索信号受信部２０６により行われる。また、プローブレスポンスの受信も検索信号受信部２０６により行われる。なお機器検索信号、及びその応答信号には、送信元の機器の各種情報（自己情報）が付加される。
【００２３】
２０７は、ネットワーク接続を制御するネットワーク制御部である。無線ＬＡＮアドホックネットワークへの接続処理などは、ネットワーク制御部２０７により実施される。
【００２４】
通信パラメータ自動設定機能ブロックにおいて、２０８は、通信パラメータ自動設定における各種プロトコルを制御する自動設定制御部である。
【００２５】
２０９は相手機器に通信パラメータを提供する通信パラメータ提供部である。後述の通信パラメータ自動設定の提供処理は、自動設定制御部２０８の制御に基づいて、通信パラメータ提供部２０９により行われる。２１０は相手機器より通信パラメータを受信する通信パラメータ受信部である。後述の通信パラメータ自動設定の受信処理は、自動設定制御部２０８の制御に基づいて、通信パラメータ受信部２１０により行われる。
【００２６】
また、通信パラメータ自動設定処理が開始されてからの経過時間が当該設定処理の制限時間を越えたか否かの判定も、自動設定制御部２０８で行われる。また、当該制限時間を超えたと判定した場合には、自動設定制御部２０８の制御により、設定処理が中止される。
【００２７】
２１１は、通信パラメータ自動設定処理における役割を決定する役割決定部である。後述の役割決定処理は、役割決定部２１１により実施される。
【００２８】
２１２は、通信パラメータの自動設定の開始と終了の通知に関する処理を制御する設定通知制御部である。後述する提供装置における開始通知メッセージ、開始通知応答メッセージ、および完了通知メッセージの送受信処理は、設定通知制御部２１２により実施される。
【００２９】
２１３は、ビーコン制御部であり、ビーコン（報知信号）の送信タイミングを制御する。ここで、ＩＥＥＥ８０２．１１無線ＬＡＮのアドホックネットワークにおけるビーコンの送信アルゴリズムについて説明する。
【００３０】
アドホックネットワークにおけるビーコンの送信は、ネットワークを構成する全ての装置間で自律分散的に行われる。ビーコンの送信間隔（ビーコン周期）は，アドホックネットワークを最初に構築した装置が決定することになっており、通常は１００ｍｓ程度の間隔でいずれかの装置からビーコンが送信される。
【００３１】
ビーコンを送信するタイミングはコンテンションウィンドウ（乱数発生範囲、以下ＣＷ）と呼ばれるパラメータにより制御される。ネットワーク内の各装置は、ビーコンを送信する時間になると０からＣＷの中からランダムなある値（ＣＷｒａｎｄ）を求める。このＣＷｒａｎｄに、予め定められた一定の間隔（スロットタイム）を掛けた時間をビーコン送信までの待ち時間（バックオフ時間）とする。
【００３２】
次に、上記ビーコン送信までの待ち時間をスロットタイムでデクリメントしていき、待ち時間が０になったときにビーコンを送信する。もし、自装置がビーコンを送信する前に他の装置からのビーコンを受信した場合は、ビーコンを送信する処理を中止する。
【００３３】
このようにすることにより、各装置から送信されるビーコンの衝突を防ぐことができる。アドホックネットワーク上の各装置は、０からＣＷの間の乱数を選択するので、ネットワークを構成している装置のうち、もっとも小さいＣＷｒａｎｄを選択した装置がビーコンを送信することになる。
【００３４】
例えば、各装置に初期値として同一のＣＷが設定されている場合は、各装置によるビーコンの送信確率は同じになり、その結果として、各装置による単位時間当たりのビーコンの送信回数はほぼ同じになる。言い換えれば、各装置によるビーコンの送信頻度（送信割合）は同じになる。
【００３５】
一方でネットワーク上の１つの装置がＣＷを初期値よりも小さい値に設定すると、当該装置が他の装置よりもビーコンを送信する確率は高くなる。つまり、ＣＷはビーコンの送信確率を決定するためのパラメータ、又はビーコンの単位時間当たりの送信回数を決定するためのパラメータということができる。
【００３６】
又、各装置が送信するビーコンの送信割合を決定するためのパラメータということもできる。また、ＣＷはビーコンを送信するタイミングを決定するためのパラメータ、ビーコンの送信までの待ち時間を決定するためのパラメータと言い換えることもできる。
【００３７】
なお、ＣＷの値は、ＣＷｍｉｎ（最小値）からＣＷｍａｘ（最大値）までの範囲で変更することが可能であり、ＣＷｍｉｎに設定すると単位時間当たりのビーコンの送信回数が最大になる。各装置には、初期値としてＣＷｉｎｉｔ（＞ＣＷｍｉｎ）が設定されており、通信パラメータ自動設定処理が実行されていない間は、初期値を用いてビーコンの送信が行われる。
【００３８】
図３は、通信装置Ａ３００（以下、装置Ａ）、通信装置Ｂ３０１（以下、装置Ｂ）を示した図である。これら全ての装置は、先に説明した図１、図２の構成を有している。
【００３９】
装置Ａと装置Ｂはともに、通信パラメータの提供装置、または受信装置として動作するか未決定の状態で、それぞれ、ネットワークＡ３０２（以下、ネットワークＡ）とネットワークＢ３０３（以下、ネットワークＢ）を作成している。
【００４０】
装置Ａと装置Ｂは、それぞれの装置を相互に発見し、どちらの装置が提供装置となるか調停を行う。その結果、提供装置となった装置から受信装置となった装置に対して通信パラメータを提供する。
【００４１】
また、ネットワークＡおよびネットワークＢは、それぞれ、装置Ａと装置Ｂにより構築されるアドホックネットワークである。アドホックネットワークは、ＩＢＳＳ（Ｉｎｄｅｐｅｎｄ  Ｂａｓｉｃ  Ｓｅｒｖｉｃｅ  Ｓｅｔ）と呼ばれ、各ネットワークはネットワーク識別子であるＢＳＳＩＤにより区別される。
【００４２】
図４は、装置Ａと装置Ｂにおいて、設定ボタン１０６が押下され、装置Ａと装置Ｂの間で通信パラメータの自動設定処理を実施した場合の処理シーケンスの一例を示した図である。
【００４３】
装置Ａと装置Ｂは、設定ボタン１０６が押され、それぞれ装置ＡはユニークなネットワークＡを作成し（Ｆ４０１）、装置ＢもユニークなネットワークＢを作成する（Ｆ４０２）。
【００４４】
次に、装置Ａと装置Ｂは、その動作役割（以下、役割）として提供装置にも受信装置にも確定していないことを示す提供装置候補に設定され（Ｆ４０３、Ｆ４０４）、動作役割の調停時間であるタイマＴ１を開始する（Ｆ４０５，Ｆ４０６）。
【００４５】
次に、装置Ａおよび装置Ｂは、通信パラメータの自動設定処理機能を有している、あるいは自動設定処理中であることを通知する情報要素（Ｉｎｆｏｒｍａｔｉｏｎ  Ｅｌｅｍｅｎｔ）を含むビーコン（報知信号）を送信する（Ｆ４０７、Ｆ４０８）。ここで、ビーコンに現時点の役割である提供装置候補を示す情報要素を含めてもよい。
【００４６】
このビーコンには、ネットワークＡとネットワークＢで異なるＢＳＳＩＤが含まれるため、該ビーコンを受信した装置は、いずれのネットワークに属する装置から送信されたビーコンであるかを認識できる。
【００４７】
引き続いて、装置Ｂは、検索信号Ａを送信する（Ｆ４０９）。検索信号Ａにもビーコン同様に、通信パラメータの自動設定処理機能を有している、あるいは自動設定処理中であることを示す情報要素や現時点の役割である提供装置候補を示す情報要素を含めて送信する。
【００４８】
装置Ａは装置Ｂから送信された検索信号Ａを受信したら、検索応答信号Ａを装置Ｂに対して送信する（Ｆ４１０）。検索応答信号Ａにも、ビーコンや検索信号Ａと同様に、通信パラメータの自動設定処理機能を有している、あるいは自動設定処理中であることを示す情報要素や現時点の役割である提供装置候補を示す情報要素を含めて送信する。
【００４９】
次に、装置Ｂの動作役割の調停時間であるタイマＴ１が満了すると（Ｆ４１１）、装置Ｂは自身の動作役割を提供装置に設定する（Ｆ４１２）。
【００５０】
今度は、装置Ａが検索信号Ａを送信する（Ｆ４１３）。装置Ａから送信される検索信号Ａも、通信パラメータの自動設定処理機能を有している、あるいは自動設定処理中であることを示す情報要素や現時点の役割である提供装置候補を示す情報要素を含んでいる。
【００５１】
装置Ｂは装置Ａから送信された検索信号Ａを受信したら、検索応答信号Ｂを装置Ａに対して送信する（Ｆ４１４）。検索応答信号Ｂには、ビーコンや検索信号Ａと同様に、通信パラメータの自動設定処理機能を有している、あるいは自動設定処理中であることを示す情報要素が含まれるが、現時点の役割には提供装置を示す情報要素が含まれる。ここで、役割としての提供装置を示す情報要素に加えて、通信パラメータを提供可能な状態であることを示す情報要素を付加してもよい。
【００５２】
次に、装置Ａは装置Ｂから送信された検索応答信号Ｂを受信し、装置Ｂの役割が提供装置であり、通信パラメータを提供可能な状態であることを確認する。そこで、装置Ａは、調停のタイマＴ１を停止して（Ｆ４１５）、自身の役割を受信装置に設定し（Ｆ４１６）、装置Ｂが作成したネットワークＢへ参加する。これによって、装置Ａと装置Ｂの間では、通信パラメータの自動設定処理で交わされる通信メッセージを相互に送受可能となる。
【００５３】
ここで、装置Ａと装置Ｂの間で、通信パラメータの提供装置あるいは受信装置の役割を調停するにあたっては、検索信号と検索応答信号を用いた。
【００５４】
しかし、敢えて検索信号や検索応答信号の送受を行わず、相互にビーコンの送受だけを行うパッシブスキャンによって送信機会を削減可能な発見および調停を行ってもよい。
【００５５】
そこで、装置Ａは、装置Ｂに通信パラメータ設定起動を示すメッセージを送信し（Ｆ４１８）、受信装置である装置Ａと提供装置である装置Ｂの間で通信パラメータ設定処理を行う（Ｆ４１９）。その結果、通信パラメータが装置Ｂから装置Ａに対して送信され、装置Ｂは装置Ａに対して通信パラメータ設定完了のメッセージを送信する（Ｆ４２０）。これにより通信パラメータ設定処理が完了する。
【００５６】
なお、本実施形態中に通信パラメータ設定処理と記載した箇所がある。その詳細な通信プロトコル処理は、非特許文献１にあるように業界標準の通信パラメータ設定処理で規定されている通信プロトコル処理を用いることによって実現できることを明記しておく。そして、装置Ａと装置Ｂでは、共有した通信パラメータを用いて通信接続処理を行う（Ｆ４２１）。
【００５７】
なお、通信パラメータ設定処理の終了と同時に通信接続処理の開始を行うことで、ユーザに操作を強いることなく装置Ａと装置Ｂが通信可能となる。その場合に、装置が通信接続処理を開始したことを明示的に表す接続要求信号を送信してもよい。アドホックモードでは、インフラストラクチャモードのようなアソシエーション処理が行われないが、接続要求信号の受信により、接続を要求してきた装置を即座に認識することができる。
【００５８】
本実施形態では、装置Ｂは装置Ａに対して、ネットワークＢと同一のネットワークを示す通信パラメータを送信し、その通信パラメータで通信接続処理を行った。この場合、装置Ａが装置Ｂに対して接続要求信号を送信することにより、装置Ｂは装置Ａがネットワークへ参加したことを知ることができ、参加台数の把握も容易になる。
【００５９】
また、通信接続処理の開始前にユーザに接続開始を確認するようにし、ユーザからの操作に応じて通信接続処理を開始してもよい。
【００６０】
さらに、装置Ｂが装置Ａに対して、ネットワークＢと異なるネットワークを示す通信パラメータを送信してもよい。その場合は、共有した通信パラメータによるネットワーク上で別装置を検出したことをトリガに通信接続処理を開始することで無駄な接続処理を回避できる。
【００６１】
図８は、装置Ａと装置Ｂにおいて、設定ボタン１０６が押下され、装置Ａと装置Ｂの間で提供装置あるいは受信装置の動作役割を調停し、通信パラメータの自動設定処理を実施した場合の動作フローの一例を示したフローチャートである。
【００６２】
以下、本フローチャートに沿って両装置が実行する制御について説明する。
【００６３】
通信パラメータの開始を表す設定ボタン１０６の押下が検出される（Ｓ８０１）。
【００６４】
ボタンが押下された装置では、自身が現在すでにネットワークに参加しているかどうかを調べる（Ｓ８０２）。もしすでにネットワークに参加しているのであれば、参加中のネットワークに別の新しい装置を参加させるために、自身の役割を提供装置に設定し（Ｓ８２０）、ビーコン送信を開始する（Ｓ８２１）。
【００６５】
そして、ネットワークへ参加する新しい装置に対する通信パラメータ提供処理を開始する（Ｓ８２２）。なお、自身が現在すでにネットワークに参加している場合には、後述の図６で示す開始通知処理を起動する。即ち、ステップＳ８２２において開始する通信パラメータ提供処理では、自身がネットワークに参加している場合には、自身が参加中のネットワークの通信パラメータを提供する。ここで、ビーコン（報知信号）、検索信号（プローブリクエスト）、検索応答信号（プローブレスポンス）には、以下の情報要素が信号に応じて必須、あるいはオプションとして含まれるものとする。
・通信パラメータの自動設定処理機能を有する、あるいは自動設定処理中であることを通知する情報要素。
・自装置の役割を示す情報要素。
・提供機能が起動中か否かを示す情報要素。
【００６６】
一方、ネットワークに参加していない場合には、動作役割の調停を行うためにネットワークを構築し（Ｓ８０３）、役割を提供装置候補に設定した上で（Ｓ８０４）、役割調停で用いるタイマＴ１を開始する（Ｓ８０５）。
【００６７】
Ｓ８０５にてタイマＴ１を開始した後、装置は、ビーコン送信を開始する（Ｓ８０６）。ここで、ビーコンに現時点の役割である提供装置候補を示す情報要素を含めてもよい。
【００６８】
さらに、タイマＴ１が満了でなければ（Ｓ８０７）、各装置は検索信号（プローブリクエスト）を送信し（Ｓ８０８）、検索応答信号（プローブレスポンス）の受信を待つ（Ｓ８０９）。
【００６９】
次に、受信した検索応答信号の情報要素に含まれる相手の役割が提供装置かどうかを判定し（Ｓ８１０）、もし提供装置であれば自装置の役割を受信装置に設定し（Ｓ８１１）、タイマＴ１を停止する（Ｓ８１２）。
【００７０】
続けて、提供装置が作成したネットワークへ参加し（Ｓ８１３）、自身もビーコン送信を開始する（Ｓ８１４）。そして、提供装置からの通信パラメータの受信処理を開始する（Ｓ８１５）。
【００７１】
また、タイマＴ１が満了するまでに、役割が提供装置である装置を発見できない場合には（Ｓ８０７）、自装置の役割を提供装置に設定する（Ｓ８２０）。
【００７２】
こうして自装置の役割を提供装置に設定したならば、続けて、提供装置であることを示すビーコン送信を開始し（Ｓ８２１）、通信パラメータ提供処理を開始する（Ｓ８２２）。なお、ステップＳ８２２において開始する通信パラメータ提供処理では、自身がネットワークに参加していない場合には、ステップＳ８０３で生成したネットワークの通信パラメータを提供する。
【００７３】
役割が受信装置となった装置は、通信パラメータの受信が完了したかどうかを確認する（Ｓ８１６）。完了した場合には、表示部１０５でＬＣＤにメッセージを表示する、あるいはＬＥＤの点滅・点灯・色や音などで識別可能な成功表示を行い（Ｓ８１９）、処理を完了する（Ｓ８２７）。またエラーが発生した場合には（Ｓ８１７）、同様に表示部１０５でＬＣＤにメッセージを表示する、あるいはＬＥＤの点滅・点灯・色や音などで識別可能なエラー表示を行い（Ｓ８１８）、処理を完了する（Ｓ８２７）。
【００７４】
一方、役割が提供装置となった装置は、通信パラメータの提供が完了したかどうかを確認する（Ｓ８２３）。完了した場合には、表示部１０５でＬＣＤにメッセージを表示する、ＬＥＤの点滅・点灯・色や音などで識別可能な成功表示を行い（Ｓ８２６）、処理を完了する（Ｓ８２７）。またエラーが発生した場合には（Ｓ８２４）、同様に表示部１０５でＬＣＤにメッセージを表示する、あるいはＬＥＤの点滅・点灯・色や音などで識別可能なエラー表示を行い（Ｓ８２５）、処理を完了する（Ｓ８２７）。
【００７５】
なお、ステップＳ８０８〜Ｓ８１０ではプローブリクエストに対するプローブレスポンスの受信を待機することにより、通信パラメータの設定処理を開始している提供装置を検索する方法（アクティブスキャン）について説明した。通信パラメータの設定処理を実行中の提供装置は、通信パラメータ自動設定を意味する付加情報を付加したビーコンを送信するので、受信装置は一定時間、当該ビーコンが送信されてくるのを待つ方法（パッシブスキャン）を用いるようにしてもよい。
【００７６】
また、Ｓ８２２で通信パラメータを通信パラメータ提供装置から通信パラメータ受信装置へ送信する際に、通信接続に必須である通信パラメータだけでなく、上記通信パラメータの有効期限（有効期間と同義である）をあわせて送信しても良い。上記有効期限をあわせて受信した通信パラメータ受信装置では、上記有効期限が経過した時点で、通信接続処理を終了する。あるいは、通信接続処理の終了のみならず、受信した通信パラメータを破棄するようにしてもよい。なお、ここで述べる有効期限とは、時間情報だけではなく、たとえば通信装置上で動作するソフトウェアの起動回数などでもよいし、通信接続の回数でもよい。上記起動回数や、上記通信接続の回数が有効期限として受信した場合は、その有効期限の回数のソフトウェア処理が終了したり、通信接続が切断した時点で、上記受信した通信パラメータを破棄する。
【００７７】
また、同じくＳ８２２において通信パラメータを通信パラメータ提供装置から通信パラメータ受信装置へ送信する際に、上記通信パラメータを記憶装置に記憶してよいか、記憶してはならないかを示す保持制限情報をあわせて送信しても良い。上記保持制限情報を受信した通信パラメータ受信装置では、上記通信パラメータを自身の記憶部１０３には保持せず、通信接続処理が一旦終了した時点で上記通信パラメータを破棄するという処理を実施する。
【００７８】
次に、確立済みのアドホックネットワークへ通信パラメータの自動設定を用いて新たに装置を追加する場合について説明する。
【００７９】
図５は、第１の通信装置Ａ５００（以下、装置Ａ）、第２の通信装置Ｂ５０１（以下、装置Ｂ）、第３の通信装置Ｃ５０３（以下、装置Ｃ）、およびネットワーク５０２を示した図である。装置Ａ、装置Ｂ、および装置Ｃは先に説明した図１、図２の構成を有している。
【００８０】
ここで、装置Ａと装置Ｂから構成されるネットワーク５０２へ装置Ｃが参加する際に、装置Ｂと装置Ｃの設定ボタンが操作された場合を考える。
【００８１】
図６は、提供装置の通知処理動作を説明するフローチャート図である。図８のステップＳ８０２において、装置がネットワークへ参加中の場合に、該装置は図６の処理を開始する。
【００８２】
処理が開始されると、提供装置のビーコン制御部２１３は提供装置による単位時間当たりのビーコンの送信頻度（送信割合、送信回数）を増加させる（Ｓ６０１）。
【００８３】
なお、ＩＥＥＥ８０２．１１無線ＬＡＮのアドホックネットワークにおいては、プローブレスポンスを返信する装置は、プローブリクエストを受信する直前にビーコンを送信した装置であることが規定されている。
【００８４】
そこで、ステップＳ６０１では、ＣＷを初期値よりも小さな値に設定する。これにより、提供装置による単位時間当たりのビーコンの送信回数が、ネットワークに参加中の他の装置よりも多くなる。この結果、新規に参加する装置による提供装置の検索処理（図８のステップＳ８０８〜Ｓ８１０）において、提供装置からのプローブレスポンスを短時間で検出することが可能となる。
【００８５】
このように、提供装置のビーコンの送信頻度を高くすることで、新規に参加する装置が提供装置を検索する場合に、提供装置からのプローブレスポンスを受信する確率が高くなる。また、新規に参加する装置がパッシブスキャンにより提供装置を検索する場合であっても、提供装置からのビーコンを受信する確率が上がる。
【００８６】
その結果、新規に参加する装置が提供装置を検出できないまま通信パラメータ設定処理の制限時間を経過してしまう確率を下げることが可能となる。また、新規に参加する装置が提供装置を短時間で検出することができれば、通信パラメータの提供が完了するまでの時間も短縮することができる。
【００８７】
その後、提供装置は、通信パラメータの自動設定が開始されたことを通知する開始通知メッセージをブロードキャスト送信する（Ｓ６０２）。なお、本開始通知メッセージをネットワークに参加している各装置にユニキャスト送信してもよい。
【００８８】
提供装置は起動した提供処理がエラー終了する（Ｓ６０６）か、受信装置への通信パラメータの提供が完了する（Ｓ６０３）か、または他の装置からエラー通知又は完了通知メッセージを受信する（Ｓ６０５、Ｓ６０８）まで待機する。
【００８９】
提供処理が成功し、受信装置への通信パラメータの提供が完了した場合は（Ｓ６０３）、提供装置は完了通知メッセージをブロードキャスト送信する（Ｓ６０４）。なお、本完了通知メッセージをネットワークに参加している各装置にユニキャスト送信してもよい。
【００９０】
ステップ６０４により完了通知メッセージを送信するか、または他の装置から完了通知メッセージを受信した（Ｓ６０５）場合は、ステップＳ６０９ヘ進む。
【００９１】
また、提供処理が失敗した場合は（Ｓ６０６）、提供装置はエラー通知メッセージをブロードキャスト送信する（Ｓ６０７）。なお、エラー通知メッセージをネットワークに参加している各装置にユニキャスト送信してもよい。
【００９２】
ステップ６０７によりエラー通知メッセージを送信するか、または他の装置からエラー通知メッセージを受信した（Ｓ６０８）場合は、ステップＳ６０９へ進む。
【００９３】
ステップＳ６０９において、提供装置のビーコン制御部２１３はＣＷを初期値に再設定し、ステップＳ６０１にて増加したビーコンの送信頻度を元に戻す（Ｓ６０９）。なお、ＣＷの初期値への再設定は、提供処理の開始後であれば、処理開始直後、提供処理完了後、エラー後のいつでもよい。処理開始後直後に再設定すれば、ビーコンを送信する頻度（回数）が低くなるので、ビーコン送信による消費電力をより効率的に低減することができる。また、ステップＳ６０２にて送信した開始通知メッセージは、提供処理がエラー終了するか、または受信装置へ通信パラメータを提供するか、または他の装置から通知メッセージを受信するまで、繰り返し送信される。
【００９４】
図７は、ネットワークに参加中の提供装置以外の装置（装置Ａ）の代理応答処理動作を説明するフローチャート図である。装置Ａが開始通知メッセージを受信すると、図７の処理が開始される。
【００９５】
装置Ａの自動設定制御部２０８は、開始通信メッセージの受信を検出すると、ステップＳ７０２〜Ｓ７０７にて説明する処理の制限時間を経過したか否かを判定するためのタイマを起動する（Ｓ７０１）。
【００９６】
次に自動設定制御部２０８は、送信するビーコンおよび検索応答信号（プローブレスポンス）に含める情報の内容を変更する（Ｓ７０２）。ステップＳ７０２において、自動設定制御部２０８は、送信するビーコンおよび検索応答信号に、提供装置（装置Ｂ）を一意に識別する識別情報を付加する。識別情報としては、例えば提供装置のＭＡＣアドレス情報を格納する。これにより、検索信号に対して提供装置ではない装置Ａが検索応答信号を返した場合でも、検索信号の送信元の装置は提供装置の存在を検出することが可能となる。
【００９７】
そして、ビーコン制御部２１３はＣＷを初期値より大きい値に変更して設定し（Ｓ７０３）、ビーコンの送信頻度（送信割合）を削減する。
【００９８】
これにより、ネットワークに参加中の提供装置以外の装置による単位時間当たりのビーコンの送信回数が、提供装置よりも少なくなる。この結果、新規に参加する装置による提供装置の検索処理（図８のステップＳ８０８〜Ｓ８１０）において、提供装置からのプローブレスポンスを短時間で検出することが可能となる。
【００９９】
その後、装置Ａは提供装置から送信される完了通知メッセージまたはエラー通知メッセージを待ち受ける（Ｓ７０４、Ｓ７０５）。通知メッセージを受信すると、装置Ａのビーコン制御部２１３はＣＷを初期値に再設定し（戻し）、ステップＳ７０３にて削減したビーコンの送信頻度を元に戻す（Ｓ７０６）。更に自動設定制御部２０８は、送信するビーコンおよび検索応答信号に含める情報の内容を、ステップＳ７０２で行った変更前の内容に戻す（Ｓ７０７）。すなわち、送信するビーコンおよび検索応答信号に付加された、提供装置（装置Ｂ）を一意に識別する識別情報を除去する。
【０１００】
なお、ステップＳ７０１にて設定したタイマが満了すると、受信装置はステップＳ７０２〜Ｓ７０７の処理を中止する。また、タイマ満了時にステップＳ７０２、ステップＳ７０３の処理が既に行われていた場合には、ステップＳ７０６、ステップ７０７と同様の再設定処理を行う。
【０１０１】
図９は、本実施形態における各装置の動作を説明するシーケンス図である。装置Ａは、通信パラメータの自動設定により装置Ｂから通信パラメータの提供を受け、該通信パラメータにより形成されるネットワーク５０２に既に参加している（Ｆ９０１）。また、装置Ｃは、まだ通信パラメータの提供を受けていない。
【０１０２】
ユーザにより装置Ｂの設定ボタンが操作されると、装置Ｂは図８の処理を起動する（Ｆ９０２）。装置Ｂは既に通信パラメータの自動設定により確立されたネットワーク５０２へ参加しているため、自身の役割を提供装置に設定し、通信パラメータの提供処理を開始する（Ｆ９０２）。
【０１０３】
通信パラメータの提供処理を開始後、装置Ｂは図６の通知処理を起動する（Ｆ９０３）。通知処理を起動後、装置Ｂは開始通知メッセージを送信し、ビーコンの送信頻度を増加させる（Ｆ９０４）。
【０１０４】
開始通知メッセージを受信した装置Ａは図７の代理応答処理を起動し、ビーコンの送信頻度を削減する（Ｆ９０５）。
【０１０５】
このように、装置Ｂがビーコンの送信頻度を増加し、装置Ａがビーコンの送信頻度を削減することで、新たに参加する装置Ｃが提供装置である装置Ｂをより短時間に検出することができる。
【０１０６】
ユーザにより装置Ｃの設定ボタン１０６が操作されると、装置Ｃは図８の処理を起動し、検索信号を送信する（Ｆ９０６）。
【０１０７】
装置Ｃから送信された検索信号に対して、ネットワーク５０２では装置Ａまたは装置Ｂが検索応答信号を返信する（Ｆ９０７ａ、Ｆ９０７ｂ）。
【０１０８】
装置Ａが検索応答信号を返信する場合には、装置Ａは提供装置である装置Ｂの識別情報（ＭＡＣアドレス）を検索応答信号に格納して返信する（Ｆ９０７ｂ）。また、装置Ｂが検索応答信号を返信する場合には、装置Ｂは自身が提供装置であることを示す情報を検索応答信号に格納して返信する（Ｆ９０７ａ）。このように、装置Ｃはネットワーク５０２のどの機器から検索応答信号を受信した場合でも、提供装置である装置Ｂを確実に検出することができる。
【０１０９】
装置Ｃは提供装置の存在を検出すると、自身の役割を受信装置に設定し、通信パラメータの受信処理を起動する（Ｆ９０８）。装置Ｃは提供装置である装置Ｂからネットワーク５０２での通信に必要な通信パラメータを受信する（Ｆ９０９）。
【０１１０】
装置Ｂは装置Ｃへ通信パラメータを提供後、完了通知メッセージを送信する（Ｆ９１０）。送信後、装置ＢはＦ９０３にて増加させたビーコンの送信頻度を元に戻す。装置Ａは完了通知メッセージを受信すると、Ｆ９０５にて削減したビーコンの送信頻度を元に戻す。
【０１１１】
このように、ユーザは設定ボタン１０６の操作のみを行うことで、自動的に装置Ｃをネットワーク５０２へ参加させることが可能となる。
【０１１２】
なお、図９の説明では装置Ｂの設定ボタン１０６が操作された場合について説明したが、装置Ａの設定ボタン１０６が操作される場合も考えられる。装置Ａの設定ボタン１０６が操作された場合であっても、図８のステップＳ８０２を経て装置Ａが提供装置となることで、図９の場合と同様に装置Ｃをネットワーク５０２に追加することが可能である。
【０１１３】
上記処理によって通信装置間で簡単に通信パラメータを共有することが可能となる。前述した通り、装置Ａと装置Ｂとで設定ボタン１０６を操作することで、装置Ａと装置Ｂとの間で通信接続処理を行い、ネットワーク５０２を構成することとなる。
【０１１４】
上記通信接続処理は、前述した通り、通信パラメータ設定処理完了後に自動で開始しても良いし、設定ボタン１０６の再押下や、入力部１０９による接続コマンド投入などによって行っても良い。
【０１１５】
なお、上記通信接続処理は、共有された通信パラメータのうち、認証方式および暗号方式によって異なる。
【０１１６】
本実施形態では、認証方式および暗号方式として採用される組み合わせは、例えば図１０のとおりとなる。
【０１１７】
Ｏｐｅｎ認証とは、ＩＥＥＥ８０２．１１規格において、Ｏｐｅｎ  Ｓｙｓｔｅｍ  Ａｕｔｈｅｎｔｉｃａｔｉｏｎとして定義されている認証方式であり、詳細はＩＥＥＥ８０２．１１規格を参照されたい。Ｓｈａｒｅｄ認証とは、ＩＥＥＥ８０２．１１およびＩＥＥＥ８０２．１１ｉ規格にて、Ｓｈａｒｅｄ  Ｋｅｙ  Ａｕｔｈｅｎｔｉｃａｔｉｏｎとして定義されている認証方式であり、暗号方式としてＷＥＰを使用する。
【０１１８】
なお、ＷＥＰは、Ｗｉｒｅｄ  Ｅｑｕｉｖａｌｅｎｔ  Ｐｒｉｖａｃｙの略であり、詳細についてＩＥＥＥ８０２.１１もしくはＩＥＥＥ８０２．１１ｉ規格を参照されたい。またＷＰＡ認証方式、ＷＰＡ−ＰＳＫ認証方式、ＷＰＡ２認証方式、およびＷＰＡ２−ＰＳＫ認証方式は、Ｗｉ−Ｆｉアライアンスが規定する暗号化方式の規格である。これらは、ＩＥＥＥ８０２．１１i規格におけるＲＳＮＡ（Ｒｏｂｕｓｔ  Ｓｅｃｕｒｉｔｙ  Ｎｅｔｗｏｒｋ  Ａｓｓｏｃｉａｔｉｏｎ）をベースとしている。
【０１１９】
そして、ＴＫＩＰは、Ｔｅｍｐｏｒａｌ  Ｋｅｙ  Ｉｎｔｅｇｒｉｔｙ  Ｐｒｏｔｏｃｏｌの略である。ＣＣＭＰは、ＣＴＲｗｉｔｈ  ＣＢＣ−ＭＡＣ  Ｐｒｏｔｏｃｏｌの略であり、暗号方式にはＡＥＳを利用するものである。ＡＥＳは、Ａｄｖａｎｃｅｄ  Ｅｎｃｒｙｐｔｉｏｎ  Ｓｔａｎｄａｒｄの略である。
【０１２０】
いずれについても詳細についてはＷｉ−Ｆｉアライアンスの仕様書またはテスト仕様書を参照されたい。ＷＰＡ−ＰＳＫ認証方式およびＷＰＡ２−ＰＳＫ認証方式は、事前共有鍵による認証方式である。ＷＰＡ認証方式およびＷＰＡ２認証方式は、別途用意した認証サーバによりユーザ認証を行い、認証サーバより通信経路の暗号鍵を取得する方式である。どちらも、詳細については、ＩＥＥＥ８０２．１１ｉ規格を参照されたい。
【０１２１】
接続処理の方法は、認証方式によって異なる。現状取りうる認証方式としては、表にあるとおり、Ｏｐｅｎ認証、Ｓｈａｒｅｄ認証、ＷＰＡ認証、ＷＰＡ−ＰＳＫ認証、ＷＰＡ２認証、ＷＰＡ２−ＰＳＫ認証の６通りがある。このうち、ＷＰＡ認証とＷＰＡ２認証、およびＷＰＡ−ＰＳＫ認証とＷＰＡ２−ＰＳＫ認証は、本質的には同一の認証方法である。このため、以下の説明ではＷＰＡとＷＰＡ２およびＷＰＡ−ＰＳＫとＷＰＡ２−ＰＳＫは同一とみなし、４通り（ＯＰＥＮ、Ｓｈａｒｅｄ、ＷＰＡ、ＷＰＡ−ＰＳＫ）の認証方式について説明していく。
【０１２２】
ただし、ＷＰＡ認証については、別途認証サーバを外部に設置し、該認証サーバとの間で認証処理を行うため、本発明のように全ての通信装置が対等な立場で動作する場合には煩雑な処理となるため、ここでの説明は割愛する。
【０１２３】
したがって、以下では、Ｏｐｅｎ認証、Ｓｈａｒｅｄ認証、ＷＰＡ−ＰＳＫ認証のそれぞれについて説明を行う。
【０１２４】
まず、Ｏｐｅｎ認証について説明する。Ｏｐｅｎ認証においては、互いの通信装置において、通信パラメータ自動設定処理において共有した通信パラメータを設定し、お互いを検索してＩＢＳＳネットワークを構成する。
【０１２５】
次に、Ｓｈａｒｅｄ認証について説明する。Ｓｈａｒｅｄ認証の詳細な説明についてはＩＥＥＥ８０２．１１およびＩＥＥＥ８０２．１１ｉの仕様書に記述があるため詳細は省略するが、Ｓｈａｒｅｄ認証を実施する場合は、ＲｅｑｕｅｓｔｅｒとＲｅｓｐｏｎｄｅｒを決定する必要がある。
【０１２６】
インフラストラクチャモードにおいて、ＳＴＡ（ステーション）はＲｅｑｕｅｓｔｅｒとして動作し、ＡＰ（アクセスポイント）はＲｅｓｐｏｎｄｅｒとして動作する。一方、アドホックモードでは、ＡＰが存在しない。このため、ＩＢＳＳでＳｈａｒｅｄ  Ｋｅｙ  Ａｕｔｈｅｎｔｉｃａｔｉｏｎを実現するためには、ＳＴＡにＲｅｓｐｏｎｄｅｒ機能の実装および、Ｒｅｑｕｅｓｔｅｒ／Ｒｅｓｐｏｎｄｅｒ役割決定アルゴリズムを実装する必要がある。
【０１２７】
このＲｅｑｕｅｓｔｅｒ／Ｒｅｓｐｏｎｄｅｒ役割決定アルゴリズムは後述のＷＰＡ−ＰＳＫ認証におけるＳｕｐｐｌｉｃａｎｔ／Ａｕｔｈｅｎｔｉｃａｔｏｒ役割決定と同様の手法をとってもよい。例えば、通信パラメータ自動設定処理における通信パラメータ提供装置がＲｅｓｐｏｎｄｅｒとなって、通信パラメータ受信装置がＲｅｑｕｅｓｔｅｒとなってもよい。
【０１２８】
最後に、ＷＰＡ−ＰＳＫ認証について説明する。ＷＰＡ−ＰＳＫ認証は、ＩＥＥＥ８０２．１１ｉおよび、ＷＰＡにて規格化されており、ＩＢＳＳでの動作方法にも規定がある。図１２にＩＥＥＥ８０２．１１ｉで規定されているシーケンスを記載する。詳細はＩＥＥＥ８０２．１１ｉ規格を参照していただくとして、ここでは概要について説明をする。
【０１２９】
まず、通信パラメータ自動設定処理が終了した装置Ａと装置Ｂが存在するとする。通信パラメータ自動設定処理が完了した後、自動的あるいは、ユーザ操作によって、自動設定された通信パラメータを用いて、通信接続処理が実行される。
【０１３０】
まず、装置Ａと装置Ｂは互いに相手を検索する（Ｆ１２０１）。互いが認識できた場合は、装置Ａと装置ＢのうちＭＡＣアドレスの大きなものがＡｕｔｈｅｎｔｉｃａｔｏｒとなり、他方がＳｕｐｐｌｉｃａｎｔとなる。そして、一度目の４ウェイハンドシェイクおよびグループキーハンドシェイクを実行する（Ｆ１２０２〜Ｆ１２０３）。
【０１３１】
なお、４ウェイハンドシェイクとは、ＡｕｔｈｅｎｔｉｃａｔｏｒとＳｕｐｐｌｉｃａｎｔとの間で乱数のやり取りを行い、事前共有鍵に基づいてペアワイズ鍵と呼ばれるユニキャストパケットの暗号鍵をセッション毎に生成する仕組みである。グループキーハンドシェイクは、Ａｕｔｈｅｎｔｉｃａｔｏｒが保有しているマルチキャストパケットやブロードキャストパケットの暗号鍵を送付する仕組みである。
【０１３２】
その後、ＡｕｔｈｅｎｔｉｃａｔｏｒとＳｕｐｐｌｉｃａｎｔの役割を交換して、再度４ウェイハンドシェイクとグループキーハンドシェイクを実施する（Ｆ１２０４〜Ｆ１２０５）。以上により装置Ａと装置Ｂとの間で通信が可能となる。
【０１３３】
このようにＩＥＥＥ８０２．１１ｉ仕様完全準拠では、４ウェイハンドシェイクおよびグループキーハンドシェイクが複数回行われるなど、冗長な処理が存在する。冗長な処理の実施および、役割決定アルゴリズムの実行のために、接続完了までに時間がかかる。よって、冗長な処理の削減や処理時間の改善のための手法をとることも可能である。
【０１３４】
その手法としては、いくつか考えられるが、ここでは、
第一の方法：４ウェイハンドシェイクを１回に統合
第二の方法：グループ鍵をネットワークで１つに統合
第三の方法：グループ鍵およびペアワイズ鍵を全て１つに統合
第四の方法：通信パラメータ自動設定処理のなかで鍵交換もあわせて実施
の以上４つについて説明する。
【０１３５】
前述の４つの方法による鍵交換シーケンスの回数の差異および、保有するペアワイズ鍵並びにグループ鍵の個数について図１１に示す。
【０１３６】
まず、保有する鍵の数について説明する。ｎ個の通信機器からなるアドホックのＩＢＳＳネットワークでは、ＩＥＥＥ８０２．１１ｉに完全準拠した場合は、ペアワイズ鍵は対向の通信機器分のｎ−１個必要である。また、グループ鍵は対向の通信機器分に加えて、自身の現在のグループ鍵と一つ前のグループ鍵の計２つが必要であり、合算するとｎ＋１個が必要となる。自身のグループ鍵が２つ必要な理由は、グループキーハンドシェイクの進行状況によっては、同一ネットワークでは異なるグループ鍵を持つものが過渡期としては存在するからである。
【０１３７】
第一の方法では、シーケンスを減らすだけであり、所有する鍵の数は変わらない。
【０１３８】
第二の方法では、ペアワイズ鍵は同様にｎ−１個必要であるが、グループ鍵は全体で１個でよい。
【０１３９】
第三の方法では、ペアワイズ鍵としてグループ鍵をそのまま利用するため、ペアワイズ鍵は０個となり、グループ鍵のみ１個持つこととなる。
【０１４０】
第四の方法では、ペアワイズ鍵は同様にｎ−１個必要である。グループ鍵は、それぞれ所有しても良いし、全体で１つとしても良いため、場合によってｎ＋１個持つ場合もあるし、１個だけ持つ場合もある。
【０１４１】
次に、対向の装置１台当たりに実施される鍵交換の数について説明する。ＩＥＥＥ８０２．１１ｉに完全に準拠した場合は、すでに図１２で説明した通り、４ウェイハンドシェイクを２回、グループキーハンドシェイクを２回それぞれ実施する。
【０１４２】
第一の方法では、冗長であった４ウェイハンドシェイクを削減するため、４ウェイハンドシェイクの実施回数が１回となる。グループキーハンドシェイクについては変わらず２回の実施となる。
【０１４３】
第二の方法では、グループ鍵がネットワークで１つに統合されるため、常に新規端末に配布するだけとなり、グループキーハンドシェイクは１回となる。４ウェイハンドシェイクの実施回数については、第一の方法に準じて１回の実施でも良いし、ＩＥＥＥ８０２．１１ｉ規格に準拠して２回双方向で実施してもよい。
【０１４４】
第三の方法では、予め設定した１つの鍵をペアワイズ鍵およびグループ鍵として利用するため、鍵交換シーケンスは行わない。
【０１４５】
第四の方法では、ＷＰＳの通信パラメータ自動設定処理シーケンスで鍵交換処理相当を行ってしまうため、独立した４ウェイハンドシェイクは実施しない。グループキーハンドシェイクについては、任意の実行回数となる。
【０１４６】
以上、図１１を参照して説明したように、これらの方法は、先に述べたＩＥＥＥ８０２．１１ｉ仕様に完全準拠したものに比べ、鍵交換シーケンス数および保有する鍵の数において有利となっている。
【０１４７】
引き続き、前述の４つの手法についてシーケンス図を用いて詳細な説明を行う。
【０１４８】
第一の方法について、図１３を用いて説明する。
【０１４９】
まず、通信パラメータ自動設定処理が終了した装置Ａと装置Ｂが存在するとする。通信パラメータ自動設定処理が完了した後、自動的あるいは、ユーザ操作によって、自動設定された通信パラメータを用いて、通信接続処理が実行される。
【０１５０】
まず、装置Ａと装置Ｂは互いに相手を検索する（Ｆ１３０１）。互いが認識できた場合は、装置Ａと装置ＢのうちＭＡＣアドレスの大きなものがＡｕｔｈｅｎｔｉｃａｔｏｒとなり、他方がＳｕｐｐｌｉｃａｎｔとなる。そして、４ウェイハンドシェイクおよび一度目のグループキーハンドシェイクを実行する（Ｆ１３０２〜Ｆ１３０３）。
【０１５１】
その後、ＡｕｔｈｅｎｔｉｃａｔｏｒとＳｕｐｐｌｉｃａｎｔの役割を交換して、再度グループキーハンドシェイクを実施する（Ｆ１３０４）。以上により通信が可能となる。
【０１５２】
このように第一の方法では、ＩＥＥＥ８０２．１１ｉ仕様では一組の装置について２回実施される４ウェイハンドシェイク処理を１回に削減する。
【０１５３】
４ウェイハンドシェイクは４ウェイハンドシェイクを実行している通信装置間でペアワイズ鍵を共有するための処理であるため、連続して２回実施してもセキュリティ向上にはならず、冗長なだけである。よって、第一の方法においては、従来方向を変えて２回実施していた４ウェイハンドシェイクを１回に削減することで、通常の接続処理に要する時間を短縮することができる。
【０１５４】
第二の方法について、図１４を用いて説明する。まず、通信パラメータ自動設定処理が終了した装置Ａと装置Ｂが存在するとする。通信パラメータ自動設定処理が完了した後、自動的あるいは、ユーザ操作によって、自動設定された通信パラメータを用いて、通信接続処理が実行される。
【０１５５】
まず、装置Ａと装置Ｂは互いに相手を検索する（Ｆ１４０１）。互いが認識できた場合は、装置Ａと装置ＢのうちＭＡＣアドレスの大きなものがＡｕｔｈｅｎｔｉｃａｔｏｒとなり、他方がＳｕｐｐｌｉｃａｎｔとなり、４ウェイハンドシェイクおよびグループキーハンドシェイクを実行する（Ｆ１４０２〜Ｆ１４０３）。以上により通信が可能となる。
【０１５６】
ＩＥＥＥ８０２．１１ｉ仕様では、通信装置ごとに異なるグループ鍵が設定されているが、第二の方法では、グループ鍵をネットワークとして１つに統合する。
【０１５７】
ペアワイズ鍵は通信経路毎に用意するがグループ鍵はネットワークとして共通の１つを使いまわす。これによりグループキーハンドシェイク処理もＩＥＥＥ８０２．１１ｉ準拠では２回実施しなければいけないところを、１回に削減できる。また、グループ鍵を１つだけ設定することにより、ブロードキャストパケット及びマルチキャストパケットの暗号・復号処理を送信した装置毎に異なる鍵を保持する必要がなく、簡潔になるという利点がある。
【０１５８】
第三の方法は、非特許文献２に記載されているＷＰＡ−Ｎｏｎｅ（Ｏｐｔｉｏｎａｌ  ＩＢＳＳ  Ｇｌｏｂａｌ  Ｐｒｅ−Ｓｈａｒｅｄ  Ｋｅｙ  Ｓｙｓｔｅｍ）と同様である。
【０１５９】
ＷＰＡ−Ｎｏｎｅの詳細については前述した文献に記載されているため詳細については割愛する。通常のＷＰＡでは、４ウェイハンドシェイクにより、ペアワイズ鍵の元となる要素に乱数を作用させ、セッション鍵を生成する。一方、ＷＰＡ−Ｎｏｎｅでは、ペアワイズ鍵の元となる要素をそのままセッション鍵として適用する。
【０１６０】
すなわち、第三の方法の大きな特徴は、鍵交換処理が実施されないことである。よって接続のたびにセッション鍵が生成される通常のＷＰＡ接続処理よりもセキュリティは低下する。そこで、本方法をとる場合は、接続の都度、通信パラメータ自動設定処理を起動して、そこで共有される通信パラメータの通信鍵を毎回ランダムにすることでセキュリティを向上できる。
【０１６１】
第四の方法について、図１５を用いて説明する。まず、図４の説明で述べたように、通信パラメータ自動設定における、通信相手検索および役割決定処理が実施される（Ｆ１５０１）。引き続き、通信パラメータ自動設定処理により、通信パラメータが通信パラメータ提供装置から通信パラメータ受信装置へ転送される（Ｆ１５０２）。このＦ１５０２の処理の中で、従来は実施していなかった鍵交換処理を通信パラメータ設定処理と同時実行する。
【０１６２】
ここで、同時実行にあたっては、通信パラメータ設定処理のメッセージ交換処理で利用される乱数を鍵交換処理の乱数で利用するなどがある。よってＦ１５０２終了時点で装置Ａと装置Ｂとでペアワイズ鍵が共有されている。通信パラメータ自動設定処理終了後、グループ鍵交換処理を実施する（Ｆ１５０３）。このように第四の方法は、通信パラメータ自動設定処理のなかで鍵交換もあわせて実施することを特徴としている。
【０１６３】
第四の方法であれば、同一のネットワークであっても装置間のペアワイズ鍵はそれぞれ異なるためセキュリティが向上する。また通信パラメータ設定処理内で４ウェイハンドシェイク相当の処理を実施することにより、トータルの接続時間を短縮することが可能となる。
【０１６４】
また、この説明ではグループ鍵交換は別途実施するとしたが、グループ鍵交換までも通信パラメータ設定処理内で実施すれば、さらにトータルの接続時間を短縮することが可能となる。
【０１６５】
以上で説明した、ＩＥＥＥ８０２．１１ｉ準拠の方法とあわせて５つの方法については、システムとしてどれか１つを選んでも良いし、どの方法を使用するかの情報を通信パラメータに含めて提供するようにしてもよい。また、通信パラメータ自動設定処理のモードによって動的に切り替えを実施しても良い。
【０１６６】
ここでは、通信パラメータ自動設定処理のモードによって動的に切り替えを実施する場合について、図１６を用いて説明を行う。
【０１６７】
通信パラメータ自動設定処理によって通信パラメータとして鍵交換が必要なＷＰＡ−ＰＳＫまたはＷＰＡ２−ＰＳＫ等が選択されたとする。この場合、既にネットワークで利用されている鍵交換方式を判定する（Ｓ１６０１）。この判定処理により、既に何らかの鍵交換方式が選択されている場合は（Ｓ１６０１−２のＹｅｓ）、その方式をそのまま使用する。特に選択されていない場合については（Ｓ１６０１−２のＮｏ）、引き続き通信パラメータ自動設定の処理モードを判定する（Ｓ１６０２）。
【０１６８】
ここで述べる処理モードとは、例えば通信パラメータ自動設定処理によって設定された通信パラメータを恒久的に使用するか、一時的なセッション情報として使用するかなどがある。
【０１６９】
処理モードによっても、どの鍵交換方式を利用するかが確定しない場合は（Ｓ１６０２−２のＮｏ）、引き続き同一ネットワークに存在する通信装置の台数を判定する（Ｓ１６０３）。そして、通信装置の台数によって好適な鍵交換方式を選択する。たとえば、通信装置が２台の場合には、ＩＥＥＥ８０２．１１ｉに完全準拠し、通信装置が３台以上の場合には、ＷＰＡ−ＮＯｎｅを使用する。
【０１７０】
このように本実施形態によれば、ネットワークに参加中の装置の設定ボタンが操作された場合に、当該装置が提供装置となって通信パラメータの提供処理を実行する。そのため、ユーザはネットワークに参加中の機器の中から提供装置、受信装置を意識することなく、任意の装置を選択すれば、通信パラメータの提供を受けることができる。
【０１７１】
つまり、提供装置を選択すること無く、任意の機器の設定ボタンを操作することで、ネットワークへ新規に機器を追加することが可能となる。また、提供処理の終了後、増加させていたビーコンの送信頻度を元に戻すことにより、ビーコン送信による消費電力を低減することができる。なお、通信パラメータの提供処理開始後の直後にビーコンの送信頻度を元に戻せば、ビーコン送信による消費電力をより効率的に低減することができる。
【０１７２】
そして通信パラメータを簡単に安全に提供した後に、ネットワークへ新規追加する際に、鍵交換アルゴリズムについての選択肢を広げ、それを自動的に判定して設定することにより、ネットワークを形成する際のユーザのストレスを低減させることができる。また、安全・簡単・短時間にネットワークを構築することができる。
【０１７３】
＜第２実施形態＞
第２実施形態においては、通信パラメータの中でもセキュリティレベルに直接影響する暗号鍵を新規に生成するか、すでに保持しているものを再利用するのかということに着目する。本実施形態では、提供する通信パラメータに含まれる暗号鍵を新規に生成をするか否かを、当該通信装置のネットワークへの参加状態に基づいて決定する。全ての構成は第１実施形態と同様であるが、一部判定処理に追加がある。既に第１実施形態で説明済みの図８に基づいて、第２実施形態に特徴的な、暗号鍵を新規に生成をするか否かの判定処理について説明する。
【０１７４】
図８のＳ８０２において、ネットワークに参加していると判定した場合には、後述する通信パラメータ提供処理において提供を行う通信パラメータのうち、特に暗号鍵については、新規に作成することはしない。この場合、既に参加しているネットワークに共通の暗号鍵を通信パラメータの一部として提供するものとする。
【０１７５】
ネットワークに参加していないと判定した場合には、後述する通信パラメータ提供処理において提供を行う通信パラメータのうち、暗号鍵については、新規に生成を行う。上記暗号鍵を新規に生成する際には、上記暗号鍵はランダムに生成される。
【０１７６】
上記暗号鍵をランダムに生成する際には、例えば、Ｓ−ｂｏｘとよばれる入力に対する出力が不規則に生成され、その動作を解析することが困難であるようなランダム関数を利用するものとする。このようなランダム関数に基づいて暗号鍵を生成することにより、同一の暗号鍵が再利用されることを防止でき、ネットワークの秘匿性を高めることが可能となる。
【０１７７】
ここで、この「ネットワークに参加している」という意味について説明する。
【０１７８】
「ネットワークに参加している」とは、例えば、通信装置が、検索信号（プローブリクエスト）を送信することによる所謂アクティブスキャンを実施した際に、
・自通信装置が保有するＢＳＳＩＤと同一のＢＳＳＩＤを保有し、
・異なるＭＡＣアドレスを持つ通信装置から検索応答信号（プローブレスポンス）を受信した場合をさす。なお、相手装置の検索処理にあたっては、アクティブスキャンではなく、相手装置の報知信号（ビーコン）あるいは検索応答信号（プローブレスポンス）を観測するだけの所謂パッシブスキャンによってもよい。パッシブスキャンの場合でも、自通信装置が保有するＢＳＳＩＤと同一のＢＳＳＩＤを保有し、異なるＭＡＣアドレスを持つ通信装置を発見した場合を「ネットワークに参加している」とみなす。
【０１７９】
また、同一のＢＳＳＩＤで、異なるＭＡＣアドレスを持つ通信装置を発見しただけでなく、当該通信装置と上位レイヤによる通信が可能な場合に「ネットワークに参加している」と判定するようにしてもよい。すなわち、同一のＢＳＳＩＤで、異なるＭＡＣアドレスを持つ通信装置を発見した場合でも上位レイヤによる通信が不可能であれば、「ネットワークに参加していない」と判定する。例えば、ネットワークレイヤのアプリケーションであるＰｉｎｇを用いて、Ｐｉｎｇを送信した際に、上記Ｐｉｎｇについての応答が返却される場合には、作成済みの暗号鍵を提供する。そして、上記Ｐｉｎｇについての応答が返却されなかった場合に、新規に暗号鍵を作成するという処理をしてもよい。以上の処理について図１７によって説明する。
【０１８０】
図１７は、図８のＳ８０２におけるネットワーク参加中か否かの判定処理、及び該判定結果に基づいてＳ８２２にて提供する暗号鍵を決定する詳細なフローチャートである。
【０１８１】
まず、検索処理の実施タイマＴ１７を開始する（Ｓ１７０１）。引き続きタイマＴ１７が満了しているか否かを確認（Ｓ１７０２）する。ここでタイマが満了している場合は、当該提供装置がネットワークに参加していないものと判断され、暗号鍵を前述したランダム関数等を用いて新規に生成する（Ｓ１７０８）。
【０１８２】
一方、Ｓ１７０２においてタイマＴ１７が満了していない場合は、検索処理を実施するために、検索信号（プローブリクエスト）を送信する（Ｓ１７０３）。検索信号に対しての検索応答信号を受信したか否かを判定する（Ｓ１７０４）。ここで検索応答信号を受信しない場合は、Ｓ１７０２の処理に戻り、タイマＴ１７が満了するまで検索処理を繰り返す。
【０１８３】
Ｓ１７０４において検索応答信号を受信した場合は、検索応答信号の結果を判定し、検索応答信号の内容が自通信装置と同一ＢＳＳＩＤでかつ自通信装置と異なるＭＡＣアドレスであるか否かを判定する（Ｓ１７０５）。判定の結果、異なるＢＳＳＩＤである場合は、再度Ｓ１７０２の処理に戻り、タイマＴ１７が満了するまで検索処理を繰り返す。
【０１８４】
Ｓ１７０５において同一ＢＳＳＩＤでありＭＡＣアドレスの異なる通信装置を検出した場合は、上記通信装置と上位レイヤで通信が可能かを判定する（Ｓ１７０６）。上位レイヤの通信としては、前述した通り例えばＰｉｎｇ  Ｒｅｑを送信した際に、Ｐｉｎｇ  Ｒｅｓｐ．が返却されてくるか否かを判定する。Ｓ１７０６の判定処理において、上位レイヤレベルで通信ができない場合は、再度Ｓ１７０２の処理に戻りネットワーク検索処理からやり直す。
【０１８５】
一方Ｓ１７０６の処理において、上位レイヤとの通信が可能であると判定された場合は、上記ネットワークを維持するために、暗号鍵は新規に生成せず、現在自通信装置が設定中の暗号鍵をそのまま提供する通信パラメータとして用いる（Ｓ１７０７）。こうして、図１７のＳ１７０７、又はＳ１７０８で決定された暗号鍵を含む通信パラメータが、図８のＳ８２２における通信パラメータ提供処理により受信装置へ提供される。
【０１８６】
このように、ネットワークへの参加の有無によって、提供する暗号鍵を新規に生成するか既存の鍵を使いまわすかを決定する。
【０１８７】
このような暗号鍵の新規作成制御を行うことによって、通信パラメータ自動設定を行う際の安全性を高めることができる。なお、ここで説明した暗号鍵の新規作成制御については、ユーザの意思により前述の制御を全く行わないという選択も可能としてもよい。
【０１８８】
ここで説明した暗号鍵の新規作成制御を行うことによって、通信接続処理ごとに鍵を変えることができる。これは、共通鍵を永続的に使用する場合と比較すると通信の安全性が高まっているといえる。
【０１８９】
以上のように本実施形態によれば、ユーザの利便性を損なうことなく通信パラメータに含まれる暗号鍵を更新することができる。
【０１９０】
＜第３実施形態＞
第３実施形態においては、ネットワークへ参加中か否かの判断基準として、自通信機器の電源を投入直後の通信パラメータ設定処理であるか否かを判定する場合について説明する。電源投入直後から初めての通信パラメータ設定処理が行われた場合、ネットワークには参加していないものと考えられる。一方で電源投入してから２回目以降の通信パラメータ設定処理の場合、その前に行った通信パラメータ設定処理によって設定された通信パラメータのネットワークに参加中であると考えられる。そこで、本実施形態では、自通信機器の電源投入後から初めての通信パラメータ提供処理の際には上記暗号鍵を生成し、２回目以降の通信パラメータ提供処理の際には、暗号鍵は再生成しないものとする。
【０１９１】
実装方法としては、通信パラメータ全てもしくは、通信パラメータのうち暗号鍵のみについては、記憶部１０３等の不揮発性メモリに保存することなく、通信機器の電源供給が断たれた時点で失われるというような実装が可能である。
【０１９２】
全ての構成は第１実施形態と同様であるが、一部判定処理に追加がある。既に第１実施形態で説明済みの図８に基づいて、第３実施形態に特徴的な判定処理について説明する。
【０１９３】
図１８は図８のＳ８０２におけるネットワーク参加中か否かの判定処理、及び該判定結果に基づいてＳ８２２にて提供する暗号鍵を決定する詳細なフローチャートである。
【０１９４】
まず、自装置における過去の通信パラメータ提供処理の履歴を参照する（Ｓ１８０１）。上記履歴には、通信装置における通信パラメータ提供処理および受信処理についての動作履歴が記録されているものとする。上記履歴は、通信装置の電源断によって初期化されても良い。または、通信パラメータ提供処理および受信処理についての動作履歴とともに通信装置の電源断、電源投入それぞれについての履歴が時系列に記録されていても良い。上記履歴は、通信装置の電源投入後からの通信パラメータ提供処理の実施の有無を確認するための記録となるものであれば、どのような体裁であっても構わない。
【０１９５】
上記履歴を参照して、電源投入後からの通信パラメータ提供処理の実行履歴の有無を確認する（Ｓ１８０２）。ここで実行履歴が存在する場合は、現在通信装置が設定済みである暗号鍵をそのまま通信パラメータとして利用する（Ｓ１８０３）。一方Ｓ１８０２において実行履歴が存在しない場合は、暗号鍵を新規に生成する（Ｓ１８０４）。ここで暗号鍵を新規に生成する際には第２実施形態に示したようにランダム関数を用いて新規作成を行うものとする。
【０１９６】
こうして、図１８のＳ１８０３、又はＳ１８０４にて決定された暗号鍵を含む通信パラメータが、図８のＳ８２２における通信パラメータ提供処理により受信装置へ提供される。上記提供処理が正常に完了した場合は、上記履歴に、通信パラメータ提供処理が正常に完了した旨を記録する。通信パラメータ提供処理が正常に完了しなかった場合は、履歴に記録することなく処理を終了する。
【０１９７】
このように、通信装置の電源投入後からの通信パラメータ提供処理の実施の有無によって、提供する暗号鍵を新規に生成するか既存の鍵を使いまわすかを決定する。
【０１９８】
以上のように第３実施形態によれば、ユーザに装置状態を意識させることなく適切なタイミングで通信パラメータに含まれる暗号鍵を更新することができる。
【０１９９】
＜第４実施形態＞
第１実施形態および第２実施形態においては、
・図４に示すような、新規にアドホックネットワークを構成し、通信パラメータの自動設定を行う場合と、
・図９に示すような、確立済みのアドホックネットワークへ通信パラメータの自動設定を用いて装置を追加する場合とが存在している。そして、それらの２つの処理の区別は、図８におけるＳ８０２のネットワークに参加中かどうかの判定処理に基づいて行っていた。
【０２００】
即ち、第２実施形態では、ネットワークへの参加状態として、ネットワークに参加中か否かを判定した。第４実施形態では、装置がネットワークへ参加或いはネットワークを構築する際の動作モードに基づいて参加状態を判断する。本実施形態では、初期設定情報モードと追加設定情報モードの２つのモードのどちらかを指定することで、処理を切替える場合を説明する。なお、新規にアドホックネットワークを構成し、通信パラメータの自動設定を行う場合を初期設定情報モードという。また、確立済みのアドホックネットワークへ通信パラメータの自動設定を用いて装置を追加する場合を追加設定情報モードという。
【０２０１】
上記２つのモードは、ユーザが通信パラメータ自動設定を開始する際に指定するものとする。または、機器によっては必ず初期設定情報モードで動作するなどの制御を行っても良い。例えばユーザが上記モードを指定するためのユーザーインタフェースを持たないヘッドセットなどにおいては、常に初期設定情報モードを指定するなどの使い方がある。
【０２０２】
この場合の通信装置の処理フローについて説明したのが図１９である。図１９は図８からＳ８０２を取り除き、Ｓ１９０１を追加した図であり、Ｓ８０１およびＳ８０３からＳ８２７までの処理は図８と同様である。
【０２０３】
よって、図１９について図８との差分についてのみ説明する。
通信パラメータの開始を表す設定ボタン１０６が押される（Ｓ８０１）。
ボタンが押下された装置では、自身の動作モードが初期設定情報モードなのか追加設定情報モードなのかを調べる（Ｓ１９０１）。
【０２０４】
追加設定情報モードであれば、別の新しい装置を起動中のネットワークに参加させるために、自身の役割を提供装置に設定し（Ｓ８２０）、ビーコン送信を開始の上（Ｓ８２１）、新しい装置との間で通信パラメータ提供処理を開始する（Ｓ８２２）。なお、自身が現在すでにネットワークに参加している場合には、前述の図６にある開始通知処理を起動する。
【０２０５】
ここで、ビーコン（報知信号）、検索信号（プローブリクエスト）、検索応答信号（プローブレスポンス）には、
・通信パラメータの自動設定処理機能を有する、或いは処理中を通知する情報要素、
・役割を示す情報要素、
・提供機能が起動中か否かを示す情報要素、
が信号に応じて必須あるいはオプションとして含まれることをここに明記しておく。
【０２０６】
つぎに、Ｓ１９０１の判定において、初期設定情報モードである場合には、動作役割の調停を行うためにネットワークを作成し（Ｓ８０３）、役割を提供装置候補に設定した上で（Ｓ８０４）、役割調停で用いるタイマＴ１を開始する（Ｓ８０５）。
【０２０７】
これ以降の説明は第１実施形態および第２実施形態と同様であるため割愛する。また、図８以外の全ての構成は第１実施形態および第２実施形態と同様である。但し、ステップＳ８２２の通信パラメータ提供処理において、初期設定情報モードの場合には、ステップＳ１７０８で上述したような、ランダム関数等を用いて新たに生成した暗号鍵を、提供すべき通信パラメータに含ませる。他方、追加設定情報モードの場合には、新規に暗号鍵を生成せず、設定済みの暗号鍵を通信パラメータに含ませる。
【０２０８】
本実施の形態によれば、ユーザの意思や通信装置の機能（たとえばユーザインタフェースなど）に応じた通信パラメータの自動設定処理が可能となる。
【０２０９】
以上、本発明の好適な実施形態を説明したが、これは本発明の説明のための例示であって、本発明の範囲をこの実施形態のみに限定する趣旨ではない。本発明の要旨を逸脱しない範囲で、実施形態は種々に変形することが可能である。
【０２１０】
上記各実施形態では、提供装置による単位時間当たりのビーコンの送信回数を他の装置よりも多くするために、ＣＷの値を変更する例について説明したがこれに限られるものではない。提供装置が他の装置よりもビーコンの送信回数を多くできるのであれば、他のパラメータを用いてもよい。例えば、ビーコンの送信間隔（ビーコン周期）を変更できるのであれば、提供装置においてビーコンの送信間隔を小さくすることによって、単位時間当たりにビーコンの送信回数を多くすることができる。
【０２１１】
上記説明では、ＣＷの変更は初期値より大きくする、又は小さくすると説明した。この変更は、各装置のＣＷの初期値が同一とは限らないため、変更可能な範囲内での最小値（ＣＷｍｉｎ）又は最大値（ＣＷｍａｘ）に変更すれば、ビーコンの送信頻度（回数）をより確実に変更できる。また、開始通知メッセージは、通信パラメータの自動設定が開始されたことを通知するメッセージとして説明した。
【０２１２】
しかしながら、開始通知メッセージは、設定ボタン１０６が操作されたことを通知するメッセージ、提供装置が他の受信装置に通信パラメータを提供できるようにするためのメッセージと言い換えることもできる。
【０２１３】
また、上記説明はＩＥＥＥ８０２．１１準拠の無線ＬＡＮを例に説明した。しかしながら、本発明は、ワイヤレスＵＳＢ、ＭＢＯＡ、Ｂｌｕｅｔｏｏｔｈ（登録商標）、ＵＷＢ、ＺｉｇＢｅｅ等の他の無線媒体において実施してもよい。また、有線ＬＡＮ等の有線通信媒体において実施してもよい。
【０２１４】
ここで、ＭＢＯＡは、Ｍｕｌｔｉ  Ｂａｎｄ  ＯＦＤＭ  Ａｌｌｉａｎｃｅの略である。また、ＵＷＢには、ワイヤレスＵＳＢ、ワイヤレス１３９４、ＷＩＮＥＴなどが含まれる。
【０２１５】
また、通信パラメータとしてネットワーク識別子、暗号方式、暗号鍵、認証方式、認証鍵を例にしたが、他の情報であってもよいし、他の情報も通信パラメータには含まれるようにしてもよいことは言うまでも無い。
【０２１６】
本発明は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録したコンピュータ読み取り可能な記憶媒体を、システムあるいは装置に供給するよう構成することによっても達成されることはいうまでもない。この場合、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読出し実行することにより、上記機能が実現されることとなる。なお、この場合、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【０２１７】
プログラムコードを供給するための記憶媒体としては、例えば、フロッピ（登録商標）ディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭなどを用いることができる。
【０２１８】
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現される場合に限られない。例えば、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０２１９】
さらに、記憶媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、前述した実施形態の機能が実現される場合も含まれる。つまり、プログラムコードがメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって実現される場合も含まれる。
【図面の簡単な説明】
【０２２０】
【図１】装置を構成するブロック図である。
【図２】本発明の実施形態における装置内のソフトウェア機能ブロック図である。
【図３】本発明の実施形態における第一のネットワーク構成図である。
【図４】本発明の実施形態における装置Ａ、装置Ｂの動作を表すシーケンス図である。
【図５】本発明の実施形態における第二のネットワーク構成図である。
【図６】本発明の実施形態における提供装置の通知処理動作を表すフローチャートである。
【図７】本発明の実施形態における代理応答動作を表すフローチャートである。
【図８】本発明の実施形態における通信パラメータ自動設定動作を表すフローチャートである。
【図９】本発明の実施形態における装置Ａ、装置Ｂ、装置Ｃの動作を表すシーケンス図である。
【図１０】サポートしている認証・暗号方式の表を示す図である。
【図１１】鍵交換アルゴリズムでの保有鍵・鍵交換シーケンスの比較表を示す図である。
【図１２】鍵交換処理のシーケンス図（その１）である。
【図１３】鍵交換処理のシーケンス図（その２）である。
【図１４】鍵交換処理のシーケンス図（その３）である。
【図１５】鍵交換処理のシーケンス図（その４）である。
【図１６】鍵交換アルゴリズム選択アルゴリズムを示す図である。
【図１７】第２実施形態における、暗号鍵の新規生成判定処理を示すフローチャートである。
【図１８】第２実施形態における、暗号鍵の新規生成判定処理を示すフローチャートである。
【図１９】第４実施形態における通信パラメータ自動設定動作を表すフローチャートである。
【図１】
2010081117.tif 000003
【図２】
2010081117.tif 000004
【図３】
2010081117.tif 000005
【図４】
2010081117.tif 000006
【図５】
2010081117.tif 000007
【図６】
2010081117.tif 000008
【図７】
2010081117.tif 000009
【図８】
2010081117.tif 000010
【図９】
2010081117.tif 000011
【図１０】
2010081117.tif 000012
【図１１】
2010081117.tif 000013
【図１２】
2010081117.tif 000014
【図１３】
2010081117.tif 000015
【図１４】
2010081117.tif 000016
【図１５】
2010081117.tif 000017
【図１６】
2010081117.tif 000018
【図１７】
2010081117.tif 000019
【図１８】
2010081117.tif 000020
【図１９】
2010081117.tif 000021