CN112449442A - 第一通信设备和用于第一通信设备的计算机程序 - Google Patents
第一通信设备和用于第一通信设备的计算机程序 Download PDFInfo
- Publication number
- CN112449442A CN112449442A CN202010885900.4A CN202010885900A CN112449442A CN 112449442 A CN112449442 A CN 112449442A CN 202010885900 A CN202010885900 A CN 202010885900A CN 112449442 A CN112449442 A CN 112449442A
- Authority
- CN
- China
- Prior art keywords
- communication device
- printer
- terminal
- wireless
- information
- 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.)
- Pending
Links
- 238000004891 communication Methods 0.000 title claims abstract description 199
- 238000004590 computer program Methods 0.000 title claims description 6
- 230000004044 response Effects 0.000 claims abstract description 47
- 230000005540 biological transmission Effects 0.000 claims description 13
- 230000006870 function Effects 0.000 claims description 5
- 238000000034 method Methods 0.000 abstract description 100
- 230000008569 process Effects 0.000 abstract description 95
- 239000003999 initiator Substances 0.000 description 28
- 230000004048 modification Effects 0.000 description 18
- 238000012986 modification Methods 0.000 description 18
- 101150038925 TPK2 gene Proteins 0.000 description 12
- 101150093825 TPK3 gene Proteins 0.000 description 12
- 238000010586 diagram Methods 0.000 description 12
- 101001122984 Dictyostelium discoideum Polyphosphate kinase Proteins 0.000 description 9
- 101150040316 ppk2 gene Proteins 0.000 description 9
- 101100269977 Arabidopsis thaliana APK2 gene Proteins 0.000 description 8
- 101100191221 Schizosaccharomyces pombe (strain 972 / ATCC 24843) ppk3 gene Proteins 0.000 description 6
- 101100298369 Schizosaccharomyces pombe (strain 972 / ATCC 24843) ppk5 gene Proteins 0.000 description 5
- 101100403808 Drosophila melanogaster Nach gene Proteins 0.000 description 4
- 101100452786 Schizosaccharomyces pombe (strain 972 / ATCC 24843) ire1 gene Proteins 0.000 description 4
- 102100037495 Thiamin pyrophosphokinase 1 Human genes 0.000 description 4
- 101710203399 Thiamin pyrophosphokinase 1 Proteins 0.000 description 4
- 101100409047 Chlorobaculum tepidum (strain ATCC 49652 / DSM 12025 / NBRC 103806 / TLS) ppk2 gene Proteins 0.000 description 3
- 230000000052 comparative effect Effects 0.000 description 3
- 101001064096 Homo sapiens Protein disulfide-thiol oxidoreductase Proteins 0.000 description 2
- 102100030728 Protein disulfide-thiol oxidoreductase Human genes 0.000 description 2
- 230000009471 action Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 241000238633 Odonata Species 0.000 description 1
- 101001077374 Oryza sativa subsp. japonica UMP-CMP kinase 3 Proteins 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1223—Dedicated interfaces to print systems specifically adapted to use a particular technique
- G06F3/1236—Connection management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W76/00—Connection management
- H04W76/10—Connection setup
- H04W76/14—Direct-mode setup
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W84/00—Network topologies
- H04W84/02—Hierarchically pre-organised networks, e.g. paging networks, cellular networks, WLAN [Wireless Local Area Network] or WLL [Wireless Local Loop]
- H04W84/10—Small scale networks; Flat hierarchical networks
- H04W84/12—WLAN [Wireless Local Area Networks]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1202—Dedicated interfaces to print systems specifically adapted to achieve a particular effect
- G06F3/1222—Increasing security of the print job
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1223—Dedicated interfaces to print systems specifically adapted to use a particular technique
- G06F3/1229—Printer resources management or printer maintenance, e.g. device status, power levels
- G06F3/1231—Device related settings, e.g. IP address, Name, Identification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1278—Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
- G06F3/1292—Mobile client, e.g. wireless printing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1293—Printer information exchange with computer
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K7/00—Methods or arrangements for sensing record carriers, e.g. for reading patterns
- G06K7/10—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
- G06K7/10544—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation by scanning of the records by radiation in the optical part of the electromagnetic spectrum
- G06K7/10712—Fixed beam scanning
- G06K7/10722—Photodetector array or CCD scanning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K7/00—Methods or arrangements for sensing record carriers, e.g. for reading patterns
- G06K7/10—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
- G06K7/14—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation using light without selection of wavelength, e.g. sensing reflected white light
- G06K7/1404—Methods for optical code recognition
- G06K7/1408—Methods for optical code recognition the method being specifically adapted for the type of code
- G06K7/1417—2D bar codes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0823—Network architectures or network communication protocols for network security for authentication of entities using certificates
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/04—Key management, e.g. using generic bootstrapping architecture [GBA]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/06—Authentication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W76/00—Connection management
- H04W76/10—Connection setup
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W76/00—Connection management
- H04W76/10—Connection setup
- H04W76/11—Allocation or use of connection identifiers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W76/00—Connection management
- H04W76/20—Manipulation of established connections
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W84/00—Network topologies
- H04W84/18—Self-organising networks, e.g. ad-hoc networks or sensor networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Computer Security & Cryptography (AREA)
- Electromagnetism (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Toxicology (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
第一通信设备可以执行:向外输出输出信息的输出控制处理,使用第一通信设备的公共密钥获得该输出信息;从已经获得公共密钥的第二通信设备接收认证请求;在确定在第一通信设备和第一接入点之间已经建立无线连接的情况下,经由无线接口向第二通信设备发送第一认证响应,第一认证响应包括指示第一通信设备将充当第一角色的第一角色信息,该第一角色是将第一无线设置信息发送至第二通信设备的角色;以及将第一无线设置信息发送至第二通信设备。
Description
技术领域
本文的公开内容公开了一种用于在第一通信设备和另一设备之间建立无线连接的技术。
背景技术
已知设备配置协议(DPP)方案,该方案是由Wi-Fi联盟建立的无线通信方案。DPP方案是用于容易地在一对设备之间建立Wi-Fi(注册商标,Wi-Fi联盟)连接的无线通信方案。在DPP方案中,担当配置者角色的第一设备将用于建立Wi-Fi连接的信息发送给担当注册者角色的第二设备。然后,在第二设备和第一设备之间建立Wi-Fi连接。
发明内容
本文的公开内容提供了一种技术,该技术使第一通信设备能够基于第一通信设备的状况来充当适合的角色。
本文公开的第一通信设备可以包括:无线接口,无线接口被配置为按照Wi-Fi标准执行无线通信;输出控制单元,输出控制单元被配置为执行向外输出输出信息的输出控制处理,该输出信息按照Wi-Fi标准并使用第一通信设备的公共密钥获得;认证请求接收单元,认证请求接收单元被配置为经由无线接口从已经获得公共密钥的第二通信设备接收使用公共密钥的认证请求;第一确定单元,第一确定单元被配置为确定在第一通信设备和接入点中的任何一个之间是否已经建立无线连接;第一认证响应发送单元,第一认证响应发送单元被配置为在确定在第一通信设备和第一接入点之间已经建立无线连接的情况下,经由无线接口向第二通信设备发送第一认证响应,第一认证响应包括指示第一通信设备将充当第一角色的第一角色信息,第一角色是将第一无线设置信息发送给第二通信设备的角色,第一无线设置信息用于在第二通信设备和第一接入点之间建立第一无线连接;无线设置发送单元,无线设置发送单元被配置为在已经将第一认证响应发送给第二通信设备之后,经由无线接口将第一无线设置信息发送给第二通信设备;第二认证响应发送单元,第二认证响应发送单元被配置为在确定在第一通信设备和任何接入点之间尚未建立无线连接的情况下,经由无线接口向第二通信设备发送第二认证响应,第二认证响应包括第二角色信息,第二角色信息指示第一通信设备将充当第二角色,第二角色与第一角色不同,并且是从第二通信设备接收第二无线设置信息的角色,第二无线设置信息用于在第一通信设备和第二接入点之间建立第二无线连接;无线设置接收单元,无线设置接收单元被配置为在已经将第二认证响应发送给第二通信设备之后,经由无线接口从第二通信设备接收第二无线设置信息;和第一建立单元,第一建立单元被配置为使用第二无线设置信息经由无线接口与第二接入点建立第二无线连接。
在以上技术中,第一通信设备确定在第一通信设备和接入点中的任何一个之间是否建立了无线连接。在第一通信设备与第一接入点之间建立了无线连接的情况下,第一通信设备充当将第一无线设置信息发送给第二通信设备的第一角色并将第一无线设置信息发送给第二通信设备。结果,使得能够在第二通信设备和第一接入点之间建立第一无线连接。此外,在第一通信设备与任何接入点之间未建立无线连接的情况下,第一通信设备充当从第二通信设备接收第二无线设置信息的第二角色,并且从第二通信设备接收第二无线设置信息。结果,使得能够在第一通信设备和第二接入点之间建立第二无线连接。因此,能够使第一通信设备考虑其自身的状况并充当适合于此的角色。
在已经从第二通信设备接收到认证请求之后,第一确定单元可以确定在第一通信设备与接入点中的任何一个之间是否已经建立无线连接。
第一通信设备还可以包括:第二确定单元,第二确定单元被配置为在已经从第二通信设备接收到认证请求的情况下,确定认证请求是否包括指示第二通信设备将充当第二角色的预定信息,其中,在确定在第一通信设备与第一接入点之间建立无线连接且认证请求包括预定信息的情况下,第一认证响应发送单元可以经由无线接口将包括第一角色信息的第一认证响应发送给第二通信设备,并且在确定在第一通信设备与第一接入点之间建立无线连接并且认证请求不包括预定信息的情况下,第二认证响应发送单元可以经由无线接口将包括第二角色信息的第二认证响应发送给第二通信设备。
认证请求可以包括与经由接入点的通信的使用有关的第一使用信息或与在没有接入点干预下的通信的使用有关的第二使用信息,在认证请求包括第一使用信息的情况下,第一确定单元可以确定是否已经在第一通信设备与接入点中的任何一个之间建立无线连接,并且第一通信设备还可以包括:第二建立单元,第二建立单元被配置为在认证请求包括第二使用信息的情况下经由无线接口与第二通信设备建立第三无线连接,第三无线连接是在没有任何接入点干预的情况下建立的。
第三无线连接可以是按照Wi-Fi标准的Wi-Fi Direct方案的无线连接。
在第一通信设备按照Wi-Fi Direct方案处于组所有者状态的情况下,第一通信设备可以充当第一角色,并且在第一通信设备按照Wi-Fi Direct方案处于客户状态的情况下,第一通信设备可以充当第二角色。
输出信息可以是按照Wi-Fi标准的设备配置协议方案的信息。
在接入点信息已经存储在存储器中的情况下,第一确定单元可以确定在第一通信设备和第一接入点之间已经建立无线连接,接入点信息与已经与第一通信设备建立无线连接的第一接入点相关。
接入点信息可以包括按照Wi-Fi标准的设备配置协议方案的签名连接器。
输出信息可以是通过对公共密钥进行编码而获得的码图像,并且输出控制处理可以是使显示单元显示作为码图像的输出信息的处理。
由以上第一通信设备实现的方法,计算机程序以及存储该计算机程序的非暂时性计算机可读介质也是新颖且有用的。包括上述通信设备和其他设备(例如,第二通信设备,外部设备)的通信系统也是新颖和有用的。
附图说明
图1示出了通信系统的配置;
图2示出了按照DPP方案在打印机和接入点之间建立无线连接的处理的示意性序列图;
图3示出了自举(Bootstrapping)处理的序列图;
图4示出了认证处理的序列图;
图5示出了配置处理的序列图;
图6示出了网络接入处理的序列图;
图7示出了认证处理的流程图;
图8示出了情况A中的自举处理和认证处理的序列图,在情况A中在打印机和AP之间建立无线连接;
图9示出了接着图8的序列图(配置处理以及网络接入处理);
图10示出了情况B中的自举处理和认证处理的序列图,在情况B中在打印机和AP之间以及在终端和另一AP之间建立无线连接;
图11示出了接着图10的序列图(配置处理以及网络接入处理);
图12示出了在情况C中的自举处理的序列图,在情况C中要在打印机和终端之间建立按照WFD方案的无线连接;
图13示出了接着图12的序列图(认证处理);
图14示出了接着图13的序列图(配置处理);
图15示出了接着图14的序列图(网络接入处理);和
图16示出了总结实施例的各个情况的表格。
具体实施方式
(实施例)
(通信系统2的配置;图1)
如图1所示,通信系统2包括两个接入点(以下称为“AP”)6、8,打印机10以及两个终端100、200。在本实施例中,例如,用户使用终端100来在打印机10和AP 6之间按照Wi-Fi标准建立无线连接(以下称为“Wi-Fi连接”)。
(终端100的配置)
终端100是便携式终端设备,诸如蜂窝电话(诸如智能电话),PDA和平板PC。在变型中,终端100可以是台式终端设备。终端100包括相机115和Wi-Fi接口116。在下文中,接口将简称为“I/F”。
相机115是被配置为捕获物体的图像的设备,并且在本实施例中,相机115被用于捕获AP 6、8和打印机10中的每一个的QR码(注册商标,DENSO WAVE INCORPORATED)。
Wi-Fi I/F 116是用于按照Wi-Fi标准执行通信的无线接口。Wi-Fi标准是用于根据电气和电子工程师协会(IEEE)的标准802.11以及与其相符的标准(例如802.11a,11b,11g,11n等)执行无线通信的标准。Wi-Fi I/F 116支持由Wi-Fi联盟建立的设备配置协议(DPP)方案。DPP方案在由Wi-Fi联盟创建的规范“设备配置协议技术规范版本1.1”中进行了描述,并且是一种用于通过使用终端100在一对设备(例如打印机10和AP 6)之间轻松建立Wi-Fi连接的方案。
Wi-Fi I/F 116还支持由Wi-Fi联盟建立的WFD(Wi-Fi Direct的缩写(注册商标,Wi-Fi联盟))方案。WFD方案是在由Wi-Fi联盟创建的规范“Wi-Fi对等(P2P)技术规范版本1.1”中描述的方案。在WFD中,定义了组所有者状态(以下称为“G/O状态”)和客户状态(以下称为“CL状态”)。此外,在本实施例中,将与G/O状态和CL状态均不同的状态称为“设备状态”。支持WFD方案的设备配置为在上述三种状态之一中选择性地操作。在下文中,根据WFD方案建立的Wi-Fi连接可以被称为“WFD连接”。
(终端200的配置)
终端200也是类似于终端100的便携式终端设备。在变型中,终端200可以是台式终端设备。类似于终端100,终端200包括相机215和Wi-Fi I/F 216。
(打印机10的配置)
打印机10是被配置为执行打印功能的外围设备(例如,终端100,200的外围设备)。打印机10包括操作单元12,显示单元14,Wi-Fi I/F 16,打印执行单元18和控制器30。各个单元12至30连接至总线(省略附图标记)。
操作单元12包括多个按钮。用户可以通过操作操作单元12来向打印机10输入各种指令。显示单元14是被配置为显示各种类型的信息的显示器。显示单元14还可以包括触摸屏功能(即,操作单元)。打印执行单元18包括诸如喷墨方案和激光方案的打印机构。
Wi-Fi I/F 16支持DPP方案和WFD方案。因此,打印机10可以与AP 6建立Wi-Fi连接,并且还可以与终端(例如,终端100)建立WFD连接,而无AP的任何干预。在下文中,与AP 6的Wi-Fi连接可以被称为“AP连接”。
Wi-Fi I/F 16被分配有两个MAC地址“mac_ap”和“mac_wfd”。MAC地址“mac_ap”是在AP连接中使用的MAC地址。MAC地址“mac_wfd”是WFD连接中使用的MAC地址。
控制器30包括CPU 32和存储器34。CPU 32被配置为根据存储在存储器34中的程序40执行各种处理。存储器34由易失性存储器,非易失性存储器等构成。
此外,存储器34可以存储用于建立AP连接的AP信息44。
(DPP概述;图2)
接下来,将参照图2描述DPP的概述。AP 6还支持DPP方案。在本实施例中,通过按照DPP方案执行通信的设备6、10、100中的每一个来实现在打印机10和AP 6之间建立DPP连接。在下文中,为了更容易理解,每个设备的CPU(例如CPU 32)执行的操作将以其对应的设备(例如打印机10)作为动作的对象进行描述,而不是以其对应的CPU作为动作的对象来描述操作。
在T5中,终端100与AP 6执行DPP方案的自举(以下称为“BS”)。该BS是响应于通过终端100的相机115捕获到附着在AP 6上的QR码从AP 6向终端100提供将在稍后描述的T10中的认证(以下称为“Auth”)中使用的信息的处理。
在T10中,终端100使用在T5的BS中获得的信息,并且与AP 6执行DPP方案的Auth。该Auth是终端100和AP 6中的每一个认证其通信对方的处理。
在T15中,终端100与AP 6执行DPP方案的配置(以下称为“Config”)。该Config是向AP 6发送用于AP 6按照DPP方案建立AP连接的信息的处理。具体地,终端100生成将由AP使用的配置对象(以下,将配置对象简称为“CO”,并且将将由AP使用的CO简称为“AP-CO”),并将该AP-CO发送给AP 6。结果,AP-CO被存储在AP 6中。
接下来,终端100在T25中与打印机10执行DPP方案的BS。该BS是响应于由终端100的相机115捕获的打印机10上显示的QR码,从打印机10向终端100提供将在稍后描述的T30中的Auth中使用的信息的处理。
在T30中,终端100使用在T25的BS中获得的信息,并与打印机10执行DPP方案的Auth。该Auth是终端100和打印机10中的每一个认证其通信对方的处理。
在T35中,终端100与打印机10执行DPP方案的Config。该Config是向打印机10发送用于建立打印机10与AP 6之间的DPP连接的信息的处理。在该Config中,终端100生成用于打印机的第一打印机-CO,该第一打印机-CO用于在打印机10和AP 6之间建立AP连接,并将该第一打印机-CO发送给打印机10。结果,第一打印机-CO被存储在打印机10中。
在T40中,打印机10和AP 6使用存储的AP-CO和第一打印机-CO并执行DPP方案的网络接入(以下称为“NA”)。NA是用于在打印机10与AP 6之间共享用于按照DPP方案建立AP连接的连接密钥的处理。此后,打印机10和AP 6执行4向握手通信。在4向握手通信中的至少一部分处理中,打印机10和AP 6传送由共享连接密钥加密的加密信息。然后,在加密信息的解密成功的情况下,在打印机10和AP 6之间建立AP连接。打印机10由此可以作为子站参与由AP 6形成的无线网络。在变型中,打印机10和AP 6可以执行均等同时认证(SAE;所谓的“蜻蜓”)通信,而不是4向握手通信。
在DPP方案中,为了在打印机10和AP 6之间建立AP连接,用户不需要在AP 6作为父站操作的无线网络上向打印机10输入信息(例如SSID和密码)。因此,用户可以容易地在打印机10和AP 6之间建立AP连接。
(各个处理的细节;图3至图6)
接下来,将参照图3至图6描述在图2的T25至T40中执行的各个处理的细节。
(自举(BS);图3)
首先,将参考图3描述在图2的T25中执行的BS处理。在图3的初始状态下,打印机10的存储器34预先存储打印机10的公共秘钥PPK1和私有密钥psk1。此外,在图3的初始状态下,存储器34不存储AP信息44。
在T100中,用户操作操作单元12并向打印机10输入预定指令。当在T100中从用户接受到预定指令的输入时,在T102中,打印机10在显示单元14上显示选择画面。选择画面是用于选择通信方法的画面。选择画面包括指示将使用经由AP的通信的“AP通信”按钮和指示将使用无任何AP干预的按照WFD方案的通信的“WFD通信”按钮。或者,可以不显示选择画面。在这种情况下,例如,在与使用通过AP的通信有关的第一画面中从用户接受到指令的情况下,可以显示AP的AP-QR码(参见T106),而在与第一画面不同且与使用按照WFD的通信有关的第二画面中从用户接受到指令的情况下,可以显示WFD的WFD-QR码(参见图12的T856)。
在T104中,用户操作操作单元12并在选择画面中选择“AP通信”按钮。当在T104中从用户接受到“AP通信”按钮的选择时,在T106中,打印机10在显示单元14上显示AP-QR码。通过对打印机10的公共秘钥PPK1和在AP连接中使用的MAC地址“mac_ap”进行编码来获得AP-QR码。
终端100响应于接受到来自用户的操作来激活终端100的相机115,并且在T120中,通过使用相机115捕获在T100中显示的AP-QR码。然后,在T122中,终端100对捕获的AP-QR码进行解码,并且获得公共秘钥PPK1和MAC地址“mac_ap”。当T122的处理完成时,图3的处理终止。
(认证(Auth);图4)
接下来,将参考图4描述在图2的T30中执行的Auth处理。以下经由终端100的Wi-FiI/F 116和打印机10的Wi-Fi I/F 16执行在终端100和打印机10之间执行的所有通信。这样,在下文中,将省略“经由Wi-Fi I/F 116(或16)”的描述。
在T200中,终端100生成终端100的公共密钥TPK1和私有密钥tsk1。然后,在T202中,终端100使用所生成的私有密钥tsk1和在图3的T122中获得的打印机10的公共秘钥PPK1,按照椭圆曲线Diffie-Hellman密钥交换(ECDH)来生成共享密钥SK1。然后,在T204中,终端100使用所生成的共享密钥SK1对随机值RV1进行加密,并生成加密数据ED1。
在T210中,终端100以在图3的T122中获得的MAC地址“mac_ap”作为接收者,向打印机10发送DPP认证请求(以下称为“AReq”)。AReq是请求打印机10执行认证的信号。AReq包括在T200中生成的终端100的公共密钥TPK1,在T204中生成的加密数据ED1,终端100的能力以及MAC地址“mac_ap”。
能力是在支持DPP方案的设备中预先指定的信息,并且包括以下值之一:指示设备仅能够按照DPP方案作为配置者操作的值,指示设备仅能够按照DPP方案作为注册者操作的值,以及指示设备既能够作为配置者又能够作为注册者操作的值。配置者是指配置为在Config(例如,图2的T35)中将要在NA(例如,图2的T40)中使用的CO发送给注册者的角色。另一方面,注册者是指配置为在Config中从配置者接收NA中要使用的CO的角色。在这种情况下,AReq包含作为终端100的能力的设备能够作为配置者和注册者操作的值。
在T210中,打印机10从终端100接收AReq。如上所述,以打印机10的Wi-Fi I/F 16的MAC地址“mac_ap”作为接收者来发送AReq。因此,打印机10可以适当地从终端100接收AReq。
当在T210中从终端100接收到AReq时,打印机10执行T211中的图7的处理(稍后描述),并且确定打印机10的能力作为注册者。
然后,打印机10执行用于认证AReq的发送者(即,终端100)的处理。具体地,打印机10使用AReq中的终端100的公共密钥TPK1和T212中的打印机10的私有密钥psk1来生成共享密钥SK1。这里,由终端100在T202中生成的共享密钥SK1与由打印机10在T212中生成的共享密钥SK1匹配(相同)。因此,在T214中,打印机10可以使用所生成的共享密钥SK1来适当地解密AReq中的加密数据ED1,其结果是可以获得随机值RV1。在加密数据ED1的这种解密成功的情况下,打印机10确定AReq的发送者是已经捕获了在图3的T106中显示的QR码的设备,即,确定认证成功,并且从T216开始执行处理。另一方面,在加密数据ED1的解密不成功的情况下,打印机10确定AReq的发送者不是已捕获了在T106中显示的QR码的设备,即,确定认证失败,并且不执行从T216开始的处理。
在T216中,打印机10生成打印机10的新的公共秘钥PPK2和新的私有密钥psk2。在变型中,打印机10可以预先存储公共秘钥PPK2和私有密钥psk2。然后,在T217中,打印机10使用T210的AReq中的终端100的公共秘钥TPK1和所生成的打印机10的私有密钥psk2,按照ECDH来生成共享密钥SK2。然后,在T218中,打印机10使用所生成的共享密钥SK2对获得的随机值RV1和新的随机值RV2进行加密,并生成加密数据ED2。
在T220中,打印机10将DPP认证响应(以下称为“ARes”)发送到终端100。该ARes包括在T216中生成的打印机10的公共秘钥PPK2,在T218中生成的加密数据ED2以及在T211中确定的打印机10的能力(即,指示其仅能够作为注册者操作的值)。
在T220中,终端100从打印机10接收ARes。在这种情况下,终端100执行用于认证ARes的发送者(即,打印机10)的处理。具体地,在T222中,终端100使用在T200中生成的终端100的私有密钥tsk1和ARes中的打印机10的公共密钥PPK2按照ECDH生成共享密钥SK2。这里,T217中的打印机10生成的共享密钥SK2与T222中的终端100生成的共享密钥SK2匹配。因此,在T224中,终端100可以使用生成的共享密钥SK2适当地解密ARes中的加密数据ED2,其结果是可以获得随机值RV1和RV2。在加密数据ED2的解密成功的情况下,终端100确定ARes的发送者是拥有捕获的QR码的设备,即,确定认证成功,并执行从T230开始的处理。另一方面,在加密数据ED2的解密不成功的情况下,终端100确定ARes的发送者不是存储捕获的QR码的设备,即,确定认证失败,并且不执行从T230开始的处理。
在T230中,终端100向打印机10发送Confirm。Confirm包括指示终端100将作为配置者操作而打印机10将作为注册者操作的信息。结果,终端100在T232中确定作为配置者操作,并且打印机10在T234中确定作为注册者操作。当T234的处理完成时,终止图4的处理。
(配置(Config);图5)
接下来,将参考图5描述在图2的T35中执行的Config处理。在T300中,打印机10向终端100发送DPP配置请求(以下称为“CReq”)。CReq是请求发送第一打印机-CO的信号。CReq包括值“sta”,其指示打印机10将接收第一打印机-CO。此外,CReq包括请求打印机10作为配置者操作的操作信息的值“config”。例如,可以假设情况A(图8和9),其中,在图3到图6的处理已经完成并且在打印机10和AP 6之间已经建立了AP连接之后,在打印机10和终端100之间执行按照DPP方案的通信。在这种情况下,打印机10作为配置者操作,使用第一打印机-CO,为终端生成第一终端-CO,并将第一终端-CO发送到终端200。在本情况中,打印机10在随后发生的情况A之前在T300中提前将包括值“config”的CReq发送到终端设备100。通过这样做,打印机10能够作为配置者操作,使用从终端100获得的第一打印机-CO,并且在稍后发生的情况A中生成第一终端-CO。
当在T300中从打印机10接收到CReq时,终端100在T302中从终端100的存储器(未示出)获得组ID“Group1”、公共密钥TPK2和私有密钥tsk2。如上所述,终端100已经与AP 6执行了图2的T15中的Config,并且此时生成了组ID“Group1”、公共密钥TPK2和私有密钥tsk2,并将它们存储在存储器中。组ID“Group1”是用于识别由正在建立的打印机10和AP 6之间的Wi-Fi连接形成的无线网络的信息。在变型中,用户指定的字母字符串可以用作组ID。也就是说,在T302中,终端100获得在图2的T15中存储的各个信息。然后,在T304中,终端100生成第一打印机-CO。具体地说,终端100执行以下处理。
终端100首先对终端100的公共密钥TPK2进行哈希,以生成哈希值HV1。此外,终端100对哈希值HV、组ID“Group1”和图4的T220中的ARes中的打印机10的公共密钥PPK2的组合进行哈希,以生成特定值。然后,终端100按照椭圆曲线数字签名算法(ECDSA),通过使用终端100的私有密钥tsk2对生成的特定值进行加密,来生成数字签名DSpr1。结果,终端100可以为打印机生成第一打印机-签名-连接器(以下,签名-连接器将被简单地称为“SC”),包括哈希值HV1、组ID“Group1”、打印机10的公共密钥PPK2和数字签名DSpr1。然后,终端100生成包括第一打印机-SC和终端100的公共密钥TPK2的第一打印机-CO。
在T310中,终端100向打印机10发送包括第一打印机-CO的DPP配置响应(以下称为“CRes”)。这里,CRes包含操作信息作为对CReq中的值“config”的响应。操作信息包括打印机10作为配置者操作并为另一终端(例如终端200)生成第一终端-CO的信息(例如终端100的私有密钥tsk2)。
当在T310中从终端100接收到CRes时,打印机10在T312中将第一打印机-CO存储在CRes中。第一打印机-CO是要用于建立与AP 6的AP连接的信息,因此可以说是用于建立与AP6的AP连接的连接信息。打印机10将第一打印机-CO存储为AP信息44。当T312的处理完成时,图5的处理终止。
(网络接入(NA);图6)
接下来,将参考图6描述图2的T40中的NA处理。如上所述,与图2的T25到T35类似,T5到T15的处理已经在终端100和AP 6之间执行。AP 6预先存储AP 6的公共密钥APK1和私有密钥ask1。此外,通过对AP 6的公共密钥APK1和AP 6的MAC地址进行编码而获得的QR码附着在AP 6的外壳上。当终端100捕获该QR码时,在终端100和AP 6之间执行与从图4的T200开始的各个处理类似的处理。结果,AP 6存储AP 6的公共密钥APK2和私有密钥ask2(参见图4的T216),并进一步存储从终端100接收的AP-CO(参见图5的T312)。AP-CO包括AP的AP-SC和终端100的公共密钥TPK2。此公共密钥TPK2与第一打印机-CO中包含的公共密钥TPK2匹配。此外,AP-SC包括哈希值HV1、组ID“Group1”、AP 6的公共密钥APK2和数字签名DSap1。这里的哈希值HV1和组ID“Group1”与第一打印机-CO中包含的哈希值HV1和组ID“Group1”匹配。数字签名DSap1是通过特定值被终端100的私有密钥tsk2加密而获得的信息(该特定值通过对哈希值HV1、组ID“Group1”和公共密钥APK2的组合进行哈希而获得的),并且是与第一打印机-CO中包括的数字签名DSpr1不同的值。
在T400中,打印机10向AP 6发送包括第一打印机-SC的DPP对等发现请求(以下称为“DReq”)。DReq是请求AP 6执行认证并发送AP-SC的信号。
当在T400中从打印机10接收到DReq时,AP 6执行用于认证DReq的发送者(即,打印机10)和DReq中的各个信息(即,哈希值HV1、“Group1”和公共密钥PPK2)的处理。具体地,在T402中,AP 6首先执行与接收到的第一打印机-SC中的哈希值HV1和组ID“Group1”是否分别匹配存储的AP-CO中包括的AP-SC中的哈希值HV1和组ID“Group1”相关的第一AP确定处理。在图6所示的情况下,由于AP 6在第一AP确定处理中确定匹配,所以其确定DReq的发送者(即,打印机10)的认证是成功的。接收到的第一打印机-SC中的哈希值HV1和存储的AP-CO中包含的AP-SC中的哈希值HV1匹配意味着第一打印机-SC和AP-SC由同一设备(即,终端100)生成。因此,AP 6还确定接收到的第一打印机-SC的生成者(即,终端100)的认证成功。
AP 6还通过使用包括在存储的AP-CO中的终端100的公共密钥TPK2来解密所接收的第一打印机-SC中的数字签名DSpr1。在图6所示的情况下,数字签名DSpr1的解密成功,因此AP 6执行与通过对数字签名DSpr1进行解密而获得的特定值是否与通过对接收到的第一打印机-SC中的各个信息(即,哈希值HV1,“Group1”和公共密钥PPK2)进行哈希而获得的值匹配有关的第二AP确定处理。在图6所示的情况下,AP 6在第二AP确定处理中确定匹配,因此确定DReq中的各个信息的认证成功,并且从T404开始执行处理。在第二AP确定处理中确定匹配意味着在第一打印机-CO被存储在打印机10中之后,所接收的第一打印机-SC中的各个信息(即,哈希值HV1,“Group1”和公共密钥PPK2)尚未被第三方篡改。另一方面,在第一AP确定处理中没有确定匹配,数字签名DSpr1的解密失败,以及在第二AP确定处理中未确定匹配的每一种情况下,AP 6确定认证失败并且不执行从T404开始的处理。
接下来,在T404中,AP 6使用获得的打印机10的公共密钥PPK2和存储的AP 6的私有密钥Ask2,按照ECDH生成连接密钥(即,共享密钥)CK1。
在T410中,AP 6将包括AP-SC的DPP对等发现响应(以下称为“DRes”)发送到打印机10。
当在T410中从AP 6接收到DRes时,打印机10执行用于认证DRes的发送者(即,AP6)和DRes中的各个信息(即,哈希值HVl,“Group1”和公共密钥APK2)的处理。具体地,在T412中,打印机10首先执行与所接收的AP-SC中的哈希值HV1和组ID“Group1”是否分别与所存储的第一打印机-CO中包括的第一打印机-SC中的哈希值HV1和组ID“Group1”匹配相关的第一PR确定处理。在图6所示的情况下,由于打印机10在第一PR确定处理中确定匹配,因此其确定DRes的发送者(即,AP 6)的认证成功。所接收的AP-SC中的哈希值HV1与所存储的第一打印机-CO中包括的第一打印机-SC中的哈希值HV1匹配意味着第一打印机-SC和AP-SC是由同一设备(即,终端100)生成的。因此,打印机10还确定所接收的AP-SC的生成器(即,终端100)的认证成功。
此外,打印机10通过使用所存储的第一打印机-CO中包括的终端100的公共密钥TPK2来解密所接收的AP-SC中的数字签名DSap1。在图6所示的情况下,数字签名DSap1的解密成功,因此打印机10执行第二PR确定处理,该第二PR确定处理与通过解密数字签名DSap1获得的特定值是否与通过对所接收的AP-SC中的各个信息(即,哈希值HV1,“Group1”和公共密钥APK2)进行哈希而获得的值匹配有关。在图6所示的情况下,打印机10在第二PR确定处理中确定匹配,从而确定DRes中的各个信息的认证成功,并且从T414开始执行处理。在第二PR确定处理中确定匹配意味着,在AP-CO存储在AP 6中之后,AP-SC中的各个信息(即,哈希值HV1,“Group1”和公共密钥APK2)尚未被第三方篡改。另一方面,在第一PR确定处理中没有确定匹配,数字签名DSap1的解密失败,以及在第二PR确定处理中没有确定匹配的每一种情况下,打印机10确定认证失败并且不执行从T414开始的处理。
在T414中,打印机10使用所存储的打印机10的私有密钥psk2和所接收的AP-SC中的AP 6的公共密钥APK2,按照ECDH生成连接密钥CK1。在此,在T404中由AP 6生成的连接密钥CK1与在T414中由打印机10生成的连接密钥CK1匹配。因此,在打印机10与AP 6之间共享用于建立AP连接的连接密钥CK1。
如上所述,在打印机10和AP 6之间已经共享了连接密钥CK1之后,打印机10和AP6使用连接密钥CK1在T420中执行4向握手通信。结果,在打印机10和AP 6之间建立了AP连接。当T420完成时,图6的处理终止。
(打印机10的Auth处理;图7)
将参照图7描述由打印机10的CPU 32实现的Auth处理。在图4的Auth处理内,由打印机10执行的处理通过图7的处理实现。
在S2中,CPU 32监视经由Wi-Fi I/F 16从已经在BS处理中捕获了打印机10的QR码的终端(以下称为“发起者终端”)的AReq的接收。在从发起者终端接收到AReq的情况下(S2是),CPU 32前进至S4。图4的T210的处理通过S2的处理来实现。经由Wi-Fi I/F 16执行图7的处理中的所有通信。因此,在下文中,将省略“经由Wi-Fi I/F 16”的描述。
在S4中,CPU 32确定所接收的AReq是否包括MAC地址“mac_ap”。如图3的T106所示,在选择“AP通信”按钮的情况下显示其中对包括MAC地址“mac_ap”的信息进行编码的AP-QR码。因此,发起者终端捕获AP-QR码,获得MAC地址“mac_ap”,并且将包括MAC地址“mac_ap”的AReq发送到打印机10。另一方面,在选择画面中的“WFD通信”按钮被选择的情况下,显示其中对要在WFD连接中使用的包括MAC地址“mac_wfd”的信息进行编码的WFD-QR码。因此,发起者终端捕获WFD-QR码,获得MAC地址“mac_wfd”,并且将包括MAC地址“mac_wfd”的AReq发送到打印机10。在确定所接收的AReq包括MAC地址“mac_ap”的情况下(S4是),CPU 32进行至S10,而在确定所接收的AReq包括MAC地址“mac_wfd”的情况下(S4否),CPU 32进行至S20。然后,在确定AReq包括MAC地址“mac_ap”的情况下(S4是),打印机10与一个AP建立AP连接,而在确定AReq包括MAC地址“mac_wfd”的情况下,打印机10与发起者终端建立WFD连接。稍后将在图12至15中描述用于建立WFD连接的处理。根据该配置,打印机10可以根据包括在AReq中的MAC地址来建立合适的Wi-Fi连接。
在S10中,CPU 32确定AP信息44是否存储在存储器34中。AP信息44没有存储在存储器34中意味着在打印机10和任何AP之间尚未建立AP连接。在确定没有AP信息44存储在存储器34中的情况下(S10否),CPU 32前进到S16。
在S16中,CPU 32将打印机10的能力确定为“注册者”。
然后,在S40中,CPU 32执行类似于图4的T212至T218的处理(即,发起者终端的认证和加密数据的生成)。
然后,在S42中,CPU 32将包括能力“注册者”的ARes发送到发起者终端。
然后,在S44中,CPU 32执行类似于图4的T230和T234的Confirm处理。即,CPU 32确定为作为注册者操作。当S44的处理完成时,图7的处理终止。
AP信息44存储在存储器34中意味着在打印机10和一个AP(例如AP 6)之间已经建立AP连接。在确定AP信息44存储在存储器34中的情况下(S10是),CPU 32前进至S12。
在S12中,CPU 32确定在S2中接收到的AReq是否包括指示发起者终端的能力为仅能够作为注册者操作的值。例如,接收到的AReq包括指示仅能够作为注册者操作的值的情况可能是在发起者终端中安装了优先执行从其他设备接收CO的程序的情况,或者用户已在发起者终端上进行了选择从其他设备接收CO的操作。在确定接收到的AReq包括指示仅能够作为注册者操作的值的情况下(S12是),CPU 32进行至S14。
在S14中,CPU 32将打印机10的能力确定为“配置者”。S30之后类似于S40。
接下来,在S32中,CPU 32将包括能力“配置者”的ARes发送到发起者终端。
然后,在S34中,CPU 32执行Confirm处理。与在S44中执行的Confirm处理不同,CPU32确定在S34的Confirm处理中作为配置者操作。当S34的处理完成时,图7的处理终止。
在接收到的AReq包括指示能够作为配置者或注册者操作的值的情况下,或者在接收到的AReq包括指示仅能够作为配置者操作的值的情况下(S12否),CPU 32前进到S16。即,CPU 32将打印机10的能力确定为“注册者”。然后,执行S40到S44的处理,并且终止图7的处理。
在确定接收到的AReq包括MAC地址“MAC_wfd”的情况下(S4否),CPU 32执行S20到S26的处理。打印机10执行稍后描述的G/O协商,并选择G/O状态和CL状态中的一个。在打印机10选择G/O状态作为G/O协商的结果的情况下(S20是),CPU 32前进到S24,而在打印机10选择CL状态作为G/O协商的结果的情况下(S20否),CPU 32前进到S26。
在S24中,CPU 32将打印机10的能力确定为“配置者”。然后,当S24完成时,CPU 32执行S30到S34的处理并终止图7的处理。
在S26中,CPU 32将打印机10的能力确定为“注册者”。然后,当S26完成时,CPU 32执行S40到S44的处理并终止图7的处理。
例如,可以假设比较示例,其中在从发起者终端接收到AReq之前执行S10的确定(即,关于是否存储AP信息44的确定)。例如,打印机10在Auth处理之前在BS处理中执行S10的确定。在该比较示例中,打印机10在不需要的情况下执行S10的确定,即使在由于某种原因(例如通信中断)没有执行Auth处理的情况下。与此相反,根据本实施例的配置,在从发起者终端接收到AReq的情况下(S2是),打印机10执行S10的确定。根据本实施例的配置,可以抑制在不需要的情况下执行S10的确定。在变型中,可以采用比较示例的配置。
(特定情况A;图8和图9)
将参考图8和图9描述通过图7的处理实现的特定情况A。情况A是图2(即,图3至图6)的处理的延续。即,在情况A的初始状态下,在打印机10和AP 6之间建立AP连接。因此,第一打印机-CO作为AP信息44存储在打印机10的存储器34中(参见图5的T312)。此外,终端200没有与任何AP建立任何AP连接。在本情况中,在已经建立了打印机10和AP 6之间的AP连接之后,建立终端200和AP 6之间的AP连接。在终端200和AP 6之间建立了AP连接的情况下,终端200可以作为子站参与由AP 6形成的无线网络,从而经由AP 6与打印机10通信。
(情况A中的自举(BS)和认证(Auth);图8)
将参照图8描述情况A中的BS处理和Auth处理。T455与图2(即,图3)的T25类似,除了终端200捕获打印机10的AP-QR码。
在T500中,终端200生成终端200的公共密钥TPK3和私有密钥tsk3。T502与图4的T202类似,除了使用终端200的私有密钥tsk3和打印机10的公共密钥PPK1生成共享密钥SK3。T504类似于图4的T204,除了加密数据ED3是通过使用共享密钥SK3加密随机值RV3来生成的。
在本情况中,例如,用户已经在终端200上进行了选择从其他设备接收CO的操作。因此,在T510中,终端200向打印机10发送包括作为终端200的能力的指示仅能够作为注册者操作的值的AReq。此外,该AReq包括在T500中生成的终端200的公共密钥TPK3、在T504中生成的加密数据ED3以及MAC地址“mac_ap”。
当在T510中从终端200接收到AReq时,打印机10在T511a中确定所接收的AReq包括MAC地址“mac_ap”(图7的S4是)。在T511b中,打印机10确定第一打印机-CO作为AP信息44存储在存储器34中(S10是)。在T511c中,打印机10确定接收到的AReq包括作为终端200的能力的指示仅能够作为注册者操作的值(S12是)。然后,在T511d中,打印机10将打印机10的能力确定为“配置者”(S14)。
然后,打印机10执行类似于图4的T212到T218的认证,并且该认证被成功地完成(S30)。即,打印机10在T512中使用AReq中终端200的公共密钥TPK3和打印机10的私有密钥psk1生成共享密钥SK3,并在T514中使用共享密钥SK3对AReq中的加密数据ED3进行解密并获得随机值RV3。然后,打印机10在T516中生成打印机10的新的公共密钥PPK3和新的私有密钥psk3,在T517中使用AReq中的终端200的公共密钥TPK3和打印机10的私有密钥psk3生成共享密钥SK4,并且在T518中使用共享密钥SK4对随机值RV3和新的随机值RV4进行加密并生成加密数据ED4。
然后,在T520中,打印机10向终端200发送包括打印机10的公共密钥PPK3、加密数据ED4和打印机10的能力(即,指示仅能够作为配置者操作的值)的ARes(S32)。
当在T520中从打印机10接收到ARes时,终端200执行类似于图4的T222和T224的认证,并且该认证成功地完成。即,在T522中,终端200使用在T500中生成的终端200的私有密钥tsk3和ARes中打印机10的公共密钥PPK3生成共享密钥SK4,并且在T524中使用共享密钥SK4对ARes中的加密数据ED4进行解密并获得随机值RV3和RV4。
在T530中,终端200向打印机10发送Confirm。Confirm包括指示终端200将作为注册者操作并且打印机10将作为配置者操作的信息。结果,终端200在T532中确定作为注册者操作,并且打印机10在T534中确定作为配置者操作。
(情况A中的配置(Config)和网络接入(NA);图9)
将参考图9描述情况A中的Confi处理和NA处理。也就是说,图9是图8的延续。在本情况中,终端200是注册者。因此,在T600中,终端200向打印机10发送CReq。本情况中的CReq包括值“sta”,但不包括值“config”。
当在T600中从终端200接收到CReq时,在T602中打印机10从第一打印机-CO获得哈希值HV1、组ID“Group1”和公共密钥TPK2,该第一打印机-CO是AP信息44。然后,在T604中,打印机10生成第一终端-CO。具体地,打印机10执行以下处理。
打印机10对哈希值HV1、组ID“Group1”和图8的T510中的AReq中的终端200的公共密钥TPK3的组合进行哈希,以生成特定值。然后,打印机10使用在图5的T310中从终端设备100接收的操作信息中包括的私有密钥tsk2加密生成的特定值,按照ECDSA生成数字签名DSta1。结果,打印机10可以为终端生成第一终端-SC,包括哈希值HV1、组ID“Group1”、终端200的公共密钥TPK3和数字签名DSta1。然后,打印机10生成包括第一终端-SC和公共密钥TPK2的第一终端-CO。
在T610中,打印机10向终端200发送包括第一终端-CO的CRes。因此,终端200获得第一终端-CO并在T612中存储第一终端-CO。
然后,在T620中,终端200将包括第一终端-SC的DReq发送到AP 6。
当在T620中从终端200接收到DReq时,AP 6在T622中执行与图6的T402类似的DReq的认证。在图9所示的情况下,接收到的第一终端-SC中的哈希值HV1和组ID“Group1”分别与存储的AP-CO中包括的AP-SC中的哈希值HV1和组ID“Group1”相匹配,因此AP 6在第一AP确定处理中确定认证成功。
AP 6还使用包括在所存储的AP-CO中的公共密钥TPK2对接收到的第一终端-SC中数字签名DSta1进行解密。在图9所示的情况下,数字签名DSta1的解密成功完成。在这种情况下,通过解密数字签名DSta1获得的特定值与通过对接收到的第一终端-SC中的各个信息(即,哈希值HV1,“Group1”和公共密钥TPK3)进行哈希而获得的值匹配,因此AP 6在第二AP确定处理中确定认证成功。
接下来,在T624中,AP 6使用获得的终端200的公共密钥TPK3和存储的AP 6的私有密钥ask2,按照ECDH生成连接密钥CK2。在T630中,AP 6将包括AP-SC的DRes发送到终端200。
当在T630中从AP 6接收到DRes时,类似于图6的T412,在T632中终端200执行DRes的认证。终端200首先执行与第一PR确定处理相似的第一TA确定处理。在图9所示的情况下,由于所接收的AP-SC中的哈希值HV1和组ID“Group1”分别与存储的第一终端-CO中包括的第一终端-SC中的哈希值HV1和组ID“Group1”匹配,终端200在第一TA确定处理中确定认证成功。
然后,终端200执行与第二PR确定处理相似的第二TA确定处理。具体地,终端200使用包括在所存储的第一终端-CO中的公共密钥TPK2来解密所接收的AP-SC中的数字签名DSap1。在当前情况下,终端200确定通过解密数字签名DSap1获得的特定值和通过对接收到的AP-SC中的各个信息(即哈希值HV1,“Group1”和公共密钥APK2)进行哈希而获得的值匹配,因此在第二TA确定处理中终端200确定认证成功。
然后,在T634中,终端200使用所存储的终端200的私有密钥tsk3和所获得的AP 6的公共密钥APK2,按照ECDH来生成连接密钥CK2。这样做,在T640中,终端200和AP 6使用连接密钥CK2建立AP连接。
(特定情况B;图10和11)
将参考图10和11描述通过图7的处理实现的特定情况B。类似于情况A,情况B是图2(即,图3至图6)的处理的延续。即,在情况B的初始状态下,在打印机10和AP 6之间建立AP连接。此外,终端200具有与AP 8建立的AP连接。在当前情况下,将通过按照DPP方案执行通信的各个设备8、10、200在打印机10和AP 8之间建立新的AP连接。通过这样做,打印机10可以从连接到AP 6的状态转变为连接到AP 8的状态。
(情况B中的自举(BS)和认证(Auth);图10)
将参考图10描述情况B中的BS处理和Auth处理。T655类似于图8的T455。T700至T704类似于图8的T500至T504。
在当前情况下,用户尚未在终端200上进行用于选择从其他设备接收CO的操作。因此,在T710中,终端200向打印机10发送包括作为终端200的能力的指示能够作为配置者或注册者操作的值的AReq。除了终端200的能力的值不同之外,T710类似于图8的T510。
T711a和T711b类似于图8的T511a和T511b。在T711c中,打印机10确定接收到的AReq不包括作为终端200的能力的指示仅能够作为注册者操作的值(S12否)。然后,在T711d中,打印机10将打印机10的能力确定为“注册者”(S16)。
T712至T718类似于图8的T512至T518。T720与图8的T520类似,除了ARes包括作为打印机10的能力的指示仅能够作为注册者操作的值。
T722和T724类似于图8的T522和T524。T730与图8的T530类似,除了Confirm包括指示终端200将作为配置者操作并且打印机10将作为注册者操作的信息。结果,在T732中终端200确定作为配置者操作,并且在T734中打印机10确定作为注册者操作。
(情况B中的配置(Config)和网络接入(NA);图11)
将参考图11描述情况B中的Config处理和NA处理。即,图11是图10的延续。在当前情况下,打印机10是注册者。因此,在T800中,打印机10将CReq发送到终端200。在当前情况下,CReq包括值“sta”和值“config”。
当在T800中从打印机10接收到CReq时,终端200在T802中从终端200的存储器(未示出)获得组ID“Group2”,公共密钥TPK10和私有密钥tsk10。在当前情况下,在终端200和AP8之间建立AP连接。即,终端200已经与AP 8执行了按照DPP方案的Config,一旦这样做,就生成了组ID“Group2”,公共密钥TPK10和私有密钥tsk10并将其存储在存储器中。即,在T802中,终端200获得存储在Config中的各个信息。然后,在T804中,终端200生成第一打印机-CO。具体地,终端200通过对终端200的公共密钥TPK10进行哈希来生成哈希值HV2。此外,终端200通过对哈希值HV2,组ID“Group2”和图10的T720中的ARes中的打印机10的公共密钥PPK3的组合进行哈希来生成特定值。然后,终端200使用终端200的私有密钥tsk10对生成的特定值进行加密,并生成数字签名DSpr2。结果,终端200生成包括哈希值HV2,组ID“Group2”,打印机10的公共密钥PPK3和数字签名DSpr2的第一打印机-SC。然后,终端200生成包括第一打印机-SC和终端200的公共密钥TPK10的第一打印机-CO。
在T810中,终端200将包括第一打印机-CO的CRes发送到打印机10。因此,在T812中,打印机10通过替换已经存储为AP信息44的第一打印机-CO(即,与AP的AP连接中使用的第一打印机-CO)来存储在T810中接收的第一打印机-CO作为AP信息44。即,它更新AP信息44。
如上所述,在当前情况下,已经在终端200与AP 8之间建立了AP连接。因此,AP 8存储AP 8的公共密钥APK10和私有密钥ask10,并且进一步存储从终端200接收的AP-CO。AP-CO包括AP-SC和终端200的公共密钥TPK10。此外,AP-SC包括哈希值HV2,组ID“Group2”,AP 8的公共密钥APK10和数字签名DSap2。数字签名DSap2是其中通过对哈希值HV2,组ID“Group2”和公共密钥APK10的组合进行哈希而获得的特定值使用终端200的私有密钥tsk10加密的信息,并且是与第一打印机-CO中包含的数字签名DSpr2不同的值。
T820至T834主要类似于图6的T400至T414,除了在AP 8和打印机10之间执行通信并且使用公共密钥PPK3和私有密钥ask10(以及私有密钥psk3和公共密钥APK10)生成连接密钥CK3。因此,在T840中,打印机10和AP 8使用连接密钥CK3建立AP连接。
(特定情况C;图12至15)
将参照图12至图15描述通过图7的处理实现的特定情况C。与情况A相似,情况C是图2(即,图3至图6)的处理的延续。即,在情况C的初始状态下,在打印机10和AP 6之间建立AP连接。在当前情况下,将通过用户选择“WFD通信”按钮来在打印机10和终端200之间建立WFD连接。
(情况C中的自举(BS);图12)
将参考图12描述情况C中的BS处理。T850和T852与图3的T100和T102相似。在T854中,用户操作操作单元12并在选择画面中选择“WFD通信”按钮。除了在显示单元14上显示WFD-QR码之外,T856类似于图3的T106。通过对打印机10的公共密钥PPK1和在WFD连接中使用的MAC地址“mac_wfd”进行编码来获得WFD-QR码。
T870和T872类似于图3的T120和T122,除了由终端200捕获WFD-QR码并且由终端200获得MAC地址“mac_wfd”。
接下来,在T880中,终端200和打印机10按照WFD方案执行WFD发现通信。WFD发现是用于搜索打印机10的通信。
接下来,在T890中,终端200和打印机10按照WFD方案执行G/O协商通信。G/O协商是用于确定要在G/O状态或CL状态下操作的设备的通信。在当前情况下,确定打印机10将处于G/O状态并且终端200将处于CL状态。结果,终端200在T892中进入CL状态,并且打印机10在T894中进入G/O状态。例如,根据诸如打印机10或终端200的规格的各种因素来确定打印机10和终端200中的哪一个将处于G/O状态。在本实施例中,当在打印机10与AP之一之间建立AP连接时,打印机10进入G/O状态,并且当在打印机10与任何AP之间没有建立AP连接时,打印机10进入CL状态。在变型中,可以确定终端200将处于G/O状态并且打印机10将处于CL状态。
(情况C中的认证(Auth);图13)
将参考图13描述情况C中的Auth处理。即,图13是图12的延续。T900至T904类似于图8的T500至T504。T910类似于图8的T510,除了AReq包括作为终端200的能力的指示能够作为配置者或注册者操作的值和MAC地址“mac_wfd”。
当在T910中从终端200接收到AReq时,打印机10在T911a中确定接收到的AReq包括MAC地址“mac_wfd”(图7的S4否)。在T911c中,打印机10将打印机10的能力确定为“配置者”(S24),因为打印机10处于G/O状态(S20是)。T912至T934类似于图8的T512至T534。
(情况C中的配置(Config);图14)
将参考图14描述情况C中的Config处理。即,图14是图13的延续。T1000类似于图9的T600。
在T1002中,打印机10生成打印机10的公共密钥PPK4和私有密钥psk4。然后,在T1004中,打印机10生成终端的第二终端-CO。具体地,打印机10执行以下处理。
首先,打印机10通过对打印机10的公共密钥PPK4进行哈希来生成哈希值HV3。此外,打印机10通过对哈希值HV3,组ID“Group3”和图13的T910的AReq中终端200的公共密钥TPK3的组合进行哈希来生成特定值。然后,打印机10按照ECDSA,通过使用私有密钥psk4来对生成的特定值进行加密来生成数字签名DSta3。结果,打印机10可以为终端生成第二终端-SC,包括哈希值HV3,组ID“Group3”,终端200的公共密钥TPK3和数字签名DSta3。然后,打印机10生成包括第二终端-SC和公共密钥PPK4的第二终端-CO。
在T1010中,打印机10将包括第二终端-CO的CRes发送到终端200。因此,终端200获得第二终端-CO并在T1012中存储第二终端-CO。
(情况C中的网络接入(NA);图15)
将参考图15描述情况C中的NA处理。即,图15是图14的延续。
在T1020中,打印机10生成打印机10的公共密钥PPK5和私有密钥psk5。然后,在T1022中,打印机10生成第二打印机-CO。具体地,打印机10执行以下处理。
打印机10通过对哈希值HV3,组ID“Group3”和在T1020中生成的公共密钥PPK5的组合进行哈希来生成特定值。然后,打印机10按照ECDSA,通过使用私有密钥psk4来对生成的特定值进行加密来生成数字签名DSpr3。结果,打印机10可以为打印机生成第二打印机-SC,包括哈希值HV3,组ID“Group3”,打印机10的公共密钥PPK5和数字签名DSpr3。然后,打印机10生成包括第二打印机-SC和公共密钥PPK4的第二终端-CO。
在T1030中,打印机10将包括第二打印机-SC的DReq发送到终端200。
当在T1030中从打印机10接收到DReq时,类似于图6的T402,终端200在T1032中执行DReq的认证。具体地,终端200确定接收到的第二打印机-SC中的哈希值HV3和组ID“Group3”分别与所存储的第二终端-SC中的哈希值HV3和组ID“Group3”匹配。然后,终端200使用存储的第二终端-CO中的公共密钥PPK4对接收到的第二打印机-SC中的数字签名DSpr3进行解密。终端200确定通过解密数字签名DSpr3获得的特定值和通过对接收到的第二打印机-SC中的各个信息(即,哈希值HV3,“Group3”和公共密钥PPK5)进行哈希而获得的值匹配。由于以上原因,终端200确定DReq的认证成功。
接下来,在T1034中,终端200使用所存储的终端200的私有密钥tsk3和所获得的打印机10的公共密钥PPK5,按照ECDH来生成连接密钥CK4。在T1040中,终端200将包括第二终端-SC的DRes发送给打印机10。
当在T1040中从终端200接收到DRes时,类似于图6的T412,打印机10在T1042中执行DRes的认证。具体地,打印机10确定接收到的第二终端-SC中的哈希值HV3和组ID“Group3”与所存储的第二打印机-SC中的哈希值HV3和组ID“Group3”匹配。然后,打印机10使用存储的第二打印机-CO中的公共密钥PPK4对接收到的第二终端-SC中的数字签名DSta3进行解密。打印机10确定通过解密数字签名DSta3获得的特定值和通过对接收到的第二终端-SC中的各个信息(即,哈希值HV3,“Group3”和公共密钥TPK3)进行哈希而获得的值匹配。由于以上原因,打印机10确定DRes的认证成功。
接下来,在T1044中,打印机10使用获得的终端200的公共密钥TPK3和存储的打印机10的私有密钥psk5,按照ECDH生成连接密钥CK4。因此,打印机10和终端200在T1050中使用连接密钥CK4建立WFD连接。
(总结本实施例中的各个情况的表;图16)
将参照图16描述通过图7中的打印机10的Auth处理实现的情况。如在图16的行号1至8的相应情况下所示,确定打印机10的能力。
行号为1到4的情况指示其中在BS处理中已捕获打印机10的QR码的一个终端(即,“发起者终端”)和一个AP(例如,AP 6)之间建立了AP连接的情况。
行号为1的情况表示其中未在打印机10和任何AP(例如AP 6)之间建立AP连接并且在打印机10中显示的选择画面10(参见图3的T102)中选择了“AP通信”按钮的情况。这种情况对应于图2至图6的情况。即,打印机10在发起者终端与AP 6之间建立了AP连接的情况下与AP 6建立AP连接。在这种情况下,打印机10确定AReq包括MAC地址“mac_ap”(图7的S4是),并且确定AP信息44未存储在存储器34中(S10否)。结果,打印机10将打印机10的能力确定为“注册者”(S16)。在当前情况下,打印机10可以从发起者终端接收CO并且作为子站参与发起者终端当前正在参与的无线网络。
行号为2的情况表示其中在打印机10与任何AP之间未建立AP连接并且在选择画面中选择了“WFD通信”按钮的情况。这种情况对应于在打印机10和发起者终端之间建立WFD连接的情况。在这种情况下,打印机10确定AReq包括MAC地址“mac_wfd”(图7的S4否)。由于未在打印机10和任何AP之间建立AP连接,因此打印机10进入CL状态(S20否)。结果,打印机10将打印机10的能力确定为“注册者”(S26)。在当前情况下,响应于选择“WFD通信”按钮,打印机10可以按照WFD方案与发起者终端执行通信。
行号为3的情况表示了其中在打印机10和AP 6之间建立AP连接并且在选择画面中选择了“AP通信”按钮的情况。这种情况对应于图10和11的情况B。即,其对应于在发起者终端与AP 8之间建立AP连接的情形下,打印机10从连接到AP 6的状态转变为连接到AP 8的状态的情况。在这种情况下,打印机10将打印机10的能力确定为“注册者”(图10的T711a至T711d和图7的S16)。
行号为4的情况表示其中在打印机10和一个AP之间建立了AP连接并且在选择画面中选择了“WFD通信”按钮的情况。该情况对应于以下情况:尽管在发起者终端与AP之一之间建立了AP连接,但是在打印机10与发起者终端之间建立了WFD连接。在这种情况下,打印机10确定AReq包括MAC地址“mac_wfd”(图7的S4否)。由于在打印机10和AP之一之间建立了AP连接,所以打印机10进入G/O状态(S20是)。结果,打印机10将打印机10的能力确定为“配置者”(S24)。在当前情况下,打印机10可以经由AP执行通信,但是,从安全的角度来看,它可以按照WFD方案与发起者终端执行通信。
此外,行号为5到8的情况表示其中在发起者终端和任何AP(例如AP 6)之间未建立AP连接的情况。
行号为5的情况类似于行号为1的情况,除了在发起者终端和任何AP之间未建立AP连接。在这种情况下,打印机10在发起者终端与AP 6之间未建立AP连接的情形下与AP 6建立AP连接。例如,在打印机10和AP 6之间已经建立AP连接之后,通过发起者终端捕获附着到AP 6的QR码,在发起者终端和AP 6之间也建立了AP连接。在这种情况下,打印机10将打印机10的能力确定为“注册者”(图7的S16)。当前情况下,打印机10和发起者终端都可以参与由AP形成的无线网络。
行号为6的情况与行号为2的情况类似,除了在发起者终端和任何AP之间未建立AP连接。在这种情况下,打印机10将打印机10的能力确定为“注册者”(图7的S26)。在当前情况下,在打印机10和发起者终端均未与任何AP建立Wi-Fi连接的情况下,打印机10可以按照WFD方案与发起者终端执行通信。
行号为7的情况与行号为3的情况类似,除了在发起者终端和任何AP之间未建立AP连接之外。这种情况对应于图8和9的情况A。即,在发起者终端与任何AP之间未建立AP连接而打印机10与AP 6之间建立AP连接的情形下,发起者终端与AP 6建立AP连接。在这种情况下,打印机10将打印机10的能力确定为“配置者”(图8的T511a至T511d和图7的S14)。在当前情况下,打印机10可以将CO发送到发起者终端,并且使发起者终端作为子站参与打印机10当前正在参与的无线网络。
行号8的情况类似于行号4的情况,除了在发起者终端和任何AP之间未建立AP连接。这种情况对应于图12至15的情况C。即,尽管在打印机10与AP之一之间建立了AP连接,但是打印机10与发起者终端建立了WFD连接。在这种情况下,打印机10将打印机10的能力确定为“配置者”(图13的T911a和T911c以及图7的S24)。在当前情况下,打印机10可以经由AP执行通信,但是,从安全的角度来看,它可以按照WFD方案与发起者终端执行通信。
(本实施例的效果)
根据本实施例的配置,打印机10确定AP信息44是否存储在存储器34中,即,是否已经在打印机10和任何一个接入点之间建立了AP连接(图7的S10)。在已经在打印机10和AP 6之间建立了AP连接的情形下(S10是),打印机10充当配置者的角色(S14),并将第一终端-CO发送到终端200(图9的T610和图16中行号为7的情况)。结果,可以在终端200和AP 6之间建立AP连接(T640)。此外,在打印机10与任何接入点之间尚未建立AP连接的情况下(S10否),打印机10充当注册者的角色(S16),并从终端100接收第一打印机-CO(图5的T310和图16中行号为1的情况)。结果,可以在打印机10和AP 6之间建立AP连接。因此,打印机10可以通过确定打印机10本身的状况来充当适当的角色。
此外,在已经在打印机10与任何一个接入点之间建立了AP连接的情形下,打印机10确定AReq是否包括作为发起者终端的能力的指示仅能够作为注册者操作的值(图7的S12)。在确定AReq包括这样的值的情况下(图7的S12是),打印机10充当配置者的角色(S14以及图16中行号为7的情况)。另一方面,在确定AReq不包括该值的情况下(图7的S12否),打印机10充当注册者的角色(S16和图16中的行号为3的情况)。根据该配置,打印机10可以通过确定打印机10本身的状况和发起者终端的状况两者来充当适当的角色。
(对应关系)
打印机10,显示单元14和Wi-Fi I/F 16分别是“第一通信设备”,“显示单元”和“无线接口”的示例。AP-QR码和WFD-QR码是“输出信息”的示例。发起者终端(诸如终端100)是“第二通信设备”的示例。AReq(即,DPP认证请求)是“认证请求”的示例。ARes(即,DPP认证响应)是“第一认证响应(和第二认证响应)”的示例。能力“配置者”和能力“注册者”分别是“第一角色信息”和“第二角色信息”的示例。图9的T610中的第一终端-CO是“第一无线设置信息”的示例。图5的T310中的第一打印机-CO是“第二无线设置信息”的示例。AP 6是“第一接入点”的示例。在图16中的行号为1的情况下,AP 6是“第二接入点”的示例。在图16中的行号为3的情况下,AP 8是“第二接入点”的示例。在图8的T510中的AReq中,作为终端200的能力的指示仅能够作为注册者操作的值是“预定信息”的示例。MAC地址“mac_ap”和MAC地址“mac_wfd”分别是“第一使用信息”和“第二使用信息”的示例。AP信息44是“接入点信息”的示例。
图3的T106是“输出控制单元”的示例。图7的S2,S10,S32和S42分别是“认证请求接收单元”,“第一确定单元”,“第一认证响应发送单元”和“第二认证响应发送单元”的示例。图5的T310和图6的T420分别是“无线设置接收单元”和“第一建立单元”的示例。图9的T610是“无线设置发送单元”的示例。
(变型1)打印机10可以使打印执行单元18打印QR码而不是在图3的T106中显示QR码。在该变型中,使打印执行单元18打印QR码的处理是“输出控制处理”的示例。
(变型2)打印机10和终端100中的每一个还可以包括符合与Wi-Fi方案不同的无线方案(例如BT方案或NFC方案)的无线接口(例如,BT(蓝牙的缩写(注册商标,BluetoothSIG,Inc))I/F或NFC(近场通信的缩写)I/F)。在这种情况下,例如,在图3的T106中,打印机10可以指示打印机10的BT I/F以发送包括公共密钥PPK1和MAC地址“mac_ap”的DPP信息。在这种情况下,终端100可以经由终端100的BT I/F接收DPP信息。在该变型中,指示BT I/F以发送DPP信息是“输出控制处理”的示例。此外,在另一变型中,在图3的T106中,打印机10可以使打印机10的NFC I/F存储DPP信息。在这种情况下,终端100可以经由终端100的NFC I/F接收DPP信息。在该变型中,使NFC I/F存储DPP信息是“输出控制处理”的示例。
(变型3)打印机10可以使用无线配置文件(即,服务集标识符(SSID)和密码)按照Wi-Fi方案中包括的方案(例如,Wi-Fi保护设置(WPS)方案)而不是DPP方案来执行图2的处理,以建立与AP 6的AP连接。在这种情况下,在Config处理中,打印机10可以按照另一方案将包括存储在打印机10中的无线配置文件的第一终端-CO而不是第一终端-SC发送给终端200。因此,终端200可以使用接收到的无线配置文件建立与AP 6的AP连接。在该变型中,无线配置文件是“第一无线设置信息”的示例。此外,在该变型中,在图7的S4中,打印机10可以确定无线配置文件是否被存储为AP信息44。在该变型中,无线配置文件是“接入点信息”的示例。
(变型4)终端200可以按照包括在Wi-Fi方案中的方案(例如,Wi-Fi保护设置(WPS)方案)而不是DPP方案来执行情况B中的处理,以建立与AP 8的AP连接。在这种情况下,打印机10可以按照另一方案从终端200接收包括存储在终端200中的无线配置文件的第一终端-CO,而不是第一终端-SC。在该变型中,无线配置文件是“第二无线设置信息”的示例。
(变型5)Wi-Fi I/F 116可以支持由Wi-Fi联盟建立的SoftAP方案而不是WFD方案。在这种情况下,图3的T102中的选择画面可以包括“SoftAP通信”按钮而不是“WFD通信”按钮。在此,通过对公共密钥PPK1和指示使用经由AP的通信的第一信息进行编码,来获得在选择画面中的“AP通信”按钮被选择的情况下显示的AP-QR码。另一方面,通过对公共密钥PPK1和指示使用按照SoftAP方案而没有AP的干预的通信的第二信息进行编码,来获得在选择画面中的“SoftAP通信”按钮被选择的情况下显示的用于SoftAP通信的SoftAP-QR代码。此外,在该变型中,打印机10可以在Auth处理中确定AReq是否包括第一信息,而不是图7的S4中的确定。在确定AReq包括第一信息的情况下,打印机10可以进行到S10并建立与AP(诸如AP 6)的AP连接。此外,在确定AReq包括第二信息的情况下,打印机10可以将打印机10的能力确定为“配置者”和“注册者”中的一个,并按照SoftAP方案与发起者终端建立Wi-Fi连接。在该变型中,第一信息和第二信息分别是“第一使用信息”和“第二使用信息”的示例。
(变型6)可以跳过图7的S12的处理。即,程序40可以不包括与S12的处理对应的指令。在该变型中,在图16的表中的行号为3的情况下,打印机10可以将打印机10的能力确定为“配置者”。然后,在发起者终端与AP 8之间建立了AP连接的情形下,打印机10可以生成与AP 6有关的第一终端-CO,并且将第一终端-CO发送给发起者终端。然后,发起者终端可以从连接到AP 8的状态转变为连接到AP 6的状态。在该变型中,可以省略“第二确定单元”和“预定信息”。
(变型7)在图7的S2中打印机确定是的情况下,打印机10在不进行S4的处理的情况下进入S10。即,在打印机10和发起者终端之间可以不建立WFD连接。在该变型中,可以减少打印机10上的处理负载。在该变型中,可以省略“第二建立单元”,“第一使用信息”,“第二使用信息”和“第三无线连接”。
(变型8)例如,在不确定AP信息44是否存储在存储器34中的情况下(图7的S10),打印机10可以尝试向AP发送确认信号并确定是否接收到对该确认信号的响应信号。在确定接收到响应信号的情况下,打印机10可以进行至S12,而在确定未接收到响应信号的情况下,打印机10可以进行至S16。在该变型中,可以省略“接入点信息”。
(变型9)“第一通信设备”可以不是打印机10,而是可以由诸如扫描仪,多功能设备,便携式终端,PC和服务器的另一设备代替。此外,“第二通信设备”可以不是终端100或200,而是可以是诸如打印机,扫描仪,多功能设备和相机的另一设备。
(变型10)可以通过诸如逻辑电路的硬件来实现图2至15的一个或多个处理,而不是如以上实施例中所述的通过软件来实现。
Claims (11)
1.一种第一通信设备,其特征在于,包括:
无线接口,所述无线接口被配置为按照Wi-Fi标准执行无线通信;
输出控制单元,所述输出控制单元被配置为执行向外输出输出信息的输出控制处理,所述输出信息按照所述Wi-Fi标准并使用所述第一通信设备的公共密钥获得;
认证请求接收单元,所述认证请求接收单元被配置为经由所述无线接口从已经获得所述公共密钥的第二通信设备接收使用所述公共密钥的认证请求;
第一确定单元,所述第一确定单元被配置为确定在所述第一通信设备和接入点中的任何一个之间是否已经建立无线连接;
第一认证响应发送单元,所述第一认证响应发送单元被配置为在确定在所述第一通信设备和第一接入点之间已经建立无线连接的情况下,经由所述无线接口向所述第二通信设备发送第一认证响应,所述第一认证响应包括指示所述第一通信设备将充当第一角色的第一角色信息,所述第一角色是将第一无线设置信息发送给所述第二通信设备的角色,所述第一无线设置信息用于在所述第二通信设备和所述第一接入点之间建立第一无线连接;
无线设置发送单元,所述无线设置发送单元被配置为在已经将所述第一认证响应发送给所述第二通信设备之后,经由所述无线接口将所述第一无线设置信息发送给所述第二通信设备;
第二认证响应发送单元,所述第二认证响应发送单元被配置为在确定在所述第一通信设备和任何所述接入点之间尚未建立无线连接的情况下,经由所述无线接口向所述第二通信设备发送第二认证响应,所述第二认证响应包括第二角色信息,所述第二角色信息指示所述第一通信设备将充当第二角色,所述第二角色与所述第一角色不同,并且是从所述第二通信设备接收第二无线设置信息的角色,所述第二无线设置信息用于在所述第一通信设备和第二接入点之间建立第二无线连接;
无线设置接收单元,所述无线设置接收单元被配置为在已经将所述第二认证响应发送给所述第二通信设备之后,经由所述无线接口从所述第二通信设备接收所述第二无线设置信息;和
第一建立单元,所述第一建立单元被配置为使用所述第二无线设置信息经由所述无线接口与所述第二接入点建立所述第二无线连接。
2.根据权利要求1所述的第一通信设备,其特征在于,其中,在已经从所述第二通信设备接收到所述认证请求之后,所述第一确定单元确定在所述第一通信设备和所述接入点中的任何一个之间是否已经建立无线连接。
3.根据权利要求1所述的第一通信设备,其特征在于,还包括:
第二确定单元,所述第二确定单元被配置为在已经从所述第二通信设备接收到所述认证请求的情况下,确定所述认证请求是否包括指示所述第二通信设备将充当所述第二角色的预定信息,
其中,在确定在所述第一通信设备和所述第一接入点之间建立所述无线连接且所述认证请求包括所述预定信息的情况下,所述第一认证响应发送单元经由所述无线接口将包括所述第一角色信息的所述第一认证响应发送给所述第二通信设备,并且
在确定在所述第一通信设备和所述第一接入点之间建立所述无线连接并且所述认证请求不包括所述预定信息的情况下,所述第二认证响应发送单元经由所述无线接口将包括所述第二角色信息的所述第二认证响应发送给所述第二通信设备。
4.根据权利要求1所述的第一通信设备,其特征在于,其中
所述认证请求包括与经由接入点的通信的使用有关的第一使用信息或与在没有接入点干预下的通信的使用有关的第二使用信息,
在所述认证请求包括所述第一使用信息的情况下,所述第一确定单元确定是否已经在所述第一通信设备和所述接入点中的任何一个之间建立无线连接,并且
所述第一通信设备还包括:
第二建立单元,所述第二建立单元被配置为在所述认证请求包括所述第二使用信息的情况下,经由所述无线接口与所述第二通信设备建立第三无线连接,所述第三无线连接是在没有任何接入点干预的情况下建立的。
5.根据权利要求4所述的第一通信设备,其特征在于,其中,所述第三无线连接是按照所述Wi-Fi标准的Wi-Fi Direct方案的无线连接。
6.根据权利要求5所述的第一通信设备,其特征在于,其中
在所述第一通信设备按照所述Wi-Fi Direct方案处于组所有者状态的情况下,所述第一通信设备充当所述第一角色,并且
在所述第一通信设备按照所述Wi-Fi Direct方案处于客户状态的情况下,所述第一通信设备充当所述第二角色。
7.根据权利要求1所述的第一通信设备,其特征在于,其中,所述输出信息是按照所述Wi-Fi标准的设备配置协议方案的信息。
8.根据权利要求1所述的第一通信设备,其特征在于,其中,在已经将接入点信息存储在所述存储器中的情况下,所述第一确定单元确定在所述第一通信设备和所述第一接入点之间已经建立所述无线连接,所述接入点信息与已经与所述第一通信设备建立所述无线连接的所述第一接入点相关。
9.根据权利要求8所述的第一通信设备,其特征在于,其中,所述接入点信息包括按照所述Wi-Fi标准的设备配置协议方案的签名连接器。
10.根据权利要求1所述的第一通信设备,其特征在于,其中
所述输出信息是通过对所述公共密钥进行编码而获得的码图像,并且
所述输出控制处理是使显示单元显示作为所述码图像的所述输出信息的处理。
11.一种用于第一通信设备的计算机程序,其特征在于,其中
所述第一通信设备包括
处理器;和
无线接口,所述无线接口被配置为按照Wi-Fi标准执行无线通信,
其中,所述计算机程序使所述处理器用作:
输出控制单元,所述输出控制单元被配置为执行向外输出输出信息的输出控制处理,所述输出信息按照所述Wi-Fi标准并使用所述第一通信设备的公共密钥获得;
认证请求接收单元,所述认证请求接收单元被配置为经由所述无线接口从已经获得所述公共密钥的第二通信设备接收使用所述公共密钥的认证请求;
第一确定单元,所述第一确定单元被配置为确定在所述第一通信设备和接入点中的任何一个之间是否已经建立无线连接;
第一认证响应发送单元,所述第一认证响应发送单元被配置为在确定在所述第一通信设备和第一接入点之间已经建立无线连接的情况下,经由所述无线接口向所述第二通信设备发送第一认证响应,所述第一认证响应包括第一角色信息,所述第一角色信息指示所述第一通信设备将充当第一角色,所述第一角色是将第一无线设置信息发送到所述第二通信设备的角色,所述第一无线设置信息用于在所述第二通信设备和所述第一接入点之间建立第一无线连接;
无线设置发送单元,所述无线设置发送单元被配置为在已经将所述第一认证响应发送给所述第二通信设备之后,经由所述无线接口将所述第一无线设置信息发送给所述第二通信设备;
第二认证响应发送单元,所述第二认证响应发送单元被配置为在确定在所述第一通信设备和任何所述接入点之间尚未建立无线连接的情况下,经由所述无线接口向所述第二通信设备发送第二认证响应,所述第二认证响应包括第二角色信息,所述第二角色信息指示所述第一通信设备将充当第二角色,所述第二角色与所述第一角色不同,并且是从所述第二通信设备接收第二无线设置信息的角色,所述第二无线设置信息用于在所述第一通信设备和第二接入点之间建立第二无线连接;
无线设置接收单元,所述无线设置接收单元被配置为在已经将所述第二认证响应发送给所述第二通信设备之后,经由所述无线接口从所述第二通信设备接收所述第二无线设置信息;和
第一建立单元,所述第一建立单元被配置为使用所述第二无线设置信息经由所述无线接口与所述第二接入点建立所述第二无线连接。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019-157247 | 2019-08-29 | ||
JP2019157247A JP7310449B2 (ja) | 2019-08-29 | 2019-08-29 | 第1の通信装置と第1の通信装置のためのコンピュータプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112449442A true CN112449442A (zh) | 2021-03-05 |
Family
ID=72266030
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010885900.4A Pending CN112449442A (zh) | 2019-08-29 | 2020-08-28 | 第一通信设备和用于第一通信设备的计算机程序 |
Country Status (4)
Country | Link |
---|---|
US (4) | US11216225B2 (zh) |
EP (1) | EP3787328B1 (zh) |
JP (2) | JP7310449B2 (zh) |
CN (1) | CN112449442A (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7310449B2 (ja) * | 2019-08-29 | 2023-07-19 | ブラザー工業株式会社 | 第1の通信装置と第1の通信装置のためのコンピュータプログラム |
CN113873685B (zh) * | 2021-09-22 | 2024-02-06 | 深圳Tcl新技术有限公司 | WiFi直连连接的建立方法、装置及设备 |
JP2023176541A (ja) * | 2022-05-31 | 2023-12-13 | キヤノン株式会社 | プログラム、システムおよび方法 |
WO2024063046A1 (ja) * | 2022-09-21 | 2024-03-28 | キヤノン株式会社 | 通信装置、通信装置の制御方法およびプログラム |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102387501A (zh) * | 2010-08-30 | 2012-03-21 | 苹果公司 | 使用探测的两个设备之间的安全无线链路 |
CN107439029A (zh) * | 2015-04-06 | 2017-12-05 | 高通股份有限公司 | 使用重新关联对象的无线网络快速认证/关联 |
US20180213585A1 (en) * | 2015-07-21 | 2018-07-26 | Canon Kabushiki Kaisha | Communication apparatus, communication method, and program |
US20180332471A1 (en) * | 2016-05-05 | 2018-11-15 | Tencent Technology (Shenzhen) Company Limited | Wireless network connection method, wireless access point, server, and system |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050130647A1 (en) * | 2003-10-22 | 2005-06-16 | Brother Kogyo Kabushiki Kaisha | Wireless lan system, communication terminal and communication program |
CA2890327C (en) * | 2013-03-12 | 2017-10-24 | Lg Electronics Inc. | Method for peer to peer group formation in direct communication system and device therefor |
US20160360407A1 (en) * | 2015-06-05 | 2016-12-08 | Qualcomm Incorporated | Distributed configurator entity |
JP6794191B2 (ja) * | 2016-09-02 | 2020-12-02 | キヤノン株式会社 | 通信装置、通信方法、及びプログラム |
JP6702833B2 (ja) | 2016-09-15 | 2020-06-03 | キヤノン株式会社 | 通信装置、通信装置の制御及びプログラム |
US20180109418A1 (en) | 2016-10-19 | 2018-04-19 | Qualcomm Incorporated | Device provisioning protocol (dpp) using assisted bootstrapping |
JP7109243B2 (ja) | 2017-07-28 | 2022-07-29 | キヤノン株式会社 | 通信装置、通信装置の制御方法及びプログラム |
KR102366312B1 (ko) * | 2017-09-20 | 2022-02-25 | 삼성전자주식회사 | 근거리 통신의 재연결을 수행하는 전자 장치 및 그 동작 방법 |
JP6900892B2 (ja) | 2017-12-08 | 2021-07-07 | ブラザー工業株式会社 | 通信装置 |
JP7310449B2 (ja) * | 2019-08-29 | 2023-07-19 | ブラザー工業株式会社 | 第1の通信装置と第1の通信装置のためのコンピュータプログラム |
JP7338372B2 (ja) * | 2019-09-27 | 2023-09-05 | ブラザー工業株式会社 | 通信装置、及び、通信装置のためのコンピュータプログラム |
JP7363304B2 (ja) * | 2019-09-30 | 2023-10-18 | ブラザー工業株式会社 | 通信装置と通信装置のためのコンピュータプログラム |
-
2019
- 2019-08-29 JP JP2019157247A patent/JP7310449B2/ja active Active
-
2020
- 2020-08-27 EP EP20193059.1A patent/EP3787328B1/en active Active
- 2020-08-27 US US17/004,128 patent/US11216225B2/en active Active
- 2020-08-28 CN CN202010885900.4A patent/CN112449442A/zh active Pending
-
2021
- 2021-12-21 US US17/557,109 patent/US11567714B2/en active Active
-
2023
- 2023-01-24 US US18/158,996 patent/US11782657B2/en active Active
- 2023-07-05 JP JP2023110968A patent/JP2023118902A/ja active Pending
- 2023-08-28 US US18/456,668 patent/US12067312B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102387501A (zh) * | 2010-08-30 | 2012-03-21 | 苹果公司 | 使用探测的两个设备之间的安全无线链路 |
CN107439029A (zh) * | 2015-04-06 | 2017-12-05 | 高通股份有限公司 | 使用重新关联对象的无线网络快速认证/关联 |
US20180213585A1 (en) * | 2015-07-21 | 2018-07-26 | Canon Kabushiki Kaisha | Communication apparatus, communication method, and program |
US20180332471A1 (en) * | 2016-05-05 | 2018-11-15 | Tencent Technology (Shenzhen) Company Limited | Wireless network connection method, wireless access point, server, and system |
Also Published As
Publication number | Publication date |
---|---|
US11782657B2 (en) | 2023-10-10 |
JP2021035026A (ja) | 2021-03-01 |
US20230161525A1 (en) | 2023-05-25 |
EP3787328B1 (en) | 2024-03-20 |
EP3787328A1 (en) | 2021-03-03 |
US11567714B2 (en) | 2023-01-31 |
US20230401020A1 (en) | 2023-12-14 |
JP7310449B2 (ja) | 2023-07-19 |
JP2023118902A (ja) | 2023-08-25 |
US12067312B2 (en) | 2024-08-20 |
US20210064310A1 (en) | 2021-03-04 |
US11216225B2 (en) | 2022-01-04 |
US20220113920A1 (en) | 2022-04-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20230289116A1 (en) | Terminal Device, Access Point, Communication Device, and Computer Programs Therefor | |
JP7215048B2 (ja) | 端末装置のためのコンピュータプログラム、及び、端末装置 | |
CN112449442A (zh) | 第一通信设备和用于第一通信设备的计算机程序 | |
JP7540538B2 (ja) | 端末装置のためのコンピュータプログラム、及び、通信装置 | |
JP7552815B2 (ja) | 端末装置と端末装置のためのコンピュータプログラム | |
JP7338372B2 (ja) | 通信装置、及び、通信装置のためのコンピュータプログラム | |
JP7196533B2 (ja) | 通信装置と通信装置のためのコンピュータプログラム | |
JP7476948B2 (ja) | 通信装置、通信装置のためのコンピュータプログラム、及び、第1の外部装置のためのコンピュータプログラム | |
JP2021057760A (ja) | 通信装置と通信装置のためのコンピュータプログラム | |
JP2020113851A (ja) | 端末装置と端末装置のためのコンピュータプログラム | |
JP2019180036A (ja) | 通信装置と通信装置のためのコンピュータプログラム | |
JP7293950B2 (ja) | 端末装置と端末装置のためのコンピュータプログラム | |
CN112672350B (zh) | 通信设备 | |
JP7582381B2 (ja) | 端末装置のためのコンピュータプログラム、端末装置、通信装置、及び、通信装置のためのコンピュータプログラム | |
JP7302682B2 (ja) | 端末装置のためのコンピュータプログラム、端末装置、通信装置、及び、通信装置のためのコンピュータプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |