(57)【特許請求の範囲】
【請求項１】
通信装置であって、
前記通信装置と共にＩＥＥＥ８０２．１１標準に準拠した無線ネットワークを形成する第１の他の通信装置の情報を取得する取得手段と、
前記第１の他の通信装置とは異なる第２の他の通信装置から送信されたＩＥＥＥ８０２．１１標準におけるプローブリクエストに対するプローブレスポンスを前記第２の他の通信装置に送信する送信手段と、
を有し、
前記送信手段は、前記取得手段により取得した前記第１の他の通信装置の情報が付加されたプローブレスポンスを送信することを特徴とする通信装置。
【請求項２】
前記送信手段は、前記第１の他の通信装置による所定のサービスが行われている期間は、前記第１の他の装置の情報が付加されたプローブレスポンスを送信し、前記第１の他の装置による所定のサービスが行われていない期間は、前記第１の他の装置の情報が付加されていないプローブレスポンスを送信することを特徴とする請求項１に記載の通信装置。
【請求項３】
前記プローブリクエストを受信した場合に、当該プローブリクエストに応答するか否かを判断する判断手段を有し、
前記送信手段は、前記判断手段により前記プローブリクエストに応答すると判断した場合に、前記プローブレスポンスを送信することを特徴とする請求項１又は請求項２に記載の通信装置。
【請求項４】
前記判断手段は、前記プローブリクエストが送信される前にビーコン信号を送信した装置が前記通信装置か否かに基づいて、前記プローブリクエストに応答するか否かを判断することを特徴とする請求項１乃至請求項３のいずれか１項に記載の通信装置。
【請求項５】
前記取得手段により取得した前記第１の他の装置の識別情報が付加されたビーコン信号を送信する報知手段を有することを特徴とする請求項１乃至請求項４のいずれか１項に記載の通信装置。
【請求項６】
前記取得手段及び送信手段は、基地局を介さずに通信装置同士が直接通信する通信モードにおいて前記処理を行うことを特徴とする請求項１乃至請求項５のいずれか１項に記載の通信装置。
【請求項７】
前記第１の他の通信装置の情報は、前記第１の他の通信装置を識別するための識別情報であることを特徴とする請求項１乃至請求項６の何れか１項に記載の通信装置。
【請求項８】
前記識別情報は、ＭＡＣアドレスであることを特徴とする請求項７記載の通信装置。
【請求項９】
通信装置の制御方法であって、
前記通信装置と共にＩＥＥＥ８０２．１１標準に準拠した無線ネットワークを形成する第１の他の通信装置の情報を取得する取得工程と、
前記第１の他の通信装置とは異なる第２の他の通信装置から送信されたＩＥＥＥ８０２．１１標準におけるプローブリクエストに対するプローブレスポンスを前記第２の他の通信装置に送信する送信工程と、
を有し、
前記送信工程では、前記取得工程において取得した前記第１の他の通信装置の情報が付加されたプローブレスポンスを送信することを特徴とする通信装置の制御方法。
【請求項１０】
請求項１乃至８の何れか一項に記載の通信装置として、コンピュータを動作させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信装置及び通信方法に関する。
【背景技術】
【０００２】
無線通信は有線通信に比べて、盗聴などの行為を知らぬ間に実施される危険性があるため、認証や暗号といったセキュリティ機能が重要となっている。
【０００３】
ＩＥＥＥ８０２．１１標準の無線ＬＡＮ通信では、ネットワーク識別子であるＳＳＩＤ、周波数チャネル、認証方式、暗号方式、暗号鍵などの通信パラメータを設定することにより、通信のセキュリティを確保している。
【０００４】
これら通信パラメータの設定は、専門性が高く容易に一般ユーザが設定することが難しい。そのため、ＩＥＥＥ８０２．１１標準の無線ＬＡＮ通信では、様々な企業が簡単に初期設定を可能とする技術を開発している。また、標準規格としてまとめられたＷＰＳ（Ｗｉ−Ｆｉ  Ｐｒｏｔｅｃｔｅｄ  Ｓｅｔｕｐ）も発表されている。
【０００５】
ＷＰＳにおいては、通信パラメータを提供する機能をレジストラと呼び、レジストラ機器から通信パラメータの提供を受け、設定する機能をエンローリと呼ぶ。アクセスポイントがレジストラ機能を有しても良いし、アクセスポイントとは異なる機器がアクセスポイントに接続された状態でレジストラとして存在しても構わない。ＷＰＳにおいては、レジストラ機器とエンローリ機器との間の通信パラメータの設定方式には２つある。１つは、レジストラ機器もしくはアクセスポイントと、エンローリ機器との間で同じ８桁の数字（ＰＩＮ）を入力するＰＩＮ方式である。もう１つは、レジストリ機器とエンローリ機器の設定ボタンを一定期間の間に押すプッシュボタン方式（ＰＢ方式）である。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００５−２２３７４５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかし、各社の簡単設定方式やＷＰＳにおいて規定されているのは、インフラストラクチャーモードと呼ばれるアクセスポイントを介した通信であり、アドホックモードについては十分な仕様が存在しない。現状の無線ＬＡＮの利用形態としては、アクセスポイントを介したインフラモードが大半を占めるが、今後はゲーム、カメラなどのポータブル機器に無線ＬＡＮが搭載されてくる可能性がある。これらの機器では、固定設置されているアクセスポイントがなくても、機器同士で自由にネットワークを構成するアドホッモードの利用形態が増加することが予想される。
【０００８】
この際に重要になるのはインフラストラクチャーモードと同様に安全な通信路の確保であり、安全な通信路を簡単に設定できる技術である。特にアドホックモードで利用される機器はユーザインタフェイス（ＵＩ）の制限があるものが多く、ＰＩＮなどを入力するのに手間がかかる。このため、プッシュボタン方式による設定方法は重要なユースケースとなりうる。
【０００９】
ここで、インフラストラクチャーモードで規定されたＷＰＳをアドホックモードに適用することを考えたとき、アドホックモード特有の性質から技術的な課題が存在する。インフラストラクチャーモードにおいては、報知信号であるビーコンを送信するのはアクセスポイントである。またネットワーク探索要求であるＰｒｏｂｅ要求信号に対して応答を返すのもアクセスポイントである。
【００１０】
ビーコンもしくはＰｒｏｂｅ要求の応答には、ＷＰＳに関連する重要なパラメータが存在する。例えば通信パラメータを交換する方法として、ＰＩＮ方式とプッシュボタン方式のどちらを選択するかなどのパラメータである。
【００１１】
一方、アドホックモードにおいては、ビーコンを送信する端末が一意に定まっていない。ネットワークを構成する機器で分散してどれか一台がある確率に従ったアルゴリズムでビーコンを送信する。つまり２台の端末が有る場合は、それぞれ５０％の確立でビーコンを送信することになる。また、アドホックモードでは、Ｐｒｏｂｅ要求信号の応答は、ビーコンを送信した機器が行うことが定められている。
【００１２】
アドホックモードでは、レジストラ機器がビーコンを送信するとは限らない。また、レジストラ機器は、どの機器が次にビーコンを出す役割になるか分からない。そのため、レジストラ機器の意向を他の機器に確実に報知することはできない。唯一、レジストラ機器がビーコンを送信するときにレジストラ機器の意向を報知できる。この方式では、新しくネットワークに参加してきた機器はレジストラ機器がビーコンを送信する時以外は、レジストラ機器に関する情報を獲得することができない。
本発明は、新たにネットワークに参加する機器が、当該ネットワークに関する必要な情報をより確実に獲得できるようにすることを目的とする。
【課題を解決するための手段】
【００１３】
本発明は、通信装置であって、前記通信装置と共にＩＥＥＥ８０２．１１標準に準拠した無線ネットワークを形成する第１の他の通信装置の情報を取得する取得手段と、前記第１の他の通信装置とは異なる第２の他の通信装置から送信されたＩＥＥＥ８０２．１１標準におけるプローブリクエストに対するプローブレスポンスを前記第２の他の通信装置に送信する送信手段と、を有し、前記送信手段は、前記取得手段により取得した前記第１の他の通信装置の情報が付加されたプローブレスポンスを送信することを特徴とする。
【発明の効果】
【００１４】
本発明によれば、新たにネットワークに参加する機器が、当該ネットワークに関する必要な情報をより確実に獲得できるようになる。
【図面の簡単な説明】
【００１５】
【図１】実施形態の無線ネットワークの構成
【図２】実施形態のカメラ１０１、１０２の構成図
【図３】実施形態のプリンタ１０３の構成図
【図４】第一実施形態のプリンタ１０３の動作フローチャート
【図５】第一実施形態のカメラ１０１の動作フローチャート
【図６】第一実施形態のカメラ１０２の動作フローチャート
【図７】第一実施形態のプリンタ１０３、カメラ１０１の動作フローチャート
【図８】第一実施形態のシーケンス図
【図９】第二実施形態のカメラ１０２の動作フローチャート
【図１０】第三実施形態のプリンタ１０３の動作フローチャート
【図１１】第三実施形態のカメラ１０１の動作フローチャート
【図１２】第二実施形態のカメラ１０２の動作フローチャート
【図１３】第三実施形態のシーケンス図
【発明を実施するための形態】
【００１６】
（第一の実施形態）
図１は、無線通信によりデータ伝送を可能とする無線通信システムの構成例を示す図である。図１において、デジタルカメラ（１０１〜１０２）は、無線通信機能を搭載しており、適切な設定を施せば無線通信手段を用いて、デジタルカメラ同士、あるいは、プリンタ（１０３）との間で、データ伝送を行うことが可能である。このように基地局を介さずに端末同士が直接通信する通信モードをアドホックモードと呼ぶ。なお、本実施形態は、ＷＰＳ（Ｗｉ−Ｆｉ  Ｐｒｏｔｅｃｔｅｄ  Ｓｅｔｕｐ）をアドホックモードに適用する例について説明する。従って、本説明においても便宜上、ＩＥＥＥ８０２．１１標準において規定される各種通信パラメータ（ネットワーク識別子であるＳＳＩＤ、周波数チャネル、認証方式、暗号方式、暗号鍵等）を他の機器に提供、管理する機器をレジストリ機器とする。また、レジストリ機器からの通信パラメータの提供を受け、設定する機器をエンローリ機器とする。なお、ＳＳＩＤとは、Ｓｅｒｖｉｃｅ  Ｓｅｔ  Ｉｄｅｎｔｉｆｉｅｒの略である。
【００１７】
図２は、デジタルカメラの機能ブロック図を示す。ここではデジタルカメラ１０１とデジタルカメラ１０２は同じ機能ブロックをもつ。
【００１８】
操作部２１０は、システムコントローラ２１１を介してＣＰＵ２１５に接続し、デジタルカメラのシャッタースイッチや各種操作キーを有する。撮像部２０２は、シャッターが押下されたときに画像を撮影するブロックであり、撮影画像は撮像処理部２０３によって処理される。表示部２０６は、ＬＣＤ表示、ＬＥＤ表示、音声表示等、ユーザに対する情報を表示するブロックであり、表示処理部２０７によってその表示内容の制御処理が行われる。また表示部２０６に表示された情報から選択するなどの操作は操作部２１０と連動して行われることになる。すなわち、表示部２０６と操作部２１０とがユーザインタフェイスを構成することになる。メモリカードＩ／Ｆ２０８は、メモリカード２０９を接続する為のインタフェースである。ＵＳＢＩ／Ｆ２１２は、外部機器とＵＳＢを用いて接続する為のインタフェースである。オーディオＩ／Ｆ２１４は、音信号を外部機器と接続する為のインタフェースである。
【００１９】
これらのブロック図に示される機能部分は、ＣＰＵ２１５からの制御によって処理され、ＣＰＵ２１５によって制御されるプログラムは、ＲＯＭ２１６、もしくは、フラッシュＲＯＭ２１３に格納される。ＣＰＵ２１５によって処理されるデータはＲＡＭ２１７、もしくはフラッシュＲＯＭ２１３に対して、書き込み、読み込みが行われる。
【００２０】
無線通信機能部２０４は無線通信を行うブロックであり、ＲＦ部２０５は、他の無線通信機器との間で無線信号の送受信を行う。ＲＦ部２０５と無線通信機能部２０４は、一つのブロックとして実現される場合もあるが、ここでは分離して示した。無線通信機能部２０４の機能は無線の規格となるパケットのフレーミング、データに対する応答処理、データの暗号／復号処理などが実装されている。無線通信機能部２０４とＲＦ部２０５を動作させるプログラムは通常ＲＯＭ２１６上に置かれ、ＣＰＵ２１５上で動作する。またフラッシュＲＯＭ２１３は不揮発性の記憶領域であり、ここに無線通信の設定情報などを記憶する。本実施形態では、無線通信機能部２０４とＲＦ部２０５とにより、ＩＥＥＥ８０２．１１標準に代表される無線ＬＡＮ通信を行う。
【００２１】
アドホックモードにおけるビーコンの送信の制御はＲＦ部２０５無線通信機能部２０４により実施される。ビーコン信号は、報知信号の一種であり、ネットワークにブロードキャストされる。ビーコンの送信はビーコンコンテンションウィンドウと呼ばれる範囲（０〜ＣＷｍａｘ）で乱数を決定して、その乱数値を一定間隔でデクリメントして０になった時点でビーコンを送信する。ビーコンコンテンションウィンドウはＣＰＵ２１５上で動作するプログラムで変更できるものもあれば、無線通信機能部２０４で固定の値をもつものも存在する。ビーコンに付加する情報はＣＰＵ２１５上で動作するプログラムからの所定の設定をすることで、無線通信部２０４で実際に送信されるフレームに格納されてＲＦ部２０５を介して送信される。付加した情報を削除する場合も、同様にＣＰＵ２１５上で動作するプログラムからの所定の設定をすることで、削除することが可能となる。
【００２２】
図３は、プリンタ１０３の機能ブロックを示す。操作部３１０は、システムコントローラ３１１を介してＣＰＵ３１５に接続されている。プリントエンジン３０２は、実際に用紙に画像をプリントする機能ブロックであり、プリントする画像はプリント処理部３０３によって処理される。表示部３０６は、ＬＣＤ表示、ＬＥＤ表示、音声表示等、ユーザに対する情報を表示するブロックであり、表示処理部３０７によって処理される。また表示部３０６に表示された情報から選択するなどの操作は操作部３１０を介して行われる。メモリカードＩ／Ｆ３０８は、メモリカード３０９を接続する為のインタフェースである。ＵＳＢＩ／Ｆ３１２は、外部機器とＵＳＢを用いて接続する為のインタフェースである。パラレルＩ／Ｆ３１４は、外部機器とパラレル通信を用いて接続する為のインタフェースである。
【００２３】
これらのブロック図に示される機能部分は、ＣＰＵ３１５からの制御によって処理され、ＣＰＵによって制御されるプログラムは、ＲＯＭ３１５、もしくは、フラッシュＲＯＭ３１３に格納される。ＣＰＵ３１５によって処理されるデータは、ＲＡＭ３１７、もしくは、フラッシュＲＯＭ３１３に対して、書き込み、読み込みが行われる。
【００２４】
無線通信機能部３０４は無線通信を行うブロックであり、ＲＦ部３０５は、他の無線通信機器との間で無線信号の送受信を行う。ＲＦ部３０５と無線通信機能部３０４は一つのブロックとして実現される場合もあるが、ここでは分離して示した。無線通信機能部３０４の機能は無線の規格となるパケットのフレーミング、データに対する応答処理、データの暗号／復号処理などが実装されている。無線通信機能部３０４とＲＦ部３０５をアプリケーションの指示により動作させるプログラムは通常ＲＯＭ３１６上に置かれ、ＣＰＵ３１５上で動作する。またフラッシュＲＯＭ３１３は不揮発性の記憶領域であり、ここに無線通信の設定情報などを記憶する。本実施形態では、無線通信機能部２０４とＲＦ部２０５とにより、ＩＥＥＥ８０２．１１標準に代表される無線ＬＡＮ通信を行う。
【００２５】
アドホックモードにおけるビーコンの送信の制御はＲＦ部３０５無線通信機能部３０４により実施される。ビーコンの送信はビーコンコンテンションウィンドウと呼ばれる範囲（０〜ＣＷｍａｘ）で乱数を決定して、その乱数値を一定間隔でデクリメントして０になった時点でビーコンを送信する。ビーコンコンテンションウィンドウはＣＰＵ３１５上で動作するプログラムで変更できるものもあれば、無線通信機能部３０４で固定の値をもつものも存在する。ビーコンに付加する情報はＣＰＵ３１５上で動作するプログラムからの所定の設定をすることで、無線通信機能部３０４で実際に送信されるフレームに格納されてＲＦ部３０５を介して送信される。付加した情報を削除する場合も、同様にＣＰＵ３１５上で動作するプログラムからの所定の設定をすることで、削除することが可能となる。
【００２６】
以上、実施形態におけるデジタルカメラ１０１、１０２とプリンタ１０３のそれぞれの構成について説明した。なお、ＲＦ部にはアンテナが設けられるが、外部に突出する形態で有するものとは限らない。特に、デジタルカメラの場合、携帯性が重要なファクタであるから、アンテナは外部に突出するのではなく、内蔵もしくは表面上に実装されることが望ましい。
【００２７】
本実施形態では、プリンタ１０３がネットワークを構築するための通信パラメータ提供者（レジストラ機器）になるとする。また、カメラ１０１は、既に通信パラメータを取得して所望の設定を終了してプリンタ１０３と無線通信を行える。カメラ１０２は、パラメータ提供者から新しく通信パラメータを取得しようとしている。つまり、カメラ１０２は、エンローリ機器として機能する。
【００２８】
プリンタ１０３とカメラ１０２は、ほぼ同時にボタンを押下することで、同一の通信パラメータを共有することが可能となる（ＷＰＳのＰＢ方式に相当）。
【００２９】
まず、プリンタ１０３の動作を図４のフローチャートをもとに説明する。なお、図４の動作は、ＲＯＭ３１６、もしくは、フラッシュＲＯＭ３１３に格納されるプログラムをＣＰＵ３１５が実行し、各部を制御することにより行われる。なお、プリンタ１０３は、カメラ１０１とあるアルゴリズムに従って、ビーコン送信を行っている。このアルゴリズムに従い、プリンタ１０３がビーコン送信の役割になると、プリンタ１０３がビーコンを送信し、カメラ１０１がビーコン送信の役割になると、カメラ１０１がビーコンを送信する。従って、プリンタ１０３とカメラ１０１とが交互にビーコンを送信しながらネットワークを構成する場合、一方の機器だけがビーコンを送信する場合、ランダムにビーコンを送信しあう場合など様々なケースがある。本実施形態は、これら様々なケースにも対応する。
【００３０】
まず、ＣＰＵ３１５は、ユーザ指示に従って、プリンタを通信パラメータ提供者（レジストラ）として設定する（Ｓ４０１）。本実施例では全ての機器は通信パラメータ提供者になりうるが、デフォルトの設定（初期設定）を通信パラメータ取得者としている。そのため、本実施形態では、ユーザ間で合意のうえでレジストラを選定し、ユーザが操作部３１０を介して指定、設定することにした。これらは特に本実施例の制約を与えるものではなく、レジストラを決定する手続きは手動で決めても、自動で決めるメカニズムを考案して構わない。
【００３１】
次に、プリンタ１０３のＣＰＵ３１５は、ユーザによる操作部３１０の通信パラメータ交換のためのボタン操作を検出すると（Ｓ４０２）、付加情報としてレジストラ情報をビーコンに付加して送信する（Ｓ４０３）。通信パラメータ交換のためのボタン操作は、表示部３０６でメニューを変更しながら所望の機能を選択するなど複数のオペレーションの結果、表示されるソフトボタンでも構わない。
【００３２】
レジストラ情報は、現在パラメータ提供サービスを実行中であるという情報、プッシュボタン方式による認証に関する情報等を含み、ビーコンには、これらの情報を特定のフォーマットで格納する。また、レジストラ情報には、ＷＰＳで規定しているＷＰＳＩＥ（ＷＰＳ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｅｌｅｍｅｎｔ）と同様な内容に加え、レジストラの宛先を示したＭＡＣアドレス（識別情報）を含む情報も含まれる。レジストラ機器であるプリンタ１０３がビーコンを送信した場合には、プリンタ１０３のＭＡＣアドレスが含まれることになる。
【００３３】
また、本説明はアドホックモードにおける動作なので、ビーコンの送信は、プリンタ１０３がビーコンを送信する役割になった場合に行われる。
【００３４】
プッシュボタン方式での通信パラメータの提供期間は安全性を考慮して、パラメータ提供サービスを開始してから一定期間内（設定期間）となっており、その期間の間、プリンタ１０３はレジストラ情報を付加してビーコンを送信する（Ｓ４０４）。この期間が満了すると、ＣＰＵ３１５は、送信するビーコンからレジストラ情報を削除する（Ｓ４０５）。
【００３５】
ＣＰＵ３１５は、設定期間の満了するまでは、エンローリ機器からパラメータ取得の要求が送られてくるかを監視する（Ｓ４０６）。エンローリ機器からのパラメータ取得の要求を受信すると、ＣＰＵ３１５は、該要求を送信したエンローリ機器に対して自身が管理する通信パラメータを提供する（Ｓ４０７）。
【００３６】
通信パラメータを提供し終わると、Ｓ４０３に戻り、設定期間が満了するまで他のエンローリ機器に対する通信パラメータ提供処理を行う。なお、本説明では、設定期間が満了するまで他のエンローリ機器に対する通信パラメータ提供処理を行う事とするが、エンローリ機器に対して通信パラメータを提供すると、処理を終了してもよい。このようにすると、意図しない機器に対して通信パラメータを提供してしまうことを防止できる。
【００３７】
次に既にプリンタ１０３と通信パラメータを交換済み（提供済）のカメラ１０１の動作を図５のフローチャートをもとに説明する。図５の動作は、ＲＯＭ２１６、もしくは、フラッシュＲＯＭ２１３に格納されるプログラムをＣＰＵ２１５が実行し、各部を制御することにより行われる。
【００３８】
カメラ１０１のＣＰＵ２１５は、プリンタ１０３からのビーコンを監視し、プリンタ１０３からのビーコンを受信すると、前回受信したプリンタ１０３からのビーコンと内容が変化しているか判断する（Ｓ５０１）。なお、カメラ１０１は、プリンタ１０３からのビーコンを監視している最中にも、カメラ１０１がビーコン送信の役割になるとビーコンを送信する。受信したビーコン内の情報に変化があるか否かを判断するために、カメラ１０１のＣＰＵ２１５は、ビーコンを受信すると、ビーコンに含まれている情報をＲＡＭ２１７に記憶しておく。この情報には、ビーコンの送信元機器のアドレス情報が含まれているため、同じアドレスの機器からのビーコンの内容を比較し、同じ機器からのビーコン情報が変化したか否かを判断する（Ｓ５０１）。
【００３９】
この判断の結果、ビーコン情報に変化がある場合、ビーコンにレジストラ情報が付加された変化か、削除された変化かを判断する（Ｓ５０２、Ｓ５０５）。
【００４０】
レジストラ情報が付加された場合は、ＣＰＵ２１５は、その内容を確認し、ＷＰＳＩＥの情報要素と通信パラメータ提供者のＭＡＣアドレスがあることを確認する（Ｓ５０３）。そして、カメラ１０１が送信するビーコンに、受信したレジストラ情報（プリンタ１０３が付加したＷＰＳＩＥとプリンタ１０３のＭＡＣアドレス）を付加するようにする（Ｓ５０４）。カメラ１０１がビーコンを送信する役割の時には、受信したレジストラ情報（プリンタ１０３が付加したＷＰＳＩＥとプリンタ１０３のＭＡＣアドレス）を付加したビーコンを送信する。このように既にレジストラ機器が存在しているネットワークと同一の通信パラメータを共有し、同じネットワークで通信可能状態にある機器は、レジストラ機器からのレジストラ情報を自身のビーコンに付加して送信する。このようにすることにより、このビーコン（レジストラ以外の機器からのビーコン）を受信した機器（エンローリ）は、レジストラ機器の情報を認識することができる。従って、レジストラ機器が常にビーコンを送信するとは限らないアドホックモードにおいても、レジストラ機器の意向（レジストラ情報）を他の機器に効率良く報知することができる。
【００４１】
また、受信したビーコン情報の変化が、レジストラ情報が削除された変化である場合は（Ｓ５０５）、カメラ１０１が送信するビーコンから、レジストラ情報が削除されるようにする（Ｓ５０６）。従って、これ以降、カメラ１０１が送信するビーコンからは、レジストラ情報が削除される。
【００４２】
プリンタ１０３の通信パラメータ提供期間は限られた時間で終了する。そのため、プリンタ１０３からのビーコンに付加されたレジストラ情報はこの期間を満了すると削除される。プリンタ１０３のビーコンからレジストラ情報が削除されると、カメラ１０１が送信するビーコンからのレジストラ情報は削除される。従って、レジストラ機器がパラメータ提供サービスを終了しているにも係らず、レジストラ機器以外の機器からレジストラ機器に関する情報がアナウンスされることを防止できる。よって、パラメータ提供サービス期間外のセキュリティも向上する。
【００４３】
次に、プリンタ１０３と、カメラ１０１が探索要求（Ｐｒｏｂｅ要求信号、探索信号）を受信した際の動作について図７のフローチャートをもとに説明する。なお、図７の動作は、図４、図５の動作と並行して行われる。また、プリンタ１０３が図７に示す動作を実行する場合は、図７の動作は、ＲＯＭ３１６、もしくは、フラッシュＲＯＭ３１３に格納されるプログラムをＣＰＵ３１５が実行し、各部を制御することにより行われる。カメラ１０１が図７に示す動作を実行する場合は、図７の動作は、ＲＯＭ２１６、もしくは、フラッシュＲＯＭ２１３に格納されるプログラムをＣＰＵ２１５が実行し、各部を制御することにより行われる。
【００４４】
ネットワーク探索要求を受信すると（Ｓ７０１）、ＣＰＵ２１５、３１５は探索要求に応答するか否かを判断する（Ｓ７０２）。アドホックモードでは、探索要求が送信される直前にビーコンを送信した機器が、探索要求に応答することが定められている。従って、ＣＰＵ２１５、３１５は探索要求を受信した直前にビーコンを送信したかどうかを判断し、自身が直前にビーコンを送信した機器である場合に、自身が探索要求に応答する機器（応答機器）であると判断する（Ｓ７０２）。他の機器が直前にビーコンを送信し、自身がビーコンを送信していなければ（Ｓ７０２）、探索要求には応答しないと判断し、処理を終了する。
【００４５】
ＣＰＵ２１５、３１５は、自身が応答機器であると判断した場合には、パラメータ提供サービス中であるか否かを判断する（Ｓ７０３）。ＣＰＵ３１５の場合は、Ｓ４０２においてボタン操作が検出され、パラメータ提供サービス状態に移行していれば、パラメータ提供サービス中であると判断する。ＣＰＵ２１５の場合は、Ｓ５０１において受信したビーコン情報に変化があり、かつ、この変化が、受信したビーコンにレジストラ情報が付加される変化であった場合には、パラメータ提供サービス中であると判断する。つまり、ビーコンを送信した機器（レジストラ機器）がパラメータ提供サービス中であり、自身もレジストラ機器からのレジストラ情報をビーコンに付加して送信する状態の時には、パラメータ提供サービス中であると判断する。
【００４６】
ＣＰＵ２１５、３１５は、パラメータ提供サービス中であると判断すると、探索要求に対する応答に、レジストラ情報（ＷＰＳＩＥと通信パラメータ提供者のＭＡＣアドレス）を付加して送信する（Ｓ７０４）。また、ＣＰＵ２１５、３１５は、パラメータ提供サービス中でないと判断すると、探索要求に対する応答に、レジストラ情報（ＷＰＳＩＥと通信パラメータ提供者のＭＡＣアドレス）を付加せず送信する（Ｓ７０５）。ＣＰＵ２１５、３１５は、探索要求の応答を、探索要求を送信した機器に対してユニキャスト送信する。
【００４７】
次に、通信パラメータを取得しようと試みるカメラ１０２の動作を、図６をもとにフロ−チャートを説明する。なお、図６の動作は、ＲＯＭ２１６、もしくは、フラッシュＲＯＭ２１３に格納されるプログラムをＣＰＵ２１５が実行し、各部を制御することにより行われる。
【００４８】
カメラ１０２のＣＰＵ２１５は、ユーザによる操作部２１０の通信パラメータ交換のためのボタン操作を検出すると（Ｓ６０１）、無線通信部２０４とＲＦ部２０５を介してネットワーク探索要求を送信する（Ｓ６０２）。そして、探索要求に対する応答が受信されるかを監視する（Ｓ６０３）。Ｓ６０１におけるボタン操作の検出から設定期間が満了するまでに応答を受信すると、Ｓ６０４に進む。応答が受信されなければ、設定期間が満了するまで（Ｓ６０７）は定期的にネットワーク探索要求を送信する。
【００４９】
Ｓ６０４では、受信した応答にレジストラ情報があるか否かを判断する。レジストラ情報がなければ、Ｓ６０７に進み、設定期間が満了するまでは定期的にネットワーク探索要求を送信する。レジストラ情報が含まれた応答を受信しないまま設定期間が満了する（Ｓ６０７）と、処理を終了する。受信した応答にレジストラ情報が含まれている場合は（Ｓ６０４）、レジストラ情報に含まれる、通信パラメータ提供者のＭＡＣアドレスに対してパラメータ取得要求を送信し、通信パラメータの提供を要求する（Ｓ６０５）。そして、通信パラメータ提供者から通信パラメータの提供を受け、通信パラメータを取得する（Ｓ６０６）。通信パラメータ提供処理の具体的な手続きとしては、Ｄｉｆｆｉｅ−ＨｅｌｌｍａｎやＲＳＡなどの公開鍵を用いて安全に鍵を含む通信パラメータの交換を行う。
【００５０】
通信パラメータの取得が正常に終了したら（Ｓ６０７）、取得したパラメータをフラッシュＲＯＭ２１３又はＲＡＭ２１７等のメモリに保存する（Ｓ６０８）。通信パラメータの取得が正常に終了しなければ、処理を終了する。なお、メモリに保存した通信パラメータは、ＣＰＵ２１５からの指示により、無線通信機能部２０４に設定され、カメラ１０２は、設定した通信パラメータに従った無線通信を行う。この設定は、通信パラメータの取得が成功すると自動的に行われても、ユーザによる操作部２１０の操作により行われても良い。なお、本実施形態では、カメラ１０２がプリンタ１０３と無線通信したいために通信パラメータの取得を行うため、ＣＰＵ２１５は、通信パラメータの取得が成功する取得した通信パラメータを自動的に無線通信機能部２０４に設定するものとする。
【００５１】
エンローリ機器は、レジストラ情報に含まれるレジストラ機器のアドレスに対してパラメータ取得要求を送信するので、レジストラ機器以外の機器が探索応答を送信しても、エンローリ機器はレジストラ機器から通信パラメータの提供を受けることができる。
【００５２】
図８は、カメラ１０１、カメラ１０２およびプリンタ１０３の全体のシーケンス図である。
【００５３】
カメラ１０１とプリンタ１０３とは、両機器が作成するネットワーク上で動作している。Ｓ８０１では、プリンタ１０３がビーコンを送信している。ユーザがプリンタ１０３の操作部３１０を操作し、プリンタ１０３をレジストラ機器に設定し、通信パラメータ提供処理のためのボタンを操作する（Ｓ８０２）。これを受けて、プリンタ１０３は、ビーコンにレジストラ情報（ＷＰＳＩＥとプリンタ１０３のＭＡＣアドレス）を付加して送信する（Ｓ８０３）。
【００５４】
このビーコンを受信したカメラ１０１は、この情報を修正せずビーコンに付加して送信している（Ｓ８０４）。
【００５５】
次に新しくネットワークに参加したカメラ１０２のユーザは、通信パラメータ提供処理のためのボタンを操作する（Ｓ８０５）。カメラ１０２は上記操作を検出すると、ネットワーク探索要求（Ｐｒｏｂ  Ｒｅｑ）を送信する（Ｓ８０７）。図８では、この要求は、直前にビーコンを送信したカメラ１０１に対して送信しているが、全ての機器に対してブロードキャストしてもよい。
【００５６】
この探索要求を受信したカメラ１０１は、探索要求に対する応答（Ｐｒｏｂ  Ｒｅｓ）を返す（Ｓ８０８）。この応答には、プリンタ１０３のレジストラ情報が含まれている。
【００５７】
カメラ１０２は、探索要求に対する応答を受信すると、応答の中のＷＰＳＩＥ情報とＭＡＣアドレスを獲得する。カメラ１０２は、これによってレジストラ機器がプリンタ１０３であることを確認する。その後、カメラ１０２は、レジストラであるプリンタ１０３に通信パラメータを要求し、通信パラメータの提供を受ける（通信パラメータの交換）（Ｓ８０９）。
【００５８】
カメラ１０２は、プリンタ１０３から通信パラメータの提供を受けると、該通信パラメータを設定し、プリンタ１０３とカメラ１０１と同じネットワークに参加する。同じネットワークに参加すると、カメラ１０２もネットワークを構成する端末であるので、図５に示したフローチャートに基づきビーコン送信を行う（Ｓ８１０）。設定のための時間が終了すると、プリンタ１０３から送信されるビーコンからレジストラ情報が削除される（Ｓ８１１）。これ以降は、他の機器が送信するビーコンからも、レジストラ情報が削除されることになる。
【００５９】
なお、カメラ１０２の動作に加え、Ｓ６０４の次に、探索応答に含まれていたレジストラ情報とビーコンに含まれていたレジストラ情報を比較する処理を加えても良い。この比較に結果、レジストラ情報が一致する場合に、Ｓ６０５に進み、パラメータ取得要求を送信する。レジストラ情報が一致しない場合は、パラメータ提供サービス中のレジストラが複数存在し、希望しない通信パラメータの提供を受ける可能性、悪意を持つ機器が不正な通信パラメータを提供しようとしている可能性がある。
【００６０】
従って、探索応答とビーコンのレジストラ情報が一致しない場合には、処理を終了するようにしてもよい。このようにすることにより、セキュリティを向上することができる。
【００６１】
これまでアドホック通信において、他の通信端末が送信した特定の情報を次の異なる端末が情報を引き継いで配送するという仕組みは考えられていなかった。この仕組みを提供することで、新しく参加する端末がビーコンや探索応答の情報から、どの端末がレジストラかをいち早く検出することが可能となる。
【００６２】
以上のように、アクセスポイントが存在しないアドホックモードにおいても、通信パラメータの提供、受理を効率良く行え、簡単に通信パラメータの設定を行うことができるようになる。
【００６３】
（第二の実施形態）
本実施形態では、エンローリ機器は受信したビーコンに含まれているレジストラ情報を用いて、通信パラメータを要求する。
【００６４】
ネットワークの構成、各機器の構成は第一の実施形態と同じであるので説明は割愛する。また、カメラ１０１、プリンタ１０３の動作も第一の実施形態と同じであるので説明は割愛する。
【００６５】
以下、通信パラメータを取得しようと試みるカメラ１０２の動作を、図９をもとにフロ−チャートを説明する。なお、図９の動作は、ＲＯＭ２１６、もしくは、フラッシュＲＯＭ２１３に格納されるプログラムをＣＰＵ２１５が実行し、各部を制御することにより行われる。
【００６６】
カメラ１０２のＣＰＵ２１５は、ユーザによる操作部２１０の通信パラメータ交換のためのボタン操作を検出すると（Ｓ９０１）、ビーコンの受信を監視する（Ｓ９０２）。ビーコンを受信すると、受信したビーコンにレジストラ情報があるか否かを判断する（Ｓ９０３）。レジストラ情報がなければ、Ｓ９０２に戻り、ビーコンの受信を監視する。Ｓ９０１におけるボタン操作の検出から設定期間が満了するまでにレジストラ情報が含まれるビーコンを受信しなければ、処理を終了する（Ｓ９０８）。
【００６７】
受信したビーコンにレジストラ情報が含まれている場合は（Ｓ９０３）、レジストラ情報に含まれる、通信パラメータ提供者のＭＡＣアドレスに対してパラメータ取得要求を送信し、通信パラメータの提供を要求する（Ｓ９０４）。そして、通信パラメータ提供者から通信パラメータの提供を受け、通信パラメータを取得する（Ｓ９０５）。通信パラメータ提供処理の具体的な手続きとしては、Ｄｉｆｆｉｅ−ＨｅｌｌｍａｎやＲＳＡなどの公開鍵を用いて安全に鍵を含む通信パラメータの交換を行う。
【００６８】
通信パラメータの取得が正常に終了したら（Ｓ９０６）、取得したパラメータをフラッシュＲＯＭ２１３又はＲＡＭ２１７等のメモリに保存する（Ｓ９０７）。通信パラメータの取得が正常に終了しなければ、処理を終了する。なお、メモリに保存した通信パラメータは、ＣＰＵ２１５からの指示により、無線通信機能部２０４に設定され、カメラ１０２は、設定した通信パラメータに従った無線通信を行う。この設定は、通信パラメータの取得が成功すると自動的に行われても、ユーザによる操作部２１０の操作により行われても良い。なお、本実施形態では、カメラ１０２がプリンタ１０３と無線通信したいために通信パラメータの取得を行うため、ＣＰＵ２１５は、通信パラメータの取得が成功する取得した通信パラメータを自動的に無線通信機能部２０４に設定するものとする。
【００６９】
本実施形態によれば、ネットワーク探索要求を送信することなく、ビーコンからレジストラ情報を取得し、通信パラメータの提供を受けることができる。
【００７０】
（第三の実施形態）
本実施形態は、ビーコン情報が改竄された際の対処ついて説明する。
【００７１】
悪意を持つ第３者が正しくボタンを押した２端末の間に入って盗聴し、レジストラに成りすまして通信パラメータを交換し、その後重要なデータが盗まれることを防止する。
【００７２】
ネットワークの構成、各機器の構成は第一の実施形態と同じであるので説明は割愛する。また、本実施形態においても、プリンタ１０３がネットワークを構築するための通信パラメータ提供者になる。また、カメラ１０１は、既に通信パラメータを取得して所望の設定を終了して無線通信を行っている。カメラ１０２は、新しく通信パラメータを取得しようとしている。プリンタ１０３とカメラ１０２はほぼ同時にボタンを押下することで、同一の通信パラメータを共有することが可能となる（ＷＰＳのＰＢ方式に相当）。
【００７３】
プリンタ１０３の動作を図１０のフローチャートをもとに説明する。なお、図１０の動作は、ＲＯＭ３１６、もしくは、フラッシュＲＯＭ３１３に格納されるプログラムをＣＰＵ３１５が実行し、各部を制御することにより行われる。なお、プリンタ１０３は、カメラ１０１とあるアルゴリズムに従って、ビーコン送信を行っている。このアルゴリズムに従い、プリンタ１０３がビーコン送信の役割になると、プリンタ１０３がビーコンを送信し、カメラ１０１がビーコン送信の役割になると、カメラ１０１がビーコンを送信する。従って、プリンタ１０３とカメラ１０１とが交互にビーコンを送信しながらネットワークを構成する場合、一方の機器だけがビーコンを送信する場合、ランダムにビーコンを送信しあう場合など様々なケースがある。本実施形態は、これら様々なケースにも対応する。
【００７４】
まず、ＣＰＵ３１５は、ユーザ指示に従って、プリンタを通信パラメータ提供者（レジストラ）として設定する（Ｓ１００１）。本実施例では全ての機器は通信パラメータ提供者になりうるが、デフォルトの設定（初期設定）を通信パラメータ取得者としている。そのため、本実施形態では、ユーザ間で合意のうえでレジストラを選定し、ユーザが操作部３１０を介して指定、設定することにした。これらは特に本実施例の制約を与えるものではなく、レジストラを決定する手続きは手動で決めても、自動で決めるメカニズムを考案して構わない。
【００７５】
次に、プリンタ１０３のＣＰＵ３１５は、ユーザによる操作部３１０の通信パラメータ交換のためのボタン操作を検出すると（Ｓ１００２）、レジストラ情報をビーコンに付加して送信する（Ｓ１００３）。通信パラメータ交換のためのボタン操作は、表示部３０６でメニューを変更しながら所望の機能を選択するなど複数のオペレーションの結果、表示されるソフトボタンでも構わない。
【００７６】
上記レジストラ情報は、現在パラメータ提供サービスを実行中であるという情報、プッシュボタン方式による認証に関する情報等であり、ビーコンには、これらの情報を特定のフォーマットで格納する。また、レジストラ情報は、ＷＰＳで規定しているＷＰＳＩＥ（ＷＰＳ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｅｌｅｍｅｎｔ）と同様な内容に加え、レジストラの宛先を示したＭＡＣアドレスを含む情報である。
【００７７】
また、本説明はアドホックモードにおける動作なので、ビーコンの送信は、プリンタ１０３がビーコンを送信する役割になった場合に行われる。
【００７８】
ＣＰＵ３１５は、他の端末のビーコンを受信すると（Ｓ１００４）、自端末が追加したレジストラ情報と同じレジストラ情報が付加されているかを確認する（Ｓ１００５）。つまり、自端末が追加したレジストラ情報が修正もしくは削除されてないことを確認する。言い換えると、自端末が追加したレジストラ情報と異なるレジストラ情報が付加されているかもしくは削除されてないことを確認する。この確認するため、自端末が追加したレジストラ情報（ＷＰＳＩＥとＭＡＣアドレス）と受信したビーコン中のレジストラ情報（ＷＰＳＩＥとＭＡＣアドレス）をそのまま比較する。または、Ｓ１００３においてレジストラ情報をビーコンに付加するときに上記情報要素のハッシュ値を算出して保存し、そのハッシュ値と受信した情報のハッシュ値を比較することで削除、修正されていないかを確認してもよい。
【００７９】
Ｓ１００５の判断の結果、比較したレジストラ情報が同じでない場合（修正または削除されている場合）は、同一ネットワーク上の全端末が受信可能なブロードキャストフレームを用いて警告メッセージを送信する（Ｓ１００８）。この警告メッセージにより、通信パラメータ提供サービスの処理中断の警告を通知する（Ｓ１００８）。このように、比較したレジストラ情報が同じでない場合（修正または削除されている場合）は、誰かが改竄を企てようとして、ビーコン情報を変更した可能性がある。そのため、他の端末に警告し、処理を中断させる。ブロードキャストフレームは、ＩＥＥＥ８０２．１１のマネージメントフレームでも、ＥＡＰヘッダを含む認証などに特別に流れるデータパケットで転送してもよい。また、Ｓ１００８において警告を行う場合には、表示部３０６に警告メッセージを表示し、ユーザに通信パラメータ提供サービスの処理中断を通知するようにしてもよい。
【００８０】
レジストラ情報が同じ場合は、通信パラメータを提供する設定期間が満了したかをチェックし（Ｓ１００６）、満了していなければＳ１００３へ戻る。プッシュボタン方式での通信パラメータの提供期間は安全性を考慮して、パラメータ提供サービスを開始してから一定期間内（設定期間）となっており、その期間の間、プリンタ１０３はレジストラ情報を付加してビーコンの送信を試みる（Ｓ１００３）。
【００８１】
設定期間が満了すると（Ｓ１００６）、ビーコンからレジストラ情報（ＷＰＳＩＥとＭＡＣアドレス）を削除する（Ｓ１００７）。
【００８２】
ＣＰＵ３１５は、ビーコンを受信しない場合は、エンローリ機器からパラメータ取得の要求が送られてくるかを監視する（Ｓ１００９）。エンローリ機器からのパラメータ取得の要求を受信すると、ＣＰＵ３１５は、該要求を送信したエンローリ機器に対して自身が管理する通信パラメータを提供する（Ｓ１０１０）。
【００８３】
通信パラメータを提供し終わると、Ｓ１００３に戻り、設定期間が満了するまで他のエンローリ機器に対する通信パラメータ提供処理を行う。なお、本説明では、設定期間が満了するまで他のエンローリ機器に対する通信パラメータ提供処理を行う事とするが、エンローリ機器に対して通信パラメータを提供すると、処理を終了してもよい。このようにすると、意図しない機器に対して通信パラメータを提供してしまうことを防止できる。
【００８４】
次に既にプリンタ１０３と同一のネットワークに存在し、プリンタ１０３と通信パラメータを交換済みのカメラ１０１の動作を図１１のフローチャートをもとに説明する。図１１の動作は、ＲＯＭ２１６、もしくは、フラッシュＲＯＭ２１３に格納されるプログラムをＣＰＵ２１５が実行し、各部を制御することにより行われる。
【００８５】
カメラ１０１のＣＰＵ２１５は、ビーコンを監視し、ビーコンを受信すると、前回受信したプリンタ１０３からのビーコンと内容が変化しているか判断する（Ｓ１１０１）。なお、カメラ１０１は、プリンタ１０３からのビーコンを監視している最中にも、カメラ１０１がビーコン送信の役割にあるとビーコンを送信する。受信したビーコン内の情報に変化があるか否かを判断するために、カメラ１０１のＣＰＵ２１５は、ビーコンを受信すると、ビーコンに含まれている情報をＲＡＭ２１７に記憶しておく。この情報には、ビーコンの送信元機器のアドレス情報が含まれているため、同じアドレスの機器からのビーコンの内容を比較し、同じ機器からのビーコン情報が変化したか否かを判断する（Ｓ１１０１）。
【００８６】
受信したビーコン情報に変化がある場合、ビーコンにレジストラ情報が付加された変化か判断する（Ｓ１１０２）。レジストラ情報が付加される変化でない場合は、Ｓ１１０１に戻る。
【００８７】
レジストラ情報が付加された場合は、ＣＰＵ２１５は、その内容を確認し、ＷＰＳＩＥの情報要素と通信パラメータ提供者のＭＡＣアドレスがあることを確認する（Ｓ１１０３）。そして、レジストラ情報（ＷＰＳＩＥとＭＡＣアドレス）をメモリ（フラッシュＲＯＭ２１３又はＲＡＭ２１７）に保存する（Ｓ１１０４）。保存する方法は、レジストラ情報をそのまま保存しても、ＷＰＳＩＥとＭＡＣアドレスのハッシュ値を保存しても構わない。そして、カメラ１０１が送信するビーコンに、受信したレジストラ情報（プリンタ１０３が付加したＷＰＳＩＥとプリンタ１０３のＭＡＣアドレス）を付加するようにする（Ｓ１１０５）。カメラ１０１がビーコンを送信する役割の時には、受信したレジストラ情報（プリンタ１０３が付加したＷＰＳＩＥとプリンタ１０３のＭＡＣアドレス）を付加したビーコンを送信する。このように既にレジストラ機器が存在しているネットワークと同一の通信パラメータを共有し、同じネットワークで通信可能状態にある機器は、レジストラ機器からのレジストラ情報を自身のビーコンに付加して送信する。このビーコン（レジストラ以外の機器からのビーコン）を受信した機器（エンローリ）は、レジストラ機器の情報を認識することができる。従って、レジストラ機器が常にビーコンを送信するとは限らないアドホックモードにおいても、レジストラ機器の意向（レジストラ情報）を他の機器に効率良く報知することができる。
【００８８】
次に、カメラ１０１のＣＰＵ２１５は、ビーコンの受信を監視する（Ｓ１１０６）。ビーコンを受信すると、Ｓ１１０４で保存したレジストラ情報が削除又は修正されてないか確認する（Ｓ１１０７）。削除又は修正されていない場合は、Ｓ１１０６に戻り、ビーコンの受信を監視する。
【００８９】
受信したビーコンに付加されていたレジストラ情報が削除又は修正されていた場合は、カメラ１０１が送信するビーコンから、レジストラ情報（プリンタ１０３が付加したＷＰＳＩＥとプリンタ１０３のＭＡＣアドレス）が削除されるようにする（Ｓ１１０９）。従って、これ以降、カメラ１０１が送信するビーコンには、レジストラ情報が削除される。
【００９０】
このようにビーコンに付加されたレジストラ情報が削除又は修正された場合は、第３者によるレジストラ情報の改竄が考えられる。よって、カメラ１０１が送信するビーコンから、レジストラ情報を削除し、改竄による被害を防止する。また、ユーザが選択したレジストラ機器（プリンタ１０３）がレジストラ情報を送信してビーコンを送信した場合、つまり、通信パラメータ提供サービスを中止した場合にも、カメラ１０１が受信したビーコンのレジストラ情報が削除又は修正される。この場合も、カメラ１０１が送信するビーコンからレジストラ情報を削除するので、レジストラ機器がパラメータ提供サービスを終了しているにも係らず、レジストラ機器以外の機器からレジストラ機器に関する情報がアナウンスされることを防止できる。
【００９１】
プリンタ１０３と、カメラ１０１が探索要求（Ｐｒｏｂｅ要求信号）を受信した際の動作は、第１実施形態と同じであり、図７に示すように動作するので説明は割愛する。
【００９２】
次に、通信パラメータを取得しようと試みるカメラ１０２の動作を、図１２をもとにフロ−チャートを説明する。なお、図１２の動作は、ＲＯＭ２１６、もしくは、フラッシュＲＯＭ２１３に格納されるプログラムをＣＰＵ２１５が実行し、各部を制御することにより行われる。
【００９３】
カメラ１０２のＣＰＵ２１５は、ユーザによる操作部２１０の通信パラメータ交換のためのボタン操作を検出すると（Ｓ１２０１）、無線通信部２０４とＲＦ部２０５を介してネットワーク探索要求を送信する（Ｓ１２０２）。そして、探索要求に対する応答が受信されるかを監視する（Ｓ１２０３）。Ｓ１２０１におけるボタン操作の検出から設定期間が満了するまでに応答を受信すると、Ｓ１２０４に進む。応答が受信されなければ、設定期間が満了するまで（Ｓ１２１１）は定期的にネットワーク探索要求を送信する。
【００９４】
Ｓ１２０４では、受信した応答の中にレジストラ情報（ＷＰＳＩＥと通信パラメータ提供者のＭＡＣアドレス）があるかないかを確認する（Ｓ１２０４）。存在しない場合は、設定期間が満了するまで（Ｓ１２１１）は定期的にネットワーク探索要求を送信する。レジストラ情報が含まれた応答を受信しないまま設定期間が満了する（Ｓ１２１１）と、処理を終了する。受信した応答にレジストラ情報が含まれている場合は（Ｓ１２０４）、レジストラ情報に含まれる、通信パラメータ提供者のＭＡＣアドレスに対してパラメータ取得要求を送信し、通信パラメータの提供を要求する（Ｓ１２０５）。そして、通信パラメータ提供者から通信パラメータの提供を受け、通信パラメータを取得する（Ｓ１２０６）。通信パラメータ提供処理の具体的な手続きとしては、Ｄｉｆｆｉｅ−ＨｅｌｌｍａｎやＲＳＡなどの公開鍵を用いて安全に鍵を含む通信パラメータの交換を行う。
【００９５】
通信パラメータの取得が正常に終了しなければ（Ｓ１２０７）、処理を終了する。通信パラメータの取得が正常に終了したら（Ｓ６０７）、警告メッセージが到着し、警告の通知があるかどうかを一定期間確認する（Ｓ１２０８）。警告メッセージが到着しない場合は、取得したパラメータをフラッシュＲＯＭ２１３又はＲＡＭ２１７等のメモリに保存する（Ｓ１２０９）。警告メッセージが到着した場合は、取得したパラメータを破棄する（Ｓ１２１０）。なお、メモリに保存した通信パラメータは、ＣＰＵ２１５からの指示により、無線通信機能部２０４に設定され、カメラ１０２は、設定した通信パラメータに従った無線通信を行う。この設定は、通信パラメータの取得が成功すると自動的に行われても、ユーザによる操作部２１０の操作により行われても良い。なお、本実施形態では、カメラ１０２がプリンタ１０３と無線通信したいために通信パラメータの取得を行うため、ＣＰＵ２１５は、通信パラメータの取得が成功する取得した通信パラメータを自動的に無線通信機能部２０４に設定するものとする。
【００９６】
また、通信パラメータを破棄した場合には、表示部２０６に通信パラメータの取得の失敗を表示し、ユーザに通知するようにする。この通知を確認したユーザは、再度、通信パラメータの設定処理を開始できる。また、ユーザ通知の際に、レジストラ機器（プリンタ１０３）からの警告通知により通信パラメータを破棄したことを表示するようにしてもよい。このようにすることにより、ユーザは悪意のある第３者の存在を認識でき、通信パラメータの設定処理を中止することもできる。
【００９７】
図１３は、カメラ１０１、カメラ１０２およびプリンタ１０３の全体のシーケンス図である。
【００９８】
図８に示したシーケンスとパラメータ交換を行うＳ１３０９までは同じ処理となっている。しかしながら、図１３の例では、Ｓ１３１０においてカメラ１０１がビーコンに異なるレジストラ情報を付加して送信している。これを契機に、Ｓ１３１１で警告メッセージがプリンタ１０３より送信される。この警告メッセージを受信したカメラ１０２はパラメータを破棄する（Ｓ１３１２）。
【００９９】
以上のように、ビーコンに付加したレジストラ情報が改竄された場合に、改竄された情報を元に通信パラメータを設定されてしまうことを防止でき、通信パラメータの交換を安全に行うことが可能となる。
【０１００】
なお、上記説明では、エンローリ機器は探索要求に対する応答に付加されていたレジストラ情報に含まれていた情報を用いて、パラメータ取得要求を送信した。しかしながら、第二の実施形態のように、受信したビーコンに含まれているレジストラ情報を用いて、通信パラメータを要求するようにしてもよい。
【０１０１】
以上のように上記説明では、通信装置が、他の通信装置が送信した報知信号の内容の変化判断を行う。そして、この判断に基づいて、通信装置が送信する報知信号に通信装置が受信した報知信号に含まれていた特定の付加情報を付加、または、通信装置が送信する報知信号から特定の付加情報を削除して送信するようにした。
【０１０２】
ここで、上記構成を以下の構成にしてもよい。すなわち、通信装置は、報知信号を他の通信装置と所定のアルゴリズムに従い送信する。また、報知信号の内容の変化は、受信した報知信号に付加情報が付加されたか、または、削除されたか、または、修正されたかを判断することにより行う。また、付加情報は、通信パラメータの提供サービスを実行中であることを示す情報、または、通信パラメータの提供サービスを実行する機器の識別情報、または、認証に関する情報を含む。また、他の通信装置からの探索信号を受信した場合に、探索信号に応答するか否かを判断する応答判断を行い、他の通信装置が通信パラメータの提供サービスを実行中か否かを判断するサービス判断を行う。そして、応答判断と、サービス判断に応じて、探索信号に対する応答信号に、受信した報知信号に含まれていた特定の付加情報を付加、または、付加せずに送信する。
【０１０３】
また、上記説明では、通信装置が、ユーザ操作に基づいて、報知信号に特定の付加情報を付加して送信し、他の通信装置が送信した報知信号に、送信した報知信号に付加した付加情報が付加されているか否かを判断する。この判断に応じて、警告通知を行うようにした。
【０１０４】
ここで、上記構成を以下の構成にしてもよい。すなわち、上記警告は、通信パラメータ提供サービスの処理中断を通知する。また、上記警告は、他の通信装置又はユーザに警告通知を行う。また、他の通信装置が送信した報知信号から、送信した報知信号に付加した付加情報が削除されたか、または、他の通信装置が送信した報知信号には、送信した報知信号に付加した付加情報と異なる付加情報が付加されているかを判断する。
【０１０５】
また、上記説明では、受信した信号に、通信パラメータ提供サービスを実行している機器の識別情報が含まれているかを確認し、受信信号に含まれていた識別情報に基づいて、通信パラメータ提供サービスを実行している機器から通信パラメータを取得する。そして、通信パラメータ提供サービスを実行している機器から送信された警告メッセージに基づいて、取得した通信パラメータを破棄するようにした。
【０１０６】
従って、アクセスポイントが存在しないアドホックモードにおいても、通信パラメータの提供、受理を効率良く行え、簡単に通信パラメータの設定を行うことができるようになる。
【０１０７】
即ち、常に同じ機器がビーコンを送信しなくても、また、探索要求に対し、必ず同じ機器が応答しなくても、通信パラメータの提供、受理を効率良く行え、簡単に通信パラメータの設定を行うことができるようになる。
【符号の説明】
【０１０８】
１０１  カメラ
１０２  カメラ
１０３  プリンタ
【図１】
0005597285.tif 000002
【図２】
0005597285.tif 000003
【図３】
0005597285.tif 000004
【図４】
0005597285.tif 000005
【図５】
0005597285.tif 000006
【図６】
0005597285.tif 000007
【図７】
0005597285.tif 000008
【図８】
0005597285.tif 000009
【図９】
0005597285.tif 000010
【図１０】
0005597285.tif 000011
【図１１】
0005597285.tif 000012
【図１２】
0005597285.tif 000013
【図１３】
0005597285.tif 000014