(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-08-27
(45)【発行日】2024-09-04
(54)【発明の名称】通信装置
(51)【国際特許分類】
H04W 76/10 20180101AFI20240828BHJP
H04W 12/77 20210101ALI20240828BHJP
H04W 84/12 20090101ALI20240828BHJP
【FI】
H04W76/10
H04W12/77
H04W84/12
(21)【出願番号】P 2023060829
(22)【出願日】2023-04-04
(62)【分割の表示】P 2018084476の分割
【原出願日】2018-04-25
【審査請求日】2023-05-01
(73)【特許権者】
【識別番号】000001007
【氏名又は名称】キヤノン株式会社
(74)【代理人】
【識別番号】110003281
【氏名又は名称】弁理士法人大塚国際特許事務所
(72)【発明者】
【氏名】後藤 史英
【審査官】吉倉 大智
(56)【参考文献】
【文献】特開2018-42058(JP,A)
【文献】特開2018-37979(JP,A)
【文献】特開2016-130982(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04B 7/24- 7/26
H04W 4/00-99/00
(57)【特許請求の範囲】
【請求項1】
通信装置であって、
他の装置に関する公開鍵を取得する取得手段と、
通信接続を行うために必要な通信パラメータの設定処理を前記他の装置と実行するかについてのユーザ入力を受け付ける受付手段と、
前記公開鍵に関する情報を含む要求であって前記設定処理の認証処理に関する要求を前記他の装置に送信し、前記要求に応じた応答を前記他の装置から受信した場合、前記他の装置と前記設定処理を実行する実行手段と、を有し、
前記受付手段で前記設定処理を実行するユーザ入力を受け付けた場合に、前記実行手段は前記設定処理を実行することを特徴とする通信装置。
【請求項2】
前記実行手段は、前記受付手段で前記設定処理を実行するユーザ操作を受け付けた場合に、前記要求を前記他の装置に送信する、ことを特徴とする請求項1に記載の通信装置。
【請求項3】
前記取得手段は、前記他の装置が表示する画像を読み取ることで前記他の装置に関する公開鍵を取得する、ことを特徴とする請求項1または2に記載の通信装置。
【請求項4】
前記取得手段は無線通信を用いて前記他の装置に関する公開鍵を取得する、ことを特徴とする請求項1から3のいずれか1項に記載の通信装置。
【請求項5】
前記設定処理はDevice Provisioning Protocol(DPP)に基づく処理であり、前記要求はDPP Authentication Requestである、ことを特徴とする請求項1から4のいずれか1項に記載の通信装置。
【請求項6】
前記実行手段は、前記要求に応じた応答であって、認証の成功を示す応答を前記他の装置から受信した場合に、前記他の装置と前記設定処理を実行する、ことを特徴とする請求項1から5のいずれか1項に記載の通信装置。
【請求項7】
前記他の装置に関する情報を表示部に表示するように制御する表示制御手段をさらに有することを特徴とする請求項1から6のいずれか1項に記載の通信装置。
【請求項8】
前記受付手段は、前記設定処理における前記通信装置の役割に基づいて、前記他の装置に関する情報を提示するか否かを制御する、ことを特徴とする請求項1から
7のいずれか1項に記載の通信装置。
【請求項9】
前記通信パラメータはSSID(Service Set Identifier)、暗号方式、暗号鍵、認証方式、認証鍵の少なくともいずれかを含み、前記実行手段は、前記通信パラメータを前記他の装置に提供する、ことを特徴とする請求項1から
8のいずれか1項に記載の通信装置。
【請求項10】
前記通信パラメータを提供された前記他の装置は、当該通信パラメータを用いて無線通信接続を行う、ことを特徴とする請求項1から
9のいずれか1項に記載の通信装置。
【請求項11】
通信装置であって、
通信接続を行うために必要な通信パラメータの設定処理における認証処理の要求であって、公開鍵に関する情報を含む要求を、前記通信装置に関する公開鍵を取得した他の装置から受信する受信手段と、
前記他の装置と通信接続を行うために必要な通信パラメータの設定処理を実行するかについてのユーザ入力を受け付ける受付手段と、
前記要求に応じた応答を前記他の装置から送信した後、前記他の装置と前記設定処理を実行する実行手段と、を有し
前記受付手段で前記設定処理を実行するユーザ入力を受け付けた場合に、前記実行手段は前記設定処理を実行する、ことを特徴とする通信装置。
【請求項12】
前記受付手段で前記設定処理を実行するユーザ操作を受け付けた場合に、前記実行手段は、前記要求に応じた応答を前記他の装置に送信する、ことを特徴とする請求項1
1に記載の通信装置。
【請求項13】
前記設定処理はDevice Provisioning Protocol(DPP)に基づく処理であり、前記応答はDPP Authentication Responseであることを特徴とする請求項1
1または1
2に記載の通信装置。
【請求項14】
前記通信パラメータはSSID(Service Set Identifier)、暗号方式、暗号鍵、認証方式、認証鍵の少なくともいずれかを含み、前記実行手段は前記通信パラメータを前記他の装置から受信することを特徴とする請求項1
1から1
3のいずれか1項に記載の通信装置。
【請求項15】
通信装置が実行する制御方法であって、
他の装置に関する公開鍵を取得する取得工程と、
通信接続を行うために必要な通信パラメータの設定処理を前記他の装置と実行するかについてのユーザ入力を受け付ける受付工程と、
前記公開鍵に関する情報を含む要求であって前記設定処理の認証処理に関する要求を前記他の装置に送信し、前記要求に応じた応答を前記他の装置から受信した場合、前記他の装置と前記設定処理を実行する実行工程と、を有し、
前記受付工程で前記設定処理を実行するユーザ入力を受け付けた場合に、前記実行工程において前記設定処理を実行する、ことを特徴とする制御方法。
【請求項16】
通信装置が実行する制御方法であって、
通信接続を行うために必要な通信パラメータの設定処理における認証処理の要求であって、公開鍵に関する情報を含む要求を、前記通信装置に関する公開鍵を取得した他の装置から受信する受信工程と、
前記他の装置と通信接続を行うために必要な通信パラメータの設定処理を実行するかについてのユーザ入力を受け付ける受付工程と、
前記要求に応じた応答を前記他の装置から送信した後、前記他の装置と前記設定処理を実行する実行工程と、を有し
前記受付工程で前記設定処理を実行するユーザ入力を受け付けた場合に、前記実行工程において前記設定処理を実行する、ことを特徴とする制御方法。
【請求項17】
コンピュータを請求項1から1
4のいずれか1項に記載の通信装置が有する各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、無線通信における通信設定技術に関する。
【背景技術】
【0002】
近年、デジタルカメラ、プリンタ、携帯電話、スマートフォンなどの電子機器に無線通信機能が搭載され、これらの電子機器を無線ネットワークに接続することによって通信を伴うサービスを実行するケースが増えている。電子機器を無線ネットワークに接続するためには、例えば、暗号方式、暗号鍵、認証方式、認証鍵等の少なくともいずれかを含んだ、通信パラメータの設定がなされている必要がある。これらの通信パラメータの設定を容易にする技術として、Wi-Fi Device Provisioning Protocol(以下では「DPP」と呼ぶ。)が策定されている。特許文献1には、QR(Quick Response)コード等の標示により通信パラメータの設定を行う相手装置を検出することを含んだDPPによる通信パラメータの設定技術が記載されている。特許文献1には、DPPでは、通信パラメータを提供する提供装置(コンフィギュレータ)が、アクセスポイントに接続するために必要な情報を、公開鍵を用いて、通信パラメータを受信する受信装置(エンローリ)に提供することが記載されている。
【先行技術文献】
【特許文献】
【0003】
【文献】米国特許出願公開第2017/0295448号明細書
【発明の概要】
【発明が解決しようとする課題】
【0004】
QRコード(登録商標)を読み取ることにより公開鍵を取得して認証を実行するDPPのようなパラメータ設定方式では、QRコードを撮像する側の装置は撮像される側の装置を特定できるが、撮像される側の装置が撮像する側の装置を特定することができない。このため、少なくとも撮像される側の装置において、意図しない装置との間でパラメータ設定を実行してしまうという課題があった。
【0005】
本発明は、上記課題に鑑みてなされたものであり、通信装置において、適切な相手装置との間で通信パラメータの設定を実行可能とすることを目的とする。
【課題を解決するための手段】
【0006】
本発明の一態様による通信装置は、他の装置に関する公開鍵を取得する取得手段と、通信接続を行うために必要な通信パラメータの設定処理を前記他の装置と実行するかについてのユーザ入力を受け付ける受付手段と、前記公開鍵に関する情報を含む要求であって前記設定処理の認証処理に関する要求を前記他の装置に送信し、前記要求に応じた応答を前記他の装置から受信した場合、前記他の装置と前記設定処理を実行する実行手段と、を有し、前記受付手段で前記設定処理を実行するユーザ入力を受け付けた場合に、前記実行手段は前記設定処理を実行する。
【発明の効果】
【0007】
本発明によれば、通信装置が適切な相手装置との間で通信パラメータの設定を実行することができる。
【図面の簡単な説明】
【0008】
【
図2】通信装置のハードウェア構成例を示す図である。
【
図4】DPPのレスポンダ側の通信装置が実行する処理の流れの例を示すフローチャートである。
【
図5】DPPのイニシエータ側の通信装置が実行する処理の流れの例を示すフローチャートである。
【
図6】通信装置が表示するユーザインタフェースの一例を示す図である。
【
図7】通信装置が表示するユーザインタフェースの一例を示す図である。
【
図8】無線通信システムで実行される処理の流れの第1の例を示す図である。
【
図9】無線通信システムで実行される処理の流れの第2の例を示す図である。
【
図10】無線通信システムで実行される処理の流れの第3の例を示す図である。
【発明を実施するための形態】
【0009】
以下、本発明の実施の形態について、図面を参照しながら説明する。本実施形態では、IEEE802.11規格シリーズに準拠した無線LANシステムを用いた例について説明する。しかしながら、これに限られず、IEEE802.11規格シリーズに準拠しない他の無線通信システムにおいても以下の手法を適用可能である。なお、IEEEは、The Institute of Electrical and Electronics Engineers, Inc.の略称である。
【0010】
(無線通信システムの構成)
図1に、本実施形態に係る無線通信システムの構成を示す。本無線通信システムは、例えば、アクセスポイント101、スマートフォン103、プリンタ104および無線LANのネットワーク102を含む。なお、
図1の例では、無線通信システムに含まれる通信装置として、アクセスポイント101、スマートフォン103、及びプリンタ104が示されているが、これらに限られない。例えば、これらの通信装置が、携帯電話、カメラ、パーソナルコンピュータ(PC)、ビデオカメラ、スマートウォッチ、パーソナルデジタルアシスタント(PDA)等の他の形態の通信装置と置き換えられてもよい。また、無線通信システムに含まれる通信装置の数は、
図1の例では3台であるが、2台または4台以上の通信装置が無線通信システムに含まれてもよい。
【0011】
本実施形態では、アクセスポイント101が形成するネットワーク102に、プリンタ104を参加させる際の処理について説明する。このとき、例えばスマートフォン103が、DPPのコンフィギュレータとして動作し、DPPのエンローリとして動作するプリンタ104に対して、アクセスポイント101に接続するための情報を提供しうる。なお、上述のように、DPPは、WiFi Device Provisioning Protocolの略語である。また、コンフィギュレータは通信パラメータの提供を行う提供装置であり、エンローリは提供される通信パラメータを受信する受信装置である。通信パラメータは、アクセスポイント等のネットワークを形成する装置に接続するために使われる情報であり、例えば、ネットワーク識別子としてのSSIDや、暗号鍵、暗号方式等の情報である。
【0012】
本実施形態では、DPPによるパラメータ設定を開始するイニシエータが、イニシエータと共にパラメータ設定を実行するレスポンダにおいて示されたQRコード等の画像を撮像して、公開鍵を取得し、その公開鍵を用いてパラメータ設定を実行する。イニシエータとレスポンダは、通信パラメータの提供処理における役割とは無関係に決定される。すなわち、コンフィギュレータはイニシエータとレスポンダのいずれにおいても動作可能であり、同様に、エンローリもイニシエータとレスポンダのいずれにおいても動作可能である。DPPによるパラメータ設定処理では、上述のように、イニシエータは、通信パラメータの送受信の相手装置を特定してQRコード等の画像の読み取りを行う一方で、レスポンダは、どの通信装置によってその画像が読み取られたかを特定できない。このため、レスポンダは、不適切な相手装置とDPPによるパラメータ設定を実行してしまいうる。これに対して本実施形態では、レスポンダが、イニシエータからQRコード等の画像の読み取り後にレスポンダへ送信される所定の信号(例えばDPP Authentication Request)を受信した際に、ユーザ入力を受付可能な状態へ移行する。例えば、レスポンダは、要求信号から得られるイニシエータについての装置情報を画面表示し、パラメータ設定の相手装置がユーザの意図したものとなっているかのユーザ入力を受け付ける。そして、レスポンダにおいて、イニシエータがパラメータ設定の相手装置として受け入れることを示すユーザ入力が受け付けられたことに応じて、その後のDPPによるパラメータ設定処理が継続されるようにする。これにより、通信装置が、ユーザによる確認がなされた他の装置との間でパラメータ交換を行うようにすることができ、不適切な装置との間で通信パラメータの交換が行われること等を防ぐことができるようになる。
【0013】
以下では、このような処理を実行する通信装置の構成と、実行される処理の流れの例について詳細に説明する。
【0014】
(装置構成)
図2は、本実施形態に係る各通信装置(アクセスポイント101、スマートフォン103及びプリンタ104)のハードウェア構成例を示している。通信装置は、一例において、制御部201、記憶部202、無線部203、表示部204、撮像部205、アンテナ制御部206、アンテナ207、及び入力部208を有する。
【0015】
制御部201は、記憶部202に記憶された制御プログラムを実行することによって通信装置全体を制御する。制御部201は、例えばCPU(Central Processing Unit)やMPU(Micro Processing Unit)等の1つ以上のプロセッサを含んで構成される。また、制御部201は、例えば、ASIC(特定用途向け集積回路)やDSP(デジタルシグナルプロセッサ)等のハードウェアや、FPGA(フィールドプログラマブルゲートアレイ)等のゲートアレイ回路を含んで構成されてもよい。記憶部202は、制御部201によって実行される制御プログラムや、画像データ、通信パラメータ等の各種情報を記憶する。後述する各種動作は、記憶部202に記憶された制御プログラムを制御部201が実行することにより実現されうる。記憶部202は、例えば、ROM(読み出し専用メモリ)、RAM(ランダムアクセスメモリ)、HDD(ハードディスクドライブ)、フラッシュメモリ、又は着脱可能なSD(セキュアデジタル)カード等の記憶媒体を含んで構成される。
【0016】
無線部203は、IEEE802.11規格シリーズに準拠した無線LAN通信を行うための各種処理を実行する。無線部203は、例えば無線周波数(RF)回路やベースバンド(BB)回路等の無線通信回路が形成された回路チップを含んで構成される。表示部204は、LCD(液晶ディスプレイ)やLED(発光ダイオード)のように視覚で認知可能な情報の出力や、スピーカなどの音出力が可能な機能を用いて、各種情報を外部に提示する。すなわち、表示部204は、視覚情報と音情報との少なくともいずれかを出力する機能を有する。なお、表示部204は、視覚情報を表示する場合、例えば表示対象の視覚情報に対応する画像データを保持可能なVRAM(Video RAM)を有し、LCDやLEDに対して、VRAMに格納した画像データを継続的に表示させる表示制御を行いうる。
【0017】
撮像部205は、撮像素子、レンズ等を含んで構成され、写真や動画の撮像を行う。撮像部205は、バーコード、二次元コード、QRコード(登録商標)等の画像の撮像を行うことができる。アンテナ制御部206はアンテナ207の制御を行い、アンテナ207は無線LANで通信するための2.4GHz帯および/または5GHz帯に動作帯域を有する任意のタイプのアンテナである。入力部208は、各種ユーザ入力を受け付ける受付装置であり、ユーザが通信装置を操作する際に用いられる。入力部208は、受け付けたユーザ入力に対応するフラグを記憶部202等のメモリに記憶する。
【0018】
なお、
図2の構成例は一例にすぎず、通信装置は、その他のハードウェア構成を有していてもよいし、一部のハードウェアを有しなくてもよい。例えば、通信装置がプリンタである場合には、通信装置は、
図2の構成に加えて印刷部を有しうる。また、通信装置がアクセスポイント101である場合には、通信装置は、表示部204や撮像部205を有しなくてもよい。また、上述の2つ以上のブロックが1つに統合されてもよい。例えば、通信装置がスマートフォン103である場合、表示部204と入力部208のそれぞれの少なくとも一部が統合されたタッチパネルが用いられてもよい。また、1つのブロックが2つ以上のブロックに分割されてもよい。
【0019】
図3は、通信装置の機能構成例を示している。なお、
図3は、主として後述の処理を実行するための機能を示しており、通信装置は、示されるもの以外の機能を有してもよい。
【0020】
通信装置は、その機能構成として、例えば、通信パラメータ制御部301、画像読取制御部302、画像生成制御部303、及び、サービス制御部304を有する。また、通信装置は、例えば、パケット受信部305、パケット送信部306、ステーション機能制御部307、アクセスポイント機能制御部308、及びデータ記憶部309を有する。これらの機能ブロックは、それぞれ、記憶部202に記憶されたプログラムが制御部201によって実行されることによって実現されうる。例えば、制御部201は、制御プログラムに従って、各ハードウェアの制御、及び、情報の演算や加工を行うことによって各機能を実現する。なお、一部又は全部の機能が、ASIC等の専用のハードウェアによって実現されてもよい。
【0021】
通信パラメータ制御部301は、装置間で通信パラメータを共有するための通信パラメータ共有処理を実行する。通信パラメータ共有処理では、提供装置が、無線通信を実行するための通信パラメータを受信装置に提供する。ここで、通信パラメータは、ネットワーク識別子としてのSSID(Service Set Identifier)、暗号方式、暗号鍵、認証方式、認証鍵等の少なくともいずれかなど、無線LANの通信を行うために必要な無線通信パラメータを含む。また、通信パラメータは、DPPで規定されるコネクタ、MACアドレス、PSK、パスフレーズ、IP層での通信を行うためのIPアドレス、上位サービスに必要な情報等を含んでもよい。なお、MACはMedium Access Controlの、PSKはPre Shared Keyの、IPはInternet Protocolの、頭字語である。本実施形態では、通信パラメータ制御部301は、DPPによる通信パラメータ共有処理を実行するものとする。しかしながら、通信パラメータ制御部301はDPPによらずに、WPS(Wi-Fi Protected Setup)やWi-Fi Directなどによって通信パラメータ共有処理を実行してもよい。
【0022】
画像読取制御部302は、撮像部205により撮像されたバーコード、二次元コード、QRコード等の画像を解析し、符号化された情報を取得する。画像読取制御部302は、通信パラメータ共有処理を実行する際に使用される公開鍵を含むコード情報を、撮像部205によって撮像した画像として取得する。なお、コード情報は、CP(Computer Purpose)コードまたはQRコードなどの2次元コードまたはバーコードなどの1次元コードでありうる。画像読取制御部302は、取得したコード情報の画像を解析し、符号化された情報を取得する。本実施形態では、コード情報は、通信パラメータ共有処理において用いられる情報を含みうる。ここで、通信パラメータ共有処理において用いられる情報は、例えば、認証処理に用いられる公開鍵や装置の識別子などの情報を含む。なお、公開鍵は、公開鍵暗号方式で用いられる暗号鍵の一種で、通信パラメータ共有処理の際のセキュリティを高めるために用いられる情報である。なお、公開鍵に代えて、証明書やパスワード等の情報が用いられてもよい。画像生成制御部303は、バーコード、二次元コード、QRコード等の画像を生成し、生成した画像を表示部204へ表示するための制御を実行する。画像生成制御部303は、通信パラメータ共有処理を実行する際に使用される公開鍵や通信装置の識別子などの情報を含むコード情報を生成する。なお、通信装置においては、予め生成されたコード情報が筐体やその通信装置の製品の取り扱い説明書や製品の包装(例えば箱)に貼付されるなどによって、画面表示を伴わずにコード情報が表示されてもよい。これによれば、表示部204を有しない通信装置であっても、本実施形態に係る処理を実行することが可能となる。
【0023】
サービス制御部304は、アプリケーションレイヤにおけるサービスを制御する。ここでのアプリケーションレイヤとは、OSI参照モデルにおける第5層以上の上位レイヤにおけるサービス提供層のことを指す。サービス制御部304は、無線部203による無線通信を用いて、印刷処理や画像ストリーミング処理や、ファイル転送処理などの制御を実行する。
【0024】
パケット受信部305及びパケット送信部306は、上位レイヤの通信プロトコルを含む任意のパケットの送受信を制御する。例えば、パケット受信部305及びパケット送信部306は、通信の相手装置との間でIEEE802.11規格シリーズに準拠したパケットの送信及び受信を行うために無線部203を制御する。
【0025】
ステーション機能制御部307は、IEEE802.11規格シリーズのインフラストラクチャモードにおけるステーション(STA)として動作するSTA機能を提供する。ステーション機能制御部307は、STAとして動作する際に、認証・暗号処理等を実行する。また、アクセスポイント機能制御部308は、IEEE802.11規格シリーズのインフラストラクチャモードにおけるアクセスポイント(AP)として動作するAP機能を提供する。アクセスポイント機能制御部308は、無線ネットワークを形成し、STAに対する認証・暗号処理およびSTAの管理等を行う。データ記憶部309は、ソフトウェアそのもの、および、通信パラメータやバーコード類の情報の記憶部202への書き込み及び読み出しの制御を行う。
【0026】
なお、通信装置は、
図3に示される構成の一部を有しなくてもよく、場合によっては、
図3に示される構成と同様の機能を果たすことができる他の構成によって全ての構成が置き換えられてもよい。例えば、通信装置がアクセスポイント101である場合には、画像読取制御部302等を有しなくてもよい。また、通信装置において予め生成されたコード情報が筐体に貼付されるなどによって、画面表示を伴わずにコード情報を表示する場合、画像生成制御部303が省略されてもよい。
【0027】
(処理の流れ)
続いて、上述の通信装置が実行する処理の流れの例について説明する。以下では、まず、DPPのレスポンダ及びイニシエータが実行する処理の流れについて説明し、その後、無線通信システムで実行される処理の流れの例を説明する。
【0028】
<レスポンダ側の通信装置の動作>
図4に、レスポンダとして動作する通信装置(以下ではレスポンダ装置と呼ぶ。)が実行する処理の流れの例を示す。レスポンダ装置は、まず、例えばユーザ入力を介して、DPPによる通信パラメータ設定を実行するためのアプリケーションを起動する(S401)。その後、レスポンダ装置は、例えばユーザ操作を介して、通信パラメータの提供装置(コンフィギュレータ)と受信装置(エンローリ)とのいずれとの役割で動作するかを決定する(S402)。なお、レスポンダ装置は、例えばユーザ操作によらない事前設定された役割で動作するようにしてもよい。例えば、レスポンダ装置は、自装置がアクセスポイントである場合、常にコンフィギュレータとして動作するようにしてもよい。その後、レスポンダ装置は、例えば表示部204を介して、自装置の公開鍵等の自装置に関する情報を示すQRコードのようなコード情報の画像を表示する(S403)。なお、レスポンダ装置は、例えば印刷された画像が筐体に貼付される形式でコード情報を表示してもよく、この場合、S403においては特段の処理を実行しなくてもよい。コード情報の画像は、イニシエータ側の通信装置(以下ではイニシエータ装置と呼ぶ。)によって撮像される。イニシエータ装置は、撮像したコード情報を解析し、レスポンダ装置に関する情報を取得した後に、DPP Authentication Requestパケットをレスポンダ装置へ送信する。そして、レスポンダ装置は、このDPP Authentication Requestパケットを受信する(S404)。
【0029】
そして、レスポンダ装置は、S402で決定された自装置の通信パラメータ提供処理における役割(コンフィギュレータまたはエンローリ)を確認する(S405)。レスポンダ装置は、自装置がコンフィギュレータとして動作すると決定されている場合は、設定確認のためのユーザインタフェース(UI)を表示する(S406)。このUIの例を
図6に示す。レスポンダ装置は、一例において、
図6に示すように、イニシエータ装置のデバイス名を提示し、このイニシエータ装置との間での通信パラメータ設定処理の実行を許可するか否かのユーザ入力を受付可能な状態へ移行する。なお、
図6の「デバイス名」の領域には、イニシエータ装置のMACアドレスや、DPP Authentication Requestパケットに付加情報として設定されたイニシエータ装置を特定可能な情報などが表示される。
図6のUIでは、「OK」、「NO」、「相互」の3つの選択肢が提示され、ユーザはこれらの選択肢のうちのいずれかを選択する。ここで、「OK」は、表示されたイニシエータ装置との間の通信パラメータ設定処理を許可することを示す選択肢であり、「NG」は、表示されたイニシエータ装置との間の通信パラメータ設定処理を許可しないことを示す選択肢である。また、「相互」は、イニシエータ装置が表示したQRコード等のコード情報をレスポンダ装置が撮像することによる相互認証処理を実行して、相互にコード情報が取得された状態で通信パラメータ設定処理を実行することを示す選択肢である。なお、レスポンダ装置は、イニシエータ装置との通信パラメータ設定処理を許可する場合に、初期設定として「OK」又は「相互」の一方を実行するように指定されていてもよい。この場合、例えば
図6のUIにおいて、「OK」のみが表示され、ユーザ入力によってこの「OK」が選択された場合、このユーザ入力は初期設定に基づいて「OK」又は「相互」として解釈される。
【0030】
レスポンダ装置は、ユーザ操作が受け付けられた際に、これらの選択肢のうちのいずれがユーザによって選択されたかを判定する(S407)。レスポンダ装置は、S407において「NO」が選択されたと判定した場合は、イニシエータ装置に対してDPP Authentication Responseパケットでエラー応答を送信して(S417)、処理を終了する。レスポンダ装置は、S407で「OK」が選択されたと判定した場合は、通信パラメータ設定処理の相手装置であるイニシエータ装置の情報をユーザに入力させるためのUIを表示し、ユーザ入力の受付状態へ移行する(S408)。S408で表示されるUIの例を
図7に示す。ユーザは、
図7の「入力欄」に、イニシエータ装置の情報を入力する。ここで入力される情報は、例えば後述のS411で取得可能な情報と同様の情報でありうる。例えば、レスポンダ装置が、事前にインターネット等を介してイニシエータ装置の情報に関するファイルを取得しておき、そのファイルを指定することによってイニシエータ装置の情報が入力されうる。また、入力される情報は、後述のS411で取得可能な情報と異なっていてもよい。例えば、レスポンダ装置は、イニシエータ装置を特定可能な情報等のユーザによる手動入力を受け付けてもよい。レスポンダ装置は、S408で相手装置の情報のユーザによる入力を受け付けると、その後に処理をS412へ進める(S409でNO)。
【0031】
一方、レスポンダ装置は、S407で「相互」が選択されたと判定した場合は、S408の処理を実行せず、処理をS410へ進める(S409でYES)。S410において、レスポンダ装置は、イニシエータ装置にQRコード等のコード情報の表示を促すために、DPP Authentication Responseパケットでエラー応答を送信する。イニシエータ装置は、このDPP Authentication Responseパケットでのエラー応答に応じてコード情報を表示する。レスポンダ装置は、イニシエータ装置がコード情報を表示するのを待ち、コード情報が表示された際に、このコード情報を撮像し(S411)、イニシエータ装置の情報を取得する。ここで取得される情報は、例えば、イニシエータ装置の公開鍵等の情報でありうる。レスポンダ装置は、イニシエータ装置の情報を取得すると、続いて、DPP Authentication Responseパケットで正常応答を送信する(S412)。その後、レスポンダ装置は、DPPの仕様に基づいてパラメータ交換を実行し、イニシエータ装置との接続処理を実行する(S413~S416)。
【0032】
<イニシエータ側の通信装置の動作>
続いて、
図5を用いて、イニシエータ装置が実行する処理の流れの例について説明する。イニシエータ装置は、まず、例えばユーザ入力を介して、DPPによる通信パラメータ設定を実行するためのアプリケーションを起動する(S501)。その後、イニシエータ装置は、例えばユーザ操作を介して、通信パラメータの提供装置(コンフィギュレータ)と受信装置(エンローリ)とのいずれの役割で動作するかを決定する(S502)。そして、イニシエータ装置は、レスポンダ装置において表示されている公開鍵を含むQRコード等のコード情報を撮像し(S503)、レスポンダ装置に関する情報を取得する。イニシエータ装置は、この情報を取得したことに応じて、レスポンダ装置に対してDPP Authentication Requestパケットを送信する(S508)。
【0033】
なお、イニシエータ装置は、レスポンダ装置に対してDPP Authentication Requestパケットを送信する前に、S405~S408と同様の処理を実行しうる。ただし、例えば、イニシエータ装置が通信パラメータ設定処理を実行する相手装置を誤らずに選択してコード情報の読み取りを開始することができ、レスポンダ装置を確実に特定できると考えられる場合、これらの処理は実行されなくてもよい。
【0034】
イニシエータ装置は、自装置がコンフィギュレータとして動作している場合に、コード情報によって取得した相手装置の情報を表示し(S505)、その相手装置との通信パラメータ設定処理を許可するか否かのユーザ入力を受け付けうる。そして、例えば意図しない相手装置のコード情報を読み取ってしまっていた場合等に、S506において「NO」が選択されることにより、DPP Authentication Requestパケットを送信せずに、通信パラメータの設定処理を終了しうる。また、イニシエータ装置は、S506において「OK」が選択された場合に、例えば
図7のUIを表示し、相手装置の情報の入力を促してもよい(S507)。一例において、イニシエータ装置は、相手装置の名称等の情報の入力を受け付けうる。その後、イニシエータ装置は、DPP Authentication Requestパケットを送信する。そして、イニシエータ装置は、レスポンダ装置からのDPP Authentication Responseパケットでの正常応答を受信する(S511)。
【0035】
また、イニシエータ装置は、S506において「相互」が選択された場合には、S507の処理を実行せずにDPP Authentication Requestパケットを送信する。その後、イニシエータ装置は、例えば相手装置からDPP Authentication Responseパケットでのエラー応答を受信したことに応じて、QRコード等のコード情報を表示部204に表示させる(S510)。また、イニシエータ装置は、「相互」が選択された場合、DPP Authentication Requestパケットの送信後に所定時間が経過したことに応じて、コード情報を表示するようにしてもよい。そして、イニシエータ装置は、レスポンダ装置がこのコード情報を取得した後に送信するDPP Authentication Responseパケットでの正常応答を、受信する(S511)。
【0036】
その後は、イニシエータ装置は、DPPの仕様に基づいてパラメータ交換を実行し、レスポンダ装置との接続処理を実行する(S512~S515)。
【0037】
以上のように、本実施形態によれば、QRコード等のコード情報を利用した通信パラメータ設定において、レスポンダ装置のユーザがイニシエータ装置を特定(必要に応じてイニシエータ装置がレスポンダ装置を確認)可能とする。そして、ユーザによる許可後に、これらの通信装置間での通信パラメータの提供及び受信を行うことが可能となる。
【0038】
<無線通信システム全体における処理の流れ>
続いて、上述のようなイニシエータ装置及びレスポンダ装置を含んだ無線通信システムにおいて実行される処理の流れの例について説明する。上述のように、本実施形態にかかる無線通信システムでは、アクセスポイント101がネットワーク102を構築しており、スマートフォン103がアクセスポイント101に接続可能な通信パラメータを保持している。スマートフォン103は、例えば、アクセスポイント101がDPPに対応していない場合、WPSやAOSS(AirStation One-Touch Secure System)などの既存のプロトコルを用いて通信パラメータを取得しうる。また、スマートフォン103は、アクセスポイント101がDPPに対応している場合は、DPPを用いた自動設定等を用いてもよい。なお、本実施形態では、
図1の無線通信システムに関してアクセスポイント101がスマートフォン103に通信パラメータを提供する場合について説明するが、このような構成以外が用いられてもよい。例えば、Wi-Fi Direct(登録商標)のグループオーナが本実施形態に係るアクセスポイント101と同様に動作し、クライアントに通信パラメータを提供し、そのクライアントがさらに別のクライアントに通信パラメータを提供するようにしてもよい。また、スマートフォン103のユーザが、入力部208を介して手動で通信パラメータを入力してもよい。その後、スマートフォン103は、DPPのコンフィギュレータとして、エンローリ(プリンタ104)との通信パラメータ設定処理を実行するものとする。このとき、スマートフォン103(コンフィギュレータ)がイニシエータであって相互認証を行わない場合、レスポンダであって相互認証を行わない場合、レスポンダであって相互認証を行う場合、の処理の流れについて、以下、説明する。
【0039】
図8は、コンフィギュレータがイニシエータであって相互認証を行わない場合の処理の流れの例を示している。本処理では、まず、レスポンダ装置がQRコードを表示し、イニシエータ装置は、レスポンダ装置に表示されたQRコードを撮像する。イニシエータ装置は、このQRコードの撮像を契機として、DPP Authentication Requestパケットをレスポンダ装置に送信する。レスポンダ装置は、DPP Authentication Requestパケットを受信すると、必要に応じて、
図6に示すようなUI画面を表示する。なお、レスポンダ装置がエンローリである場合、受信したパラメータを使用するか否かを後に選択すれば足りる場合など、相手装置(イニシエータ装置)によらずに通信パラメータ設定処理を許可してもよい場合がある。このような場合、レスポンダ装置は、UI画面を表示しなくてもよい。なお、レスポンダ装置がUI画面を表示して、特定のイニシエータ装置との間でのみ通信パラメータ設定処理を許可するようにすることで、不必要な通信パラメータ設定処理が実行されるのを抑制することができる。レスポンダ装置は、UI画面が表示された場合、そのUI画面においてユーザによって「OK」が押下されたことに応じて、DPP Authentication Responseパケットをイニシエータ装置へ送信する。その後は、DPPの仕様に基づいて、パラメータ交換が実行され、レスポンダ装置とイニシエータ装置との間の接続処理が実行される。
【0040】
図9は、エンローリがイニシエータであって相互認証を行わない場合の処理の流れの例を示している。本処理でも、まず、レスポンダ装置がQRコードを表示し、イニシエータ装置は、レスポンダ装置に表示されたQRコードを撮像する。イニシエータ装置は、このQRコードの撮像を契機として、DPP Authentication Requestパケットをレスポンダ装置に送信する。レスポンダ装置は、このDPP Authentication Requestパケットを受信すると、
図6に示すようなUI画面を表示させる。
図6における「デバイス名」には、イニシエータ装置のMACアドレスや、DPP Authentication Requestパケットに付加情報として設定されているイニシエータ装置を特定するための情報が表示される。レスポンダ装置が通信パラメータの提供装置(コンフィギュレータ)である場合、イニシエータ装置を特定せずに通信パラメータを提供してしまうと、意図しない通信装置がネットワークに参加可能となってしまいうる。このため、本処理例では、コンフィギュレータとして機能するレスポンダ装置は、エンローリの候補であるイニシエータ装置を特定する情報をユーザに提供し、そのイニシエータ装置と通信パラメータ設定処理を実行してよいか否かのユーザ操作を受け付ける。これにより、ユーザが通信パラメータ設定処理を実行してよいと判断した相手装置との間でのみ、通信パラメータ設定処理を実行するようにすることができる。レスポンダ装置は、UI画面においてユーザによって「OK」が押下されたことに応じて、
図7のようなUI画面を表示させ、通信パラメータ設定処理を実行する相手装置に関する情報のユーザ入力を受け付ける。そして、レスポンダ装置は、そのユーザ入力を受け付けた後に、DPP Authentication Responseパケットをイニシエータ装置へ送信する。その後は、DPPの仕様に基づいて、パラメータ交換が実行され、レスポンダ装置とイニシエータ装置との間の接続処理が実行される。
【0041】
図10は、相互認証が行われる場合の処理の流れの例を示している。なお、
図10の処理例は、エンローリがイニシエータの場合の処理例を示しているが、コンフィギュレータがイニシエータであっても同様の処理が実行されうる。本処理でも、まず、レスポンダ装置がQRコードを表示し、イニシエータ装置は、レスポンダ装置に表示されたQRコードを撮像する。イニシエータ装置は、このQRコードの撮像を契機として、DPP Authentication Requestパケットをレスポンダ装置に送信する。レスポンダ装置は、このDPP Authentication Requestパケットを受信すると、
図6に示すようなUI画面を表示させる。そして、レスポンダ装置は、ユーザによって「相互」が押下されると、イニシエータ装置に対してDPP Authentication Responseパケットでエラー応答を送信し、イニシエータ装置がQRコードを表示するのを待機する。その後、イニシエータ装置がQRコードを表示し、レスポンダ装置は、レスポンダ装置に表示されたQRコードを撮像する。レスポンダ装置は、イニシエータ装置の情報を取得すると、イニシエータ装置に対して、DPP Authentication Responseパケットで正常応答を送信する。その後は、DPPの仕様に基づいて、パラメータ交換が実行され、レスポンダ装置とイニシエータ装置との間の接続処理が実行される。
【0042】
以上のようにして、DPPのレスポンダ装置は、ユーザがイニシエータ装置の情報を確認できるようにし、その確認結果に基づいて、そのイニシエータ装置との通信パラメータ設定処理の実行を許可するかのユーザ操作を受付可能とするUI画面を表示する。レスポンダ装置は、一例において、DPP Authentication Requestパケットを受信したことに基づいて、このUI画面を表示する。そして、レスポンダ装置は、イニシエータ装置との通信パラメータ設定処理を許可することを示すユーザ操作を受け付けたことに基づいて、DPPによる通信パラメータ設定処理を継続する。一方、レスポンダ装置は、イニシエータ装置との通信パラメータ設定処理を許可しないことを示すユーザ操作を受け付けた場合は、DPPによる通信パラメータ設定処理を継続せずに処理を終了する。これにより、ユーザが意図しない通信装置間で通信パラメータが交換されてしまうことを防ぐことができる。
【0043】
なお、UI画面の表示は必ずしも用いられなくてもよい。例えば、音声等によるイニシエータ装置の情報の提示が行われてもよく、レスポンダ装置に備えられたキーや物理ボタン等によって、上述のOKやNO等の選択を受け付けてもよい。すなわち、ユーザが相手装置を確認して通信パラメータ設定処理の実行可否を判断できるようにする任意の情報提示方法及び操作受付方法が用いられうる。
【0044】
また、上述の実施形態では、QRコード(登録商標)の画像を利用して、通信パラメータ設定処理を実行するための情報が通信装置間で送受信される例について説明したが、これに限られない。例えば、QRコード(登録商標)の撮像に代えて、Near Field Communication(NFC)やBluetooth(登録商標)などの無線通信が用いられてもよい。また、IEEE802.11adやTransferJet(登録商標)等の無線通信が用いられてもよい。なお、QRコード等のコード情報に代えて、ユーザが読み取ることができる情報が用いられてもよい。例えば、所定の文字列が表示され、アプリケーション起動後にユーザがその文字列を入力することにより、上述のQRコードの撮像で得られる情報と同様の情報を取得できるようにしてもよい。
【0045】
また、上述の実施形態では、通信装置間の通信をIEEE802.11規格シリーズ準拠の無線LANにより行う場合について説明したが、これに限られない。例えば、ワイヤレスUSBやワイヤレス1394やWINET等のUWB(Ultra Wide Band)、Bluetooth(登録商標)、ZigBee、NFC等の無線通信媒体が用いられてもよい。
【0046】
<<その他の実施形態>>
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
【符号の説明】
【0047】
201:制御部、202:記憶部、203:無線部、204:表示部、205:撮像部