JP7309345B2 - 通信装置、制御方法及びプログラム - Google Patents

通信装置、制御方法及びプログラム Download PDF

Info

Publication number
JP7309345B2
JP7309345B2 JP2018220908A JP2018220908A JP7309345B2 JP 7309345 B2 JP7309345 B2 JP 7309345B2 JP 2018220908 A JP2018220908 A JP 2018220908A JP 2018220908 A JP2018220908 A JP 2018220908A JP 7309345 B2 JP7309345 B2 JP 7309345B2
Authority
JP
Japan
Prior art keywords
communication device
standard
communication
conforming
processing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2018220908A
Other languages
English (en)
Other versions
JP2020088620A (ja
Inventor
秀明 橘
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2018220908A priority Critical patent/JP7309345B2/ja
Priority to PCT/JP2019/044557 priority patent/WO2020110731A1/ja
Publication of JP2020088620A publication Critical patent/JP2020088620A/ja
Priority to US17/327,130 priority patent/US20210282011A1/en
Application granted granted Critical
Publication of JP7309345B2 publication Critical patent/JP7309345B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/04Key management, e.g. using generic bootstrapping architecture [GBA]
    • H04W12/047Key management, e.g. using generic bootstrapping architecture [GBA] without using a trusted network node as an anchor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/04Key management, e.g. using generic bootstrapping architecture [GBA]
    • H04W12/043Key management, e.g. using generic bootstrapping architecture [GBA] using a trusted network node as an anchor
    • H04W12/0431Key distribution or pre-distribution; Key agreement
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication
    • H04W12/069Authentication using certificates or pre-shared keys
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/30Security of mobile devices; Security of mobile applications
    • H04W12/35Protecting application or service provisioning, e.g. securing SIM application provisioning
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/02Hierarchically pre-organised networks, e.g. paging networks, cellular networks, WLAN [Wireless Local Area Network] or WLL [Wireless Local Loop]
    • H04W84/10Small scale networks; Flat hierarchical networks
    • H04W84/12WLAN [Wireless Local Area Networks]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)

Description

本発明は、通信パラメータの共有処理を行う装置に関する。
近年、無線ネットワークにアクセスするための通信パラメータを共有する技術として、Wi-Fi DPP(Device Provisioning Protocol)規格が策定された。DPP規格では、コンフィグレータと呼ばれる装置が、エンローリと呼ばれる装置に通信パラメータを提供することが定められている(特許文献1)。
また、DPP規格とは異なる他の通信パラメータ共有規格として、WPS(Wi-Fi Protected Setup)規格がある。WPS規格では、レジストラと呼ばれる装置が、エンローリと呼ばれる装置に通信パラメータを提供することが定められている。
米国公開特許2017/0295448号公報
DPP規格だけでなく、他の通信パラメータ共有規格に対応した装置においては、いずれの共有規格を実行するかをユーザに選択させると、ユーザ操作が煩雑になってしまう。
上記課題を鑑み、本発明は、DPP規格に準拠した通信パラメータの共有処理と、これとは異なる他の共有処理とを実行可能な装置において、ユーザの利便性を向上させることを目的とする。
本発明の通信装置は、ユーザからの所定の操作を受け付ける受け付け手段と、Wi-Fi DPP(Device Provisioning Protocol)規格に準拠した第1の方法に従って、第1の他の通信装置と、無線ネットワークに接続するための通信パラメータの共有処理を行う第1の処理手段と、DPP規格とは異なる他の規格に準拠した第2の方法に従って、第2の他の通信装置と、前記無線ネットワークに接続するための通信パラメータの共有処理を行う第2の処理手段と、前記受け付け手段が前記所定の操作を受け付けた場合に、前記DPP規格に準拠した第1の信号と前記他の規格に準拠した第2の信号との待ち受けを行い、前記第1の信号を受信した場合には前記第1の処理手段は公開鍵による認証に成功すると、前記DPP規格に準拠したフレームで通信パラメータの共有処理を行い、前記第2の信号を受信した場合には前記第2の処理手段は前記他の規格に準拠したフレームで通信パラメータの共有処理を行うように制御する制御手段と、を有する。
本発明によれば、DPP規格に準拠した通信パラメータの共有処理と、これとは異なる他の共有処理とを実行可能な装置において、ユーザの利便性を向上させることができる。
通信システムの構成図。 通信装置101のハードウェア構成図。 通信装置101により実現されるフローチャート。 通信装置101と通信装置102との間のシーケンス図。 通信装置101により実現されるフローチャート。 通信装置101と通信装置102との間のシーケンス図。
図1に、本実施形態における通信システムの構成を示す。
通信装置101は、無線基地局であるアクセスポイントとして動作して、無線ネットワーク103を構築する。具体的には、通信装置101は、無線ネットワーク103の情報を含むビーコンを周期的に送信し、また、他の通信装置からの接続要求を受け付け、当該他の通信装置の無線ネットワーク103への接続を許可する。
また、通信装置101は、DPP(Device Provisioning Protocol)規格に準拠したコンフィギュレータとして動作する。コンフィギュレータとは、無線ネットワーク103に接続するために必要な通信パラメータを提供する役割の装置である。即ち、通信装置101は、通信装置102に対して無線ネットワーク103の通信パラメータを提供する。また、通信装置101は、WPS(Wi-Fi Protected Setup)規格に準拠したレジストラとしても動作する。レジストラとは、コンフィギュレータと同様に無線ネットワーク103に接続するために必要な通信パラメータを提供する役割の装置である。
なお、通信パラメータとは、例えば、DPPまたはWPS規格に準拠したクレデンシャルであり、無線ネットワーク103に接続するために必要な鍵情報であるnetAccessKey等の情報が含まれる。しかし、これに限らず、鍵情報としてPre Shared Key等の情報含むものであってもよい。また、通信パラメータは、無線ネットワーク103の識別子であるSSID(Service Set Identification)や周波数チャネルの情報を含んでいてもよい。また、無線ネットワーク103において用いられる暗号方式や認証方式等の情報を含んでいてもよいし、当該通信パラメータの有効期限を含んでいてもよい。
また、コンフィギュレータである通信装置101は、通信パラメータを提供する際に、役割情報も通知する。この役割情報とは、通信パラメータの共有処理が行われた後の役割を示す。この役割は、取得した通信パラメータを用いて無線ネットワークを構築するアクセスポイント、もしくは、取得した通信パラメータを用いて無線ネットワークに接続する接続装置(以下ステーションと称する)のどちらかを示す。通信装置101は、アクセスポイントとして動作するため、アクセスポイントを示す役割情報を通知する。
一方、通信装置102は、無線ネットワークに接続するステーションとして動作して、無線ネットワーク103に接続する。また、通信装置102は、DPP及びWPS規格の各々に準拠したエンローリとして動作する。即ち、通信装置102は、通信装置101から通信パラメータを取得し、無線ネットワーク103に接続することができる。
以下では、DPP規格に準拠したコンフィギュレータ、もしくは、エンローリとしての処理をDPP処理と呼ぶ。また、WPS規格に準拠したレジストラ、もしくは、エンローリとしての処理をWPS処理と呼ぶ。なお、通信装置101および通信装置102の具体例としては、アクセスポイント、携帯電話、デジタルカメラ、ビデオカメラ、プリンタ、プロジェクタ、PC、PDA、スマートフォン、スマートウォッチなどが挙げられるが、これらに限られない。
また、無線ネットワーク103は、IEEE802.11シリーズに準拠した無線ネットワークであり、通信装置101が構築したネットワークである。ここで、IEEEとは、The Institute of Electrical and Electronics Engineersの略である。しかしこれに限らず、無線ネットワーク103は、通信装置101や通信装置102とは異なる他のアクセスポイントが構築したネットワークであってもよい。また、通信装置101、もしくは、これとは異なる装置が、Wi-Fi Direct規格に準拠したGroup Ownerとして構築したネットワークであってもよい。更に、無線ネットワーク103は、ワイヤレスUSB、MBOA、Bluetooth(登録商標) 、UWB、ZigBee、NFC等に準拠したネットワークであってもよい。ここで、MBOAは、Multi Band OFDM Allianceの略であり、UWBは、Ultra Wide Bandの略である。また、UWBは、ワイヤレスUSB、ワイヤレス1394、WINETなどが含まれる。
図2に、通信装置101のハードウェア構成を示す。なお、通信装置102も同様のハードウェア構成を有する。
記憶部201はROMやRAM等の1以上のメモリにより構成され、後述する各種動作を行うためのプログラムや、無線通信のための通信パラメータ等の各種情報を記憶する。なお、記憶部201として、ROM、RAM等のメモリの他に、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD-ROM、CD-R、磁気テープ、不揮発性のメモリカード、DVDなどの記憶媒体を用いてもよい。
制御部202はCPUやMPU等の1以上のプロセッサにより構成され、記憶部201に記憶されたプログラムを実行することにより通信装置101全体を制御する。なお、制御部202は、記憶部201に記憶されたプログラムとOS(Operating System)との協働により通信装置101全体を制御するようにしてもよい。また、制御部202がマルチコア等の複数のプロセッサを備え、複数のプロセッサにより通信装置101全体を制御するようにしてもよい。
また、制御部202は、機能部203を制御して、撮像や印刷、投影等の所定の処理を実行する。機能部203は、通信装置101が所定の処理を実行するためのハードウェアである。例えば、通信装置101がカメラである場合、機能部203は撮像部であり、撮像処理を行う。また、例えば、通信装置101がプリンタである場合、機能部203は印刷部であり、印刷処理を行う。また、例えば、通信装置101がプロジェクタである場合、機能部203は投影部であり、投影処理を行う。機能部203が処理するデータは、記憶部201に記憶されているデータであってもよいし、後述する通信部206を介して他の通信装置と通信したデータであってもよい。
入力部204は、ユーザからの各種操作の受付を行う。出力部205は、ユーザに対して各種出力を行う。ここで、出力部205による出力とは、画面上への表示や、スピーカーによる音声出力、振動出力等の少なくとも1つを含む。なお、タッチパネルのように入力部204と出力部205の両方を1つのモジュールで実現するようにしてもよい。
通信部206は、IEEE802.11シリーズに準拠した無線通信の制御や、IP(Internet Porotocol)通信の制御を行う。また、通信部206はアンテナ207を制御して、無線通信のための無線信号の送受信を行う。通信装置101は通信部206を介して、画像データや文書データ、映像データ等のコンテンツを通信装置102と通信する。
図3に、通信装置101の電源が投入された場合に、記憶部201に記憶されたプログラムを制御部202が読み出し、それを実行することで実現される処理の流れのフローチャートを示す。なお、通信装置101の電源が投入された場合に代えて、ユーザ操作等により通信装置101が通信設定モード等、所定の動作モードに入った場合や、通信設定アプリケーション等、所定のアプリケーションが起動した場合に、実現されるようにしてもよい。
また、図3に示すフローチャートの少なくとも一部をハードウェアにより実現してもよい。ハードウェアにより実現する場合、例えば、所定のコンパイラを用いることで、各ステップを実現するためのプログラムからFPGA上に自動的に専用回路を生成すればよい。FPGAとは、Field Programmable Gate Arrayの略である。また、FPGAと同様にしてGate Array回路を形成し、ハードウェアとして実現するようにしてもよい。また、ASIC(Application Specific Integrated Circuit)により実現するようにしてもよい。この場合、以下のフローチャートにおける各ブロックは、ハードウェアブロックとして見做すことができる。なお、複数のブロックをまとめて1つのハードウェアブロックとして構成してもよいし、1つのブロックを複数のハードウェアブロックとして構成してもよい。
通信装置101は、まず、ユーザからの通信パラメータ共有開始指示を待ち受ける(S301)。ここでは、通信装置101は、入力部204を介してユーザからの通信パラメータ共有開始指示を受け付ける。なお、入力部204として、ハードウェアとしてのボタンであってもよいし、出力部205に表示されたUI(User Interface)上のボタンであってもよい。また、通信装置101は、不図示の外部装置(例えば赤外線通信を行うリモコンなど)から通信パラメータ共有開始指示を受け付けるようにしてもよい。通信パラメータ共有開始指示を受け付けると、通信装置101は、DPP処理を開始する。具体的には、通信装置101は、DPP規格及びIETFドラフトに準拠したPKEX処理に用いられる認証コードとして、予め定められた固定の文字列を設定する(S302)。なお、IETFはInternet Engineering Task Forceの略であり、PKEXはPublic Key Exchangeの略である。IETFドラフトに準拠したPKEX処理は、公開鍵交換プロトコルとも呼ばれる。
ここで、固定の文字列とは、例えば、“0000”のような固定の数字列や、“Push-Button-Configuration”などの固定の英字列(記号を含んでもよい)や、英数字を組み合わせた英数字列である。固定の文字列は、DPP規格において共通の文字列として定めるようにしてもよいし、各サービスに対応する固定の文字列として定めるようにしてもよい。例えば、プリントサービスを実行するためにDPP規格を用いて通信パラメータの共有処理を行う場合には第1の固定の文字列“Print”が認証コードとして用いられるようにする。そして、ディスプレイサービスを実行するためにDPP規格を用いて通信パラメータの共有処理を行う場合には第2の固定の文字列“Display”が認証コードとして用いられるようにする。
なお、プリントサービスとは、一方の装置が印刷データを送信し、他方の装置が印刷データを受信して印刷するサービスのことである。また、ディスプレイサービスとは、一方の装置が表示画像データを送信し、他方の装置が表示画像データを受信して表示するサービスのことである。
また、認証コードは、ユーザがボタンを押す回数に対応する固定の文字列(例えば、5回ボタンを押した場合は“0005”など)であってもよい。この場合、ユーザは通信装置101と通信装置102とで同じ回数だけボタンを押す必要がある。
なお、認証コードとして、いずれの固定コードを用いるかは、規格や、システムにおいて、予め決められているものとする。
認証コードの設定がされると通信装置101は、通信装置102との間で、当該認証コードを用いたPKEX処理を開始する(S303)。具体的には、通信装置101は、所定の固定チャネル(例えば、6ch)において、DPP規格に準拠したコード交換要求の送信および受信の待ち受けを開始する。なお、通信装置101は、コード交換要求を送信することなく、受信の待ち受けのみを行うようにしてもよい。PKEX処理の詳細については後述する。
通信装置101は、更にWPS処理を開始する(S304)。なお、ここでは、WPS規格に準拠したPBC(Push Button Configuration)方式に準拠した処理を開始するものとする。具体的には、まず、通信装置101は、無線ネットワーク103を構築していなければ、無線ネットワーク103を構築する。この際、通信装置101は、コード交換要求の送信および受信の待ち受けを行う固定チャネル(例えば、6ch)において、無線ネットワーク103を構築するものとする。そして、通信装置101は、エンローリ(例えば、通信装置102)からのProbe Requestフレームの待ち受けを開始する。なお、通信装置101は、無線ネットワーク103の動作チャネルにおいてProbe Requestフレームを待ち受ける。
なお、通信装置101は、Probe Requestフレームを受信すると、WPSが起動中であることを示すInformation Elementを付与したProbe Responseフレームを送信する。
次に、通信装置101は、DPP規格に準拠したエンローリ(例えば、通信装置102)から、コード交換要求、もしくは、自装置が送信したコード交換要求に対する応答を受信したかを判定する(S305)。なお、コード交換要求も、コード交換要求に対する応答も、IEEE802.11シリーズ規格に準拠したアクションフレームであり、DPP規格に準拠した信号である。受信したと判定された場合にはステップS306に進み、受信していないと判定された場合にはステップS315に進む。
ステップS305における動作について具体的に説明する。通信装置101は、ステップS303においてコード交換要求を送信していれば、コード交換要求に対する応答を受信したかを判定し、受信していればステップS306に進み、受信していなければステップS315に進む。この際、通信装置101は、更に、エンローリから送信されたコード交換要求を受信したかを判定してもよい。この場合、通信装置101は、コード交換要求と、コード交換要求に対する応答のいずれかの信号を受信していればステップS306に進み、いずれの信号も受信していなければステップS315に進む。
また、通信装置101は、ステップS303において、コード交換要求を送信していない場合には、コード交換要求を受信したかを判定し、受信していればステップS306に進み、受信していなければステップS315に進む。
ステップS306において、通信装置101はWPS処理を停止する。しかし、これに限らず、本ステップをスキップしてもよいし、ステップS301において通信パラメータ共有開始指示を受け付けてから所定時間が経過するまでWPS処理を継続してもよい。また、ユーザにより停止指示があるまでWPS処理を継続してもよい。WPS処理を継続している間に、後述するWPS開始要求をエンローリから受信した場合、通信装置101は、DPP処理と並行して、もしくは、DPS処理が終了した後に、後述するステップS317~319を実行する。
そして、通信装置101はPKEX処理が成功したかを確認する(S307)。
なお、PKEX処理では、認証コードを用いて互いの認証が行われ、また、その後の処理に用いられる認証用公開鍵(例えばDPP規格で規定されたbootstrapping key)の授受が為される。即ち、認証コードを用いたPKEX処理に成功すると、通信装置101と通信装置102とは、各々、互いの認証用公開鍵を共有できる。なお、PKEX処理の詳細は、図4を用いて後述する。
認証コードの不一致や、通信エラー等によりPKEX処理に失敗した場合(S307のNo)、通信装置101はエラーを通知する(S308)。具体的には、通信装置101は、出力部205に通信パラメータの共有処理に失敗した旨や、認証処理に失敗をした旨を示すエラーを示すメッセージを表示することで、ユーザにエラーを通知する。なお、通信装置101は、これに加えて、もしくは、代えて、通信装置102に対してエラーを通知するようにしてもよい。また、通知するエラーに、エラーの理由を示すエラーコード等を含めてもよい。
その後、通信装置101は、図3に示す処理を終了する。なお、図3に示す処理を終了することに代えて、ステップS301に戻り、新たな通信パラメータ共有開始指示を待ち受けるようにしてもよい。
一方、PKEX処理に成功した場合(S307のYes)は、通信装置101は、PKEX処理で行われた認証処理とは異なる認証処理であって、DPP規格に準拠した認証処理を開始するための認証要求を通信装置102に送信する(S309)。ここで、認証要求とは、DPP規格に準拠したDPP Authentication Requestフレームである。また、認証要求には、認証処理に用いられる認証情報、通信装置101の識別情報、通信装置101が生成した乱数、および、共有鍵を生成するために用いられる共有鍵生成用の公開鍵(通信装置101の公開鍵)が含まれる。なお、当該共有鍵は、認証のために当該乱数を暗号化する際に用いられる。
ここで、認証情報とは、具体的にはPKEX処理により取得した通信装置102の認証用公開鍵のハッシュ値である。また、通信装置101の識別情報とは、具体的には、PKEX処理により通信装置102に送信した通信装置101の認証用公開鍵のハッシュ値である。また、乱数は、述する認証応答の受信時に、認証のために使用される。
認証要求を送信した通信装置101は、その後、通信装置102からの認証応答を所定時間、待ち受ける(S310)。なお、認証応答を待ち受ける時間は、認証要求を送信してから所定時間であってもよいし、ステップS301において通信パラメータ共有開始指示を受け付けてから所定時間であってもよい。
認証要求を受信した通信装置102は、認証要求を送信した装置の検証処理を行う。この判定は、認証要求に含まれている認証情報を用いて行われる。即ち、通信装置102が、通信装置102の認証用公開鍵のハッシュ値を計算し、計算されたハッシュ値と認証要求に含まれるハッシュ値(認証情報)とを比較し、両者が一致した場合に検証が成功したと判定する。なお、このときのハッシュ値の計算に用いられるハッシュ関数は、DPP規格において定められており、通信装置101がハッシュ値の計算に用いたハッシュ関数と同じある。
検証に成功した場合、通信装置102は、認証に成功した場合、更に、通信装置101の共有鍵生成用の公開鍵と、通信装置102の共有鍵生成用の秘密鍵の双方を用いて共有鍵を生成する。共有鍵は、例えば、ECDH(Elliptic Curve Diffie-Hellman)方式に基づいて生成される。なお、共有鍵の生成方法は、ECDH方式に限定されるものではなく、その他の公開鍵暗号方式であってもよい。
そして、通信装置102は認証応答を送信する。なお、検証に失敗した場合には、通信装置102は、通信装置102は認証応答を送信しない。しかし、これに代えて、検証に失敗した場合に、通信装置102は、検証に失敗したことを示す認証応答を送信するようにしてもよい。
ここで、認証応答とは、DPP規格に準拠したDPP Authentication Responseフレームである。認証応答には、通信装置102の共有鍵生成用の公開鍵、通信装置102が生成した乱数、および、タグ情報が含まれる。なお、タグ情報とは、通信装置101の送信した認証要求に含まれていた乱数を、上述した共有鍵により暗号化したものである。当該タグ情報は、通信装置101における認証処理に用いられる。
ステップS310の説明に戻る。通信装置101は、所定時間内に認証応答を受信しなかった場合(S310のNo)、エラーを通知する(S308)。なお、検証に失敗したことを示す認証応答を受信した場合にも、ステップS308に進む。
エラーの通知方法についてはステップS307と同様であるため説明を省略する。なお、エラーコード等を含める場合には、ステップS307とは異なる理由によるエラーであることを通知してもよい。その後、通信装置101は、図3に示す処理を終了する。なお、図3に示す処理を終了することに代えて、ステップS301に戻り、新たな通信パラメータ共有開始指示を待ち受けるようにしてもよい。
一方、所定時間内に認証応答を受信した場合(S310のYes)、通信装置101は、認証応答に含まれる情報に基づいて、通信装置102の認証を行う(S311)。より具体的に説明する。通信装置101は、まず、通信装置101の共有鍵生成用の秘密鍵と通信装置102の共有鍵生成用の公開鍵とを用いて、通信装置102が共有鍵を生成したのと同じ方法により共有鍵を生成する。
ここで、通信装置101の共有鍵生成用の秘密鍵は、通信装置102が共有鍵を生成した際に用いられた通信装置101の共有鍵生成用の公開鍵に対応する通信装置101の秘密鍵である。また、通信装置102の共有鍵生成用の公開鍵は、通信装置102が共有鍵を生成した際に用いられた通信装置102の共有鍵生成用の秘密鍵に対応する公開鍵である。このような組み合わせの鍵を用いることにより、通信装置101は、通信装置102が生成した共有鍵と同じ共有鍵を生成することができる。
なお、共有鍵生成用の互いの公開鍵が、上述した認証要求および認証応答の送受により、通信装置101と通信装置102との間で正しく授受されなかった場合には、同じ共有鍵を生成できないことになる。
次に、通信装置101は、認証応答に含まれるタグ情報を、生成した共有鍵で復号し、認証要求に含めた乱数を正しく復号できるかを確認する。正しく復号できた場合には、通信装置101は、通信装置102の認証に成功したと判定する。一方、正しく復号できなかった場合には認証に失敗したと判定する。なお、正しく復号できない場合とは、例えば、同じ共有鍵を生成できなかった場合である。
認証に失敗した場合(S311のNo)、ステップS308に進み、通信装置101はエラーを通知する。一方、認証に成功した場合(S311のYes)、通信装置101は、通信装置102へ認証確認を送信する(S312)。ここで、認証確認とは、DPP規格に準拠したDPP Authentication Confirmフレームであり、タグ情報を含む。タグ情報は、通信装置102が送信した認証応答に含まれていた乱数を通信装置101が共有鍵によって暗号化したものである。
認証確認を送信した通信装置101は、その後、通信装置102からの設定要求を所定時間、待ち受ける(S313)。なお、設定要求を待ち受ける時間は、認証要求を送信してから所定時間であってもよいし、ステップS301において通信パラメータ共有開始指示を受け付けてから所定時間であってもよい。また、本ステップにおける所定時間は、ステップS310における所定時間と同じ時間であってもよいし、異なる時間であってもよい。
認証確認を受信した通信装置102は、当該認証確認に含まれているタグ情報を自身が生成した共有鍵で正しく復号できた場合に、認証成功と判定する。認証成功と判定すると、通信装置102は、認証要求を送信した通信装置101をコンフィギュレータと認定し、通信装置101に対して設定要求を送信する。ここで、設定要求とは、DPP規格に準拠したDPP Configuration Requestフレームである。この設定要求には、通信装置102のデバイス情報および役割情報が含まれる。デバイス情報とは、通信装置102のデバイス名などである。また、役割情報とは、通信パラメータ受信後の役割を示す情報であり、「アクセスポイント」もしくは「ステーション」である。設定要求に含まれる情報は、通信装置102が認証応答の送信時においてタグ情報の暗号化に使用した共有鍵で暗号化される。一方、認証成功と判定されなかった場合、即ち、認証に失敗した場合は、通信装置102は、設定要求を送信しない。
ステップS313の説明に戻る。通信装置101は、所定時間内に、通信装置102からの設定要求が受信されなかった場合(S313のNo)、ステップS308に進み、エラーを通知する。一方、所定時間内に、通信装置102からの設定要求が受信された場合(S313のYes)、通信装置101は、設定応答として、無線ネットワーク103に接続するための通信パラメータの提供処理を行う(S314)。ここで、設定応答とは、DPP規格に準拠したDPP Configuration Responseフレームである。
通信装置101の通信パラメータ処理部208が送信する設定応答には、通信パラメータ、通信パラメータの有効期限、通信装置101のコンフィギュレータ専用の公開鍵、役割情報などが含まれる。なお、通信パラメータは、DPP規格に準拠したクレデンシャルの他、通信装置102からの認証応答に含まれる公開鍵を含む。また、設定応答において、通信パラメータは、通信装置101のコンフィギュレータ専用の秘密鍵で暗号化されている。さらに、設定応答に含まれる情報は、通信装置101において生成された共有鍵で暗号化される。
エンローリである通信装置102は、設定要求を送信後、コンフィギュレータである通信装置101から設定応答が送信されるのを待ち受ける。設定応答を受信した通信装置102は、設定応答に含まれる情報共有鍵で復号する。さらに、通信装置102は、通信装置101のコンフィギュレータ専用の秘密鍵で暗号化された通信パラメータを、通信装置101のコンフィギュレータ専用の公開鍵で復号する。通信装置102は、復号して得られた通信パラメータで無線ネットワーク103に接続することができる。
ステップS305の説明に戻る。通信装置101は、ステップS305においてDPP規格に準拠した信号を受信していない場合、エンローリからWPS開始要求があったか否かを判定する(S315)。なお、WPS開始要求とは、例えばIEEE802.11シリーズ規格に準拠したEAPOL-Start信号である。なお、これに代えて、WPSのInformation Elementが付いたAssociation Request(接続要求信号)であってもよい。
一方、WPS開始要求がなかった場合(S315のNo)、ステップS305に進み、通信装置101は再度、DPP規格に準拠した信号を受信したかを判定する。なお、ステップS301において通信パラメータ共有開始指示を受け付けてから所定時間が経過している場合には、ステップS305に進まず、図3に示す処理を終了してもよい。ここでの所定時間とは、WPS規格において定められた2分間である。なお、図3に示す処理を終了する場合、通信装置101は、出力部205を介してユーザにエラーを通知してもよい。
通信装置101は、エンローリからWPS開始要求があった場合(S315のYes)、DPP処理を停止する(S316)。しかし、これに限らず、本ステップをスキップしてもよいし、ステップS301において通信パラメータ共有開始指示を受け付けてから所定時間が経過するまでDPP処理を継続してもよい。また、ユーザにより停止指示があるまでDPP処理を継続してもよい。DPP処理を継続している間に、DPP規格に準拠した信号をエンローリから受信した場合、通信装置101は、WPS処理と並行して、もしくは、WPS処理が終了した後に、ステップS307~314を実行する。
続いて、通信装置101はWPS規格に準拠した通信パラメータ共有処理を実行し(S317)、当該通信パラメータ共有処理が成功したかを判定する(S318)。通信エラー等によりWPS処理に失敗した場合(S318のNo)、通信装置101はエラーを通知する(S319)。具体的には、通信装置101は、出力部205に通信パラメータの共有処理に失敗した旨を示すエラーを示すメッセージを表示することで、ユーザにエラーを通知する。なお、通信装置101は、これに加えて、もしくは、代えて、通信装置102に対してエラーを通知するようにしてもよい。また、通知するエラーに、エラーの理由を示すエラーコード等を含めてもよい。その後、通信装置101は、図3に示す処理を終了する。なお、図3に示す処理を終了することに代えて、ステップS301に戻り、新たな通信パラメータ共有開始指示を待ち受けるようにしてもよい。
以上のような処理を行う通信装置101が通信装置102に通信パラメータを提供するまでの、通信装置101と通信装置102の動作についてさらに説明する。図4は、通信装置101がDPP規格に準拠した信号を受信し、DPP規格に従って通信装置102に通信パラメータを提供する際のシーケンス図である。
まず、通信装置102は、押しボタンによるDPP開始指示をユーザから受け付けると(S401)、固定の認証コードを設定する(S402)。この認証コードとは、IETFドラフトにおける公開鍵交換プロトコルのpasswordに相当する。
一方、通信装置101は、押しボタンによる通信パラメータ共有開始指示をユーザから受け付けると(S403)、固定の認証コードを設定する(S404)。具体的には、通信装置101は、設定した認証コードのハッシュ(Hash)と、DPP規格において定められた要素(Pi)とを組み合わせて暗号要素Qaを生成する。また、通信装置101は、一時的な鍵ペア(秘密鍵xおよび公開鍵X)を生成し、暗号要素Qaに、生成された一時的な鍵ペアの公開鍵Xを付与して、情報要素Mを生成する。なお、公開鍵Xおよび情報要素Mは、x成分およびy成分を含むベクトルである。
Qa=Hash(認証コード)*Pi
M=X+Qa
そして、通信装置101は、生成した暗号要素Qa、情報要素M、および、通信装置101の識別子(例えばMACアドレス)を含むコード交換要求を、通信装置102に送信する(S405)。ここでは、IEEE802.11シリーズに準拠したアクションフレームを用いて、コード交換要求を送信するものとする。しかしこれに限らず、NFCやBluetooth、トランスファージェット(TransferJet)、Ethernet、USB等に準拠した信号を用いるようにしてもよい。なお、NFCとは、Near Field Communicationの、USBとはUniversal Serial Busの各々、略である。
これにより、IETFドラフトにおける公開鍵交換プロトコルの認証フェーズ(Authentication Phase)が開始される。通信装置101は、DPP規格であるコード交換要求を送信後、並行して、WPS処理を開始する(S406)。
通信装置102は、通信装置101からのコード交換要求を受信すると、コード交換要求に含まれる情報要素Mと、自装置で計算した暗号要素Qa’とから、一時鍵X’の算出を行う。なお、通信装置102は、自装置が設定した認証コードのハッシュと、DPP規格において定められた要素(Pi)とを組み合わせて暗号要素Qa’を生成する。
Qa’=Hash(認証コード)*Pi
X’=M-Qa’
ここで、通信装置101が設定した固定の認証コードと、通信装置102が設定した固定の認証コードとが同じである場合には、QaとQa’とは同じ値になる。その結果、XとX’も同じ値となる。これにより、通信装置102は、通信装置101の一時的な鍵ペアの公開鍵Xを取得できることになる。
また、通信装置102は、更に、設定した認証コードのハッシュと、DPP規格において定められた要素(Pr)とを組み合わせて暗号要素Qbを生成する。また、通信装置101は、一時的な鍵ペア(秘密鍵yおよび公開鍵Y)を生成し、暗号要素Qbに、生成された一時的な鍵ペアの公開鍵Yを付与して、情報要素Nを生成する。なお、公開鍵Y、および、情報要素Nは、x成分およびy成分を含むベクトルである。
Qb=Hash(認証コード)*Pr
N=Y+Qb
そして、通信装置102は、生成した暗号要素Qb、情報要素N、および、通信装置102の識別子(例えばMACアドレス)を含むコード交換応答を、通信装置101に送信する(S407)。通信装置101は通信装置102コード交換応答を受信した場合、WPS処理を停止する(S408)。通信装置101は、通信装置102からのコード交換応答を受信すると、コード交換応答に含まれる情報要素Nと、自装置で計算した暗号要素Qb’とから、一時鍵Y’の算出を行う。なお、通信装置101は、自装置が設定した認証コードのハッシュと、DPP規格において定められた要素(Pr)とを組み合わせて暗号要素Qb’を生成する。
Qb’=Hash(認証コード)*Pr
Y’=N-Qb’
ここで、通信装置101が設定した固定の認証コードと、通信装置102が設定した固定の認証コードとが同じである場合には、QbとQb’とは同じ値になる。その結果、XとX’も同じ値となる。これにより、通信装置101は、通信装置102の一時的な鍵ペアの公開鍵Yを取得できることになる。
なお、通信装置101は、DPP開始指示を受け付けてから所定時間内に通信装置102からコード交換応答を受信しなかった場合には、PKEX処理に失敗したものとして処理を進めるようにしてもよい。即ち、通信装置101は、図3におけるステップS305のエラー処理を実行して、通信パラメータを共有することなく、共有処理を終了してもよい。これにより、通信装置101と通信装置102との間で所定時間内にDPP開始指示が為されなければ共有処理が終了されるため、セキュリティが向上する。
次に、通信装置101は、通信装置101の秘密鍵xと通信装置102の公開鍵Y’から一時的な暗号情報Kを算出する。ここで、暗号情報Kは、x成分およびy成分を含むベクトル値である。通信装置101は、更に、IETFドラフトに定められた関数KDF-n(Key Delivery Function)を用いて、共通鍵Zを算出する。
K=x*Y’
Z=KDF-n(<>,通信装置101の識別子|通信装置102識別子|M.x|N.x|認証コード,K.x)
ここで、<>は関数に引き渡される第1の引数がブランクであることを示す。また、|は、各要素を結合させることを示す。また、M.x、N.x、および、K.xは、各々、M、N、Kのx成分の値を示す。
一方、通信装置102は、通信装置102の秘密鍵yと通信装置101の公開鍵X’から一時的な暗号情報K’を算出する。そして、同じ関数KDF-nを用いて、共通鍵Z’を算出する。
K’=y*X’
Z=KDF-n(<>,通信装置101の識別子|通信装置102識別子|M.x|N.x|認証コード,K’.x)
ここで、XとX’とが同じ値であり、かつ、YとY’とが同じ値である場合には、KとK’とは同じ値になる。その結果、Z’とZも同じ値となる。これにより、通信装置101と通信装置102は、同じ共通鍵Zを共有することができ、公開鍵交換プロトコルの認証フェーズ(Authentication Phase)が完了する。
公開鍵交換プロトコルの認証フェーズ(Authentication Phase)が完了すると、IETFドラフトにおける公開鍵交換プロトコルの公開鍵共有フェーズ(Reveal Phase)が開始される。
具体的には、通信装置101は、通信装置101の識別子、通信装置101の認証用公開鍵(例えばDPP規格で規定されたbootstrapping key)、X.x、および、Y’.xを用いて情報要素uを算出する。ここで、X.x、および、Y’.xは、各々、XおよびY’のx成分の値を示す。そして、通信装置101は、情報要素uおよび通信装置101の認証用公開鍵を、共通鍵Zで暗号化して送信する(S409)。
また、通信装置102は、通信装置101の識別子、通信装置101の認証用公開鍵、X’.x、および、Y.xを用いて情報要素u’を算出する。そして、通信装置102は、情報要素u’および通信装置102の認証用公開鍵を、共通鍵Zで暗号化して送信する(S410)。
通信装置101は、共通鍵Zを用いて、通信装置102から受信した情報要素u’および通信装置102の認証用公開鍵を復号する。その結果、取得した情報要素u’が、自装置が算出した情報要素uと一致していた場合には、PKEX処理に成功したものと判定する。なお、上述したように、互いに設定された認証コードが一致していた場合には、情報要素uと情報要素u’とが一致することになる。このようにして、PKEX処理における認証コードを用いた認証処理が行われ、互いの認証用公開鍵が共有される。互いの認証用公開鍵が共有されると、公開鍵交換プロトコルの公開鍵共有フェーズ(Reveal Phase)が完了する。
次に、通信装置101は認証要求を生成し、送信する(S411)。通信装置102はこの認証要求を受信し、受信した認証要求の内容を検証する(S412)。そして、通信装置102は、認証応答を生成、送信する(S413)。通信装置101へ認証応答を送信した通信装置102は、通信装置101から認証確認が送信されるのを待ち受ける。
認証応答を受信した通信装置101は、認証応答に基づく認証を行う(S414)。通信装置101は、認証成功と判定すると、通信装置102へ認証確認を送信する(S415)。通信装置101から認証確認を受信した通信装置102は、認証確認の内容を検証する(S416)。そして、認証に成功したと判定されると、通信装置102は、通信パラメータの設定処理を行うために設定要求を送信し(S417)、通信装置101から設定応答が送信されるのを待ち受ける。設定要求を受信した通信装置101は、通信装置101のコンフィギュレータ専用の秘密鍵で暗号化した通信パラメータと、コンフィギュレータ専用の公開鍵を設定応答に含めて送信する(S418)。設定応答を受信した通信装置102は、通信装置101のコンフィギュレータ専用の公開鍵で通信パラメータを復号する。その後、通信装置102は、この復号された通信パラメータを用いて無線ネットワーク103に接続する(S419)。
以上、図3、図4を用いて説明した処理によって、通信装置101が、通信装置102に通信パラメータを提供することができる。なお、上述の実施形態では、コンフィギュレータである通信装置101がコード交換要求を送信したが、エンローリである通信装置102が送信してもよい。その場合、コンフィギュレータである通信装置101がコード交換要求を待ち受け、コード交換応答を送信する。また、通信装置101と通信装置102がコード交換要求の送信処理と待ち受け処理を適当な時間間隔で交互に繰り返すことで、送受信できるようにしてもよい。
次に、通信装置101が、Probe Responseフレームを受信し、WPS規格に従って通信装置102に通信パラメータを提供する場合のシーケンスについて、図6を用いて説明する。
まず、通信装置102は、WPS開始指示(例えば、ボタンの押下)をユーザから受け付けると、WPS規格のエンローリ処理を開始する(S601)。一方、通信装置101は、通信パラメータ共有開始指示(例えば、ボタンの押下)をユーザから受け付けると(S602)、固定の認証コードを設定する(S603)。そして、通信装置101は、コード交換要求を、通信装置102に送信する(S604)。
通信装置101は、DPP規格であるコード交換要求を送信後、並行して、WPS処理を開始する。具体的には通信装置101は、エンローリのProbe Requestフレームの待ち受けを開始する(S605)。通信装置102は、WPSを起動しているため、通信装置101からのコード交換要求を受信してもDPPは実施せず、周辺にWPSを起動している装置があるかを確認するため、Probe Requestフレームを送信する。(S606)。
通信装置101は、通信装置102からProbe Requestフレームを受信すると、通信装置102に対してWPSの起動中を示すInformation Elementを付与したProbe Responseフレームを送信する(S607)。通信装置102は、通信装置101からProbe Responseフレームを受信すると、通信装置101が構築する無線ネットワーク103に対して接続を行う。具体的には、通信装置102は、WPSのInformation Elementを付与したAssociation Requestを通信装置101に送信する。
通信装置101は、通信装置102のAssociation Requestを受信すると、通信装置102に対して、WPSのInformation Elementを付与したAssociation Responseを送信する(S608)。こうして、通信装置102による無線ネットワーク103への接続が完了する(S609)。なお、WPSのInformation Elementを付与した信号を用いた接続を行った場合には、通信装置101と通信装置102とは、通信パラメータの共有に必要な信号のみを通信することができる。即ち、通信装置101と通信装置102とは、ユーザデータ等の通信を行うことはできない。
通信装置101は、通信装置102の無線ネットワーク103への接続が完了すると、DPP処理を停止する(S610)。そして、通信装置102は、WPS規格に準拠したパラメータ共有処理を開始する(S611)。具体的にはEAPOL-Startフレームを送信してWPSのパラメータ共有セッションを開始する。
通信装置101は通信装置102との間で、EAPフレームを用いて、WPSのパラメータ共有処理を行う。具体的にはEAPフレームを用いて、DH(Diffie-Hellman key exchange)を利用して暗号鍵の共有を行う(S612)。通信装置101は、通信装置102と共有した暗号鍵で暗号化した通信パラメータを送信する。通信装置102は、通信装置101と共有した暗号鍵で通信パラメータを復号する(S613)。その後、通信装置102は、この復号された通信パラメータを用いて無線ネットワーク103に接続する(S614)。この場合、通信装置101と通信装置102とはユーザデータ等を通信することができる。このような処理によって、通信装置101は、通信装置102にWPS規格に準拠した方法により通信パラメータを提供することができる。
以上のようにして、DPP規格を含む複数の通信パラメータの共有規格に準拠した装置が通信パラメータの共有処理を行う場合に、簡易なユーザインタフェースを利用することが可能となり、ユーザの利便性が向上する。より具体的には、例えば、ユーザは装置のボタンを押すだけで、複数ある通信パラメータ共有規格の中から実行する通信パラメータ共有規格が自動的に選択されることにより利便性を高めることができる。
また、上述の実施形態では、通信装置101がコンフィギュレータとして動作して通信パラメータを提供した。これに限らず、通信装置101がエンローリとして動作し、通信装置102がコンフィギュレータとして動作することによって、通信装置101が通信装置102から通信パラメータを受信する構成であってもよい。
また、通信装置101は、図3に代えて図5のように動作してもよい。即ち、通信装置101は、ユーザからの通信パラメータ共有開始指示を待ち受ける(S501)。ここでは、ユーザは複数の方法で、通信パラメータ共有の開始を指示できるものとする。例えば、通信装置101が、各々が異なる指示に対応する複数のボタンを有する構成であってもよいし、切り替えスイッチを有する構成であってもよい。また、これらのボタンやスイッチは、ハードウェアによって実現されてもよいし、ソフトウェアによって実現されてもよい。
そして、通信装置101は、ユーザからの通信パラメータ共有開始指示を受け付けると、当該DPP開始指示が所定のDPP開始指示であるかを判定する(S502)。所定のDPP開始指示である場合には(S502のYes)、通信装置101は、上述したステップS302以降の処理を実行する。一方、所定のDPP開始指示でない場合には(S502のNo)、ユーザに認証コードを入力させる(S503)。そして、通信装置101は、固定の認証コードではなく、ユーザに入力された認証コードを用いてPKEX処理を開始する(S504)。その後、通信装置101は、上述したステップS304に進み、以降の処理を行う。
このような構成によれば、固定の認証コードを用いたDPPの通信パラメータ共有処理を行うか、ユーザに入力された認証コードを用いたDPPの通信パラメータ共有処理を行うかを切り替えることができる。
なお、ステップS503で入力された認証コードをWPS規格に準拠したPINモードにおけるPINとして用いて、WPS処理を行うようにしてもよい。ここで、PINとはPersonal Identification Numberの略である。このような構成によれば、DPP処理と、WPS規格に準拠したPIN方式による通信パラメータの共有処理とのいずれかを通信装置101は適切に選択することができる。また、PKEX処理において用いられる認証コードと、PIN方式において用いられるPINの入力を共用できるため、ユーザの利便性が向上する。なお、入力された認証コードがWPS規格に準拠したPINの方式、即ち、4桁もしくは8桁の数字でない場合には、通信装置101は、PIN方式を実行しないようにしてもよい。この場合、通信装置101は、DPP処理のみを実行するようにしてもよいし、DPP処理とWPS規格に準拠したPBCモードとを実行するようにしてもよい。その際には、PIN方式において用いることのできない認証コードが入力されたことを通信装置101は、ユーザに通知する。
また、ステップS503において、認証コードの入力に代えて、ランダムな認証コードを通信装置101が生成して表示するようにしてもよい。この場合、通信装置101は、WPS規格に準拠したPINの方式にも利用可能な認証コードを生成してもよい。そして、通信装置101は、当該認証コードを用いて、その後の処理を行う。なお、ユーザは、通信パラメータの共有相手となる通信装置102に、当該認証コードを入力することになる。
また、ステップS502において、DPP処理のみを実行する指示を受け付けるようにしてもよい。このような指示を受け付けた場合には、通信装置101は、ステップS302、S303、およびS305を実行する。そして、ステップS305でNoである場合には、ステップS305の処理を繰り返す。なお、この場合、ステップS501において通信パラメータ共有開始指示を受け付けてから所定時間が経過した場合には、図3に示す処理を終了してもよい。この場合、通信装置101は、出力部205を介してユーザにエラーを通知してもよい。一方、ステップS305でYesである場合には、ステップS307に進み、以降の処理を行う。
上述の実施形態では、通信装置101がレジストラとして動作して通信パラメータを提供した。これに限らず、通信装置101がエンローリとして動作し、通信装置102がコンフィギュレータ、もしくはレジストラとして動作することによって、通信装置101が通信装置102から通信パラメータを受信する構成であってもよい。
通信装置101がエンローリとして動作する場合には、ステップS304において、通信装置101は、Probe Requestフレームの送信を開始する。このとき、通信装置101は、複数のチャネルにわたって、Probe Requestフレームを送信し、Probe Responseフレームの受信を待ち受ける。なお、DPP規格に準拠した固定チャネル(例えば、6ch)のみ、信号の受信待ち受け時間を長くするようにしてもよい。これにより、通信装置101がProbe Responseフレームの他、DPP規格に準拠した信号を早期に受信できる可能性を高めることができる。ここで、ステップS305の判定で肯定的(Yes)となるDPP規格に準拠した信号をした場合には、ステップS306に進めばよい。
通信装置102からProbe Responseフレームを受信した場合には、通信装置101は、通信装置102に対して、WPSのInformation Elementを付与したAssociation Requestを送信する。その上で、ステップS315において、通信装置101はWPSのInformation Elementを付与したAssociation Responseを通信装置102から受信したかを判定する。Association Responseを受信していない場合にはステップS305に戻る。一方、Association Responseを受信した場合にはステップS316に進み、通信装置101は、EAPOL-Startフレームを送信して、通信装置102とWPSのパラメータ共有セッションを開始する。そして、通信装置101が、通信装置102から通信パラメータを受信すると(S318のYes)、図3に示す処理を終了する。一方、通信装置102から通信パラメータを受信しなければ(S318のNo)、通信装置101は、ユーザや通信装置102にエラーを通知する(S319)。
このようにすることで、通信装置101がエンローリとして動作する場合であっても、本実施形態を適用することができる。
また、上述の実施形態では、通信装置101は、DPP処理と共に、WPS処理を開始した。しかし、これに代えて、もしくは、加えて、通信装置101は、Wi-Fi Directや、AOSS(AirStation One-Touch Secure System)等、他の通信パラメータ共有規格を開始するようにしてもよい。このとき、通信パラメータ共有開始指示を通信装置101が受け付けた場合に、何れの通信パラメータ共有規格を開始するかを予めユーザが設定できるようにしてもよい。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
101 通信装置
102 通信装置
103 無線ネットワーク

Claims (17)

  1. 通信装置であって、
    ユーザからの所定の操作を受け付ける受け付け手段と、
    Wi-Fi DPP(Device Provisioning Protocol)規格に準拠した第1の方法に従って、第1の他の通信装置と、無線ネットワークに接続するための通信パラメータの共有処理を行う第1の処理手段と、
    DPP規格とは異なる他の規格に準拠した第2の方法に従って、第2の他の通信装置と、前記無線ネットワークに接続するための通信パラメータの共有処理を行う第2の処理手段と、
    前記受け付け手段が前記所定の操作を受け付けた場合に、前記DPP規格に準拠した第1の信号と前記他の規格に準拠した第2の信号との待ち受けを行い、前記第1の信号を受信した場合には前記第1の処理手段は公開鍵による認証に成功すると、前記DPP規格に準拠したフレームで通信パラメータの共有処理を行い、前記第2の信号を受信した場合には前記第2の処理手段は前記他の規格に準拠したフレームで通信パラメータの共有処理を行うように制御する制御手段と、
    を有することを特徴とする通信装置。
  2. 前記第1の信号は、認証コードを用いて、前記第1の他の通信装置との間で、DPP規格によって定められた所定の公開鍵を前記第1の他の通信装置と共有するために用いられる信号であることを特徴とする請求項1の通信装置。
  3. 前記所定の公開鍵は、DPP規格に準拠したbootstrapping keyであることを特徴とする請求項2に記載の通信装置。
  4. ユーザにコードを入力させる入力手段を更に有し、
    前記第1の処理手段と前記第2の処理手段とは、前記入力手段により入力された共通のコードを用いて共有処理を行うことを特徴とする請求項1から3のいずれか1項に記載の通信装置。
  5. 前記他の規格は、WPS(Wi-Fi Protected Setup)規格であって、
    前記他の規格は、WPS規格に準拠したPIN(Personal Identification Number)方式に従った方法であることを特徴とする請求項1から4のいずれか1項に記載の通信装置。
  6. 前記他の規格は、WPS(Wi-Fi Protected Setup)規格であることを特徴とする請求項1から4のいずれか1項に記載の通信装置。
  7. 前記第2の方法は、WPS規格に準拠したPBC(Push Button Configuration)方式に従った方法であることを特徴とする請求項6に記載の通信装置。
  8. 前記他の規格は、WPS規格に準拠したPIN(Personal Identification Number)方式に従った方法であることを特徴とする請求項6に記載の通信装置。
  9. 前記他の規格は、Wi-Fi Direct規格であることを特徴とする請求項1から4のいずれか1項に記載の通信装置。
  10. 前記他の規格は、AOSS(AirStation One-Touch Secure System)規格であることを特徴とする請求項1から4のいずれか1項に記載の通信装置。
  11. 前記他の規格として、何れの規格を用いるかを設定する設定手段を更に有することを特徴とする請求項1から4のいずれか1項に記載の通信装置。
  12. 前記所定の操作は、ボタンの選択操作であることを特徴とする請求項1から11のいずれか1項に記載の通信装置。
  13. 前記受け付け手段が前記所定の操作を受け付けた場合、前記制御手段はDPP規格に準拠したコード交換要求を送信し、前記第1の信号と前記第2の信号との待ち受けを行うことを特徴とする請求項1から12のいずれか1項に記載の通信装置。
  14. 前記制御手段は、前記第2の処理手段による共有処理より、前記第1の処理手段による共有処理を優先して実行することを特徴とする請求項1から13のいずれか1項に記載の通信装置。
  15. 前記制御手段は、前記第1の信号を受信すると前記第2の処理手段による処理を停止することを特徴とする請求項1から14のいずれか1項に記載の通信装置。
  16. 通信装置の制御方法であって、
    ユーザからの所定の操作を受け付ける受け付け工程と、
    Wi-Fi DPP(Device Provisioning Protocol)規格に準拠した第1の方法に従って、第1の他の通信装置と、無線ネットワークに接続するための通信パラメータの共有処理を行う第1の処理工程と、
    DPP規格とは異なる他の規格に準拠した第2の方法に従って、第2の他の通信装置と、前記無線ネットワークに接続するための通信パラメータの共有処理を行う第2の処理工程と、
    前記所定の操作を受け付けた場合に、前記DPP規格に準拠した第1の信号と前記他の規格に準拠した第2の信号との待ち受けを行い、前記第1の信号を受信した場合には前記第1の処理工程において公開鍵による認証に成功すると、前記DPP規格に準拠したフレームで通信パラメータの共有処理を行い、前記他の規格に準拠した第2の信号を受信した場合には前記第2の処理工程において前記他の規格に準拠したフレームで通信パラメータの共有処理を行うように制御する制御工程と、
    を有することを特徴とする制御方法。
  17. コンピュータを請求項1から1のいずれか1項に記載の通信装置として動作させるためのプログラム。
JP2018220908A 2018-11-27 2018-11-27 通信装置、制御方法及びプログラム Active JP7309345B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2018220908A JP7309345B2 (ja) 2018-11-27 2018-11-27 通信装置、制御方法及びプログラム
PCT/JP2019/044557 WO2020110731A1 (ja) 2018-11-27 2019-11-13 通信装置、制御方法及びプログラム
US17/327,130 US20210282011A1 (en) 2018-11-27 2021-05-21 Communication apparatus, control method, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018220908A JP7309345B2 (ja) 2018-11-27 2018-11-27 通信装置、制御方法及びプログラム

Publications (2)

Publication Number Publication Date
JP2020088620A JP2020088620A (ja) 2020-06-04
JP7309345B2 true JP7309345B2 (ja) 2023-07-18

Family

ID=70854343

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018220908A Active JP7309345B2 (ja) 2018-11-27 2018-11-27 通信装置、制御方法及びプログラム

Country Status (3)

Country Link
US (1) US20210282011A1 (ja)
JP (1) JP7309345B2 (ja)
WO (1) WO2020110731A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112564887A (zh) * 2020-11-30 2021-03-26 北京百度网讯科技有限公司 密钥保护处理方法、装置、设备和存储介质
JP2023053802A (ja) * 2021-10-01 2023-04-13 キヤノン株式会社 通信装置およびその制御方法、通信システム

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013038498A (ja) 2011-08-04 2013-02-21 Buffalo Inc アクセスポイント装置および通信設定提供方法
JP2015220604A (ja) 2014-05-16 2015-12-07 キヤノン株式会社 通信装置、制御方法及びプログラム
JP2018042058A (ja) 2016-09-06 2018-03-15 キヤノン株式会社 通信装置、通信装置の制御方法及びプログラム
JP2018129770A (ja) 2017-02-10 2018-08-16 キヤノン株式会社 情報処理装置、制御方法及びプログラム

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9854507B2 (en) * 2015-02-09 2017-12-26 Intel IP Corporation Flexible connectivity framework
JP6589449B2 (ja) * 2015-08-07 2019-10-16 セイコーエプソン株式会社 無線通信装置、無線通信システム、無線通信方法及びプログラム
US20180034690A1 (en) * 2016-07-29 2018-02-01 Hubble Connected India Private Limited System and methods for provisioning devices
JP7155581B2 (ja) * 2018-03-30 2022-10-19 ブラザー工業株式会社 通信装置と通信装置のためのコンピュータプログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013038498A (ja) 2011-08-04 2013-02-21 Buffalo Inc アクセスポイント装置および通信設定提供方法
JP2015220604A (ja) 2014-05-16 2015-12-07 キヤノン株式会社 通信装置、制御方法及びプログラム
JP2018042058A (ja) 2016-09-06 2018-03-15 キヤノン株式会社 通信装置、通信装置の制御方法及びプログラム
JP2018129770A (ja) 2017-02-10 2018-08-16 キヤノン株式会社 情報処理装置、制御方法及びプログラム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Device Provisioning Protocol Specification Version 1.0,Wi-Fi Alliance,2018年04月09日,pp.20,42,Internet:<URL:http://www.wi-fi.org /download.php?file=/sites/default/files/private/Device_Provisioning _Protocol_Specification_v1.0.pdf>

Also Published As

Publication number Publication date
US20210282011A1 (en) 2021-09-09
WO2020110731A1 (ja) 2020-06-04
JP2020088620A (ja) 2020-06-04

Similar Documents

Publication Publication Date Title
WO2018047653A1 (ja) 通信装置、通信装置の制御方法及びプログラム
EP2963959B1 (en) Method, configuration device, and wireless device for establishing connection between devices
EP3476175B1 (en) Communication apparatus, communication method, and program for facilitating direct communication
JP7224855B2 (ja) 通信装置、制御方法、およびプログラム
EP3068091B1 (en) Network configuration method, and related device and system
KR101963545B1 (ko) 통신 장치, 통신 방법, 및 프로그램
US20210282011A1 (en) Communication apparatus, control method, and storage medium
US20220022034A1 (en) Communication apparatus, communication method, program, and storage medium
WO2018030296A1 (ja) 通信装置、通信方法、及びプログラム
JP7406893B2 (ja) 通信装置、制御方法およびプログラム
JP2023120266A (ja) 通信装置、制御方法、およびプログラム
JP6576129B2 (ja) 通信装置、通信方法およびプログラム
WO2020090443A1 (ja) 通信装置、制御方法及びプログラム
JP2011061574A (ja) 無線通信装置と無線通信システム
JP6486228B2 (ja) 通信装置、制御方法、および、プログラム
JP2024055092A (ja) 通信装置、制御方法及びプログラム
WO2023053699A1 (ja) 通信装置およびその制御方法、通信システム
JP7266727B2 (ja) 通信装置およびその制御方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20211112

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230110

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230309

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230606

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230705

R151 Written notification of patent or utility model registration

Ref document number: 7309345

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151