IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ブラザー工業株式会社の特許一覧

特開2022-106713通信装置と通信装置のためのコンピュータプログラム
<>
  • 特開-通信装置と通信装置のためのコンピュータプログラム 図1
  • 特開-通信装置と通信装置のためのコンピュータプログラム 図2
  • 特開-通信装置と通信装置のためのコンピュータプログラム 図3
  • 特開-通信装置と通信装置のためのコンピュータプログラム 図4
  • 特開-通信装置と通信装置のためのコンピュータプログラム 図5
  • 特開-通信装置と通信装置のためのコンピュータプログラム 図6
  • 特開-通信装置と通信装置のためのコンピュータプログラム 図7
  • 特開-通信装置と通信装置のためのコンピュータプログラム 図8
  • 特開-通信装置と通信装置のためのコンピュータプログラム 図9
  • 特開-通信装置と通信装置のためのコンピュータプログラム 図10
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022106713
(43)【公開日】2022-07-20
(54)【発明の名称】通信装置と通信装置のためのコンピュータプログラム
(51)【国際特許分類】
   H04W 12/06 20210101AFI20220712BHJP
   H04W 12/0431 20210101ALI20220712BHJP
   H04W 76/10 20180101ALI20220712BHJP
   H04W 4/00 20180101ALI20220712BHJP
   H04W 12/08 20210101ALI20220712BHJP
   H04W 84/10 20090101ALI20220712BHJP
   H04W 84/12 20090101ALI20220712BHJP
   H04W 88/06 20090101ALI20220712BHJP
   H04W 12/63 20210101ALI20220712BHJP
   H04L 9/08 20060101ALI20220712BHJP
   H04N 1/00 20060101ALI20220712BHJP
【FI】
H04W12/06
H04W12/0431
H04W76/10
H04W4/00 110
H04W12/08
H04W84/10 110
H04W84/12
H04W88/06
H04W12/63
H04L9/08 C
H04L9/08 F
H04N1/00 838
H04N1/00 127B
H04N1/00 C
【審査請求】有
【請求項の数】23
【出願形態】OL
(21)【出願番号】P 2022057097
(22)【出願日】2022-03-30
(62)【分割の表示】P 2018068818の分割
【原出願日】2018-03-30
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.ZIGBEE
(71)【出願人】
【識別番号】000005267
【氏名又は名称】ブラザー工業株式会社
(74)【代理人】
【識別番号】110000110
【氏名又は名称】弁理士法人 快友国際特許事務所
(72)【発明者】
【氏名】鈴木 智詞
(57)【要約】
【課題】通信装置とユーザが意図していない装置との間に無線接続が確立されるのを抑制し得る技術を提供すること。
【解決手段】通信装置は、第1の外部装置から特定信号を受信する場合に、特定信号の受信電波強度が閾値以上であるのか否かを判断する。通信装置は、受信電波強度が閾値以上であると判断し、かつ、第1の外部装置から認証要求を受信する場合に、認証応答を第1の外部装置に送信し、第1の外部装置から接続情報を受信して、接続情報を利用して通信装置との無線接続を確立する。一方、受信電波強度が閾値以上でないと判断され、かつ、第1の外部装置から認証要求が受信される場合に、第1の外部装置への認証応答の送信は制限される。
【選択図】図2
【特許請求の範囲】
【請求項1】
通信装置であって、
第1の無線インターフェースと、
前記第1の無線インターフェースとは異なる第2の無線インターフェースと、
前記第1の無線インターフェースを介して、公開鍵を外部に送信する公開鍵送信部と、
第1の外部装置から、前記第1の無線インターフェースを介して、特定信号を受信する特定信号受信部と、
前記第1の外部装置から前記特定信号が受信される場合に、前記特定信号の受信電波強度が閾値以上であるのか否かを判断する判断部と、
前記公開鍵が外部に送信された後に、前記第1の外部装置から、前記第2の無線インターフェースを介して、前記公開鍵が利用された認証要求を受信する認証要求受信部と、
前記受信電波強度が前記閾値以上であると判断され、かつ、前記第1の外部装置から前記認証要求が受信される場合に、前記第2の無線インターフェースを介して、前記認証要求に対する応答である認証応答を前記第1の外部装置に送信する認証応答送信部であって、前記受信電波強度が前記閾値以上でないと判断され、かつ、前記第1の外部装置から前記認証要求が受信される場合に、前記第1の外部装置への前記認証応答の送信は制限される、前記認証応答送信部と、
前記認証応答が前記第1の外部装置に送信された後に、前記第1の外部装置から、前記第2の無線インターフェースを介して、接続情報を受信する接続情報受信部であって、前記接続情報は、前記通信装置と第2の外部装置との間に前記第2の無線インターフェースを介した無線接続を確立するための情報である、前記接続情報受信部と、
前記第1の外部装置から前記接続情報が受信される場合に、前記接続情報を利用して、前記通信装置と前記第2の外部装置との間に前記第2の無線インターフェースを介した前記無線接続を確立する確立部と、
を備える、通信装置。
【請求項2】
前記通信装置は、さらに、
表示部と、
前記受信電波強度が前記閾値以上でないと判断され、かつ、前記第1の外部装置から前記認証要求が受信される場合に、前記認証応答の送信を実行することを指示するための指示画面を前記表示部に表示させることによって、前記第1の外部装置への前記認証応答の送信を制限する表示制御部と、を備え、
前記認証応答送信部は、さらに、前記指示画面が表示されている状況において、前記認証応答の送信を実行することが指示される場合に、前記第2の無線インターフェースを介して、前記認証応答を前記第1の外部装置に送信する、請求項1に記載の通信装置。
【請求項3】
前記特定信号は、前記第1の外部装置を識別する対象識別情報を含み、
前記認証応答送信部は、前記受信電波強度が前記閾値以上であると判断され、かつ、前記対象識別情報によって識別される前記第1の外部装置から前記対象識別情報を含む前記認証要求が受信される場合に、前記第2の無線インターフェースを介して、前記認証応答を前記第1の外部装置に送信し、
前記第1の外部装置とは異なる特定外部装置から、前記第2の無線インターフェースを介して、前記対象識別情報を含まない前記認証要求が受信される場合に、前記特定外部装置への前記認証応答の送信は制限される、請求項1又は2に記載の通信装置。
【請求項4】
前記通信装置は、さらに、
所定条件が満たされる場合に、前記通信装置の動作状態を不可能状態から可能状態に移行させる状態移行部であって、前記不可能状態は、前記認証要求を受信しても、前記認証応答を送信しない状態であり、前記可能状態は、前記認証要求を受信することに応じて、前記認証応答を送信する状態である、前記状態移行部を備え、
前記認証応答送信部は、前記通信装置の動作状態が前記可能状態に移行された後に、前記受信電波強度が前記閾値以上であると判断され、かつ、前記第1の外部装置から前記認証要求が受信される場合に、前記第2の無線インターフェースを介して、前記認証応答を前記第1の外部装置に送信する、請求項1から3のいずれか一項に記載の通信装置。
【請求項5】
前記通信装置は、さらに、
前記第1の無線インターフェースを介して、前記通信装置において予め決められている第1の通信チャネルを示す通信チャネル情報を外部に送信するチャネル情報送信部を備え、
前記可能状態は、前記第1の通信チャネルが利用された前記認証要求を受信することを監視し、前記認証要求を受信することに応じて、前記認証応答を送信する状態であり、
前記認証応答送信部は、前記通信装置の動作状態が前記可能状態に移行された後に、前記受信電波強度が前記閾値以上であると判断され、かつ、前記第1の外部装置から前記第1の通信チャネルが利用された前記認証要求が受信される場合に、前記第2の無線インターフェースを介して、前記認証応答を前記第1の外部装置に送信する、請求項4に記載の通信装置。
【請求項6】
通信装置であって、
第1の無線インターフェースと、
前記第1の無線インターフェースとは異なる第2の無線インターフェースと、
前記第1の無線インターフェースを介して、公開鍵を外部に送信する公開鍵送信部と、
第1の外部装置から、前記第1の無線インターフェースを介して、前記第1の外部装置を識別する対象識別情報を含む特定信号を受信する特定信号受信部と、
前記公開鍵が外部に送信された後に、特定外部装置から、前記第2の無線インターフェースを介して、前記公開鍵が利用された認証要求を受信する認証要求受信部であって、前記認証要求は、前記特定外部装置を識別する特定識別情報を含む、前記認証要求受信部と、
前記第1の外部装置から前記特定信号が受信され、かつ、前記特定外部装置から前記認証要求が受信される場合に、前記特定信号に含まれる前記対象識別情報と前記認証要求に含まれる前記特定識別情報とが一致するのか否かを判断する判断部と、
前記対象識別情報と前記特定識別情報とが一致すると判断される場合に、前記第2の無線インターフェースを介して、前記認証要求に対する応答である認証応答を前記第1の外部装置に一致する前記特定外部装置に送信する認証応答送信部であって、前記対象識別情報と前記特定識別情報とが一致しないと判断される場合に、前記第1の外部装置とは異なる前記特定外部装置への前記認証応答の送信は制限される、前記認証応答送信部と、
前記認証応答が前記特定外部装置に送信された後に、前記特定外部装置から、前記第2の無線インターフェースを介して、接続情報を受信する接続情報受信部であって、前記接続情報は、前記通信装置と第2の外部装置との間に前記第2の無線インターフェースを介した無線接続を確立するための情報である、前記接続情報受信部と、
前記特定外部装置から前記接続情報が受信される場合に、前記接続情報を利用して、前記通信装置と前記第2の外部装置との間に前記第2の無線インターフェースを介した前記無線接続を確立する確立部と、
を備える、通信装置。
【請求項7】
前記通信装置は、さらに、
表示部と、
前記対象識別情報と前記特定識別情報とが一致しないと判断される場合に、前記認証応答の送信を実行することを指示するための指示画面を前記表示部に表示させることによって、前記特定外部装置への前記認証応答の送信を制限する表示制御部と、を備え、
前記認証応答送信部は、前記指示画面が表示されている状況において、前記認証応答の送信を実行することが指示される場合に、前記第2の無線インターフェースを介して、前記認証応答を前記特定外部装置に送信する、請求項6に記載の通信装置。
【請求項8】
前記通信装置は、さらに、
所定条件が満たされる場合に、前記通信装置の動作状態を不可能状態から可能状態に移行させる状態移行部であって、前記不可能状態は、前記認証要求を受信しても、前記認証応答を送信しない状態であり、前記可能状態は、前記認証要求を受信することに応じて、前記認証応答を送信する状態である、前記状態移行部を備え、
前記認証応答送信部は、前記通信装置の動作状態が前記可能状態に移行された後に、前記対象識別情報と前記特定識別情報とが一致すると判断される場合に、前記第2の無線インターフェースを介して、前記認証応答を前記特定外部装置に送信する、請求項6又は7に記載の通信装置。
【請求項9】
前記通信装置は、さらに、
前記第1の無線インターフェースを介して、前記通信装置において予め決められている第1の通信チャネルを示す通信チャネル情報を外部に送信するチャネル情報送信部を備え、
前記可能状態は、前記第1の通信チャネルが利用された前記認証要求を受信することを監視し、前記認証要求を受信することに応じて、前記認証応答を送信する状態であり、
前記認証応答送信部は、前記通信装置の動作状態が前記可能状態に移行された後に、前記特定外部装置から前記第1の通信チャネルが利用された前記認証要求が受信され、かつ、前記対象識別情報と前記特定識別情報とが一致すると判断される場合に、前記第2の無線インターフェースを介して、前記認証応答を前記特定外部装置に送信する、請求項8に記載の通信装置。
【請求項10】
前記確立部は、前記第1の通信チャネルとは異なる第2の通信チャネルを利用して、前記通信装置と前記第2の外部装置との間に前記第2の無線インターフェースを介した前記無線接続を確立する、請求項5又は9に記載の通信装置。
【請求項11】
前記特定信号は、前記通信装置のベンダによって提供されるアプリケーションプログラムに従って、前記第1の外部装置から前記通信装置に送信される、請求項1から10のいずれか一項に記載の通信装置。
【請求項12】
前記特定信号受信部は、前記公開鍵が前記第1の外部装置によって受信された後に、前記第1の外部装置から、前記第1の無線インターフェースを介して、前記特定信号を受信する、請求項1から11のいずれか一項に記載の通信装置。
【請求項13】
前記第1の無線インターフェースは、Bluetooth(登録商標)方式に従った無線通信を実行するための無線インターフェースであり、
前記公開鍵送信部は、前記Bluetooth方式に従ったAdvertise信号であって、前記公開鍵を含む前記Advertise信号を外部に繰り返し送信する、請求項1から12のいずれか一項に記載の通信装置。
【請求項14】
前記第1の無線インターフェースは、前記Bluetooth方式のバージョン4.0以上に従った無線通信を実行するための無線インターフェースである、請求項13に記載の通信装置。
【請求項15】
前記通信装置は、さらに、
前記接続情報を記憶するためのメモリを備え、
前記公開鍵送信部は、前記メモリ内に前記接続情報が記憶されていない状況において、前記通信装置の電源がONされる場合に、前記第1の無線インターフェースを介して、前記公開鍵を外部に送信し、
前記メモリ内に前記接続情報が記憶されている状況において、前記通信装置の電源がONされる場合に、前記公開鍵は送信されない、請求項1から14のいずれか一項に記載の通信装置。
【請求項16】
前記通信装置は、さらに、
操作部を備え、
前記公開鍵送信部は、前記メモリ内に前記接続情報が記憶されている状況において、前記通信装置の電源がONされた後に、前記操作部を介した特定操作が受け付けられる場合に、前記公開鍵を外部に送信する、請求項15に記載の通信装置。
【請求項17】
前記第2の外部装置は、前記第1の外部装置とは異なる装置であって、無線ネットワークの親局として動作すべき親局装置であり、
前記確立部は、前記通信装置と前記第2の外部装置との間に前記第2の無線インターフェースを介した前記無線接続を確立して、前記通信装置を前記無線ネットワークに子局として参加させる、請求項1から16のいずれか一項に記載の通信装置。
【請求項18】
前記接続情報は、前記第2の外部装置から受信される受信情報を認証するための認証情報を含む、請求項1から17のいずれか一項に記載の通信装置。
【請求項19】
前記通信装置は、さらに、
前記認証応答が送信された後に、前記通信装置をWi-Fi規格に従ったEnrolleeとして動作させる動作制御部を備える、請求項1から18のいずれか一項に記載の通信装置。
【請求項20】
通信装置のためのコンピュータプログラムであって、
前記通信装置のコンピュータを、以下の各部、即ち、
前記通信装置の第1の無線インターフェースを介して、公開鍵を外部に送信する公開鍵送信部と、
第1の外部装置から、前記第1の無線インターフェースを介して、特定信号を受信する特定信号受信部と、
前記第1の外部装置から前記特定信号が受信される場合に、前記特定信号の受信電波強度が閾値以上であるのか否かを判断する判断部と、
前記公開鍵が外部に送信された後に、前記第1の外部装置から、前記通信装置の第2の無線インターフェースを介して、前記公開鍵が利用された認証要求を受信する認証要求受信部であって、前記第2の無線インターフェースは、前記第1の無線インターフェースとは異なる、前記認証要求受信部と、
前記受信電波強度が前記閾値以上であると判断され、かつ、前記第1の外部装置から前記認証要求が受信される場合に、前記第2の無線インターフェースを介して、前記認証要求に対する応答である認証応答を前記第1の外部装置に送信する認証応答送信部であって、前記受信電波強度が前記閾値以上でないと判断され、かつ、前記第1の外部装置から前記認証要求が受信される場合に、前記第1の外部装置への前記認証応答の送信は制限される、前記認証応答送信部と、
前記認証応答が前記第1の外部装置に送信された後に、前記第1の外部装置から、前記第2の無線インターフェースを介して、接続情報を受信する接続情報受信部であって、前記接続情報は、前記通信装置と第2の外部装置との間に前記第2の無線インターフェースを介した無線接続を確立するための情報である、前記接続情報受信部と、
前記第1の外部装置から前記接続情報が受信される場合に、前記接続情報を利用して、前記通信装置と前記第2の外部装置との間に前記第2の無線インターフェースを介した前記無線接続を確立する確立部と、
として機能させる、コンピュータプログラム。
【請求項21】
通信装置のためのコンピュータプログラムであって、
前記通信装置のコンピュータを、以下の各部、即ち、
前記通信装置の第1の無線インターフェースを介して、公開鍵を外部に送信する公開鍵送信部と、
第1の外部装置から、前記第1の無線インターフェースを介して、前記第1の外部装置を識別する対象識別情報を含む特定信号を受信する特定信号受信部と、
前記公開鍵が外部に送信された後に、特定外部装置から、前記通信装置の第2の無線インターフェースを介して、前記公開鍵が利用された認証要求を受信する認証要求受信部であって、前記第2の無線インターフェースは、前記第1の無線インターフェースとは異なり、前記認証要求は、前記特定外部装置を識別する特定識別情報を含む、前記認証要求受信部と、
前記第1の外部装置から前記特定信号が受信され、かつ、前記特定外部装置から前記認証要求が受信される場合に、前記特定信号に含まれる前記対象識別情報と前記認証要求に含まれる前記特定識別情報とが一致するのか否かを判断する判断部と、
前記対象識別情報と前記特定識別情報とが一致すると判断される場合に、前記第2の無線インターフェースを介して、前記認証要求に対する応答である認証応答を前記第1の外部装置に一致する前記特定外部装置に送信する認証応答送信部であって、前記対象識別情報と前記特定識別情報とが一致しないと判断される場合に、前記第1の外部装置とは異なる前記特定外部装置への前記認証応答の送信は制限される、前記認証応答送信部と、
前記認証応答が前記特定外部装置に送信された後に、前記特定外部装置から、前記第2の無線インターフェースを介して、接続情報を受信する接続情報受信部であって、前記接続情報は、前記通信装置と第2の外部装置との間に前記第2の無線インターフェースを介した無線接続を確立するための情報である、前記接続情報受信部と、
前記特定外部装置から前記接続情報が受信される場合に、前記接続情報を利用して、前記通信装置と前記第2の外部装置との間に前記第2の無線インターフェースを介した前記無線接続を確立する確立部と、
として機能させる、コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本明細書では、外部装置との無線接続を確立可能な通信装置に関する技術を開示する。
【背景技術】
【0002】
非特許文献1には、Wi-Fi Allianceによって策定された無線通信方式であるDPP(Device Provisioning Protocolの略)方式が記述されている。DPP方式は、一対の装置の間に容易にWi-Fi接続を確立させるための無線通信方式である。非特許文献1には、公開鍵の共有化のための例として、Responderが、Bluetooth(登録商標)通信を利用して、公開鍵をInitiatorに送信することが開示されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2018-37978号公報
【非特許文献】
【0004】
【非特許文献1】「DRAFT Device Provisioning Protocol Technical Specification Version 0.2.11」 Wi-Fi Alliance, 2017年
【発明の概要】
【発明が解決しようとする課題】
【0005】
上記の非特許文献1には、公開鍵の送信を制限することについて何ら開示されていない。このために、ResponderがBluetooth通信を利用して公開鍵を送信すると、ユーザが意図しているInitiatorとは異なる装置が公開鍵を受信し得る。この結果、ユーザが意図していない一対の装置の間にWi-Fi接続が確立され得る。
【0006】
本明細書では、ユーザが意図していない一対の装置の間に無線接続が確立されるのを抑制し得る技術を開示する。
【課題を解決するための手段】
【0007】
本明細書によって開示される通信装置は、第1の無線インターフェースと、前記第1の無線インターフェースとは異なる第2の無線インターフェースと、前記第1の無線インターフェースを介して、公開鍵を外部に送信する公開鍵送信部と、第1の外部装置から、前記第1の無線インターフェースを介して、特定信号を受信する特定信号受信部と、前記第1の外部装置から前記特定信号が受信される場合に、前記特定信号の受信電波強度が閾値以上であるのか否かを判断する判断部と、前記公開鍵が外部に送信された後に、前記第1の外部装置から、前記第2の無線インターフェースを介して、前記公開鍵が利用された認証要求を受信する認証要求受信部と、前記受信電波強度が前記閾値以上であると判断され、かつ、前記第1の外部装置から前記認証要求が受信される場合に、前記第2の無線インターフェースを介して、前記認証要求に対する応答である認証応答を前記第1の外部装置に送信する認証応答送信部であって、前記受信電波強度が前記閾値以上でないと判断され、かつ、前記第1の外部装置から前記認証要求が受信される場合に、前記第1の外部装置への前記認証応答の送信は制限される、前記認証応答送信部と、前記認証応答が前記第1の外部装置に送信された後に、前記第1の外部装置から、前記第2の無線インターフェースを介して、接続情報を受信する接続情報受信部であって、前記接続情報は、前記通信装置と第2の外部装置との間に前記第2の無線インターフェースを介した無線接続を確立するための情報である、前記接続情報受信部と、前記第1の外部装置から前記接続情報が受信される場合に、前記接続情報を利用して、前記通信装置と前記第2の外部装置との間に前記第2の無線インターフェースを介した前記無線接続を確立する確立部と、を備えてもよい。
【0008】
上記の構成によると、通信装置は、第1の外部装置から特定信号を受信する場合に、特定信号の受信電波強度が閾値以上であるのか否かを判断する。ここで、受信電波強度が閾値以上である状況は、通信装置と第1の外部装置との間の距離が比較的に小さいこと、即ち、通信装置と第1の外部装置との間で公開鍵が利用された通信が実行されることをユーザが望んでいる可能性が高いこと、を意味する。このような状況では、通信装置は、第1の外部装置から公開鍵が利用された認証要求を受信することに応じて認証応答を第1の外部装置に送信し、第1の外部装置から接続情報を受信し、接続情報を利用して第2の外部装置との無線接続を確立する。一方、受信電波強度が閾値以上でない状況は、通信装置と第1の外部装置との間の距離が比較的に大きいこと、即ち、通信装置と第1の外部装置との間で公開鍵が利用された通信が実行されることをユーザが望んでいない可能性が高いこと、を意味する。この場合、通信装置では、第1の外部装置から公開鍵が利用された認証要求が受信されても、認証応答の送信が制限される。従って、通信装置では、第1の外部装置から接続情報が受信されることが制限され、この結果、当該接続情報を利用した無線接続が確立されることが制限される。このために、ユーザが意図していない一対の装置の間に無線接続が確立されるのを抑制し得る。
【0009】
また、本明細書によって開示される通信装置は、第1の無線インターフェースと、前記第1の無線インターフェースとは異なる第2の無線インターフェースと、前記第1の無線インターフェースを介して、公開鍵を外部に送信する公開鍵送信部と、第1の外部装置から、前記第1の無線インターフェースを介して、前記第1の外部装置を識別する対象識別情報を含む特定信号を受信する特定信号受信部と、前記公開鍵が外部に送信された後に、特定外部装置から、前記第2の無線インターフェースを介して、前記公開鍵が利用された認証要求を受信する認証要求受信部であって、前記認証要求は、前記特定外部装置を識別する特定識別情報を含む、前記認証要求受信部と、前記第1の外部装置から前記特定信号が受信され、かつ、前記特定外部装置から前記認証要求が受信される場合に、前記特定信号に含まれる前記対象識別情報と前記認証要求に含まれる前記特定識別情報とが一致するのか否かを判断する判断部と、前記対象識別情報と前記特定識別情報とが一致すると判断される場合に、前記第2の無線インターフェースを介して、前記認証要求に対する応答である認証応答を前記第1の外部装置に一致する前記特定外部装置に送信する認証応答送信部であって、前記対象識別情報と前記特定識別情報とが一致しないと判断される場合に、前記第1の外部装置とは異なる前記特定外部装置への前記認証応答の送信は制限される、前記認証応答送信部と、前記認証応答が前記特定外部装置に送信された後に、前記特定外部装置から、前記第2の無線インターフェースを介して、接続情報を受信する接続情報受信部であって、前記接続情報は、前記通信装置と第2の外部装置との間に前記第2の無線インターフェースを介した無線接続を確立するための情報である、前記接続情報受信部と、前記特定外部装置から前記接続情報が受信される場合に、前記接続情報を利用して、前記通信装置と前記第2の外部装置との間に前記第2の無線インターフェースを介した前記無線接続を確立する確立部と、を備えてもよい。
【0010】
上記の構成によると、通信装置は、第1の外部装置から特定信号を受信し、かつ、特定外部装置から認証要求を受信する場合に、特定信号に含まれる対象識別情報と認証要求に含まれる特定識別情報とが一致するのか否かを判断する。ここで、対象識別情報と特定識別情報とが一致する状況は、第1の外部装置と特定外部装置とが一致すること、即ち、特定信号の送信元である第1の外部装置から認証要求が送信されたことを意味する。従って、通信装置と第1の外部装置に一致する特定外部装置との間で公開鍵が利用された通信が実行されることをユーザが望んでいる可能性が高いことを意味する。このような状況では、通信装置は、認証応答を特定外部装置に送信し、特定外部装置から接続情報を受信し、接続情報を利用して第2の外部装置との無線接続を確立する。一方、対象識別情報と特定識別情報とが一致しない状況は、第1の外部装置と特定外部装置とが一致しないこと、即ち、特定信号の送信元である第1の外部装置とは異なる装置から認証要求が送信されたことを意味する。従って、通信装置と第1の外部装置とは異なる特定外部装置との間で公開鍵が利用された通信が実行されることをユーザが望んでいない可能性が高いことを意味する。この場合、通信装置では、特定外部装置から公開鍵が利用された認証要求が受信されても、認証応答の送信が制限される。従って、通信装置では、特定外部装置から接続情報が受信されることが制限され、この結果、当該接続情報を利用した無線接続が確立されることが制限される。このために、ユーザが意図していない一対の装置の間に無線接続が確立されるのを抑制し得る。
【0011】
上記の通信装置を実現するためのコンピュータプログラム、及び、当該コンピュータプログラムを記憶するコンピュータ可読記録媒体も新規で有用である。また、上記の通信装置によって実行される方法も新規で有用である。また、上記の通信装置と他の装置(例えば第1の外部装置、第2の外部装置)とを備える通信システムも、新規で有用である。
【図面の簡単な説明】
【0012】
図1】通信システムの構成を示す。
図2】実施例の概略を説明するための説明図を示す。
図3】ケースAのBootstrappingの処理のシーケンス図を示す。
図4】Authenticationの処理のフローチャート図を示す。
図5】ケースAのAuthenticationの処理のシーケンス図を示す。
図6】Configurationの処理のシーケンス図を示す。
図7】Network Accessの処理のシーケンス図を示す。
図8】ケースBのBootstrapping及びAuthenticationの処理のシーケンス図を示す。
図9】ケースCのBootstrapping及びAuthenticationの処理のシーケンス図を示す。
図10】ケースDのBootstrappingの処理のシーケンス図を示す。
【発明を実施するための形態】
【0013】
(通信システム2の構成;図1
図1に示されるように、通信システム2は、AP(Access Pointの略)6と、複数個の端末10,50と、プリンタ100と、を備える。本実施例では、ユーザが各端末10,50を利用して、プリンタ100とAP6との間にWi-Fi方式に従った無線接続(以下では「Wi-Fi接続」と記載する)を確立させる状況を想定している。
【0014】
(各端末10,50の構成)
各端末10,50は、携帯電話(例えばスマートフォン)、PDA、タブレットPC等の可搬型の端末装置である。なお、変形例では、各端末10,50は、据置型のPC、ノートPC等であってもよい。端末10は、MACアドレス「xxx」を有する。端末50は、MACアドレス「yyy」を有する。ここで、各端末10,50は、同様の構成を有する。従って、以下では、端末10の構成を主に説明する。
【0015】
端末10は、Wi-Fiインターフェース16と、BT(Bluetoothの略)インターフェース18と、を備える。以下では、インターフェースを単に「I/F」と記載する。
【0016】
Wi-FiI/F16は、Wi-Fi方式に従ったWi-Fi通信を実行するための無線インターフェースである。Wi-Fi方式は、例えば、IEEE(The Institute of Electrical and Electronics Engineers, Inc.の略)の802.11の規格、及び、それに準ずる規格(例えば802.11a,11b,11g,11n,11ac等)に従って、無線通信を実行するための無線通信方式である。特に、Wi-FiI/F16は、Wi-Fi Allianceによって策定される予定であるDPP(Device Provisioning Protocolの略)方式をサポートしている。DPP方式は、Wi-Fi Allianceによって作成された規格書のドラフトである「DRAFT Device Provisioning Protocol Technical Specification Version 0.2.11」に記述されており、端末10を利用して一対のデバイス(例えばプリンタ100とAP6)の間に容易にWi-Fi接続を確立させるための無線通信方式である。
【0017】
BTI/F18は、BT方式バージョン4.0以上に従った通信(いわゆるBlue Tooth Low Energyに従った通信)を実行するためのI/Fである。BT方式は、例えば、IEEE802.15.1の規格、及び、それに準ずる規格に基づく無線通信方式である。
【0018】
端末10は、第1種のアプリケーション(以下では単に「第1種のアプリ」と記載する)40を記憶している。第1種のアプリ40は、プリンタ100のベンダによって提供されるプログラムであり、例えば、プリンタ100のベンダによって提供されるインターネット上のサーバから端末10にインストールされる。また、端末50は、第2種のアプリケーション(以下では単に「第2種のアプリ」と記載する)52を記憶している。第2種のアプリ52は、プリンタ100のベンダとは異なる事業者によって提供されるプログラムである。第1種のアプリ40及び第2種のアプリ52は、DPP方式に従って、プリンタ100とAP6との間にWi-Fi接続を確立させるためのプログラムである。なお、変形例では、第1種のアプリ40は、プリンタ100のベンダとは異なる事業者によって提供されるプログラムであってもよいし、第2種のアプリ52は、プリンタ100のベンダによって提供されるプログラムであってもよい。また、別の変形例では、第2種のアプリ52は、端末50の基本的な動作を実現するためのOSプログラムであってもよい。
【0019】
(プリンタ100の構成)
プリンタ100は、印刷機能を実行可能な周辺装置(例えば、端末10の周辺装置)である。プリンタ100は、操作部112と、表示部114と、Wi-FiI/F116と、BTI/F118と、印刷実行部120と、制御部130と、を備える。各部112~130は、バス線(符号省略)に接続されている。
【0020】
操作部112は、複数のキーを備える。ユーザは、操作部112を操作することによって、様々な指示をプリンタ100に入力することができる。表示部114は、様々な情報を表示するためのディスプレイである。Wi-FiI/F116は、端末10のWi-FiI/F16と同様である。即ち、Wi-FiI/F116は、DPP方式をサポートしている。また、Wi-FiI/F116は、MACアドレス「abc」を有する。BTI/F118は、端末10のBTI/F18と同様である。印刷実行部120は、インクジェット方式、レーザ方式等の印刷機構を備える。
【0021】
ここで、Wi-Fi方式とBT方式との相違点を記述しておく。Wi-Fi通信の通信速度(例えば最大の通信速度が600[Mbps])は、BT通信の通信速度(例えば最大の通信速度が24[Mbps])よりも速い。Wi-Fi通信における搬送波の周波数は、2.4[GHz]帯又は5.0[GHz]帯である。BT通信における搬送波の周波数は、2.4[GHz]帯である。即ち、Wi-Fi通信における搬送波の周波数として5.0[GHz]帯が採用される場合には、Wi-Fi通信における搬送波の周波数とBT通信における搬送波の周波数とは異なる。また、Wi-Fi通信を実行可能な最大の距離(例えば約100[m])は、BT通信を実行可能な最大の距離(例えば約数十[m])よりも大きい。
【0022】
制御部130は、CPU132とメモリ134とを備える。CPU132は、メモリ134に格納されているプログラム136に従って、様々な処理を実行する。メモリ134は、揮発性メモリ、不揮発性メモリ等によって構成される。
【0023】
(本実施例の概要;図2
続いて、図2を参照して、本実施例の概要を説明する。各端末10,50及びプリンタ100がDPP方式をサポートしていることを上述したが、AP6もDPP方式をサポートしている。そして、本実施例では、各デバイス6,10(又は50),100がDPP方式に従った通信を実行することによって、プリンタ100とAP6との間のWi-Fi接続を確立することを実現する。なお、端末10によって実行される処理と端末50によって実行される処理は、一部の処理(例えば、後述の図3のT122~T132)を除いて同様である。従って、図2では、端末50に関する説明を省略する。また、以下では、理解の容易化のために、各デバイスのCPU(例えばCPU132等)が実行する動作を、CPUを主体として記載せずに、各デバイス(例えばプリンタ100)を主体として記載する。
【0024】
T5では、端末10は、DPP方式のBootstrapping(以下では、単に「BS」と記載する)をAP6と実行する。当該BSは、AP6に貼り付けられているQRコード(登録商標)が端末10によって撮影されることに応じて、後述のT10のAuthentication(以下では、単に「Auth」と記載する)で利用される情報をAP6から端末10に提供する処理である。
【0025】
T10では、端末10は、T5のBSで取得済みの情報を利用して、DPP方式のAuthをAP6と実行する。当該Authは、端末10及びAP6のそれぞれが通信相手を認証するための処理である。
【0026】
T15では、端末10は、DPP方式のConfiguration(以下では、単に「Config」と記載する)をAP6と実行する。当該Configは、プリンタ100とAP6との間のWi-Fi接続を確立するための情報をAP6に送信する処理である。具体的には、端末10は、当該Configにおいて、プリンタ100とAP6との間にWi-Fi接続を確立させるための第1のConfiguration Object(以下では、Configuration Objectのことを単に「CO」と記載する)を生成して、第1のCOをAP6に送信する。この結果、AP6では、第1のCOが記憶される。
【0027】
次いで、端末10は、T20において、DPP方式のBSをプリンタ100と実行する。当該BSは、プリンタ100が、BTI/F118を介して、後述のT25のAuthで利用される情報を端末10に提供する処理である。
【0028】
T25では、端末10は、T20のBSで取得済みの情報を利用して、DPP方式のAuthをプリンタ100と実行する。当該Authは、端末10及びプリンタ100のそれぞれが通信相手を認証するための処理である。
【0029】
T30では、端末10は、DPP方式のConfigをプリンタ100と実行する。当該Configは、プリンタ100とAP6との間のWi-Fi接続を確立するための情報をプリンタ100に送信する処理である。端末10は、当該Configにおいて、プリンタ100とAP6との間にWi-Fi接続を確立させるための第2のCOを生成して、第2のCOをプリンタ100に送信する。この結果、プリンタ100では、第2のCOが記憶される。
【0030】
T35では、プリンタ100及びAP6は、記憶済みの第1及び第2のCOを利用して、DPP方式のNetwork Access(以下では、単に「NA」と記載する)を実行する。NAは、Wi-Fi接続を確立するための接続キーをプリンタ100及びAP6の間で共有するための処理である。
【0031】
T40では、プリンタ100及びAP6は、4way-handshakeの通信を実行する。4way-handshakeの通信の少なくとも一部の過程において、プリンタ100及びAP6は、T35のNAで共有済みの接続キーによって暗号化された暗号情報を通信する。そして、暗号情報の復号が成功する場合に、プリンタ100とAP6との間にWi-Fi接続が確立される。これにより、プリンタ100は、AP6によって形成される無線ネットワークに子局として参加することができ、この結果、AP6を介して、当該無線ネットワークに参加している他のデバイスとの通信を実行することができる。なお、変形例では、プリンタ100及びAP6は、4way-handshakeの通信に代えて、SAE(Simultaneous Authentication of Equalsの略、通称「Dragonfly」)の通信を実行してもよい。
【0032】
T45では、プリンタ100は、Wi-Fi接続がAP6と確立されたことを示す完了画面を表示部114に表示させる。T45の処理が終了すると、図2の処理が終了する。
【0033】
DPP方式では、プリンタ100とAP6との間にWi-Fi接続を確立させるために、ユーザは、AP6が親局として動作する無線ネットワークの情報(例えばSSID(Service Set Identifierの略)、パスワード等)をプリンタ100に入力する必要がない。従って、ユーザは、プリンタ100とAP6との間のWi-Fi接続を容易に確立させることができる。
【0034】
(各処理の説明;図3図10
続いて、図3図10を参照して、図2のT20~T35において実行される各処理の詳細を説明する。なお、T5~T15の処理は、プリンタ100に代えてAP6が利用される点を除いて、T20~T30の処理と同様であるので、その詳細な説明を省略する。また、図3図5及び図8図10は、各端末10,50とプリンタ100との間で実行されるBS又はAuthの各ケースを示す。これらのケースは、一つの実施例において実行される処理である。
【0035】
(ケースAのBootstrapping(BS);図3
まず、図3を参照して、図2のT20のBSのケースAの処理を説明する。図3の初期状態では、プリンタ100のメモリ134は、プリンタ100の公開鍵PPK1及び秘密鍵psk1を予め記憶している。
【0036】
プリンタ100は、T100において、ユーザから電源ON操作を受け付けることに応じて、T105において、メニュー画面MSを表示部114に表示させる。画面MSは、換言すればプリンタ100のデフォルト画面であり、プリンタ100に印刷を実行させる印刷ボタンと、プリンタ100の各種設定(例えば印刷設定等)を指定するための設定ボタンと、を含む。
【0037】
次いで、プリンタ100は、メモリ134が第2のCO(図2のT30参照)をまだ記憶していないので、BTI/F118への通電を開始する。従って、メモリ134が第2のCOを記憶していない状態では、ユーザがプリンタ100の電源をONするだけで、BTI/F118への通電が開始される。そして、プリンタ100は、T107において、BTI/F118を介して、BT方式に従ったAdvertise信号(以下では、単に「AD」と記載する)を外部に繰り返し送信することを開始する。当該ADは、通信対象の装置とのペアリングが完了しなくても、当該装置との通信を実行可能な信号である。当該ADは、メモリ134に予め記憶されている公開鍵PPK1と、メモリ134に予め記憶されているチャネルリストと、Wi-FiI/F116のMACアドレス「abc」と、を含む。チャネルリストは、Auth(図2のT25参照)で利用されるべき複数個の通信チャネルの値のリストである。
【0038】
次いで、T109では、プリンタ100は、不可能状態から可能状態に移行する。従って、メモリ134が第2のCOを記憶していない状態では、ユーザがプリンタ100の電源をONするだけで、プリンタ100の動作状態が不可能状態から可能状態に移行される。不可能状態は、Wi-FiI/F116が、端末10からDPP Authentication Request(以下では、単に「AReq」と記載する)(後述の図5のT200参照)を受信しても、DPP Authentication Response(以下では、単に「ARes」と記載する)(後述のT210参照)を送信しない状態である。可能状態は、Wi-FiI/F116が、端末10からAReqを受信することに応じて、AResを端末10に送信する状態である。即ち、プリンタ100は、不可能状態から可能状態に移行することによって、Auth(図2のT25参照)を実行可能な状態になる。具体的には、本実施例では、不可能状態は、Wi-FiI/F116が、外部から信号を受信しても、当該信号をCPU132に供給しない状態である。また、可能状態は、Wi-FiI/F116が、外部から信号を受信することに応じて、当該信号をCPU132に供給し、当該信号に対する応答を送信する状態である。可能状態は、CPU132が外部から受信した信号を処理する状態であるので、不可能状態と比較して処理負荷が高い。なお、変形例では、不可能状態がWi-FiI/F116に通電されていない状態であり、可能状態がWi-FiI/F116に通電されている状態であってもよい。また、別の変形例では、不可能状態は、Wi-FiI/F116が、外部からAReqを受信しても、AReqが受信されたことを示す通知をCPU132に供給しない状態であり、可能状態は、Wi-FiI/F116が、外部からAReqを受信することに応じて、AReqが受信されたことを示す通知をCPU132に供給する状態であってもよい。
【0039】
端末10は、T110において、ユーザからアプリの起動操作を受け付けることに応じて、T112において、第1種のアプリ40を起動する。端末10によって実行される以降の各処理は、第1種のアプリ40によって実現される。次いで、端末10は、BTI/F18への通電を開始する。従って、端末10は、プリンタ100から送信されるAD(T107参照)を受信可能な状態になる。この結果、T120では、端末10は、プリンタ100からBTI/F18を介して、ADを受信し、当該AD内の各情報(即ち、公開鍵PPK1、チャネルリスト、及び、MACアドレス「abc」)を取得する。
【0040】
T122では、端末10は、プリンタ100とAP6との間にWi-Fi接続を確立するための接続処理を実行するのか否かをユーザに問い合せる端末側確認画面TCSを表示する。画面TCSは、接続処理を実行することを示すYESボタンと、接続処理を実行しないことを示すNOボタンと、を含む。そして、端末10は、T130において、ユーザから画面TCS内のYESボタンの選択を受け付け、T132において、BTI/F18を介して、Wi-FiI/F16のMACアドレス「xxx」を含むADをプリンタ100に送信する。
【0041】
プリンタ100は、T132において、端末10から、BTI/F118を介して、ADを受信する場合に、当該ADの受信電波強度を取得する。BTI/F118は、当該ADを受信する際に、当該ADの受信電波強度を特定し、特定済みの受信電波強度をCPU132に供給する。これにより、プリンタ100(即ちCPU132)は、受信電波強度を取得することができる。図3のケースAでは、端末10とプリンタ100との間の距離が比較的に小さい状況を想定しており、プリンタ100は、取得済みの受信電波強度が閾値以上であると判断する。当該閾値は、プリンタ100の出荷時にプリンタ100のベンダによって予め決められている値であってもよいし、プリンタ100の出荷後にプリンタ100のユーザによって指定される値であってもよい。そして、プリンタ100は、T134において、T132で受信されたAD内のMACアドレス「xxx」と、受信電波強度が閾値以上であることを示す電波強度「強」と、を関連付けてメモリ134内に記憶する。なお、プリンタ100は、取得済みの受信電波強度が閾値未満であると判断する場合には、MACアドレス「xxx」と電波強度「弱」とを関連付けてメモリ134内に記憶する。T134の処理が終了すると、ケースAのBSの処理が終了する。
【0042】
(Authentication(Auth);図4
続いて、図4を参照して、図2のT25のAuthの処理において、プリンタ100によって実行される処理の詳細を説明する。プリンタ100が可能状態に移行することに応じて(図3のT109)、図4の処理が実行される。
【0043】
S3では、プリンタ100は、Wi-FiI/F116を介して、外部からAReqを受信することを監視する。以下では、AReqの送信元の端末のことを「特定端末」と呼ぶ。AReqは、特定端末の公開鍵と、特定端末によって生成された暗号化データと、特定端末のMACアドレスと、特定端末のcapabilityと、を含む。capabilityは、DPP方式をサポートしている機器において予め指定されている情報であり、DPP方式のConfiguratorのみとして動作可能であることを示す値と、DPP方式のEnrolleeのみとして動作可能であることを示す値と、Configurator及びEnrolleeのどちらとしても動作可能であることを示す値と、のいずれか1個の値を含む。なお、Configuratorは、Config(図2のT30)において、EnrolleeのためのCOを生成して当該COをEnrolleeに送信するデバイスを意味する。一方、Enrolleeは、Configにおいて、ConfiguratorからNAで利用されるCOを受信するデバイスを意味する。プリンタ100は、外部からAReqを受信する場合に、S3でYESと判断して、S5に進む。一方、プリンタ100は、可能状態に移行してから(図3のT109)所定時間内にAReqが受信されない場合に、S3でNOと判断して、非実行ENDとして図4の処理を終了する。非実行ENDは、DPP方式に従った処理を中止すること意味する。
【0044】
S5では、プリンタ100は、メモリ134内に記憶されているMACアドレス(図3のT134参照)と、受信済みのAReq内のMACアドレスと、が一致するのか否かを判断する。プリンタ100は、2つのMACアドレスが一致すると判断する場合に、特定端末がADの送信元の端末に一致すると判断して(S5でYES)、S10に進む。一方、プリンタ100は、2つのMACアドレスが一致しないと判断する場合に、特定端末がADの送信元の端末とは異なると判断して(S5でNO)、S20に進む。
【0045】
S10では、プリンタ100は、メモリ134内に記憶されている電波強度(図3のT134参照)が「強」であるのか否かを判断する。プリンタ100は、記憶済みの電波強度が「強」である場合に、S10でYESと判断して、S15に進む。一方、プリンタ100は、記憶済みの電波強度が「弱」である場合に、S10でNOと判断して、S20に進む。
【0046】
S15では、プリンタ100は、認証処理及び動作決定処理を実行する。認証処理は、プリンタ100が通信相手を認証するための処理である。動作決定処理は、プリンタ100がComfigurator又はEnrolleeとして動作することを決定するための処理である。プリンタ100は、認証処理及び動作決定処理が終了する場合に、Authの処理を終了する。
【0047】
S20では、プリンタ100は、Wi-Fi接続を確立するための接続処理の実行をユーザに確認するためのプリンタ側確認画面PCSを表示部114に表示させる。画面PSCは、接続処理を実行することを示すYESボタンを含む。
【0048】
S25では、プリンタ100は、画面PCS内のYESボタンがユーザによって選択されたのか否かを判断する。プリンタ100は、画面PCS内のYESボタンがユーザによって選択される場合に、S25でYESと判断して、S15に進む。一方、プリンタ100は、画面PCSが表示されてから所定時間が経過してもYESボタンが選択されない場合(即ちタイムアウトの場合)に、S25でNOと判断して、非実行ENDとして図4の処理を終了する。なお、変形例では、画面PCSが接続処理を実行しないことを示すNOボタンを含み、プリンタ100は、画面PCS内のNOボタンがユーザによって選択される場合に、S25でNOと判断して、Authの処理を終了してもよい。
【0049】
(ケースAのAuthentication(Auth);図5
続いて、図5を参照して、図4の処理によって実現されるケースAのAuthの処理を説明する。端末10は、図3のT132において、ADをプリンタ100に送信した後に、T141において、端末10の公開鍵TPK1及び秘密鍵tsk1を生成する。次いで、端末10は、T142において、ECDH(Elliptic curve Diffie-Hellman key exchangeの略)に従って、生成済みの秘密鍵tsk1と、図3のT120で取得されたプリンタ100の公開鍵PPK1と、を用いて、共有鍵SK1を生成する。そして、端末10は、T144において、生成済みの共有鍵SK1を用いてランダム値RV1を暗号化して、暗号化データED1を生成する。
【0050】
T200では、端末10は、Wi-FiI/F16を介して、図3のT120で取得されたMACアドレス「abc」を送信先として、AReqをプリンタ100に送信する。AReqは、認証の実行をプリンタ100に要求する信号である。ここで、端末10は、T134で取得されたチャネルリスト内の複数個の通信チャネルを順次利用して、AReqをプリンタ100に送信することを繰り返す。当該AReqは、T141で生成された端末10の公開鍵TPK1と、T144で生成された暗号化データED1と、端末10のMACアドレス「xxx」と、端末10のcapabilityと、を含む。上記のように、本実施例では、端末10が第1又は第2のCOを生成してAP6又はプリンタ100に送信する。従って、端末10のcapabilityは、Configuratorのみとして動作可能であることを示す値を含む。
【0051】
プリンタ100は、T200において、端末10から、Wi-FiI/F116を介して、AReqを受信する(図4のS3でYES)。上記のように、当該AReqは、プリンタ100のMACアドレス「abc」を送信先として送信される。従って、プリンタ100は、端末10から当該AReqを適切に受信することができる。
【0052】
また、プリンタ100は、図3のT109で可能状態に移行すると、チャネルリスト内の複数個の通信チャネルのうちの1個の通信チャネルが利用されたAReqを受信することを監視する。上記のように、T200のAReqは、チャネルリスト内の複数個の通信チャネルを順次利用して送信される。従って、プリンタ100は、端末10から当該AReqを適切に受信することができる。
【0053】
T201では、プリンタ100は、メモリ134内に記憶済みのMACアドレス「xxx」(図3のT134参照)とAReq内のMACアドレス「xxx」とが一致すると判断し(図4のS5でYES)、かつ、メモリ134内に記憶済みの電波強度(図3のT134参照)が「強」であると判断する(S10でYES)。
【0054】
次いで、プリンタ100は、T202~T208の認証処理を実行する(S15)。具体的には、まず、プリンタ100は、T202において、ECDHに従って、当該AReq内の端末10の公開鍵TPK1と、メモリ134内に予め記憶されているプリンタ100の秘密鍵psk1と、を用いて、共有鍵SK1を生成する。ここで、T142で端末10によって生成される共有鍵SK1と、T204でプリンタ100によって生成される共有鍵SK1と、は同じである。従って、プリンタ100は、T204において、生成済みの共有鍵SK1を用いて、当該AReq内の暗号化データED1を適切に復号することができ、この結果、ランダム値RV1を取得することができる。プリンタ100は、暗号化データED1の復号が成功する場合には、当該AReqの送信元がプリンタ100から送信されたAD(図3のT120参照)を受信したデバイスであると判断し、即ち、認証が成功したと判断し、T206以降の処理を実行する。一方、プリンタ100は、仮に、暗号化データED1の復号が成功しない場合には、当該AReqの送信元がプリンタ100から送信されたADを受信したデバイスでないと判断し、即ち、認証が失敗したと判断し、T206以降の処理を実行しない。
【0055】
プリンタ100は、T206において、プリンタ100の新たな公開鍵PPK2及び新たな秘密鍵psk2を生成する。なお、変形例では、公開鍵PPK2及び秘密鍵psk2は、メモリ134に予め記憶されていてもよい。次いで、プリンタ100は、T207において、ECDHに従って、T200のAReq内の端末10の公開鍵TPK1と、生成済みのプリンタ100の秘密鍵psk2と、を用いて、共有鍵SK2を生成する。そして、プリンタ100は、T208において、生成済みの共有鍵SK2を用いて、取得済みのランダム値RV1及び新たなランダム値RV2を暗号化して、暗号化データED2を生成する。
【0056】
T210では、プリンタ100は、Wi-FiI/F116を介して、AResを端末10に送信する。当該AResは、T206で生成されたプリンタ100の公開鍵PPK2と、T208で生成された暗号化データED2と、プリンタ100のcapabilityと、を含む。当該capabilityは、Enrolleeのみとして動作可能であることを示す値を含む。
【0057】
端末10は、T210において、プリンタ100から、Wi-FiI/F16を介して、AResを受信することに応じて、当該AResの送信元(即ちプリンタ100)を認証するための以下の処理を実行する。具体的には、まず、端末10は、T212において、ECDHに従って、T141で生成された端末10の秘密鍵tsk1と、当該ARes内のプリンタ100の公開鍵PPK2と、を用いて、共有鍵SK2を生成する。ここで、T207でプリンタ100によって生成される共有鍵SK2と、T212で端末10によって生成される共有鍵SK2と、は同じである。従って、端末10は、T214において、生成済みの共有鍵SK2を用いて、当該ARes内の暗号化データED2を適切に復号することができ、この結果、ランダム値RV1及びRV2を取得することができる。端末10は、暗号化データED2の復号が成功する場合には、当該AResの送信元が図3のT120で受信されたADの送信元のデバイスであると判断し、即ち、認証が成功したと判断し、T220以降の処理を実行する。一方、端末10は、仮に、暗号化データED2の復号が成功しない場合には、当該AResの送信元がT120で受信されたADの送信元のデバイスでないと判断し、即ち、認証が失敗したと判断し、T220以降の処理を実行しない。
【0058】
T220において、端末10は、Wi-FiI/F16を介して、Confirmをプリンタ100に送信する。Confirmは、端末10がConfiguratorとして動作し、かつ、プリンタ100がEnrolleeとして動作することを示す情報を含む。この結果、T222において、Configuratorとして動作することが端末10によって決定され、T224において、Enrolleeとして動作することがプリンタ100によって決定される(図4のS14の動作決定処理)。T224の処理が終了すると、ケースAのAuthの処理が終了する。
【0059】
(Configuration(Config);図6
続いて、図6を参照して、図2のT30のConfigの処理を説明する。T300では、プリンタ100は、Wi-FiI/F116を介して、DPP Configuration Request(以下では、単に「CReq」と記載する)を端末10に送信する。当該CReqは、CO(即ちプリンタ100とAP6との間のWi-Fi接続を確立するための情報)の送信を要求する信号である。
【0060】
端末10は、T300において、プリンタ100から、Wi-FiI/F16を介して、CReqを受信する。この場合、端末10は、T301において、端末10のメモリ(図示省略)から、グループID「Group1」と公開鍵TPK2と秘密鍵tsk2とを取得する。上述したように、端末10は、図2のT15のConfigをAP6と実行済みであり、この際に、グループID「Group1」と公開鍵TPK2と秘密鍵tsk2とを生成してメモリに記憶する。グループID「Group1」は、プリンタ100とAP6との間のWi-Fi接続が確立されることによって形成される無線ネットワークを識別する情報である。なお、変形例では、ユーザによって指定された文字列がグループIDとして利用されてもよい。即ち、T301では、端末10は、図2のT15で記憶された各情報を取得する。次いで、端末10は、T302において、第2のCO(図2のT30参照)を生成する。具体的には、端末10は、以下の各処理を実行する。
【0061】
端末10は、端末10の公開鍵TPK2をハッシュ化することによって、ハッシュ値HVを生成する。また、端末10は、ハッシュ値HVと、グループID「Group1」と、図5のT210のARes内のプリンタ100の公開鍵PPK2と、の組み合わせをハッシュ化することによって、特定値を生成する。そして、端末10は、ECDSA(Elliptic Curve Digital Signature Algorithmの略)に従って、端末10の秘密鍵tsk2を用いて、生成済みの特定値を暗号化することによって、電子署名DS1を生成する。この結果、端末10は、ハッシュ値HVと、グループID「Group1」と、プリンタ100の公開鍵PPK2と、電子署名DS1と、を含むプリンタ用Signed-Connector(以下では、Signed-Connectorのことを単に「SCont」と記載する)を生成することができる。そして、端末10は、プリンタ用SContと、端末10の公開鍵TPK2と、を含む第2のCOを生成する。
【0062】
T310では、端末10は、Wi-FiI/F16を介して、第2のCOを含むDPP Configuration Response(以下では、単に「CRes」と記載する)をプリンタ100に送信する。
【0063】
プリンタ100は、T310において、端末10から、Wi-FiI/F116を介して、CResを受信する。この場合、プリンタ100は、T312において、当該CRes内の第2のCOをメモリ134に記憶する。T312の処理が終了すると、図6の処理が終了する。
【0064】
(Network Access(NA);図7
続いて、図7を参照して、プリンタ100とAP6との間で実行される図2のT35のNAの処理を説明する。上記のように、図2のT20~T30と同様に、図2のT5~T15の処理が端末10及びAP6の間で実行済みである。ただし、AP6は、図3のT105~T134の処理を実行しない。AP6は、AP6の公開鍵APK1及び秘密鍵ask1を予め記憶している。そして、AP6の公開鍵APK1と、AP6のチャネルリストと、AP6のMACアドレスと、をコード化することによって得られるQRコードが、AP6の筐体に貼り付けられている。端末10が当該QRコードを撮影することによって、端末10及びAP6の間で図5のT141以降の各処理と同様の各処理が実行される。この結果、AP6は、AP6の公開鍵APK2及び秘密鍵ask2を記憶し(T206参照)、さらに、端末10から受信される第1のCOを記憶する(図6のT312参照)。第1のCOは、AP用SContと、端末10の公開鍵TPK2と、を含む。当該公開鍵TPK2は、第2のCOに含まれる公開鍵TPK2と同じである。また、AP用SContは、ハッシュ値HVと、グループID「Group1」と、AP6の公開鍵APK2と、電子署名DS2と、を含む。当該ハッシュ値HV及び当該グループID「Group1」は、それぞれ、第2のCOに含まれるハッシュ値HV及びグループID「Group1」と同じである。電子署名DS2は、ハッシュ値HVとグループID「Group1」と公開鍵APK2との組み合わせをハッシュ化することによって得られる特定値が端末10の秘密鍵tsk2によって暗号化された情報であり、第2のCOに含まれる電子署名DS1とは異なる値である。
【0065】
プリンタ100は、T400において、Wi-FiI/F116を介して、プリンタ用SContを含むDPP Peer Discovery Request(以下では、単に「DReq」と記載する)をAP6に送信する。当該DReqは、認証の実行と、AP用SContの送信と、をAP6に要求する信号である。
【0066】
AP6は、T400において、プリンタ100からDReqを受信することに応じて、DReqの送信元(即ちプリンタ100)、及び、DReq内の各情報(即ち、ハッシュ値HV、「Group1」、及び、公開鍵PPK2)を認証するための処理を実行する。具体的には、AP6は、T402において、まず、受信済みのプリンタ用SCont内のハッシュ値HV及びグループID「Group1」が、それぞれ、記憶済みの第1のCOに含まれるAP用SCont内のハッシュ値HV及びグループID「Group1」に一致するのか否かに関する第1のAP判断処理を実行する。図7のケースでは、AP6は、第1のAP判断処理で「一致する」と判断するので、DReqの送信元(即ちプリンタ100)の認証が成功したと判断する。なお、受信済みのプリンタ用SCont内のハッシュ値HVと、記憶済みの第1のCOに含まれるAP用SCont内のハッシュ値HVと、が一致するということは、プリンタ用SCont及びAP用SContが、同じ装置(即ち、端末10)によって生成されたことを意味する。従って、AP6は、受信済みのプリンタ用SContの生成元(即ち、端末10)の認証が成功したとも判断する。さらに、AP6は、記憶済みの第1のCOに含まれる端末10の公開鍵TPK2を用いて、受信済みのプリンタ用SCont内の電子署名DS1を復号する。図7のケースでは、電子署名DS1の復号が成功するので、AP6は、電子署名DS1を復号することによって得られた特定値と、受信済みのプリンタ用SCont内の各情報(即ち、ハッシュ値HV、「Group1」、及び、公開鍵PPK2)をハッシュ化することによって得られる値と、が一致するのか否かに関する第2のAP判断処理を実行する。図7のケースでは、AP6は、第2のAP判断処理で「一致する」と判断するので、DReq内の各情報の認証が成功したと判断し、T404以降の処理を実行する。第2のAP判断処理で「一致する」と判断されることは、第2のCOがプリンタ100に記憶された後に、受信済みのプリンタ用SCont内の各情報(即ち、ハッシュ値HV、「Group1」、及び、公開鍵PPK2)が第三者によって改ざんされていないことを意味する。一方、第1のAP判断処理で「一致しない」と判断される場合、電子署名DS1の復号が失敗する場合、又は、第2のAP判断処理で「一致しない」と判断される場合には、AP6は、認証が失敗したと判断し、T404以降の処理を実行しない。
【0067】
次いで、AP6は、T404において、ECDHに従って、取得済みのプリンタ100の公開鍵PPK2と、記憶済みのAP6の秘密鍵ask2と、を用いて、接続キー(即ち共有鍵)CKを生成する。
【0068】
T410では、AP6は、AP用SContを含むDPP Peer Discovery Response(以下では、単に「DRes」と記載する)をプリンタ100に送信する。
【0069】
プリンタ100は、T410において、Wi-FiI/F116を介して、AP6からDResを受信することに応じて、DResの送信元(即ちAP6)、及び、DRes内の各情報(即ち、ハッシュ値HV、「Group1」、及び、公開鍵APK2)を認証するための処理を実行する。具体的には、プリンタ100は、T412において、まず、受信済みのAP用SCont内のハッシュ値HV及びグループID「Group1」が、それぞれ、記憶済みの第2のCOに含まれるプリンタ用SCont内のハッシュ値HV及びグループID「Group1」に一致するのか否かに関する第1のPR判断処理を実行する。図7のケースでは、プリンタ100は、第1のPR判断処理で「一致する」と判断するので、DResの送信元(即ちAP6)の認証が成功したと判断する。なお、受信済みのAP用SCont内のハッシュ値HVと、記憶済みの第2のCOに含まれるプリンタ用SCont内のハッシュ値HVと、が一致するということは、プリンタ用SCont及びAP用SContが、同じ装置(即ち、端末10)によって生成されたことを意味する。従って、プリンタ100は、受信済みのAP用SContの生成元(即ち、端末10)の認証が成功したとも判断する。さらに、プリンタ100は、記憶済みの第2のCOに含まれる端末10の公開鍵TPK2を用いて、受信済みのAP用SCont内の電子署名DS2を復号する。図7のケースでは、電子署名DS2の復号が成功するので、プリンタ100は、電子署名DS2を復号することによって得られた特定値と、受信済みのAP用SCont内の各情報(即ち、ハッシュ値HV、「Group1」、及び、公開鍵APK2)をハッシュ化することによって得られる値と、が一致するのか否かに関する第2のPR判断処理を実行する。図7のケースでは、プリンタ100は、第2のPR判断処理で「一致する」と判断するので、DRes内の各情報の認証が成功したと判断し、T414以降の処理を実行する。第2のPR判断処理で「一致する」と判断されることは、第1のCOがAP6に記憶された後に、AP用SCont内の各情報(即ち、ハッシュ値HV、「Group1」、及び、公開鍵APK2)が第三者によって改ざんされていないことを意味する。一方、第1のPR判断処理で「一致しない」と判断される場合、電子署名DS2の復号が失敗する場合、又は、第2のPR判断処理で「一致しない」と判断される場合には、プリンタ100は、認証が失敗したと判断し、T414以降の処理を実行しない。
【0070】
プリンタ100は、T414において、ECDHに従って、記憶済みのプリンタ100の秘密鍵psk2と、受信済みのAP用SCont内のAP6の公開鍵APK2と、を用いて、接続キーCKを生成する。ここで、T404でAP6によって生成される接続キーCKと、T414でプリンタ100によって生成される接続キーCKと、は同じである。これにより、Wi-Fi接続を確立するための接続キーCKがプリンタ100及びAP6の間で共有される。T414が終了すると、図7の処理が終了する。
【0071】
上述したように、接続キーCKがプリンタ100及びAP6の間で共有された後に、図2のT40において、プリンタ100及びAP6は、接続キーCKを利用して、4way-handshakeの通信を実行する。この結果、プリンタ100とAP6との間にWi-Fi接続が確立される。なお、上述したように、プリンタ100は、プリンタ100のチャネルリストに含まれる複数個の通信チャネルのうちの1個の通信チャネルを利用して、端末10から図5のT200のAReqを受信する。即ち、プリンタ100は、プリンタ100と端末10との双方が利用可能な通信チャネルを利用して、端末10からT200のAReqを受信する。一方、図2のT40では、プリンタ100は、プリンタ100とAP6との双方が利用可能な通信チャネルを利用して、Wi-Fi接続をAP6と確立する。ここで、端末10が利用可能な通信チャネルと、AP6が利用可能な通信チャネルと、は異なる場合がある。本実施例では、プリンタ100が図5のT200で端末10からAReqを受信するための通信チャネルと、プリンタ100が図2のT40でWi-Fi接続をAP6と確立するための通信チャネルと、が異なる。ただし、変形例では、前者の通信チャネルと後者の通信チャネルとは同じでもよい。
【0072】
(ケースBのBS及びAuth;図8
続いて、図8を参照して、図2のT20のBS及びT25のAuthのケースBの処理を説明する。ケースBは、端末10とプリンタ100との間の距離が比較的に大きい状況を想定している。
【0073】
T500~T532は、図3のT100~T132と同様である。プリンタ100は、T534において、ADの受信電波強度が閾値未満であると判断し、AD内の端末10のMACアドレス「xxx」と電波強度「弱」とを関連付けてメモリ134内に記憶する。
【0074】
T541~T550は、図5のT141~T200と同様である。T551では、プリンタ100は、メモリ134内に記憶済みのMACアドレス「xxx」とAReq内のMACアドレス「xxx」とが一致すると判断し(図4のS5でYES)、かつ、メモリ134内に記憶済みの電波強度が「弱」であると判断する(S10でNO)。この場合、プリンタ100は、T552において、プリンタ側確認画面PCSを表示部114に表示させる(S20)。そして、プリンタ100は、T554において、画面PCS内のYESボタンが所定時間内に選択されなかった(即ちタイムアウト)と判断し(S25でNO)、画面PCSの表示を終了して、非実行ENDとして図8の処理を終了する。
【0075】
ケースBに示されるように、プリンタ100と端末10との間の距離が比較的に大きい状況では、端末10のユーザは、DPP方式に従った通信(即ち公開鍵PPK1が利用された通信)がプリンタ100と端末10との間で実行されることを望んでいない可能性が高い。例えば、端末10がプリンタ100からかなり離れた位置に存在しており、端末10のユーザが、プリンタ100とは異なるプリンタとAP6との間でWi-Fi接続が確立されることを望んでいる状況を想定する。この場合、端末10は、プリンタ100からADを受信し(T520)、AD及びAReqをユーザによって意図されていないプリンタ100に送信する(T532,T550)。このような状況において、仮に、プリンタ100が、端末10からAReqを受信することに応じて、図5のT202以降の処理を自動的に実行してAResを端末10に送信すると(T210)、プリンタ100とAP6との間にWi-Fi接続が確立され得る。即ち、端末10のユーザによって意図されていない一対の装置(即ち、プリンタ100及びAP6)の間にWi-Fi接続が確立され得る。
【0076】
これに対し、ケースBでは、プリンタ100は、端末10からAD及びAReqを受信する場合(T550)に、ADの受信電波強度が「弱」であるので、画面PCSを表示部114に表示させることによって、AResの送信を制限する(T552)。端末10のユーザは、プリンタ100がWi-Fi接続を確立することを望んでいないので、プリンタ側確認画面PCS内のYESボタンを選択しない。この結果、プリンタ100は、タイムアウトと判断し(T554)、AResを端末10に送信しない。従って、プリンタ100とAP6との間にWi-Fi接続が確立されるのを抑制することができる。即ち、端末10のユーザによって意図されていない一対の装置の間にWi-Fi接続が確立されるのを抑制することができる。
【0077】
(ケースCのBS及びAuth;図9
続いて、図9を参照して、図2のT20のBS及びT25のAuthの他のケースCの処理を説明する。端末10は、プリンタ100のベンダによって提供される第1種のアプリ40を備える。このため、端末10のユーザが、プリンタ100がWi-Fi接続を確立することを望む可能性は高い。一方、端末50は、プリンタ100のベンダとは異なる事業者によって提供される第2種のアプリ52を備える。このため、端末50のユーザが、プリンタ100がWi-Fi接続を確立することを望む可能性は低い。そして、ケースCは、端末10のユーザが、プリンタ100とAP6との間でWi-Fi接続が確立されることを望んでおり、かつ、端末50のユーザが、プリンタ100とは異なるプリンタと、AP6とは異なるAPと、の間でWi-Fi接続が確立されることを望んでいる状況を想定している。
【0078】
ケースCでは、まず、図3のT100~T134と同様の処理が、端末10及びプリンタ100によって実行される。この結果、プリンタ100は、端末10のMACアドレス「xxx」と電波強度「強」とを関連付けてメモリ134内に記憶する(T134)。
【0079】
その後、端末10からプリンタ100にAReqが送信される前(即ち図5のT200の前)に、T610において、端末50のユーザによって第2種のアプリ52の起動操作が端末50に実行され、T612において、第2種のアプリ52が起動される。この結果、端末50は、第2種のアプリ52に従って、以下の各処理を実行する。なお、端末50は、T610以降の処理を実行する前に、図2のT5~T15と同様の処理を上記の異なるAPと実行済みである。
【0080】
端末50は、T620において、プリンタ100からADを受信する。ここで、第2種のアプリ52は、プリンタ100のベンダによって提供される第1種のアプリ40ではないので、プリンタ100からADを受信しても、端末50のMACアドレス「yyy」を含むADをプリンタ100に送信しない。従って、プリンタ100において、端末50のMACアドレス「yyy」が記憶されない。
【0081】
T641~T650は、端末10に代えて端末50が利用される点、及び、端末50の公開鍵TPK5、秘密鍵tsk5、共有鍵SK5、ランダム値RV5、暗号化データED5、及び、MACアドレス「yyy」が利用される点を除いて、図5のT141~T200と同様である。T651では、プリンタ100は、メモリ134内に記憶済みのMACアドレス「xxx」とAReq内のMACアドレス「yyy」とが一致しないと判断する(図4のS5でNO)。この場合、プリンタ100は、T652において、プリンタ側確認画面PCSを表示部114に表示させる(S20)。そして、プリンタ100は、T654において、画面PCS内のYESボタンが所定時間内に選択されなかった(即ちタイムアウト)と判断し(図4のS25でNO)、画面PCSの表示を終了して図9の処理を終了する。
【0082】
なお、例えば、図3のT100~T134が実行される前に、端末50とプリンタ100との間でT610~T650の処理が実行される状況が想定され得る。即ち、プリンタ100が、端末10のMACアドレス「xxx」と電波強度「強」とを関連付けてメモリ134内に記憶していない状況において、端末50からAReqを受信する状況が想定され得る。この場合にも、プリンタ100は、T650において、端末50からAReqを受信することに応じて、メモリ134内にMACアドレスが記憶されていないので、図4のS5でNOと判断し、T652において、画面PCSを表示部114に表示させる(S20)。
【0083】
ここで、仮に、プリンタ100が、端末50からAReqを受信することに応じて(T650)、図5のT202以降の処理を自動的に実行してAResを端末50に送信すると、プリンタ100と上記の異なるAPとの間にWi-Fi接続が確立され得る。即ち、端末50のユーザによって意図されていない一対の装置(即ち、プリンタ100及び上記の異なるAP)の間にWi-Fi接続が確立され得る。
【0084】
これに対し、ケースCでは、プリンタ100は、端末50からAReqを受信する場合(T650)に、メモリ134内の端末10のMACアドレス「xxx」とAReq内の端末50のMACアドレス「yyy」とが一致しないので、プリンタ側確認画面PCSを表示部114に表示させることによって、AResの送信を制限する(T652)。端末50のユーザは、プリンタ100がWi-Fi接続が確立されることを望んでいないので、画面PCS内のYESボタンを選択しない。この結果、プリンタ100は、タイムアウトと判断し(T654)、AResを端末50に送信しない。従って、プリンタ100と上記の異なるAPとの間にWi-Fi接続が確立されるのを抑制することができる。即ち、端末50のユーザによって意図されていない一対の装置の間にWi-Fi接続が確立されるのを抑制することができる。
【0085】
(ケースDのBS;図10
続いて、図10を参照して、BSの他のケースDの処理を説明する。ケースDは、図2のT20~T40が実行された後の状態、即ち、プリンタ100のメモリ134が第2のCOを記憶済みである状態である。
【0086】
T700及びT705は、図3のT100及びT105と同様である。本ケースでは、プリンタ100のメモリ134が第2のCOを記憶しているので、プリンタ100は、BTI/F118への通電を開始しない。プリンタ100は、第2のCOを記憶している状況では、第2のCOを利用して、Wi-Fi接続をAP6と確立することができる。従って、プリンタ100においてBSが実行される可能性が低い。プリンタ100は、このような状況において、BTI/F118への通電を開始しないので消費電力を抑制することができる。
【0087】
ユーザは、プリンタ100が第2のCOを記憶している状態において、例えば、AP6とは異なるAPとプリンタ100との間のWi-Fi接続の確立を望む可能性がある。この場合、ユーザは、T706において、メニュー画面MS内の設定ボタンを選択する。プリンタ100は、T707において、設定画面SSを表示部114に表示させる。画面SSは、プリンタ100の印刷設定を変更するための印刷設定ボタンと、接続処理の実行を指示するための接続処理ボタンと、を含む。そして、T710では、ユーザは、画面SS内の接続処理ボタンを選択する。この場合、プリンタ100は、BTI/F118への通電を開始して、T712において、BTI/F118を介して、ADを外部に繰り返し送信することを開始し、T714において、可能状態に移行する。これにより、端末10において第1種のアプリ40が起動されることに応じて、図3のT120以降の処理が実行される。
【0088】
なお、プリンタ100は、DPP方式を利用せずに、通常のWi-Fi方式(即ちSSID及びパスワードを利用する方式)に従って、AP6とのWi-Fi接続を確立することもできる。この場合、プリンタ100のメモリ134は、AP6とのWi-Fi接続を確立するための無線設定情報(即ちSSID及びパスワード)を記憶する。このような状態でプリンタ100の電源がONされても、プリンタ100は、図10のケースDと同様に、BTI/F118への通電を開始しない。プリンタ100が無線設定情報を利用してAP6とWi-Fi接続を確立することができるからである。これにより、プリンタ100の消費電力を抑制できる。
【0089】
(本実施例の効果)
本実施例では、プリンタ100は、端末10からADを受信する場合(図3のT132)に、ADの受信電波強度が閾値以上であるのか否かを判断する。ここで、受信電波強度が閾値以上である状況(図3のケースA)は、プリンタ100と端末10との間の距離が比較的に小さいこと、即ち、プリンタ100と端末10との間で公開鍵PPK1が利用された通信が実行されることを端末10のユーザが望んでいる可能性が高いこと、を意味する。このような状況では、プリンタ100は、端末10からAReqを受信することに応じて(図5のT200)、AResを端末10に送信し(T210)、端末10から第2のCOを受信し(図6のT310)、第2のCOを利用してAP6とのWi-Fi接続を確立する(図2のT35、T40)。
【0090】
一方、受信電波強度が閾値以上でない状況(図8のケースB)は、プリンタ100と端末10との間の距離が比較的に大きいこと、即ち、プリンタ100と端末10との間で公開鍵PPK1が利用された通信が実行されることを端末10のユーザが望んでいない可能性が高いこと、を意味する。このような状況では、プリンタ100は、端末10からAReqを受信する場合(T550)に、プリンタ側確認画面PCSを表示部114に表示させることによって、AResの送信を制限する(T552)。図8のケースBでは、画面PCS内のYESボタンがユーザによって選択されないので(T554)、プリンタ100とAP6との間にWi-Fi接続が確立されない。このために、端末10のユーザによって意図されていない一対の装置の間にWi-Fi接続が確立されるのを抑制することができる。なお、ケースBにおいて、端末10のユーザが、プリンタ100とAP6との間にWi-Fi接続が確立されることを望んでいる場合には、画面PCS内のYESボタンがユーザによって選択される。この場合、図5のT202以降の処理が実行され、プリンタ100とAP6との間にWi-Fi接続が確立される。従って、ユーザの意図に応じたWi-Fi接続を確立させることができる。
【0091】
また、本実施例では、プリンタ100は、端末10からADを受信し(図3のT132)、かつ、特定端末(端末10又は端末50)からAReqを受信する場合(図4のS3でYES)に、ADに含まれるMACアドレスとAReqに含まれるMACアドレスとが一致するのか否かを判断する(S5)。ここで、ADに含まれるMACアドレスとAReqに含まれるMACアドレスとが一致する状況(図5のケースA)は、端末10と特定端末とが一致すること、即ち、ADの送信元である端末10からAReqが送信されたことを意味する。従って、プリンタ100と端末10との間で公開鍵PPK1が利用された通信が実行されることをユーザが望んでいる可能性が高いことを意味する。このような状況では、プリンタ100は、AResを端末10に送信し(図5のT210)、端末10から第2のCOを受信し(図6のT310)、第2のCOを利用してAP6とのWi-Fi接続を確立する(図2のT35、T40)。
【0092】
一方、ADに含まれるMACアドレスとAReqに含まれるMACアドレスとが一致しない状況(図9のケースC)は、端末10と特定端末とが一致しないこと、即ち、ADの送信元である端末10とは異なる装置からAReqが送信されたことを意味する。従って、プリンタ100と端末50との間で公開鍵PPK1が利用された通信が実行されることをユーザが望んでいない可能性が高いことを意味する。このような状況では、プリンタ100は、端末50からAReqを受信する場合(図9のT650)に、プリンタ側確認画面PCSを表示部114に表示させることによって、AResの送信を制限する(T652)。図9のケースCでは、画面PCS内のYESボタンがユーザによって選択されないので(T654)、プリンタ100と、AP6とは異なるAPと、の間にWi-Fi接続が確立されない。このために、端末50のユーザによって意図されていない一対の装置の間にWi-Fi接続が確立されるのを抑制することができる。なお、ケースCにおいて、端末50のユーザが、プリンタ100と上記の異なるAPとの間にWi-Fi接続が確立されることを望んでいる場合には、画面PCS内のYESボタンがユーザによって選択される。この場合、図5のT202以降の処理が実行され、プリンタ100と上記の異なるAPとの間にWi-Fi接続が確立される。従って、ユーザの意図に応じたWi-Fi接続を確立させることができる。
【0093】
(対応関係)
プリンタ100、端末10、AP6が、それぞれ、「通信装置」、「第1の外部装置」、「第2の外部装置」の一例である。端末10又は端末50が、「特定外部装置」の一例である。BTI/F118、Wi-FiI/F116が、それぞれ、「第1の無線インターフェース」、「第2の無線インターフェース」の一例である。公開鍵PPK1、プリンタ100から送信されるADが、それぞれ、「公開鍵」、「特定信号」の一例である。AReq、ARes、第2のCOが、それぞれ、「認証要求」、「認証応答」、「接続情報」の一例である。図2のT40で確立されるWi-Fi接続が、「無線接続」の一例である。
【0094】
プリンタ側確認画面PCS、が、「指示画面」の一例である。端末10のMACアドレス「xxx」AReq内のMACアドレス(「xxx」又は「yyy」)が、それぞれ、「対象識別情報」、「特定識別情報」の一例である。チャネルリスト、図4のT200で利用される通信チャネル、図2のT40で利用される通信チャネルが、それぞれ、「通信チャネル情報」、「第1の通信チャネル」、「第2の通信チャネル」の一例である。メモリ134内に第2のCOが記憶されていない状態でユーザからの電源ON操作を受け付けること、及び、メモリ134内に第2のCOが記憶されている状態でユーザからの無線設定ボタンの選択を受け付けることが、「所定条件」の一例である。第1種のアプリ40が、「アプリケーションプログラム」の一例である。設定画面SS内の接続処理ボタンの選択操作が、「特定操作」の一例である。AP用SCont、第2のCO内のハッシュ値HVが、それぞれ、「受信情報」、「認証情報」の一例である。
【0095】
図3のT120(又は図8のT520、図9のT620)の処理、T132(又はT532)の処理、図4のS10の処理、図5のT200(又はT550)の処理、T210の処理、図6のT310の処理、図2のT35及びT40の処理が、それぞれ、「公開鍵送信部」、「特定信号受信部」、「判断部」、「認証要求受信部」、「認証応答送信部」、「接続情報受信部」、「確立部」によって実行される処理の一例である。
【0096】
図3のT120(又は図8のT520、図9のT620)の処理、T132(又はT532)の処理、図5のT200(又はT550、T650)の処理、図4のS5の処理、T210の処理、図6のT310の処理、図2のT35及びT40の処理が、それぞれ、「公開鍵送信部」、「特定信号受信部」、「認証要求受信部」、「判断部」、「認証応答送信部」、「接続情報受信部」、「確立部」によって実行される処理の一例である。
【0097】
以上、本発明の具体例を詳細に説明したが、これらは例示にすぎず、特許請求の範囲を限定するものではない。特許請求の範囲に記載の技術には以上に例示した具体例を様々に変形、変更したものが含まれる。上記の実施例の変形例を以下に列挙する。
【0098】
(変形例1)図3のT132において、端末10は、BTI/F18を介して、MACアドレス「xxx」を含まないADをプリンタ100に送信してもよい。この場合、プリンタ100は、T132において、端末10から、BTI/F118を介して、ADを受信することに応じて、当該ADの受信電波強度が閾値以上であると判断する場合に、電波強度「強」をメモリ134内に記憶する。そして、プリンタ100は、特定端末からAReqを受信する場合(図4のS3でYES)に、S5の処理をスキップして、電波強度「強」がメモリ134内に記憶されているのか否かを判断する。プリンタ100は、電波強度「強」がメモリ134内に記憶されている場合に、S15に進む。一方、プリンタ100は、電波強度「弱」がメモリ134内に記憶されている場合に、S20に進む。変形例では、「特定信号」は、「対象識別情報」を含まなくてもよい。
【0099】
(変形例2)図3のT134において、プリンタ100は、ADの受信電波強度が閾値以上であるのか否かを判断せず、MACアドレス「xxx」のみをメモリ134内に記憶してもよい。この場合、プリンタ100は、特定端末からAReqを受信され(図4のS3でYES)、かつ、メモリ134内に記憶されているMACアドレスと受信済みのAReq内のMACアドレスとが一致すると判断する場合に、S10の処理をスキップして、S15の処理を実行する。
【0100】
(変形例3)例えば、図3のT105でプリンタ100から送信されるADは、チャネルリスト及びMACアドレス「abc」を含まなくてもよい。即ち、当該ADは、少なくとも公開鍵PPK1を含めばよい。この場合、プリンタ100は、T109で不可能状態から可能状態に移行することに応じて、プリンタ100が利用可能な全ての無線チャネルのうちの1個の無線チャネルが利用されたAReqを受信することを監視する。また、端末10は、図5のT200において、端末10が利用可能な全ての無線チャネルを順次利用して、AReqをブロードキャストによって順次送信する。即ち、「特定信号」は、少なくとも公開鍵を用いて得られる情報であればよい。また、本変形例では、「チャネル情報送信部」が省略可能である。
【0101】
(変形例4)共有鍵(例えばSK1)を生成するための処理(例えば、図4のT142、T202)は、ECDHに従った上記の実施例の処理に限らず、ECDHに従った他の処理であってもよい。また、共有鍵を生成するための処理は、ECDHに従った処理に限らず、他の方式(例えば、DH(Diffie-Hellman key exchangeの略)等)に従った処理が実行されてもよい。また、上記の実施例では、電子署名DS1及びDS2が、ECDSAに従って生成されたが、他の方式(例えば、DSA(Digital Signature Algorithmの略)、RAS(Rivest-Shamir-Adleman cryptosystemの略)等)に従って生成されてもよい。
【0102】
(変形例5)例えば、図3のT107において、プリンタ100は、ADとは異なる信号であって、BT方式に従った信号(例えばScan Request)を外部に繰り返し送信してもよい。本変形例では、当該異なる信号が、「特定信号」の一例である。
【0103】
(変形例6)プリンタ100は、図4のS5でNOと判断する場合に、S20及びS25を実行せずに、非実行ENDとして図4の処理を終了してもよい。また、プリンタ100は、S10でNOと判断される場合に、S20及びS25を実行せずに、非実行ENDとして図4の処理を終了してもよい。本変形例では、S5でNO又はS10でNOの場合にAResを送信しないことが、「認証応答の送信は制限される」の一例である。また、本変形例では、「表示制御部」が省略可能である。
【0104】
(変形例7)図3のT132において、端末10は、BTI/F18を介して、MACアドレス「xxx」に代えて、端末10のデバイス名を含むADをプリンタ100に送信してもよい。この場合、T134において、プリンタ100は、AD内の端末のデバイス名と電波強度「強」とを関連付けて記憶する。また、図5のT200では、プリンタ100は、端末10から、Wi-FiI/F116を介して、MACアドレス「xxx」に代えて、端末10のデバイス名を含むAReqを受信し、メモリ134に記憶済みのデバイス名とAReq内のデバイス名とが一致する場合に、T202以降の処理を実行する。本変形例では、端末10のデバイス名が、「対象識別情報」及び「特定識別情報」の一例である。一般的に言えば、「対象識別情報(又は特定識別情報)」は、「第1の外部装置(又は特定外部装置)」を識別する情報であればよい。
【0105】
(変形例8)例えば、図3のT107及びT120の処理が省略されてもよい。この場合、プリンタ100は、T132において、端末10から、BTI/F118を介して、ADを受信した後に、BTI/F118を介して、公開鍵PPK1等を含むADを端末10に送信する。即ち、「特定信号受信部」は、「公開鍵」が「第1の外部装置」によって受信される前に、「特定信号」を受信してもよい。
【0106】
(変形例9)図2のT35において、端末10とプリンタ100との間でNAの処理が実行されて、端末10とプリンタ100との間でWi-Fi接続が確立されてもよい。即ち、「第2の外部装置」は、「第1の外部装置」と同じ装置であってもよい。
【0107】
(変形例10)図3のT107等でプリンタ100から送信されるADが、さらに、第1種のアプリ40を起動させるための起動情報を含んでいてもよい。この場合、端末10は、電源がONされることに応じて、BTI/F18への通電を開始し、プリンタ100から起動情報を含むADを受信することに応じて、第1種のアプリ40を起動して、T122以降の処理を実行する。
【0108】
(変形例11)上記の実施例では、端末10を利用して、プリンタ100とAP6との間のWi-Fi接続が確立される。これに代えて、例えば、端末10を利用して、WFD方式のG/O(Group Ownerの略)として動作するプリンタ100(即ち親局として動作するデバイス)と、他のデバイス(即ち子局として動作するデバイス)と、の間のWi-Fi接続が確立されてもよい。即ち、「第2の外部装置」は、「親局装置」でなくてもよい。
【0109】
(変形例12)図9のT650において、端末50は、MACアドレス「yyy」を含まないAReqをプリンタ100に送信してもよい。この場合、プリンタ100は、端末50から、Wi-FiI/F116を介して、AReqを受信することに応じて、AReq内にMACアドレスが含まれていないと判断して、プリンタ側確認画面PCSを表示部114に表示させてもよい。
【0110】
(変形例13)プリンタ100が、BTI/F118に代えて、BT方式とは異なる無線通信方式(例えば、ZigBee方式)に従った無線インターフェースを備えていてもよい。本変形例では、当該無線インターフェースが、「第1の無線インターフェース」の一例である。
【0111】
(変形例14)「通信装置」は、プリンタでなくてもよく、スキャナ、多機能機、携帯端末、PC、サーバ等の他のデバイスであってもよい。
【0112】
(変形例15)上記の各実施例では、図2図10の各処理がソフトウェア(即ちプログラム136)によって実現されるが、これらの各処理のうちの少なくとも1つが論理回路等のハードウェアによって実現されてもよい。
【0113】
また、本明細書または図面に説明した技術要素は、単独であるいは各種の組合せによって技術的有用性を発揮するものであり、出願時請求項記載の組合せに限定されるものではない。また、本明細書または図面に例示した技術は複数目的を同時に達成するものであり、そのうちの一つの目的を達成すること自体で技術的有用性を持つものである。
【符号の説明】
【0114】
2:通信システム、6:AP、10,50:端末、16,116:Wi-FiI/F、18,118:BTI/F、40:第1種のアプリケーション、52:第2種のアプリケーション、100:プリンタ、112:操作部、114:表示部、120:印刷実行部、130:制御部、132:CPU、134:メモリ、136:プログラム
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
【手続補正書】
【提出日】2022-04-22
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
通信装置であって、
第1の無線インターフェースと、
前記第1の無線インターフェースとは異なる第2の無線インターフェースと、
前記第1の無線インターフェースを介して、公開鍵を外部に送信する公開鍵送信部と、
第1の外部装置から、前記第1の無線インターフェースを介して、特定信号を受信する特定信号受信部と
記公開鍵が外部に送信された後に、前記第1の外部装置から、前記第2の無線インターフェースを介して、前記公開鍵が利用された認証要求を受信する認証要求受信部と、
前記特定信号に基づいて前記通信装置と前記第1の外部装置との間の距離が所定値未満であり、かつ、前記第1の外部装置から前記認証要求が受信される場合に、前記第2の無線インターフェースを介して、前記認証要求に対する応答である認証応答を前記第1の外部装置に送信する認証応答送信部であって、前記特定信号に基づいて前記通信装置と前記第1の外部装置との間の距離が前記所定値以上であり、かつ、前記第1の外部装置から前記認証要求が受信される場合に、前記第1の外部装置への前記認証応答の送信は制限される、前記認証応答送信部と、
前記認証応答が前記第1の外部装置に送信された後に、前記第1の外部装置から、前記第2の無線インターフェースを介して、接続情報を受信する接続情報受信部であって、前記接続情報は、前記通信装置と第2の外部装置との間に前記第2の無線インターフェースを介した無線接続を確立するための情報である、前記接続情報受信部と、
前記第1の外部装置から前記接続情報が受信される場合に、前記接続情報を利用して、前記通信装置と前記第2の外部装置との間に前記第2の無線インターフェースを介した前記無線接続を確立する確立部と、
を備える、通信装置。
【請求項2】
前記通信装置は、さらに、
表示部と、
前記特定信号に基づいて前記通信装置と前記第1の外部装置との間の距離が前記所定値以上であり、かつ、前記第1の外部装置から前記認証要求が受信される場合に、前記認証応答の送信を実行することを指示するための指示画面を前記表示部に表示させることによって、前記第1の外部装置への前記認証応答の送信を制限する表示制御部と、を備え、
前記認証応答送信部は、さらに、前記指示画面が表示されている状況において、前記認証応答の送信を実行することが指示される場合に、前記第2の無線インターフェースを介して、前記認証応答を前記第1の外部装置に送信する、請求項1に記載の通信装置。
【請求項3】
前記特定信号は、前記第1の外部装置を識別する対象識別情報を含み、
前記認証応答送信部は、前記特定信号に基づいて前記通信装置と前記第1の外部装置との間の距離が前記所定値未満であり、かつ、前記対象識別情報によって識別される前記第1の外部装置から前記対象識別情報を含む前記認証要求が受信される場合に、前記第2の無線インターフェースを介して、前記認証応答を前記第1の外部装置に送信し、
前記第1の外部装置とは異なる特定外部装置から、前記第2の無線インターフェースを介して、前記対象識別情報を含まない前記認証要求が受信される場合に、前記特定外部装置への前記認証応答の送信は制限される、請求項1又は2に記載の通信装置。
【請求項4】
前記通信装置は、さらに、
所定条件が満たされる場合に、前記通信装置の動作状態を不可能状態から可能状態に移行させる状態移行部であって、前記不可能状態は、前記認証要求を受信しても、前記認証応答を送信しない状態であり、前記可能状態は、前記認証要求を受信することに応じて、前記認証応答を送信する状態である、前記状態移行部を備え、
前記認証応答送信部は、前記通信装置の動作状態が前記可能状態に移行された後に、前記特定信号に基づいて前記通信装置と前記第1の外部装置との間の距離が前記所定値未満であり、かつ、前記第1の外部装置から前記認証要求が受信される場合に、前記第2の無線インターフェースを介して、前記認証応答を前記第1の外部装置に送信する、請求項1から3のいずれか一項に記載の通信装置。
【請求項5】
前記通信装置は、さらに、
前記第1の無線インターフェースを介して、前記通信装置において予め決められている第1の通信チャネルを示す通信チャネル情報を外部に送信するチャネル情報送信部を備え、
前記可能状態は、前記第1の通信チャネルが利用された前記認証要求を受信することを監視し、前記認証要求を受信することに応じて、前記認証応答を送信する状態であり、
前記認証応答送信部は、前記通信装置の動作状態が前記可能状態に移行された後に、前記特定信号に基づいて前記通信装置と前記第1の外部装置との間の距離が前記所定値未満であり、かつ、前記第1の外部装置から前記第1の通信チャネルが利用された前記認証要求が受信される場合に、前記第2の無線インターフェースを介して、前記認証応答を前記第1の外部装置に送信する、請求項4に記載の通信装置。
【請求項6】
通信装置であって、
第1の無線インターフェースと、
前記第1の無線インターフェースとは異なる第2の無線インターフェースと、
前記第1の無線インターフェースを介して、公開鍵を外部に送信する公開鍵送信部と、
第1の外部装置から、前記第1の無線インターフェースを介して、前記第1の外部装置を識別する対象識別情報を含む特定信号を受信する特定信号受信部と、
前記公開鍵が外部に送信された後に、特定外部装置から、前記第2の無線インターフェースを介して、前記公開鍵が利用された認証要求を受信する認証要求受信部であって、前記認証要求は、前記特定外部装置を識別する特定識別情報を含む、前記認証要求受信部と、
前記第1の外部装置から前記特定信号が受信され、かつ、前記特定外部装置から前記認証要求が受信され、かつ、前記特定信号に含まれる前記対象識別情報と前記認証要求に含まれる前記特定識別情報とが一致する場合に、前記第2の無線インターフェースを介して、前記認証要求に対する応答である認証応答を前記第1の外部装置に一致する前記特定外部装置に送信する認証応答送信部であって、前記対象識別情報と前記特定識別情報とが一致しない場合に、前記第1の外部装置とは異なる前記特定外部装置への前記認証応答の送信は制限される、前記認証応答送信部と、
前記認証応答が前記特定外部装置に送信された後に、前記特定外部装置から、前記第2の無線インターフェースを介して、接続情報を受信する接続情報受信部であって、前記接続情報は、前記通信装置と第2の外部装置との間に前記第2の無線インターフェースを介した無線接続を確立するための情報である、前記接続情報受信部と、
前記特定外部装置から前記接続情報が受信される場合に、前記接続情報を利用して、前記通信装置と前記第2の外部装置との間に前記第2の無線インターフェースを介した前記無線接続を確立する確立部と、
を備える、通信装置。
【請求項7】
前記通信装置は、さらに、
表示部と、
前記対象識別情報と前記特定識別情報とが一致しない場合に、前記認証応答の送信を実行することを指示するための指示画面を前記表示部に表示させることによって、前記特定外部装置への前記認証応答の送信を制限する表示制御部と、を備え、
前記認証応答送信部は、前記指示画面が表示されている状況において、前記認証応答の送信を実行することが指示される場合に、前記第2の無線インターフェースを介して、前記認証応答を前記特定外部装置に送信する、請求項6に記載の通信装置。
【請求項8】
前記通信装置は、さらに、
所定条件が満たされる場合に、前記通信装置の動作状態を不可能状態から可能状態に移行させる状態移行部であって、前記不可能状態は、前記認証要求を受信しても、前記認証応答を送信しない状態であり、前記可能状態は、前記認証要求を受信することに応じて、前記認証応答を送信する状態である、前記状態移行部を備え、
前記認証応答送信部は、前記通信装置の動作状態が前記可能状態に移行された後に、前記対象識別情報と前記特定識別情報とが一致する場合に、前記第2の無線インターフェースを介して、前記認証応答を前記特定外部装置に送信する、請求項6又は7に記載の通信装置。
【請求項9】
前記通信装置は、さらに、
前記第1の無線インターフェースを介して、前記通信装置において予め決められている第1の通信チャネルを示す通信チャネル情報を外部に送信するチャネル情報送信部を備え、
前記可能状態は、前記第1の通信チャネルが利用された前記認証要求を受信することを監視し、前記認証要求を受信することに応じて、前記認証応答を送信する状態であり、
前記認証応答送信部は、前記通信装置の動作状態が前記可能状態に移行された後に、前記特定外部装置から前記第1の通信チャネルが利用された前記認証要求が受信され、かつ、前記対象識別情報と前記特定識別情報とが一致する場合に、前記第2の無線インターフェースを介して、前記認証応答を前記特定外部装置に送信する、請求項8に記載の通信装置。
【請求項10】
前記確立部は、前記第1の通信チャネルとは異なる第2の通信チャネルを利用して、前記通信装置と前記第2の外部装置との間に前記第2の無線インターフェースを介した前記無線接続を確立する、請求項5又は9に記載の通信装置。
【請求項11】
前記特定信号は、前記通信装置のベンダによって提供されるアプリケーションプログラムに従って、前記第1の外部装置から前記通信装置に送信される、請求項1から10のいずれか一項に記載の通信装置。
【請求項12】
前記特定信号受信部は、前記公開鍵が前記第1の外部装置によって受信された後に、前記第1の外部装置から、前記第1の無線インターフェースを介して、前記特定信号を受信する、請求項1から11のいずれか一項に記載の通信装置。
【請求項13】
前記第1の無線インターフェースは、Bluetooth(登録商標)方式に従った無線通信を実行するための無線インターフェースであり、
前記公開鍵送信部は、前記Bluetooth方式に従ったAdvertise信号であって、前記公開鍵を含む前記Advertise信号を外部に繰り返し送信する、請求項1から12のいずれか一項に記載の通信装置。
【請求項14】
前記第1の無線インターフェースは、前記Bluetooth方式のバージョン4.0以上に従った無線通信を実行するための無線インターフェースである、請求項13に記載の通信装置。
【請求項15】
前記通信装置は、さらに、
前記接続情報を記憶するためのメモリを備え、
前記公開鍵送信部は、前記メモリ内に前記接続情報が記憶されていない状況において、前記通信装置の電源がONされる場合に、前記第1の無線インターフェースを介して、前記公開鍵を外部に送信し、
前記メモリ内に前記接続情報が記憶されている状況において、前記通信装置の電源がONされる場合に、前記公開鍵は送信されない、請求項1から14のいずれか一項に記載の通信装置。
【請求項16】
前記通信装置は、さらに、
操作部を備え、
前記公開鍵送信部は、前記メモリ内に前記接続情報が記憶されている状況において、前記通信装置の電源がONされた後に、前記操作部を介した特定操作が受け付けられる場合に、前記公開鍵を外部に送信する、請求項15に記載の通信装置。
【請求項17】
前記第2の外部装置は、前記第1の外部装置とは異なる装置であって、無線ネットワークの親局として動作すべき親局装置であり、
前記確立部は、前記通信装置と前記第2の外部装置との間に前記第2の無線インターフェースを介した前記無線接続を確立して、前記通信装置を前記無線ネットワークに子局として参加させる、請求項1から16のいずれか一項に記載の通信装置。
【請求項18】
前記接続情報は、前記第2の外部装置から受信される受信情報を認証するための認証情報を含む、請求項1から17のいずれか一項に記載の通信装置。
【請求項19】
前記通信装置は、さらに、
前記認証応答が送信された後に、前記通信装置をWi-Fi規格に従ったEnrolleeとして動作させる動作制御部を備える、請求項1から18のいずれか一項に記載の通信装置。
【請求項20】
通信装置であって、
第1の無線インターフェースと、
前記第1の無線インターフェースとは異なる第2の無線インターフェースと、
表示部と、
前記第1の無線インターフェースを介して、公開鍵を外部に送信する公開鍵送信部と
記公開鍵が外部に送信された後に、第1の外部装置から、前記第2の無線インターフェースを介して、前記公開鍵が利用された認証要求を受信する認証要求受信部と、
前記第1の外部装置から前記認証要求が受信される場合に、前記認証要求に対する応答である認証応答の送信を実行することを指示するための指示画面を前記表示部に表示させる表示制御部と、
前記指示画面が表示されている状況において、前記認証応答の送信を実行することが指示される場合に、前記第2の無線インターフェースを介して、前記認証応答を前記第1の外部装置に送信する認証応答送信部と
前記認証応答が前記第1の外部装置に送信された後に、前記第1の外部装置から、前記第2の無線インターフェースを介して、接続情報を受信する接続情報受信部であって、前記接続情報は、前記通信装置と第2の外部装置との間に前記第2の無線インターフェースを介した無線接続を確立するための情報である、前記接続情報受信部と、
前記第1の外部装置から前記接続情報が受信される場合に、前記接続情報を利用して、前記通信装置と前記第2の外部装置との間に前記第2の無線インターフェースを介した前記無線接続を確立する確立部と、
を備える、通信装置。
【請求項21】
通信装置のためのコンピュータプログラムであって、
前記通信装置のコンピュータを、以下の各部、即ち、
前記通信装置の第1の無線インターフェースを介して、公開鍵を外部に送信する公開鍵送信部と、
第1の外部装置から、前記第1の無線インターフェースを介して、特定信号を受信する特定信号受信部と
記公開鍵が外部に送信された後に、前記第1の外部装置から、前記通信装置の第2の無線インターフェースを介して、前記公開鍵が利用された認証要求を受信する認証要求受信部であって、前記第2の無線インターフェースは、前記第1の無線インターフェースとは異なる、前記認証要求受信部と、
前記特定信号に基づいて前記通信装置と前記第1の外部装置との間の距離が所定値未満であり、かつ、前記第1の外部装置から前記認証要求が受信される場合に、前記第2の無線インターフェースを介して、前記認証要求に対する応答である認証応答を前記第1の外部装置に送信する認証応答送信部であって、前記特定信号に基づいて前記通信装置と前記第1の外部装置との間の距離が前記所定値以上であり、かつ、前記第1の外部装置から前記認証要求が受信される場合に、前記第1の外部装置への前記認証応答の送信は制限される、前記認証応答送信部と、
前記認証応答が前記第1の外部装置に送信された後に、前記第1の外部装置から、前記第2の無線インターフェースを介して、接続情報を受信する接続情報受信部であって、前記接続情報は、前記通信装置と第2の外部装置との間に前記第2の無線インターフェースを介した無線接続を確立するための情報である、前記接続情報受信部と、
前記第1の外部装置から前記接続情報が受信される場合に、前記接続情報を利用して、前記通信装置と前記第2の外部装置との間に前記第2の無線インターフェースを介した前記無線接続を確立する確立部と、
として機能させる、コンピュータプログラム。
【請求項22】
通信装置のためのコンピュータプログラムであって、
前記通信装置のコンピュータを、以下の各部、即ち、
前記通信装置の第1の無線インターフェースを介して、公開鍵を外部に送信する公開鍵送信部と、
第1の外部装置から、前記第1の無線インターフェースを介して、前記第1の外部装置を識別する対象識別情報を含む特定信号を受信する特定信号受信部と、
前記公開鍵が外部に送信された後に、特定外部装置から、前記通信装置の第2の無線インターフェースを介して、前記公開鍵が利用された認証要求を受信する認証要求受信部であって、前記第2の無線インターフェースは、前記第1の無線インターフェースとは異なり、前記認証要求は、前記特定外部装置を識別する特定識別情報を含む、前記認証要求受信部と、
前記第1の外部装置から前記特定信号が受信され、かつ、前記特定外部装置から前記認証要求が受信され、かつ、前記特定信号に含まれる前記対象識別情報と前記認証要求に含まれる前記特定識別情報とが一致する場合に、前記第2の無線インターフェースを介して、前記認証要求に対する応答である認証応答を前記第1の外部装置に一致する前記特定外部装置に送信する認証応答送信部であって、前記対象識別情報と前記特定識別情報とが一致しない場合に、前記第1の外部装置とは異なる前記特定外部装置への前記認証応答の送信は制限される、前記認証応答送信部と、
前記認証応答が前記特定外部装置に送信された後に、前記特定外部装置から、前記第2の無線インターフェースを介して、接続情報を受信する接続情報受信部であって、前記接続情報は、前記通信装置と第2の外部装置との間に前記第2の無線インターフェースを介した無線接続を確立するための情報である、前記接続情報受信部と、
前記特定外部装置から前記接続情報が受信される場合に、前記接続情報を利用して、前記通信装置と前記第2の外部装置との間に前記第2の無線インターフェースを介した前記無線接続を確立する確立部と、
として機能させる、コンピュータプログラム。
【請求項23】
通信装置のためのコンピュータプログラムであって、
前記通信装置のコンピュータを、以下の各部、即ち、
前記通信装置の第1の無線インターフェースを介して、公開鍵を外部に送信する公開鍵送信部と
記公開鍵が外部に送信された後に、第1の外部装置から、前記通信装置の第2の無線インターフェースを介して、前記公開鍵が利用された認証要求を受信する認証要求受信部であって、前記第2の無線インターフェースは、前記第1の無線インターフェースとは異なる、前記認証要求受信部と、
前記第1の外部装置から前記認証要求が受信される場合に、前記認証要求に対する応答である認証応答の送信を実行することを指示するための指示画面を前記通信装置の表示部に表示させる表示制御部と、
前記指示画面が表示されている状況において、前記認証応答の送信を実行することが指示される場合に、前記第2の無線インターフェースを介して、前記認証応答を前記第1の外部装置に送信する認証応答送信部と
前記認証応答が前記第1の外部装置に送信された後に、前記第1の外部装置から、前記第2の無線インターフェースを介して、接続情報を受信する接続情報受信部であって、前記接続情報は、前記通信装置と第2の外部装置との間に前記第2の無線インターフェースを介した無線接続を確立するための情報である、前記接続情報受信部と、
前記第1の外部装置から前記接続情報が受信される場合に、前記接続情報を利用して、前記通信装置と前記第2の外部装置との間に前記第2の無線インターフェースを介した前記無線接続を確立する確立部と、
として機能させる、コンピュータプログラム。
【手続補正2】
【補正対象書類名】明細書
【補正対象項目名】0113
【補正方法】変更
【補正の内容】
【0113】
また、本明細書または図面に説明した技術要素は、単独であるいは各種の組合せによって技術的有用性を発揮するものであり、出願時請求項記載の組合せに限定されるものではない。また、本明細書または図面に例示した技術は複数目的を同時に達成するものであり、そのうちの一つの目的を達成すること自体で技術的有用性を持つものである。
以下の項目は、出願時の特許請求の範囲に記載の要素である。
(項目1)
通信装置であって、
第1の無線インターフェースと、
前記第1の無線インターフェースとは異なる第2の無線インターフェースと、
前記第1の無線インターフェースを介して、公開鍵を外部に送信する公開鍵送信部と、
第1の外部装置から、前記第1の無線インターフェースを介して、特定信号を受信する特定信号受信部と、
前記第1の外部装置から前記特定信号が受信される場合に、前記特定信号の受信電波強度が閾値以上であるのか否かを判断する判断部と、
前記公開鍵が外部に送信された後に、前記第1の外部装置から、前記第2の無線インターフェースを介して、前記公開鍵が利用された認証要求を受信する認証要求受信部と、
前記受信電波強度が前記閾値以上であると判断され、かつ、前記第1の外部装置から前記認証要求が受信される場合に、前記第2の無線インターフェースを介して、前記認証要求に対する応答である認証応答を前記第1の外部装置に送信する認証応答送信部であって、前記受信電波強度が前記閾値以上でないと判断され、かつ、前記第1の外部装置から前記認証要求が受信される場合に、前記第1の外部装置への前記認証応答の送信は制限される、前記認証応答送信部と、
前記認証応答が前記第1の外部装置に送信された後に、前記第1の外部装置から、前記第2の無線インターフェースを介して、接続情報を受信する接続情報受信部であって、前記接続情報は、前記通信装置と第2の外部装置との間に前記第2の無線インターフェースを介した無線接続を確立するための情報である、前記接続情報受信部と、
前記第1の外部装置から前記接続情報が受信される場合に、前記接続情報を利用して、前記通信装置と前記第2の外部装置との間に前記第2の無線インターフェースを介した前記無線接続を確立する確立部と、
を備える、通信装置。
(項目2)
前記通信装置は、さらに、
表示部と、
前記受信電波強度が前記閾値以上でないと判断され、かつ、前記第1の外部装置から前記認証要求が受信される場合に、前記認証応答の送信を実行することを指示するための指示画面を前記表示部に表示させることによって、前記第1の外部装置への前記認証応答の送信を制限する表示制御部と、を備え、
前記認証応答送信部は、さらに、前記指示画面が表示されている状況において、前記認証応答の送信を実行することが指示される場合に、前記第2の無線インターフェースを介して、前記認証応答を前記第1の外部装置に送信する、項目1に記載の通信装置。
(項目3)
前記特定信号は、前記第1の外部装置を識別する対象識別情報を含み、
前記認証応答送信部は、前記受信電波強度が前記閾値以上であると判断され、かつ、前記対象識別情報によって識別される前記第1の外部装置から前記対象識別情報を含む前記認証要求が受信される場合に、前記第2の無線インターフェースを介して、前記認証応答を前記第1の外部装置に送信し、
前記第1の外部装置とは異なる特定外部装置から、前記第2の無線インターフェースを介して、前記対象識別情報を含まない前記認証要求が受信される場合に、前記特定外部装置への前記認証応答の送信は制限される、項目1又は2に記載の通信装置。
(項目4)
前記通信装置は、さらに、
所定条件が満たされる場合に、前記通信装置の動作状態を不可能状態から可能状態に移行させる状態移行部であって、前記不可能状態は、前記認証要求を受信しても、前記認証応答を送信しない状態であり、前記可能状態は、前記認証要求を受信することに応じて、前記認証応答を送信する状態である、前記状態移行部を備え、
前記認証応答送信部は、前記通信装置の動作状態が前記可能状態に移行された後に、前記受信電波強度が前記閾値以上であると判断され、かつ、前記第1の外部装置から前記認証要求が受信される場合に、前記第2の無線インターフェースを介して、前記認証応答を前記第1の外部装置に送信する、項目1から3のいずれか一項に記載の通信装置。
(項目5)
前記通信装置は、さらに、
前記第1の無線インターフェースを介して、前記通信装置において予め決められている第1の通信チャネルを示す通信チャネル情報を外部に送信するチャネル情報送信部を備え、
前記可能状態は、前記第1の通信チャネルが利用された前記認証要求を受信することを監視し、前記認証要求を受信することに応じて、前記認証応答を送信する状態であり、
前記認証応答送信部は、前記通信装置の動作状態が前記可能状態に移行された後に、前記受信電波強度が前記閾値以上であると判断され、かつ、前記第1の外部装置から前記第1の通信チャネルが利用された前記認証要求が受信される場合に、前記第2の無線インターフェースを介して、前記認証応答を前記第1の外部装置に送信する、項目4に記載の通信装置。
(項目6)
通信装置であって、
第1の無線インターフェースと、
前記第1の無線インターフェースとは異なる第2の無線インターフェースと、
前記第1の無線インターフェースを介して、公開鍵を外部に送信する公開鍵送信部と、
第1の外部装置から、前記第1の無線インターフェースを介して、前記第1の外部装置を識別する対象識別情報を含む特定信号を受信する特定信号受信部と、
前記公開鍵が外部に送信された後に、特定外部装置から、前記第2の無線インターフェースを介して、前記公開鍵が利用された認証要求を受信する認証要求受信部であって、前記認証要求は、前記特定外部装置を識別する特定識別情報を含む、前記認証要求受信部と、
前記第1の外部装置から前記特定信号が受信され、かつ、前記特定外部装置から前記認証要求が受信される場合に、前記特定信号に含まれる前記対象識別情報と前記認証要求に含まれる前記特定識別情報とが一致するのか否かを判断する判断部と、
前記対象識別情報と前記特定識別情報とが一致すると判断される場合に、前記第2の無線インターフェースを介して、前記認証要求に対する応答である認証応答を前記第1の外部装置に一致する前記特定外部装置に送信する認証応答送信部であって、前記対象識別情報と前記特定識別情報とが一致しないと判断される場合に、前記第1の外部装置とは異なる前記特定外部装置への前記認証応答の送信は制限される、前記認証応答送信部と、
前記認証応答が前記特定外部装置に送信された後に、前記特定外部装置から、前記第2の無線インターフェースを介して、接続情報を受信する接続情報受信部であって、前記接続情報は、前記通信装置と第2の外部装置との間に前記第2の無線インターフェースを介した無線接続を確立するための情報である、前記接続情報受信部と、
前記特定外部装置から前記接続情報が受信される場合に、前記接続情報を利用して、前記通信装置と前記第2の外部装置との間に前記第2の無線インターフェースを介した前記無線接続を確立する確立部と、
を備える、通信装置。
(項目7)
前記通信装置は、さらに、
表示部と、
前記対象識別情報と前記特定識別情報とが一致しないと判断される場合に、前記認証応答の送信を実行することを指示するための指示画面を前記表示部に表示させることによって、前記特定外部装置への前記認証応答の送信を制限する表示制御部と、を備え、
前記認証応答送信部は、前記指示画面が表示されている状況において、前記認証応答の送信を実行することが指示される場合に、前記第2の無線インターフェースを介して、前記認証応答を前記特定外部装置に送信する、項目6に記載の通信装置。
(項目8)
前記通信装置は、さらに、
所定条件が満たされる場合に、前記通信装置の動作状態を不可能状態から可能状態に移行させる状態移行部であって、前記不可能状態は、前記認証要求を受信しても、前記認証応答を送信しない状態であり、前記可能状態は、前記認証要求を受信することに応じて、前記認証応答を送信する状態である、前記状態移行部を備え、
前記認証応答送信部は、前記通信装置の動作状態が前記可能状態に移行された後に、前記対象識別情報と前記特定識別情報とが一致すると判断される場合に、前記第2の無線インターフェースを介して、前記認証応答を前記特定外部装置に送信する、項目6又は7に記載の通信装置。
(項目9)
前記通信装置は、さらに、
前記第1の無線インターフェースを介して、前記通信装置において予め決められている第1の通信チャネルを示す通信チャネル情報を外部に送信するチャネル情報送信部を備え、
前記可能状態は、前記第1の通信チャネルが利用された前記認証要求を受信することを監視し、前記認証要求を受信することに応じて、前記認証応答を送信する状態であり、
前記認証応答送信部は、前記通信装置の動作状態が前記可能状態に移行された後に、前記特定外部装置から前記第1の通信チャネルが利用された前記認証要求が受信され、かつ、前記対象識別情報と前記特定識別情報とが一致すると判断される場合に、前記第2の無線インターフェースを介して、前記認証応答を前記特定外部装置に送信する、項目8に記載の通信装置。
(項目10)
前記確立部は、前記第1の通信チャネルとは異なる第2の通信チャネルを利用して、前記通信装置と前記第2の外部装置との間に前記第2の無線インターフェースを介した前記無線接続を確立する、項目5又は9に記載の通信装置。
(項目11)
前記特定信号は、前記通信装置のベンダによって提供されるアプリケーションプログラムに従って、前記第1の外部装置から前記通信装置に送信される、項目1から10のいずれか一項に記載の通信装置。
(項目12)
前記特定信号受信部は、前記公開鍵が前記第1の外部装置によって受信された後に、前記第1の外部装置から、前記第1の無線インターフェースを介して、前記特定信号を受信する、項目1から11のいずれか一項に記載の通信装置。
(項目13)
前記第1の無線インターフェースは、Bluetooth(登録商標)方式に従った無線通信を実行するための無線インターフェースであり、
前記公開鍵送信部は、前記Bluetooth方式に従ったAdvertise信号であって、前記公開鍵を含む前記Advertise信号を外部に繰り返し送信する、項目1から12のいずれか一項に記載の通信装置。
(項目14)
前記第1の無線インターフェースは、前記Bluetooth方式のバージョン4.0以上に従った無線通信を実行するための無線インターフェースである、項目13に記載の通信装置。
(項目15)
前記通信装置は、さらに、
前記接続情報を記憶するためのメモリを備え、
前記公開鍵送信部は、前記メモリ内に前記接続情報が記憶されていない状況において、前記通信装置の電源がONされる場合に、前記第1の無線インターフェースを介して、前記公開鍵を外部に送信し、
前記メモリ内に前記接続情報が記憶されている状況において、前記通信装置の電源がONされる場合に、前記公開鍵は送信されない、項目1から14のいずれか一項に記載の通信装置。
(項目16)
前記通信装置は、さらに、
操作部を備え、
前記公開鍵送信部は、前記メモリ内に前記接続情報が記憶されている状況において、前記通信装置の電源がONされた後に、前記操作部を介した特定操作が受け付けられる場合に、前記公開鍵を外部に送信する、項目15に記載の通信装置。
(項目17)
前記第2の外部装置は、前記第1の外部装置とは異なる装置であって、無線ネットワークの親局として動作すべき親局装置であり、
前記確立部は、前記通信装置と前記第2の外部装置との間に前記第2の無線インターフェースを介した前記無線接続を確立して、前記通信装置を前記無線ネットワークに子局として参加させる、項目1から16のいずれか一項に記載の通信装置。
(項目18)
前記接続情報は、前記第2の外部装置から受信される受信情報を認証するための認証情報を含む、項目1から17のいずれか一項に記載の通信装置。
(項目19)
前記通信装置は、さらに、
前記認証応答が送信された後に、前記通信装置をWi-Fi規格に従ったEnrolleeとして動作させる動作制御部を備える、項目1から18のいずれか一項に記載の通信装置。
(項目20)
通信装置のためのコンピュータプログラムであって、
前記通信装置のコンピュータを、以下の各部、即ち、
前記通信装置の第1の無線インターフェースを介して、公開鍵を外部に送信する公開鍵送信部と、
第1の外部装置から、前記第1の無線インターフェースを介して、特定信号を受信する特定信号受信部と、
前記第1の外部装置から前記特定信号が受信される場合に、前記特定信号の受信電波強度が閾値以上であるのか否かを判断する判断部と、
前記公開鍵が外部に送信された後に、前記第1の外部装置から、前記通信装置の第2の無線インターフェースを介して、前記公開鍵が利用された認証要求を受信する認証要求受信部であって、前記第2の無線インターフェースは、前記第1の無線インターフェースとは異なる、前記認証要求受信部と、
前記受信電波強度が前記閾値以上であると判断され、かつ、前記第1の外部装置から前記認証要求が受信される場合に、前記第2の無線インターフェースを介して、前記認証要求に対する応答である認証応答を前記第1の外部装置に送信する認証応答送信部であって、前記受信電波強度が前記閾値以上でないと判断され、かつ、前記第1の外部装置から前記認証要求が受信される場合に、前記第1の外部装置への前記認証応答の送信は制限される、前記認証応答送信部と、
前記認証応答が前記第1の外部装置に送信された後に、前記第1の外部装置から、前記第2の無線インターフェースを介して、接続情報を受信する接続情報受信部であって、前記接続情報は、前記通信装置と第2の外部装置との間に前記第2の無線インターフェースを介した無線接続を確立するための情報である、前記接続情報受信部と、
前記第1の外部装置から前記接続情報が受信される場合に、前記接続情報を利用して、前記通信装置と前記第2の外部装置との間に前記第2の無線インターフェースを介した前記無線接続を確立する確立部と、
として機能させる、コンピュータプログラム。
(項目21)
通信装置のためのコンピュータプログラムであって、
前記通信装置のコンピュータを、以下の各部、即ち、
前記通信装置の第1の無線インターフェースを介して、公開鍵を外部に送信する公開鍵送信部と、
第1の外部装置から、前記第1の無線インターフェースを介して、前記第1の外部装置を識別する対象識別情報を含む特定信号を受信する特定信号受信部と、
前記公開鍵が外部に送信された後に、特定外部装置から、前記通信装置の第2の無線インターフェースを介して、前記公開鍵が利用された認証要求を受信する認証要求受信部であって、前記第2の無線インターフェースは、前記第1の無線インターフェースとは異なり、前記認証要求は、前記特定外部装置を識別する特定識別情報を含む、前記認証要求受信部と、
前記第1の外部装置から前記特定信号が受信され、かつ、前記特定外部装置から前記認証要求が受信される場合に、前記特定信号に含まれる前記対象識別情報と前記認証要求に含まれる前記特定識別情報とが一致するのか否かを判断する判断部と、
前記対象識別情報と前記特定識別情報とが一致すると判断される場合に、前記第2の無線インターフェースを介して、前記認証要求に対する応答である認証応答を前記第1の外部装置に一致する前記特定外部装置に送信する認証応答送信部であって、前記対象識別情報と前記特定識別情報とが一致しないと判断される場合に、前記第1の外部装置とは異なる前記特定外部装置への前記認証応答の送信は制限される、前記認証応答送信部と、
前記認証応答が前記特定外部装置に送信された後に、前記特定外部装置から、前記第2の無線インターフェースを介して、接続情報を受信する接続情報受信部であって、前記接続情報は、前記通信装置と第2の外部装置との間に前記第2の無線インターフェースを介した無線接続を確立するための情報である、前記接続情報受信部と、
前記特定外部装置から前記接続情報が受信される場合に、前記接続情報を利用して、前記通信装置と前記第2の外部装置との間に前記第2の無線インターフェースを介した前記無線接続を確立する確立部と、
として機能させる、コンピュータプログラム。