JP7379943B2 - 通信システムと端末のための接続アプリケーションと通信装置 - Google Patents

通信システムと端末のための接続アプリケーションと通信装置 Download PDF

Info

Publication number
JP7379943B2
JP7379943B2 JP2019158073A JP2019158073A JP7379943B2 JP 7379943 B2 JP7379943 B2 JP 7379943B2 JP 2019158073 A JP2019158073 A JP 2019158073A JP 2019158073 A JP2019158073 A JP 2019158073A JP 7379943 B2 JP7379943 B2 JP 7379943B2
Authority
JP
Japan
Prior art keywords
terminal
web page
communication
communication device
server
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2019158073A
Other languages
English (en)
Other versions
JP2021036650A (ja
Inventor
瞬 竹内
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Brother Industries Ltd
Original Assignee
Brother Industries Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Brother Industries Ltd filed Critical Brother Industries Ltd
Priority to JP2019158073A priority Critical patent/JP7379943B2/ja
Priority to US17/006,160 priority patent/US11134529B2/en
Publication of JP2021036650A publication Critical patent/JP2021036650A/ja
Priority to US17/480,197 priority patent/US11570830B2/en
Priority to US18/159,009 priority patent/US11838965B2/en
Priority to JP2023187809A priority patent/JP2023181447A/ja
Application granted granted Critical
Publication of JP7379943B2 publication Critical patent/JP7379943B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W76/00Connection management
    • H04W76/10Connection setup
    • H04W76/14Direct-mode setup
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/36User authentication by graphic or iconic representation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/606Protecting data by securing the transmission between two devices or processes
    • G06F21/608Secure printing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • G06F3/1204Improving or facilitating administration, e.g. print management resulting in reduced user or operator actions, e.g. presetting, automatic actions, using hardware token storing data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1236Connection management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1285Remote printer device, e.g. being remote from client or server
    • G06F3/1287Remote printer device, e.g. being remote from client or server via internet
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1285Remote printer device, e.g. being remote from client or server
    • G06F3/1289Remote printer device, e.g. being remote from client or server in server-client-printer device configuration, e.g. the server does not see the printer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1292Mobile client, e.g. wireless printing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0442Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • H04L9/0841Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving Diffie-Hellman or related key agreement protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/321Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3226Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • H04W4/029Location-based management or tracking services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Telephonic Communication Services (AREA)

Description

本明細書では、一対の装置の間に無線接続を確立させるための技術を開示する。
非特許文献1には、Wi-Fi Allianceによって策定された無線通信方式であるDevice Provisioning Protocol方式(以下では「DPP方式」と記載する)が開示されている。DPP方式は、一対の装置の間にWi-Fi規格に従った無線接続を容易に確立させるための方式である。
「Device Provisioning Protocol Technical Specification Version 1.0」Wi-Fi Alliance, 2018年
本明細書では、端末のユーザが、端末を利用して、一対の装置の間に無線接続を容易に確立させることが可能な技術を提供する。
本明細書によって開示される通信システムは、通信装置と、端末と、サーバと、を備えていてもよい。前記端末は、Wi-Fi規格の所定の通信方式に従った無線通信を実行するための端末側無線インターフェースと、表示部と、コンピュータプログラムと、ブラウザプログラムと、一対の装置の間に無線接続を確立するための接続アプリケーションと、を記憶するための端末側メモリと、前記コンピュータプログラムを利用して、前記サーバの位置情報と、前記通信装置の公開鍵に関連する関連情報と、を取得する第1の取得部と、前記ブラウザプログラムを利用して、少なくとも前記位置情報を含むウェブページ要求を前記サーバに送信するウェブページ要求送信部と、前記ウェブページ要求が前記サーバに送信されることに応じて、前記ブラウザプログラムを利用して、前記サーバから、前記位置情報に対応するウェブページデータを受信するウェブページ受信部と、前記ブラウザプログラムを利用して、前記ウェブページデータによって表わされるウェブページを前記表示部に表示させる表示制御部と、前記ウェブページにおいて所定の操作が受け付けられる場合に、前記ブラウザプログラムを利用して、前記接続アプリケーションを起動させる起動制御部と、前記接続アプリケーションを利用して、前記関連情報に関連する前記公開鍵を取得する第2の取得部と、前記接続アプリケーションを利用して、前記端末側無線インターフェースを介して、前記所定の通信方式に従った認証要求であって、前記公開鍵が利用された前記認証要求を前記通信装置に送信する認証要求送信部と、前記認証要求が前記通信装置に送信されることに応じて、前記接続アプリケーションを利用して、前記通信装置から、前記端末側無線インターフェースを介して、前記所定の通信方式に従った認証応答を受信する認証応答受信部と、前記通信装置から前記認証応答が受信される場合に、前記接続アプリケーションを利用して、前記端末側無線インターフェースを介して、前記所定の通信方式に従った対象通信を前記通信装置と実行する端末側通信実行部であって、前記対象通信は、一対の装置の間に無線接続を確立するための通信である、前記端末側通信実行部と、を備えていてもよい。
上記の構成によると、端末のユーザは、ウェブページにおいて所定の操作を実行すれば、接続アプリケーションを起動させることができ、接続アプリケーションに従って、一対の装置の間に無線接続を確立させることができる。このため、ユーザは、例えば、端末に表示されている複数のアイコンの中から接続アプリケーションのアイコンを選択して接続アプリケーションを起動させずに済む。従って、ユーザは、端末を利用して、一対の装置の間に無線接続を容易に確立させることができる。
本明細書では、端末のための接続アプリケーションも開示する。前記端末は、Wi-Fi規格の所定の通信方式に従った無線通信を実行するための端末側無線インターフェースと、表示部と、コンピュータプログラムと、ブラウザプログラムと、一対の装置の間に無線接続を確立するための前記接続アプリケーションと、を記憶するための端末側メモリと、コンピュータと、を備えていてもよい。前記コンピュータプログラムは、前記コンピュータを、以下の各部、即ち、サーバの位置情報と、通信装置の公開鍵に関連する関連情報と、を取得する第1の取得部として機能させ、前記ブラウザプログラムは、前記コンピュータを、以下の各部、即ち、少なくとも前記位置情報を含むウェブページ要求を前記サーバに送信するウェブページ要求送信部と、前記ウェブページ要求が前記サーバに送信されることに応じて、前記サーバから、前記位置情報に対応するウェブページデータを受信するウェブページ受信部と、前記ウェブページデータによって表わされるウェブページを前記表示部に表示させる表示制御部と、前記ウェブページにおいて所定の操作が受け付けられる場合に、前記接続アプリケーションを起動させる起動制御部と、として機能させてもよい。前記接続アプリケーションは、前記コンピュータを、以下の各部、即ち、前記関連情報に関連する前記公開鍵を取得する第2の取得部と、前記端末側無線インターフェースを介して、前記所定の通信方式に従った認証要求であって、前記公開鍵が利用された前記認証要求を前記通信装置に送信する認証要求送信部と、前記認証要求が前記通信装置に送信されることに応じて、前記通信装置から、前記端末側無線インターフェースを介して、前記所定の通信方式に従った認証応答を受信する認証応答受信部と、前記通信装置から前記認証応答が受信される場合に、前記端末側無線インターフェースを介して、前記所定の通信方式に従った対象通信を前記通信装置と実行する端末側通信実行部であって、前記対象通信は、一対の装置の間に無線接続を確立するための通信である、前記端末側通信実行部と、として機能させてもよい。
上記の構成によると、端末のユーザは、ウェブページにおいて所定の操作を実行すれば、接続アプリケーションを起動させることができ、接続アプリケーションに従って、一対の装置の間に無線接続を確立させることができる。このため、ユーザは、例えば、端末に表示されている複数のアイコンの中から接続アプリケーションのアイコンを選択して接続アプリケーションを起動させずに済む。従って、ユーザは、端末を利用して、一対の装置の間に無線接続を容易に確立させることができる。
本明細書では、通信装置も開示する。通信装置は、Wi-Fi規格の所定の通信方式に従った無線通信を実行するための装置側無線インターフェースと、サーバの位置情報と、前記通信装置の公開鍵に関連する関連情報と、をコード化することによって得られるコード画像を示すシールが貼り付けられている筐体であって、前記位置情報は、端末が、前記サーバからウェブページデータを受信し、前記ウェブページデータによって表わされるウェブページを表示するために、利用され、前記ウェブページにおいて所定の操作が受け付けられる場合に、前記端末の接続アプリケーションが起動され、前記接続アプリケーションは、前記関連情報に関連する前記公開鍵を取得し、かつ、一対の装置の間に無線接続を確立するためのアプリケーションである、前記筐体と、また、通信装置は、前記公開鍵を取得した前記端末から、前記装置側無線インターフェースを介して、前記所定の通信方式に従った認証要求であって、前記公開鍵が利用された前記認証要求を受信する認証要求受信部と、前記端末から前記認証要求が受信される場合に、前記装置側無線インターフェースを介して、前記認証応答を前記端末に送信する認証応答送信部と、前記認証応答が前記端末に送信される場合に、前記装置側無線インターフェースを介して、前記所定の通信方式に従った対象通信を前記端末と実行する装置側通信実行部であって、前記対象通信は、一対の装置の間に無線接続を確立するための通信である、前記装置側通信実行部と、を備えていてもよい。
上記の構成によると、端末のユーザは、通信装置の筐体に貼り付けられているシールのコード画像を端末に撮影させることによって、サーバの位置情報及び関連情報を端末に取得させることができる。この場合、端末は、位置情報を利用して、ウェブページを表示することができる。ユーザは、ウェブページにおいて所定の操作を実行すれば、接続アプリケーションを起動させることができ、接続アプリケーションに従って、一対の装置の間に無線接続を確立させることができる。このため、ユーザは、例えば、端末に表示されている複数のアイコンの中から接続アプリケーションのアイコンを選択して接続アプリケーションを起動させずに済む。従って、ユーザは、端末を利用して、一対の装置の間に無線接続を容易に確立させることができる。
本明細書では、次の通信装置も開示する。通信装置は、Wi-Fi規格の所定の通信方式に従った無線通信を実行するための装置側無線インターフェースと、サーバの位置情報と、前記通信装置の公開鍵に関連する関連情報と、を外部に出力するための出力制御処理を実行する出力制御部であって、前記位置情報は、端末が、前記サーバからウェブページデータを受信し、前記ウェブページデータによって表わされるウェブページを表示するために、利用され、前記ウェブページにおいて所定の操作が受け付けられる場合に、前記端末の接続アプリケーションが起動され、前記接続アプリケーションは、前記関連情報に関連する前記公開鍵を取得し、かつ、一対の装置の間に無線接続を確立するためのアプリケーションである、前記出力制御部と、また、通信装置は、前記公開鍵を取得した前記端末から、前記装置側無線インターフェースを介して、前記所定の通信方式に従った認証要求であって、前記公開鍵が利用された前記認証要求を受信する認証要求受信部と、前記端末から前記認証要求が受信される場合に、前記装置側無線インターフェースを介して、前記認証応答を前記端末に送信する認証応答送信部と、前記認証応答が前記端末に送信される場合に、前記装置側無線インターフェースを介して、前記所定の通信方式に従った対象通信を前記端末と実行する装置側通信実行部であって、前記対象通信は、一対の装置の間に無線接続を確立するための通信である、前記装置側通信実行部と、を備えていてもよい。
上記の構成によると、端末のユーザは、通信装置から出力されるサーバの位置情報及び関連情報を端末に取得させることができる。この場合、端末は、位置情報を利用して、ウェブページを表示することができる。ユーザは、ウェブページにおいて所定の操作を実行すれば、接続アプリケーションを起動させることができ、接続アプリケーションに従って、一対の装置の間に無線接続を確立させることができる。このため、ユーザは、例えば、端末に表示されている複数のアイコンの中から接続アプリケーションのアイコンを選択して接続アプリケーションを起動させずに済む。従って、ユーザは、端末を利用して、一対の装置の間に無線接続を容易に確立させることができる。
上記の端末そのもの、及び、上記の端末によって実行される方法も新規で有用である。上記の接続アプリケーションを格納するコンピュータ読取可能記録媒体も新規で有用である。また、上記の通信装置によって実行される方法、上記の通信装置を実現するためのコンピュータプログラム、及び、当該コンピュータプログラムを格納するコンピュータ読取可能記録媒体も新規で有用である。
通信システムの概略構成を示す。 各装置の制御構成を示す。 プリンタとアクセスポイントとの間にWi-Fi接続を確立するための処理の概略のシーケンス図を示す。 Bootstrappingの処理のシーケンス図を示す。 Authenticationの処理のシーケンス図を示す。 Configurationの処理のシーケンス図を示す。 第1実施例のBootstrappingの処理のシーケンス図を示す。 第2実施例のBootstrappingの処理のシーケンス図を示す。
(第1実施例)
(通信システム2の構成:図1)
図1に示されるように、通信システム2は、アクセスポイント(以下では単に「AP」と記載する)6と、端末10と、プリンタ100と、サーバ200と、を備える。本実施例では、ユーザが、端末10を利用して、プリンタ100とAP6との間にWi-Fi規格に従った無線接続(以下では「Wi-Fi接続」と記載する)を確立させる状況を想定している。
(端末10の構成:図2)
端末10は、携帯電話(例えばスマートフォン)、PDA、タブレットPC等の可搬型の端末である。変形例では、端末10は、据置型の端末であってもよい。図2に示されるように、端末10は、操作部12と、表示部14と、Wi-Fiインターフェース16と、カメラ20と、制御部30と、を備える。各部10~30は、バス線(符号省略)に接続されている。以下では、インターフェースのことを単に「I/F」と記載する。
操作部12は、複数のボタンを備える。ユーザは、操作部12を操作することによって、様々な指示を端末10に入力することができる。表示部14は、様々な情報を表示するためのディスプレイである。表示部14は、さらに、いわゆるタッチパネル(即ち操作部)として機能する。カメラ20は、物体を撮影するためのデバイスであり、本実施例では、AP6及びプリンタ100のためのQRコード(登録商標)を撮影するために利用される。
Wi-FiI/F16は、Wi-Fi規格に従った無線通信を実行するための無線インターフェースである。Wi-Fi規格は、例えば、IEEE(The Institute of Electrical and Electronics Engineers, Inc.の略)の802.11の規格、及び、それに準ずる規格(例えば802.11a,11b,11g,11n等)に従って、無線通信を実行するための規格である。端末10は、AP6によって形成されている無線ネットワークのSSID(Service Set Identifierの略)及びパスワードを利用して、Wi-FiI/F16を介して、AP6とのWi-Fi接続を確立することができる。
また、Wi-FiI/F16は、Wi-Fi Allianceによって策定されたDPP(Device Provisioning Protocolの略)方式をサポートしている。DPP方式は、Wi-Fi Allianceによって作成された規格書「Device Provisioning Protocol Technical Specification Version 1.0」に記述されており、端末10を利用して一対の装置(例えばプリンタ100とAP6)の間にWi-Fi接続を容易に確立させるための方式である。
制御部30は、CPU32とメモリ34とを備える。CPU32は、メモリ34に格納されている各種のプログラム40~50に従って、様々な処理を実行する。メモリ34は、揮発性メモリ、不揮発性メモリ等によって構成される。メモリ34は、OSプログラム40と、カメラアプリケーション42と、ブラウザアプリケーション44と、印刷アプリケーション50と、を格納する。以下では、OSプログラムのことを単に「OS」と記載し、アプリケーションのことを単に「アプリ」と記載する。
OS40は、端末10の基本的な動作を実現するためのプログラムである。OS40は、端末10の出荷段階から端末10に予め格納されている。カメラアプリ42は、カメラ20に関する動作を実現するためのプログラムである。ブラウザアプリ44は、ウェブページを表示するためのプログラムである。これらのアプリ42,44は、端末10の出荷段階から端末10に予め格納されていてもよいし、端末10の出荷後に端末10にインストールされてもよい。印刷アプリ50は、DPP方式に従った無線通信を実行して、プリンタ100とAP6との間にWi-Fi接続を確立させるためのプログラムである。また、印刷アプリ50は、当該Wi-Fi接続を利用して、プリンタ100に印刷を実行させるためのプログラムである。印刷アプリ50は、プリンタ100のベンダによって提供されるプログラムであり、端末10の出荷後に端末10にインストールされる。
(プリンタ100の構成:図1及び図2)
プリンタ100は、印刷機能を実行可能な周辺装置(例えば端末10の周辺装置)である。プリンタ100は、機種名「AAA」を有する。図1に示されるように、プリンタ100は、筐体100Aを備える。筐体100Aには、QRコードを示すシール100Bが貼り付けられている。QRコードは、サーバ200の位置情報と、プリンタ100の公開鍵に関連するユニークIDと、プリンタ100の機種名「AAA」と、印刷アプリ50を識別する情報と、を含むURI(Uniform Resource Identifierの略)をコード化することによって得られる情報である。
図2に示されるように、プリンタ100は、操作部112と、Wi-FiI/F116と、印刷実行部118と、制御部130と、を備える。各部112~130は、バス線(符号省略)に接続されている。本実施例のプリンタ100は、QRコードを表示可能な表示部を備えない。これは、プリンタ100が1つの表示部も備えないこと、及び、プリンタ100が非常に小さい表示部を備えることを意味する。
操作部112は、複数のボタンを備える。ユーザは、操作部112を操作することによって、様々な指示をプリンタ100に入力することができる。Wi-FiI/F116は、DPP方式をサポートしている。Wi-FiI/F116には、MACアドレス「xxxyyyzzz」が割り当てられている。印刷実行部118は、インクジェット方式、レーザ方式等の印刷機構を備える。制御部130は、CPU132とメモリ134とを備える。CPU132は、メモリ134に格納されているプログラム136に従って、様々な処理を実行する。メモリ134は、揮発性メモリ、不揮発性メモリ等によって構成される。
(サーバ200の構成:図2)
サーバ200は、いわゆるウェブサーバであり、プリンタ100のベンダによってインターネット4(図1参照)上に設置される。サーバ200は、通信I/F216と、制御部230と、を備える。各部216及び230は、バス線(符号省略)に接続されている。通信I/F216は、インターネット4に接続されている。制御部230は、CPU232とメモリ234とを備える。CPU232は、メモリ234に格納されているプログラム236に従って、様々な処理を実行する。メモリ234は、揮発性メモリ、不揮発性メモリ等によって構成される。
メモリ234は、さらに、機種テーブル250を格納する。機種テーブル250では、プリンタの複数の機種名のそれぞれについて、当該機種名と、当該機種名を有するプリンタの状態をDPPOFF状態からDPPON状態に変更するための変更操作を示すメッセージと、が関連付けられている。DPPOFF状態、DPPON状態は、それぞれ、DPP方式に従った無線通信を実行不可能な状態、実行可能な状態である。
(DPPの概略:図3)
続いて、図3を参照して、DPPの概略を説明する。以下では、理解の容易化のため、各装置のCPU(例えばCPU32)が実行する動作を、CPUを主体として記載せずに、各装置(例えば端末10)を主体として記載する。また、以下の各通信は、基本的には、I/F16,116,216(図2参照)を利用して実行される。このため、特に説明が必要である場合を除き、「I/Fを介して」という説明を省略する。
本実施例では、AP6は、DPP方式をサポートしていない。AP6は、SSID「sss」及びパスワード「ttt」が利用される無線ネットワークの親局として動作する。例えば、端末10のユーザは、操作部12を操作して、SSID「sss」及びパスワード「ttt」を端末10に入力する。この場合、端末10は、OS40を利用して、AP6とのWi-Fi接続を確立する。即ち、端末10は、印刷アプリ50を利用して、DPP方式の無線通信を実行しなくても、OS40を利用して、AP6とのWi-Fi接続を確立することができる。このように、図3のケースでは、端末10とAP6との間にWi-Fi接続が確立されている状況を想定する。端末10のユーザは、プリンタ100に印刷を実行させることを望む場合に、プリンタ100とAP6との間にWi-Fi接続を確立させて、端末10とプリンタ100との間でAP6を介した通信を実行させる。これを実現するために、以下の各処理が実行される。
端末10は、T25において、DPP方式のBootstrapping(以下では単に「BS」と記載する)をプリンタ100と実行する。当該BSは、プリンタ100に貼り付けられているシール100B(図1参照)に示されるQRコードが端末10によって撮影されることに応じて、後述のT30のAuthentication(以下では単に「Auth」と記載する)で利用される情報をプリンタ100から端末10に提供する処理である。
T30では、端末10は、T25のBSで取得済みの情報を利用して、DPP方式のAuthをプリンタ100と実行する。当該Authは、端末10及びプリンタ100のそれぞれが通信相手を認証するための処理である。
T35では、端末10は、DPP方式のConfiguration(以下では、単に「Config」と記載する)をプリンタ100と実行する。当該Configは、プリンタ100とAP6との間にWi-Fi接続を確立するための情報をプリンタ100に送信する処理である。具体的には、端末10は、プリンタ用Configuration Object(以下では、Configuration Objectのことを単に「CO」と記載する)を生成して、プリンタ用COをプリンタ100に送信する。プリンタ用COは、AP6のSSID「sss」及びパスワード「ttt」を含む。
T40では、プリンタ100は、T35で取得済みのプリンタ用COに含まれるSSID「sss」及びパスワード「ttt」を利用して、AP6とのWi-Fi接続を確立する。具体的には、プリンタ100は、まず、Probe要求をブロードキャストによって送信して、プリンタ100に周囲に存在するAP6を含む1個以上のAPのそれぞれからProbe応答を受信する。この場合、プリンタ100は、当該1個以上のAPから受信される1個以上のProbe応答の中に、プリンタ用COに含まれるSSID「sss」(即ちAP6のSSID「sss」)を含むProbe応答が存在することを認識する。そして、プリンタ100は、Association、4way-handshake等の各種通信をAP6と実行して、AP6とのWi-Fi接続を確立する。当該各種通信の過程において、プリンタ100は、プリンタ用COに含まれるパスワード「ttt」を利用した認証情報をAP6に送信し、AP6は、パスワード「ttt」の認証を実行する。当該認証が成功する場合に、プリンタ100とAP6との間にWi-Fi接続が確立される。
上記の各処理の結果、端末10及びプリンタ100の双方がAP6によって形成される同じ無線ネットワークに子局として参加している状態になる。このために、端末10は、AP6を介して、例えば印刷対象の画像を表わす印刷データをプリンタ100に送信することができる。そして、プリンタ100は、印刷データによって表される画像の印刷を実行することができる。
DPP方式では、プリンタ100とAP6との間にWi-Fi接続を確立させるために、ユーザは、AP6のSSID「sss」及びパスワード「ttt」をプリンタ100に入力する必要がない。従って、ユーザは、プリンタ100とAP6との間にWi-Fi接続を容易に確立させることができる。
(各処理の詳細:図4~図6)
続いて、図4~図6を参照して、図3のT25~T35において実行される各処理の詳細を説明する。
(Bootstrapping(BS):図4)
まず、図4を参照して、図3のT25で実行されるBSの処理を説明する。図4の初期状態では、プリンタ100のメモリ134は、プリンタ100の公開鍵PPK1及び秘密鍵psk1を予め記憶している。
ユーザは、T110において、端末10のカメラアプリ42を起動し、T120において、カメラ20を利用して、プリンタ100のシール100Bに示されるQRコードを撮影する。そして、端末10は、T122において、撮影済みのQRコードをデコードして、公開鍵PPK1とMACアドレス「xxxyyyzzz」とを取得する。なお、この処理の詳細については、図7を参照しながら後で説明する。T122の処理が終了すると、図4の処理が終了する。図4の処理が終了する段階では、プリンタ100の状態がDPPOFF状態からON状態に変更済みである。この処理の詳細も後で説明する。
(Authentication(Auth):図5)
続いて、図5を参照して、図3のT30において端末10とプリンタ100との間で実行されるAuthの処理を説明する。
T200では、端末10は、端末10の公開鍵TPK1及び秘密鍵tsk1を生成する。次いで、端末10は、T202において、ECDH(Elliptic curve Diffie-Hellman key exchangeの略)に従って、生成済みの秘密鍵tsk1と、図4のT122で取得されたプリンタ100の公開鍵PPK1と、を用いて、共有鍵SK1を生成する。そして、端末10は、T204において、生成済みの共有鍵SK1を用いてランダム値RV1を暗号化して、暗号化データED1を生成する。
T210では、端末10は、図4のT122で取得されたMACアドレス「xxxyyyzzz」を送信先として、DPP Authentication Request(以下では単に「AReq」と記載する)をプリンタ100に送信する。AReqは、認証の実行をプリンタ100に要求する信号である。AReqは、T200で生成された端末10の公開鍵TPK1と、T204で生成された暗号化データED1と、端末10のcapabilityと、を含む。
capabilityは、DPP方式をサポートしている機器において予め指定されている情報であり、DPP方式のConfiguratorのみとして動作可能であることを示す値と、DPP方式のEnrolleeのみとして動作可能であることを示す値と、Configurator及びEnrolleeのどちらとしても動作可能であることを示す値と、のいずれか1個の値を含む。Configuratorは、図3のT35のConfigにおいて、COをEnrolleeに送信するデバイスを意味する。一方、Enrolleeは、Configにおいて、ConfiguratorからCOを受信するデバイスを意味する。本実施例では、端末10のcapabilityは、Configuratorのみとして動作可能であることを示す値を含む。
プリンタ100は、T210において、端末10からAReqを受信する。上述したように、AReqは、プリンタ100のMACアドレス「xxxyyyzzz」を送信先として送信される。従って、プリンタ100は、端末10からAReqを適切に受信することができる。
次いで、プリンタ100は、AReqの送信元(即ち端末10)を認証するための以下の処理を実行する。具体的には、プリンタ100は、T212において、ECDHに従って、AReq内の端末10の公開鍵TPK1と、プリンタ100の秘密鍵psk1と、を用いて、共有鍵SK1を生成する。ここで、T202で端末10によって生成される共有鍵SK1と、T212でプリンタ100によって生成される共有鍵SK1と、は同じである。従って、プリンタ100は、T214において、生成済みの共有鍵SK1を用いて、AReq内の暗号化データED1を適切に復号することができ、この結果、ランダム値RV1を取得することができる。プリンタ100は、暗号化データED1の復号が成功する場合には、AReqの送信元が、プリンタ100のQRコードを撮影したデバイスであると判断し、即ち、認証が成功したと判断し、T216以降の処理を実行する。一方、プリンタ100は、仮に、暗号化データED1の復号が成功しない場合には、AReqの送信元が、プリンタ100のQRコードを撮影したデバイスでないと判断し、即ち、認証が失敗したと判断し、T216以降の処理を実行しない。
プリンタ100は、T216において、プリンタ100の新たな公開鍵PPK2及び新たな秘密鍵psk2を生成する。なお、変形例では、プリンタ100は、公開鍵PPK2及び秘密鍵psk2を予め記憶していてもよい。次いで、プリンタ100は、T217において、ECDHに従って、T210のAReq内の端末10の公開鍵TPK1と、生成済みのプリンタ100の秘密鍵psk2と、を用いて、共有鍵SK2を生成する。そして、プリンタ100は、T218において、生成済みの共有鍵SK2を用いて、取得済みのランダム値RV1及び新たなランダム値RV2を暗号化して、暗号化データED2を生成する。
T220では、プリンタ100は、DPP Authentication Response(以下では単に「ARes」と記載する)を端末10に送信する。当該AResは、T216で生成されたプリンタ100の公開鍵PPK2と、T218で生成された暗号化データED2と、プリンタ100のcapabilityと、を含む。当該capabilityは、Enrolleeのみとして動作可能であることを示す値を含む。
端末10は、T220において、プリンタ100からAResを受信することに応じて、当該AResの送信元(即ちプリンタ100)を認証するための以下の処理を実行する。具体的には、端末10は、T222において、ECDHに従って、T200で生成された端末10の秘密鍵tsk1と、ARes内のプリンタ100の公開鍵PPK2と、を用いて、共有鍵SK2を生成する。ここで、T217でプリンタ100によって生成される共有鍵SK2と、T222で端末10によって生成される共有鍵SK2と、は同じである。従って、端末10は、T224において、生成済みの共有鍵SK2を用いて、ARes内の暗号化データED2を適切に復号することができ、この結果、ランダム値RV1及びRV2を取得することができる。端末10は、暗号化データED2の復号が成功する場合には、AResの送信元が撮影済みのQRコードを有するデバイスであると判断し、即ち、認証が成功したと判断し、T230以降の処理を実行する。一方、端末10は、仮に、暗号化データED2の復号が成功しない場合には、AResの送信元が撮影済みのQRコードを有するデバイスでないと判断し、即ち、認証が失敗したと判断し、T230以降の処理を実行しない。
T230では、端末10は、Confirmをプリンタ100に送信する。Confirmは、端末10がConfiguratorとして動作し、かつ、プリンタ100がEnrolleeとして動作することを示す情報を含む。この結果、T232において、Configuratorとして動作することが端末10によって決定され、T234において、Enrolleeとして動作することがプリンタ100によって決定される。T234の処理が終了すると、図5の処理が終了する。
(Configuration(Config):図6)
続いて、図6を参照して、図3のT35において端末10とプリンタ100との間で実行されるConfigの処理を説明する。
T300では、プリンタ100は、DPP Configuration Request(以下では単に「CReq」と記載する)を端末10に送信する。CReqは、プリンタ用COの送信を要求する信号である。
端末10は、T300において、プリンタ100からCReqを受信する。この場合、端末10は、T304において、AP6のSSID「sss」及びパスワード「ttt」を含むプリンタ用COを生成する。そして、端末10は、T310において、プリンタ用COを含むDPP Configuration Response(以下では単に「CRes」と記載する)をプリンタ100に送信する。
プリンタ100は、T310において、端末10からCResを受信する。この場合、プリンタ100は、T312において、CRes内のプリンタ用COを記憶する。T312の処理が終了すると、図6の処理が終了する。その後、上述したように、図3のT40において、プリンタ100とAP6との間にWi-Fi接続が確立される。
端末10は、アプリ42,44,50を利用することなく、OS40を利用して、AP6とのWi-Fi接続を確立することができる(図3の初期状態)。一方、端末10は、DPP方式に従った無線通信(即ち図3のT30及びT35)をプリンタ100と実行するためには、印刷アプリ50を利用する必要がある。このために、端末10において印刷アプリ50を起動させる必要である。例えば、ユーザは、端末10に表示される複数のアプリに対応する複数のアイコンの中から、印刷アプリに対応するアイコンを選択すれば、印刷アプリ50を起動させることができる。しかしながら、無線通信の知識が乏しいユーザがこのような動作を実行するのは困難であり得る。本実施例では、印刷アプリ50を容易に起動させることを実現するために、以下の図7の処理が実行される。
(BSの詳細:図7)
図7を参照して、図3のT25のBS(即ち図4のBS)の詳細を説明する。以下では、端末10の各アプリ42,44,50が実行する処理については、アプリを主体として記載して説明する。
本実施例では、プリンタ100のシール100Bによって示されるQRコードは、URI300がコード化されたものである。URI300は、位置文字列310とクエリ文字列320とを含む。位置文字列310は、サーバ200の位置情報「server.com」を含む。ここで、クエリとは、URIを構成する全文字列のうち、文字「?」より後ろの文字列である。クエリ文字列320は、プリンタ100のユニークID「xxxyyyzzz」を示す文字列「id=xxxyyyzzz」と、プリンタ100の機種名「AAA」を示す文字列「model=AAA」と、印刷アプリ50を識別する文字列「printapplication」と、を含む。ユニークIDとは、プリンタ100を含む複数のプリンタのそれぞれに割り当てられるユニークなIDであり、本実施例ではMACアドレスである。即ち、プリンタ100のユニークIDは、プリンタ100のMACアドレス「xxxyyyzzz」である。
T510及びT520は、図4のT110及びS120と同様である。T522では、カメラアプリ42は、T520で撮影されたQRコードをデコードすることによってURI300を取得し、URI300をOS40に供給する。これにより、OS40は、カメラアプリ42からURI300を取得し、次いで、URI300を利用すべきアプリケーションであるブラウザアプリ44を起動する。このように、カメラアプリ42がURI300をOS40に供給し、OS40がブラウザアプリ44を起動する。これは、カメラアプリ42がOS40を介してブラウザアプリ44を起動することに等しい。従って、図8では、T524の矢印では、カメラアプリ42がブラウザアプリ44を起動するように示されている。このように、2つのアプリの間の連携はOS40を介して実現されるが、図8では、OS40の動作を図示省略している。この点は、後述の第2実施例の図8でも同様である。
ブラウザアプリ44は、T524で起動されると、T530において、URI300を含むウェブページ要求をサーバ200に送信する。例えば、Wi-FiI/F16がインターネット通信を実現するためのルータ(例えばAP6)に接続されている場合には、ブラウザアプリ44は、Wi-FiI/F16を介して、ウェブページ要求をサーバ200に送信する。また、例えば、Wi-FiI/F16がルータに接続されていない場合には、ブラウザアプリ44は、図示省略のセルラーI/Fを介して、ウェブページ要求をサーバ200に送信することもできる。ここで、セルラーI/Fは、4G、5G等の通信を実行するためのI/Fである。
サーバ200は、T530において、端末10からウェブページ要求を受信すると、T532において、ウェブページ要求に含まれるURI300内のクエリ文字列320から機種名「AAA」を取得する。次いで、サーバ200は、T534において、メモリ234内の機種テーブル250(図2参照)から、取得済みの機種名「AAA」に関連付けられているメッセージ「Wi-Fiボタンを3回押してください」を抽出する。また、サーバ200は、クエリ文字列320から印刷アプリ50を識別する文字列「printapplication」を取得する。次いで、サーバ200は、抽出済みのメッセージと、取得済みの文字列「printapplication」に対応付けられているアプリストアボタンと、を含むウェブページを表わすウェブページデータを生成する。ウェブページデータは、さらに、URI300を含む。そして、サーバ200は、T536において、生成済みのウェブページデータを端末10に送信する。
ブラウザアプリ44は、T536において、サーバ200からウェブページデータを受信すると、T540において、ウェブページデータによって表わされるウェブページ400を表示部14に表示する。ウェブページ400は、メッセージ402とアプリストアボタン404とを含む。
ユーザは、ウェブページ400内のメッセージ402に応じて、T550において、プリンタ100の操作部112に含まれるWi-Fiボタン(図示省略)を3回押す。この場合、プリンタ100は、T552において、DPPOFF状態からDPPON状態に移行する。具体的には、プリンタ100(即ちCPU132)は、DPPOFF状態からDPPON状態に移行するための指示をWi-FiI/F116に供給する。これにより、プリンタ100は、DPP方式に従った通信(例えばAResの送信(図5のT220参照))を実行可能な状態になる。このように、本実施例によると、ウェブページ400が、機種名「AAA」を有するプリンタ100の状態をDPPON状態に変更するためのメッセージ402を含むので、ユーザは、プリンタ100の状態をDPPON状態に容易に変更することができる。このために、ユーザは、プリンタ100の状態をDPPON状態に適切に変更することができる。なお、仮に、プリンタ100がDPPOFF状態に維持されると、プリンタ100は、AResを端末10に送信することができない。この場合、Authが失敗し、プリンタ100とAP6との間にWi-Fi接続を確立させることができない。
また、ウェブページ400内のアプリストアボタン404は、いわゆるアプリストアにアクセスするためのボタンである。アプリストアは、印刷アプリ50を含む様々なアプリを端末10にインストールするためのウェブページである。ユーザは、T560において、アプリストアボタンを選択する操作を実行する。ブラウザアプリ44は、アプリストアボタンを選択する操作を受け付ける場合に、まず、アプリストアボタンに対応付けられている文字列「printapplication」によって識別される印刷アプリ50をインストール済みであるのか否かを判断する。ブラウザアプリ44は、印刷アプリ50をインストール済みであると判断する場合には、T562において、OS40を介して印刷アプリ50を起動する。
一方、ブラウザアプリ44は、印刷アプリ50をインストール済みでないと判断する場合には、予め決められているアプリストアのウェブページを表示し、ユーザからの指示に応じて印刷アプリ50をダウンロードしてインストールする。その後、ブラウザアプリ44は、T562において、OS40を介して印刷アプリ50を起動する。
印刷アプリ50は、T570において、まず、URIスキームを利用して、ウェブページデータに含まれるURI300を取得する。具体的には、ウェブページデータは、URIスキームを実行するための指示を含んでおり、ブラウザアプリ44は、当該指示に従って、ウェブページデータからURI300を取得し、OS40を介してURI300を印刷アプリ50に供給する。これにより、印刷アプリ40は、URI300を取得することができる。このように、URIスキームが利用されるので、印刷アプリ40は、URI300を適切に取得することができる。そして、印刷アプリ50は、URI300に含まれるクエリ文字列320の中からユニークID「xxxyyyzzz」を取得する。換言すると、印刷アプリ50は、プリンタ100のMACアドレス「xxxyyyzzz」を取得する。
次いで、印刷アプリ50は、T572において、予め決められているハッシュ演算式に従って、取得済みのユニークID「xxxyyyzzz」をハッシュ化することによって、プリンタ100の公開鍵PPK1を取得する。このように、プリンタ100のユニークID(即ちMACアドレス)がハッシュ化されたものが公開鍵PPK1であるので、ユニークIDは、公開鍵PPK1に関連する情報であると言える。本実施例では、プリンタ100のシール100BのQRコードによって示されるURI300内のユニークID「xxxyyyzzz」は、プリンタ100の公開鍵PPK1そのものではない。即ち、QRコードは、公開鍵PPK1そのものを示さない。このために、QRコードが公開鍵PPK1そのものを示す構成と比べると、公開鍵PPK1のセキュリティ(換言するとプリンタ100のセキュリティ)が高い。
T572が終了すると、BSが終了する。その後、上述したように、印刷アプリ50は、公開鍵PPK1及びMACアドレス「xxxyyyzzz」を利用して図5のAuth(即ち図3のT25)を実行し、さらに、図6のConfig(即ち図3のT30)を実行する。
(本実施例の効果)
本実施例によると、端末10のユーザは、ウェブページ400においてアプリストアボタン404を選択する操作を実行すれば(図7のT560)、印刷アプリ50を起動させることができ(T562)、印刷アプリ50に従ってDPP方式に従った無線通信をプリンタ100と実行して、プリンタ100とAP6との間にWi-Fi接続を確立させることができる。このため、ユーザは、例えば、端末10に表示されている複数のアイコンの中から印刷アプリ50のアイコンを選択して印刷アプリ50を起動させずに済む。従って、ユーザは、端末10を利用して、プリンタ100とAP6との間にWi-Fi接続を容易に確立させることができる。
(対応関係)
DPP方式が、「所定の通信方式」の一例である。プリンタ100及びAP6が、「一対の装置」の一例である。カメラアプリ42、ブラウザアプリ44、印刷アプリ50が、それぞれ、「コンピュータプログラム」、「ブラウザプログラム」、「接続アプリケーション」の一例である。ユニークID(即ちMACアドレス「xxxyyyzzz」)が、「関連情報」の一例である。アプリストアボタン404を選択する操作が、「所定の操作」の一例である。図6のConfigで実行される通信が、「対象通信」の一例である。DPPOFF状態、DPPON状態が、それぞれ、「不可能状態」、「可能状態」の一例である。ウェブページ400内のメッセージ402、プリンタ100のWi-Fiボタンを3回押す操作、機種名「AAA」が、それぞれ、「特定のメッセージ」、「特定の変更操作」、「特定の機種情報」の一例である。ハッシュ化のための演算が、「所定の演算」の一例である。図6のT310のプリンタ用COが、「接続情報」の一例である。
図7のT522の処理、T530の処理、T536の処理、T540の処理、T562の処理、T572の処理が、それぞれ、「第1の取得部」、「ウェブページ要求送信部」、「ウェブページ受信部」、「表示制御部」、「起動制御部」、「第2の取得部」によって実行される処理の一例である。図5のT210の処理、T220の処理が、それぞれ、「認証要求送信部」、「認証応答受信部」によって実行される処理の一例である。図6の各通信が、「端末側通信実行部」によって実行される処理の一例である。
図7のT534の処理、T536の処理が、それぞれ、「抽出部」、「ウェブページ送信部」によって実行される処理の一例である。
図5のT210の処理、T220の処理が、それぞれ、「認証要求受信部」、「認証応答送信部」によって実行される処理の一例である。図6の各通信が、「装置側通信実行部」によって実行される処理の一例である。図7のT552の処理が、「変更部」によって実行される処理の一例である。
(第2実施例)
続いて、第2実施例を説明する。第1実施例と同様の点は説明を省略する。本実施例では、シール100Bがプリンタ100の筐体100Aに貼り付けられていない。プリンタ100は、QRコードを表示可能な表示部114(図1、図2参照)を備える。また、サーバ200は、機種テーブル250(図2参照)を備えない。
本実施例では、図7のBSに代えて図8のBSが実行される。ユーザは、T600において、DPP起動操作をプリンタ100に実行する。当該操作は、例えば、操作部112内のDPPボタンを選択する操作であってもよいし、表示部114に表示される設定画面内のDPPボタンを選択する操作であってもよい。プリンタ100は、当該操作を受け付ける場合に、T602において、DPPOFF状態からDPPON状態に移行する。
次いで、プリンタ100は、T604において、QRコードを生成して、QRコードを表示部114に表示させる。QRコードは、URI350がコード化されたものである。URI350は、位置文字列360とクエリ文字列370とを含む。位置文字列360は、サーバ200の位置情報「server.com」を含む。クエリ文字列370は、プリンタ100のユニークID「xxxyyyzzz20190801154540」を示す文字列「id=xxxyyyzzz20190801154540」と、印刷アプリ50を識別する文字列「printapplication」と、を含む。本実施例では、ユニークIDは、プリンタ100のMACアドレス「xxxyyyzzz」と現在日時「20190801154540(即ち2019年8月1日15時45分40秒)」との組み合わせである。T604では、プリンタ100は、プリンタ100のMACアドレスと現在日時とを組み合わせてユニークIDを生成し、当該ユニークIDを含むURI350を生成し、当該URI350をコード化することによってQRコードを生成する。
T610~T630は、URIの内容が異なる点を除いて、図7のT510~T530と同様である。本実施例では、サーバ200は、機種テーブル250を備えていないので、T636において、プリンタ100をDPPON状態に変更するためのメッセージを含まないウェブページを表わすウェブページデータを端末10に送信する。
ブラウザアプリ44は、T636において、サーバ200からウェブページデータを受信すると、T640において、ウェブページデータによって表わされるウェブページ450を表示部14に表示する。ウェブページ450は、上記のメッセージを含んでおらず、アプリストアボタン454を含む。
T660及びT662は、T560及びT562と同様である。印刷アプリ50は、T670において、URIスキームを利用してURI350を取得し、クエリ文字列370の中からユニークID「xxxyyyzzz20190801154540」を取得する。そして、印刷アプリ50は、ユニークIDから日時を示す文字列以外の文字列「xxxyyyzzz」を抽出することによって、プリンタ100のMACアドレスを取得する。
T672は、ハッシュ化の対象のユニークIDが異なる点を除くと、図7のT572と同様である。これにより、印刷アプリ50は、公開鍵PPK1を取得することができる。なお、本実施例では、プリンタ100は、プリンタ100の出荷段階から公開鍵PPK1を予め記憶しているのではなく、T604で生成されたユニークIDをハッシュ化することによって公開鍵PPK1を生成する。即ち、プリンタ100は、DPPOFF状態からDPPON状態に変化する毎に、異なる公開鍵を生成することができる。このために、プリンタ100の公開鍵のセキュリティ(即ちプリンタ100のセキュリティ)が高い。
(本実施例の効果)
本実施例によっても、ユーザは、端末10を利用して、プリンタ100とAP6との間にWi-Fi接続を容易に確立させることができる。本実施例では、T602が、「変更部」によって実行される情報の一例である。T604の処理が、「出力制御部」によって実行される処理(即ち「出力制御処理」)の一例である。
以上、本明細書が開示する技術の具体例を詳細に説明したが、これらは例示に過ぎず、特許請求の範囲を限定するものではない。特許請求の範囲に記載の技術には、以上に例示した具体例を様々に変形、変更したものが含まれる。以下に変形例を列挙する。
(変形例1)図3のケースでは、端末10は、AP6のSSID「sss」及びパスワード「ttt」を利用して、AP6とのWi-Fi接続を確立する。これに代えて、端末10は、DPP方式の無線通信を実行して、AP6とのWi-Fi接続を確立してもよい。即ち、AP6は、DPP方式をサポートしており、AP6の公開鍵を示すQRコードを有する(例えばAP6の筐体にシールが貼り付けられている)。端末10は、当該QRコードを撮影することによってAP6の公開鍵を取得する(即ちBSを実行する)。その後、端末10は、図5及び図6と同様に、Auth及びConfigをAP6と実行する。ただし、端末10は、Configにおいて、AP用SinedConnector(以下ではSinedConnectorのことを「SC」と記載する)を含むAP用COを生成し、AP用COを含むCResをAP6に送信する。また、端末10は、端末用SCを生成する。そして、端末10及びAP6は、端末用SCとAP用SCとを利用してNetworkAccess(以下では「NA」と記載する)を実行することによって接続キーを共有し、接続キーを利用してWi-Fi接続を確立する。その後、端末10は、プリンタ100とのBS、Auth、及び、Config(図4~図6参照)を実行する。ただし、端末10は、Configにおいて、SSID及びパスワードを含むプリンタ用COではなく、プリンタ用SCを含むプリンタ用COを生成し、プリンタ用COを含むCResをプリンタ100に送信する。この場合、プリンタ100及びAP6は、プリンタ用SCとAP用SCとを利用してNAを実行することによって接続キーを共有し、接続キーを利用してWi-Fi接続を確立する。本変形例では、プリンタ用SCが、「接続情報」の一例である。
(変形例2)「第2の取得部」が関連情報に関連する公開鍵を取得する手法は特に限定されない。例えば、以下の各変形例2-1~2-4が採用されててもよい。
(変形例2-1)図7のT570において、印刷アプリ50は、いわゆるクリップボード(即ち一時的な記憶領域)を利用して、URI300を取得してもよい。即ち、OS40は、ユーザが、ウェブページ内に含まれるボタンであって、URI300をクリップボードに記憶するためのボタン(図示省略)を選択することに応じて、ウェブページデータに含まれるURI300をクリップボードにコピーする。次いで、印刷アプリ50は、クリップボードにアクセスしてURI300を取得する。そして、印刷アプリ50は、URI300からユニークIDを取得し、ユニークIDから公開鍵PPK1を取得する。
(変形例2-2)図7のT572において、印刷アプリ50は、印刷アプリ50自身がユニークIDをハッシュ化しなくてもよく、ユニークIDを演算サーバに送信してもよい。この場合、演算サーバは、ユニークIDをハッシュ化して公開鍵PPK1を生成する。そして、印刷アプリ50は、演算サーバから公開鍵PPK1を取得する。
(変形例2-3)サーバ200は、図7のT530で受信されたウェブページ要求に含まれるURI300からユニークIDを抽出し、ユニークIDをハッシュ化して公開鍵PPK1を生成し、公開鍵PPK1をメモリ234内の特定の記憶領域に記憶させてもよい。この場合、サーバ200は、T536において、ユニークIDを含まないウェブページデータであって、上記の特定の記憶領域にアクセスするためのリンク先URIを含むウェブページデータを端末10に送信する。そして、印刷アプリ50は、当該リンク先URIを利用してサーバ200内の特定の記憶領域にアクセスして、サーバ200から公開鍵PPK1を取得する。
(変形例2-4)図7のURI300は、クエリ文字列320を含んでいなくてもよい。この場合、クエリ文字列320として記述されている情報(即ちユニークID等)は、URI300とは別の情報としてQRコードに含まれていてもよい。この場合、T522では、ユニークID等は、メモリ34内の所定の記憶領域に記憶される。T530のウェブページ要求とT536のウェブページデータとは、ユニークID等を含まない。印刷アプリ50は、T570において、上記の所定の記憶領域にアクセスしてユニークID等を取得する。そして、印刷アプリ50は、ユニークIDから公開鍵PPK1を取得する。
(変形例3)ユニークIDは、MACアドレスでなくてもよく、公開鍵PPK1そのものであってもよい。本変形例でも、ユニークIDが、「公開鍵に関連する関連情報」の一例である。
(変形例4)端末10及びAP6の間にWi-Fi接続が確立されていなくてもよい。この場合、端末10は、図3のT25~T35の各処理を実行し、T35において、Configuratorとして動作し、プリンタ用SCを含むプリンタ用COを生成し、プリンタ用COを含むCResをプリンタ100に送信する。また、端末10は、端末用SCを含む端末用COを生成する。そして、端末10及びプリンタ100は、端末用SC及びプリンタ用SCを利用してNAを実行することによって接続キーを共有し、接続キーを利用してWi-Fi接続を確立する。本変形例では、プリンタ用SCが、「接続情報」の一例である。また、端末10及びプリンタ100が、「一対の装置」の一例である。
(変形例5)端末10及びAP6の間にWi-Fi接続が確立されていなくてもよい。代わりに、プリンタ100及びAP6の間にWi-Fi接続が確立されていてもよい。この場合、端末10は、図3のT25~T35の各処理を実行し、T35において、Enrolleeとして動作し、プリンタ100から、端末用SCを含む端末用COを含むCResを受信する。そして、端末10及びAP6は、端末用SC及びAP用SCを利用してNAを実行することによって接続キーを共有し、接続キーを利用してWi-Fi接続を確立する。本変形例では、端末用SCが、「接続情報」の一例であり、端末10及びAP6が、「一対の装置」の一例である。また、本変形例のように、「端末側通信実行部」は、通信装置から接続情報を受信することを含む対象通信を通信装置と実行してもよい。
(変形例6)プリンタ100は、図8のT604において、QRコードを表示する代わりに、QRコードの印刷を印刷実行部118に実行させてもよい。本変形例では、QRコードの印刷を印刷実行部118に実行させる処理が、「出力制御処理」の一例である。
(変形例7)端末10及びプリンタ100のそれぞれは、さらに、Wi-Fi方式とは異なる無線方式(例えば、BT(Bluetooth(登録商標)の略)方式、NFC(Near Field Communicationの略)方式等)に従った無線インターフェース(例えば、BTI/F、NFCI/F等)を備えていてもよい。この場合、図8のT604において、プリンタ100は、URI350の送信をプリンタ100のBTI/Fに指示してもよい。この場合、端末10は、端末10のBTI/Fを介して、URI350を受信することができる。本変形例では、URI350の送信をBTI/Fに指示することが、「出力制御処理」の一例である。また、別の変形例では、図8のT604において、プリンタ100は、URI350をプリンタ100のNFCI/Fに記憶させてもよい。この場合、端末10は、端末10のNFCI/Fを介して、URI350を受信することができる。本変形例では、URI350をNFCI/Fに記憶させることが、「出力制御処理」の一例である。これらの変形例では、BT方式の通信を実行するプログラム、NFC方式の通信を実行するプログラムが、それぞれ、「コンピュータプログラム」の一例である。
(変形例8)「コンピュータプログラム」及び「ブラウザプログラム」は、別々のプログラムでなくてもよく、1つのプログラム(即ち1つのアプリケーション)であってもよい。
(変形例9)図8のT602の処理のトリガは、T600のDPP起動操作でなくてもよく、例えば、プリンタ100の電源ON操作であってもよい、即ち、「変更部」は、出力制御処理の実行指示が受け付けられる前に、通信装置の状態を不可能状態から可能状態に変更してもよい。
(変形例10)端末10及びプリンタ100は、DPP方式をサポートしていなくてもよく、公開鍵、認証要求、及び、認証応答を利用して、Wi-Fi接続を確立するための他の方式をサポートしていてもよい。一般的に言うと、「所定の通信方式」は、DPP方式に限られない。
(変形例11)「通信装置」は、プリンタ100でなくてもよく、スキャナ、多機能機、携帯端末、PC、サーバ等の他のデバイスであってもよい。
(変形例12)上記の実施例では、図3~図8の各処理がソフトウェアによって実現されるが、これらの各処理のうちの少なくとも1つが論理回路等のハードウェアによって実現されてもよい。
本明細書または図面に説明した技術要素は、単独で、あるいは各種の組合せによって技術的有用性を発揮するものであり、出願時請求項記載の組合せに限定されるものではない。また、本明細書または図面に例示した技術は複数目的を同時に達成し得るものであり、そのうちの一つの目的を達成すること自体で技術的有用性を持つものである。
出願時の特許請求の範囲に記載の事項を以下に記載しておく。
(項目1)
通信システムであって、
通信装置と、
端末と、
サーバと、を備え、
前記端末は、
Wi-Fi規格の所定の通信方式に従った無線通信を実行するための端末側無線インターフェースと、
表示部と、
コンピュータプログラムと、ブラウザプログラムと、一対の装置の間に無線接続を確立するための接続アプリケーションと、を記憶するための端末側メモリと、
前記コンピュータプログラムを利用して、前記サーバの位置情報と、前記通信装置の公開鍵に関連する関連情報と、を取得する第1の取得部と、
前記ブラウザプログラムを利用して、少なくとも前記位置情報を含むウェブページ要求を前記サーバに送信するウェブページ要求送信部と、
前記ウェブページ要求が前記サーバに送信されることに応じて、前記ブラウザプログラムを利用して、前記サーバから、前記位置情報に対応するウェブページデータを受信するウェブページ受信部と、
前記ブラウザプログラムを利用して、前記ウェブページデータによって表わされるウェブページを前記表示部に表示させる表示制御部と、
前記ウェブページにおいて所定の操作が受け付けられる場合に、前記ブラウザプログラムを利用して、前記接続アプリケーションを起動させる起動制御部と、
前記接続アプリケーションを利用して、前記関連情報に関連する前記公開鍵を取得する第2の取得部と、
前記接続アプリケーションを利用して、前記端末側無線インターフェースを介して、前記所定の通信方式に従った認証要求であって、前記公開鍵が利用された前記認証要求を前記通信装置に送信する認証要求送信部と、
前記認証要求が前記通信装置に送信されることに応じて、前記接続アプリケーションを利用して、前記通信装置から、前記端末側無線インターフェースを介して、前記所定の通信方式に従った認証応答を受信する認証応答受信部と、
前記通信装置から前記認証応答が受信される場合に、前記接続アプリケーションを利用して、前記端末側無線インターフェースを介して、前記所定の通信方式に従った対象通信を前記通信装置と実行する端末側通信実行部であって、前記対象通信は、一対の装置の間に無線接続を確立するための通信である、前記端末側通信実行部と、
を備える、通信システム。
(項目2)
前記ウェブページは、前記通信装置の状態を、前記所定の通信方式に従った無線通信を実行不可能である不可能状態から、前記所定の通信方式に従った無線通信を実行可能である可能状態に変更するための特定の変更操作を示す特定のメッセージを含み、
前記通信装置は、
前記所定の通信方式に従った無線通信を実行するための装置側無線インターフェースと、
前記特定の変更操作が受け付けられる場合に、前記通信装置の状態を前記不可能状態から前記可能状態に変更する変更部と、
前記端末から、前記装置側無線インターフェースを介して、前記認証要求を受信する認証要求受信部と、
前記通信装置の状態が前記不可能状態から前記可能状態に変更された後に、前記端末から前記認証要求が受信される場合に、前記装置側無線インターフェースを介して、前記認証応答を前記端末に送信する認証応答送信部であって、前記通信装置の状態が前記不可能状態から前記可能状態に変更される前に、前記認証応答は送信されない、前記認証応答送信部と、
前記認証応答が前記端末に送信される場合に、前記装置側無線インターフェースを介して、前記所定の通信方式に従った前記対象通信を前記端末と実行する装置側通信実行部と、
を備える、項目1に記載の通信システム。
(項目3)
前記端末の前記第1の取得部は、前記コンピュータプログラムを利用して、前記サーバの前記位置情報と、前記関連情報と、前記通信装置の機種を示す特定の機種情報と、を取得し、
前記端末の前記ウェブページ要求部は、前記ブラウザプログラムを利用して、少なくとも前記位置情報と前記特定の機種情報とを含む前記ウェブページ要求を前記サーバに送信し、
前記サーバは、
複数の機種情報のそれぞれについて、当該機種情報と、当該機種情報に対応する装置の状態を前記不可能状態から前記可能状態に変更するための変更操作を示すメッセージと、を関連付けて記憶するサーバ側メモリと、
前記端末から前記ウェブページ要求が受信される場合に、前記サーバ側メモリから、前記ウェブページ要求に含まれる前記特定の機種情報に関連付けられている前記特定のメッセージであって、前記特定の変更操作を示す前記特定のメッセージを抽出する抽出部と、
抽出済みの前記特定のメッセージを含む前記ウェブページを表わす前記ウェブページデータを前記端末に送信するウェブページ送信部と、
を備える、項目1又は2に記載の通信システム。
(項目4)
端末のための接続アプリケーションであって、
前記端末は、
Wi-Fi規格の所定の通信方式に従った無線通信を実行するための端末側無線インターフェースと、
表示部と、
コンピュータプログラムと、ブラウザプログラムと、一対の装置の間に無線接続を確立するための前記接続アプリケーションと、を記憶するための端末側メモリと、
コンピュータと、を備え、
前記コンピュータプログラムは、前記コンピュータを、以下の各部、即ち、
サーバの位置情報と、通信装置の公開鍵に関連する関連情報と、を取得する第1の取得部として機能させ、
前記ブラウザプログラムは、前記コンピュータを、以下の各部、即ち、
少なくとも前記位置情報を含むウェブページ要求を前記サーバに送信するウェブページ要求送信部と、
前記ウェブページ要求が前記サーバに送信されることに応じて、前記サーバから、前記位置情報に対応するウェブページデータを受信するウェブページ受信部と、
前記ウェブページデータによって表わされるウェブページを前記表示部に表示させる表示制御部と、
前記ウェブページにおいて所定の操作が受け付けられる場合に、前記接続アプリケーションを起動させる起動制御部と、
として機能させ、
前記接続アプリケーションは、前記コンピュータを、以下の各部、即ち、
前記関連情報に関連する前記公開鍵を取得する第2の取得部と、
前記端末側無線インターフェースを介して、前記所定の通信方式に従った認証要求であって、前記公開鍵が利用された前記認証要求を前記通信装置に送信する認証要求送信部と、
前記認証要求が前記通信装置に送信されることに応じて、前記通信装置から、前記端末側無線インターフェースを介して、前記所定の通信方式に従った認証応答を受信する認証応答受信部と、
前記通信装置から前記認証応答が受信される場合に、前記端末側無線インターフェースを介して、前記所定の通信方式に従った対象通信を前記通信装置と実行する端末側通信実行部であって、前記対象通信は、一対の装置の間に無線接続を確立するための通信である、前記端末側通信実行部と、
として機能させる、接続アプリケーション。
(項目5)
前記第2の取得部は、前記関連情報を利用した所定の演算を実行することによって、前記公開鍵を取得する、項目4に記載の接続アプリケーション。
(項目6)
前記端末側通信実行部は、接続情報を前記通信装置に送信することを含む前記対象通信を前記通信装置と実行し、
前記接続情報は、前記通信装置及びアクセスポイントである前記一対の装置の間に前記無線接続を確立するための情報である、項目4又は5に記載の接続アプリケーション。
(項目7)
前記ウェブページ要求送信部は、少なくとも前記位置情報と前記関連情報とを含む前記ウェブページ要求を前記サーバに送信し、
前記ウェブページ受信部は、前記関連情報を含む前記ウェブページデータを受信し、
前記第2の取得部は、前記ウェブページデータに含まれる前記関連情報を利用して、前記公開鍵を取得する、項目4から6のいずれか一項に記載の接続アプリケーション。
(項目8)
前記第1の取得部は、前記位置情報と、クエリ文字列として記述されている前記関連情報と、を含むURI(Uniform Resource Identifierの略)を取得することによって、前記位置情報と前記関連情報とを取得する、項目4から7のいずれか一項に記載の接続アプリケーション。
(項目9)
通信装置であって、
Wi-Fi規格の所定の通信方式に従った無線通信を実行するための装置側無線インターフェースと、
サーバの位置情報と、前記通信装置の公開鍵に関連する関連情報と、をコード化することによって得られるコード画像を示すシールが貼り付けられている筐体であって、
前記位置情報は、端末が、前記サーバからウェブページデータを受信し、前記ウェブページデータによって表わされるウェブページを表示するために、利用され、
前記ウェブページにおいて所定の操作が受け付けられる場合に、前記端末の接続アプリケーションが起動され、
前記接続アプリケーションは、前記関連情報に関連する前記公開鍵を取得し、かつ、一対の装置の間に無線接続を確立するためのアプリケーションである、前記筐体と、
前記公開鍵を取得した前記端末から、前記装置側無線インターフェースを介して、前記所定の通信方式に従った認証要求であって、前記公開鍵が利用された前記認証要求を受信する認証要求受信部と、
前記端末から前記認証要求が受信される場合に、前記装置側無線インターフェースを介して、前記認証応答を前記端末に送信する認証応答送信部と、
前記認証応答が前記端末に送信される場合に、前記装置側無線インターフェースを介して、前記所定の通信方式に従った対象通信を前記端末と実行する装置側通信実行部であって、前記対象通信は、一対の装置の間に無線接続を確立するための通信である、前記装置側通信実行部と、
を備える、通信装置。
(項目10)
前記ウェブページは、前記通信装置の状態を、前記所定の通信方式に従った無線通信を実行不可能である不可能状態から、前記所定の通信方式に従った無線通信を実行可能である可能状態に変更するための特定の変更操作を示す特定のメッセージを含み、
前記通信装置は、さらに、
前記特定の変更操作が受け付けられる場合に、前記通信装置の状態を前記不可能状態から前記可能状態に変更する変更部を備え、
前記認証応答送信部は、前記通信装置の状態が前記不可能状態から前記可能状態に変更された後に、前記端末から前記認証要求が受信される場合に、前記認証応答を前記通信装置に送信し、
前記通信装置の状態が前記不可能状態から前記可能状態に変更される前に、前記認証応答は送信されない、項目9に記載の通信装置。
(項目11)
通信装置であって、
Wi-Fi規格の所定の通信方式に従った無線通信を実行するための装置側無線インターフェースと、
サーバの位置情報と、前記通信装置の公開鍵に関連する関連情報と、を外部に出力するための出力制御処理を実行する出力制御部であって、
前記位置情報は、端末が、前記サーバからウェブページデータを受信し、前記ウェブページデータによって表わされるウェブページを表示するために、利用され、
前記ウェブページにおいて所定の操作が受け付けられる場合に、前記端末の接続アプリケーションが起動され、
前記接続アプリケーションは、前記関連情報に関連する前記公開鍵を取得し、かつ、一対の装置の間に無線接続を確立するためのアプリケーションである、前記出力制御部と、
前記公開鍵を取得した前記端末から、前記装置側無線インターフェースを介して、前記所定の通信方式に従った認証要求であって、前記公開鍵が利用された前記認証要求を受信する認証要求受信部と、
前記端末から前記認証要求が受信される場合に、前記装置側無線インターフェースを介して、前記認証応答を前記端末に送信する認証応答送信部と、
前記認証応答が前記端末に送信される場合に、前記装置側無線インターフェースを介して、前記所定の通信方式に従った対象通信を前記端末と実行する装置側通信実行部であって、前記対象通信は、一対の装置の間に無線接続を確立するための通信である、前記装置側通信実行部と、
を備える、通信装置。
(項目12)
前記通信装置は、さらに、
前記出力制御処理の実行指示が受け付けられる場合に、前記通信装置の状態を、前記所定の通信方式に従った無線通信を実行不可能である不可能状態から、前記所定の通信方式に従った無線通信を実行可能である可能状態に変更する変更部を備え、
前記認証応答送信部は、前記通信装置の状態が前記不可能状態から前記可能状態に変更された後に、前記端末から前記認証要求が受信される場合に、前記認証応答を前記通信装置に送信し、
前記通信装置の状態が前記不可能状態から前記可能状態に変更される前に、前記認証応答は送信されない、項目11に記載の通信装置。
(項目13)
前記関連情報は、前記装置側無線インターフェースのMACアドレスを含み、
前記公開鍵は、前記関連情報を利用した所定の演算を実行することによって得られる値である、項目9から12のいずれか一項に記載の通信装置。
(項目14)
前記装置側通信実行部は、前記端末から接続情報を受信することを含む前記対象通信を前記通信装置と実行し、
前記接続情報は、前記通信装置とアクセスポイントである前記一対の装置の間に前記無線接続を確立するための情報である、項目9から13のいずれか一項に記載の通信装置。
2:通信システム、6:AP、10:端末、40:OS、42:カメラアプリ、44:ブラウザアプリ、50:印刷アプリ、100:プリンタ、200:サーバ

Claims (7)

  1. 通信システムであって、
    通信装置と、
    端末と、
    サーバと、を備え、
    前記端末は、
    Wi-Fi規格の所定の通信方式に従った無線通信を実行するための端末側無線インターフェースと、
    表示部と、
    コンピュータプログラムと、ブラウザプログラムと、一対の装置の間に無線接続を確立するための接続アプリケーションと、を記憶するための端末側メモリであって、前記一対の装置は、前記通信装置及びアクセスポイント、前記通信装置及び前記端末、又は、前記端末及びアクセスポイントである、前記端末側メモリと、
    前記コンピュータプログラムを利用して、前記サーバの位置情報と、前記通信装置の公開鍵に関連する関連情報であって、前記公開鍵とは異なる前記関連情報と、を取得する第1の取得部と、
    前記ブラウザプログラムを利用して、少なくとも前記位置情報を含むウェブページ要求を前記サーバに送信するウェブページ要求送信部と、
    前記ウェブページ要求が前記サーバに送信されることに応じて、前記ブラウザプログラムを利用して、前記サーバから、前記位置情報に対応するウェブページデータを受信するウェブページ受信部と、
    前記ブラウザプログラムを利用して、前記ウェブページデータによって表わされるウェブページを前記表示部に表示させる表示制御部と、
    前記ウェブページにおいて所定の操作が受け付けられる場合に、前記ブラウザプログラムを利用して、前記接続アプリケーションを起動させる起動制御部と、
    前記接続アプリケーションを利用して、前記関連情報を利用した所定の演算を実行することによって、前記公開鍵を取得する第2の取得部と、
    前記接続アプリケーションを利用して、前記端末側無線インターフェースを介して、前記所定の通信方式に従った認証要求であって、前記公開鍵が利用された前記認証要求を前記通信装置に送信する認証要求送信部と、
    前記認証要求が前記通信装置に送信されることに応じて、前記接続アプリケーションを利用して、前記通信装置から、前記端末側無線インターフェースを介して、前記所定の通信方式に従った認証応答を受信する認証応答受信部と、
    前記通信装置から前記認証応答が受信される場合に、前記接続アプリケーションを利用して、前記端末側無線インターフェースを介して、前記所定の通信方式に従った対象通信を前記通信装置と実行する端末側通信実行部であって、前記対象通信は、前記一対の装置の間に無線接続を確立するための通信である、前記端末側通信実行部と、
    を備える、通信システム。
  2. 通信システムであって、
    通信装置と、
    端末と、
    サーバと、を備え、
    前記端末は、
    Wi-Fi規格の所定の通信方式に従った無線通信を実行するための端末側無線インターフェースと、
    表示部と、
    コンピュータプログラムと、ブラウザプログラムと、一対の装置の間に無線接続を確立するための接続アプリケーションと、を記憶するための端末側メモリであって、前記一対の装置は、前記通信装置及びアクセスポイント、前記通信装置及び前記端末、又は、前記端末及びアクセスポイントである、前記端末側メモリと、
    前記コンピュータプログラムを利用して、前記サーバの位置情報と、前記通信装置の公開鍵に関連する関連情報と、を取得する第1の取得部と、
    前記ブラウザプログラムを利用して、少なくとも前記位置情報を含むウェブページ要求を前記サーバに送信するウェブページ要求送信部と、
    前記ウェブページ要求が前記サーバに送信されることに応じて、前記ブラウザプログラムを利用して、前記サーバから、前記位置情報に対応するウェブページデータを受信するウェブページ受信部と、
    前記ブラウザプログラムを利用して、前記ウェブページデータによって表わされるウェブページを前記表示部に表示させる表示制御部と、
    前記ウェブページにおいて所定の操作が受け付けられる場合に、前記ブラウザプログラムを利用して、前記接続アプリケーションを起動させる起動制御部と、
    前記接続アプリケーションを利用して、前記関連情報に関連する前記公開鍵を取得する第2の取得部と、
    前記接続アプリケーションを利用して、前記端末側無線インターフェースを介して、前記所定の通信方式に従った認証要求であって、前記公開鍵が利用された前記認証要求を前記通信装置に送信する認証要求送信部と、
    前記認証要求が前記通信装置に送信されることに応じて、前記接続アプリケーションを利用して、前記通信装置から、前記端末側無線インターフェースを介して、前記所定の通信方式に従った認証応答を受信する認証応答受信部と、
    前記通信装置から前記認証応答が受信される場合に、前記接続アプリケーションを利用して、前記端末側無線インターフェースを介して、前記所定の通信方式に従った対象通信を前記通信装置と実行する端末側通信実行部であって、前記対象通信は、前記一対の装置の間に無線接続を確立するための通信である、前記端末側通信実行部と、
    を備え
    前記ウェブページは、前記通信装置の状態を、前記所定の通信方式に従った無線通信を実行不可能である不可能状態から、前記所定の通信方式に従った無線通信を実行可能である可能状態に変更するための特定の変更操作を示す特定のメッセージを含み、
    前記通信装置は、
    前記所定の通信方式に従った無線通信を実行するための装置側無線インターフェースと、
    前記特定の変更操作が受け付けられる場合に、前記通信装置の状態を前記不可能状態から前記可能状態に変更する変更部と、
    前記端末から、前記装置側無線インターフェースを介して、前記認証要求を受信する認証要求受信部と、
    前記通信装置の状態が前記不可能状態から前記可能状態に変更された後に、前記端末から前記認証要求が受信される場合に、前記装置側無線インターフェースを介して、前記認証応答を前記端末に送信する認証応答送信部であって、前記通信装置の状態が前記不可能状態から前記可能状態に変更される前に、前記認証応答は送信されない、前記認証応答送信部と、
    前記認証応答が前記端末に送信される場合に、前記装置側無線インターフェースを介して、前記所定の通信方式に従った前記対象通信を前記端末と実行する装置側通信実行部と、
    を備える、通信システム。
  3. 通信システムであって、
    通信装置と、
    端末と、
    サーバと、を備え、
    前記端末は、
    Wi-Fi規格の所定の通信方式に従った無線通信を実行するための端末側無線インターフェースと、
    表示部と、
    コンピュータプログラムと、ブラウザプログラムと、一対の装置の間に無線接続を確立するための接続アプリケーションと、を記憶するための端末側メモリであって、前記一対の装置は、前記通信装置及びアクセスポイント、前記通信装置及び前記端末、又は、前記端末及びアクセスポイントである、前記端末側メモリと、
    前記コンピュータプログラムを利用して、前記サーバの位置情報と、前記通信装置の公開鍵に関連する関連情報と、を取得する第1の取得部と、
    前記ブラウザプログラムを利用して、少なくとも前記位置情報を含むウェブページ要求を前記サーバに送信するウェブページ要求送信部と、
    前記ウェブページ要求が前記サーバに送信されることに応じて、前記ブラウザプログラムを利用して、前記サーバから、前記位置情報に対応するウェブページデータを受信するウェブページ受信部と、
    前記ブラウザプログラムを利用して、前記ウェブページデータによって表わされるウェブページを前記表示部に表示させる表示制御部と、
    前記ウェブページにおいて所定の操作が受け付けられる場合に、前記ブラウザプログラムを利用して、前記接続アプリケーションを起動させる起動制御部と、
    前記接続アプリケーションを利用して、前記関連情報に関連する前記公開鍵を取得する第2の取得部と、
    前記接続アプリケーションを利用して、前記端末側無線インターフェースを介して、前記所定の通信方式に従った認証要求であって、前記公開鍵が利用された前記認証要求を前記通信装置に送信する認証要求送信部と、
    前記認証要求が前記通信装置に送信されることに応じて、前記接続アプリケーションを利用して、前記通信装置から、前記端末側無線インターフェースを介して、前記所定の通信方式に従った認証応答を受信する認証応答受信部と、
    前記通信装置から前記認証応答が受信される場合に、前記接続アプリケーションを利用して、前記端末側無線インターフェースを介して、前記所定の通信方式に従った対象通信を前記通信装置と実行する端末側通信実行部であって、前記対象通信は、前記一対の装置の間に無線接続を確立するための通信である、前記端末側通信実行部と、
    を備え
    前記端末の前記第1の取得部は、前記コンピュータプログラムを利用して、前記サーバの前記位置情報と、前記関連情報と、前記通信装置の機種を示す特定の機種情報と、を取得し、
    前記端末の前記ウェブページ要求送信部は、前記ブラウザプログラムを利用して、少なくとも前記位置情報と前記特定の機種情報とを含む前記ウェブページ要求を前記サーバに送信し、
    前記サーバは、
    複数の機種情報のそれぞれについて、当該機種情報と、当該機種情報に対応する装置の状態を、前記所定の通信方式に従った無線通信を実行不可能である不可能状態から、前記所定の通信方式に従った無線通信を実行可能である可能状態に変更するための変更操作を示すメッセージと、を関連付けて記憶するサーバ側メモリを備え、
    前記サーバは、さらに、
    前記端末から前記ウェブページ要求が受信される場合に、前記サーバ側メモリから、前記ウェブページ要求に含まれる前記特定の機種情報に関連付けられている特定のメッセージであって、前記通信装置の状態を前記不可能状態から前記可能状態に変更するための特定の変更操作を示す前記特定のメッセージを抽出する抽出部と、
    抽出済みの前記特定のメッセージを含む前記ウェブページを表わす前記ウェブページデータを前記端末に送信するウェブページ送信部と、
    を備える、通信システム。
  4. 端末のための接続アプリケーションであって、
    前記端末は、
    Wi-Fi規格の所定の通信方式に従った無線通信を実行するための端末側無線インターフェースと、
    表示部と、
    コンピュータプログラムと、ブラウザプログラムと、一対の装置の間に無線接続を確立するための前記接続アプリケーションと、を記憶するための端末側メモリであって、前記一対の装置は、通信装置及びアクセスポイント、前記通信装置及び前記端末、又は、前記端末及びアクセスポイントである、前記端末側メモリと、
    コンピュータと、を備え、
    前記コンピュータプログラムは、前記コンピュータを、以下の各部、即ち、
    サーバの位置情報と、前記通信装置の公開鍵に関連する関連情報であって、前記公開鍵とは異なる前記関連情報と、を取得する第1の取得部として機能させ、
    前記ブラウザプログラムは、前記コンピュータを、以下の各部、即ち、
    少なくとも前記位置情報を含むウェブページ要求を前記サーバに送信するウェブページ要求送信部と、
    前記ウェブページ要求が前記サーバに送信されることに応じて、前記サーバから、前記位置情報に対応するウェブページデータを受信するウェブページ受信部と、
    前記ウェブページデータによって表わされるウェブページを前記表示部に表示させる表示制御部と、
    前記ウェブページにおいて所定の操作が受け付けられる場合に、前記接続アプリケーションを起動させる起動制御部と、
    として機能させ、
    前記接続アプリケーションは、前記コンピュータを、以下の各部、即ち、
    前記関連情報を利用した所定の演算を実行することによって、前記公開鍵を取得する第2の取得部と、
    前記端末側無線インターフェースを介して、前記所定の通信方式に従った認証要求であって、前記公開鍵が利用された前記認証要求を前記通信装置に送信する認証要求送信部と、
    前記認証要求が前記通信装置に送信されることに応じて、前記通信装置から、前記端末側無線インターフェースを介して、前記所定の通信方式に従った認証応答を受信する認証応答受信部と、
    前記通信装置から前記認証応答が受信される場合に、前記端末側無線インターフェースを介して、前記所定の通信方式に従った対象通信を前記通信装置と実行する端末側通信実行部であって、前記対象通信は、前記一対の装置の間に無線接続を確立するための通信である、前記端末側通信実行部と、
    として機能させる、接続アプリケーション。
  5. 前記端末側通信実行部は、接続情報を前記通信装置に送信することを含む前記対象通信を前記通信装置と実行し、
    前記接続情報は、前記通信装置及びアクセスポイントである前記一対の装置の間に前記無線接続を確立するための情報である、請求項4に記載の接続アプリケーション。
  6. 前記ウェブページ要求送信部は、少なくとも前記位置情報と前記関連情報とを含む前記ウェブページ要求を前記サーバに送信し、
    前記ウェブページ受信部は、前記関連情報を含む前記ウェブページデータを受信し、
    前記第2の取得部は、前記ウェブページデータに含まれる前記関連情報を利用して、前記公開鍵を取得する、請求項4又は5に記載の接続アプリケーション。
  7. 前記第1の取得部は、前記位置情報と、クエリ文字列として記述されている前記関連情報と、を含むURI(Uniform Resource Identifierの略)を取得することによって、前記位置情報と前記関連情報とを取得する、請求項4からのいずれか一項に記載の接続アプリケーション。
JP2019158073A 2019-08-30 2019-08-30 通信システムと端末のための接続アプリケーションと通信装置 Active JP7379943B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2019158073A JP7379943B2 (ja) 2019-08-30 2019-08-30 通信システムと端末のための接続アプリケーションと通信装置
US17/006,160 US11134529B2 (en) 2019-08-30 2020-08-28 Communication system, non-transitory computer-readable recording medium storing connection application for terminal, and communication device
US17/480,197 US11570830B2 (en) 2019-08-30 2021-09-21 Communication system, non-transitory computer-readable recording medium storing connection application for terminal, and communication device for establishing wireless connection between pair of devices
US18/159,009 US11838965B2 (en) 2019-08-30 2023-01-24 Communication system, non-transitory computer-readable recording medium storing connection application for terminal, and communication device
JP2023187809A JP2023181447A (ja) 2019-08-30 2023-11-01 通信システムと端末のための接続アプリケーション

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019158073A JP7379943B2 (ja) 2019-08-30 2019-08-30 通信システムと端末のための接続アプリケーションと通信装置

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2023187809A Division JP2023181447A (ja) 2019-08-30 2023-11-01 通信システムと端末のための接続アプリケーション

Publications (2)

Publication Number Publication Date
JP2021036650A JP2021036650A (ja) 2021-03-04
JP7379943B2 true JP7379943B2 (ja) 2023-11-15

Family

ID=74680387

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2019158073A Active JP7379943B2 (ja) 2019-08-30 2019-08-30 通信システムと端末のための接続アプリケーションと通信装置
JP2023187809A Pending JP2023181447A (ja) 2019-08-30 2023-11-01 通信システムと端末のための接続アプリケーション

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2023187809A Pending JP2023181447A (ja) 2019-08-30 2023-11-01 通信システムと端末のための接続アプリケーション

Country Status (2)

Country Link
US (3) US11134529B2 (ja)
JP (2) JP7379943B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7379943B2 (ja) 2019-08-30 2023-11-15 ブラザー工業株式会社 通信システムと端末のための接続アプリケーションと通信装置
FR3101454B1 (fr) * 2019-09-30 2022-03-18 Bpce Procédé pour permettre à un utilisateur d’accéder à une chaîne de blocs d’une organisation
JP2022131098A (ja) * 2021-02-26 2022-09-07 ブラザー工業株式会社 通信システムと端末のためのコンピュータプログラムと通信装置
JP2023183237A (ja) * 2022-06-15 2023-12-27 キヤノン株式会社 印刷装置、その制御方法及びプログラム

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009135688A (ja) 2007-11-29 2009-06-18 Fujitsu Ten Ltd 認証方法、認証システムおよび車載装置
JP2014518419A (ja) 2011-06-16 2014-07-28 マイクロソフト コーポレーション ブラウジング活動に基づく該当アプリケーションの識別
JP2015532557A (ja) 2012-10-15 2015-11-09 コーニンクレッカ フィリップス エヌ ヴェKoninklijke Philips N.V. ワイヤレス通信システム
JP2016162122A (ja) 2015-02-27 2016-09-05 ブラザー工業株式会社 情報処理装置、プログラムおよび通信システム
JP2018182440A (ja) 2017-04-07 2018-11-15 株式会社リコー 通信システム、通信端末、接続方法およびプログラム
US10169587B1 (en) 2018-04-27 2019-01-01 John A. Nix Hosted device provisioning protocol with servers and a networked initiator
JP2019029989A (ja) 2017-07-28 2019-02-21 キヤノン株式会社 通信装置、通信装置の制御方法及びプログラム

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101855861A (zh) 2007-11-16 2010-10-06 富士通天株式会社 认证方法、认证系统、车载装置以及认证装置
JP5712562B2 (ja) * 2010-10-29 2015-05-07 セイコーエプソン株式会社 コンテンツ出力システム、コンテンツサーバー、および、コンテンツ出力方法
US20130326069A1 (en) * 2012-05-30 2013-12-05 Eric Chinhai Wang Configuring Wireless Devices Over a Wireless Connection
JP6139121B2 (ja) 2012-12-12 2017-05-31 Kddi株式会社 無線lan設定端末、無線lan端末および無線lan設定方法
US9483886B2 (en) 2014-10-01 2016-11-01 Continental Intelligent Transportation Systems, LLC Method and system for remote access control
JP6407190B2 (ja) 2016-03-24 2018-10-17 キヤノン株式会社 通信装置、通信装置の制御方法及びプログラム
JP6776779B2 (ja) * 2016-09-30 2020-10-28 ブラザー工業株式会社 通信装置
JP2019013034A (ja) 2018-09-19 2019-01-24 キヤノン株式会社 通信装置、通信装置の制御方法及びプログラム
JP7338329B2 (ja) * 2019-08-30 2023-09-05 ブラザー工業株式会社 端末装置と端末装置のためのコンピュータプログラム
JP7379943B2 (ja) * 2019-08-30 2023-11-15 ブラザー工業株式会社 通信システムと端末のための接続アプリケーションと通信装置

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009135688A (ja) 2007-11-29 2009-06-18 Fujitsu Ten Ltd 認証方法、認証システムおよび車載装置
JP2014518419A (ja) 2011-06-16 2014-07-28 マイクロソフト コーポレーション ブラウジング活動に基づく該当アプリケーションの識別
JP2015532557A (ja) 2012-10-15 2015-11-09 コーニンクレッカ フィリップス エヌ ヴェKoninklijke Philips N.V. ワイヤレス通信システム
JP2016162122A (ja) 2015-02-27 2016-09-05 ブラザー工業株式会社 情報処理装置、プログラムおよび通信システム
JP2018182440A (ja) 2017-04-07 2018-11-15 株式会社リコー 通信システム、通信端末、接続方法およびプログラム
JP2019029989A (ja) 2017-07-28 2019-02-21 キヤノン株式会社 通信装置、通信装置の制御方法及びプログラム
US10169587B1 (en) 2018-04-27 2019-01-01 John A. Nix Hosted device provisioning protocol with servers and a networked initiator

Also Published As

Publication number Publication date
JP2023181447A (ja) 2023-12-21
US11838965B2 (en) 2023-12-05
US11134529B2 (en) 2021-09-28
JP2021036650A (ja) 2021-03-04
US20220015170A1 (en) 2022-01-13
US11570830B2 (en) 2023-01-31
US20230171827A1 (en) 2023-06-01
US20210068179A1 (en) 2021-03-04

Similar Documents

Publication Publication Date Title
JP7379943B2 (ja) 通信システムと端末のための接続アプリケーションと通信装置
US11630619B2 (en) Terminal device, access point, communication device, and computer programs therefor
JP7215048B2 (ja) 端末装置のためのコンピュータプログラム、及び、端末装置
JP7468602B2 (ja) プリンタとプリンタのためのコンピュータプログラム
JP7476948B2 (ja) 通信装置、通信装置のためのコンピュータプログラム、及び、第1の外部装置のためのコンピュータプログラム
JP7359273B2 (ja) 通信装置と通信装置のためのコンピュータプログラム
JP2023153335A (ja) 端末装置と端末装置のためのコンピュータプログラム
US20210377024A1 (en) Non-transitory computer-readable recording medium storing computer-readable instructions for terminal device and communication device
JP2019180037A (ja) 通信装置と通信装置のためのコンピュータプログラム
JP2019180038A (ja) 通信装置と通信装置のためのコンピュータプログラム
JP7392776B2 (ja) 通信装置と通信装置のためのコンピュータプログラム
JP2023168594A (ja) 通信装置と通信装置のためのコンピュータプログラム
JP7196533B2 (ja) 通信装置と通信装置のためのコンピュータプログラム
JP7419728B2 (ja) 通信装置と通信装置のためのコンピュータプログラム
JP7293950B2 (ja) 端末装置と端末装置のためのコンピュータプログラム
JP7439642B2 (ja) 端末装置のためのコンピュータプログラムと通信装置とサーバのためのコンピュータプログラム
JP2022131101A (ja) 通信システムと端末のためのコンピュータプログラムと通信装置
US20210378034A1 (en) Non-transitory computer-readable recording medium storing computer-readable instructions for terminal device and communication device
JP2024051736A (ja) 通信装置、通信装置のためのコンピュータプログラム、端末装置のためのアプリケーションプログラム、及び、端末装置
JP2022131098A (ja) 通信システムと端末のためのコンピュータプログラムと通信装置
JP2021197041A (ja) 通信システム、通信装置、及び、端末装置のためのコンピュータプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220726

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230411

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230516

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230629

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20231003

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20231016

R150 Certificate of patent or registration of utility model

Ref document number: 7379943

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150