(57)【要約】【課題】第１の外部装置を利用して、通信装置と第２の外部装置との間に第２の無線接続を確立させるための新規な技術を提供すること。【解決手段】通信装置は、第１の外部装置との第１の無線接続が確立される場合に、対象処理を実行すべきことを指示するための指示画面を表示する。通信装置は、対象処理を実行すべきことが指示される場合に、第１の指示情報を第１の無線インターフェースに供給する。第１の無線インターフェースは、公開鍵を第１の外部装置に送信する。この結果、通信装置は、第１の外部装置から公開鍵が利用された認証要求を受信し、認証応答を第１の外部装置に送信して、第１の外部装置から接続情報を受信し、接続情報を利用して第２の外部装置との第２の無線接続を確立する。一方、対象処理を実行すべきことが指示されない場合に、第１の指示情報は第１の無線インターフェースに供給されない。【選択図】図３
2019180038.tif 000002
【特許請求の範囲】
【請求項１】
通信装置であって、
表示部と、
第１の無線インターフェースと、
前記第１の無線インターフェースとは異なる第２の無線インターフェースと、
制御部と、を備え、
前記制御部は、
前記通信装置と第１の外部装置との間に前記第１の無線インターフェースを介した第１の無線接続が確立される場合に、公開鍵の送信を含む対象処理を実行すべきことを指示するための指示画面を前記表示部に表示させる表示制御部と、
前記指示画面が表示されている状況において、前記対象処理を実行すべきことが指示される場合に、前記公開鍵の送信を指示する第１の指示情報を前記第１の無線インターフェースに供給する第１の供給部であって、前記指示画面が表示されている状況において、前記対象処理を実行すべきことが指示されない場合に、前記第１の指示情報は前記第１の無線インターフェースに供給されない、前記第１の供給部と、
を備え、
前記第１の無線インターフェースは、前記制御部から前記第１の指示情報を取得した後に、前記公開鍵を前記第１の外部装置に送信し、
前記制御部は、さらに、
前記公開鍵が前記第１の外部装置に送信された後に、前記第１の外部装置から、前記第２の無線インターフェースを介して、前記公開鍵が利用された認証要求を受信する認証要求受信部と、
前記第１の外部装置から前記認証要求が受信される場合に、前記第２の無線インターフェースを介して、前記認証要求に対する応答である認証応答を前記第１の外部装置に送信する認証応答送信部と、
前記認証応答が前記第１の外部装置に送信された後に、前記第１の外部装置から、前記第２の無線インターフェースを介して、接続情報を受信する接続情報受信部であって、前記接続情報は、前記通信装置と第２の外部装置との間に前記第２の無線インターフェースを介した第２の無線接続を確立するための情報である、前記接続情報受信部と、
前記第１の外部装置から前記接続情報が受信される場合に、前記接続情報を利用して、前記通信装置と前記第２の外部装置との間に前記第２の無線インターフェースを介した前記第２の無線接続を確立する第１の確立部と、
を備える、通信装置。
【請求項２】
前記第２の外部装置は、前記第１の外部装置とは異なる装置であり、
前記指示画面は、前記対象処理に対応する第１の選択領域と、前記対象処理とは異なる処理に対応する第２の選択領域と、を含み、
前記第１の供給部は、前記指示画面が表示されている状況において、前記第１の選択領域が選択される場合に、前記第１の指示情報を前記第１の無線インターフェースに供給し、
前記制御部は、さらに、
前記指示画面が表示されている状況において、前記第２の選択領域が選択される場合に、前記通信装置と前記第１の外部装置との間に前記第２の無線インターフェースを介した第３の無線接続を確立する第２の確立部を備える、請求項１に記載の通信装置。
【請求項３】
前記第１の無線インターフェースは、インターフェースメモリを備え、
前記第１の指示情報は、前記公開鍵を含み、
前記第１の無線インターフェースは、
前記制御部から前記第１の指示情報を取得することに応じて、前記第１の指示情報に含まれる前記公開鍵を前記インターフェースメモリに記憶し、
前記第１の無線接続が切断され、かつ、前記公開鍵が前記インターフェースメモリに記憶された後に、前記通信装置と前記第１の外部装置との間に前記第１の無線インターフェースを介した第４の無線接続が確立される場合に、前記第４の無線接続を利用して、前記公開鍵を前記第１の外部装置に送信し、
前記制御部は、さらに、
前記指示画面が表示されている状況において、前記第２の選択領域が選択される場合に、前記第３の無線接続を確立するための確立情報を含む第２の指示情報を前記第１の無線インターフェースに供給する第２の供給部を備え、
前記第１の無線インターフェースは、
前記制御部から前記第２の指示情報を取得することに応じて、前記第２の指示情報に含まれる前記確立情報を前記インターフェースメモリに記憶し、
前記第１の無線接続が切断され、かつ、前記確立情報が前記インターフェースメモリに記憶された後に、前記通信装置と前記第１の外部装置との間に前記第１の無線インターフェースを介した第５の無線接続が確立される場合に、前記第５の無線接続を利用して、前記第１の無線インターフェースを介して前記確立情報を前記第１の外部装置に送信し、
前記第２の確立部は、前記確立情報が前記第１の外部装置に送信された後に、前記確立情報を利用して、前記通信装置と前記第１の外部装置との間に前記第２の無線インターフェースを介した前記第３の無線接続を確立する、請求項２に記載の通信装置。
【請求項４】
前記制御部は、さらに、
前記第１の無線接続が確立された後に、前記通信装置の動作状態を不可能状態から可能状態に移行させる状態移行部であって、前記不可能状態は、前記第１の外部装置から前記認証要求を受信しても、前記認証応答を送信しない状態であり、前記可能状態は、前記第１の外部装置から前記認証要求を受信することに応じて、前記認証応答を前記第１の外部装置に送信する状態である、前記状態移行部を備え、
前記認証応答送信部は、前記通信装置の動作状態が前記可能状態に移行された後に、前記第１の外部装置から前記認証要求が受信される場合に、前記第２の無線インターフェースを介して、前記認証応答を前記第１の外部装置に送信する、請求項１から３のいずれか一項に記載の通信装置。
【請求項５】
通信装置であって、
第１の無線インターフェースと、
前記第１の無線インターフェースとは異なる第２の無線インターフェースと、
制御部と、を備え、
前記制御部は、
前記通信装置と第１の外部装置との間に前記第１の無線インターフェースを介した第１の無線接続が確立された後に、前記通信装置の動作状態を不可能状態から可能状態に移行させる状態移行部であって、前記不可能状態は、前記第１の外部装置から公開鍵が利用された認証要求を受信しても、前記認証要求に対する応答である認証応答を送信しない状態であり、前記可能状態は、前記第１の外部装置から前記認証要求を受信することに応じて、前記認証応答を前記第１の外部装置に送信する状態である、前記状態移行部と、
を備え、
前記第１の無線インターフェースは、前記第１の無線接続が確立された後に、前記公開鍵を前記第１の外部装置に送信し、
前記制御部は、さらに、
前記公開鍵が前記第１の外部装置に送信された後に、前記第１の外部装置から、前記第２の無線インターフェースを介して、前記認証要求を受信する認証要求受信部と、
前記通信装置の動作状態が前記可能状態に移行された後に、前記第１の外部装置から前記認証要求が受信される場合に、前記第２の無線インターフェースを介して、前記認証応答を前記第１の外部装置に送信する認証応答送信部と、
前記認証応答が前記第１の外部装置に送信された後に、前記第１の外部装置から、前記第２の無線インターフェースを介して、接続情報を受信する接続情報受信部であって、前記接続情報は、前記通信装置と第２の外部装置との間に前記第２の無線インターフェースを介した第２の無線接続を確立するための情報である、前記接続情報受信部と、
前記第１の外部装置から前記接続情報が受信される場合に、前記接続情報を利用して、前記通信装置と前記第２の外部装置との間に前記第２の無線インターフェースを介した前記第２の無線接続を確立する第１の確立部と、
を備える、通信装置。
【請求項６】
前記第１の無線インターフェースは、前記公開鍵と、前記通信装置において予め決められている第１の通信チャネルを示す通信チャネル情報と、を前記第１の外部装置に送信し、
前記可能状態は、前記第１の通信チャネルが利用された前記認証要求を受信することを監視し、前記第１の外部装置から前記認証要求を受信することに応じて、前記認証応答を前記第１の外部装置に送信する状態であり、
前記認証応答送信部は、前記通信装置の動作状態が前記可能状態に移行された後に、前記第１の外部装置から前記第１の通信チャネルが利用された前記認証要求が受信される場合に、前記第２の無線インターフェースを介して、前記認証応答を前記第１の外部装置に送信する、請求項４又は５に記載の通信装置。
【請求項７】
前記第１の確立部は、前記第１の通信チャネルとは異なる第２の通信チャネルを利用して、前記通信装置と前記第２の外部装置との間に前記第２の無線インターフェースを介した前記第２の無線接続を確立する、請求項６に記載の通信装置。
【請求項８】
前記第１の無線インターフェースは、前記第１の無線接続が切断され、かつ、前記通信装置と前記第１の外部装置との間に前記第１の無線インターフェースを介した第４の無線接続が確立される場合に、前記第４の無線接続を利用して、前記公開鍵を前記第１の外部装置に送信する、請求項１から７のいずれか一項に記載の通信装置。
【請求項９】
前記第１の無線インターフェースは、インターフェースメモリを備え、
前記公開鍵の送信を指示する第１の指示情報は、前記公開鍵を含み、
前記第１の無線インターフェースは、
前記制御部から前記第１の指示情報を取得することに応じて、前記第１の指示情報に含まれる前記公開鍵を前記インターフェースメモリに記憶し、
前記第１の無線接続が切断され、かつ、前記公開鍵が前記インターフェースメモリに記憶された後に、前記第４の無線接続が確立される場合に、前記第４の無線接続を利用して、前記公開鍵を前記第１の外部装置に送信する、請求項８に記載の通信装置。
【請求項１０】
前記制御部は、さらに、
所定条件が満たされる場合に、前記第１の無線インターフェースの動作モードを第１のモードから第２のモードに移行させるモード移行部であって、前記第１のモードは、前記第１の無線インターフェースを介した無線接続を確立不可能なモードであり、前記第２のモードは、前記第１の無線インターフェースを介した無線接続を確立可能なモードである、前記モード移行部を備える、請求項１から９のいずれか一項に記載の通信装置。
【請求項１１】
前記制御部は、さらに、
制御部メモリと、
前記第１の外部装置から前記接続情報が受信される場合に、前記接続情報を前記制御部メモリに記憶する記憶制御部と、を備え、
前記制御部メモリ内に前記接続情報が記憶されていない状況において、前記通信装置の電源がＯＮされる場合に、前記所定条件が満たされ、
前記制御部メモリ内に前記接続情報が記憶されている状況において、前記通信装置の電源がＯＮされる場合に、前記所定条件が満たされない、請求項１０に記載の通信装置。
【請求項１２】
前記通信装置は、さらに、
操作部を備え、
前記制御部メモリ内に前記接続情報が記憶されている状況において、前記操作部を介した特定操作が受け付けられる場合に、前記所定条件が満たされる、請求項１１に記載の通信装置。
【請求項１３】
前記第１の無線インターフェースは、前記第１の無線接続が確立される場合に、前記第１の無線接続を利用して、前記第１の外部装置にインストールされているアプリケーションプログラムを起動するための起動情報を前記第１の外部装置に送信し、
前記認証要求受信部は、前記アプリケーションプログラムに従って前記第１の外部装置から送信された前記認証要求を受信する、請求項１から１２のいずれか一項に記載の通信装置。
【請求項１４】
前記第１の無線インターフェースは、ＮＦＣ（Near Field Communicationの略）方式のタグインターフェースである、請求項１から１３のいずれか一項に記載の通信装置。
【請求項１５】
前記第２の外部装置は、前記第１の外部装置とは異なる装置であって、無線ネットワークの親局として動作すべき親局装置であり、
前記第１の確立部は、前記通信装置と前記第２の外部装置との間に前記第２の無線インターフェースを介した前記第２の無線接続を確立して、前記通信装置を前記無線ネットワークに子局として参加させる、請求項１から１４のいずれか一項に記載の通信装置。
【請求項１６】
前記接続情報は、前記第２の外部装置から受信される受信情報を認証するための認証情報を含む、請求項１から１５のいずれか一項に記載の通信装置。
【請求項１７】
前記制御部は、さらに、
前記認証応答が前記第１の外部装置に送信された後に、前記通信装置をＷｉ−Ｆｉ規格に従ったＥｎｒｏｌｌｅｅとして動作させる動作制御部であって、前記第１の外部装置は、前記Ｗｉ−Ｆｉ規格に従ったＣｏｎｆｉｇｕｒａｔｏｒとして動作する、前記動作制御部を備える、請求項１から１６のいずれか一項に記載の通信装置。
【請求項１８】
通信装置のためのコンピュータプログラムであって、
前記通信装置のコンピュータを、以下の各部、即ち、
前記通信装置と第１の外部装置との間に前記通信装置の第１の無線インターフェースを介した第１の無線接続が確立される場合に、公開鍵の送信を含む対象処理を実行すべきことを指示するための指示画面を前記通信装置の表示部に表示させる表示制御部と、
前記指示画面が表示されている状況において、前記対象処理を実行すべきことが指示される場合に、前記公開鍵の送信を指示する第１の指示情報を前記第１の無線インターフェースに供給する第１の供給部であって、前記指示画面が表示されている状況において、前記対象処理を実行すべきことが指示されない場合に、前記第１の指示情報は前記第１の無線インターフェースに供給されない、前記第１の供給部と、
前記第１の指示情報が前記第１の無線インターフェースに供給され、前記公開鍵が前記第１の無線インターフェースから前記第１の外部装置に送信された後に、前記第１の外部装置から、前記通信装置の第２の無線インターフェースを介して、前記公開鍵が利用された認証要求を受信する認証要求受信部であって、前記第２の無線インターフェースは、前記第１の無線インターフェースとは異なる、前記認証要求受信部と、
前記第１の外部装置から前記認証要求が受信される場合に、前記第２の無線インターフェースを介して、前記認証要求に対する応答である認証応答を前記第１の外部装置に送信する認証応答送信部と、
前記認証応答が前記第１の外部装置に送信された後に、前記第１の外部装置から、前記第２の無線インターフェースを介して、接続情報を受信する接続情報受信部であって、前記接続情報は、前記通信装置と第２の外部装置との間に前記第２の無線インターフェースを介した第２の無線接続を確立するための情報である、前記接続情報受信部と、
前記第１の外部装置から前記接続情報が受信される場合に、前記接続情報を利用して、前記通信装置と前記第２の外部装置との間に前記第２の無線インターフェースを介した前記第２の無線接続を確立する第１の確立部と、
として機能させる、コンピュータプログラム。
【請求項１９】
通信装置のためのコンピュータプログラムであって、
前記通信装置のコンピュータを、以下の各部、即ち、
前記通信装置と第１の外部装置との間に前記通信装置の第１の無線インターフェースを介した第１の無線接続が確立された後に、前記通信装置の動作状態を不可能状態から可能状態に移行させる状態移行部であって、前記不可能状態は、前記第１の外部装置から公開鍵が利用された認証要求を受信しても、前記認証要求に対する応答である認証応答を送信しない状態であり、前記可能状態は、前記第１の外部装置から前記認証要求を受信することに応じて、前記認証応答を前記第１の外部装置に送信する状態である、前記状態移行部と、
前記第１の無線接続が確立され、前記公開鍵が前記第１の無線インターフェースから前記第１の外部装置に送信された後に、前記第１の外部装置から、前記通信装置の第２の無線インターフェースを介して、前記認証要求を受信する認証要求受信部であって、前記第２の無線インターフェースは、前記第１の無線インターフェースとは異なる、前記認証要求受信部と、
前記通信装置の動作状態が前記可能状態に移行された後に、前記第１の外部装置から前記認証要求が受信される場合に、前記第２の無線インターフェースを介して、前記認証応答を前記第１の外部装置に送信する認証応答送信部と、
前記認証応答が前記第１の外部装置に送信された後に、前記第１の外部装置から、前記第２の無線インターフェースを介して、接続情報を受信する接続情報受信部であって、前記接続情報は、前記通信装置と第２の外部装置との間に前記第２の無線インターフェースを介した第２の無線接続を確立するための情報である、前記接続情報受信部と、
前記第１の外部装置から前記接続情報が受信される場合に、前記接続情報を利用して、前記通信装置と前記第２の外部装置との間に前記第２の無線インターフェースを介した前記第２の無線接続を確立する第１の確立部と、
として機能させる、コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書では、外部装置との無線接続を確立可能な通信装置に関する技術を開示する。
【背景技術】
【０００２】
非特許文献１には、Ｗｉ−Ｆｉ  Ａｌｌｉａｎｃｅによって策定される予定であるDevice Provisioning Protocolと呼ばれる無線通信方式（以下では「ＤＰＰ方式」と記載する。）が記述されている。ＤＰＰ方式では、例えば、第１の装置と第２の装置との間にＮＦＣ接続が確立されることに応じて、ＤＰＰ方式に従った無線通信が実行される。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１８−３７９７８号公報
【非特許文献】
【０００４】
【非特許文献１】「DRAFT Device Provisioning Protocol Technical Specification Version 0.2.11」 Wi-Fi Alliance, ２０１７年
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本明細書では、第１の外部装置を利用して、通信装置と第２の外部装置との間に第２の無線接続を確立させるための新規な技術を開示する。
【課題を解決するための手段】
【０００６】
本明細書によって開示される通信装置は、表示部と、第１の無線インターフェースと、前記第１の無線インターフェースとは異なる第２の無線インターフェースと、制御部と、を備え、前記制御部は、前記通信装置と第１の外部装置との間に前記第１の無線インターフェースを介した第１の無線接続が確立される場合に、公開鍵の送信を含む対象処理を実行すべきことを指示するための指示画面を前記表示部に表示させる表示制御部と、前記指示画面が表示されている状況において、前記対象処理を実行すべきことが指示される場合に、前記公開鍵の送信を指示する第１の指示情報を前記第１の無線インターフェースに供給する第１の供給部であって、前記指示画面が表示されている状況において、前記対象処理を実行すべきことが指示されない場合に、前記第１の指示情報は前記第１の無線インターフェースに供給されない、前記第１の供給部と、を備え、前記第１の無線インターフェースは、前記制御部から前記第１の指示情報を取得した後に、前記公開鍵を前記第１の外部装置に送信し、前記制御部は、さらに、前記公開鍵が前記第１の外部装置に送信された後に、前記第１の外部装置から、前記第２の無線インターフェースを介して、前記公開鍵が利用された認証要求を受信する認証要求受信部と、前記第１の外部装置から前記認証要求が受信される場合に、前記第２の無線インターフェースを介して、前記認証要求に対する応答である認証応答を前記第１の外部装置に送信する認証応答送信部と、前記認証応答が前記第１の外部装置に送信された後に、前記第１の外部装置から、前記第２の無線インターフェースを介して、接続情報を受信する接続情報受信部であって、前記接続情報は、前記通信装置と第２の外部装置との間に前記第２の無線インターフェースを介した第２の無線接続を確立するための情報である、前記接続情報受信部と、前記第１の外部装置から前記接続情報が受信される場合に、前記接続情報を利用して、前記通信装置と前記第２の外部装置との間に前記第２の無線インターフェースを介した前記第２の無線接続を確立する第１の確立部と、を備えてもよい。
【０００７】
上記の構成によると、通信装置は、第１の外部装置との第１の無線接続が確立される場合に、指示画面を表示する。指示画面が表示されている状況において、対象処理を実行すべきことが指示される場合に、公開鍵の送信を指示する第１の指示情報が第１の無線インターフェースに供給される。この結果、第１の無線インターフェースは、公開鍵を第１の外部装置に送信する。これにより、通信装置は、第１の外部装置から公開鍵が利用された認証要求を受信し、認証応答を第１の外部装置に送信し、第１の外部装置から接続情報を受信し、接続情報を利用して第２の外部装置との第２の無線接続を確立することができる。一方、指示画面が表示されている状況において、対象処理を実行すべきことが指示されない場合に、第１の指示情報は第１の無線インターフェースに供給されない。これにより、第１の無線インターフェースを介して公開鍵が第１の外部装置に送信されないので、通信装置は、第１の外部装置から公開鍵が利用された認証要求を受信せず、第２の外部装置との第２の無線接続を確立しない。このように、本技術によると、通信装置と第２の外部装置との間に第２の無線接続を確立させるのか否かを切り替えることができる。
【０００８】
また、本明細書によって開示される通信装置は、第１の無線インターフェースと、前記第１の無線インターフェースとは異なる第２の無線インターフェースと、制御部と、を備え、前記制御部は、前記通信装置と第１の外部装置との間に前記第１の無線インターフェースを介した第１の無線接続が確立された後に、前記通信装置の動作状態を不可能状態から可能状態に移行させる状態移行部であって、前記不可能状態は、前記第１の外部装置から公開鍵が利用された認証要求を受信しても、前記認証要求に対する応答である認証応答を送信しない状態であり、前記可能状態は、前記第１の外部装置から前記認証要求を受信することに応じて、前記認証応答を前記第１の外部装置に送信する状態である、前記状態移行部と、を備え、前記第１の無線インターフェースは、前記第１の無線接続が確立された後に、前記公開鍵を前記第１の外部装置に送信し、前記制御部は、さらに、前記公開鍵が前記第１の外部装置に送信された後に、前記第１の外部装置から、前記第２の無線インターフェースを介して、前記認証要求を受信する認証要求受信部と、前記通信装置の動作状態が前記可能状態に移行された後に、前記第１の外部装置から前記認証要求が受信される場合に、前記第２の無線インターフェースを介して、前記認証応答を前記第１の外部装置に送信する認証応答送信部と、前記認証応答が前記第１の外部装置に送信された後に、前記第１の外部装置から、前記第２の無線インターフェースを介して、接続情報を受信する接続情報受信部であって、前記接続情報は、前記通信装置と第２の外部装置との間に前記第２の無線インターフェースを介した第２の無線接続を確立するための情報である、前記接続情報受信部と、前記第１の外部装置から前記接続情報が受信される場合に、前記接続情報を利用して、前記通信装置と前記第２の外部装置との間に前記第２の無線インターフェースを介した前記第２の無線接続を確立する第１の確立部と、を備えてもよい。
【０００９】
上記の構成によると、通信装置は、第１の外部装置との第１の無線接続が確立された後に、不可能状態から可能状態に移行する。これにより、通信装置は、第１の外部装置から、公開鍵が利用された認証要求を受信し、認証応答を第１の外部装置に送信し、第１の外部装置から接続情報を受信し、接続情報を利用して第２の外部装置との第２の無線接続を確立することができる。通信装置は、第１の外部装置との第１の無線接続が確立される前に、不可能状態よりも高い処理負荷である可能状態に移行しない。このために、第１の外部装置を利用して、通信装置と第２の外部装置との間に第２の無線接続を確立させる技術において、通信装置の処理負荷を軽減できる。
【００１０】
上記の通信装置を実現するためのコンピュータプログラム、及び、当該コンピュータプログラムを記憶するコンピュータ可読記録媒体も新規で有用である。また、上記の通信装置によって実行される方法も新規で有用である。また、上記の通信装置と他の装置（例えば第１の外部装置、第２の外部装置）とを備える通信システムも、新規で有用である。
【図面の簡単な説明】
【００１１】
【図１】通信システムの構成を示す。
【図２】本実施例の概略を説明するための説明図を示す。
【図３】ケースＡのＢｏｏｔｓｔｒａｐｐｉｎｇの処理のシーケンス図を示す。
【図４】Ａｕｔｈｅｎｔｉｃａｔｉｏｎの処理のシーケンス図を示す。
【図５】Ｃｏｎｆｉｇｕｒａｔｉｏｎの処理のシーケンス図を示す。
【図６】Ｎｅｔｗｏｒｋ  Ａｃｃｅｓｓの処理のシーケンス図を示す。
【図７】ケースＢのＢｏｏｔｓｔｒａｐｐｉｎｇの処理のシーケンス図を示す。
【図８】ケースＣのＢｏｏｔｓｔｒａｐｐｉｎｇの処理のシーケンス図を示す。
【図９】プリンタと端末との間にＷｉ−Ｆｉ接続を確立する処理のシーケンス図を示す。
【発明を実施するための形態】
【００１２】
（通信システム２の構成；図１）
図１に示されるように、通信システム２は、ＡＰ（Access Pointの略）６と、端末１０と、プリンタ１００と、を備える。本実施例では、ユーザが端末１０を利用して、プリンタ１００とＡＰ６との間にＷｉ−Ｆｉ方式に従った無線接続（以下では「Ｗｉ−Ｆｉ接続」と記載する）を確立させる状況を想定している。
【００１３】
（端末１０の構成）
端末１０は、携帯電話（例えばスマートフォン）、ＰＤＡ、タブレットＰＣ等の可搬型の端末装置である。なお、変形例では、端末１０は、据置型のＰＣ、ノートＰＣ等であってもよい。端末１０は、Ｗｉ−Ｆｉインターフェース１６と、ＮＦＣインターフェース１８と、を備える。以下では、インターフェースを単に「Ｉ／Ｆ」と記載する。また、端末１０は、接続アプリケーション４０（以下では単に「アプリ４０」と記載する）を記憶している。アプリ４０は、プリンタ１００とＡＰ６との間にＷｉ−Ｆｉ接続を確立させるためのプログラムであり、例えば、プリンタ１００のベンダによって提供されるインターネット上のサーバから端末１０にインストールされる。
【００１４】
Ｗｉ−ＦｉＩ／Ｆ１６は、Ｗｉ−Ｆｉ方式に従ったＷｉ−Ｆｉ通信を実行するための無線インターフェースである。Ｗｉ−Ｆｉ方式は、例えば、ＩＥＥＥ（The Institute of Electrical and Electronics Engineers, Inc.の略）の８０２．１１の規格、及び、それに準ずる規格（例えば８０２．１１ａ，１１ｂ，１１ｇ，１１ｎ，１１ａｃ等）に従って、無線通信を実行するための無線通信方式である。特に、Ｗｉ−ＦｉＩ／Ｆ１６は、Ｗｉ−Ｆｉ  Ａｌｌｉａｎｃｅによって策定されたＷＦＤ（Wi-Fi Direct（登録商標）の略）方式と、Ｗｉ−Ｆｉ  Ａｌｌｉａｎｃｅによって策定される予定であるＤＰＰ（Device Provisioning Protocolの略）方式と、をサポートしている。ＷＦＤ方式は、Ｗｉ−Ｆｉ  Ａｌｌｉａｎｃｅによって作成された規格書「Wi-Fi Peer-to-Peer (P2P) Technical Specification Version1.1」に記述されている無線通信方式である。ＷＦＤの規格では、ＷＦＤ機器の状態として、Ｇｒｏｕｐ  Ｏｗｎｅｒ状態（以下では「Ｇ／Ｏ状態」と呼ぶ）、クライアント状態、及び、デバイス状態の３つの状態が定義されている。ＷＦＤ機器は、上記の３つの状態のうちの１つの状態で選択的に動作可能である。ＤＰＰ方式は、Ｗｉ−Ｆｉ  Ａｌｌｉａｎｃｅによって作成された規格書のドラフトである「DRAFT Device Provisioning Protocol Technical Specification Version 0.2.11」に記述されており、端末１０を利用して一対のデバイス（例えばプリンタ１００とＡＰ６）の間に容易にＷｉ−Ｆｉ接続を確立させるための無線通信方式である。
【００１５】
ＮＦＣＩ／Ｆ１８は、ＮＦＣ方式に従ったＮＦＣ通信を実行するためのＩ／Ｆである。ＮＦＣ方式は、例えば、ISO/IEC14443、15693、18092等の国際標準規格に基づく無線通信方式である。なお、ＮＦＣ通信を実行するためのＩ／Ｆの種類として、ＮＦＣフォーラムデバイス（NFC Forum Device）と呼ばれるＩ／Ｆと、ＮＦＣフォーラムタグと呼ばれるＩ／Ｆと、が知られている。本実施例では、ＮＦＣＩ／Ｆ１８は、ＮＦＣフォーラムデバイスである。
【００１６】
（プリンタ１００の構成）
プリンタ１００は、印刷機能を実行可能な周辺装置（例えば、端末１０の周辺装置）である。プリンタ１００は、操作部１１２と、表示部１１４と、Ｗｉ−ＦｉＩ／Ｆ１１６と、ＮＦＣＩ／Ｆ１１８と、印刷実行部１２０と、制御部１３０と、を備える。各部１１２〜１３０は、バス線（符号省略）に接続されている。
【００１７】
操作部１１２は、複数のキーを備える。ユーザは、操作部１１２を操作することによって、様々な指示をプリンタ１００に入力することができる。表示部１１４は、様々な情報を表示するためのディスプレイである。印刷実行部１２０は、インクジェット方式、レーザ方式等の印刷機構を備える。
【００１８】
Ｗｉ−ＦｉＩ／Ｆ１１６は、端末１０のＷｉ−ＦｉＩ／Ｆ１６と同様である。即ち、Ｗｉ−ＦｉＩ／Ｆ１１６は、ＷＦＤ方式とＤＰＰ方式とをサポートしている。このため、プリンタ１００は、ＤＰＰ方式に従ってＡＰ６とのＷｉ−Ｆｉ接続を確立することができ、さらに、ＷＦＤ方式に従って端末１０とのＷｉ−Ｆｉ接続を確立することができる。また、Ｗｉ−ＦｉＩ／Ｆ１１６は、ＭＡＣアドレス「ａｂｃ」を有する。ＮＦＣＩ／Ｆ１１８は、ＮＦＣフォーラムタグである点を除いて、端末１０のＮＦＣＩ／Ｆ１８と同様である。なお、変形例では、ＮＦＣＩ／Ｆ１１８は、ＮＦＣフォーラムデバイスであってもよい。また、ＮＦＣＩ／Ｆ１１８は、メモリ１１９を備える。
【００１９】
ここで、Ｗｉ−Ｆｉ通信とＮＦＣ通信との間の相違点を説明しておく。Ｗｉ−Ｆｉ通信の通信速度（例えば最大の通信速度が１１〜６００Ｍｂｐｓ）は、ＮＦＣ通信の通信速度（例えば最大の通信速度が１００〜４２４Ｋｂｐｓ）よりも速い。また、Ｗｉ−Ｆｉ通信における搬送波の周波数（例えば２．４ＧＨｚ帯又は５．０ＧＨｚ帯）は、ＮＦＣ通信における搬送波の周波数（例えば１３．５６ＭＨｚ帯）とは異なる。また、Ｗｉ−Ｆｉ通信を実行可能な最大の距離（例えば最大で約１００ｍ）は、ＮＦＣ通信を実行可能な最大の距離（例えば最大で約１０ｃｍ）よりも大きい。
【００２０】
制御部１３０は、ＣＰＵ１３２とメモリ１３４とを備える。ＣＰＵ１３２は、メモリ１３４に格納されているプログラム１３６に従って、様々な処理を実行する。メモリ１３４は、揮発性メモリ、不揮発性メモリ等によって構成される。
【００２１】
（具体例；図２〜図９）
続いて、図２〜図９を参照して、各デバイス６，１０，１００によって実行される処理の具体例を説明する。まず、図２〜図８を参照して、プリンタ１００とＡＰ６との間にＷｉ−Ｆｉ接続を確立するための処理を説明する。
【００２２】
（ＡＰ６との接続のための処理の概要；図２）
まず、図２を参照して、プリンタ１００とＡＰ６との間にＷｉ−Ｆｉ接続を確立するための処理の概要を説明する。端末１０及びプリンタ１００がＤＰＰ方式をサポートしていることを上述したが、ＡＰ６もＤＰＰ方式をサポートしている。そして、本実施例では、各デバイス６，１０，１００がＤＰＰ方式に従った通信を実行することによって、プリンタ１００とＡＰ６との間のＷｉ−Ｆｉ接続を確立することを実現する。以下では、理解の容易化のために、各デバイスのＣＰＵ（例えばＣＰＵ１３２等）が実行する動作を、ＣＰＵを主体として記載せずに、各デバイス（例えばプリンタ１００）を主体として記載する。
【００２３】
Ｔ５では、端末１０は、ＤＰＰ方式のＢｏｏｔｓｔｒａｐｐｉｎｇ（以下では、単に「ＢＳ」と記載する）をＡＰ６と実行する。当該ＢＳは、ＡＰ６に貼り付けられているＱＲコード（登録商標）が端末１０によって撮影されることに応じて、後述のＴ１０のＡｕｔｈｅｎｔｉｃａｔｉｏｎ（以下では、単に「Ａｕｔｈ」と記載する）で利用される情報をＡＰ６から端末１０に提供する処理である。
【００２４】
Ｔ１０では、端末１０は、Ｔ５のＢＳで取得済みの情報を利用して、ＤＰＰ方式のＡｕｔｈをＡＰ６と実行する。当該Ａｕｔｈは、端末１０及びＡＰ６のそれぞれが通信相手を認証するための処理である。
【００２５】
Ｔ１５では、端末１０は、ＤＰＰ方式のＣｏｎｆｉｇｕｒａｔｉｏｎ（以下では、単に「Ｃｏｎｆｉｇ」と記載する）をＡＰ６と実行する。当該Ｃｏｎｆｉｇは、プリンタ１００とＡＰ６との間のＷｉ−Ｆｉ接続を確立するための情報をＡＰ６に送信する処理である。具体的には、端末１０は、当該Ｃｏｎｆｉｇにおいて、プリンタ１００とＡＰ６との間にＷｉ−Ｆｉ接続を確立させるための第１のＣｏｎｆｉｇｕｒａｔｉｏｎ  Ｏｂｊｅｃｔ（以下では、Ｃｏｎｆｉｇｕｒａｔｉｏｎ  Ｏｂｊｅｃｔのことを単に「ＣＯ」と記載する）を生成して、第１のＣＯをＡＰ６に送信する。この結果、ＡＰ６では、第１のＣＯが記憶される。
【００２６】
次いで、端末１０は、Ｔ２０において、ＤＰＰ方式のＢＳをプリンタ１００と実行する。当該ＢＳは、端末１０のＮＦＣＩ／Ｆ１８とプリンタ１００のＮＦＣＩ／Ｆ１１８との間に確立されるＮＦＣ接続を利用して、後述のＴ２５のＡｕｔｈで利用される情報をプリンタ１００から端末１０に提供する処理である。
【００２７】
Ｔ２５では、端末１０は、Ｔ２０のＢＳで取得済みの情報を利用して、ＤＰＰ方式のＡｕｔｈをプリンタ１００と実行する。当該Ａｕｔｈは、端末１０及びプリンタ１００のそれぞれが通信相手を認証するための処理である。
【００２８】
Ｔ３０では、端末１０は、ＤＰＰ方式のＣｏｎｆｉｇをプリンタ１００と実行する。当該Ｃｏｎｆｉｇは、プリンタ１００とＡＰ６との間のＷｉ−Ｆｉ接続を確立するための情報をプリンタ１００に送信する処理である。端末１０は、当該Ｃｏｎｆｉｇにおいて、プリンタ１００とＡＰ６との間にＷｉ−Ｆｉ接続を確立させるための第２のＣＯを生成して、第２のＣＯをプリンタ１００に送信する。この結果、プリンタ１００では、第２のＣＯが記憶される。
【００２９】
Ｔ３５では、プリンタ１００及びＡＰ６は、記憶済みの第１及び第２のＣＯを利用して、ＤＰＰ方式のＮｅｔｗｏｒｋ  Ａｃｃｅｓｓ（以下では、単に「ＮＡ」と記載する）を実行する。ＮＡは、Ｗｉ−Ｆｉ接続を確立するための接続キーをプリンタ１００及びＡＰ６の間で共有するための処理である。
【００３０】
Ｔ４０では、プリンタ１００及びＡＰ６は、４ｗａｙ−ｈａｎｄｓｈａｋｅの通信を実行する。４ｗａｙ−ｈａｎｄｓｈａｋｅの通信の少なくとも一部の過程において、プリンタ１００及びＡＰ６は、Ｔ３５のＮＡで共有済みの接続キーによって暗号化された暗号情報を通信する。そして、暗号情報の復号が成功する場合に、プリンタ１００とＡＰ６との間にＷｉ−Ｆｉ接続が確立される。これにより、プリンタ１００は、ＡＰ６によって形成される無線ネットワークに子局として参加することができ、この結果、ＡＰ６を介して、当該無線ネットワークに参加している他のデバイスとの通信を実行することができる。なお、変形例では、プリンタ１００及びＡＰ６は、４ｗａｙ−ｈａｎｄｓｈａｋｅの通信に代えて、ＳＡＥ（Simultaneous Authentication of Equalsの略、通称「Dragonfly」）の通信を実行してもよい。
【００３１】
Ｔ４５では、プリンタ１００は、Ｗｉ−Ｆｉ接続がＡＰ６と確立されたことを示す完了画面を表示部１１４に表示させる。Ｔ４５の処理が終了すると、図２の処理が終了する。
【００３２】
ＤＰＰ方式では、プリンタ１００とＡＰ６との間にＷｉ−Ｆｉ接続を確立させるために、ユーザは、ＡＰ６が親局として動作する無線ネットワークの情報（例えばＳＳＩＤ（Service Set Identifierの略）、パスワード等）をプリンタ１００に入力する必要がない。従って、ユーザは、プリンタ１００とＡＰ６との間のＷｉ−Ｆｉ接続を容易に確立させることができる。
【００３３】
（各処理の説明；図３〜図８）
続いて、図３〜図８を参照して、図２のＴ２０〜Ｔ３５において実行される各処理の詳細を説明する。なお、Ｔ５〜Ｔ１５の処理は、プリンタ１００に代えてＡＰ６が利用される点を除いて、Ｔ２０〜Ｔ３０の処理と同様であるので、その詳細な説明を省略する。また、図３、図７、及び、図８は、端末１０とプリンタ１００との間で実行されるＢＳの各ケースを示す。これらのケースは、一つの実施例において実行される処理である。
【００３４】
（ケースＡのＢｏｏｔｓｔｒａｐｐｉｎｇ（ＢＳ）；図３）
まず、図３を参照して、図２のＴ２０のＢＳのケースＡの処理を説明する。図３の初期状態では、プリンタ１００のメモリ１３４は、プリンタ１００の公開鍵ＰＰＫ１及び秘密鍵ｐｓｋ１を予め記憶している。
【００３５】
プリンタ１００は、Ｔ１００において、ユーザから電源ＯＮ操作を受け付けることに応じて、Ｔ１０５において、メニュー画面ＭＳを表示部１１４に表示させる。画面ＭＳは、換言すればプリンタ１００のデフォルト画面であり、プリンタ１００に印刷を実行させる印刷ボタンと、プリンタ１００の各種設定（例えば印刷設定等）を指定するための設定ボタンと、を含む。
【００３６】
プリンタ１００は、メモリ１３４が第２のＣＯ（図２のＴ３０参照）をまだ記憶していないので、Ｔ１０７において、ＮＦＣＩ／Ｆ１１８の動作モードを非設定モードから設定モードに移行させる。従って、メモリ１３４が第２のＣＯを記憶していない状態では、ユーザがプリンタ１００の電源をＯＮするだけで、ＮＦＣＩ／Ｆ１１８の動作モードが非設定モードから設定モードに自動的に移行される。非設定モードは、ＮＦＣＩ／Ｆ１１８に通電されていない状態であり、ＮＦＣ接続を確立不可能なモードである。設定モードは、ＮＦＣＩ／Ｆ１１８に通電されている状態であり、ＮＦＣ接続を確立可能なモードである。
【００３７】
Ｔ１０９では、プリンタ１００（即ちＣＰＵ１３２）は、端末１０にインストールされているアプリ４０を起動するためのアプリ起動指示をＮＦＣＩ／Ｆ１１８に供給する。この結果、ＮＦＣＩ／Ｆ１１８では、メモリ１１９内にアプリ起動指示が記憶される。
【００３８】
Ｔ１１０において、ユーザによって端末１０がプリンタ１００に近付けられることに応じて、Ｔ１１２において、端末１０のＮＦＣＩ／Ｆ１８とプリンタ１００のＮＦＣＩ／Ｆ１１８との間にＮＦＣ接続が確立される。この場合、ＮＦＣＩ／Ｆ１１８は、Ｔ１１３において、当該ＮＦＣ接続を利用して、ＮＦＣＩ／Ｆ１８からＲｅａｄコマンドを受信することに応じて、Ｔ１１４において、当該ＮＦＣ接続を利用して、メモリ１１９内のアプリ起動指示をＮＦＣＩ／Ｆ１８に送信する。この結果、Ｔ１１８において、端末１０のアプリ４０が起動される。このように、ユーザが端末１０をプリンタ１００に近付けるだけでアプリ４０が起動されるので、ユーザの利便性が向上する。
【００３９】
プリンタ１００（即ちＣＰＵ１３２）は、アプリ起動指示を送信したことを示す通知をＮＦＣＩ／Ｆ１１８から取得することに応じて、Ｔ１１６において、選択画面ＳＬＳを表示部１１４に表示させる。画面ＳＬＳは、ＡＰ６とのＷｉ−Ｆｉ接続を確立するための処理を実行すべきことを示す「ＡＰとの接続」ボタンと、端末１０とのＷｉ−Ｆｉ接続を確立するための処理を実行すべきことを示す「端末との接続」ボタンと、を含む。
【００４０】
端末１０は、Ｔ１１８において、アプリ４０を起動すると、アプリ４０に従って以下の各処理を実行する。具体的には、端末１０は、まず、通知画面を表示する。当該通知画面は、プリンタにおいて処理を選択した後に、端末１０をプリンタ１００に近付けることをユーザに促すメッセージを含む。次いで、端末１０は、Ｔ１１２で確立されたＮＦＣ接続の切断を指示する情報をＮＦＣＩ／Ｆ１８に供給する。この結果、Ｔ１１９では、当該ＮＦＣ接続が切断される。
【００４１】
プリンタ１００（即ちＣＰＵ１３２）は、Ｔ１２０において、画面ＳＬＳ内の「ＡＰとの接続」ボタンがユーザによって選択されることに応じて、Ｔ１２２において、公開鍵の送信を指示する公開鍵送信指示をＮＦＣＩ／Ｆ１１８に供給する。公開鍵送信指示は、メモリ１３４に予め記憶されているプリンタ１００の公開鍵ＰＰＫ１と、メモリ１３４に予め記憶されているチャネルリストと、Ｗｉ−ＦｉＩ／Ｆ１１６のＭＡＣアドレス「ａｂｃ」と、を含む。チャネルリストは、プリンタ１００において予め決められている複数個の通信チャネル（即ちプリンタ１００が利用可能な複数個の通信チャネル）を示す情報である。ＮＦＣＩ／Ｆ１１８では、公開鍵送信指示が取得されることに応じて、公開鍵送信指示内の公開鍵ＰＰＫ１とチャネルリストとＭＡＣアドレス「ａｂｃ」とがメモリ１１９内に記憶される。
【００４２】
次いで、Ｔ１２４では、プリンタ１００は、不可能状態から可能状態に移行する。不可能状態は、Ｗｉ−ＦｉＩ／Ｆ１１６が、端末１０からＤＰＰ  Ａｕｔｈｅｎｔｉｃａｔｉｏｎ  Ｒｅｑｕｅｓｔ（以下では、単に「ＡＲｅｑ」と記載する）（後述の図４のＴ２００参照）を受信しても、ＤＰＰ  Ａｕｔｈｅｎｔｉｃａｔｉｏｎ  Ｒｅｓｐｏｎｓｅ（以下では、単に「ＡＲｅｓ」と記載する）（後述のＴ２１０参照）を送信しない状態である。可能状態は、Ｗｉ−ＦｉＩ／Ｆ１１６が、端末１０からＡＲｅｑを受信することに応じて、ＡＲｅｓを端末１０に送信する状態である。即ち、プリンタ１００は、不可能状態から可能状態に移行することによって、Ａｕｔｈ（図２のＴ２５参照）を実行可能な状態になる。具体的には、本実施例では、不可能状態は、Ｗｉ−ＦｉＩ／Ｆ１１６が、外部から信号を受信しても、当該信号をＣＰＵ１３２に供給しない状態である。また、可能状態は、Ｗｉ−ＦｉＩ／Ｆ１１６が、外部から信号を受信することに応じて、当該信号をＣＰＵ１３２に供給し、当該信号に対する応答を送信する状態である。可能状態は、ＣＰＵ１３２が外部から受信した信号を処理する状態であるので、不可能状態と比較して処理負荷が高い。なお、変形例では、不可能状態がＷｉ−ＦｉＩ／Ｆ１１６に通電されていない状態であり、可能状態がＷｉ−ＦｉＩ／Ｆ１１６に通電されている状態であってもよい。また、別の変形例では、不可能状態は、Ｗｉ−ＦｉＩ／Ｆ１１６が、外部からＡＲｅｑを受信しても、ＡＲｅｑが受信されたことを示す通知をＣＰＵ１３２に供給しない状態であり、可能状態は、Ｗｉ−ＦｉＩ／Ｆ１１６が、外部からＡＲｅｑを受信することに応じて、ＡＲｅｑが受信されたことを示す通知をＣＰＵ１３２に供給する状態であってもよい。
【００４３】
Ｔ１３０〜Ｔ１３３は、Ｔ１１０〜Ｔ１１３と同様である。Ｔ１３４では、プリンタ１００のＮＦＣＩ／Ｆ１１８は、Ｔ１３２で確立されたＮＦＣ接続を利用して、メモリ１１９内の公開鍵ＰＰＫ１とチャネルリストとＭＡＣアドレス「ａｂｃ」とを端末１０のＮＦＣＩ／Ｆ１８に送信する。この結果、プリンタ１００の公開鍵ＰＰＫ１とチャネルリストとＭＡＣアドレス「ａｂｃ」とが端末１０によって取得される。
【００４４】
Ｔ１３６では、端末１０は、プリンタ１００とＡＰ６との間にＷｉ−Ｆｉ接続を確立するための接続処理を実行するのか否かをユーザに問い合せる端末側確認画面ＴＣＳを表示する。画面ＴＣＳは、接続処理を実行することを示すＹＥＳボタンと、接続処理を実行しないことを示すＮＯボタンと、を含む。Ｔ１４０では、端末１０は、ユーザから画面ＴＣＳ内のＹＥＳボタンの選択を受け付ける。Ｔ１４０の処理が終了すると、ケースＡのＢＳの処理が終了する。
【００４５】
（Ａｕｔｈｅｎｔｉｃａｔｉｏｎ（Ａｕｔｈ）；図４）
続いて、図４を参照して、図２のＴ２５のＡｕｔｈの処理を説明する。端末１０は、図３のＴ１４０において、画面ＴＣＳ内のＹＥＳボタンがユーザによって選択されることに応じて、Ｔ１４１において、端末１０の公開鍵ＴＰＫ１及び秘密鍵ｔｓｋ１を生成する。次いで、端末１０は、Ｔ１４２において、ＥＣＤＨ（Elliptic curve Diffie-Hellman key exchangeの略）に従って、生成済みの秘密鍵ｔｓｋ１と、図３のＴ１３４で取得されたプリンタ１００の公開鍵ＰＰＫ１と、を用いて、共有鍵ＳＫ１を生成する。そして、端末１０は、Ｔ１４４において、生成済みの共有鍵ＳＫ１を用いてランダム値ＲＶ１を暗号化して、暗号化データＥＤ１を生成する。
【００４６】
Ｔ２００では、端末１０は、Ｗｉ−ＦｉＩ／Ｆ１６を介して、図３のＴ１３４で取得されたＭＡＣアドレス「ａｂｃ」を送信先として、ＡＲｅｑをプリンタ１００に送信する。ＡＲｅｑは、認証の実行をプリンタ１００に要求する信号である。ここで、端末１０は、Ｔ１３４で取得されたチャネルリスト内の複数個の通信チャネルを順次利用して、ＡＲｅｑをプリンタ１００に送信することを繰り返す。当該ＡＲｅｑは、Ｔ１４１で生成された端末１０の公開鍵ＴＰＫ１と、Ｔ１４４で生成された暗号化データＥＤ１と、端末１０のｃａｐａｂｉｌｉｔｙと、を含む。
【００４７】
ｃａｐａｂｉｌｉｔｙは、ＤＰＰ方式をサポートしている機器において予め指定されている情報であり、ＤＰＰ方式のＣｏｎｆｉｇｕｒａｔｏｒのみとして動作可能であることを示す値と、ＤＰＰ方式のＥｎｒｏｌｌｅｅのみとして動作可能であることを示す値と、Ｃｏｎｆｉｇｕｒａｔｏｒ及びＥｎｒｏｌｌｅｅのどちらとしても動作可能であることを示す値と、のいずれか１個の値を含む。なお、Ｃｏｎｆｉｇｕｒａｔｏｒは、Ｃｏｎｆｉｇ（図２のＴ３０）において、ＮＡ（図２のＴ３５）で利用されるＣＯをＥｎｒｏｌｌｅｅに送信するデバイスを意味する。一方、Ｅｎｒｏｌｌｅｅは、Ｃｏｎｆｉｇにおいて、ＣｏｎｆｉｇｕｒａｔｏｒからＮＡで利用されるＣＯを受信するデバイスを意味する。上記のように、本実施例では、端末１０が第１又は第２のＣＯを生成してＡＰ６又はプリンタ１００に送信する。従って、端末１０のｃａｐａｂｉｌｉｔｙは、Ｃｏｎｆｉｇｕｒａｔｏｒのみとして動作可能であることを示す値を含む。
【００４８】
プリンタ１００は、Ｔ２００において、端末１０から、Ｗｉ−ＦｉＩ／Ｆ１１６を介して、ＡＲｅｑを受信する。上記のように、当該ＡＲｅｑは、プリンタ１００のＭＡＣアドレス「ａｂｃ」を送信先として送信される。従って、プリンタ１００は、端末１０から当該ＡＲｅｑを適切に受信することができる。
【００４９】
また、プリンタ１００は、図３のＴ１２４で可能状態に移行すると、チャネルリスト内の複数個の通信チャネルのうちの１個の通信チャネルが利用されたＡＲｅｑを受信することを監視する。上記のように、Ｔ２００のＡＲｅｑは、チャネルリスト内の複数個の通信チャネルを順次利用して送信される。従って、プリンタ１００は、端末１０から当該ＡＲｅｑを適切に受信することができる。
【００５０】
次いで、プリンタ１００は、ＡＲｅｑの送信元（即ち端末１０）を認証するための以下の処理を実行する。具体的には、まず、プリンタ１００は、Ｔ２０２において、ＥＣＤＨに従って、当該ＡＲｅｑ内の端末１０の公開鍵ＴＰＫ１と、メモリ１３４内に予め記憶されているプリンタ１００の秘密鍵ｐｓｋ１と、を用いて、共有鍵ＳＫ１を生成する。ここで、Ｔ１４２で端末１０によって生成される共有鍵ＳＫ１と、Ｔ２０４でプリンタ１００によって生成される共有鍵ＳＫ１と、は同じである。従って、プリンタ１００は、Ｔ２０４において、生成済みの共有鍵ＳＫ１を用いて、当該ＡＲｅｑ内の暗号化データＥＤ１を適切に復号することができ、この結果、ランダム値ＲＶ１を取得することができる。プリンタ１００は、暗号化データＥＤ１の復号が成功する場合には、当該ＡＲｅｑの送信元が図３のＴ１３２でＮＦＣ接続が確立されたデバイスであると判断し、即ち、認証が成功したと判断し、Ｔ２０６以降の処理を実行する。一方、プリンタ１００は、仮に、暗号化データＥＤ１の復号が成功しない場合には、当該ＡＲｅｑの送信元がＴ１３２でＮＦＣ接続が確立されたデバイスでないと判断し、即ち、認証が失敗したと判断し、Ｔ２０６以降の処理を実行しない。
【００５１】
プリンタ１００は、Ｔ２０６において、プリンタ１００の新たな公開鍵ＰＰＫ２及び新たな秘密鍵ｐｓｋ２を生成する。なお、変形例では、公開鍵ＰＰＫ２及び秘密鍵ｐｓｋ２は、メモリ１３４に予め記憶されていてもよい。次いで、プリンタ１００は、Ｔ２０７において、ＥＣＤＨに従って、Ｔ２００のＡＲｅｑ内の端末１０の公開鍵ＴＰＫ１と、生成済みのプリンタ１００の秘密鍵ｐｓｋ２と、を用いて、共有鍵ＳＫ２を生成する。そして、プリンタ１００は、Ｔ２０８において、生成済みの共有鍵ＳＫ２を用いて、取得済みのランダム値ＲＶ１及び新たなランダム値ＲＶ２を暗号化して、暗号化データＥＤ２を生成する。
【００５２】
Ｔ２１０では、プリンタ１００は、Ｗｉ−ＦｉＩ／Ｆ１１６を介して、ＡＲｅｓを端末１０に送信する。当該ＡＲｅｓは、Ｔ２０６で生成されたプリンタ１００の公開鍵ＰＰＫ２と、Ｔ２０８で生成された暗号化データＥＤ２と、プリンタ１００のｃａｐａｂｉｌｉｔｙと、を含む。当該ｃａｐａｂｉｌｉｔｙは、Ｅｎｒｏｌｌｅｅのみとして動作可能であることを示す値を含む。
【００５３】
端末１０は、Ｔ２１０において、プリンタ１００から、Ｗｉ−ＦｉＩ／Ｆ１６を介して、ＡＲｅｓを受信することに応じて、当該ＡＲｅｓの送信元（即ちプリンタ１００）を認証するための以下の処理を実行する。具体的には、まず、端末１０は、Ｔ２１２において、ＥＣＤＨに従って、Ｔ１４１で生成された端末１０の秘密鍵ｔｓｋ１と、当該ＡＲｅｓ内のプリンタ１００の公開鍵ＰＰＫ２と、を用いて、共有鍵ＳＫ２を生成する。ここで、Ｔ２０７でプリンタ１００によって生成される共有鍵ＳＫ２と、Ｔ２１２で端末１０によって生成される共有鍵ＳＫ２と、は同じである。従って、端末１０は、Ｔ２１４において、生成済みの共有鍵ＳＫ２を用いて、当該ＡＲｅｓ内の暗号化データＥＤ２を適切に復号することができ、この結果、ランダム値ＲＶ１及びＲＶ２を取得することができる。端末１０は、暗号化データＥＤ２の復号が成功する場合には、当該ＡＲｅｓの送信元が図３のＴ１３２でＮＦＣ接続が確立されたデバイスであると判断し、即ち、認証が成功したと判断し、Ｔ２２０以降の処理を実行する。一方、端末１０は、仮に、暗号化データＥＤ２の復号が成功しない場合には、当該ＡＲｅｓの送信元がＴ１３２でＮＦＣ接続が確立されたデバイスでないと判断し、即ち、認証が失敗したと判断し、Ｔ２２０以降の処理を実行しない。
【００５４】
Ｔ２２０において、端末１０は、Ｗｉ−ＦｉＩ／Ｆ１６を介して、Ｃｏｎｆｉｒｍをプリンタ１００に送信する。Ｃｏｎｆｉｒｍは、端末１０がＣｏｎｆｉｇｕｒａｔｏｒとして動作し、かつ、プリンタ１００がＥｎｒｏｌｌｅｅとして動作することを示す情報を含む。この結果、Ｔ２２２において、Ｃｏｎｆｉｇｕｒａｔｏｒとして動作することが端末１０によって決定され、Ｔ２２４において、Ｅｎｒｏｌｌｅｅとして動作することがプリンタ１００によって決定される。Ｔ２２４の処理が終了すると、図４の処理が終了する。
【００５５】
（Ｃｏｎｆｉｇｕｒａｔｉｏｎ（Ｃｏｎｆｉｇ）；図５）
続いて、図５を参照して、図２のＴ３０のＣｏｎｆｉｇの処理を説明する。Ｔ３００では、プリンタ１００は、Ｗｉ−ＦｉＩ／Ｆ１１６を介して、ＤＰＰ  Ｃｏｎｆｉｇｕｒａｔｉｏｎ  Ｒｅｑｕｅｓｔ（以下では、単に「ＣＲｅｑ」と記載する）を端末１０に送信する。当該ＣＲｅｑは、ＣＯ（即ちプリンタ１００とＡＰ６との間のＷｉ−Ｆｉ接続を確立するための情報）の送信を要求する信号である。
【００５６】
端末１０は、Ｔ３００において、プリンタ１００から、Ｗｉ−ＦｉＩ／Ｆ１６を介して、ＣＲｅｑを受信する。この場合、端末１０は、Ｔ３０１において、端末１０のメモリ（図示省略）から、グループＩＤ「Ｇｒｏｕｐ１」と公開鍵ＴＰＫ２と秘密鍵ｔｓｋ２とを取得する。上述したように、端末１０は、図２のＴ１５のＣｏｎｆｉｇをＡＰ６と実行済みであり、この際に、グループＩＤ「Ｇｒｏｕｐ１」と公開鍵ＴＰＫ２と秘密鍵ｔｓｋ２とを生成してメモリに記憶する。グループＩＤ「Ｇｒｏｕｐ１」は、プリンタ１００とＡＰ６との間のＷｉ−Ｆｉ接続が確立されることによって形成される無線ネットワークを識別する情報である。なお、変形例では、ユーザによって指定された文字列がグループＩＤとして利用されてもよい。即ち、Ｔ３０１では、端末１０は、図２のＴ１５で記憶された各情報を取得する。次いで、端末１０は、Ｔ３０２において、第２のＣＯ（図２のＴ３０参照）を生成する。具体的には、端末１０は、以下の各処理を実行する。
【００５７】
端末１０は、端末１０の公開鍵ＴＰＫ２をハッシュ化することによって、ハッシュ値ＨＶを生成する。また、端末１０は、ハッシュ値ＨＶと、グループＩＤ「Ｇｒｏｕｐ１」と、図４のＴ２１０のＡＲｅｓ内のプリンタ１００の公開鍵ＰＰＫ２と、の組み合わせをハッシュ化することによって、特定値を生成する。そして、端末１０は、ＥＣＤＳＡ（Elliptic Curve Digital Signature Algorithmの略）に従って、端末１０の秘密鍵ｔｓｋ２を用いて、生成済みの特定値を暗号化することによって、電子署名ＤＳ１を生成する。この結果、端末１０は、ハッシュ値ＨＶと、グループＩＤ「Ｇｒｏｕｐ１」と、プリンタ１００の公開鍵ＰＰＫ２と、電子署名ＤＳ１と、を含むプリンタ用Ｓｉｇｎｅｄ−Ｃｏｎｎｅｃｔｏｒ（以下では、Ｓｉｇｎｅｄ−Ｃｏｎｎｅｃｔｏｒのことを単に「ＳＣｏｎｔ」と記載する）を生成することができる。そして、端末１０は、プリンタ用ＳＣｏｎｔと、端末１０の公開鍵ＴＰＫ２と、を含む第２のＣＯを生成する。
【００５８】
Ｔ３１０では、端末１０は、Ｗｉ−ＦｉＩ／Ｆ１６を介して、第２のＣＯを含むＤＰＰ  Ｃｏｎｆｉｇｕｒａｔｉｏｎ  Ｒｅｓｐｏｎｓｅ（以下では、単に「ＣＲｅｓ」と記載する）をプリンタ１００に送信する。
【００５９】
プリンタ１００は、Ｔ３１０において、端末１０から、Ｗｉ−ＦｉＩ／Ｆ１１６を介して、ＣＲｅｓを受信する。この場合、プリンタ１００は、Ｔ３１２において、当該ＣＲｅｓ内の第２のＣＯをメモリ１３４に記憶する。Ｔ３１２の処理が終了すると、図５の処理が終了する。
【００６０】
（Ｎｅｔｗｏｒｋ  Ａｃｃｅｓｓ（ＮＡ）；図６）
続いて、図６を参照して、プリンタ１００とＡＰ６との間で実行される図２のＴ３５のＮＡの処理を説明する。上記のように、図２のＴ２０〜Ｔ３０と同様に、図２のＴ５〜Ｔ１５の処理が端末１０及びＡＰ６の間で実行済みである。ただし、ＡＰ６は、図３のＴ１０５〜Ｔ１３４の処理を実行しない。ＡＰ６は、ＡＰ６の公開鍵ＡＰＫ１及び秘密鍵ａｓｋ１を予め記憶している。そして、ＡＰ６の公開鍵ＡＰＫ１と、ＡＰ６のチャネルリストと、ＡＰ６のＭＡＣアドレスと、をコード化することによって得られるＱＲコードが、ＡＰ６の筐体に貼り付けられている。端末１０が当該ＱＲコードを撮影することによって、端末１０及びＡＰ６の間でＴ１３６以降の各処理と同様の各処理が実行される。この結果、ＡＰ６は、ＡＰ６の公開鍵ＡＰＫ２及び秘密鍵ａｓｋ２を記憶し（図４のＴ２０６参照）、さらに、端末１０から受信される第１のＣＯを記憶する（図５のＴ３１２参照）。第１のＣＯは、ＡＰ用ＳＣｏｎｔと、端末１０の公開鍵ＴＰＫ２と、を含む。当該公開鍵ＴＰＫ２は、第２のＣＯに含まれる公開鍵ＴＰＫ２と同じである。また、ＡＰ用ＳＣｏｎｔは、ハッシュ値ＨＶと、グループＩＤ「Ｇｒｏｕｐ１」と、ＡＰ６の公開鍵ＡＰＫ２と、電子署名ＤＳ２と、を含む。当該ハッシュ値ＨＶ及び当該グループＩＤ「Ｇｒｏｕｐ１」は、それぞれ、第２のＣＯに含まれるハッシュ値ＨＶ及びグループＩＤ「Ｇｒｏｕｐ１」と同じである。電子署名ＤＳ２は、ハッシュ値ＨＶとグループＩＤ「Ｇｒｏｕｐ１」と公開鍵ＡＰＫ２との組み合わせをハッシュ化することによって得られる特定値が端末１０の秘密鍵ｔｓｋ２によって暗号化された情報であり、第２のＣＯに含まれる電子署名ＤＳ１とは異なる値である。
【００６１】
プリンタ１００は、Ｔ４００において、Ｗｉ−ＦｉＩ／Ｆ１１６を介して、プリンタ用ＳＣｏｎｔを含むＤＰＰ  Ｐｅｅｒ  Ｄｉｓｃｏｖｅｒｙ  Ｒｅｑｕｅｓｔ（以下では、単に「ＤＲｅｑ」と記載する）をＡＰ６に送信する。当該ＤＲｅｑは、認証の実行と、ＡＰ用ＳＣｏｎｔの送信と、をＡＰ６に要求する信号である。
【００６２】
ＡＰ６は、Ｔ４００において、プリンタ１００からＤＲｅｑを受信することに応じて、ＤＲｅｑの送信元（即ちプリンタ１００）、及び、ＤＲｅｑ内の各情報（即ち、ハッシュ値ＨＶ、「Ｇｒｏｕｐ１」、及び、公開鍵ＰＰＫ２）を認証するための処理を実行する。具体的には、ＡＰ６は、Ｔ４０２において、まず、受信済みのプリンタ用ＳＣｏｎｔ内のハッシュ値ＨＶ及びグループＩＤ「Ｇｒｏｕｐ１」が、それぞれ、記憶済みの第１のＣＯに含まれるＡＰ用ＳＣｏｎｔ内のハッシュ値ＨＶ及びグループＩＤ「Ｇｒｏｕｐ１」に一致するのか否かに関する第１のＡＰ判断処理を実行する。図６のケースでは、ＡＰ６は、第１のＡＰ判断処理で「一致する」と判断するので、ＤＲｅｑの送信元（即ちプリンタ１００）の認証が成功したと判断する。なお、受信済みのプリンタ用ＳＣｏｎｔ内のハッシュ値ＨＶと、記憶済みの第１のＣＯに含まれるＡＰ用ＳＣｏｎｔ内のハッシュ値ＨＶと、が一致するということは、プリンタ用ＳＣｏｎｔ及びＡＰ用ＳＣｏｎｔが、同じ装置（即ち、端末１０）によって生成されたことを意味する。従って、ＡＰ６は、受信済みのプリンタ用ＳＣｏｎｔの生成元（即ち、端末１０）の認証が成功したとも判断する。さらに、ＡＰ６は、記憶済みの第１のＣＯに含まれる端末１０の公開鍵ＴＰＫ２を用いて、受信済みのプリンタ用ＳＣｏｎｔ内の電子署名ＤＳ１を復号する。図６のケースでは、電子署名ＤＳ１の復号が成功するので、ＡＰ６は、電子署名ＤＳ１を復号することによって得られた特定値と、受信済みのプリンタ用ＳＣｏｎｔ内の各情報（即ち、ハッシュ値ＨＶ、「Ｇｒｏｕｐ１」、及び、公開鍵ＰＰＫ２）をハッシュ化することによって得られる値と、が一致するのか否かに関する第２のＡＰ判断処理を実行する。図６のケースでは、ＡＰ６は、第２のＡＰ判断処理で「一致する」と判断するので、ＤＲｅｑ内の各情報の認証が成功したと判断し、Ｔ４０４以降の処理を実行する。第２のＡＰ判断処理で「一致する」と判断されることは、第２のＣＯがプリンタ１００に記憶された後に、受信済みのプリンタ用ＳＣｏｎｔ内の各情報（即ち、ハッシュ値ＨＶ、「Ｇｒｏｕｐ１」、及び、公開鍵ＰＰＫ２）が第三者によって改ざんされていないことを意味する。一方、第１のＡＰ判断処理で「一致しない」と判断される場合、電子署名ＤＳ１の復号が失敗する場合、又は、第２のＡＰ判断処理で「一致しない」と判断される場合には、ＡＰ６は、認証が失敗したと判断し、Ｔ４０４以降の処理を実行しない。
【００６３】
次いで、ＡＰ６は、Ｔ４０４において、ＥＣＤＨに従って、取得済みのプリンタ１００の公開鍵ＰＰＫ２と、記憶済みのＡＰ６の秘密鍵ａｓｋ２と、を用いて、接続キー（即ち共有鍵）ＣＫを生成する。
【００６４】
Ｔ４１０では、ＡＰ６は、ＡＰ用ＳＣｏｎｔを含むＤＰＰ  Ｐｅｅｒ  Ｄｉｓｃｏｖｅｒｙ  Ｒｅｓｐｏｎｓｅ（以下では、単に「ＤＲｅｓ」と記載する）をプリンタ１００に送信する。
【００６５】
プリンタ１００は、Ｔ４１０において、Ｗｉ−ＦｉＩ／Ｆ１１６を介して、ＡＰ６からＤＲｅｓを受信することに応じて、ＤＲｅｓの送信元（即ちＡＰ６）、及び、ＤＲｅｓ内の各情報（即ち、ハッシュ値ＨＶ、「Ｇｒｏｕｐ１」、及び、公開鍵ＡＰＫ２）を認証するための処理を実行する。具体的には、プリンタ１００は、Ｔ４１２において、まず、受信済みのＡＰ用ＳＣｏｎｔ内のハッシュ値ＨＶ及びグループＩＤ「Ｇｒｏｕｐ１」が、それぞれ、記憶済みの第２のＣＯに含まれるプリンタ用ＳＣｏｎｔ内のハッシュ値ＨＶ及びグループＩＤ「Ｇｒｏｕｐ１」に一致するのか否かに関する第１のＰＲ判断処理を実行する。図６のケースでは、プリンタ１００は、第１のＰＲ判断処理で「一致する」と判断するので、ＤＲｅｓの送信元（即ちＡＰ６）の認証が成功したと判断する。なお、受信済みのＡＰ用ＳＣｏｎｔ内のハッシュ値ＨＶと、記憶済みの第２のＣＯに含まれるプリンタ用ＳＣｏｎｔ内のハッシュ値ＨＶと、が一致するということは、プリンタ用ＳＣｏｎｔ及びＡＰ用ＳＣｏｎｔが、同じ装置（即ち、端末１０）によって生成されたことを意味する。従って、プリンタ１００は、受信済みのＡＰ用ＳＣｏｎｔの生成元（即ち、端末１０）の認証が成功したとも判断する。さらに、プリンタ１００は、記憶済みの第２のＣＯに含まれる端末１０の公開鍵ＴＰＫ２を用いて、受信済みのＡＰ用ＳＣｏｎｔ内の電子署名ＤＳ２を復号する。図６のケースでは、電子署名ＤＳ２の復号が成功するので、プリンタ１００は、電子署名ＤＳ２を復号することによって得られた特定値と、受信済みのＡＰ用ＳＣｏｎｔ内の各情報（即ち、ハッシュ値ＨＶ、「Ｇｒｏｕｐ１」、及び、公開鍵ＡＰＫ２）をハッシュ化することによって得られる値と、が一致するのか否かに関する第２のＰＲ判断処理を実行する。図６のケースでは、プリンタ１００は、第２のＰＲ判断処理で「一致する」と判断するので、ＤＲｅｓ内の各情報の認証が成功したと判断し、Ｔ４１４以降の処理を実行する。第２のＰＲ判断処理で「一致する」と判断されることは、第１のＣＯがＡＰ６に記憶された後に、ＡＰ用ＳＣｏｎｔ内の各情報（即ち、ハッシュ値ＨＶ、「Ｇｒｏｕｐ１」、及び、公開鍵ＡＰＫ２）が第三者によって改ざんされていないことを意味する。一方、第１のＰＲ判断処理で「一致しない」と判断される場合、電子署名ＤＳ２の復号が失敗する場合、又は、第２のＰＲ判断処理で「一致しない」と判断される場合には、プリンタ１００は、認証が失敗したと判断し、Ｔ４１４以降の処理を実行しない。
【００６６】
プリンタ１００は、Ｔ４１４において、ＥＣＤＨに従って、記憶済みのプリンタ１００の秘密鍵ｐｓｋ２と、受信済みのＡＰ用ＳＣｏｎｔ内のＡＰ６の公開鍵ＡＰＫ２と、を用いて、接続キーＣＫを生成する。ここで、Ｔ４０４でＡＰ６によって生成される接続キーＣＫと、Ｔ４１４でプリンタ１００によって生成される接続キーＣＫと、は同じである。これにより、Ｗｉ−Ｆｉ接続を確立するための接続キーＣＫがプリンタ１００及びＡＰ６の間で共有される。Ｔ４１４が終了すると、図６の処理が終了する。
【００６７】
上述したように、接続キーＣＫがプリンタ１００及びＡＰ６の間で共有された後に、図２のＴ４０において、プリンタ１００及びＡＰ６は、接続キーＣＫを利用して、４ｗａｙ−ｈａｎｄｓｈａｋｅの通信を実行する。この結果、プリンタ１００とＡＰ６との間にＷｉ−Ｆｉ接続が確立される。なお、上述したように、プリンタ１００は、プリンタ１００のチャネルリストに含まれる複数個の通信チャネルのうちの１個の通信チャネルを利用して、端末１０から図４のＴ２００のＡＲｅｑを受信する。即ち、プリンタ１００は、プリンタ１００と端末１０との双方が利用可能な通信チャネルを利用して、端末１０からＴ２００のＡＲｅｑを受信する。一方、図２のＴ４０では、プリンタ１００は、プリンタ１００とＡＰ６との双方が利用可能な通信チャネルを利用して、Ｗｉ−Ｆｉ接続をＡＰ６と確立する。ここで、端末１０が利用可能な通信チャネルと、ＡＰ６が利用可能な通信チャネルと、は異なる場合がある。本実施例では、プリンタ１００が図４のＴ２００で端末１０からＡＲｅｑを受信するための通信チャネルと、プリンタ１００が図２のＴ４０でＷｉ−Ｆｉ接続をＡＰ６と確立するための通信チャネルと、が異なる。ただし、変形例では、前者の通信チャネルと後者の通信チャネルとは同じでもよい。
【００６８】
（ケースＢのＢｏｏｔｓｔｒａｐｐｉｎｇ（ＢＳ）；図７）
続いて、図７を参照して、図２のＴ２０のＢＳのケースＢの処理を説明する。ケースＢは、図２のＴ２０〜Ｔ４０が実行される前の状態、即ち、プリンタ１００のメモリ１３４が第２のＣＯをまだ記憶していない状態である。また、ケースＢは、端末１０においてアプリ４０が起動された後（図３のＴ１１８）に、端末１０がユーザによってプリンタ１００に再び近づけられない状況を想定している。
【００６９】
Ｔ５００〜Ｔ５２４は、図３のＴ１００〜Ｔ１２４と同様である。本ケースでは、端末１０がユーザによってプリンタ１００に再び近づけられないので、Ｔ１３０以降の処理が実行されない。即ち、プリンタ１００の公開鍵ＰＰＫ１とチャネルリストとＭＡＣアドレス「ａｂｃ」とが端末１０によって取得されないので、端末１０からＡＲｅｑがプリンタ１００に送信されない。この場合、プリンタ１００は、Ｔ５２６において、Ｔ５２４で可能状態に移行してから所定時間以内にＡＲｅｑを受信しなかったと判断し、Ｔ５２８において、可能状態から不可能状態に移行する。これにより、プリンタ１００において長時間に亘って可能状態が継続することを抑制することができる。従って、プリンタ１００の処理負荷を軽減することができる。そして、Ｔ５３０では、プリンタ１００は、端末１０からＡＲｅｑが受信されなかったことを示すエラー画面を表示部１１４に表示させる。Ｔ５３０の処理が終了すると、図７の処理が終了し、ＤＰＰ方式に従った通信が中止される。
【００７０】
（ケースＣのＢｏｏｔｓｔｒａｐｐｉｎｇ（ＢＳ）；図８）
続いて、図８を参照して、ＢＳの他のケースＣの処理を説明する。ケースＣは、図２のＴ２０〜Ｔ４０が実行された後の状態、即ち、プリンタ１００のメモリ１３４が第２のＣＯを記憶済みである状態である。
【００７１】
Ｔ６００及びＴ６０３は、図３のＴ１００及びＴ１０５と同様である。本ケースでは、プリンタ１００のメモリ１３４が第２のＣＯを記憶しているので、プリンタ１００は、ＮＦＣＩ／Ｆ１１８の動作モードを非設定モードから設定モードに移行させない。プリンタ１００は、第２のＣＯを記憶している状況では、第２のＣＯを利用して、Ｗｉ−Ｆｉ接続をＡＰ６と確立することができる。従って、プリンタ１００においてＢＳが実行される可能性が低い。プリンタ１００は、このような状況において、ＮＦＣＩ／Ｆ１１８の動作モードを設定モードに移行させない、即ち、ＮＦＣＩ／Ｆ１１８に通電しないので、消費電力を軽減することができる。
【００７２】
ユーザは、プリンタ１００が第２のＣＯを記憶している状態において、例えば、ＡＰ６とは異なるＡＰとプリンタ１００との間のＷｉ−Ｆｉ接続の確立を望む可能性がある。この場合、ユーザは、Ｔ６０４において、メニュー画面ＭＳ内の設定ボタンを選択する。この場合、プリンタ１００は、Ｔ６０５において、設定画面ＳＳを表示部１１４に表示させる。画面ＳＳは、プリンタ１００の印刷設定を変更するための印刷設定ボタンと、ＮＦＣＩ／Ｆ１１８の動作モードを変更するためのモード移行ボタンと、を含む。そして、Ｔ６０６では、ユーザは、画面ＳＳ内のモード移行ボタンを選択する。この場合、プリンタ１００は、Ｔ６０７において、ＮＦＣＩ／Ｆ１１８の動作モードを非設定モードから設定モードに移行させる。これにより、端末１０がユーザによってプリンタ１００に近付けられることに応じて、図３のＴ１１０以降の処理が実行される。Ｔ６０９は、図３のＴ１０９と同様である。
【００７３】
なお、プリンタ１００は、ＤＰＰ方式を利用せずに、通常のＷｉ−Ｆｉ方式（即ちＳＳＩＤ及びパスワードを利用する方式）に従って、ＡＰ６とのＷｉ−Ｆｉ接続を確立することもできる。この場合、プリンタ１００のメモリ１３４は、ＡＰ６とのＷｉ−Ｆｉ接続を確立するための無線設定情報（即ちＳＳＩＤ及びパスワード）を記憶する。このような状態でプリンタ１００の電源がＯＮされても、プリンタ１００は、図８のケースＣと同様に、ＮＦＣＩ／Ｆ１１８の動作モードを非設定モードから設定モードに移行させない。プリンタ１００が無線設定情報を利用してＡＰ６とＷｉ−Ｆｉ接続を確立することができるからである。このような状況でもＮＦＣＩ／Ｆ１１８に通電されないので、消費電力を軽減することができる。
【００７４】
（端末１０との接続のための処理；図９）
続いて、図９を参照して、端末１０とプリンタ１００との間にＷｉ−Ｆｉ接続を確立するための処理を説明する。Ｔ７００〜Ｔ７１９は、図３のＴ１００〜Ｔ１１９と同様である。プリンタ１００は、Ｔ７２０において、選択画面ＳＬＳ内の「端末との接続」ボタンがユーザによって選択されることに応じて、Ｔ７２１において、Ｇ／Ｏ状態に移行し、プリンタ１００がＧ／Ｏとして動作する無線ネットワークで利用されるＳＳＩＤ「ｘｘｘ」及びパスワードを生成する。そして、プリンタ１００は、Ｔ７２２において、ＳＳＩＤの送信を指示するＳＳＩＤ送信指示をＮＦＣＩ／Ｆ１１８に供給する。当該ＳＳＩＤ送信指示は、生成済みのＳＳＩＤ「ｘｘｘ」を含む。この結果、ＮＦＣＩ／Ｆ１１８では、ＳＳＩＤ「ｘｘｘ」がメモリ１１９内に記憶される。
【００７５】
Ｔ７３０〜Ｔ７３３は、図３のＴ１３０〜Ｔ１３３と同様である。Ｔ７３４では、プリンタ１００のＮＦＣＩ／Ｆ１１８は、Ｔ７３２で確立されたＮＦＣ接続を利用して、メモリ１１９内のＳＳＩＤ「ｘｘｘ」を端末１０のＮＦＣＩ／Ｆ１８に送信する。この結果、ＳＳＩＤ「ｘｘｘ」が端末１０によって取得される。
【００７６】
Ｔ７４０では、端末１０が接続対象の装置（即ち、プリンタ１００）を検索するための検索処理が実行される。具体的には、以下の処理が実行される。まず、プリンタ１００は、Ｗｉ−ＦｉＩ／Ｆ１１６を介して、端末１０からブロードキャストによって送信されたＰｒｏｂｅ  Ｒｅｑｕｅｓｔ（以下では、単に「ＰＲｅｑ」と記載する）を受信し、Ｐｒｏｂｅ  Ｒｅｓｐｏｎｓｅ（以下では、単に「ＰＲｅｓ」と記載する）を端末１０に送信する。当該ＰＲｅｓは、ＳＳＩＤ「ｘｘｘ」を含む。
【００７７】
端末１０は、ＰＲｅｑをブロードキャストによって送信すると、プリンタ１００を含む１個以上のデバイスのそれぞれからＰＲｅｓを受信する。この場合、端末１０は、１個以上のＰＲｅｓの中から、Ｔ７３４で取得されたＳＳＩＤ「ｘｘｘ」を含むＰＲｅｓを特定することによって、接続対象のプリンタ１００を特定する。そして、端末１０は、Ｗｉ−ＦｉＩ／Ｆ１６を介して、特定済みのプリンタ１００のＳＳＩＤ「ｘｘｘ」を含むＰＲｅｑをプリンタ１００に送信する（即ちユニキャストによって送信する）。
【００７８】
プリンタ１００は、Ｗｉ−ＦｉＩ／Ｆ１１６を介して、端末１０からＳＳＩＤ「ｘｘｘ」を含むＰＲｅｑを受信することに応じて、ＰＲｅｓを端末１０に送信する。
【００７９】
Ｔ７５０では、プリンタ１００は、端末１０との各種通信（Ａｓｓｏｃｉａｔｉｏｎ、ＷＰＳ  Ｎｅｇｏｔｉａｔｉｏｎ、４ｗａｙ−ｈａｎｄｓｈａｋｅ）を実行する。プリンタ１００は、ＷＰＳ  Ｎｅｇｏｔｉａｔｉｏｎにおいて、生成済みのＳＳＩＤ「ｘｘｘ」及び生成済みのパスワードを含む無線設定情報を端末１０に送信する。そして、プリンタ１００は、ＳＳＩＤ「ｘｘｘ」及びパスワードを利用して、端末１０との４ｗａｙ−ｈａｎｄｓｈａｋｅの通信を実行して、端末１０とのＷｉ−Ｆｉ接続を確立する。これにより、プリンタは、Ｔ７６０において、ユーザがプリンタ１００に印刷を実行させるための印刷操作を端末１０に実行することに応じて、Ｔ７６２において、Ｗｉ−ＦｉＩ／Ｆ１１６を介して、端末１０から印刷データを受信することができる。そして、プリンタ１００は、Ｔ７６４において、受信済みの印刷データに従った印刷を印刷実行部１２０に実行させる。Ｔ７６４の処理が終了すると、図９の処理が終了する。
【００８０】
（本実施例の効果）
本実施例では、プリンタ１００は、端末１０とのＮＦＣ接続が確立される場合（図３のＴ１１２）に、選択画面ＳＬＳを表示する（Ｔ１１６）。画面ＳＬＳ内の「ＡＰとの接続」ボタンがユーザによって選択される場合（Ｔ１２０）に、公開鍵送信指示がＮＦＣＩ／Ｆ１１８に供給される（Ｔ１２２）。この結果、ＮＦＣＩ／Ｆ１１８は、公開鍵ＰＰＫ１を端末１０に送信する（Ｔ１３４）。これにより、プリンタ１００は、端末１０からＡＲｅｑを受信し（図４のＴ２００）、ＡＲｅｓを端末１０に送信し（Ｔ２１０）、端末１０から第２のＣＯを受信し（図５のＴ３１０）、第２のＣＯを利用してＡＰ６とのＷｉ−Ｆｉ接続を確立することができる（図２のＴ３５、Ｔ４０）。一方、画面ＳＬＳ内の「ＡＰとの接続」ボタンがユーザによって選択されない場合（図９のＴ７２０）に、公開鍵送信指示はＮＦＣＩ／Ｆ１１８に供給されない。これにより、ＮＦＣＩ／Ｆ１１８を介して公開鍵ＴＰＫ１が端末１０に送信されないので、プリンタ１００は、端末１０からＡＲｅｑを受信せず、ＡＰ６とのＷｉ−Ｆｉ接続を確立しない。このように、プリンタ１００とＡＰ６との間にＷｉ−Ｆｉ接続を確立させるのか否かを切り替えることができる。
【００８１】
また、本実施例では、プリンタ１００は、端末１０とのＮＦＣ接続が確立された後に（図３のＴ１１２）、不可能状態から可能状態に移行する（Ｔ１２４）。これにより、プリンタ１００は、端末１０からＡＲｅｑを受信し（図４のＴ２００）、ＡＲｅｓを端末１０に送信し（Ｔ２１０）、端末１０から第２のＣＯを受信し（図５のＴ３１０）、第２のＣＯを利用してＡＰ６とのＷｉ−Ｆｉ接続を確立することができる（図２のＴ３５、Ｔ４０）。プリンタ１００は、端末１０とのＮＦＣ接続が確立される前に、不可能状態よりも高い処理負荷である可能状態に移行しない。このために、端末１０を利用して、プリンタ１００とＡＰ６との間にＷｉ−Ｆｉ接続を確立させる技術において、プリンタ１００の処理負荷を軽減できる。
【００８２】
（対応関係）
プリンタ１００、端末１０、ＡＰ６が、それぞれ、「通信装置」、「第１の外部装置」、「第２の外部装置」の一例である。ＮＦＣＩ／Ｆ１１８、Ｗｉ−ＦｉＩ／Ｆ１１６、ＣＰＵ１３２が、それぞれ、「第１の無線インターフェース」、「第２の無線インターフェース」、「制御部」の一例である。図３のＴ１１２（又は図７のＴ５１２、図９のＴ７１２）のＮＦＣ接続、図２のＴ４０のＷｉ−Ｆｉ接続が、それぞれ、「第１の無線接続」、「第２の無線接続」の一例である。選択画面ＳＬＳ、公開鍵ＰＰＫ１、公開鍵送信指示が、それぞれ、「指示画面」、「公開鍵」、「第１の指示情報」の一例である。図２の処理が、「対象処理」の一例である。ＡＲｅｑ、ＡＲｅｓ、第２のＣＯが、それぞれ、「認証要求」、「認証応答」、「接続情報」の一例である。図２のＴ４０で確立されるＷｉ−Ｆｉ接続が、「無線接続」の一例である。
【００８３】
設定画面ＳＳ内の「ＡＰとの接続」ボタン、「端末との接続」ボタン、図９のＴ７５０のＷｉ−Ｆｉ接続が、それぞれ、「第１の選択領域」、「第２の選択領域」、「第３の無線接続」の一例である。ＮＦＣＩ／Ｆ１１８のメモリ１１９、図３のＴ１３２のＮＦＣ接続、Ｔ７３２のＮＦＣ接続、ＳＳＩＤ「ｘｘｘ」、ＳＳＩＤ送信指示が、それぞれ、「インターフェースメモリ」、「第４の無線接続」、「第５の無線接続」、「確立情報」、「第２の指示情報」の一例である。チャネルリスト、図４のＴ２００で利用される通信チャネル、図２のＴ４０で利用される通信チャネルが、それぞれ、「通信チャネル情報」、「第１の通信チャネル」、「第２の通信チャネル」の一例である。メモリ１３４内に第２のＣＯが記憶されていない状態でユーザからの電源ＯＮ操作を受け付けること、及び、メモリ１３４内に第２のＣＯが記憶されている状態でユーザからのモード移行ボタンの選択を受け付けることが、「所定条件」の一例である。非設定モード、設定モードが、それぞれ、「第１のモード」、「第２のモード」の一例である。メモリ１３４が、「制御部メモリ」の一例である。図８のＴ６０６のモード移行ボタンの選択操作が、「特定操作」の一例である。アプリ４０、アプリ起動指示が、それぞれ、「アプリケーションプログラム」、「起動情報」の一例である。ＡＰ用ＳＣｏｎｔ、第２のＣＯ内のハッシュ値ＨＶが、それぞれ、「受信情報」、「認証情報」の一例である。
【００８４】
図３のＴ１１６（又は、図７のＴ５１６、図９のＴ７１６）の処理、Ｔ１２２（又はＴ５２２）の処理、図４のＴ２００の処理、Ｔ２１０の処理、図５のＴ３１０の処理、図２のＴ３５及びＴ４０の処理が、それぞれ、「表示制御部」、「第１の供給部」、「認証要求受信部」、「認証応答送信部」、「接続情報受信部」、「第１の確立部」によって実行される処理の一例である。
【００８５】
図３のＴ１２４（又は、図７のＴ５２４）の処理、図４のＴ２００の処理、Ｔ２１０の処理、図５のＴ３１０の処理、図２のＴ３５及びＴ４０の処理が、それぞれ、「状態移行部」、「認証要求受信部」、「認証応答送信部」、「接続情報受信部」、「確立部」によって実行される処理の一例である。
【００８６】
以上、本発明の具体例を詳細に説明したが、これらは例示にすぎず、特許請求の範囲を限定するものではない。特許請求の範囲に記載の技術には以上に例示した具体例を様々に変形、変更したものが含まれる。上記の実施例の変形例を以下に列挙する。
【００８７】
（変形例１）図３のＴ１２２でプリンタ１００は、チャネルリスト及びＭＡＣアドレス「ａｂｃ」を含まず、公開鍵ＰＰＫ１を含む公開鍵送信指示をＮＦＣＩ／Ｆ１１８に供給してもよい。この場合、プリンタ１００は、Ｔ１２４で不可能状態から可能状態に移行することに応じて、プリンタ１００が利用可能な全ての無線チャネルのうちの１個の無線チャネルが利用されたＡＲｅｑを受信することを監視する。また、端末１０は、図４のＴ２００において、端末１０が利用可能な全ての無線チャネルを順次利用して、ＡＲｅｑをブロードキャストによって順次送信する。即ち、「第１の無線インターフェース」は、少なくとも公開鍵を第１の外部装置に送信すればよい。
【００８８】
（変形例２）共有鍵（例えばＳＫ１）を生成するための処理（例えば、図４のＴ１４２、Ｔ２０２）は、ＥＣＤＨに従った上記の実施例の処理に限らず、ＥＣＤＨに従った他の処理であってもよい。また、共有鍵を生成するための処理は、ＥＣＤＨに従った処理に限らず、他の方式（例えば、ＤＨ（Diffie-Hellman key exchangeの略）等）に従った処理が実行されてもよい。また、上記の実施例では、電子署名ＤＳ１及びＤＳ２が、ＥＣＤＳＡに従って生成されたが、他の方式（例えば、ＤＳＡ（Digital Signature Algorithmの略）、ＲＡＳ（Rivest-Shamir-Adleman cryptosystemの略）等）に従って生成されてもよい。
【００８９】
（変形例３）図９のＴ７２１の処理が省略されてもいい。この場合、プリンタ１００は、Ｔ７２２の処理を実行する代わりに、ＭＡＣアドレス「ａｂｃ」を含むＭＡＣアドレス送信指示をＮＦＣＩ／Ｆ１１８に供給する。この結果、ＭＡＣアドレス「ａｂｃ」が、プリンタ１００のＮＦＣＩ／Ｆ１１８から端末１０のＮＦＣＩ／Ｆ１８に送信され、端末１０においてＭＡＣアドレス「ａｂｃ」が取得される。これにより、端末１０は、検索処理において、受信済みのＭＡＣアドレス「ａｂｃ」を利用して、接続対象のプリンタ１００を特定することができる。その後、端末１０とプリンタ１００との間でＧ／Ｏ  Ｎｅｇｏｔｉａｔｉｏｎが実行されることによって、端末１０及びプリンタ１００の一方がＧ／Ｏとして動作すると共に他方がクライアントとして動作することが決定される。そして、端末１０とプリンタ１００との間で図９のＴ７５０と同様の処理が実行されて、端末１０とプリンタ１００との間にＷｉ−Ｆｉ接続が確立される。本変形例では、ＭＡＣアドレス送信指示、ＭＡＣアドレス「ａｂｃ」が、それぞれ、「第２の指示情報」、「確立情報」の一例である。
【００９０】
（変形例４）プリンタ１００のＷｉ−ＦｉＩ／Ｆ１１６がＷＦＤ方式をサポートしていなくてもよい。この場合、例えば、図３のＴ１１６では、プリンタ１００は、選択画面ＳＬＳに代えて、プリンタ１００とＡＰ６との間のＷｉ−Ｆｉ接続を確立するための接続処理を実行することをユーザに確認するプリンタ側確認画面ＰＣＳを表示部１１４に表示させてもよい。画面ＰＣＳは、接続処理を実行することを示すＹＥＳボタンを含む。プリンタ１００は、画面ＰＣＳ内のＹＥＳボタンが選択されることに応じて、Ｔ１２２以降の処理を実行する。なお、プリンタ１００は、画面ＰＣＳ内のＹＥＳボタンが所定時間内に選択されない場合に、Ｔ１２２以降の処理を実行することなく、メニュー画面ＭＳを表示部１１４に再び表示させる。本変形例では、プリンタ側確認画面ＰＣＳが、「指示画面」の一例である。また、本変形例では、「第２の選択領域」、「第２の確立部」、及び、「第２の供給部」が省略可能である。なお、別の変形例では、画面ＰＣＳが、接続処理を実行しないことを示すＮＯボタンをさらに含んでもよい。この場合、プリンタ１００は、画面ＰＣＳ内のＮＯボタンがユーザによって選択される場合に、Ｔ１２２以降の処理を実行することなく、画面ＭＳを表示部１１４に再び表示させる。本変形例では、画面ＰＣＳ内のＮＯボタンが選択されることが、「対象処理を実行すべきことが指示されない場合」の一例である。
【００９１】
（変形例５）プリンタ１００の公開鍵ＰＰＫ１とチャネルリストとＭＡＣアドレス「ａｂｃ」とが、ＮＦＣＩ／Ｆ１１８のメモリ１１９内に予め記憶されていてもよい。また、プリンタ１００は、図３のＴ１０９の処理を実行しなくてもよい。この場合、端末１０において、アプリ４０の起動操作がユーザによって実行され、アプリ４０が起動された後に、Ｔ１１０及びＴ１１２の処理が実行される。なお、この時点では、ＮＦＣＩ／Ｆ１１８は、端末１０からＲｅａｄコマンドを受信しても、当該Ｒｅａｄコマンドに対する応答を送信しない状態となっている。従って、ＮＦＣＩ／Ｆ１１８は、メモリ１１９内のプリンタ１００の公開鍵ＰＰＫ１とチャネルリストとＭＡＣアドレス「ａｂｃ」とを送信しない。また、プリンタ１００のＮＦＣＩ／Ｆ１１８は、端末１０のＮＦＣＩ／Ｆ１８とのＮＦＣ接続が確立されることに応じて、ＮＦＣ接続が確立されたことを示す通知をプリンタ１００のＣＰＵ１３２に供給する。プリンタ１００（即ちＣＰＵ１３２）は、ＮＦＣＩ／Ｆ１１８から当該通知を取得することに応じて、選択画面ＳＬＳを表示部１１４に表示させる。そして、プリンタ１００は、画面ＳＬＳ内の「ＡＰとの接続」ボタンがユーザによって選択される場合に、公開鍵送信指示をＮＦＣＩ／Ｆ１１８に供給する。なお、当該公開鍵送信指示は、プリンタ１００の公開鍵ＰＰＫ１等を含まない。そして、プリンタ１００のＮＦＣＩ／Ｆ１１８は、公開鍵送信指示を取得することに応じて、端末１０からＲｅａｄコマンドを受信することに応じて、当該Ｒｅａｄコマンドに対する応答を送信する状態に移行する。従って、ＮＦＣＩ／Ｆ１１８は、確立済みのＮＦＣ接続を利用して、メモリ１１９内のプリンタ１００の公開鍵ＰＰＫ１とチャネルリストとＭＡＣアドレス「ａｂｃ」とを端末１０のＮＦＣＩ／Ｆ１８に送信する。本変形例では、Ｔ１１２のＮＦＣ接続が、「第１の無線接続」の一例である。また、本変形例では、「起動情報」が省略可能である。さらに、本変形例では、「第１の指示情報」は、公開鍵を含まなくてもよい。
【００９２】
（変形例６）プリンタ１００が、ＮＦＣＩ／Ｆ１１８に代えて、ＮＦＣ方式とは異なる無線方式（例えば、Ｂｌｕｅｔｏｏｔｈ（登録商標）方式、ＴｒａｎｓｆｅｒＪｅｔ方式）に従った異なる無線インターフェースを備えていてもよい。なお、上記のＢｌｕｅｔｏｏｔｈ方式は、Ｂｌｕｅｔｏｏｔｈ方式バージョン４．０以上（いわゆるBlue Tooth Low Energy）を含む。この場合、プリンタ１００は、例えば、図３のＴ１３４において、当該無線インターフェースを介して、公開鍵ＰＰＫ１とチャネルリストとＭＡＣアドレス「ａｂｃ」とを端末１０に送信する。本変形例では、当該無線インターフェースが、「第１の無線インターフェース」の一例である。
【００９３】
（変形例７）プリンタ１００のＮＦＣＩ／Ｆ１１８が、メモリ１１９を備えていなくてもよい。この場合、ＮＦＣＩ／Ｆ１１８は、図３のＴ１３２でＮＦＣＩ／Ｆ１８とのＮＦＣ接続が確立されることに応じて、ＮＦＣ接続が確立されたことを示す通知をＣＰＵ１３２に供給する。プリンタ１００は、当該通知を取得することに応じて、公開鍵送信指示をＮＦＣＩ／Ｆ１１８に供給する。この結果、プリンタ１００のＮＦＣＩ／Ｆ１１８は、確立済みのＮＦＣ接続を利用して、公開鍵送信指示内の公開鍵ＰＰＫ１等を端末１０のＮＦＣＩ／Ｆ１８に送信する。本変形例では、「インターフェースメモリ」が省略可能である。なお、上記のＮＦＣ通信がＮＦＣ規格のＰ２Ｐ（Peer to Peerの略）モードに従った通信であってもよい。
【００９４】
（変形例８）図２のＴ３５において、端末１０とプリンタ１００との間でＮＡの処理が実行されて、端末１０とプリンタ１００との間でＷｉ−Ｆｉ接続が確立されてもよい。即ち、「第２の外部装置」は、「第１の外部装置」と同じ装置であってもよい。
【００９５】
（変形例９）プリンタ１００は、図３のＴ１０９において、アプリ起動指示と公開鍵送信指示とをＮＦＣＩ／Ｆ１１８に供給してもよい。この場合、プリンタ１００は、Ｔ１１２においてＮＦＣ接続が確立されたことを示す通知をＮＦＣＩ／Ｆ１１８から取得することに応じて、不可能状態から可能状態に移行する。また、Ｔ１１４では、ＮＦＣＩ／Ｆ１１８は、確立済みのＮＦＣ接続を利用して、アプリ起動指示と公開鍵ＰＰＫ１とチャネルリストとＭＡＣアドレス「ａｂｃ」とを端末１０のＮＦＣＩ／Ｆ１８に送信する。その後、Ｔ１３６以降の処理が実行される。また、別の変形例では、プリンタ１００は、Ｔ１３４の処理の後に、不可能状態から可能状態に移行してもよい。この場合、プリンタ１００は、ＮＦＣＩ／Ｆ１１８から公開鍵ＰＰＫ１等を送信したことを示す通知を取得することに応じて、不可能状態から可能状態に移行する。即ち、プリンタ１００は、Ｔ１１２でＮＦＣ接続が確立された後に、可能状態に移行すればよい。
【００９６】
（変形例１０）図９のＴ７２１において、プリンタ１００は、ＷＦＤ方式のＧ／Ｏとして動作することに代えて、いわゆるＳｏｆｔＡＰとして動作してもよい。この場合、プリンタ１００は、プリンタ１００がＳｏｆｔＡＰとして動作する無線ネットワークで利用されるＳＳＩＤ及びパスワードを生成して、当該ＳＳＩＤ及びパスワードを含むＳＳＩＤ送信指示をＮＦＣＩ／Ｆ１１８に供給する。この結果、Ｔ７３４では、ＮＦＣＩ／Ｆ１１８は、確立済みのＮＦＣ接続を利用して、当該ＳＳＩＤ及びパスワードをＮＦＣＩ／Ｆ１８に送信する。本変形例では、上記のＳＳＩＤ及びパスワードが、「確立情報」の一例である。
【００９７】
（変形例１１）プリンタ１００のＮＦＣＩ／Ｆ１１８が常に設定モードで動作するように構成されてもよい。本変形例では、「モード移行部」が省略可能である。
【００９８】
（変形例１２）上記の実施例では、端末１０を利用して、プリンタ１００とＡＰ６との間のＷｉ−Ｆｉ接続が確立される。これに代えて、例えば、端末１０を利用して、Ｇ／Ｏとして動作するプリンタ１００（即ち親局として動作するデバイス）と、他のデバイス（即ち子局として動作するデバイス）と、の間のＷｉ−Ｆｉ接続が確立されてもよい。即ち、「第２の外部装置」は、「親局装置」でなくてもよい。
【００９９】
（変形例１３）「通信装置」は、プリンタでなくてもよく、スキャナ、多機能機、携帯端末、ＰＣ、サーバ等の他のデバイスであってもよい。
【０１００】
（変形例１４）上記の各実施例では、図２〜図９の各処理がソフトウェア（即ちプログラム１３６）によって実現されるが、これらの各処理のうちの少なくとも１つが論理回路等のハードウェアによって実現されてもよい。
【０１０１】
また、本明細書または図面に説明した技術要素は、単独であるいは各種の組合せによって技術的有用性を発揮するものであり、出願時請求項記載の組合せに限定されるものではない。また、本明細書または図面に例示した技術は複数目的を同時に達成するものであり、そのうちの一つの目的を達成すること自体で技術的有用性を持つものである。
【符号の説明】
【０１０２】
２：通信システム、６：ＡＰ、１０：端末、１６，１１６：Ｗｉ−ＦｉＩ／Ｆ、１８，１１８：ＮＦＣＩ／Ｆ、４０：接続アプリケーション、１００：プリンタ、１１２：操作部、１１４：表示部、１２０：印刷実行部、１３０：制御部、１３２：ＣＰＵ、１３４：メモリ、１３６：プログラム
【図１】
2019180038.tif 000003
【図２】
2019180038.tif 000004
【図３】
2019180038.tif 000005
【図４】
2019180038.tif 000006
【図５】
2019180038.tif 000007
【図６】
2019180038.tif 000008
【図７】
2019180038.tif 000009
【図８】
2019180038.tif 000010
【図９】
2019180038.tif 000011