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

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

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

特開2024-51736通信装置、通信装置のためのコンピュータプログラム、端末装置のためのアプリケーションプログラム、及び、端末装置
<>
  • 特開-通信装置、通信装置のためのコンピュータプログラム、端末装置のためのアプリケーションプログラム、及び、端末装置 図1
  • 特開-通信装置、通信装置のためのコンピュータプログラム、端末装置のためのアプリケーションプログラム、及び、端末装置 図2
  • 特開-通信装置、通信装置のためのコンピュータプログラム、端末装置のためのアプリケーションプログラム、及び、端末装置 図3
  • 特開-通信装置、通信装置のためのコンピュータプログラム、端末装置のためのアプリケーションプログラム、及び、端末装置 図4
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024051736
(43)【公開日】2024-04-11
(54)【発明の名称】通信装置、通信装置のためのコンピュータプログラム、端末装置のためのアプリケーションプログラム、及び、端末装置
(51)【国際特許分類】
   H04W 76/10 20180101AFI20240404BHJP
   H04W 84/12 20090101ALI20240404BHJP
   H04W 12/04 20210101ALI20240404BHJP
   H04W 12/77 20210101ALI20240404BHJP
【FI】
H04W76/10
H04W84/12
H04W12/04
H04W12/77
【審査請求】未請求
【請求項の数】13
【出願形態】OL
(21)【出願番号】P 2022158051
(22)【出願日】2022-09-30
(71)【出願人】
【識別番号】000005267
【氏名又は名称】ブラザー工業株式会社
(74)【代理人】
【識別番号】110000110
【氏名又は名称】弁理士法人 快友国際特許事務所
(72)【発明者】
【氏名】柴田 寛
【テーマコード(参考)】
5K067
【Fターム(参考)】
5K067DD11
5K067EE02
5K067EE10
(57)【要約】
【課題】通信装置とアクセスポイントとの間にWi-Fi接続を適切に確立させるための技術を提供すること。
【解決手段】通信装置は、通信装置の公開鍵と、特定のネットワーク識別情報と、を含むコード情報を表わすコード画像を出力部に出力させる。端末装置によってコード画像が撮影されることに応じて、公開鍵が端末装置によって利用される第1の場合に、公開鍵が利用された所定通信を端末装置と実行して、端末装置から第1の接続情報を受信し、第1の接続情報を利用して、アクセスポイントとのWi-Fi接続を確立する。端末装置によって前記コード画像が撮影されることに応じて、ネットワーク識別情報が端末装置によって利用される第2の場合に、端末装置とのWi-Fi接続を確立し、端末装置とのWi-Fi接続を利用して、端末装置から第2の接続情報を受信し、第2の接続情報を利用して、アクセスポイントとのWi-Fi接続を確立する。
【選択図】図2
【特許請求の範囲】
【請求項1】
通信装置であって、
Wi-Fi規格に従った無線通信を実行するためのWi-Fiインターフェースと、
前記通信装置の公開鍵と、特定の無線ネットワークを識別する特定のネットワーク識別情報と、を含むコード情報を表わすコード画像を出力部に出力させる出力制御部と、
前記通信装置とは異なる端末装置によって前記コード画像が撮影されることに応じて、前記コード情報に含まれる前記公開鍵が前記端末装置によって利用される第1の場合に、前記Wi-Fiインターフェースを介して、前記公開鍵が利用された所定通信を前記端末装置と実行して、前記端末装置から第1の接続情報を受信する第1の接続情報受信部と、
前記第1の接続情報を利用して、前記Wi-Fiインターフェースを介して、対象アクセスポイントとのWi-Fi接続を確立する第1の確立部と、
前記端末装置によって前記コード画像が撮影されることに応じて、前記コード情報に含まれる前記特定のネットワーク識別情報が前記端末装置によって利用される第2の場合に、前記Wi-Fiインターフェースを介して、前記端末装置とのWi-Fi接続を確立する第2の確立部と、
前記端末装置との前記Wi-Fi接続を利用して、前記Wi-Fiインターフェースを介して、前記端末装置から第2の接続情報を受信する第2の接続情報受信部と、
前記第2の接続情報を利用して、前記対象アクセスポイントとのWi-Fi接続を確立する第3の確立部と、
を備える、通信装置。
【請求項2】
前記所定通信は、前記Wi-Fi規格のDevice Provisioning Protocol(DPP)に従った通信であり、
前記所定通信は、
前記端末装置から前記公開鍵が利用された認証要求を受信することと、
認証応答を前記端末装置に送信することと、
接続情報要求を前記端末装置に送信することと、
前記端末装置から前記第1の接続情報を受信することと、
を含む、請求項1に記載の通信装置。
【請求項3】
前記通信装置は、さらに、
前記通信装置の動作状態を、前記特定の無線ネットワークの親局として動作しない非親局状態から、前記親局として動作する親局状態に移行させる第1の状態移行部を備え、
前記出力制御部は、前記通信装置の動作状態が前記非親局状態から前記親局状態に移行された後に、前記コード画像を前記出力部に出力させる、請求項1に記載の通信装置。
【請求項4】
前記特定のネットワーク識別情報は、前記親局として動作する前記通信装置によって形成される前記特定の無線ネットワークのService Set Identifier(SSID)を含む、請求項3に記載の通信装置。
【請求項5】
前記通信装置は、さらに、
前記第1の場合であり、かつ、前記Wi-Fiインターフェースを介して、前記端末装置から所定信号が受信される場合に、前記通信装置の前記動作状態を前記親局状態から前記非親局状態に移行させる第2の状態移行部を備える、請求項3に記載の通信装置。
【請求項6】
前記コード情報は、前記Wi-Fi規格のDevice Provisioning Protocol(DPP)で規定されるBootstrapping Information Formatに従って記述された所定の識別子と、前記所定の識別子に後続して記述される前記公開鍵と、を含む、請求項1に記載の通信装置。
【請求項7】
前記第2の場合に、前記対象アクセスポイントは、前記通信装置又は前記端末装置が検索することによって見つかった1個以上のアクセスポイントのうちの1個のアクセスポイントである、請求項1に記載の通信装置。
【請求項8】
端末装置のためのアプリケーションプログラムであって、
前記端末装置は、
Wi-Fi規格に従った無線通信を実行するためのWi-Fiインターフェースと、
コンピュータと、
を備え、
前記アプリケーションプログラムは、前記コンピュータを、以下の各部、即ち、
通信装置に関連する特定情報であって、前記通信装置の公開鍵と、特定の無線ネットワークを識別する特定のネットワーク識別情報と、を含む前記特定情報を取得する取得部と、
前記特定情報が取得される場合に、前記端末装置が、前記公開鍵が利用された所定通信を実行可能であるのかを判断する判断部と、
前記端末装置が前記所定通信を実行可能であると判断される第1の場合に、前記公開鍵をOSプログラムに供給する第1の供給部であって、前記OSプログラムは、前記アプリケーションプログラムから前記公開鍵を取得する場合に、前記Wi-Fiインターフェースを介して、前記所定通信を前記通信装置と実行して、第1の接続情報を前記通信装置に送信し、前記第1の接続情報は、前記通信装置と対象アクセスポイントとの間にWi-Fi接続を確立させるための情報である、前記第1の供給部と、
前記端末装置が前記所定通信を実行可能でないと判断される第2の場合に、前記特定のネットワーク識別情報を前記OSプログラムに供給する第2の供給部であって、前記OSプログラムは、前記アプリケーションプログラムから前記特定のネットワーク識別情報を取得する場合に、前記Wi-Fiインターフェースを介して、前記特定のネットワーク識別情報を利用して、前記通信装置とのWi-Fi接続を確立する、前記第2の供給部と、
前記通信装置との前記Wi-Fi接続を利用して、前記Wi-Fiインターフェースを介して、第2の接続情報を前記通信装置に送信する接続情報送信部であって、前記第2の接続情報は、前記通信装置と前記対象アクセスポイントとの間にWi-Fi接続を確立させるための情報である、前記接続情報送信部と、
として機能させる、アプリケーションプログラム。
【請求項9】
前記所定通信は、前記Wi-Fi規格のDevice Provisioning Protocol(DPP)に従った通信であり、
前記所定通信は、
前記公開鍵が利用された認証要求を前記通信装置に送信することと、
前記通信装置から認証応答を受信することと、
前記通信装置から接続情報要求を受信することと、
前記第1の接続情報を前記通信装置に送信することと、
を含む、請求項8に記載のアプリケーションプログラム。
【請求項10】
前記取得部は、前記特定情報を表わすコード画像が前記端末装置によって撮影される場合に、前記コード画像をデコードすることによって、前記特定情報を取得する、請求項8に記載のアプリケーションプログラム。
【請求項11】
前記特定のネットワーク識別情報は、親局として動作する前記通信装置によって形成される前記特定の無線ネットワークのService Set Identifier(SSID)を含む、請求項8に記載のアプリケーションプログラム。
【請求項12】
通信装置のためのコンピュータプログラムであって、
前記通信装置は、
Wi-Fi規格に従った無線通信を実行するためのWi-Fiインターフェースと、
コンピュータと、
を備え、
前記コンピュータプログラムは、前記コンピュータを、以下の各部、即ち、
前記通信装置の公開鍵と、特定の無線ネットワークを識別する特定のネットワーク識別情報と、を含むコード情報を表わすコード画像を出力部に出力させる出力制御部と、
前記通信装置とは異なる端末装置によって前記コード画像が撮影されることに応じて、前記コード情報に含まれる前記公開鍵が前記端末装置によって利用される第1の場合に、前記Wi-Fiインターフェースを介して、前記公開鍵が利用された所定通信を前記端末装置と実行して、前記端末装置から第1の接続情報を受信する第1の接続情報受信部と、
前記第1の接続情報を利用して、前記Wi-Fiインターフェースを介して、対象アクセスポイントとのWi-Fi接続を確立する第1の確立部と、
前記端末装置によって前記コード画像が撮影されることに応じて、前記コード情報に含まれる前記特定のネットワーク識別情報が前記端末装置によって利用される第2の場合に、前記Wi-Fiインターフェースを介して、前記端末装置とのWi-Fi接続を確立する第2の確立部と、
前記端末装置との前記Wi-Fi接続を利用して、前記Wi-Fiインターフェースを介して、前記端末装置から第2の接続情報を受信する第2の接続情報受信部と、
前記第2の接続情報を利用して、前記対象アクセスポイントとのWi-Fi接続を確立する第3の確立部と、
として機能させる、コンピュータプログラム。
【請求項13】
端末装置であって、
Wi-Fi規格に従った無線通信を実行するためのWi-Fiインターフェースと、
通信装置に関連する特定情報であって、前記通信装置の公開鍵と、特定の無線ネットワークを識別する特定のネットワーク識別情報と、を含む前記特定情報を取得する取得部と、
前記特定情報が取得される場合に、前記端末装置が、前記公開鍵が利用された所定通信を実行可能であるのか否かを判断する判断部と、
前記端末装置が前記所定通信を実行可能であると判断される第1の場合に、前記Wi-Fiインターフェースを介して、前記所定通信を前記通信装置と実行して、第1の接続情報を前記通信装置に送信する第1の接続情報送信部であって、前記第1の接続情報は、前記通信装置と対象アクセスポイントとの間にWi-Fi接続を確立させるための情報である、前記第1の接続情報送信部と、
前記端末装置が前記所定通信を実行可能でないと判断される第2の場合に、前記Wi-Fiインターフェースを介して、前記特定のネットワーク識別情報を利用して、前記通信装置とのWi-Fi接続を確立する確立部と、
前記通信装置との前記Wi-Fi接続を利用して、前記Wi-Fiインターフェースを介して、第2の接続情報を前記通信装置に送信する第2の接続情報送信部であって、前記第2の接続情報は、前記通信装置と前記対象アクセスポイントとの間にWi-Fi接続を確立させるための情報である、前記第2の接続情報送信部と、
を備える、端末装置。
【発明の詳細な説明】
【技術分野】
【0001】
本明細書は、端末装置を利用して通信装置とアクセスポイントとの間にWi-Fi接続を確立させるための技術に関する。
【背景技術】
【0002】
非特許文献1には、Wi-Fi Allianceによって策定された無線通信方式であるDevice Provisioning Protocol(DPP)が記述されている。DPPは、一対の装置の間にWi-Fi接続を容易に確立させるための無線通信方式である。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2020-108064号公報
【非特許文献】
【0004】
【非特許文献1】Wi-Fi Easy Connect Specification Version 2.0、Wi-Fi Alliance、2020年
【発明の概要】
【発明が解決しようとする課題】
【0005】
本明細書では、通信装置とアクセスポイントとの間にWi-Fi接続を適切に確立させるための技術を開示する。
【課題を解決するための手段】
【0006】
本明細書によって開示される通信装置は、Wi-Fi規格に従った無線通信を実行するためのWi-Fiインターフェースと、前記通信装置の公開鍵と、特定の無線ネットワークを識別する特定のネットワーク識別情報と、を含むコード情報を表わすコード画像を出力部に出力させる出力制御部と、前記通信装置とは異なる端末装置によって前記コード画像が撮影されることに応じて、前記コード情報に含まれる前記公開鍵が前記端末装置によって利用される第1の場合に、前記Wi-Fiインターフェースを介して、前記公開鍵が利用された所定通信を前記端末装置と実行して、前記端末装置から第1の接続情報を受信する第1の接続情報受信部と、前記第1の接続情報を利用して、前記Wi-Fiインターフェースを介して、対象アクセスポイントとのWi-Fi接続を確立する第1の確立部と、前記端末装置によって前記コード画像が撮影されることに応じて、前記コード情報に含まれる前記特定のネットワーク識別情報が前記端末装置によって利用される第2の場合に、前記Wi-Fiインターフェースを介して、前記端末装置とのWi-Fi接続を確立する第2の確立部と、前記端末装置との前記Wi-Fi接続を利用して、前記Wi-Fiインターフェースを介して、前記端末装置から第2の接続情報を受信する第2の接続情報受信部と、前記第2の接続情報を利用して、前記対象アクセスポイントとのWi-Fi接続を確立する第3の確立部と、を備えてもよい。
【0007】
上記の構成によると、通信装置は、通信装置の公開鍵と、特定のネットワーク識別情報と、を含むコード情報を表わすコード画像を出力する。通信装置は、端末装置によってコード画像が撮影されることに応じて、公開鍵が端末装置によって利用される場合に、端末装置から第1の接続情報を受信し、第1の接続情報を利用して、対象アクセスポイントとのWi-Fi接続を確立する。一方、通信装置は、端末装置によってコード画像が撮影されることに応じて、特定のネットワーク識別情報が端末装置によって利用される場合に、端末装置から第2の接続情報を受信し、第2の接続情報を利用して、対象アクセスポイントとのWi-Fi接続を確立する。このように、通信装置は、公開鍵及び特定のネットワーク識別情報のうちのどちらが端末装置によって利用されるのかに応じた処理を実行して、対象アクセスポイントとのWi-Fi接続を適切に確立することができる。
【0008】
また、本明細書は、端末装置のためのアプリケーションプログラムも開示する。前記端末装置は、Wi-Fi規格に従った無線通信を実行するためのWi-Fiインターフェースと、コンピュータと、を備えてもよい。前記アプリケーションプログラムは、前記コンピュータを、以下の各部、即ち、通信装置に関連する特定情報であって、前記通信装置の公開鍵と、特定の無線ネットワークを識別する特定のネットワーク識別情報と、を含む前記特定情報を取得する取得部と、前記特定情報が取得される場合に、前記端末装置が、前記公開鍵が利用された所定通信を実行可能であるのかを判断する判断部と、前記端末装置が前記所定通信を実行可能であると判断される第1の場合に、前記公開鍵をOSプログラムに供給する第1の供給部であって、前記OSプログラムは、前記アプリケーションプログラムから前記公開鍵を取得する場合に、前記Wi-Fiインターフェースを介して、前記所定通信を前記通信装置と実行して、第1の接続情報を前記通信装置に送信し、前記第1の接続情報は、前記通信装置と対象アクセスポイントとの間にWi-Fi接続を確立させるための情報である、前記第1の供給部と、前記端末装置が前記所定通信を実行可能でないと判断される第2の場合に、前記特定のネットワーク識別情報を前記OSプログラムに供給する第2の供給部であって、前記OSプログラムは、前記アプリケーションプログラムから前記特定のネットワーク識別情報を取得する場合に、前記Wi-Fiインターフェースを介して、前記特定のネットワーク識別情報を利用して、前記通信装置とのWi-Fi接続を確立する、前記第2の供給部と、前記通信装置との前記Wi-Fi接続を利用して、前記Wi-Fiインターフェースを介して、第2の接続情報を前記通信装置に送信する接続情報送信部であって、前記第2の接続情報は、前記通信装置と前記対象アクセスポイントとの間にWi-Fi接続を確立させるための情報である、前記接続情報送信部と、として機能させてもよい。
【0009】
上記の構成によると、アプリケーションプログラムは、通信装置の公開鍵と、特定のネットワーク識別情報と、を含む特定情報を取得すると、端末装置が、公開鍵が利用された所定通信を実行可能であるのかを判断する。アプリケーションプログラムは、端末装置が所定通信を実行可能であると判断する場合に、公開鍵をOSプログラムに供給する。この結果、OSプログラムによって第1の接続情報が通信装置に送信され、通信装置と対象アクセスポイントとの間にWi-Fi接続が確立される。一方、アプリケーションプログラムは、端末装置が所定通信を実行可能でないと判断する場合に、ネットワーク識別情報をOSプログラムに供給する。この場合、OSプログラムは、特定のネットワーク識別情報を利用して、通信装置とのWi-Fi接続を確立する。アプリケーションプログラムは、当該Wi-Fi接続を利用して、第2の接続情報を通信装置に送信する。この結果、通信装置と対象アクセスポイントとの間にWi-Fi接続が確立される。このように、端末装置は、端末装置が所定通信を実行可能であるのか否かに応じた処理を実行して、通信装置と対象アクセスポイントとの間にWi-Fi接続を適切に確立させることができる。
【0010】
上記の通信装置のためのコンピュータプログラム、当該コンピュータプログラムを記憶するコンピュータ可読記録媒体、及び、通信装置によって実行される方法も、新規で有用である。また、上記のアプリケーションプログラムを格納するコンピュータ可読記録媒体、上記のアプリケーションプログラムによって実現される端末装置そのもの、及び、端末装置によって実行される方法も、新規で有用である。
【図面の簡単な説明】
【0011】
図1図1は、通信システムの構成を示す。
図2図2は、各デバイス間で実行される処理のシーケンス図を示す。
図3図3は、ケースAのシーケンス図を示す。
図4図4は、ケースBのシーケンス図を示す。
【発明を実施するための形態】
【0012】
(通信システム2の構成;図1
図1に示されるように、通信システム2は、2個のアクセスポイント6A,6Bと、2個の端末10A,10Bと、プリンタ100と、を備える。以下では、アクセスポイントのことを「AP」と記載する。本明細書では、端末10A又は端末10Bを利用して、AP6A又はAP6Bとプリンタ100との間にWi-Fi規格に従った無線接続を確立させるための技術を開示する。以下では、Wi-Fi規格に従った無線接続のことを「Wi-Fi接続」と記載する。
【0013】
(端末10Aの構成)
端末10Aは、携帯電話、スマートフォン、PDA、タブレットPC等の可搬型の端末装置である。変形例では、端末10Aは、据置型のPC、ラップトップPC等であってもよい。端末10Aは、操作部12Aと表示部14AとWi-Fiインターフェース16Aとカメラ18Aと制御部30Aとを備える。各部12A~30Aは、バス線に接続されている。以下では、インターフェースのことを「I/F」と記載する。
【0014】
操作部12Aは、ユーザが様々な情報を端末10Aに対して入力することを可能とするI/Fであり、例えばタッチスクリーン、ボタンを備える。ユーザは、操作部12Aを介して、様々な情報を端末10Aに入力することができる。表示部14Aは、様々な情報を表示するためのディスプレイである。カメラ18Aは、物体を撮影するためのデバイスである。本実施例では、カメラ18Aは、プリンタ100に表示されるQRコードを撮影するために利用される。QRコードは、株式会社デンソーウェーブの登録商標である。
【0015】
Wi-FiI/F16Aは、Wi-Fi規格に従ったWi-Fi通信を実行するための無線I/Fである。Wi-Fi規格は、例えばThe Institute of Electrical and Electronics Engineers, Inc.(IEEE)の802.11の規格、及び、それに準ずる規格、例えば802.11a,11b,11g,11n,11ac、に従って、無線通信を実行するための無線通信規格である。特に、Wi-FiI/F16Aは、Wi-Fi Allianceによって策定されたDevice Provisioning Protocol(DPP)をサポートしている。DPPの詳細は、Wi-Fi Allianceによって作成された規格書「Wi-Fi Easy Connect Specification Version 2.0」に記述されている。
【0016】
また、端末10Aは、APによって形成されている無線ネットワークのService Set Identifier(SSID)及びパスワードを利用して、当該APとのWi-Fi接続を確立することができる。以下では、パスワードのことを「PW」と記載する。
【0017】
Wi-Fi通信では、2.4GHz及び5.0GHzの2種類の周波数帯を含む複数種類の周波数帯(例えば、1.0GHz、6.0GHz)のいずれかの電波が利用される。本明細書では、Wi-Fi通信では、2.4GHz及び5.0GHzの2種類の周波数帯のどちらかの電波が利用される状況を想定する。Wi-FiI/F16Aは、2.4GHz及び5.0GHzの双方をサポートしている。即ち、Wi-FiI/F16Aは、2.4GHzの電波を利用した無線通信と、5.0GHzの電波を利用した無線通信と、の双方を実行可能である。
【0018】
制御部30Aは、CPU32Aとメモリ34Aとを備える。メモリ34Aは、OSプログラム36Aとアプリケーションプログラム38とを記憶する。CPU32Aは、メモリ34Aに記憶されているOSプログラム36A及びアプリケーションプログラム38に従って、様々な処理を実行する。メモリ34Aは、例えばROM、RAMである。以下では、OSプログラムのことを「OS」と記載する。また、アプリケーションプログラムのことを、「アプリ」と記載する。
【0019】
OS36Aは、端末10Aの基本的な動作を制御する。アプリ38は、DPPに従った処理をOS36Aに実行させることによって、端末10AとAP6A又はAP6Bのいずれかとの間、又は、プリンタ100とAP6Bとの間にWi-Fi接続を確立させることができる。アプリ38は、例えば、プリンタ100のベンダによって提供されるインターネット上のサーバからダウンロードされ、端末10Aにインストールされる。
【0020】
メモリ34Aは、さらに、DPPサポート情報を記憶する。DPPサポート情報は、Wi-FiI/F16がDPPをサポートしていることを示す情報である。
【0021】
(端末10Bの構成)
端末10Bは、携帯電話、スマートフォン、PDA、タブレットPC等の可搬型の端末装置である。変形例では、端末10Bは、据置型のPC、ラップトップPC等であってもよい。端末10Bは、操作部12Bと表示部14BとWi-Fiインターフェース16Bとカメラ18Bと制御部30Bとを備える。各部12B~30Bは、バス線に接続されている。制御部30Bは、CPU32Bとメモリ34Bとを備える。
【0022】
各部12B~34Bの構成は、Wi-FiI/F16BがDPPをサポートしていない点を除いて、端末10Aの各部12A~34Aの構成と同様である。即ち、Wi-FiI/F16Bは、通常のWi-Fi方式をサポートしているが、DPPをサポートしていない。従って、メモリ34Bは、さらに、Wi-FiI/F16BがDPPサポートしていないことを示すDPP非サポート情報を記憶する。
【0023】
(プリンタ100の構成)
プリンタ100は、印刷機能を実行可能な周辺装置、例えば端末10A,10Bの周辺装置、である。変形例では、プリンタ100は、印刷機能に加えて、例えば、スキャン機能、ファクシミリ機能を実行可能な多機能機であってもよい。プリンタ100は、操作部112と表示部114とWi-FiI/F116と印刷エンジン118と制御部130とを備える。各部112~130は、バス線に接続されている。
【0024】
操作部112は、ユーザが様々な情報をプリンタ100に対して入力することを可能とするI/Fであり、例えばタッチスクリーン、ボタンを備える。ユーザは、操作部112を介して、様々な情報をプリンタ100に入力することができる。特に、操作部112は、Wi-FiI/F116を介した通信を可能とするためのボタンであるWi-Fiボタンを含む。表示部114は、様々な情報を表示するためのディスプレイである。印刷エンジン118は、例えばインクジェット方式、レーザ方式の印刷機構を備える。
【0025】
Wi-FiI/F116は、基本的には端末10AのWi-FiI/F16Aと同様であるが、2.4GHzの周波数帯のみをサポートしており、5.0GHzの周波数帯をサポートしていない。即ち、Wi-FiI/F116は、2.4GHzの電波を利用した無線通信のみを実行可能である。
【0026】
制御部130は、CPU132とメモリ134とを備える。CPU132は、メモリ134に記憶されているプログラム136に従って、様々な処理を実行する。メモリ134は、例えばROM、RAMである。メモリ134は、さらに、公開鍵PKprと、SSID「CCC」と、PW「ZZZ」と、を記憶している。公開鍵PKprは、DPPに従った処理が実行される際に利用される情報である。SSID「CCC」及びPW「ZZZ」は、SoftAPとして動作するプリンタ100によって形成される無線ネットワークにおいて利用される情報である。
【0027】
(AP6Aの構成)
AP6Aは、AP6A自身が親局として動作する無線ネットワークに所属しているデバイスを通信可能に接続するための機器である。AP6Aは、公開鍵PKapAと、SSID「AAA」と、PW「XXX」と、を記憶している。公開鍵PKapAは、DPPに従った処理が実行される際に利用される情報である。SSID「AAA」及びPW「XXX」は、AP6Aによって形成される無線ネットワークにおいて利用される情報である。AP6Aは、5.0GHzの周波数帯のみをサポートしている。
【0028】
(AP6Bの構成)
AP6Bは、公開鍵PKapBと、SSID「BBB」と、PW「YYY」と、を記憶している。AP6Bは、2.4GHzの周波数帯のみをサポートしている。それ以外の点は、AP6Aの構成と同様である。
【0029】
(各デバイス間で実行される処理;図2
続いて、図2を参照して、各デバイス間で実行される処理を説明する。なお、以下では、各デバイス(例えば端末10A,10B、プリンタ100)のCPU(例えば、32A,32B,132)が実行する処理について、理解の容易さの観点から、各CPUを処理の主体として記載せずに、各デバイスを処理の主体として記載する。特に、端末のCPUによって実行される処理のうち、CPUがOSを実行することによって実現される処理を説明する際に、当該端末を処理の主体として記載せずに、OSを主体として記載する。同様に、端末のCPUによって実行される処理のうち、CPUがアプリを実行することによって実現される処理を説明する際に、当該端末を処理の主体として記載せずに、アプリを主体として記載する。また、各デバイス間の通信は、Wi-FiI/F(例えば16A,16B,116)を介して実行される。従って、以下の説明では、通信に関する説明をする際に、「Wi-FiI/Fを介して」という記載を省略する。
【0030】
図2では、端末10A又は端末10Bが同じボックスで表現されている。これは、端末10A又は端末10Bのどちらかがユーザによって操作されることを意味している。以下では、ユーザによって操作される端末のことを「対象端末」と記載することがある。図2の初期状態では、対象端末とAP6Aとの間にWi-Fi接続が確立されている。
【0031】
プリンタ100は、T10において、ユーザによる電源ON操作を検知すると、電源をONする。その後、プリンタ100は、T12において、ユーザによるWi-Fiボタンの操作を検知すると、T14において、SoftAPを起動すると共に、DPP応答不可能状態からDPP応答可能状態に移行する。DPP応答不可能状態は、DPPに従った認証応答を送信不可能な状態である。DPP応答可能状態は、DPPに従った認証応答を送信可能な状態である。プリンタ100は、SoftAPを起動することによって、無線ネットワークの親局として動作する。
【0032】
プリンタ100は、T16において、コード情報を生成する。コード情報は、文字列「WIFI:S:CCC;P:ZZZ;;DPP:K:PKpr;;」を含む。文字列「WIFI:S:CCC;P:ZZZ;;」は、SoftAPとして動作するプリンタ100によって形成される無線ネットワークのSSIDが「CCC」であり、PWが「ZZZ」であることを示す。また、文字列「DPP:K:PKpr;;」は、DPPで利用される公開鍵がPKprであることを示す。文字列「DPP:K:PKpr;;」のフォーマットは、DPPで規定されるBootstrapping Information Formatに従って記述される。このために、当該コード情報を取得した端末は、SSID「CCC」、パスワード「ZZZ」、及び、公開鍵PKprを認識することができる。なお、コード情報は、上記の各情報に加えて、例えば、シリアル番号、MACアドレスの情報を含んでいてもよい。
【0033】
プリンタ100は、T18において、コード情報をコード化することによって得られるQRコードを表示部114に表示する。このように、プリンタ100のSoftAPが起動してからQRコードが表示されるので、図4で後述するように、対象端末と、SoftAPとして動作するプリンタ100と、の間にWi-Fi接続が適切に確立される。以下では、対象端末と、SoftAPとして動作するプリンタ100と、の間に確立されるWi-Fi接続のことを「SoftAP接続」と記載する。
【0034】
対象端末は、T20において、ユーザによるアプリ起動操作を検知する。この場合、T22において、対象端末にインストールされたアプリ38が起動される。アプリ起動操作は、例えば、アプリ38のアイコンを選択する操作である。
【0035】
アプリ38は、カメラ18A又は18Bを起動する。そして、アプリ38は、T24において、ユーザによるQRコードの撮影を検知すると、当該QRコードをデコードする。この結果、アプリ38は、T26において、コード情報に含まれるSSID「CCC」とPW「ZZZ」と公開鍵PKprとを取得することができる。
【0036】
アプリ38は、T30において、対象端末がDPPをサポートしているのか否かを判断する。具体的には、アプリ38は、対象端末のメモリから、DPPサポート情報又はDPP非サポート情報のどちらかを取得する。アプリ38は、DPPサポート情報を取得する場合に、T30でYESと判断して図3の処理に進む。一方、アプリ38は、DPP非サポート情報を取得する場合に、T30でNOと判断して、図4の処理に進む。なお、変形例では、アプリ38は、対象端末のメモリからDPPサポート情報を取得できない場合に、T30でNOと判断してもよい。
【0037】
(ケースA;図3
続いて、図3を参照して、ケースAを説明する。ケースAは、図2のT30でYESと判断されるケース、即ち、対象端末がDPPをサポートしている端末10Aであるケースである。
【0038】
アプリ38は、T100において、DPP開始指示をOS36Aに供給する。DPP開始指示は、取得済みのプリンタ100の公開鍵PKpr(図2のT26参照)を含む。DPP開始指示は、DPPに従った各種通信を実行することをOS36Aに要求する指示である。なお、図2のT24及びT26の処理が、DPPのBootstrappingに相当する。
【0039】
OS36Aは、T100において、アプリ38からDPP開始指示を取得すると、T102において、DPP開始指示に含まれる公開鍵PKprが利用されたAuthentication Requestをプリンタ100に送信する。以下では、Authenticationのことを「Auth」と記載する。また、Requestのことを「Req」と記載する。
【0040】
Auth Reqは、送信元の端末10Aの認証の実行を要求する信号である。具体的には、OS36Aは、まず、端末10Aの秘密鍵とプリンタ100の公開鍵PKprとを利用して共有鍵を生成し、共有鍵を利用してランダム値を暗号化することによって暗号化データを生成する。そして、OS36Aは、端末10Aの公開鍵と暗号化データと端末10AのCapabilityとを含むAuth Reqをプリンタ100に送信する。端末10AのCapabilityは、DPPのConfiguratorのみとして動作可能であることを示す値を含む。
【0041】
プリンタ100は、T102において、端末10AからAuth Reqを受信すると、T103において、Auth Reqに含まれる暗号化データの認証を実行する。具体的には、プリンタ100は、Auth Reqに含まれる端末10Aの公開鍵とプリンタ100の秘密鍵とを利用して共有鍵を生成し、共有鍵を利用して暗号化データを復号する。プリンタ100は、暗号化データの復号が成功する場合に、認証が成功したと判断し、T104以降の処理を実行する。
【0042】
T104では、プリンタ100は、プリンタ100のCapabilityを含むAuth Respnoseを端末10Aに送信する。以下では、Responseのことを「Res」と記載する。プリンタ100のCapabilityは、DPPのEnrolleeのみとして動作可能であることを示す値を含む。
【0043】
OS36Aは、T104において、プリンタ100からAuth Resを受信すると、Auth Resに含まれるAP6のCapability(即ちEnrollee)と、端末10A自身のCapability(即ちConfigurator)と、が一致しないと判断する。そして、OS36Aは、T105において、Auth Confirmをプリンタ100に送信する。Auth Confirmは、端末10AがConfiguratorとして動作し、かつ、プリンタ100がEnrolleeとして動作することを示す情報を含む。この結果、OS36Aは、T106において、Configuratorとして動作することを決定する。Configuratorは、後述のConfiguration ObjectをEnrolleeに送信する役割を担うデバイスである。以下ではConfiguration Objectのことを「CO」と記載する。
【0044】
また、T108では、プリンタ100は、Enrolleeとして動作することを決定する。Enrolleeは、ConfiguratorからCOを受信する役割を担うデバイスである。T102~T108の処理は、DPPのAuthに相当する。
【0045】
また、プリンタ100は、T105において、端末10AからAuth Confirmを受信すると、T109において、SoftAPを停止する。ケースAでは、SoftAPが利用されない。不要なSoftAPが停止されるので、SoftAPを維持する場合と比較して、プリンタ100の処理負荷を軽減することができる。
【0046】
T110では、プリンタ100は、Configuration Reqを端末10Aに送信する。以下では、Configurationのことを「Config」と記載する。Config Reqは、COの送信を要求する信号である。
【0047】
OS36Aは、T110において、プリンタ100からConfig Reqを受信すると、プリンタ用COを生成する。具体的には、OS36Aは、まず、Wi-Fi接続を確立するためにプリンタ100によって利用されるべき情報であるプリンタ用COを生成する。プリンタ用COは、例えば、AP6Aによって形成されている無線ネットワークのSSID「AAA」及びPW「XXX」を含む。そして、OS36Aは、T112において、プリンタ用COを含むConfig Resをプリンタ100に送信する。
【0048】
プリンタ100は、T112において、端末10AからConfig Resを受信すると、T114において、Config Resultを端末10Aに送信する。T110~T114の処理は、DPPのConfigに相当する。
【0049】
プリンタ100は、T115において、プリンタ用CO内のSSID「AAA」を含むProbe Reqをブロードキャストによって送信する。しかしながら、本ケースでは、プリンタ100が2.4GHzのみをサポートしており、AP6Aが5.0GHzのみをサポートしている。このため、Probe ReqはAP6Aによって受信されない。
【0050】
プリンタ100は、T115において、Probe Reqを送信してから所定時間が経過しても、AP6AからProbe Resを受信しない。この場合、プリンタ100は、T120において、Wi-Fi接続が確立されなかったことを示すエラー情報を含むStatus Query Resultを端末10Aに送信する。以下では、Status Query Resultのことを「Result」と記載する。
【0051】
プリンタ100は、T120において、エラー情報を含むResultを端末10Aに送信すると、T122において、DPP応答可能状態からDPP応答不可能状態に移行する。
【0052】
OS36Aは、T130において、ユーザによる再設定操作を検知する。再設定操作は、AP6Aとは異なるAP6BとのWi-Fi接続を確立させるための操作である。この結果、T132において、端末10AとAP6Bとの間にWi-Fi接続が確立される。本実施例では、端末10Aは、AP6BとのWi-Fi接続を過去に確立済みであり、AP6BとのWi-Fi接続を確立するためのSSID「BBB」及びPW「YYY」を記憶済みである。従って、端末10Aは、T132において、記憶済みのSSID「BBB」及びPW「YYY」を利用して、AP6BとのWi-Fi接続を確立することができる。
【0053】
その後、図2のT12~T18、及び、T24~T30と同様の処理が実行される。さらに、図3のT100~T114と同様の処理が実行される。ただし、T112で生成されるプリンタ用COは、AP6Bによって形成されている無線ネットワークのSSID「BBB」及びPW「YYY」を含む。T140は、T115と同様である。プリンタ100とAP6Bとの双方が2.4GHzをサポートしているので、Probe ReqはAP6Bによって受信される。
【0054】
AP6Bは、T140において、プリンタ100からProbe Reqを受信すると、T142において、Probe Resをプリンタ100に送信する。この結果、T150において、プリンタ100とAP6Bとの間にWi-Fi接続が確立される。なお、T140及びT142の処理は、DPPのNetwork Accessに相当する。
【0055】
このように、端末10Aとプリンタ100との間で、DPPに従った各種通信が実行されることによって、プリンタ100とAP6Bとの間にWi-Fi接続が確立される。これにより、プリンタ100は、AP6Bが親局として動作する無線ネットワークに子局として所属する。この結果、端末10A及びプリンタ100の双方がAP6Bによって形成される無線ネットワークに所属する。これにより、プリンタ100は、端末10AからAP6Bを介して印刷データを受信して、当該印刷データに従った印刷を実行することができる。
【0056】
次いで、プリンタ100は、T152において、Resultを端末10Aに送信する。当該Resultは、プリンタ100とAP6Bとの間のWi-Fi接続が確立されたことを示す情報を含む。
【0057】
(ケースB;図4
続いて、図4を参照して、ケースBを説明する。ケースBは、図2のT30でNOと判断されるケース即ち、対象端末がDPPをサポートしていない端末10Bであるケースである。
【0058】
アプリ38は、T200において、接続指示をOS36Bに供給する。接続指示は、取得済みのSSID「CCC」及びPW「ZZZ」(図2のT26参照)を含む。接続指示は、端末10Bが取得済みのSSID「CCC」によって識別される無線ネットワークを介して、プリンタ100とSoftAP接続を確立することをOS36Bに要求する指示である。この結果、T202において、端末10Bとプリンタ100との間にSoftAP接続が確立される。具体的には、端末10Bは、取得済みのSSID「CCC」及びPW「ZZZ」をプリンタ100に送信する。プリンタ100は、SSID「CCC」及びPW「ZZZ」の認証を実行する。本ケースでは、認証が成功する。即ち、プリンタ100は、SSID「CCC」及びPW「ZZZ」の組合せを記憶済みであると判断する。この場合、端末10Bとプリンタ100との間にSoftAP接続が確立される。
【0059】
アプリ38は、T204において、SoftAP接続を利用して、検索指示をプリンタ100に送信する。
【0060】
プリンタ100は、T204において、端末10Bから検索指示を受信すると、T206において、Probe Reqを送信し、T208において、プリンタ100の周囲、即ち、プリンタ100とのWi-Fi通信を実行可能な範囲に存在するAP6A,6Bのそれぞれから、Probe Resを受信する。具体的には、プリンタ100は、AP6Aから、SSID「AAA」を含むProbe Resを受信する。プリンタ100は、AP6Bから、SSID「BBB」を含むProbe Resを受信する。そして、プリンタ100は、T210において、SoftAP接続を利用して、受信済みのSSID「AAA」及び「BBB」を含む検索結果情報を端末10Bに送信する。このようにして、プリンタ100は、プリンタ100の周囲に存在するAPを検索することができる。
【0061】
アプリ38は、T210において、プリンタ100から検索結果情報を受信すると、T212において、検索結果情報内のSSID「AAA」及び「BBB」を含む選択画面SC1を表示する。アプリ38は、T214において、選択画面SC1内のSSID「BBB」のユーザによる選択を検知すると、T220において、PW入力画面SC2を表示する。アプリ38は、T222において、PW入力画面SC2へのPW「YYY」のユーザによる入力を検知すると、T230において、SSID「BBB」及びPW「YYY」を含む接続指示をプリンタ100に送信する。
【0062】
プリンタ100は、T230において、端末10Bから接続指示を受信すると、T232において、接続指示に含まれる接続情報を利用して、AP6BとのWi-Fi接続を確立する。具体的には、プリンタ100は、受信済みの接続情報をAP6Bに送信する。AP6Bは、接続情報の認証を実行する。本ケースでは、接続情報の認証が成功する。即ち、AP6Bは、接続情報に含まれるSSID「BBB」及びPW「YYY」の組合せを記憶済みであると判断する。この場合、プリンタ100とAP6Bとの間にWi-Fi接続が確立される。
【0063】
アプリ38は、T242において、SoftAP接続を利用して、プリンタ100から完了通知を受信する。
【0064】
なお、この後、端末10Bとプリンタ100との間のSoftAP接続は切断され、端末10BとAP6Bとの間のWi-Fi接続が確立される。なお、端末10Bは、AP6BとのWi-Fi接続を過去に確立済みであり、AP6BとのWi-Fi接続を確立するためのSSID「BBB」及びPW「YYY」を記憶済みである。従って、端末10Bは、記憶済みのSSID「BBB」及びPW「YYY」を利用して、AP6BとのWi-Fi接続を確立することができる。この結果、端末10B及びプリンタ100の双方がAP6Bによって形成される無線ネットワークに所属する。これにより、プリンタ100は、端末10BからAP6Bを介して印刷データを受信して、当該印刷データに従った印刷を実行することができる。
【0065】
(実施例の効果)
上記の構成によると、プリンタ100は、公開鍵PKprと、SSID「CCC」及びPW「ZZZ」と、をコード化することによって得られるQRコードを表示する(図2のT18)。アプリ38は、当該QRコードが撮影されることに応じて(T24)、公開鍵PKprと、SSID「CCC」及びPW「ZZZ」と、を取得すると(T26)、当該アプリ38がインストールされている対象端末がDPPをサポートしているのかを判断する(T30)。アプリ38は、対象端末がDPPをサポートしている端末10Aである場合(図2の30でYES、図3)に、公開鍵PKprをOS36Aに供給する(図3のT100)。この結果、端末10Aからプリンタ100にプリンタ用COが送信され(T112)、プリンタ100とAP6Bとの間にWi-Fi接続が確立される(T150)。一方、アプリ38は、対象端末がDPPをサポートしていない端末10Bである場合(図2の30でNO、図4)に、SSID「CCC」及びPW「ZZZ」をOS36Bに供給し(図4のT200)、端末10Bとプリンタ100との間にSoftAP接続が確立される。この結果、端末10Bからプリンタ100に、SoftAP接続を介して、AP6BのSSID「BBB」及びPW「YYY」を含む接続指示が送信され(T230)、プリンタ100とAP6Bとの間にWi-Fi接続が確立される(T232)。このように、対象端末がDPPをサポートしているのかに否かに応じた処理が実行されることによって、プリンタ100とAP6Bとの間にWi-Fi接続が適切に確立される。
【0066】
(対応関係)
プリンタ100が、「通信装置」の一例である。ケースAでは、端末10Aが「端末装置」の一例である。ケースBでは、端末10Bが「端末装置」の一例である。OS36A,36Bが、「OSプログラム」の一例である。アプリ38が、「アプリケーションプログラム」の一例である。AP6Bが、「対象アクセスポイント」の一例である。プリンタ100の公開鍵PKprが、「公開鍵」の一例である。SoftAPが起動されている状態が、「親局状態」の一例である。SoftAPが停止されている状態が、「非親局状態」の一例である。プリンタ100のSoftAPが起動することによって形成される無線ネットワークが、「特定の無線ネットワーク」の一例である。当該無線ネットワークのSSID「CCC」が、「特定のネットワーク識別情報」の一例である。公開鍵PKprとSSID「CCC」とを含むコード情報が、「コード情報」及び「特定情報」の一例である。QRコードが、「コード画像」の一例である。プリンタ100の表示部114が、「出力部」の一例である。プリンタ用COが、「第1の接続情報」の一例である。AP6Bによって形成される無線ネットワークのSSID「BBB」及びPW「YYY」が、「第2の接続情報」の一例である。図3のT102のAuth Reqが、「認証要求」の一例である。T104のAuth Resが、「認証応答」の一例である。T110のConfig Reqが、「接続情報要求」の一例である。図3のT102、T104、T105、T110、T112の各通信が、「所定通信」の一例である。コード情報に含まれる文字列「K:」が、「所定の識別子」の一例である。
【0067】
図2のT14の処理が、「通信装置」の「第1の状態移行部」によって実行される処理の一例である。図2のT18の処理が、「通信装置」の「出力部」によって実行される処理の一例である。図3のT102、T104、T105、T108、T110、及び、T112の処理が、「通信装置」の「第1の接続情報受信部」によって実行される処理の一例である。図3のT109の処理が、「通信装置」の「第2の状態移行部」によって実行される処理の一例である。図3のT150の処理が、「通信装置」の「第1の確立部」によって実行される処理の一例である。図4のT202の処理が、「通信装置」の「第2の確立部」によって実行される処理の一例である。図4のT230の処理が、「通信装置」の「第2の接続情報受信部」によって実行される処理の一例である。図4のT232の処理が、「通信装置」の「第3の確立部」によって実行される処理の一例である。
【0068】
図2のT26の処理が、「アプリケーションプログラム」の「取得部」によって実行される処理の一例である。図2のT30の処理が、「アプリケーションプログラム」の「判断部」によって実行される処理の一例である。図のTの処理が、「アプリケーションプログラム」の「第1の供給部」によって実行される処理の一例である。図4のT200の処理が、「アプリケーションプログラム」の「第2の供給部」によって実行される処理の一例である。図4のT230の処理が、「アプリケーションプログラム」の「接続情報送信部」によって実行される処理の一例である。
【0069】
図2のT26の処理が、「端末装置」の「取得部」によって実行される処理の一例である。図2のT30の処理が、「端末装置」の「判断部」によって実行される処理の一例である。図2のT102、T104、T105、T106、T110、及び、T112の処理が、「端末装置」の「第1の接続情報送信部」によって実行される処理の一例である。図4のT202の処理が、「端末装置」の「確立部」によって実行される処理の一例である。図4のT230の処理が、「端末装置」の「第2の接続情報送信部」によって実行される処理の一例である。
【0070】
以上、本明細書が開示する技術の具体例を詳細に説明したが、これらは例示に過ぎず、特許請求の範囲を限定するものではない。特許請求の範囲に記載の技術には、以上に例示した具体例を様々に変形、変更したものが含まれる。上記の実施例の変形例を以下に列挙する。
【0071】
(変形例1)プリンタ100は、QRコードの表示に代えて、QRコードを印刷してもよい。本変形例では、印刷エンジン118が「出力部」の一例である。また、QRコードを印刷することが、「通信装置」の「出力制御部」によって実行される処理の一例である。
【0072】
(変形例2)端末は、プリンタ100に表示されるQRコードに代えて、プリンタ100に貼付されているQRコードを撮影することによって、プリンタ100の公開鍵PKpr等を取得してもよい。本変形例では、プリンタ100に貼付されているQRコードを撮影することによって公開鍵PKpr等を取得する処理が、「アプリケーションプログラム」及び「端末装置」の「取得部」によって実行される処理の一例である。別の変形例では、端末10は、例えばBluetooth通信、near field communication(NFC)通信を介して、プリンタ100から公開鍵PKpr等を取得してもよい。Bluetoothは、Bluetooth SIGの登録商標である。これらの変形例では、Bluetooth通信による公開鍵PKpr等の取得、NFC通信による公開鍵PKpr等の取得が、「アプリケーションプログラム」及び「端末装置」の「取得部」によって実行される処理の一例である。
【0073】
(変形例3)プリンタ100は、図2のT14において、SoftAPを起動することに代えて、Wi-Fi規格のWi-Fi DirectのGroup Ownerに移行してもよい。Wi-Fi Directは、Wi-Fi Allianceの登録商標である。本変形例では、Group Ownerとして動作するプリンタ100によって形成される無線ネットワークが、「特定の無線ネットワーク」の一例である。また、別の変形例では、プリンタ100は、図2のT14において、SoftAPを起動することに代えて、Adhocネットワークを形成してもよい。本変形例では、当該Adhocネットワークが、「特定の無線ネットワーク」の一例である。
【0074】
(変形例4)OS36Aは、図3のT112において、SSID「AAA」及びPW「XXX」を含むプリンタ用COをプリンタ100に送信することに代えて、例えば、ハッシュ値、AP6Aによって形成されている無線ネットワークを識別するグループID、プリンタ100の公開鍵、及び、電子署名を含むプリンタ用Signed-Connectorを含むプリンタ用COをプリンタ100に送信してもよい。以下では、Signed-Connectorのことを「SC」と記載する。この場合、プリンタ100は、図3のT115において、Probe Reqに代えて、上記のプリンタ用SCを含むDPP Peer Discovery Reqをブロードキャストによって送信してもよい。同様に、プリンタ100は、T140において、AP6Bによって形成されている無線ネットワークを識別するグループIDを含むプリンタ用SCを含むDPP Peer Discovery Reqをブロードキャストによって送信してもよい。DPP Peer Discovery Reqは、認証の実行と、相手のSCの送信と、を要求する信号である。AP6Bは、プリンタ用SCの認証が成功すると、接続キーを生成し、T142において、AP6B用SCを含むDPP Peer Discovery Resをプリンタ100に送信してもよい。そして、プリンタ100は、AP6B用SCの認証が成功すると、上記と同じ接続キーを生成してもよい。この結果、プリンタ100とAP6Bとの間にWi-Fi接続が確立されてもよい。本変形例では、上記のグループID等を含むプリンタ用SCを含むプリンタ用COが、「第1の接続情報」の一例である。
【0075】
(変形例5)図3のT102~T114において、端末10Aとプリンタ100との間で実行される各種通信は、DPPとは異なる方式に従った通信であってもよい。
【0076】
(変形例6)プリンタ100は、常にSoftAPとして動作するように構成されていてもよい。本変形例では、「通信装置」の「第1の状態移行部」を省略してもよい。また、別の変形例では、プリンタ100は、図2のT14において、SoftAPが起動される前に、QRコードを表示してもよい。即ち、「通信装置」の「出力制御部」がコード画像を出力部に出力させるタイミングは、実施例の形態に限定されない。
【0077】
(変形例7)コード情報は、SSID「CCC」に代えて、例えば、SoftAPとして動作するプリンタ100によって形成される無線ネットワークのbasic service set identifier(BSSID)を含んでいてもよい。本変形例では、BSSIDが「特定の無線ネットワーク識別情報」の一例である。即ち、「特定の無線ネットワーク識別情報」は、プリンタ100によって形成される無線ネットワークを識別する情報であれば何でもよい。
【0078】
(変形例8)プリンタ100は、T109の処理を省略してもよい。一般的にいうと、「通信装置」の「第2の状態移行部」を省略してもよい。
【0079】
(変形例9)コード情報は、Bootstrapping Information Formatとは異なるフォーマットに従って記述された情報であってもよい。
【0080】
(変形例10)上記の実施例では、ケースBにおいて、プリンタ100がプリンタ100の周囲に存在するAPを検索した(図4のT204~T210参照)。変形例では、端末10Bが端末10Bの周囲に存在するAPを検索してもよい。
【0081】
(変形例11)上記の実施例では、図2図4の各ステップの処理がソフトウェア(例えば、OS36A,36B、アプリ38、プログラム136)によって実現されるが、これらの各処理の少なくとも一つが、論理回路等のハードウェアによって実現されてもよい。
【0082】
本明細書または図面に説明した技術要素は、単独で、あるいは各種の組合せによって技術的有用性を発揮するものであり、出願時請求項記載の組合せに限定されるものではない。また、本明細書または図面に例示した技術は複数目的を同時に達成し得るものであり、そのうちの一つの目的を達成すること自体で技術的有用性を持つものである。
【0083】
本特許出願時の特許請求の範囲において、各請求項が一部の請求項のみに従属している場合であっても、各請求項が当該一部の請求項のみに従属可能であることに限定されない。技術的に矛盾しない範囲において、各請求項は、出願時に従属していない他の請求項にも従属可能である。即ち、各請求項の技術は以下のように様々に組み合わせることができる。
(項目1)
通信装置であって、
Wi-Fi規格に従った無線通信を実行するためのWi-Fiインターフェースと、
前記通信装置の公開鍵と、特定の無線ネットワークを識別する特定のネットワーク識別情報と、を含むコード情報を表わすコード画像を出力部に出力させる出力制御部と、
前記通信装置とは異なる端末装置によって前記コード画像が撮影されることに応じて、前記コード情報に含まれる前記公開鍵が前記端末装置によって利用される第1の場合に、前記Wi-Fiインターフェースを介して、前記公開鍵が利用された所定通信を前記端末装置と実行して、前記端末装置から第1の接続情報を受信する第1の接続情報受信部と、
前記第1の接続情報を利用して、前記Wi-Fiインターフェースを介して、対象アクセスポイントとのWi-Fi接続を確立する第1の確立部と、
前記端末装置によって前記コード画像が撮影されることに応じて、前記コード情報に含まれる前記特定のネットワーク識別情報が前記端末装置によって利用される第2の場合に、前記Wi-Fiインターフェースを介して、前記端末装置とのWi-Fi接続を確立する第2の確立部と、
前記端末装置との前記Wi-Fi接続を利用して、前記Wi-Fiインターフェースを介して、前記端末装置から第2の接続情報を受信する第2の接続情報受信部と、
前記第2の接続情報を利用して、前記対象アクセスポイントとのWi-Fi接続を確立する第3の確立部と、
を備える、通信装置。
(項目2)
前記所定通信は、前記Wi-Fi規格のDevice Provisioning Protocol(DPP)に従った通信であり、
前記所定通信は、
前記端末装置から前記公開鍵が利用された認証要求を受信することと、
認証応答を前記端末装置に送信することと、
接続情報要求を前記端末装置に送信することと、
前記端末装置から前記第1の接続情報を受信することと、
を含む、項目1に記載の通信装置。
(項目3)
前記通信装置は、さらに、
前記通信装置の動作状態を、前記特定の無線ネットワークの親局として動作しない非親局状態から、前記親局として動作する親局状態に移行させる第1の状態移行部を備え、
前記出力制御部は、前記通信装置の動作状態が前記非親局状態から前記親局状態に移行された後に、前記コード画像を前記出力部に出力させる、項目1又は2に記載の通信装置。
(項目4)
前記特定のネットワーク識別情報は、前記親局として動作する前記通信装置によって形成される前記特定の無線ネットワークのService Set Identifier(SSID)を含む、項目3に記載の通信装置。
(項目5)
前記通信装置は、さらに、
前記第1の場合であり、かつ、前記Wi-Fiインターフェースを介して、前記端末装置から所定信号が受信される場合に、前記通信装置の前記動作状態を前記親局状態から前記非親局状態に移行させる第2の状態移行部を備える、項目3又は4に記載の通信装置。
(項目6)
前記コード情報は、前記Wi-Fi規格のDevice Provisioning Protocol(DPP)で規定されるBootstrapping Information Formatに従って記述された所定の識別子と、前記所定の識別子に後続して記述される前記公開鍵と、を含む、項目1から5のいずれか一項に記載の通信装置。
(項目7)
前記第2の場合に、前記対象アクセスポイントは、前記通信装置又は前記端末装置が検索することによって見つかった1個以上のアクセスポイントのうちの1個のアクセスポイントである、項目1から6のいずれか一項に記載の通信装置。
(項目8)
端末装置のためのアプリケーションプログラムであって、
前記端末装置は、
Wi-Fi規格に従った無線通信を実行するためのWi-Fiインターフェースと、
コンピュータと、
を備え、
前記アプリケーションプログラムは、前記コンピュータを、以下の各部、即ち、
通信装置に関連する特定情報であって、前記通信装置の公開鍵と、特定の無線ネットワークを識別する特定のネットワーク識別情報と、を含む前記特定情報を取得する取得部と、
前記特定情報が取得される場合に、前記端末装置が、前記公開鍵が利用された所定通信を実行可能であるのかを判断する判断部と、
前記端末装置が前記所定通信を実行可能であると判断される第1の場合に、前記公開鍵をOSプログラムに供給する第1の供給部であって、前記OSプログラムは、前記アプリケーションプログラムから前記公開鍵を取得する場合に、前記Wi-Fiインターフェースを介して、前記所定通信を前記通信装置と実行して、第1の接続情報を前記通信装置に送信し、前記第1の接続情報は、前記通信装置と対象アクセスポイントとの間にWi-Fi接続を確立させるための情報である、前記第1の供給部と、
前記端末装置が前記所定通信を実行可能でないと判断される第2の場合に、前記特定のネットワーク識別情報を前記OSプログラムに供給する第2の供給部であって、前記OSプログラムは、前記アプリケーションプログラムから前記特定のネットワーク識別情報を取得する場合に、前記Wi-Fiインターフェースを介して、前記特定のネットワーク識別情報を利用して、前記通信装置とのWi-Fi接続を確立する、前記第2の供給部と、
前記通信装置との前記Wi-Fi接続を利用して、前記Wi-Fiインターフェースを介して、第2の接続情報を前記通信装置に送信する接続情報送信部であって、前記第2の接続情報は、前記通信装置と前記対象アクセスポイントとの間にWi-Fi接続を確立させるための情報である、前記接続情報送信部と、
として機能させる、アプリケーションプログラム。
(項目9)
前記所定通信は、前記Wi-Fi規格のDPP(Device Provisioning Protocolの略)に従った通信であり、
前記所定通信は、
前記公開鍵が利用された認証要求を前記通信装置に送信することと、
前記通信装置から認証応答を受信することと、
前記通信装置から接続情報要求を受信することと、
前記第1の接続情報を前記通信装置に送信することと、
を含む、項目8に記載のアプリケーションプログラム。
(項目10)
前記取得部は、前記特定情報を表わすコード画像が前記端末装置によって撮影される場合に、前記コード画像をデコードすることによって、前記特定情報を取得する、項目8又は9に記載のアプリケーションプログラム。
(項目11)
前記特定のネットワーク識別情報は、親局として動作する前記通信装置によって形成される前記特定の無線ネットワークのService Set Identifier(SSID)を含む、項目8から10のいずれか一項に記載のアプリケーションプログラム。
(項目12)
通信装置のためのコンピュータプログラムであって、
前記通信装置は、
Wi-Fi規格に従った無線通信を実行するためのWi-Fiインターフェースと、
コンピュータと、
を備え、
前記コンピュータプログラムは、前記コンピュータを、以下の各部、即ち、
前記通信装置の公開鍵と、特定の無線ネットワークを識別する特定のネットワーク識別情報と、を含むコード情報を表わすコード画像を出力部に出力させる出力制御部と、
前記通信装置とは異なる端末装置によって前記コード画像が撮影されることに応じて、前記コード情報に含まれる前記公開鍵が前記端末装置によって利用される第1の場合に、前記Wi-Fiインターフェースを介して、前記公開鍵が利用された所定通信を前記端末装置と実行して、前記端末装置から第1の接続情報を受信する第1の接続情報受信部と、
前記第1の接続情報を利用して、前記Wi-Fiインターフェースを介して、対象アクセスポイントとのWi-Fi接続を確立する第1の確立部と、
前記端末装置によって前記コード画像が撮影されることに応じて、前記コード情報に含まれる前記特定のネットワーク識別情報が前記端末装置によって利用される第2の場合に、前記Wi-Fiインターフェースを介して、前記端末装置とのWi-Fi接続を確立する第2の確立部と、
前記端末装置との前記Wi-Fi接続を利用して、前記Wi-Fiインターフェースを介して、前記端末装置から第2の接続情報を受信する第2の接続情報受信部と、
前記第2の接続情報を利用して、前記対象アクセスポイントとのWi-Fi接続を確立する第3の確立部と、
として機能させる、コンピュータプログラム。
(項目13)
端末装置であって、
Wi-Fi規格に従った無線通信を実行するためのWi-Fiインターフェースと、
通信装置に関連する特定情報であって、前記通信装置の公開鍵と、特定の無線ネットワークを識別する特定のネットワーク識別情報と、を含む前記特定情報を取得する取得部と、
前記特定情報が取得される場合に、前記端末装置が、前記公開鍵が利用された所定通信を実行可能であるのか否かを判断する判断部と、
前記端末装置が前記所定通信を実行可能であると判断される第1の場合に、前記Wi-Fiインターフェースを介して、前記所定通信を前記通信装置と実行して、第1の接続情報を前記通信装置に送信する第1の接続情報送信部であって、前記第1の接続情報は、前記通信装置と対象アクセスポイントとの間にWi-Fi接続を確立させるための情報である、前記第1の接続情報送信部と、
前記端末装置が前記所定通信を実行可能でないと判断される第2の場合に、前記Wi-Fiインターフェースを介して、前記特定のネットワーク識別情報を利用して、前記通信装置とのWi-Fi接続を確立する確立部と、
前記通信装置との前記Wi-Fi接続を利用して、前記Wi-Fiインターフェースを介して、第2の接続情報を前記通信装置に送信する第2の接続情報送信部であって、前記第2の接続情報は、前記通信装置と前記対象アクセスポイントとの間にWi-Fi接続を確立させるための情報である、前記第2の接続情報送信部と、
を備える、端末装置。
【符号の説明】
【0084】
2:通信システム、6A,6B:AP、10A,10B:端末、12A,12B,112:操作部、14A,14B,114:表示部、16A,16B,116:Wi-FiI/F、18A,18B:カメラ、30A,30B,130:制御部、32A,32B、132:CPU、34A,34B,134:メモリ、36A,36B:OSプログラム、38:アプリケーションプログラム、118:印刷エンジン、136:プログラム
図1
図2
図3
図4