WO2018123357A1 - 通信装置、制御方法、及びプログラム - Google Patents
通信装置、制御方法、及びプログラム Download PDFInfo
- Publication number
- WO2018123357A1 WO2018123357A1 PCT/JP2017/041810 JP2017041810W WO2018123357A1 WO 2018123357 A1 WO2018123357 A1 WO 2018123357A1 JP 2017041810 W JP2017041810 W JP 2017041810W WO 2018123357 A1 WO2018123357 A1 WO 2018123357A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- communication
- parameter
- smartphone
- information
- digital camera
- Prior art date
Links
- 238000004891 communication Methods 0.000 title claims abstract description 319
- 238000000034 method Methods 0.000 title claims abstract description 94
- 230000008569 process Effects 0.000 claims abstract description 67
- 238000012545 processing Methods 0.000 claims description 80
- 230000005540 biological transmission Effects 0.000 claims description 21
- 238000001514 detection method Methods 0.000 claims description 7
- 230000006870 function Effects 0.000 description 84
- 230000004044 response Effects 0.000 description 41
- 230000002093 peripheral effect Effects 0.000 description 23
- 238000010586 diagram Methods 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 5
- 238000004590 computer program Methods 0.000 description 4
- 238000003384 imaging method Methods 0.000 description 4
- 238000012790 confirmation Methods 0.000 description 3
- 238000007639 printing Methods 0.000 description 3
- 230000001276 controlling effect Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 1
- 238000009472 formulation Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/50—Secure pairing of devices
-
- 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
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0806—Configuration setting for initial configuration or provisioning, e.g. plug-and-play
-
- 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/18—Network architectures or network communication protocols for network security using different networks or channels, e.g. using out of band channels
-
- 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]
- H04W12/041—Key generation or derivation
-
- 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]
- H04W12/047—Key management, e.g. using generic bootstrapping architecture [GBA] without using a trusted network node as an anchor
- H04W12/0471—Key exchange
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/50—Service provisioning or reconfiguring
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/80—Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication
-
- 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
- H04W8/00—Network data management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W8/00—Network data management
- H04W8/22—Processing or transfer of terminal data, e.g. status or physical capabilities
-
- 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
-
- 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/06—Network architectures or network communication protocols for network security for supporting key management in a packet data network
- H04L63/061—Network architectures or network communication protocols for network security for supporting key management in a packet data network for key exchange, e.g. in peer-to-peer networks
-
- 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
- H04W36/00—Hand-off or reselection arrangements
- H04W36/14—Reselecting a network or an air interface
- H04W36/144—Reselecting a network or an air interface over a different radio air interface technology
- H04W36/1446—Reselecting a network or an air interface over a different radio air interface technology wherein at least one of the networks is unlicensed
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W8/00—Network data management
- H04W8/005—Discovery of network devices, e.g. terminals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W8/00—Network data management
- H04W8/22—Processing or transfer of terminal data, e.g. status or physical capabilities
- H04W8/24—Transfer of terminal data
-
- 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]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W88/00—Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
- H04W88/02—Terminal devices
- H04W88/06—Terminal devices adapted for operation in multiple networks or having at least two operational modes, e.g. multi-mode terminals
Definitions
- the present invention relates to a communication device, a control method, and a program, and specifically relates to a connection setting technique.
- Wi-Fi Wi-Fi Device Provisioning Protocol
- Wi-Fi registered trademark
- Non-patent literature Non-patent literature
- DPP it is considered to select a partner device using a QR code (registered trademark) and a wireless communication technology (NFC or Bluetooth (registered trademark)) having a relatively short communicable distance. Further, in DPP, it is proposed that parameters be exchanged securely based on a public key of a counterpart device specified by a QR code or a wireless communication technique.
- Wi-Fi Alliance Wi-Fi Device Provisioning Protocol (DPP) DRAFT Technical Specification v0.0.23
- the non-patent document 1 does not describe the public key exchange method of the partner apparatus specified by the radio communication technology, and there is room for improvement in the parameter exchange method using the radio communication technology in DPP.
- the present invention provides a specific method for parameter exchange for establishing a connection between desired devices.
- a communication apparatus is performed using a first communication unit, a second communication unit different from the first communication unit, and the second communication unit to participate in a network.
- Detection means for detecting a partner device for parameter exchange processing using the first communication means, switching means for exchanging information used in communication related to the parameter exchange processing with the counterpart device, and the second communication
- executing means for executing the parameter exchange process using the information.
- parameters for establishing a connection can be exchanged between desired devices.
- FIG. 1 is a diagram illustrating a hardware configuration example of a communication apparatus.
- FIG. 2 is a diagram illustrating a functional configuration example of the communication apparatus.
- FIG. 3 is a diagram illustrating a network configuration example.
- FIG. 4 is an operation sequence diagram illustrating a first example of a process flow between communication apparatuses.
- FIG. 5 is an operation sequence diagram illustrating a second example of the flow of processing between communication devices.
- FIG. 6 is a flowchart illustrating a first example of a flow of processing executed by the smartphone.
- FIG. 7 is a flowchart illustrating a first example of a flow of processing executed by the digital camera.
- FIG. 8 is an operation sequence diagram illustrating a third example of the flow of processing between communication devices.
- FIG. 9 is a flowchart illustrating a second example of the flow of processing executed by the smartphone and the digital camera.
- FIG. 10 is an operation sequence diagram illustrating a fourth example of a process flow between communication devices.
- FIG. 11 is a flowchart illustrating a third example of the flow of processing executed by the smartphone and the digital camera.
- FIG. 1 shows an example of the hardware configuration of the communication apparatus according to the present embodiment.
- the communication apparatus includes a storage unit 101, a control unit 102, a function unit 103, an input unit 104, an output unit 105, a wireless communication unit 106, an antenna control unit 107, and an antenna 108 as an example of the hardware configuration.
- the storage unit 101 is composed of either or both of ROM and RAM, and stores various information such as programs for performing various operations described later and communication parameters for wireless communication.
- the storage unit 101 is a storage medium such as a flexible disk, a hard disk, an optical disk, a magneto-optical disk, a CD-ROM, a CD-R, a magnetic tape, a nonvolatile memory card, and a DVD. May be used.
- the control unit 102 includes, for example, a processor such as a CPU or MPU, an ASIC (application-specific integrated circuit), a DSP (digital signal processor), an FPGA (field programmable gate array), or the like.
- CPU is an acronym for Central Processing Unit
- MPU is an acronym for Micro Processing Unit.
- the control unit 102 controls the entire communication apparatus by executing a program stored in the storage unit 101.
- the control unit 102 may control the entire communication device in cooperation with a program stored in the storage unit 101 and an OS (Operating System).
- the control unit 102 can also control setting of communication parameters with other devices.
- Various operations described below are performed, for example, by the control unit 102 executing a control program stored in the storage unit 101.
- the control unit 102 controls the function unit 103 to execute predetermined processing such as imaging, printing, and projection.
- the functional unit 103 is hardware for the communication device to execute a predetermined process.
- the function unit 103 is an imaging unit and performs an imaging process.
- the communication apparatus according to the present embodiment may include a functional unit 103 that functions as an imaging unit for capturing a QR code or the like, for example.
- the function unit 103 is a printing unit and performs a printing process.
- the function unit 103 is a projection unit and performs a projection process.
- the data processed by the function unit 103 may be data stored in the storage unit 101 or data communicated with another device via the wireless communication unit 106 described later.
- the input unit 104 accepts various operations from the user.
- the output unit 105 performs various outputs to the user.
- the output by the output unit 105 includes at least one of an output of visually recognizable information such as an LCD and an LED, an audio output by a speaker, and a vibration output.
- the output unit 105 can display a QR code, but the QR code is affixed to the communication device housing in a form such as a seal, and the output unit 105 may not have a function of displaying the QR code. .
- both the input unit 104 and the output unit 105 may be realized by one module like a touch panel.
- the wireless communication unit 106 controls wireless communication and IP communication based on the IEEE 802.11 standard series. Note that the wireless communication unit 106 can also execute control related to wireless communication such as Near Field Communication (hereinafter referred to as “NFC”) and Bluetooth.
- the antenna control unit 107 controls the antenna 108 to transmit / receive a radio signal for wireless communication.
- the apparatus communicates content such as image data, document data, and video data with another communication apparatus via the wireless communication unit 106. Note that separate communication circuits and antennas may be mounted for different standards, and communication may be performed according to a plurality of communication standards using one circuit or one antenna.
- FIG. 2 is a block diagram illustrating a configuration example of software functions realized by the control unit 102 of the communication apparatus reading and executing a program stored in the storage unit 101.
- each function is realized by software
- a part or all of the software function blocks shown in FIG. 2 may be realized by hardware.
- the hardware that realizes part or all of the functions may be a dedicated circuit that is generated on a programmable processor such as an FPGA using a predetermined compiler from a program for realizing each functional block.
- the communication apparatus includes, for example, a communication parameter control unit 201, a barcode reading unit 202, a barcode generation unit 203, a service control unit 204, a packet reception unit 205, a packet transmission unit 206, an STA function control unit 207, and an AP function control unit 208.
- the data storage unit 209 is included.
- the communication apparatus can further include a Bluetooth control unit 210 and an NFC control unit 211. Note that these functional blocks are configured to be able to communicate with each other, and can supply their own output to other functions, or obtain outputs of other functions and perform processing.
- the communication parameter control unit 201 performs execution control of communication parameter sharing processing for sharing communication parameters between devices.
- the providing device provides the receiving device with communication parameters for enabling wireless communication.
- the communication parameter may include information necessary for performing wireless communication such as an SSID (Service Set Identifier) as a network identifier, an encryption method, an encryption key, an authentication method, and an authentication key, for example.
- SSID Service Set Identifier
- MAC Medium Access Control
- passphrase IP address for communication on the IP layer
- information necessary for higher level services, etc. are included in the communication parameters here as identification information unique to the communication device May be.
- the bar code reading unit 202 analyzes an image such as a bar code photographed by the function unit 103 and a two-dimensional code including a QR code, and acquires encoded information.
- the barcode generation unit 203 generates a barcode, a two-dimensional code, and the like, and performs control for displaying the generated barcode, the two-dimensional code, and the like on the output unit 105.
- the service control unit 204 performs processing of an application layer that is a service providing layer in a higher layer than the fifth layer in the OSI reference model. That is, the service control unit 204 executes processing such as print processing, image streaming processing, and file transfer processing using wireless communication by the wireless communication unit 106.
- the packet reception unit 205 and the packet transmission unit 206 execute all control of packet transmission / reception including the communication protocol of the upper layer.
- the packet receiving unit 205 and the packet transmitting unit 206 control the wireless communication unit 106 in order to transmit and receive packets conforming to the IEEE 802.11 standard, respectively, with the counterpart device.
- the STA function control unit 207 provides a STA function for operating as a station (STA) in an infrastructure mode defined by the IEEE 802.11 standard.
- the STA function control unit 207 executes authentication / encryption processing and the like when operating as the STA.
- the AP function control unit 208 also provides an AP function for operating as an access point (AP) in the infrastructure mode defined by the IEEE 802.11 standard.
- the AP function control unit 208 forms a wireless network, and executes authentication / encryption processing for the STA, management of the STA, and the like.
- the data storage unit 209 is used to write software (program), communication parameters, barcode information, etc. for realizing at least a part of the functions shown in FIG. Take control.
- the Bluetooth control unit 210 performs packet transmission / reception, profile control, and the like based on the Bluetooth (registered trademark) standard.
- the Bluetooth 4.2 standard for example, Bluetooth Low Energy (BLE)
- BLE Bluetooth Low Energy
- the communication parameter sharing process if the service to be performed is a communication parameter providing service, the device that provides the communication parameter becomes the central device that provides the service, and the device that receives the communication parameter becomes the peripheral device that enjoys the service. .
- the device that receives the communication parameter can be a central device that provides the service, and the device that provides the communication parameter can be a peripheral device that enjoys the service.
- the Bluetooth control unit 210 can operate as a central device or a peripheral device depending on a service to be executed and its role.
- the NFC control unit 211 performs sequence and profile control based on the NFC standard.
- the above functional block is an example, and a plurality of functional blocks may constitute one functional block, or any functional block may be further divided into blocks that perform a plurality of functions. Further, further functions may be added as necessary, and some functions may be omitted.
- FIG. 3 shows a configuration example of the network 301 according to the present embodiment.
- the network 301 is a wireless LAN formed by the printer 303 and participating in the smartphone 302.
- the smartphone 302 sets parameters for participating in the network 301 for the digital camera 304.
- the smartphone 302 and the digital camera 304 are communication apparatuses having the configurations shown in FIGS. 1 and 2, for example.
- the smartphone 302 and the digital camera 304 recognize each other using the first communication function, and then the information used when the digital camera 304 performs the parameter sharing process is used as the second communication function. Used to transmit to the smartphone 302. Then, for example, the smartphone 302 transmits a parameter related to the network 301 to the digital camera 304 based on the information used when the second communication function is used and the received parameter sharing is performed.
- the information used for parameter sharing is assumed to be an encryption key here, but may be information other than the encryption key.
- the first communication function is, for example, a communication function according to the Bluetooth standard
- the second communication function is a communication function according to the Wi-Fi communication standard.
- the network 301 is a wireless LAN that complies with the Wi-Fi communication standard, and the second communication function here is also a communication function used to participate in the network 301.
- the digital camera 304 has the second communication function, but cannot participate in the network 301 until it receives parameters from the smartphone 302. That is, communication using the second communication function performed between the above-described smartphone 302 and digital camera 304 (communication of information used when executing parameter sharing processing and communication at the time of parameter sharing) is performed on the network 301. Communication performed outside. Communication of information used when executing parameter sharing processing and communication at the time of parameter sharing may be performed using different communication functions. For example, communication at the time of parameter sharing may be performed using the third communication function.
- the second communication function may be different from the communication function used when joining the network. Further, the communication using the second communication function may follow different standards (or versions of the standards) depending on, for example, the case where it is used in the network 301 and the case where it is used when sharing parameters. For example, communication at the time of parameter sharing can follow an old standard with a relatively low speed, and communication on the network 301 can follow a new standard with a high speed.
- BLE Bluetooth Low Energy
- the user determines to start the communication parameter sharing process, and selects a method for searching for the partner apparatus (in this example, the digital camera 304).
- the method for searching for a partner device includes, for example, identification of a partner device using a two-dimensional code including a QR code, recognition of the partner device by NFC touch, and partner device search / identification processing using proximity wireless technology such as Bluetooth or Zigbee. It can be either.
- the user of the smartphone 302 has selected Bluetooth (BLE) as a method for determining the counterpart device.
- BLE Bluetooth
- the smartphone 302 controls the Bluetooth control unit 210 and operates as a Bluetooth peripheral device. Then, the smartphone 302 transmits (for example, broadcast transmission) an advertisement signal including information indicating that the communication parameter sharing service is executed (F401).
- the advertisement signal includes information indicating the role of the smartphone 302 in the communication parameter sharing service, that is, whether the smartphone 302 operates as a parameter providing device or a parameter receiving device.
- the smartphone 302 since the smartphone 302 operates as a parameter providing device, information indicating that is included in the advertisement signal and transmitted.
- the advertisement signal may include information such as the MAC address of the smartphone 302 and UUID (Universally Unique Identifier) as device identification information in the wireless LAN after the handover.
- UUID Universalally Unique Identifier
- the digital camera 304 it is assumed that the user decides to start the communication parameter sharing process and selects Bluetooth (BLE) as a method for searching for the partner device.
- the user inputs the selection result to the digital camera 304, for example, by executing a predetermined operation.
- the digital camera 304 controls the Bluetooth control unit 210 to operate as a Bluetooth peripheral device. That is, in this example, both the smartphone 302 and the digital camera 304 operate as a peripheral device.
- the digital camera 304 receives the Bluetooth advertisement signal transmitted by the smartphone 302 in F401.
- the digital camera 304 analyzes the content of the received advertisement signal and determines whether information indicating that the communication parameter sharing service is executed is included.
- the digital camera 304 determines whether the received advertisement signal includes information indicating that the transmission source (smartphone 302) of the advertisement signal is a parameter providing device. Since the digital camera 304 is scheduled to operate as a parameter receiving device, an advertisement signal including information indicating that the transmission source is the parameter receiving device can be ignored.
- the digital camera 304 determines that the transmission source device includes information indicating that the communication parameter sharing service is executed as a parameter providing device, the digital camera 304 designates the transmission source device as a communication parameter exchange service.
- the digital camera 304 When the digital camera 304 detects the partner device (smartphone 302) of the communication parameter exchange service, the digital camera 304 generates a public key used in communication related to the communication parameter sharing process. For example, the digital camera 304 internally instructs the communication parameter control unit 201 to generate a public key to be used for communication related to the communication parameter sharing process (F402). Then, in response to the instruction, the communication parameter control unit 201 of the digital camera 304 generates a public key used in communication related to the communication parameter sharing process (F403). Thereafter, the digital camera 304 controls the Bluetooth control unit 210 to start an operation as a Bluetooth peripheral device, and transmits an advertisement signal including information indicating that the communication parameter sharing service is executed (F404).
- the advertisement signal includes information indicating the role of the digital camera 304 in the communication parameter sharing service, that is, whether it operates as a parameter providing device or a parameter receiving device.
- the advertisement signal may include information such as the MAC address and UUID of the digital camera 304 as device identification information in the wireless LAN after the handover. After transmitting the advertisement signal, the digital camera 304 executes a handover from Bluetooth to the wireless LAN.
- the smartphone 302 when the smartphone 302 receives the advertisement signal transmitted from the digital camera 304 in F404, the smartphone 302 analyzes the content of the received advertisement signal and determines whether information indicating that the communication parameter sharing service is executed is included. judge. In addition, the smartphone 302 determines whether the received advertisement signal includes information indicating that the transmission source (digital camera 304) of the advertisement signal is a parameter reception device. Since the smartphone 302 is scheduled to operate as a parameter providing device, the advertisement signal including information indicating that the transmission source is the parameter providing device can be ignored. If the information indicating that the communication parameter sharing service is executed as a parameter receiving device is included, the smartphone 302 determines that the device that transmitted the advertisement signal in F404 is a partner device that provides parameters.
- the smartphone 302 internally instructs a handover from Bluetooth to the wireless LAN (F405).
- both the smartphone 302 as the parameter providing device and the digital camera 304 as the parameter receiving device complete the handover to the wireless LAN.
- the smartphone 302 transmits a signal for requesting the public key used for communication related to the communication parameter sharing process to the digital camera 304 in the wireless LAN (F406).
- the digital camera 304 Upon receiving the request signal from the smartphone 302, the digital camera 304 returns a response signal including the public key generated in F403 to the smartphone 302 (F407).
- the smartphone 302 Upon receiving the public key, the smartphone 302 transmits an authentication request signal including a hash value of information indicating the received public key to the digital camera 304 (F408).
- the digital camera 304 transmits an authentication response signal indicating successful authentication to the smartphone 302 when authentication using the hash value included in the signal is successful (F409).
- the smartphone 302 When the smartphone 302 receives the authentication response signal, the smartphone 302 transmits an authentication confirmation signal (F410). Then, the digital camera 304 transmits a setting request signal to the smartphone 302 (F411). Upon receiving the setting request signal, the smartphone 302 transmits a setting response signal including information such as the SSID, passphrase, and wireless LAN channel to the digital camera 304 in response to the setting request signal (F412). . Note that data transmission from the smartphone 302 to the digital camera 304 is performed using the public key transmitted in F407.
- the communication device that performs communication parameter sharing processing is detected using the first communication function that enables communication at a relatively short distance between communication devices that share parameters.
- information used in communication related to wireless LAN parameter sharing is transmitted and received between the communication devices using a second communication function different from the first communication function. Based on the information, Thus, the wireless LAN parameters are shared.
- the first communication function is used for discovery of the counterpart device, and information used in communication related to the sharing of parameters such as public key information is transmitted and received by the second communication function, thereby transmitting the first communication function. Even when the amount of possible data is small, the information can be reliably transmitted and received.
- FIG. 5 shows an example of the flow of processing when the smartphone 302 responds based on the notification information transmitted from the digital camera 304.
- BLE Bluetooth Low Energy
- the user decides to start the communication parameter sharing process, and selects a method for searching for a partner device.
- the user of the smartphone 302 has selected Bluetooth as the method for determining the counterpart device.
- the user inputs this selection result to the smartphone 302 by executing a predetermined operation in a predetermined application, for example.
- the smartphone 302 operates as a Bluetooth central device by controlling the Bluetooth control unit 210.
- the digital camera 304 it is assumed that the user decides to start the communication parameter sharing process and selects Bluetooth as a method for searching for a partner device.
- the user inputs the selection result to the digital camera 304, for example, by executing a predetermined operation.
- the digital camera 304 causes the communication parameter control unit 201 to generate a public key used for communication related to the communication parameter sharing process (F501).
- the digital camera 304 controls the Bluetooth control unit 210 to operate as a Bluetooth peripheral device. Then, the digital camera 304 transmits an advertisement signal including information indicating that the communication parameter sharing service is executed (F502).
- the advertisement signal includes information indicating the role of the digital camera 304 in the communication parameter sharing service, that is, whether the digital camera 304 operates as a parameter providing device or a parameter receiving device.
- the digital camera 304 since the digital camera 304 operates as a parameter receiving device, information indicating that is included in the advertisement signal and transmitted.
- the advertisement signal stores information such as the MAC address and UUID of the digital camera 304 as device identification information in the wireless LAN after the handover.
- the smartphone 302 When the smartphone 302 receives the advertisement signal transmitted by the digital camera 304 in F502, the smartphone 302 analyzes the content of the received advertisement signal and determines whether information indicating that the communication parameter sharing service is executed is included. In addition, the smartphone 302 determines whether the received advertisement signal includes information indicating that the transmission source (digital camera 304) of the advertisement signal is a parameter reception device. Since the smartphone 302 is scheduled to operate as a parameter providing device, the advertisement signal including information indicating that the transmission source is the parameter providing device can be ignored. If the smartphone 302 determines that information indicating that the communication parameter sharing service is to be executed as a parameter receiving device is included, the smartphone 302 internally issues a handover from Bluetooth to the wireless LAN (F503).
- the smartphone 302 transmits a connection response signal to the digital camera 304 by Bluetooth (F504).
- the connection response signal in F504 includes information indicating the role of the smartphone 302 in the communication parameter sharing service, that is, whether the smartphone 302 operates as a parameter providing device or a parameter receiving device.
- the smartphone 302 since the smartphone 302 operates as a parameter providing device, information indicating that is included in the advertisement signal and transmitted.
- the connection response signal may include information such as the MAC address and UUID of the smartphone 302 as device identification information in the wireless LAN after the handover.
- the connection response signal may include device identification information of the digital camera 304 included in the advertisement signal received in F502.
- the smart phone 302 shall transmit a connection response signal along the flow of the process prescribed
- the digital camera 304 When the digital camera 304 receives the connection response signal, the digital camera 304 internally issues a handover from Bluetooth to the wireless LAN (F505). Since the subsequent processing is the same as F406 to F412 in FIG. 4, the same reference numerals are assigned and description thereof is omitted.
- FIG. 6 is a flowchart illustrating an example of a flow of providing processing such as communication parameters executed by the smartphone 302.
- the process in FIG. 6 is started by the control unit 102 in response to receiving a user operation for selecting a process start via the input unit 104 and the output unit 105. 6 is realized by the control unit 102 reading and executing the computer program stored in the storage unit 101.
- the smartphone 302 determines to start the function of the providing device in the communication parameter sharing process (S601). Then, the smartphone 302 selects a method for searching for a partner device (S602). Here, it is assumed that the smartphone 302 has selected Bluetooth. In response to this selection, the smartphone 302 starts operation as a peripheral device or a central device. For example, the smartphone 302 operates as a peripheral device when executing the process as shown in FIG. 4 and operates as a central device when executing the process as shown in FIG.
- the smartphone 302 When the smartphone 302 operates as a peripheral device, the smartphone 302 transmits an advertisement signal including information indicating that the communication parameter sharing service is executed as the parameter providing device (S603). Then, after transmitting the advertisement signal in S603, the smartphone 302 waits for the partner device (digital camera 304) to be detected (S604). Note that the smartphone 302 can detect the partner device based on the advertisement signal transmitted from the partner device. When the partner device is detected in S604, the smartphone 302 analyzes the content of the received signal (S605), and determines whether information for executing the communication parameter sharing service as a parameter receiving device is included (S606). .
- the smartphone 302 determines that such information is included (YES in S606), the smartphone 302 performs a handover from Bluetooth to the wireless LAN (S607). After the handover is completed, the smartphone 302 requests the public key generated by the digital camera 304 and receives a response signal including the public key (S608). Thereafter, the smartphone 302 executes a parameter exchange process with the digital camera 304 using the received public key, and provides communication parameters to the digital camera 304 (S609). Note that the processing of S609 corresponds to the processing from F408 to F412 in FIGS.
- the process ends. If the smartphone 302 determines that the received signal does not include information for executing the communication parameter sharing service as a parameter receiving device (NO in S606), the process returns to S604, and another device detects the information. You may wait to be done.
- the smartphone 302 When operating as a central device, the smartphone 302 first detects the device in response to receiving a signal from the counterpart device, and analyzes the signal. Then, the smartphone 302 executes a handover from Bluetooth to the wireless LAN in response to determining that the signal includes information indicating that the partner device executes the communication parameter sharing service as a parameter receiving device. . In addition, the smartphone 302 transmits a connection response signal to the digital camera 304. That is, when the smartphone 302 operates as a central device, the process of S604 to S607 is executed after the process of S602, and then the process of S603 is executed. In this case, the order of the processing in S603 and the processing in S607 may be either first. Further, the connection response signal here includes information indicating that the communication parameter sharing service is executed as the parameter providing apparatus as described above. The smartphone 302 can execute the processes of S608 and S609 after transmitting the connection response signal.
- FIG. 7 is a flowchart showing an example of the flow of reception processing such as communication parameters executed by the digital camera 304. 7 may be started by the control unit 102 when a wireless LAN communication function such as when the digital camera 304 is turned on is activated. Note that the processing in FIG. 7 may be started by the control unit 102 in response to receiving a user operation for selecting processing start via the input unit 104 and the output unit 105. 7 is realized by the control unit 102 reading and executing the computer program stored in the storage unit 101.
- the digital camera 304 determines to start the function of the receiving device in the communication parameter sharing process in response to receiving a user operation, for example (S701). Then, the digital camera 304 selects a method for searching for a partner device (S702). Here, it is assumed that the digital camera 304 has selected Bluetooth. In response to this selection, the digital camera 304 starts operation as a peripheral device. Note that the digital camera 304 is always operated as a peripheral here. In other words, even when the digital camera 304 is operating as a central device, the digital camera 304 temporarily operates as a peripheral device when executing the communication parameter sharing service.
- the digital camera 304 controls the Bluetooth control unit 210 to transmit an advertisement signal including information indicating that the communication parameter sharing service is executed as a parameter receiving device (S703).
- the digital camera 304 waits for the partner device (smartphone 302) to be detected after transmitting the advertisement signal in S703 (S704).
- the digital camera 304 can detect the partner device based on the advertisement signal or the connection response signal transmitted by the partner device.
- the digital camera 304 analyzes the content of the received signal (S705) and determines whether or not information indicating that the communication parameter sharing service is executed as a parameter providing device is included. (S706).
- the digital camera 304 determines that such information is included (YES in S706), the digital camera 304 generates a public key (encryption key) necessary for the communication parameter sharing service (S707). Thereafter, the digital camera 304 executes a handover from Bluetooth to the wireless LAN (S708). The digital camera 304 transmits a response signal including the public key generated in S707 to the smartphone 302 in response to the public key request signal from the smartphone 302 after the completion of the handover (S709). Thereafter, the digital camera 304 executes the parameter exchange process of F408 to F412 of FIGS. 4 and 5 and receives communication parameters from the smartphone 302 (S710).
- a public key encryption key
- the digital camera 304 determines that the received information does not include information indicating that the communication parameter sharing service is to be executed as a parameter providing device (NO in S706), the digital camera 304 ends the process. If the digital camera 304 determines that such information is not included in the received signal, the digital camera 304 may return the process to S704 and wait for another device to be detected.
- the smartphone 302 that is a parameter transmission device operates as a central device or a peripheral device
- the digital camera 304 that is a parameter reception device operates as a peripheral device.
- the present invention is not limited thereto. That is, the smartphone 302 may operate as a peripheral device, and the digital camera 304 may operate as a central device.
- the smartphone 302 and the digital camera 304 recognize the partner device using a first communication function such as Bluetooth, and use it in a parameter exchange process such as an encryption key using a second communication function such as a wireless LAN. Send and receive information. Accordingly, it is possible to reduce the probability that the communication parameter is shared with a device that is not the original communication parameter sharing target.
- the first communication function is used for discovery of the counterpart device, and information used in communication related to the sharing of parameters such as public key information is transmitted and received by the second communication function, thereby transmitting the first communication function. Even when the amount of possible data is small, the information can be reliably transmitted and received.
- the smartphone 302 and the digital camera 304 are in a state of establishing a connection by Bluetooth (BLE) (F801). In this state, it is assumed that the smartphone 302 and the digital camera 304 have determined to start the communication parameter sharing process by a user operation, for example.
- BLE Bluetooth
- the smartphone 302 operates as a Bluetooth client and transmits an ATT Write Request signal defined in the Bluetooth TDS specification (F802).
- TDS is an acronym for Transport Discovery Service, and is a technique for enabling a usable service to be discovered using a communication function other than Bluetooth.
- the digital camera 304 operates as a Bluetooth server, and after receiving an ATT Write Request signal, transmits a ATT Write Response signal that is a response signal to the signal (F803).
- the digital camera 304 instructs the communication parameter control unit 201 to generate a public key necessary for the communication parameter sharing process in parallel with or around the transmission of the ATT Write Response signal (F804). ).
- the digital camera 304 internally processes the generation notification of F804 to generate a public key used for communication for sharing communication parameters (F806).
- the digital camera 304 Upon generating the public key, the digital camera 304 transmits an ATT indication signal to the smartphone 302 (F805).
- the digital camera 304 for example, transmits an ATT Indication signal in response to confirming that wireless LAN communication is possible, and then performs a handover process from Bluetooth to the wireless LAN. Can be executed.
- the smartphone 302 executes a handover process from Bluetooth to the wireless LAN (F807). After the handover process is completed, the smartphone 302 transmits an ATT Confirmation signal to the digital camera 304 (F808).
- the wireless LAN can perform processing from public key exchange to communication parameter sharing. Since the processing from the public key exchange to the communication parameter sharing processing is the same as F406 to F412 in FIG. 4, the same reference numerals are assigned and detailed description thereof is omitted.
- the process in FIG. 9 is started by the control unit 102 in response to receiving a user operation for selecting a process start via the input unit 104 and the output unit 105 of the smartphone 302 and the digital camera 304.
- 9 is realized by the control unit 102 reading and executing the computer program stored in the storage unit 101.
- the smartphone 302 and the digital camera 304 are already connected with Bluetooth using a GATT profile for transmission / reception of sensor information used in IoT (Internet of Things) (S901).
- the smartphone 302 and the digital camera 304 determine to start the communication parameter sharing process, for example, by accepting a user operation (S902).
- the smartphone 302 and the digital camera 304 execute an ATT negotiation defined by the Bluetooth specification (S903).
- This ATT negotiation refers to the sequence of F802 to F805 and F808 in FIG. Refer to the Bluetooth TDS specification for the specific sequence.
- the smartphone 302 and the digital camera 304 decide to share the communication parameters as a result of the ATT negotiation, the smartphone 302 and the digital camera 304 execute a handover from Bluetooth to the wireless LAN (S904). Then, after the handover is completed, the public key is transmitted from the digital camera 304 to the smartphone 302. (S905). Thereafter, parameter exchange processing is executed between the smartphone 302 and the digital camera 304 (S906).
- the process of S906 corresponds to the process described with respect to F408 to F412 of FIG.
- the smartphone 302 operates as a Bluetooth client and the digital camera 304 operates as a Bluetooth server (control point) has been described, but the present invention is not limited thereto.
- the smartphone 302 may operate as a Bluetooth server (control point) and the digital camera 304 may operate as a Bluetooth client.
- the smartphone 302 provides parameters to the digital camera 304 that is a partner device connected via Bluetooth, the smartphone 302 does not provide parameters to other devices that are not connected. For this reason, it is possible to reduce the probability that the communication parameter is shared with an apparatus that is not the original communication parameter sharing target.
- communication standards other than Bluetooth or wireless LAN can be used.
- the first communication function such as Bluetooth may be a communication function having a shorter communicable distance than the second communication function such as a wireless LAN.
- the first communication function may be able to transmit and receive only a small amount of data, for example, and by using the second communication function to transmit and receive information used for communication related to parameter sharing such as public key information, Even in such a case, the information can be transmitted and received reliably.
- the smartphone 302 determines to start the communication parameter sharing process, and selects a method for searching for the partner apparatus (in this example, the digital camera 304).
- the partner apparatus in this example, the digital camera 304.
- the user of the smartphone 302 has selected Bluetooth (BLE) as a method for determining the counterpart device.
- BLE Bluetooth
- the user inputs this selection result to the smartphone 302 by executing a predetermined operation in a predetermined application, for example.
- the smartphone 302 operates as a Bluetooth peripheral device by controlling the Bluetooth control unit 210.
- the smartphone 302 transmits (for example, broadcast transmission) an advertisement signal including information indicating that the communication parameter sharing service is executed (F1001).
- the advertisement signal includes information indicating the role of the smartphone 302 in the communication parameter sharing service, that is, whether the smartphone 302 operates as a parameter providing device or a parameter receiving device.
- information indicating that is included in the advertisement signal since the smartphone 302 operates as a parameter providing device, information indicating that is included in the advertisement signal and transmitted.
- the advertisement signal may include information such as the MAC address of the smartphone 302 and UUID (Universally Unique Identifier) as device identification information in the wireless LAN after the handover.
- the digital camera 304 it is assumed that the user decides to start the communication parameter sharing process and selects Bluetooth (BLE) as a method for searching for the partner device.
- the user inputs the selection result to the digital camera 304, for example, by executing a predetermined operation.
- the digital camera 304 controls the Bluetooth control unit 210 to operate as a Bluetooth peripheral device. That is, in this example, both the smartphone 302 and the digital camera 304 operate as a peripheral device.
- the digital camera 304 transmits an advertisement signal including information indicating that the communication parameter sharing service is executed (F1002).
- the advertisement signal includes information indicating the role of the digital camera 304 in the communication parameter sharing service, that is, whether the digital camera 304 operates as a parameter providing device or a parameter receiving device.
- the advertisement signal may include information such as the MAC address and UUID of the digital camera 304 as device identification information in the wireless LAN after the handover.
- the smartphone 302 and the digital camera 304 are described as both operating as peripheral devices.
- either the smartphone 302 or the digital camera 304 may operate as a central device.
- the device operating as the central device can transmit a connection response signal such as F504 in FIG. 5 to the device operating as the peripheral device in response to the advertisement signal.
- the smartphone 302 When the smartphone 302 receives the advertisement signal of F1002, the smartphone 302 analyzes the content of the advertisement signal and determines whether or not information indicating that the communication parameter sharing service is executed is included. When the smartphone 302 determines that the advertisement signal includes information indicating that the communication parameter sharing service is executed, the smartphone 302 digitally transmits a signal for requesting a public key used in communication related to communication parameter sharing. The data is transmitted to the camera 304 (F1003). Upon receiving the public key request signal from the smartphone 302, the digital camera 304 returns a response signal including the generated public key to the smartphone 302 (F1005).
- the digital camera 304 generates an internal instruction for executing a handover to the wireless LAN in parallel with or before the transmission of the response signal, and executes the handover from the Bluetooth to the wireless LAN (F1004). ).
- the smartphone 302 executes a handover from Bluetooth to the wireless LAN (F1006), and starts communication by the wireless LAN. Thereafter, processing similar to F408 to F412 in FIG. 4 is executed.
- FIG. 11 is a flowchart illustrating an example of a flow of processing executed by the smartphone 302 or the digital camera 304.
- the processing in FIG. 11 can be started by the control unit 102 when a wireless LAN communication function such as when the smartphone 302 or the digital camera 304 is powered on is activated.
- the processing in FIG. 11 may be started by the control unit 102 in response to receiving a user operation for selecting processing start via the input unit 104 and the output unit 105.
- the processing in FIG. 11 is realized by the control unit 102 reading and executing the computer program stored in the storage unit 101.
- the smartphone 302 or the digital camera 304 determines to start the communication parameter sharing process in response to receiving a user operation, for example (S1101). Then, the smartphone 302 or the digital camera 304 selects a method for searching for a partner device (S1102). Here, it is assumed that the smartphone 302 or the digital camera 304 has selected Bluetooth. In response to this selection, the smartphone 302 or the digital camera 304 executes a search for a partner device by Bluetooth (S1103). Note that the search processing at this time can be performed, for example, in the above-described processing example 1.
- the smartphone 302 or the digital camera 304 waits for the partner device to be detected (S1104).
- the partner device is detected by receiving a signal from the partner device (YES in S1104)
- the content of the received signal is analyzed. (S1105).
- the smartphone 302 or the digital camera 304 determines whether or not the received signal includes information for executing the communication parameter sharing service (S1106). If the smartphone 302 or the digital camera 304 determines that such information is included (YES in S1106), the smartphone 302 or the digital camera 304 checks the payload length that can be transmitted with the Bluetooth packet used by the smartphone 302 or the digital camera 304 (S1107).
- the smartphone 302 or the digital camera 304 determines whether or not the payload length that can be transmitted is sufficiently longer than the data length of information used in communication related to the above-described communication parameter setting such as a public key. If the payload length is sufficiently long (YES in S1107), the smartphone 302 or the digital camera 304 exchanges a public key (encryption key) used for communication related to the communication parameter sharing service by Bluetooth (S1108). . Thereafter, the smartphone 302 or the digital camera 304 executes a handover from Bluetooth to the wireless LAN (S1109), and executes the parameter exchange process described above with respect to F408 to F412 after the completion of the handover (S1110).
- a public key encryption key
- the smartphone 302 or the digital camera 304 first executes a handover from Bluetooth to the wireless LAN (S1111). Then, the smartphone 302 or the digital camera 304 exchanges a public key (encryption key) used in communication related to the communication parameter sharing service via the wireless LAN (S1112). Thereafter, the smartphone 302 or the digital camera 304 executes the parameter exchange process described above with respect to F408 to F412 after the completion of the handover (S1110).
- the payload length can be confirmed in S1107 by, for example, including information on the maximum payload size in the packet and referring to the information. Further, for example, based on the Bluetooth version information of the smartphone 302 and the digital camera 304, the confirmation in S1107 may be performed based on whether the version information is a predetermined value. For example, when the Bluetooth version of the smartphone 302 and the digital camera 304 is a version after a predetermined version, it can be determined that the payload length is sufficiently long.
- the smartphone 302 and the digital camera 304 recognize the partner device using a first communication function such as Bluetooth, and if possible, parameters such as an encryption key using the first communication function. Sends and receives information used in the exchange process. Then, the smartphone 302 and the digital camera 304 exchange parameters of the wireless LAN by executing parameter exchange processing using information such as the encryption key. Accordingly, it is possible to reduce the probability that the communication parameter is shared with a device that is not the original communication parameter sharing target.
- a first communication function such as Bluetooth
- parameters such as an encryption key using the first communication function.
- the smartphone 302 and the digital camera 304 exchange parameters of the wireless LAN by executing parameter exchange processing using information such as the encryption key. Accordingly, it is possible to reduce the probability that the communication parameter is shared with a device that is not the original communication parameter sharing target.
- the partner device of the communication parameter sharing process is detected using the first communication function capable of communicating at a relatively short distance between communication devices that share parameters. Then, information (for example, an encryption key) used for communication related to wireless LAN parameter sharing is transmitted and received between the detected communication devices, and wireless LAN parameter sharing is performed by communication using the information. .
- information for sharing communication parameters for example, an encryption key
- the first communication function may not be the Bluetooth communication function, and other communication functions such as NFC may be used as long as the detection can be performed between devices that perform parameter sharing. As described above, even when Bluetooth is used, it is not always necessary to establish the connection. Therefore, any function that can send a signal indicating that the parameter sharing process is executed can be used as the first communication function.
- the second communication function is not necessarily a communication function based on Wi-Fi, and a communication function of a wireless LAN according to another standard or a communication function other than the wireless LAN may be used as the second communication function. Good.
- the present invention supplies a program that realizes one or more functions of the above-described embodiments to a system or apparatus via a network or a storage medium, and one or more processors in a computer of the system or apparatus read and execute the program This process can be realized. It can also be realized by a circuit (for example, ASIC) that realizes one or more functions.
- a circuit for example, ASIC
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Databases & Information Systems (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
第1の通信機能と、第1の通信手段と異なる第2の通信機能と、を有する通信装置は、ネットワークに参加するために第2の通信機能を用いて行われるパラメータ交換処理の相手装置を、第1の通信機能を用いて検出し、パラメータ交換処理に係る通信で用いられる情報を相手装置と交換し、第2の通信機能を用いて、その情報を用いたパラメータ交換処理を実行する。
Description
本発明は、通信装置、制御方法、及びプログラムに関するものであり、具体的には接続設定技術に関するものである。
近年、PC(Personal Computer)を始めとして、携帯電話やデジタルカメラ、プリンタ等の様々な装置に無線LAN(Local Area Network)による通信機能が搭載されている。無線LANによる通信機能を搭載している装置同士を、無線LANのアクセスポイント(AP)を経由して間接的に接続する場合又はAPを経由せずに直接的に接続する際には、無線LANのパラメータの設定をする必要がある。
しかしながら、無線LANのパラメータの設定は一般に煩雑であり、デジタルカメラやプリンタのユーザがこのような設定を行うのは必ずしも容易ではない場合がある。このようなパラメータの設定を容易にするための手法として、Wi-Fi Device Provisioning Protocol(以下、「DPP」と呼ぶ。)の策定がWi-Fi(登録商標)で開始されている(非特許文献1参照)。なお、Wi-Fiは、「Wireless Fidelity」の頭字語である。
DPPでは、QRコード(登録商標)および比較的通信可能距離の短い無線通信技術(NFCやBluetooth(登録商標))を用いて相手装置を選択することが検討されている。また、DPPでは、QRコードや無線通信技術で特定された相手装置の公開鍵に基づいてセキュアにパラメータの交換を行うことが提案されている。
Wi-Fi Alliance, Wi-Fi Device Provisioning Protocol(DPP) DRAFT Technical Specification v0.0.23
しかしながら、DPPでは、相手装置を選択する際に無線通信技術を用いる場合に、具体的にどのような処理を行うかについては、定められていないという課題があった。例えば、無線通信技術で特定された相手装置の公開鍵の交換方法については、非特許文献1には記載がなく、DPPにおける無線通信技術を用いたパラメータの交換の手法について改善の余地がある。
本発明は、所望の装置間の接続を確立するためのパラメータ交換の具体的な手法を提供する。
本発明の一態様に係る通信装置は、第1の通信手段と、前記第1の通信手段と異なる第2の通信手段と、ネットワークに参加するために前記第2の通信手段を用いて行われるパラメータ交換処理の相手装置を、前記第1の通信手段を用いて検出する検出手段と、前記パラメータ交換処理に係る通信で用いられる情報を前記相手装置と交換する交換手段と、前記第2の通信手段を用いて、前記情報を用いた前記パラメータ交換処理を実行する実行手段と、を有する。
本発明によれば、所望の装置間で接続確立のためのパラメータを交換することができる。
本発明のその他の特徴及び利点は、添付図面を参照とした以下の説明により明らかになるであろう。なお、添付図面においては、同じ若しくは同様の構成には、同じ参照番号を付す。
添付図面は明細書に含まれ、その一部を構成し、本発明の実施の形態を示し、その記述と共に本発明の原理を説明するために用いられる。
図1は、通信装置のハードウェア構成例を示す図である。
図2は、通信装置の機能構成例を示す図である。
図3は、ネットワーク構成例を示す図である。
図4は、通信装置間の処理の流れの第1の例を示す動作シーケンス図である。
図5は、通信装置間の処理の流れの第2の例を示す動作シーケンス図である。
図6は、スマートフォンが実行する処理の流れの第1の例を示すフローチャートである。
図7は、デジタルカメラが実行する処理の流れの第1の例を示すフローチャートである。
図8は、通信装置間の処理の流れの第3の例を示す動作シーケンス図である。
図9は、スマートフォン及びデジタルカメラが実行する処理の流れの第2の例を示すフローチャートである。
図10は、通信装置間の処理の流れの第4の例を示す動作シーケンス図である。
図11は、スマートフォン及びデジタルカメラが実行する処理の流れの第3の例を示すフローチャートである。
以下、本発明の実施の形態について、図面を参照しながら詳細に説明する。以下では、IEEE802.11規格シリーズに準拠する無線LANシステムを用いる例について説明するが、本発明は後述の態様に限定されず、例えばIEEE802.11規格に準拠しない無線通信システムに以下の議論が適用されてもよい。
(装置構成)
図1に、本実施形態に係る通信装置のハードウェア構成の例を示す。通信装置は、そのハードウェア構成の一例として、記憶部101、制御部102、機能部103、入力部104、出力部105、無線通信部106、アンテナ制御部107及びアンテナ108を有する。
図1に、本実施形態に係る通信装置のハードウェア構成の例を示す。通信装置は、そのハードウェア構成の一例として、記憶部101、制御部102、機能部103、入力部104、出力部105、無線通信部106、アンテナ制御部107及びアンテナ108を有する。
記憶部101は、ROM、RAMの両方、または、いずれか一方により構成され、後述する各種動作を行うためのプログラムや、無線通信のための通信パラメータ等の各種情報を記憶する。なお、記憶部101として、ROM、RAM等のメモリの他に、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD-ROM、CD-R、磁気テープ、不揮発性のメモリカード、DVDなどの記憶媒体が用いられてもよい。
制御部102は、例えば、CPUやMPU等のプロセッサ、ASIC(特定用途向け集積回路)、DSP(デジタルシグナルプロセッサ)、FPGA(フィールドプログラマブルゲートアレイ)等により構成される。ここで、CPUはCentral Processing Unitの、MPUは、Micro Processing Unitの頭字語である。制御部102は、記憶部101に記憶されたプログラムを実行することにより通信装置全体を制御する。なお、制御部102は、記憶部101に記憶されたプログラムとOS(Operating System)との協働により通信装置全体を制御するようにしてもよい。また、制御部102は、他の装置との間での通信パラメータの設定制御を行うこともできる。後述の各種動作は、例えば、記憶部101に記憶された制御プログラムを制御部102が実行することによって行わる。
また、制御部102は、機能部103を制御して、撮像や印刷、投影等の所定の処理を実行する。機能部103は、通信装置が所定の処理を実行するためのハードウェアである。例えば、通信装置がカメラである場合、機能部103は撮像部であり、撮像処理を行う。本実施形態に係る通信装置は、例えば、QRコード等を撮影するための撮像部として機能する機能部103を有しうる。また、例えば、通信装置がプリンタである場合、機能部103は印刷部であり、印刷処理を行う。また、例えば、通信装置がプロジェクタである場合、機能部103は投影部であり、投影処理を行う。機能部103が処理するデータは、記憶部101に記憶されているデータであってもよいし、後述する無線通信部106を介して他の装置と通信したデータであってもよい。
入力部104は、ユーザからの各種操作の受付を行う。出力部105は、ユーザに対して各種出力を行う。ここで、出力部105による出力とは、例えばLCDやLEDのように視覚で認知可能な情報の出力や、スピーカーによる音声出力、振動出力等の少なくとも1つを含む。一例において、出力部105がQRコードを表示しうるが、QRコードが通信装置の筐体にシール等の形式で貼り付けられ、出力部105はQRコードを表示する機能を有しなくてもよい。なお、タッチパネルのように入力部104と出力部105の両方を1つのモジュールで実現するようにしてもよい。
無線通信部106は、IEEE802.11規格シリーズに準拠した無線通信の制御や、IP通信の制御を行う。なお、無線通信部106は、例えばNear Field Communication(以下「NFC」と呼ぶ。)やBluetooth等の無線通信に関する制御をも実行しうる。アンテナ制御部107はアンテナ108を制御して、無線通信のための無線信号の送受信を行う。装置は無線通信部106を介して、画像データや文書データ、映像データ等のコンテンツを他の通信装置と通信する。なお、異なる規格に関してそれぞれ別個の通信回路やアンテナが搭載されてもよいし、1つの回路又は1つのアンテナによって複数の通信規格での通信が行われるように構成されてもよい。
図2は、通信装置の制御部102が記憶部101に記憶されているプログラムを読み出して実行することによって実現される、ソフトウェア機能の構成例を示すブロック図である。なお、ここでは、各機能が全てソフトウェアによって実現されるものとして説明するが、図2に示されたソフトウェア機能ブロックの一部又は全部がハードウェアにより実現されてもよい。なお、機能の一部又は全部を実現するハードウェアは、各機能ブロックを実現するためのプログラムから所定のコンパイラを用いてFPGA等のプログラマブルなプロセッサ上に生成される専用回路でありうる。
通信装置は、例えば、通信パラメータ制御部201、バーコード読取部202、バーコード生成部203、サービス制御部204、パケット受信部205、パケット送信部206、STA機能制御部207、AP機能制御部208、データ記憶部209を含む。また、通信装置は、さらに、Bluetooth制御部210、及びNFC制御部211を含みうる。なお、これらの機能ブロックは、相互に通信可能に構成され、他の機能に対して自身の出力を供給し、又は他の機能の出力を取得して処理を行うことができる。
通信パラメータ制御部201は、装置間で通信パラメータを共有するための通信パラメータ共有処理の実行制御を行う。通信パラメータ共有処理では、提供装置が、無線通信を実行可能とするための通信パラメータを受信装置に対して提供する。ここで、通信パラメータは、例えば、ネットワーク識別子としてのSSID(Service Set Identifier)、暗号方式、暗号鍵、認証方式、認証鍵の少なくともいずれか等の無線通信の実行に必要な情報を含みうる。また、通信装置に固有の識別情報としてのMAC(Medium Access Control)アドレス、パスフレーズ、IP層での通信を行うためのIPアドレス、上位サービスに必要な情報等が、ここでの通信パラメータに含められてもよい。
バーコード読取部202は、機能部103によって撮影されたバーコード、QRコードを含む二次元コードなどの画像を解析し、符号化された情報を取得する。バーコード生成部203は、バーコード、二次元コードなどを生成し、生成したバーコード、二次元コード等を出力部105へ表示するための制御を行う。サービス制御部204は、OSI参照モデルにおける第5層以上の上位レイヤにおけるサービス提供層であるアプリケーションレイヤの処理を行う。すなわち、サービス制御部204は、無線通信部106による無線通信を用いて、印刷処理や、画像ストリーミング処理や、ファイル転送処理などの処理を実行する。
パケット受信部205及びパケット送信部206は、上位レイヤの通信プロトコルを含む、パケットの送受信の全ての制御を実行する。また、パケット受信部205及びパケット送信部206は、それぞれ、相手装置との間でIEEE802.11規格に準拠したパケットの送信及び受信を行うために、無線通信部106を制御する。
STA機能制御部207は、IEEE802.11規格で定められたインフラストラクチャモードにおけるステーション(STA)として動作するためのSTA機能を提供する。STA機能制御部207は、STAとして動作する際に、認証・暗号処理等を実行する。また、AP機能制御部208は、IEEE802.11規格で定められたインフラストラクチャモードにおけるアクセスポイント(AP)として動作するためのAP機能を提供する。AP機能制御部208は、無線ネットワークを形成し、STAに対する認証・暗号処理およびSTAの管理等を実行する。データ記憶部209は、図2に示す機能の少なくとも一部を実現するためのソフトウェア(プログラム)、通信パラメータ、バーコード類の情報等を、記憶部101へ書き込み、又は記憶部101から読み出すための制御を行う。
Bluetooth制御部210は、Bluetooth(登録商標)規格に基づいたパケットの送受信や、プロファイル制御などを行う。Bluetooth4.2規格(例えば、Bluetooth Low Energy(BLE))では、広告信号を送信するペリフェラル装置及び広告信号を受信するセントラル装置などの役割がある。通信パラメータ共有処理は、行われるサービスを通信パラメータ提供サービスであるとすると、通信パラメータを提供する装置がサービスを提供するセントラル装置となり、通信パラメータを受信する装置がそのサービスを享受するペリフェラル装置となる。一方、行われるサービスが通信パラメータ受信サービスであるとすると、通信パラメータを受信する装置がサービスを提供するセントラル装置になり、通信パラメータを提供する装置がそのサービスを享受するペリフェラル装置となりうる。一例において、Bluetooth制御部210は、実行されるサービスと自身の役割とに応じて、セントラル装置又はペリフェラル装置として動作することができる。NFC制御部211は、NFC規格に基づいたシーケンスやプロファイルの制御を行う。
また、上記機能ブロックは一例であり、複数の機能ブロックが1つの機能ブロックを構成するようにしてもよいし、何れかの機能ブロックが更に複数の機能を行うブロックに分かれてもよい。また、必要に応じて、さらなる機能が追加されてもよいし、一部の機能が省略されてもよい。
(ネットワーク構成)
図3に、本実施形態に係るネットワーク301の構成例を示す。本例において、ネットワーク301は、プリンタ303が形成し、スマートフォン302が参加している無線LANである。以下では、プリンタ303が形成したネットワークにデジタルカメラ304が参加する際に、スマートフォン302が、デジタルカメラ304に対してネットワーク301に参加するためのパラメータを設定するものとして説明する。なお、スマートフォン302及びデジタルカメラ304は、例えば、上述の図1及び図2の構成を有する通信装置である。
図3に、本実施形態に係るネットワーク301の構成例を示す。本例において、ネットワーク301は、プリンタ303が形成し、スマートフォン302が参加している無線LANである。以下では、プリンタ303が形成したネットワークにデジタルカメラ304が参加する際に、スマートフォン302が、デジタルカメラ304に対してネットワーク301に参加するためのパラメータを設定するものとして説明する。なお、スマートフォン302及びデジタルカメラ304は、例えば、上述の図1及び図2の構成を有する通信装置である。
(処理の流れ)
続いて、プリンタ303が形成したネットワーク301にデジタルカメラ304が参加する際に、スマートフォン302とデジタルカメラ304との間で実行される、ネットワーク301に係るパラメータの共有処理の流れのいくつかの例について説明する。
続いて、プリンタ303が形成したネットワーク301にデジタルカメラ304が参加する際に、スマートフォン302とデジタルカメラ304との間で実行される、ネットワーク301に係るパラメータの共有処理の流れのいくつかの例について説明する。
<処理例1>
本処理例では、スマートフォン302とデジタルカメラ304が、第1の通信機能を用いて互いを認識し、その後、デジタルカメラ304が、パラメータ共有処理を行う際に用いる情報を、第2の通信機能を用いてスマートフォン302へ送信する。そして、スマートフォン302は、例えば、第2の通信機能を用いて、また、その受信したパラメータ共有を行う際に用いる情報に基づいて、ネットワーク301に係るパラメータをデジタルカメラ304へ送信する。なお、パラメータ共有を行う際に用いる情報は、ここでは暗号鍵であるものとするが、暗号鍵以外の情報であってもよい。以下では、第1の通信機能は、例えばBluetooth規格に従う通信機能であり、第2の通信機能はWi-Fiの通信規格に従う通信機能であるものとして説明する。なお、ネットワーク301は、Wi-Fiの通信規格に従う無線LANであり、ここでは第2の通信機能は、ネットワーク301に参加するために用いられる通信機能でもある。ただし、デジタルカメラ304は、第2の通信機能を有するが、スマートフォン302からパラメータを受信するまではネットワーク301には参加できない。すなわち、上述のスマートフォン302とデジタルカメラ304との間で行われる第2の通信機能を用いた通信(パラメータ共有処理を実行する際に用いる情報の通信及びパラメータ共有時の通信)は、ネットワーク301の外で行われる通信である。なお、パラメータ共有処理を実行する際に用いる情報の通信と、パラメータ共有時の通信とは異なる通信機能を用いて行われてもよい。例えば、パラメータ共有時の通信が、第3の通信機能を用いて行われてもよい。また、第2の通信機能と、ネットワークに参加する際に用いる通信機能とが異なっていてもよい。また、第2の通信機能を用いた通信は、例えば、ネットワーク301で用いられる場合と、パラメータ共有時に用いる場合とで、異なる規格(又は規格のバージョン)に従ってもよい。例えば、パラメータ共有時の通信は、比較的低速の古い規格に従い、ネットワーク301での通信は、高速の新しい規格に従いうる。
本処理例では、スマートフォン302とデジタルカメラ304が、第1の通信機能を用いて互いを認識し、その後、デジタルカメラ304が、パラメータ共有処理を行う際に用いる情報を、第2の通信機能を用いてスマートフォン302へ送信する。そして、スマートフォン302は、例えば、第2の通信機能を用いて、また、その受信したパラメータ共有を行う際に用いる情報に基づいて、ネットワーク301に係るパラメータをデジタルカメラ304へ送信する。なお、パラメータ共有を行う際に用いる情報は、ここでは暗号鍵であるものとするが、暗号鍵以外の情報であってもよい。以下では、第1の通信機能は、例えばBluetooth規格に従う通信機能であり、第2の通信機能はWi-Fiの通信規格に従う通信機能であるものとして説明する。なお、ネットワーク301は、Wi-Fiの通信規格に従う無線LANであり、ここでは第2の通信機能は、ネットワーク301に参加するために用いられる通信機能でもある。ただし、デジタルカメラ304は、第2の通信機能を有するが、スマートフォン302からパラメータを受信するまではネットワーク301には参加できない。すなわち、上述のスマートフォン302とデジタルカメラ304との間で行われる第2の通信機能を用いた通信(パラメータ共有処理を実行する際に用いる情報の通信及びパラメータ共有時の通信)は、ネットワーク301の外で行われる通信である。なお、パラメータ共有処理を実行する際に用いる情報の通信と、パラメータ共有時の通信とは異なる通信機能を用いて行われてもよい。例えば、パラメータ共有時の通信が、第3の通信機能を用いて行われてもよい。また、第2の通信機能と、ネットワークに参加する際に用いる通信機能とが異なっていてもよい。また、第2の通信機能を用いた通信は、例えば、ネットワーク301で用いられる場合と、パラメータ共有時に用いる場合とで、異なる規格(又は規格のバージョン)に従ってもよい。例えば、パラメータ共有時の通信は、比較的低速の古い規格に従い、ネットワーク301での通信は、高速の新しい規格に従いうる。
以下では、まず、スマートフォン302とデジタルカメラ304とが、Bluetoothを用いて自装置の能力情報を互いに報知しあう場合の例について図4を用いて説明する。なお、ここでのBluetoothでの通信には、Bluetooth Low Energy(BLE)が用いられるものとする。BLEは、通信速度は低速で一度に送信可能なデータ量も少ないが、電力消費が少ない通信方式である。
本処理では、まず、スマートフォン302において、ユーザが、通信パラメータ共有処理を開始すると決定し、相手装置(本例ではデジタルカメラ304)を検索するための方式を選択する。相手装置を検索するための方式は、例えば、QRコードを含む二次元コードによる相手装置の特定、NFCタッチによる相手装置の認識、BluetoothやZigbee等の近接無線技術による相手装置の検索/特定処理のいずれかでありうる。ここでは、スマートフォン302のユーザが、相手装置を決定するための方式として、Bluetooth(BLE)を選択したものとする。ユーザは、例えば所定のアプリケーションにおいて所定の操作を実行することにより、スマートフォン302に対してこの選択結果を入力する。
これにより、スマートフォン302は、Bluetooth制御部210を制御して、Bluetoothのペリフェラル装置として動作する。そして、スマートフォン302は、通信パラメータ共有サービスを実行することを示す情報を含んだ広告信号を送信(例えばブロードキャスト送信)する(F401)。広告信号には、スマートフォン302の通信パラメータ共有サービスにおける役割、すなわちパラメータ提供装置として動作するか、パラメータ受信装置として動作するかを示す情報が含まれる。ここでは、スマートフォン302は、パラメータ提供装置として動作するため、そのことを示す情報を広告信号に含めて送信する。また、広告信号には、ハンドオーバ後の無線LANにおけるデバイスの識別情報として、たとえばスマートフォン302のMACアドレスやUUID(Universally Unique Identifier)等の情報が含まれうる。
一方、デジタルカメラ304においても、ユーザが、通信パラメータ共有処理を開始すると決定し、相手装置を検索するための方式として、Bluetooth(BLE)を選択したものとする。ユーザは、例えば所定の操作を実行することにより、デジタルカメラ304に対してこの選択結果を入力する。これにより、デジタルカメラ304は、Bluetooth制御部210を制御して、Bluetoothのペリフェラル装置として動作する。すなわち、本例では、スマートフォン302とデジタルカメラ304は、共にペリフェラル装置として動作する。
デジタルカメラ304は、F401でスマートフォン302が送信したBluetoothの広告信号を受信する。デジタルカメラ304は、受信した広告信号の内容を解析し、通信パラメータ共有サービスを実行することを示す情報が含まれているか否かを判定する。また、デジタルカメラ304は、受信した広告信号に、その広告信号の送信元(スマートフォン302)がパラメータ提供装置であることを示す情報が含まれているかを判定する。デジタルカメラ304は、パラメータ受信装置として動作することを予定しているため、送信元がパラメータ受信装置であることを示す情報を含んだ広告信号については無視しうる。一方、デジタルカメラ304は、送信元の装置が通信パラメータ共有サービスをパラメータ提供装置として実行することを示す情報が含まれていると判定した場合は、その送信元の装置を、通信パラメータ交換サービスの相手装置として検出することができる。そして、デジタルカメラ304は、通信パラメータ交換サービスの相手装置(スマートフォン302)を検出すると、通信パラメータ共有処理に係る通信で用いられる公開鍵を生成する。例えば、デジタルカメラ304は、内部的に、通信パラメータ制御部201に対して、通信パラメータ共有処理に係る通信に用いるための公開鍵を生成するように指示する(F402)。そして、デジタルカメラ304の通信パラメータ制御部201は、その指示に応じて、通信パラメータ共有処理に係る通信で用いられる公開鍵を生成する(F403)。その後、デジタルカメラ304は、Bluetooth制御部210を制御して、Bluetoothのペリフェラル装置としての動作を開始し、通信パラメータ共有サービスを実行することを示す情報を含んだ広告信号を送信する(F404)。F401に関する説明と同様に、広告信号には、デジタルカメラ304の通信パラメータ共有サービスにおける役割、すなわちパラメータ提供装置として動作するか、パラメータ受信装置として動作するかを示す情報が含まれる。ここでは、デジタルカメラ304は、パラメータ受信装置として動作するため、そのことを示す情報を広告信号に含めて送信する。また、広告信号には、ハンドオーバ後の無線LANにおけるデバイスの識別情報として、例えばデジタルカメラ304のMACアドレスやUUID等の情報が含まれうる。デジタルカメラ304は、広告信号を送信後、Bluetoothから無線LANへのハンドオーバを実行する。
一方、スマートフォン302は、F404でデジタルカメラ304から送信された広告信号を受信すると、受信した広告信号の内容を解析し、通信パラメータ共有サービスを実行することを示す情報が含まれているか否かを判定する。また、スマートフォン302は、受信した広告信号に、その広告信号の送信元(デジタルカメラ304)がパラメータ受信装置であることを示す情報が含まれているかを判定する。スマートフォン302は、パラメータ提供装置として動作することを予定しているため、送信元がパラメータ提供装置であることを示す情報を含んだ広告信号については無視しうる。スマートフォン302は、通信パラメータ共有サービスをパラメータ受信装置として実行することを示す情報が含まれている場合に、F404の広告信号の送信元の装置がパラメータを提供する相手装置であると判定する。そして、スマートフォン302は、その判定に従って、Bluetoothから無線LANへのハンドオーバを内部的に指示する(F405)。この時点で、パラメータ提供装置であるスマートフォン302とパラメータ受信装置であるデジタルカメラ304とが、共に無線LANへのハンドオーバを完了することとなる。
この状態において、スマートフォン302は、無線LANにおいて、通信パラメータ共有処理に係る通信で用いる公開鍵を、デジタルカメラ304へ要求するための信号を送信する(F406)。そして、デジタルカメラ304は、スマートフォン302からの要求信号を受信すると、F403において生成した公開鍵を含んだ応答信号をスマートフォン302へ返送する(F407)。スマートフォン302は、公開鍵を受信すると、その受信した公開鍵を示す情報のハッシュ値を含んだ認証要求信号をデジタルカメラ304へ送信する(F408)。そして、デジタルカメラ304は、その認証要求信号を受信すると、その信号に含まれているハッシュ値を用いた認証が成功した場合に、認証成功を示す認証応答信号をスマートフォン302へ送信する(F409)。スマートフォン302は、認証応答信号を受信すると、認証確認信号を送信する(F410)。そして、デジタルカメラ304は、設定要求信号をスマートフォン302へ送信する(F411)。スマートフォン302は、その設定要求信号を受信すると、その設定要求信号に応答して、SSID、パスフレーズ、無線LANのチャネル等の情報を含んだ設定応答信号を、デジタルカメラ304へ送信する(F412)。なお、スマートフォン302からデジタルカメラ304へのデータの送信は、F407で送信された公開鍵を用いて行われる。
このように、例えば、パラメータの共有を行う通信装置間で、比較的近距離で通信可能な第1の通信機能を用いて通信パラメータ共有処理の相手装置の検出が行われる。そして、その検出に応じて、通信装置間で、第1の通信機能と異なる第2の通信機能を用いて、無線LANのパラメータの共有に係る通信で用いられる情報が送受信され、その情報に基づいて無線LANのパラメータの共有が行われる。通信可能距離が短い第1の通信機能で装置の検出を行うことで、本来の通信パラメータの共有対象でない装置との間で通信パラメータが共有される確率を低減することができる。また、第1の通信機能を相手装置の発見に用い、公開鍵の情報等のパラメータの共有に係る通信で用いられる情報を第2の通信機能で送受信することで、第1の通信機能の送信可能なデータ量が小さい場合でも、その情報が確実に送受信されうる。
同様の効果を、図5のような処理によっても得ることができる。図5は、デジタルカメラ304から送信される報知情報に基づいて、スマートフォン302が応答する場合の処理の流れの例を示している。なお、ここでのBluetoothでの通信においても、Bluetooth Low Energy(BLE)が用いられるものとする。
まず、スマートフォン302において、ユーザは、通信パラメータ共有処理を開始すると決定し、相手装置を検索するための方式を選択する。ここでは、スマートフォン302のユーザが、相手装置を決定するための方式として、Bluetoothを選択したものとする。ユーザは、例えば所定のアプリケーションにおいて所定の操作を実行することにより、スマートフォン302に対してこの選択結果を入力する。スマートフォン302は、Bluetooth制御部210を制御して、Bluetoothのセントラル装置として動作する。
一方、デジタルカメラ304においても、ユーザが、通信パラメータ共有処理を開始すると決定し、相手装置を検索するための方式として、Bluetoothを選択したものとする。ユーザは、例えば所定の操作を実行することにより、デジタルカメラ304に対してこの選択結果を入力する。デジタルカメラ304は、この選択の後に、通信パラメータ制御部201において、通信パラメータ共有処理に係る通信で用いられる公開鍵を生成する(F501)。
その後、デジタルカメラ304は、Bluetooth制御部210を制御して、Bluetoothのペリフェラル装置として動作する。そして、デジタルカメラ304は、通信パラメータ共有サービスを実行することを示す情報を含んだ広告信号を送信する(F502)。広告信号には、デジタルカメラ304の通信パラメータ共有サービスにおける役割、すなわちパラメータ提供装置として動作するか、パラメータ受信装置として動作するかを示す情報が含まれる。ここでは、デジタルカメラ304は、パラメータ受信装置として動作するため、そのことを示す情報を広告信号に含めて送信する。また、広告信号には、ハンドオーバ後の無線LANにおけるデバイスの識別情報として、たとえばデジタルカメラ304のMACアドレスやUUIDなどの情報が格納される。
スマートフォン302は、F502でデジタルカメラ304が送信した広告信号を受信すると、受信した広告信号の内容を解析し、通信パラメータ共有サービスを実行することを示す情報が含まれているか否かを判定する。また、スマートフォン302は、受信した広告信号に、その広告信号の送信元(デジタルカメラ304)がパラメータ受信装置であることを示す情報が含まれているかを判定する。スマートフォン302は、パラメータ提供装置として動作することを予定しているため、送信元がパラメータ提供装置であることを示す情報を含んだ広告信号については無視しうる。スマートフォン302は、通信パラメータ共有サービスをパラメータ受信装置として実行することを示す情報が含まれていると判定した場合は、Bluetoothから無線LANへのハンドオーバを内部的に指示する(F503)。また、スマートフォン302は、デジタルカメラ304へ向けて、Bluetoothにより、接続応答信号を送信する(F504)。なお、F502とF504のシーケンスは、Bluetoothコア仕様において規定されている標準仕様のシーケンスと同様である。また、F504での接続応答信号には、スマートフォン302の通信パラメータ共有サービスにおける役割、すなわちパラメータ提供装置として動作するか、パラメータ受信装置として動作するかを示す情報が含まれる。ここでは、スマートフォン302は、パラメータ提供装置として動作するため、そのことを示す情報を広告信号に含めて送信する。また、この接続応答信号には、ハンドオーバ後の無線LANにおけるデバイスの識別情報として、たとえばスマートフォン302のMACアドレスやUUIDなどの情報が含まれうる。なお、接続応答信号には、F502で受信した広告信号に含まれていたデジタルカメラ304のデバイス識別情報が含められてもよい。なお、ここでは、Bluetoothコア仕様において規定されている処理の流れに沿って、スマートフォン302が、接続応答信号を送信するものとしたが、これに限られない。すなわち、スマートフォン302は、自身がパラメータ提供装置として通信パラメータ共有サービスを実行することを示す情報をデジタルカメラ304へ通知することができればよく、この通知には任意の信号が用いられうる。
デジタルカメラ304は、接続応答信号を受信すると、Bluetoothから無線LANへのハンドオーバを内部的に指示する(F505)。その後の処理は、図4のF406~F412と同様であるため、同一の参照番号を付して説明を省略する。
続いて、スマートフォン302及びデジタルカメラ304のそれぞれが実行する処理の流れについて説明する。
図6は、スマートフォン302が実行する通信パラメータ等の提供処理の流れの例を示すフローチャートである。なお、図6の処理は、入力部104及び出力部105を介して、処理開始を選択するユーザ操作が受け付けられたことに応じて、制御部102によって開始される。また、図6の処理は、制御部102が記憶部101に記憶されたコンピュータプログラムを読み出して実行することにより、実現される。
まず、スマートフォン302は、例えばユーザ操作を受け付けたことに応じて、通信パラメータ共有処理のうち提供装置の機能を開始することを決定する(S601)。そして、スマートフォン302は、相手装置を検索するための方式を選択する(S602)。ここでは、スマートフォン302は、Bluetoothを選択したものとする。この選択に応じて、スマートフォン302は、ペリフェラル装置又はセントラル装置としての動作を開始する。例えば、スマートフォン302は、図4のような処理を実行する場合は、ペリフェラル装置として動作し、図5のような処理を実行する場合は、セントラル装置として動作する。
スマートフォン302は、ペリフェラル装置として動作する場合は、通信パラメータ共有サービスをパラメータ提供装置として実行することを示す情報を含んだ広告信号を送信する(S603)。そして、スマートフォン302は、S603において広告信号を送信した後に、相手装置(デジタルカメラ304)が検出されることを待ち受ける(S604)。なお、スマートフォン302は、相手装置から送信された広告信号によって、その相手装置を検出することができる。スマートフォン302は、S604で相手装置を検出した場合、受信した信号の内容を解析し(S605)、通信パラメータ共有サービスをパラメータ受信装置として実行する情報が含まれているか否かを判定する(S606)。そして、スマートフォン302は、そのような情報が含まれていると判定した場合(S606でYES)は、Bluetoothから無線LANへのハンドオーバを実行する(S607)。スマートフォン302は、ハンドオーバの完了後、デジタルカメラ304が生成した公開鍵を要求して、公開鍵を含んだ応答信号を受信する(S608)。その後、スマートフォン302は、デジタルカメラ304との間で、受信した公開鍵を用いてパラメータ交換処理を実行し、デジタルカメラ304へ通信パラメータを提供する(S609)。なお、S609の処理は、図4及び図5におけるF408~F412までの処理に相当する。
一方、スマートフォン302は、受信した信号に、通信パラメータ共有サービスをパラメータ受信装置として実行する情報が含まれていないと判定した場合(S606でNO)は、処理を終了する。なお、スマートフォン302は、受信した信号に、通信パラメータ共有サービスをパラメータ受信装置として実行する情報が含まれていないと判定した場合(S606でNO)に、処理をS604に戻し、別の装置が検出されるのを待ち受けてもよい。
なお、スマートフォン302は、セントラル装置として動作する場合は、まず、相手装置からの信号を受信したことに応じてその装置を検出し、その信号を解析する。そして、スマートフォン302は、その信号に相手装置が通信パラメータ共有サービスをパラメータ受信装置として実行することを示す情報が含まれていると判定したことに応じて、Bluetoothから無線LANへのハンドオーバを実行する。また、スマートフォン302は、デジタルカメラ304に対して接続応答信号を送信する。すなわち、スマートフォン302は、セントラル装置として動作する場合は、S602の処理の後に、S604~S607の処理を実行し、その後に、S603の処理を実行する。なお、この場合のS603の処理とS607の処理の順序は、どちらが先であってもよい。また、ここでの接続応答信号は、上述のように、通信パラメータ共有サービスをパラメータ提供装置として実行することを示す情報を含む。スマートフォン302は、接続応答信号の送信の後に、S608及びS609の処理を実行しうる。
図7は、デジタルカメラ304が実行する通信パラメータ等の受信処理の流れの例を示すフローチャートである。なお、図7の処理は、デジタルカメラ304の電源投入時等の無線LANの通信機能が有効化された際に、制御部102によって開始されうる。なお、図7の処理は、入力部104及び出力部105を介して、処理開始を選択するユーザ操作が受け付けられたことに応じて、制御部102によって開始されてもよい。また、図7の処理は、制御部102が記憶部101に記憶されたコンピュータプログラムを読み出して実行することにより、実現される。
まず、デジタルカメラ304は、例えばユーザ操作を受け付けたことに応じて、通信パラメータ共有処理のうち受信装置の機能を開始することを決定する(S701)。そして、デジタルカメラ304は、相手装置を検索するための方式を選択する(S702)。ここでは、デジタルカメラ304は、Bluetoothを選択したものとする。この選択に応じて、デジタルカメラ304は、ペリフェラル装置としての動作を開始する。なお、デジタルカメラ304は、ここでは、必ずペリフェラルとして動作するようにする。すなわち、デジタルカメラ304は、セントラル装置として動作中の場合であっても、通信パラメータ共有サービスを実行する際には、一時的にペリフェラル装置として動作するようにする。
そして、デジタルカメラ304は、Bluetooth制御部210を制御して、通信パラメータ共有サービスをパラメータ受信装置として実行することを示す情報を含んだ広告信号を送信する(S703)。デジタルカメラ304は、S703において広告信号を送信した後に、相手装置(スマートフォン302)が検出されることを待ち受ける(S704)。なお、デジタルカメラ304は、相手装置が送信した広告信号又は接続応答信号によって、その相手装置を検出することができる。デジタルカメラ304は、S704で相手装置を検出した場合、受信した信号の内容を解析し(S705)、通信パラメータ共有サービスをパラメータ提供装置として実行することを示す情報が含まれているか否かを判定する(S706)。そして、デジタルカメラ304は、そのような情報が含まれていると判定した場合(S706でYES)は、通信パラメータ共有サービスで必要な公開鍵(暗号鍵)を生成する(S707)。デジタルカメラ304は、その後、Bluetoothから無線LANへのハンドオーバを実行する(S708)。そして、デジタルカメラ304は、ハンドオーバの完了後に、スマートフォン302からの公開鍵の要求信号に応答して、S707で生成した公開鍵を含んだ応答信号をスマートフォン302へと送信する(S709)。その後、デジタルカメラ304は、図4および図5のF408~F412のパラメータ交換処理を実行し、スマートフォン302から通信パラメータを受信する(S710)。なお、デジタルカメラ304は、受信した情報に通信パラメータ共有サービスをパラメータ提供装置として実行することを示す情報が含まれていないと判定した場合(S706でNO)は、そのまま処理を終了する。なお、デジタルカメラ304は、受信信号にそのような情報が含まれていないと判定した場合に、処理をS704に戻し、別の装置が検出されるのを待ち受けてもよい。
なお、上述の例では、パラメータ送信装置であるスマートフォン302がセントラル装置又はペリフェラル装置として動作し、パラメータ受信装置であるデジタルカメラ304がペリフェラル装置として動作するように説明したが、これに限られない。すなわち、スマートフォン302がペリフェラル装置として動作し、デジタルカメラ304がセントラル装置として動作してもよい。いずれの場合であっても、スマートフォン302とデジタルカメラ304は、Bluetooth等の第1の通信機能によって相手装置を認識し、無線LAN等の第2の通信機能によって暗号鍵等のパラメータ交換処理で用いられる情報の送受信を行う。これにより、本来の通信パラメータの共有対象でない装置との間で通信パラメータが共有される確率を低減することができる。また、第1の通信機能を相手装置の発見に用い、公開鍵の情報等のパラメータの共有に係る通信で用いられる情報を第2の通信機能で送受信することで、第1の通信機能の送信可能なデータ量が小さい場合でも、その情報を確実に送受信することができる。
<処理例2>
上述の処理例1では、スマートフォン302とデジタルカメラ304がBluetoothの未接続状態において相手装置を検索する場合の例について説明した。これに対して、本処理例では、スマートフォン302とデジタルカメラ304が、Bluetoothによる接続を確立している場合の処理の例について説明する。本処理例の流れを図8に示す。
上述の処理例1では、スマートフォン302とデジタルカメラ304がBluetoothの未接続状態において相手装置を検索する場合の例について説明した。これに対して、本処理例では、スマートフォン302とデジタルカメラ304が、Bluetoothによる接続を確立している場合の処理の例について説明する。本処理例の流れを図8に示す。
本処理例では、例えばセンサ情報の送受信などの目的で、スマートフォン302とデジタルカメラ304とが、Bluetooth(BLE)によって接続を確立している状態とする(F801)。この状態において、スマートフォン302及びデジタルカメラ304が、例えばユーザ操作によって、通信パラメータ共有処理を開始すると決定したものとする。
スマートフォン302は、Bluetoothクライアントとして動作し、BluetoothのTDS仕様で規定されたATT Write Request信号を送信する(F802)。なお、TDSは、Transport Discovery Serviceの頭字語であり、Bluetooth以外の通信機能を用いて利用可能なサービスを発見させることを可能とするための手法である。デジタルカメラ304は、Bluetoothサーバとして動作し、ATT Write Request信号を受信後、その信号に対する応答信号であるATT Write Response信号を送信する(F803)。なお、デジタルカメラ304は、ATT Write Response信号の送信と並行して又はその前後で、通信パラメータ制御部201に対して前記通信パラメータ共有処理で必要となる公開鍵を生成することを指示する(F804)。デジタルカメラ304は、F804の生成通知を内部的に処理して、通信パラメータ共有のための通信に用いられる公開鍵を生成する(F806)。デジタルカメラ304は、公開鍵を生成すると、スマートフォン302へATT Indication信号を送信する(F805)。なお、デジタルカメラ304は、例えば、無線LANでの通信が可能な状態となっていることを確認したことに応じて、ATT Indication信号を送信し、その後に、Bluetoothから無線LANへのハンドオーバ処理を実行しうる。スマートフォン302は、ATT Indication信号を受信すると、Bluetoothから無線LANへのハンドオーバ処理を実行する(F807)。ハンドオーバ処理が完了したのち、スマートフォン302は、デジタルカメラ304に対して、ATT Confirmation信号を送信する(F808)。
以上の処理により、スマートフォン302とデジタルカメラ304は、無線LANにより処理を行う準備ができたため、無線LANによって、公開鍵の交換から通信パラメータの共有までの処理を実行することができる。なお、この公開鍵の交換から通信パラメータの共有処理までの処理は、図4のF406~F412と同様であるため、同一の参照番号を付して詳細な説明については省略する。
続いて、図9を用いて、スマートフォン302およびデジタルカメラ304が実施する処理の流れについて説明する。なお、図9の処理は、スマートフォン302およびデジタルカメラ304の入力部104及び出力部105を介して、処理開始を選択するユーザ操作が受け付けられたことに応じて、制御部102によって開始される。また、図9の処理は、制御部102が記憶部101に記憶されたコンピュータプログラムを読み出して実行することにより、実現される。
まず、スマートフォン302とデジタルカメラ304とが、すでにIoT(Internet of Things)で用いるセンサ情報の送受信等のために、GATTプロファイルを用いてBluetooth接続しているものとする(S901)。次に、スマートフォン302とデジタルカメラ304は、例えばユーザ操作を受け付けたことによって、通信パラメータ共有処理を開始することを決定する(S902)。そして、スマートフォン302とデジタルカメラ304は、Bluetooth仕様で定められたATTネゴシエーションを実行する(S903)。このATTネゴシエーションは、図8におけるF802~F805及びF808のシーケンスのことを称している。具体的なシーケンスについてはBluetooth TDS仕様を参照されたい。スマートフォン302とデジタルカメラ304は、ATTネゴシエーションの結果、通信パラメータを共有することを決定した場合は、Bluetoothから無線LANへのハンドオーバを実行する(S904)。そして、ハンドオーバの完了後に、デジタルカメラ304からスマートフォン302へと公開鍵が送信される。(S905)。その後に、スマートフォン302とデジタルカメラ304との間でパラメータ交換処理が実行される(S906)。S906の処理は、図4のF408~F412に関して説明した処理に相当する。
本処理例では、スマートフォン302がBluetoothクライアントとして動作し、デジタルカメラ304がBluetoothサーバ(コントロールポイント)として動作する例について説明したが、これに限られない。例えば、スマートフォン302がBluetoothサーバ(コントロールポイント)として動作し、デジタルカメラ304がBluetoothクライアントとして動作してもよい。
以上のように、本処理例では、すでにBluetoothで接続済みの通信装置同士が、より通信量の多い無線LAN通信機能にハンドオーバする際に、安全に通信パラメータを共有することが可能となる。このとき、スマートフォン302は、Bluetoothで接続している相手装置であるデジタルカメラ304に対してパラメータを提供するため、接続していない他の装置に対してパラメータを提供しないことになる。このため、本来の通信パラメータの共有対象でない装置との間で通信パラメータが共有される確率を低減することができる。なお、本例においても、Bluetoothや無線LAN以外の通信規格が用いられうる。このとき、例えばBluetooth等の第1の通信機能は、無線LAN等の第2の通信機能よりも通信可能距離が短い通信機能でありうる。また、第1の通信機能は、例えば少量のデータしか送受信できない場合があり、公開鍵の情報等のパラメータの共有に係る通信で用いられる情報を第2の通信機能で送受信することにより、そのような場合でも、その情報が確実に送受信されうる。
<処理例3>
上述の処理例1及び2では、Bluetoothから無線LANへのハンドオーバ後に、公開鍵の受け渡しを実行する例について説明した。これに対して、本処理例では、公開鍵の受け渡しがBluetoothで実行される例について説明する。本処理例の流れを図10に示す。
上述の処理例1及び2では、Bluetoothから無線LANへのハンドオーバ後に、公開鍵の受け渡しを実行する例について説明した。これに対して、本処理例では、公開鍵の受け渡しがBluetoothで実行される例について説明する。本処理例の流れを図10に示す。
本処理では、まず、スマートフォン302において、ユーザが、通信パラメータ共有処理を開始すると決定し、相手装置(本例ではデジタルカメラ304)を検索するための方式を選択する。ここでは、スマートフォン302のユーザが、相手装置を決定するための方式として、Bluetooth(BLE)を選択したものとする。ユーザは、例えば所定のアプリケーションにおいて所定の操作を実行することにより、スマートフォン302に対してこの選択結果を入力する。これにより、スマートフォン302は、Bluetooth制御部210を制御して、Bluetoothのペリフェラル装置として動作する。そして、スマートフォン302は、通信パラメータ共有サービスを実行することを示す情報を含んだ広告信号を送信(例えばブロードキャスト送信)する(F1001)。広告信号には、スマートフォン302の通信パラメータ共有サービスにおける役割、すなわちパラメータ提供装置として動作するか、パラメータ受信装置として動作するかを示す情報が含まれる。ここでは、スマートフォン302は、パラメータ提供装置として動作するため、そのことを示す情報を広告信号に含めて送信する。また、広告信号には、ハンドオーバ後の無線LANにおけるデバイスの識別情報として、たとえばスマートフォン302のMACアドレスやUUID(Universally Unique Identifier)等の情報が含まれうる。
一方、デジタルカメラ304においても、ユーザが、通信パラメータ共有処理を開始すると決定し、相手装置を検索するための方式として、Bluetooth(BLE)を選択したものとする。ユーザは、例えば所定の操作を実行することにより、デジタルカメラ304に対してこの選択結果を入力する。これにより、デジタルカメラ304は、Bluetooth制御部210を制御して、Bluetoothのペリフェラル装置として動作する。すなわち、本例では、スマートフォン302とデジタルカメラ304は、共にペリフェラル装置として動作する。デジタルカメラ304は、通信パラメータ共有サービスを実行することを示す情報を含んだ広告信号を送信する(F1002)。F1001に関する説明と同様に、広告信号には、デジタルカメラ304の通信パラメータ共有サービスにおける役割、すなわちパラメータ提供装置として動作するか、パラメータ受信装置として動作するかを示す情報が含まれる。ここでは、デジタルカメラ304は、パラメータ受信装置として動作するため、そのことを示す情報を広告信号に含めて送信する。また、広告信号には、ハンドオーバ後の無線LANにおけるデバイスの識別情報として、例えばデジタルカメラ304のMACアドレスやUUID等の情報が含まれうる。
なお、上述の説明では、スマートフォン302とデジタルカメラ304とが共にペリフェラル装置として動作すると説明したが、例えばスマートフォン302とデジタルカメラ304とのいずれかがセントラル装置として動作してもよい。この場合、セントラル装置として動作する装置は、広告信号に対して、図5のF504のような接続応答信号を、ペリフェラル装置として動作する装置に対して送信しうる。
スマートフォン302は、F1002の広告信号を受信すると、その広告信号の内容を解析し、通信パラメータ共有サービスを実行することを示す情報が含まれているか否かを判定する。そして、スマートフォン302は、広告信号に通信パラメータ共有サービスを実行することを示す情報が含まれていると判定した場合、通信パラメータ共有に係る通信で用いられる公開鍵を要求するための信号を、デジタルカメラ304へ送信する(F1003)。デジタルカメラ304は、スマートフォン302からの公開鍵要求信号を受信すると、生成した公開鍵を含んだ応答信号を、スマートフォン302へと返送する(F1005)。なお、デジタルカメラ304は、応答信号の送信と並行して又はその前後に、無線LANへのハンドオーバを実行するための内部的な指示を生成し、Bluetoothから無線LANへのハンドオーバを実行する(F1004)。スマートフォン302は、公開鍵を含んだ応答信号を受信すると、Bluetoothから無線LANへのハンドオーバを実行し(F1006)、無線LANによる通信を開始する。その後は、図4のF408~F412と同様の処理が実行される。
図11は、スマートフォン302又はデジタルカメラ304が実行する処理の流れの例を示すフローチャートである。なお、図11の処理は、スマートフォン302又はデジタルカメラ304の電源投入時等の無線LANの通信機能が有効化された際に、制御部102によって開始されうる。なお、図11の処理は、入力部104及び出力部105を介して、処理開始を選択するユーザ操作が受け付けられたことに応じて、制御部102によって開始されてもよい。また、図11の処理は、制御部102が記憶部101に記憶されたコンピュータプログラムを読み出して実行することにより、実現される。
まず、スマートフォン302又はデジタルカメラ304は、例えばユーザ操作を受け付けたことに応じて、通信パラメータ共有処理を開始することを決定する(S1101)。そして、スマートフォン302又はデジタルカメラ304は、相手装置を検索するための方式を選択する(S1102)。ここでは、スマートフォン302又はデジタルカメラ304は、Bluetoothを選択したものとする。この選択に応じて、スマートフォン302又はデジタルカメラ304は、Bluetoothによる相手装置の検索を実行する(S1103)。なお、このときの検索処理は、例えば上述の処理例1のようにして行われうる。
スマートフォン302又はデジタルカメラ304は、相手装置が検出されることを待ち受け(S1104)、相手装置からの信号を受信して相手装置を検出した場合(S1104でYES)に、その受信信号の内容を解析する(S1105)。そして、スマートフォン302又はデジタルカメラ304は、受信信号が、通信パラメータ共有サービスを実行する情報が含まれているか否かを判定する(S1106)。そして、スマートフォン302又はデジタルカメラ304は、そのような情報が含まれていると判定した場合(S1106でYES)は、自身が利用するBluetoothのパケットで送信可能なペイロード長を確認する(S1107)。ここでは、スマートフォン302又はデジタルカメラ304は、送信可能なペイロード長が、公開鍵等の上述の通信パラメータ設定に係る通信で用いられる情報のデータ長よりも十分に長いか否かを判定する。そして、スマートフォン302又はデジタルカメラ304は、ペイロード長が十分に長い場合は(S1107でYES)、Bluetoothによって、通信パラメータ共有サービスに係る通信で用いられる公開鍵(暗号鍵)の交換を行う(S1108)。その後、スマートフォン302又はデジタルカメラ304は、Bluetoothから無線LANへのハンドオーバを実行し(S1109)、ハンドオーバの完了の後に、F408~F412に関して上述したパラメータ交換処理を実行する(S1110)。一方、スマートフォン302又はデジタルカメラ304は、ペイロード長が不十分である場合は(S1107でNO)、まずBluetoothから無線LANへのハンドオーバを実行する(S1111)。そして、スマートフォン302又はデジタルカメラ304は、無線LANによって通信パラメータ共有サービスに係る通信で用いられる公開鍵(暗号鍵)を交換する(S1112)。その後、スマートフォン302又はデジタルカメラ304は、ハンドオーバの完了の後に、F408~F412に関して上述したパラメータ交換処理を実行する(S1110)。
なお、S1107におけるペイロード長の確認は、たとえばパケットに最大ペイロードサイズの情報を含めておき、その情報を参照することによって行われうる。また、例えば、スマートフォン302及びデジタルカメラ304のBluetoothのバージョン情報によって、そのバージョン情報が予め決められた値か否かに基づいて、S1107の確認が行われてもよい。例えば、スマートフォン302及びデジタルカメラ304のBluetoothのバージョンが所定のバージョン以降のバージョンである場合に、ペイロード長が十分に長いと判定されうる。
このように、本処理例では、スマートフォン302とデジタルカメラ304は、Bluetooth等の第1の通信機能によって相手装置を認識すると共に、可能であれば、その第1の通信機能で暗号鍵等のパラメータ交換処理で用いられる情報の送受信を行う。そして、スマートフォン302とデジタルカメラ304は、その暗号鍵等の情報を用いて、パラメータ交換処理を実行して無線LANのパラメータの交換を行う。これにより、本来の通信パラメータの共有対象でない装置との間で通信パラメータが共有される確率を低減することができる。
上述の処理例では、いずれも、例えば、パラメータの共有を行う通信装置間で、比較的近距離で通信可能な第1の通信機能を用いて通信パラメータ共有処理の相手装置の検出が行われる。そして、その検出された通信装置間で、無線LANのパラメータの共有に係る通信で用いられる情報(例えば暗号鍵)が送受信され、その情報を用いた通信により、無線LANのパラメータの共有が行われる。通信可能距離が短い第1の通信機能で装置の検出を行うことで、本来の通信パラメータの共有対象でない装置との間で通信パラメータの共有用の情報(例えば暗号鍵)が共有される確率を低減することができる。なお、パラメータ共有を行う装置間の検出ができれば、第1の通信機能はBluetooth通信機能でなくてもよく、例えばNFC等の他の通信機能が用いられてもよい。上述のように、Bluetoothが用いられる場合であっても、その接続が確立される必要は必ずしもない。このため、パラメータ共有処理を実行することを示す信号を送出できる任意の機能が第1の通信機能として用いられうる。また、第2の通信機能も、必ずしもWi-Fiに基づく通信機能でなくてもよく、他の規格に従う無線LANの通信機能や無線LAN以外の通信機能が第2の通信機能として用いられてもよい。
なお、上述の処理例は、そのいずれか1つのみが常に用いられてもよいし、その複数を利用可能な装置が状況に応じて切り替えられて用いられてもよい。
<<その他の実施形態>>
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
本発明は上記実施の形態に制限されるものではなく、本発明の精神及び範囲から離脱することなく、様々な変更及び変形が可能である。従って、本発明の範囲を公にするために、以下の請求項を添付する。
本願は、2016年12月26日提出の日本国特許出願特願2016-251925を基礎として優先権を主張するものであり、その記載内容の全てを、ここに援用する。
Claims (15)
- 第1の通信手段と、
前記第1の通信手段と異なる第2の通信手段と、
ネットワークに参加するために前記第2の通信手段を用いて行われるパラメータ交換処理の相手装置を、前記第1の通信手段を用いて検出する検出手段と、
前記パラメータ交換処理に係る通信で用いられる情報を前記相手装置と交換する交換手段と、
前記情報を用いた前記第2の通信手段での通信により、前記パラメータ交換処理を実行する実行手段と、
を有することを特徴とする通信装置。 - 前記交換手段は、前記第2の通信手段を用いて前記情報の交換を行う、
ことを特徴とする請求項1に記載の通信装置。 - 前記交換手段は、前記第1の通信手段を用いて前記情報を送受信することができる場合に前記第1の通信手段を用いて前記情報の交換を行い、前記第1の通信手段を用いて前記情報を送受信することができない場合に前記第2の通信手段を用いて前記情報の交換を行う、
ことを特徴とする請求項1に記載の通信装置。 - 前記交換手段は、前記情報の量と、前記第1の通信手段で送信可能なペイロードの長さとに基づいて、前記第1の通信手段を用いて前記情報を送受信することができるか否かを判定する、
ことを特徴とする請求項3に記載の通信装置。 - 前記交換手段は、前記第1の通信手段を用いて前記情報の交換を行う、
ことを特徴とする請求項1に記載の通信装置。 - 前記検出手段は、前記相手装置から前記第1の通信手段を用いてブロードキャストで送信された信号によって当該相手装置を検出する、
ことを特徴とする請求項1から5のいずれか1項に記載の通信装置。 - 前記検出手段は、前記相手装置から前記第1の通信手段を用いた接続を確立するための信号によって当該相手装置を検出する、
ことを特徴とする請求項1から6のいずれか1項に記載の通信装置。 - 前記検出手段は、前記通信装置が前記パラメータを提供する装置である場合、前記パラメータを受信する装置として前記パラメータ交換処理を実行することを示す前記信号の送信元の装置を、前記相手装置として検出する、
ことを特徴とする請求項6又は7に記載の通信装置。 - 前記検出手段は、前記通信装置が前記パラメータを受信する装置である場合、前記パラメータを提供する装置として前記パラメータ交換処理を実行することを示す前記信号の送信元の装置を、前記相手装置として検出する、
ことを特徴とする請求項6から8のいずれか1項に記載の通信装置。 - 前記検出手段は、前記第1の通信手段を用いて接続を確立している装置を前記相手装置として検出する、
ことを特徴とする請求項1から9のいずれか1項に記載の通信装置。 - 前記第1の通信手段は、Bluetoothの通信を行う、
ことを特徴とする請求項1から10のいずれか1項に記載の通信装置。 - 前記第2の通信手段は、IEEE802.11規格に従う無線LANの通信を行う、
ことを特徴とする請求項1から11のいずれか1項に記載の通信装置。 - 前記情報は、前記パラメータ交換処理に係る通信で用いられる暗号鍵の情報である、
ことを特徴とする請求項1から12のいずれか1項に記載の通信装置。 - 第1の通信手段と、前記第1の通信手段と異なる第2の通信手段と、を有する通信装置の制御方法であって、
ネットワークに参加するために前記第2の通信手段を用いて行われるパラメータ交換処理の相手装置を、前記第1の通信手段を用いて検出することと、
前記パラメータ交換処理に係る通信で用いられる情報を前記相手装置と交換することと、
前記情報を用いた前記第2の通信手段での通信により、前記パラメータ交換処理を実行することと、
を有することを特徴とする制御方法。 - 第1の通信手段と、前記第1の通信手段と異なる第2の通信手段と、を有する通信装置に備えられたコンピュータに、
ネットワークに参加するために前記第2の通信手段を用いて行われるパラメータ交換処理の相手装置を、前記第1の通信手段を用いて検出させ、
前記パラメータ交換処理に係る通信で用いられる情報を前記相手装置と交換させ、
前記情報を用いた前記第2の通信手段での通信により、前記パラメータ交換処理を実行させる、
ためのプログラム。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201780080393.3A CN110115099B (zh) | 2016-12-26 | 2017-11-21 | 通信设备、控制方法和计算机可读存储介质 |
EP17887892.2A EP3562256A4 (en) | 2016-12-26 | 2017-11-21 | COMMUNICATION DEVICE, CONTROL METHOD AND PROGRAM |
KR1020197020819A KR102297138B1 (ko) | 2016-12-26 | 2017-11-21 | 통신 장치, 제어 방법 및 컴퓨터 판독가능 기억 매체 |
US16/445,689 US11553349B2 (en) | 2016-12-26 | 2019-06-19 | Communication apparatus, control method, and computer-readable storage medium |
US17/964,105 US20230030588A1 (en) | 2016-12-26 | 2022-10-12 | Communication apparatus, control method, and computer-readable storage medium |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016251925A JP6797674B2 (ja) | 2016-12-26 | 2016-12-26 | 通信装置、制御方法、及びプログラム |
JP2016-251925 | 2016-12-26 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US16/445,689 Continuation US11553349B2 (en) | 2016-12-26 | 2019-06-19 | Communication apparatus, control method, and computer-readable storage medium |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2018123357A1 true WO2018123357A1 (ja) | 2018-07-05 |
Family
ID=62708218
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2017/041810 WO2018123357A1 (ja) | 2016-12-26 | 2017-11-21 | 通信装置、制御方法、及びプログラム |
Country Status (6)
Country | Link |
---|---|
US (2) | US11553349B2 (ja) |
EP (1) | EP3562256A4 (ja) |
JP (1) | JP6797674B2 (ja) |
KR (1) | KR102297138B1 (ja) |
CN (1) | CN110115099B (ja) |
WO (1) | WO2018123357A1 (ja) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6797674B2 (ja) * | 2016-12-26 | 2020-12-09 | キヤノン株式会社 | 通信装置、制御方法、及びプログラム |
US10867055B2 (en) | 2017-12-28 | 2020-12-15 | Corlina, Inc. | System and method for monitoring the trustworthiness of a networked system |
WO2019152521A1 (en) * | 2018-01-30 | 2019-08-08 | Corlina, Inc. | User and device onboarding |
JP7224855B2 (ja) * | 2018-11-02 | 2023-02-20 | キヤノン株式会社 | 通信装置、制御方法、およびプログラム |
JP7259334B2 (ja) * | 2019-01-09 | 2023-04-18 | ブラザー工業株式会社 | 端末装置と端末装置のためのコンピュータプログラム |
JP7278087B2 (ja) * | 2019-01-31 | 2023-05-19 | キヤノン株式会社 | 通信装置およびその制御方法、プログラム |
JP7438676B2 (ja) * | 2019-06-27 | 2024-02-27 | キヤノン株式会社 | 無線通信装置およびその制御方法 |
US11399286B2 (en) * | 2019-08-20 | 2022-07-26 | Qualcomm Incorporated | Scrambling for wireless communications |
CN112566113B (zh) * | 2019-09-06 | 2023-04-07 | 阿里巴巴集团控股有限公司 | 密钥生成以及终端配网方法、装置、设备 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003018148A (ja) * | 2001-07-05 | 2003-01-17 | Toshiba Corp | 無線データ通信装置及びそのデータ通信方法 |
JP2011172278A (ja) * | 2011-05-12 | 2011-09-01 | Canon Inc | 通信装置及び通信方法 |
JP2014033282A (ja) * | 2012-08-01 | 2014-02-20 | Ricoh Co Ltd | 通信方法、無線通信装置及びプログラム |
JP2015220604A (ja) * | 2014-05-16 | 2015-12-07 | キヤノン株式会社 | 通信装置、制御方法及びプログラム |
US20160277370A1 (en) * | 2015-03-19 | 2016-09-22 | Samsung Electronics Co., Ltd. | Method and apparatus for configuring connection between devices in communication system |
JP2016219997A (ja) * | 2015-05-19 | 2016-12-22 | 株式会社リコー | 通信システム、通信装置、及びプログラム |
Family Cites Families (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100757860B1 (ko) * | 2003-05-29 | 2007-09-11 | 삼성전자주식회사 | 유무선 통신 시스템을 이용한 복합 무선 서비스 장치 |
US7680059B2 (en) * | 2004-02-13 | 2010-03-16 | Broadcom Corporation | Multiple protocol wireless communications in a WLAN |
US8170546B2 (en) * | 2006-03-22 | 2012-05-01 | Broadcom Corporation | Client device characterization of other client device transmissions and reporting of signal qualities to access point(s) |
JP5046964B2 (ja) * | 2008-01-10 | 2012-10-10 | キヤノン株式会社 | 通信システム及び通信端末、方法、プログラム |
US20140279479A1 (en) | 2011-10-12 | 2014-09-18 | C-Sam, Inc. | Nfc paired bluetooth e-commerce |
JP5981761B2 (ja) | 2012-05-01 | 2016-08-31 | キヤノン株式会社 | 通信装置、制御方法、プログラム |
US8818276B2 (en) * | 2012-05-16 | 2014-08-26 | Nokia Corporation | Method, apparatus, and computer program product for controlling network access to guest apparatus based on presence of hosting apparatus |
US9736680B2 (en) * | 2012-06-27 | 2017-08-15 | Google Inc. | Techniques for transferring a data payload utilizing near-field communication |
US9496927B1 (en) | 2013-01-21 | 2016-11-15 | Google Inc. | Interrupt based near field communication (NFC) pairing |
US9020435B2 (en) | 2013-03-13 | 2015-04-28 | Intel Corporation | System and method for automated pairing between remote control and controllable device |
US9210733B2 (en) * | 2013-03-14 | 2015-12-08 | Google Technology Holdings LLC | Method and apparatus to facilitate pairing between wireless devices |
JP6118187B2 (ja) | 2013-06-12 | 2017-04-19 | キヤノン株式会社 | 印刷装置、印刷装置の制御方法、およびプログラム |
US9749134B2 (en) * | 2013-06-20 | 2017-08-29 | Qualcomm Incorporated | Wireless configuration using passive near field communication |
US9445220B2 (en) * | 2013-09-06 | 2016-09-13 | Paypal, Inc. | Systems and methods for enabling additional devices to check in to bluetooth low energy (BLE) beacons |
JP6245907B2 (ja) | 2013-09-18 | 2017-12-13 | キヤノン株式会社 | 通信装置および通信システム |
JP6338344B2 (ja) * | 2013-10-04 | 2018-06-06 | キヤノン株式会社 | 通信装置、通信装置の制御方法およびプログラム |
JP2015097383A (ja) | 2013-10-11 | 2015-05-21 | キヤノン株式会社 | 通信装置、通信装置の制御方法およびプログラム |
WO2015058082A1 (en) * | 2013-10-18 | 2015-04-23 | Board Of Trustees Of Michigan State University | Near field communication system and method for controlling transmission power of near field communication system |
JP6305023B2 (ja) * | 2013-11-13 | 2018-04-04 | キヤノン株式会社 | 通信装置、通信装置の制御方法、およびプログラム |
US9629195B2 (en) * | 2014-06-20 | 2017-04-18 | Htc Corporation | Connection switching method applicable to remote controllable system and mobile device, remote controllable system using the same, and mobile device using the same |
US20160342774A1 (en) * | 2015-05-21 | 2016-11-24 | Castar, Inc. | Method of co-located software object sharing for multi-player augmented reality games |
US20160360407A1 (en) * | 2015-06-05 | 2016-12-08 | Qualcomm Incorporated | Distributed configurator entity |
JP6486228B2 (ja) * | 2015-07-21 | 2019-03-20 | キヤノン株式会社 | 通信装置、制御方法、および、プログラム |
US10873842B2 (en) * | 2016-04-08 | 2020-12-22 | Blackberry Limited | Managed object to provision a device according to one of plural provisioning techniques |
CN205557021U (zh) | 2016-04-11 | 2016-09-07 | 天津市大中服装有限公司 | 一种配有多层针板的缝纫机 |
JP6797674B2 (ja) | 2016-12-26 | 2020-12-09 | キヤノン株式会社 | 通信装置、制御方法、及びプログラム |
-
2016
- 2016-12-26 JP JP2016251925A patent/JP6797674B2/ja active Active
-
2017
- 2017-11-21 CN CN201780080393.3A patent/CN110115099B/zh active Active
- 2017-11-21 EP EP17887892.2A patent/EP3562256A4/en active Pending
- 2017-11-21 WO PCT/JP2017/041810 patent/WO2018123357A1/ja active Application Filing
- 2017-11-21 KR KR1020197020819A patent/KR102297138B1/ko active IP Right Grant
-
2019
- 2019-06-19 US US16/445,689 patent/US11553349B2/en active Active
-
2022
- 2022-10-12 US US17/964,105 patent/US20230030588A1/en active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003018148A (ja) * | 2001-07-05 | 2003-01-17 | Toshiba Corp | 無線データ通信装置及びそのデータ通信方法 |
JP2011172278A (ja) * | 2011-05-12 | 2011-09-01 | Canon Inc | 通信装置及び通信方法 |
JP2014033282A (ja) * | 2012-08-01 | 2014-02-20 | Ricoh Co Ltd | 通信方法、無線通信装置及びプログラム |
JP2015220604A (ja) * | 2014-05-16 | 2015-12-07 | キヤノン株式会社 | 通信装置、制御方法及びプログラム |
US20160277370A1 (en) * | 2015-03-19 | 2016-09-22 | Samsung Electronics Co., Ltd. | Method and apparatus for configuring connection between devices in communication system |
JP2016219997A (ja) * | 2015-05-19 | 2016-12-22 | 株式会社リコー | 通信システム、通信装置、及びプログラム |
Non-Patent Citations (1)
Title |
---|
See also references of EP3562256A4 |
Also Published As
Publication number | Publication date |
---|---|
CN110115099A (zh) | 2019-08-09 |
CN110115099B (zh) | 2023-06-06 |
JP6797674B2 (ja) | 2020-12-09 |
EP3562256A1 (en) | 2019-10-30 |
KR102297138B1 (ko) | 2021-09-03 |
US11553349B2 (en) | 2023-01-10 |
US20190306698A1 (en) | 2019-10-03 |
US20230030588A1 (en) | 2023-02-02 |
JP2018107619A (ja) | 2018-07-05 |
KR20190097190A (ko) | 2019-08-20 |
EP3562256A4 (en) | 2020-06-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2018123357A1 (ja) | 通信装置、制御方法、及びプログラム | |
JP6759011B2 (ja) | 通信装置、通信方法、及びプログラム | |
JP2018037978A (ja) | 通信装置、通信方法、及びプログラム | |
JP6245907B2 (ja) | 通信装置および通信システム | |
JP6532333B2 (ja) | 通信装置、通信方法及びプログラム | |
JP2017028452A (ja) | 通信装置、通信方法及びプログラム | |
JP6338344B2 (ja) | 通信装置、通信装置の制御方法およびプログラム | |
JP6732460B2 (ja) | 通信装置、通信方法、プログラム | |
JP2017135519A (ja) | 通信装置、通信方法、プログラム | |
WO2020054365A1 (ja) | 通信装置、通信方法及びプログラム | |
CN109565892B (zh) | 一种通信装置、通信方法和计算机可读存储介质 | |
JP6472259B2 (ja) | 通信装置、通信装置の制御方法、プログラム | |
JP6271839B2 (ja) | 通信装置、通信装置の制御方法、プログラム | |
CN112655275B (zh) | 通信装置、通信方法和计算机可读存储介质 | |
WO2017126311A1 (ja) | 通信装置、通信方法及びプログラム | |
JP2023027265A (ja) | 通信装置、制御方法及びプログラム | |
JP2020108117A (ja) | 通信装置およびその制御方法 | |
WO2016129209A1 (en) | Communication apparatus, method and program for controlling the apparatus, and storage medium storing the program | |
WO2023053839A1 (ja) | 通信装置、方法、プログラム、並びにシステム | |
JP7121646B2 (ja) | 通信装置、通信装置の制御方法及びプログラム | |
WO2023218759A1 (ja) | 通信装置およびその制御方法、通信システム | |
JP2023176543A (ja) | プログラムおよび方法 | |
JP2016187135A (ja) | 通信装置、通信方法及びプログラム | |
JP2024083844A (ja) | 情報処理装置、情報処理装置の制御方法、およびプログラム | |
JP2024084450A (ja) | 情報処理装置、方法、プログラム、システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 17887892 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
ENP | Entry into the national phase |
Ref document number: 20197020819 Country of ref document: KR Kind code of ref document: A |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2017887892 Country of ref document: EP |