WO2022172802A1 - 無線通信システム、無線通信方法、無線通信装置およびプログラム - Google Patents

無線通信システム、無線通信方法、無線通信装置およびプログラム Download PDF

Info

Publication number
WO2022172802A1
WO2022172802A1 PCT/JP2022/003726 JP2022003726W WO2022172802A1 WO 2022172802 A1 WO2022172802 A1 WO 2022172802A1 JP 2022003726 W JP2022003726 W JP 2022003726W WO 2022172802 A1 WO2022172802 A1 WO 2022172802A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
processing unit
wireless communication
encryption
wireless
Prior art date
Application number
PCT/JP2022/003726
Other languages
English (en)
French (fr)
Inventor
望 中脇
誠雄 久保
Original Assignee
オムロンヘルスケア株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by オムロンヘルスケア株式会社 filed Critical オムロンヘルスケア株式会社
Publication of WO2022172802A1 publication Critical patent/WO2022172802A1/ja

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/36Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols with means for detecting characters not meant for transmission
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/02Protecting privacy or anonymity, e.g. protecting personally identifiable information [PII]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/02Hierarchically pre-organised networks, e.g. paging networks, cellular networks, WLAN [Wireless Local Area Network] or WLL [Wireless Local Loop]
    • H04W84/10Small scale networks; Flat hierarchical networks
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Definitions

  • the present invention relates to a wireless communication system for transmitting data between multiple wireless communication devices, a wireless communication method, a wireless communication device and a program used in this system.
  • short-range wireless communication technology is used as a method for transferring sensing data between multiple devices, such as transferring blood pressure data obtained from a blood pressure monitor to a user's mobile terminal.
  • Bluetooth communication connection
  • wireless LAN Wireless Local Area Network
  • BLE Bluetooth Low Energy
  • BLE advertising it is possible to further reduce power consumption compared to the previous specification, especially one-way communication called BLE advertising. When used, higher power consumption can be expected to be reduced.
  • BLE advertising does not specify a mechanism for pairing or encryption between transmission and reception. Therefore, when data is transferred using an advertising packet, it becomes possible for a third party's mobile terminal capable of receiving the advertising packet to receive the data, and the confidentiality of the data may be lost.
  • the present invention has been made in view of the above problems, and provides a technique that eliminates the need for time-series synchronization between transmission and reception and that can maintain the secrecy of transmitted data by a simple encryption process. is trying to provide.
  • a first aspect of the present invention provides a wireless communication system for transmitting data to be transmitted between a first wireless communication device and a second wireless communication device using a one-way communication method.
  • the first wireless communication device includes a first encryption processing unit, a second encryption processing unit, a packet generation processing unit, and a transmission processing unit, wherein the second wireless communication
  • the apparatus includes a reception processing section, a first decoding processing section, a second decoding processing section, and a data output processing section.
  • the first encryption processing unit encrypts the data to be transmitted using a first encryption method to generate first encrypted data.
  • the second encryption processing unit encrypts the data to be transmitted using a second encryption method having a different encryption algorithm from the first encryption method to generate second encrypted data.
  • a packet generation processing unit generates a wireless packet including the first encrypted data and the second encrypted data.
  • the transmission processing unit transmits the wireless packet by the one-way communication method.
  • the reception processing unit receives the wireless packet.
  • the first decryption processing unit decrypts the first encrypted data included in the wireless packet by a first decryption method corresponding to the first encryption method to generate first decrypted data.
  • the second decryption processing unit decrypts the second encrypted data contained in the received wireless packet by a second decryption method corresponding to the second encryption method to generate second decrypted data. to generate
  • the data output processing unit outputs at least one of the first decoded data and the second decoded data as the data to be transmitted.
  • the data to be transmitted is encrypted by the encryption algorithm in the first wireless communication device. Encrypted by different first and second encryption schemes respectively, the encrypted data are transmitted in parallel to the second wireless communication device and are respectively received and decrypted. Therefore, only by sharing the first and second encryption schemes between transmission and reception, time-series synchronization for encryption and decryption processing between transmission and reception becomes unnecessary, and a plurality of encryption schemes are layered. The processing load associated with the encryption process can be kept low compared to the case where the encryption is performed by using the
  • the first encryption processing unit and the second encryption processing unit each encrypt the data to be transmitted between the first and second wireless communication devices. Encrypted with the encryption error judgment data added, and the data output processing unit determines whether the decryption result of the encryption error judgment data is correct among the first decrypted data and the second decrypted data is output as the data to be transmitted.
  • data to be transmitted is encrypted and transmitted with known encryption error judgment data added between transmission and reception. Therefore, the second wireless communication device on the receiving side can determine whether or not the encryption algorithm is functioning properly based on the decryption result of the encryption error determination data. It becomes possible to select the decrypted data corresponding to the encryption method used as the data to be transmitted.
  • the packet generation processing unit generates a first encrypted data generated from the first encrypted data, the second encrypted data, and the data to be transmitted before encryption. and the data output processing unit outputs a second error checking code calculated from the first decoded data and the second decoded data to the received radio packet. The success/failure of the first decoded data and the second decoded data is determined by comparing with the first error check code included in the first error check code.
  • the second error checking code calculated from the first and second decoded data and the The correctness of the decoding result is determined by comparing with the first error checking code. Therefore, in this case as well, it is possible to determine whether or not the encryption algorithm is functioning properly, thereby making it possible to select the decrypted data corresponding to the properly functioning encryption method as the data to be transmitted. Become.
  • a fourth aspect of the present invention relates to a wireless communication device used as a transmitting side in a wireless communication system for transmitting data to be transmitted using a one-way communication method, wherein the wireless communication device uses a first cipher an encryption processing unit, a second encryption processing unit, a packet generation processing unit, and a transmission processing unit.
  • the first encryption processing unit encrypts the data to be transmitted using a first encryption method to generate first encrypted data.
  • the second encryption processing unit encrypts the data to be transmitted using a second encryption method having a different encryption algorithm from the first encryption method to generate second encrypted data.
  • a packet generation processing unit generates a wireless packet including the first encrypted data and the second encrypted data.
  • the transmission processing unit transmits the wireless packet.
  • the first encryption method can be obtained only by providing the receiver wireless communication device with the decryption method corresponding to the first and second encryption methods used by the transmitter wireless communication device.
  • encryption processing using multiple encryption methods in layers without establishing time-series synchronization for encryption and corresponding decryption processing with the receiving side encrypted data can be sent to the receiver without
  • the packet generation processing unit serially arranges the first encrypted data and the second encrypted data into the single wireless packet and inserts them into the wireless packet for transmission.
  • the radio packet is generated. According to the fifth aspect of the present invention, it is possible to efficiently transmit the first and second encrypted data using a small number of wireless packets.
  • the packet generation processing unit distributes the first encrypted data and the second encrypted data to different first wireless packets and second wireless packets, respectively. and the transmission processing unit distributes and transmits the first wireless packet and the second wireless packet in time series.
  • the wireless communication device on the receiving side can correctly decode the data to be transmitted from the wireless packet.
  • the first encryption processing unit and the second encryption processing unit each divide the data to be transmitted in time series to generate a plurality of divided data, encrypting the plurality of divided data by the first encryption method and the second encryption method, respectively, to generate a plurality of first encrypted divided data and a plurality of second encrypted divided data;
  • the packet generation processing unit distributes the plurality of first encrypted divided data and the plurality of second encrypted divided data into a plurality of wireless packets while each having a unique sequence number representing the order of division. and the transmission processing unit distributes and transmits the plurality of wireless packets in time series.
  • the data to be transmitted can be transmitted without omission.
  • the wireless communication device on the receiving side can reliably restore the data before division from the plurality of pieces of divided data based on the unique sequence number.
  • An eighth aspect of the present invention relates to a wireless communication device used as a receiving side in a wireless communication system for transmitting data to be transmitted using a one-way communication method, wherein the wireless communication device includes a reception processing unit and , a first decoding processing unit, a second decoding processing unit, and a data output processing unit.
  • the reception processing unit receives the wireless packet transmitted by the one-way communication method.
  • the first decryption processing unit decrypts first encrypted data included in the wireless packet by a first decryption method corresponding to a first encryption method to generate first decrypted data.
  • the second decryption processing unit decrypts the second encrypted data contained in the wireless packet by a second decryption method corresponding to a second encryption method having a different encryption algorithm from the first encryption method. Decrypt to generate second decoded data.
  • the data output processing unit outputs at least one of the first decoded data and the second decoded data as the data to be transmitted.
  • the wireless communication device on the receiving side only has decryption methods corresponding to the first and second encryption methods used for encryption by the wireless communication device on the transmitting side.
  • it supports encryption processing using multiple encryption methods in layers without establishing time-series synchronization for decryption processing with the transmitting side. Encrypted data can be received and decrypted without requiring a decryption process.
  • developers no longer need to conduct a huge number of verification tests to prove that their cryptographic algorithms do not contain bugs, which greatly reduces the development load.
  • the confidentiality of transmission data can be maintained by a simple encryption process without time-series synchronization between transmission and reception.
  • FIG. 1 is a diagram showing the overall configuration of a radio communication system according to one embodiment of the present invention.
  • FIG. 2 is a block diagram showing the hardware configuration of a sensing device used as the first wireless communication device in the system shown in FIG.
  • FIG. 3 is a block diagram showing the software configuration of the sensing device used as the first wireless communication device in the system shown in FIG.
  • FIG. 4 is a block diagram showing the hardware configuration of a mobile terminal used as a second wireless communication device in the system shown in FIG.
  • FIG. 5 is a block diagram showing the software configuration of the mobile terminal used as the second wireless communication device in the system shown in FIG.
  • FIG. 6 is a flow chart showing a processing procedure and processing contents of sensing data transmission processing executed by the control unit of the sensing device shown in FIG. FIG.
  • FIG. 7 is a flowchart showing a processing procedure and processing contents of sensing data reception processing executed by the control unit of the mobile terminal shown in FIG.
  • FIG. 8 is a diagram for explaining an example of transmission/reception operations of BLE advertising.
  • FIG. 9 is a diagram illustrating the data structure of wireless packets transmitted and received in BLE.
  • FIG. 10 is a diagram showing the data structure of the PDU field of the advertisement packet.
  • 11 is a diagram showing an example of a data structure stored in a payload of a PDU field of a wireless packet transmitted by the sensing device shown in FIG. 3.
  • FIG. 1 is a diagram showing the overall configuration of a radio communication system according to one embodiment of the present invention.
  • a wireless communication system transmits sensing data acquired by a sensing device SD functioning as a first wireless communication device from the sensing device SD to a second wireless communication using one-way communication by BLE advertising. It transmits to the portable terminal UT functioning as a communication device. Then, the transmitted sensing data is transferred from the portable terminal UT to the server device SV via the network NW.
  • the network NW includes, for example, the Internet and an access network for accessing the Internet.
  • the access network for example, a mobile radio communication network or a wireless LAN (Local Area Network) that adopts the 4G or 5G standard is used, but is not limited thereto.
  • the server device SV consists of a cloud computer or web computer operated by, for example, a medical health institution or a health information service provider, and collects and manages the user's sensing data.
  • Sensing device SD 2 and 3 are block diagrams showing the hardware configuration and software configuration of sensing device SD, respectively.
  • the sensing device SD is, for example, a sphygmomanometer, and includes a control unit 1, a sensing unit 2, and a communication module 3.
  • the sensing unit 2 measures sensing data including blood pressure data under the control of the control unit 1 and outputs the measured sensing data to the control unit 1 .
  • the sensing unit 2 may be a device that measures other biological information such as heart rate, electrocardiographic waveform, blood sugar level, amount of activity, stress level, etc., alone or in combination, in addition to the blood pressure data.
  • the communication module 3 transmits wireless packets to the mobile terminal UT by one-way communication according to the communication protocol defined by the BLE advertising standard.
  • the communication module 3 is not limited to being built in the sensing device SD, and may be externally provided as an attached communication adapter. It may be a communication module provided in the box (STB).
  • the control unit 1 includes a control section 11 using a hardware processor such as a central processing unit (CPU).
  • a hardware processor such as a central processing unit (CPU).
  • the control unit 11 may include a DSP (Digital Signal Processor) for performing encryption processing and the like.
  • DSP Digital Signal Processor
  • a storage unit having a program storage unit 12 and a data storage unit 13, a sensor interface (hereinafter referred to as I/F) 14, and a communication I/F 15. be.
  • I/F sensor interface
  • the sensor I/F 14 Under the control of the control unit 11, the sensor I/F 14 receives and receives various control signals related to the operation of the sensing unit 2, and receives sensing data output from the sensing unit 2 and transfers it to the control unit 11. Under the control of the control unit 11 , the communication I/F 15 transmits and receives various control signals related to the operation of the communication module 3 and processes to output packets generated by the control unit 11 to the communication module 3 .
  • the program storage unit 12 includes, for example, a non-volatile memory such as a HDD (Hard Disk Drive) or SSD (Solid State Drive) that can be written and read at any time as a storage medium, and a non-volatile memory such as a ROM (Read Only Memory). , and in addition to middleware such as an OS (Operating System), it stores programs necessary for executing various control processes according to one embodiment.
  • a non-volatile memory such as a HDD (Hard Disk Drive) or SSD (Solid State Drive) that can be written and read at any time as a storage medium
  • a non-volatile memory such as a ROM (Read Only Memory).
  • middleware such as an OS (Operating System)
  • OS Operating System
  • the data storage unit 13 is, for example, a combination of a non-volatile memory such as an SSD that can be written and read at any time and a volatile memory such as a RAM (Random Access Memory) as a storage medium, and implements one embodiment.
  • a sensing data storage unit 131 is provided as a main storage unit necessary for the detection.
  • the sensing data storage unit 131 is used to store sensing data measured by the sensing unit 2 together with information representing the date and time of the measurement.
  • the data storage unit 13 also includes a storage area for temporarily holding data generated during various processes of the control unit 11 .
  • the control unit 11 includes a sensing data acquisition processing unit 111, a first encryption processing unit 112, a second encryption processing unit 113, a wireless packet A generation processing unit 114 and a transmission processing unit 115 are provided. These processing units 111 to 115 are realized by causing the hardware processor of the control unit 11 to execute the programs stored in the program storage unit 12 .
  • the sensing data acquisition processing unit 111 takes in the sensing data obtained by this measurement operation via the sensor I/F 14 . Then, a process of storing the captured sensing data in the sensing data storage unit 131 in association with information representing the date and time of measurement is performed.
  • the first encryption processing unit 112 and the second encryption processing unit 113 perform the following processes. (1) Each time the measurement operation is performed, the sensing data is read from the sensing data storage unit 131, and the read sensing data is encrypted by a first encryption method and a second encryption method, respectively. generating first encrypted data and second encrypted data by. Prior to the encryption, encryption error determination data known between transmission and reception is added to the sensing data.
  • first encryption method and the second encryption method methods with mutually different encryption algorithms are selected from an encryption library prepared in advance and used.
  • a block cipher such as AES-128 is used as the first encryption method
  • a block cipher such as DES, which uses a different unit of encrypted data from AES-128, is used as the second encryption method.
  • Each method is used, but is not limited to these.
  • (a) is a process of dividing the sensing data in time series into, for example, unit lengths to generate a plurality of divided data.
  • the threshold value is set to a value such that the length of one piece of encrypted divided data does not exceed the payload capacity of one packet used in BLE advertising, for example.
  • the wireless packet generation processing unit 114 converts the first encrypted data generated by the first encryption processing unit 112 and the second encrypted data generated by the second encryption processing unit 113 into For example, it is inserted into the payload of one packet used in BLE advertising. Note that an example of the data structure of a radio packet used in BLE advertising will be described in the operation example.
  • the transmission processing unit 115 outputs the packet generated by the wireless packet generation processing unit 114 to the communication module 3 via the communication I/F 15, and from the communication module 3 according to the communication protocol defined by the BLE advertising regulations. Processing for transmission to the mobile terminal UT is performed.
  • Mobile terminal UT 4 and 5 are block diagrams showing the hardware configuration and software configuration of the mobile terminal UT, respectively.
  • a mobile terminal UT is, for example, a smartphone owned by a user.
  • a portable terminal UT a tablet-type terminal, a wearable-type terminal, a notebook-type personal computer, or the like may be used as long as the terminal is owned by the user.
  • the mobile terminal UT includes a control unit 5, a BLE communication module 6, a mobile radio communication module 7, and an input/output device 8.
  • the BLE communication module 6 receives BLE advertising wireless packets according to the communication protocol defined by the BLE advertising standard.
  • the mobile radio communication module 7 uses the radio access method and communication protocol defined by the mobile communication network to transmit and receive data to and from the server device SV via the network NW.
  • LTE Long Time Evolution
  • 4G or 5G is used as the radio access scheme.
  • the input/output device 8 is, for example, a display screen using a liquid crystal or an organic EL, and a touch-type input sheet adopting a pressure-sensitive method or a capacitive method. Used to display display data.
  • the control unit 5 includes a control section 51 using a hardware processor such as a central processing unit.
  • a storage unit having a program storage section 52 and a data storage section 53 , communication I/Fs 54 and 55 and an input/output I/F 56 are connected to the control section 51 via a bus 57 .
  • the communication I/F 54 takes in the BLE advertised wireless packet received by the BLE communication module 6 and passes it to the control unit 51 .
  • the communication I/F 55 outputs the sensing data output from the control unit 51 to the mobile wireless communication module 7 and causes it to be transmitted according to the communication protocol defined by the mobile communication network.
  • the input/output I/F 56 takes in the operation data input in the input/output device 8 and transfers it to the control unit 51, and outputs the display data output from the control unit 51 to the input/output device 8 for display.
  • the program storage unit 52 is configured, for example, by combining a non-volatile memory such as an SSD that can be written and read at any time as a storage medium and a non-volatile memory such as a ROM. It stores programs necessary for executing various control processes according to the embodiment.
  • the data storage unit 53 is, for example, a combination of a non-volatile memory such as an SSD, which can be written and read at any time, and a volatile memory such as a RAM, as storage media.
  • a non-volatile memory such as an SSD
  • a volatile memory such as a RAM
  • an encrypted data storage unit 531, a first decrypted data storage unit 532, a second decrypted data storage unit 533, and a sensing data storage unit 534 are provided.
  • the data storage unit 53 also includes a storage area for temporarily holding data generated during various processes of the control unit 51 .
  • the encrypted data storage unit 531 is used to temporarily store the first and second encrypted data extracted from the payload of the received wireless packet.
  • the first decrypted data storage unit 532 is used to store the decrypted data of the first encrypted data.
  • the second decrypted data storage unit 533 is used to store the decrypted data of the second encrypted data.
  • the sensing data storage unit 534 is used to store correctly decoded data among the above decoded data as received sensing data.
  • the control unit 51 has, as main processing functions according to one embodiment, a reception processing unit 511, a wireless packet decomposition processing unit 512, a first decoding processing unit 513, a second decoding processing unit 514, a data selection processing 515 and a sensing data transfer processing unit 516 .
  • These processing units 511 to 516 are realized by causing the hardware processor of the control unit 51 to execute programs stored in the program storage unit 52 .
  • the reception processing unit 511 receives the BLE advertising wireless packet received by the BLE communication module 6 via the communication I/F 54 and performs processing for passing the received wireless packet to the wireless packet decomposition processing unit 512 .
  • the wireless packet decomposition processing unit 512 extracts the payload by performing depacketization processing for decomposing the wireless packet passed from the reception processing unit 511, and performs an error check on the data inserted in the payload. Extracting the first encrypted data and the second encrypted data. Then, a process of temporarily storing the extracted first encrypted data and second encrypted data in the encrypted data storage unit 531 is performed.
  • the first decryption processing unit 513 reads the first encrypted data from the encrypted data storage unit 531, and decrypts the read first encrypted data corresponding to the first encryption method prepared in advance. A process of decoding according to the method and storing the decoded data in the first decoded data storage unit 532 is performed.
  • the second decryption processing unit 514 reads the second encrypted data from the encrypted data storage unit 531, and decrypts the read second encrypted data corresponding to the second encryption method prepared in advance. A process of decoding according to the method and storing the decoded data in the second decoded data storage unit 533 is performed.
  • the data selection processing unit 515 reads the decoded data from the first decoded data storage unit 532 and the second decoded data storage unit 533, respectively, and determines whether or not these decoded data are correctly decoded. Then, the decoded data of the correctly determined side is stored in the sensing data storage unit 534 as the received sensing data. An example of the processing for determining whether or not the decoded data is correctly decoded will be described in the operation example.
  • the sensing data transfer processing unit 516 reads the untransmitted sensing data from the sensing data storage unit 534, and transmits the read sensing data via the communication I/F 55. Output to mobile radio communication module 7 . Then, the sensing data is transmitted from the mobile radio communication module 7 to the server device SV via the network NW in accordance with the communication protocol defined by the mobile communication network.
  • FIG. 6 is a flow chart showing the processing procedure and processing contents of the operation executed by the control unit 11 of the sensing device SD on the transmission side.
  • step S11 Under the control of the sensing data acquisition processing unit 111, the sensing data measured and output by the sensing unit 2 is transmitted to the sensor I/F 14. and stores the acquired sensing data in the sensing data storage unit 131 after adding information representing the date and time of measurement.
  • systolic blood pressure, diastolic blood pressure, and pulse rate are obtained as sensing data.
  • Other biological information relating to value, activity amount, stress level, etc. may be included singly or in combination.
  • the first encryption processing unit 112 and the second encryption processing unit 113 read the sensing data from the sensing data storage unit 131, and store the read sensing data with encryption error determination information known between transmission and reception. Append data.
  • This encryption error determination data is used by the mobile terminal UT on the receiving side to determine which of the first encrypted data and the second encrypted data has been correctly decrypted.
  • step S12 the first encryption processing unit 112 and the second encryption processing unit 113 predict the data length after the encryption processing of the sensing data to which the encryption error determination data is added, It is determined whether or not the data length is equal to or greater than the threshold. As a result of this determination, if the data length of the sensing data is equal to or greater than the threshold value, the first encryption processing unit 112 and the second encryption processing unit 113 convert the encrypted data of the sensing data into one packet. is difficult to insert into the payload of Then, in step S13, the sensing data to which the encryption error determination data has been added is divided into unit lengths to generate a plurality of divided data, and the generated plurality of divided data are temporarily stored in the data storage unit 13. .
  • step S14 the first encryption processing unit 112 and the second encryption processing unit 113 each generate a sequence number indicating the division order for each of the divided data, The generated sequence number is given to each corresponding divided data.
  • sequence numbers may be set to have different number systems between the first encryption processing unit 112 and the second encryption processing unit 113, or one sequence number is set for each PDU. may
  • step S15 the first encryption processing unit 112 reads a plurality of divided data of the sensing data, and encrypts each divided data using a first encryption method prepared in advance. .
  • step S16 the second encryption processing unit 113 encrypts each of the divided data using a second encryption method with a different encryption algorithm from the first encryption method.
  • the first encryption processing unit 112 and the second encryption processing encrypts the sensing data to which the encryption error determination data has been added, as it is, by the first encryption method and the second encryption method.
  • step S17 (1-3) Generation of BLE Wireless Packet
  • a new node periodically transmits an advertisement packet announcing its own existence.
  • the new node enters a low power sleep state between transmissions of advertisement packets. This makes it possible to reduce the power consumption of the node.
  • the receiving side of advertisement packets since the receiving side of advertisement packets also operates intermittently, power consumption accompanying transmission and reception of advertisement packets is small.
  • FIG. 9 is a diagram showing the basic structure of a BLE wireless communication packet.
  • a BLE wireless communication packet consists of a 1-byte preamble, a 4-byte access address, a 2 to 39-byte (variable) protocol data unit (PDU: Protocol Data Unit), and a 3-byte cyclic redundancy checksum (CRC: Cyclic Redundancy Checksum) and The length of a BLE wireless communication packet is 10-47 bytes, depending on the length of the PDU.
  • a 10-byte BLE wireless communication packet (PDU is 2 bytes), also called an Empty PDU packet, is periodically exchanged between the master and the slave. Note that the PDU is expanded from 2 to 257 by using the Extended Advertising function of Bluetooth 5.
  • the preamble field is prepared for synchronization of BLE wireless communication, and stores repetitions of "01" or "10".
  • the access address stores a fixed number for the advertising channel and a random number for the data channel.
  • the CRC field is used for reception error detection.
  • the CRC calculation range is only the PDU field.
  • the BLE wireless communication packet is an advertisement packet.
  • the PDU field of the advertisement packet will be explained using FIG. Note that the PDU field of a data communication packet, which is a BLE wireless communication packet transmitted over a data channel, has a data structure different from the structure shown in FIG. omitted.
  • the PDU field of the advertisement packet includes a 2-byte header and a payload of 0 to 37 bytes (variable).
  • the header further includes a 4-bit PDU Type field, a 2-bit unused field, a 1-bit TxAdd field, a 1-bit RxAdd field, a 6-bit Length field, and a 2-bit unused field. include.
  • a value indicating the type of PDU is stored in the PDU Type field.
  • Several values such as “connectable advertising” and “unconnectable advertising” are already defined as values indicating the type of PDU.
  • the TxAdd field stores a flag indicating whether or not there is a transmission address in the payload.
  • the RxAdd field stores a flag indicating whether or not there is a reception address in the payload.
  • a value indicating the byte size of the payload is stored in the Length field.
  • any data can be stored in the payload.
  • encrypted data of sensing data is inserted into this payload and transmitted as follows. That is, under the control of the wireless packet generation processing unit 114, the control unit 11 of the sensing device SD stores data including the first encrypted data in the payload of one advertisement packet as shown in FIG.
  • the unit 100, the data unit 200 containing the second encrypted data, and the CRC 204 are inserted side by side so as to be time division multiplexed.
  • Each data unit 100, 200 consists of ID fields 101, 201, Time fields 102, 202, and data fields 103, 203.
  • the first encrypted data and the second encrypted data are inserted into the data fields 103 and 203, respectively.
  • the payload of one advertisement packet one of a plurality of first encrypted split data and second encrypted split data is inserted, and the other first encrypted split data and second encrypted split data are inserted in other advertisement packets are distributed among payloads and inserted sequentially.
  • ID fields 101 and 201 store an identifier representing the user, but instead of or in addition to the identifier representing the user, an identifier representing the sensing device SD or the mobile terminal UT may be stored.
  • the Time fields 102 and 202 store information representing the date and time of measurement.
  • the CRC 204 is generated from the sensing data before the first encrypted data and the second encrypted data are encrypted, and the receiving side checks whether the decryption results of the first and second encrypted data are correct or not. Used for judgment.
  • the control unit 11 of the sensing device SD subsequently transmits the generated advertisement in step S18 under the control of the transmission processing unit 115.
  • the document packet is output to the communication module 3 via the communication I/F 15 .
  • the communication module 3 transmits the advertisement packet as a BLE wireless packet for a certain period of time according to the communication protocol defined by the BLE advertising standard.
  • the control unit 11 of the sensing device SD determines in step S19 whether or not the transmission of all the encrypted data has been completed. As a result of this determination, if unsent encrypted data remains, such as when the sensing data is divided into a plurality of pieces, the process returns to steps S17 and S18, and wireless packets are sent to the unsent encrypted data. Execute generation and transmission processing. The control unit 11 of the sensing device SD similarly repeats the above process until transmission of all encrypted data is completed.
  • the transmission interval of advertisement packets is set to 20 msec at the fastest, for example.
  • the received advertisement packets are thinned out by the BLE communication module 6 and the OS of the control unit 51 in order to reduce the load. It is depacketized by the decomposition processing unit 512 . Therefore, when the sensing data is divided, the control unit 11 of the sensing device SD transmits the first encrypted divided data for a period of 500 msec, and transmits the second encrypted divided data for the next 500 msec transmission period. Repeat the transmission process.
  • FIG. 7 is a flow chart showing a processing procedure and processing contents of an operation executed by the control unit 51 of the mobile terminal UT on the receiving side.
  • the control unit 51 of the mobile terminal UT monitors the reception timing of BLE advertising in step S20. In this state, when the reception timing comes, the control unit 51 of the mobile terminal UT activates the BLE communication module 6 in step S21 under the control of the reception processing unit 511, and performs reception processing of BLE wireless packets.
  • the control unit 51 of the mobile terminal UT performs processing to decompose the received BLE wireless packet in step S22 under the control of the wireless packet decomposition processing unit 512, that is, Perform depacketization, which identifies the payload within the packet. Then, after performing a transmission error detection process using a CRC code on the encrypted data inserted in the payload, the first encrypted data and the second encrypted data are extracted from the payload, and the extracted Each of the above encrypted data is temporarily stored in the encrypted data storage unit 531 .
  • the first decryption processing unit 513 reads the first encrypted data from the encrypted data storage unit 531, and decrypts the read first encrypted data corresponding to the first encryption method.
  • the decoding process is performed using the method, thereby generating the first decoded data and storing it in the first decoded data storage unit 532 .
  • the second decryption processing unit 514 reads the second encrypted data from the encrypted data storage unit 531, and decrypts the read second encrypted data.
  • Decryption processing is performed using a decryption method corresponding to the encryption method No. 2, thereby generating second decrypted data and storing it in the first decrypted data storage unit 532 .
  • the first and second decoding processing units 513 and 514 determine whether or not the decoding processing has ended in step S25. As a result of this determination, if the undecrypted first encrypted data and second encrypted data remain in the encrypted data storage unit 531, the process returns to steps S23 and S24 to decrypt the undecrypted encrypted data. Execute the decryption process. Thereafter, in the same manner, until it is determined in step S25 that the decryption process has been completed, the decryption process is repeated for all the encrypted data, and the decrypted data are sequentially stored in the first and second decrypted data storage units 532 and 533. Let
  • each of the first and second encrypted data is an aggregate of a plurality of encrypted divided data
  • the decrypted data of each encrypted divided data can be obtained without omission.
  • each divided data after decoding is arranged in order of the sequence number and stored in the first and second decoded data storage units 532 and 533 .
  • the control unit 51 of the mobile terminal UT stores the first decoded data storage unit 532 and the second decoded data storage unit 533 in step S26.
  • the first decoded data and the second decoded data are respectively read from the , and it is determined whether or not these decoded data are correctly decoded.
  • Determination of whether or not it is decoded correctly is performed, for example, as follows. That is, first, on the transmitting side, as shown in FIG. 11, first encrypted data 103, second encrypted data 203, and these first and second encrypted data are encrypted in the advertisement PDU. Store and transmit the CRC 204 generated from the original sensing data before detection. On the other hand, the receiving side decrypts the first and second encrypted data stored in the received PDU, and calculates the CRC from each decrypted data. Success or failure of decoding is confirmed by determining whether or not the calculated CRC matches the CRC 204 stored in the received PDU.
  • the decrypted encryption error judgment data included in the first and second decrypted data are stored in the data storage unit 53 in advance. It is also possible to use a method of judging whether the decoding result is correct or not by comparing it with known encryption error judging data.
  • the data selection processing unit 515 selects the decoded data that is correctly decoded from among the first and second decoded data. After deleting the decrypted data of the encryption error determination data, the selected decrypted data is stored in the sensing data storage unit 534 as the received sensing data. Therefore, even if there is a bug in one of the first encryption method and the second encryption method, and the decrypted data of one of them is not decrypted correctly due to the effect, the decrypted data of the correctly decrypted side will be selected, which allows the sensing data to be received correctly.
  • step S27 the control unit 51 of the mobile terminal UT monitors the transfer timing of the sensing data in step S27. In this state, when the transfer timing comes, the control unit 51 of the mobile terminal UT reads the sensing data from the sensing data storage unit 534 under the control of the sensing data transfer processing unit 516 in step S28. Then, when the sensing data read at this time is composed of a plurality of divided data, the sensing data transfer processing unit 516 connects the plurality of divided data in sequence number order to edit one sensing data. do.
  • the sensing data transfer processing unit 516 outputs the read or edited sensing data to the mobile wireless communication module 7 via the communication I/F 55 .
  • the mobile radio communication module 7 transmits the sensing data to the server device SV via the network NW according to the communication protocol defined by the mobile communication network.
  • step S27 if the transfer timing has not yet come, the control unit 51 of the mobile terminal UT returns to monitoring the reception timing of the BLE advertisement in step S20. Monitoring of the transfer timing in step S27 is repeated.
  • the transfer of the sensing data may be performed each time one piece of sensing data is received.
  • the sensing data that has not yet been transmitted may be read out from the sensing data storage unit 534 and transferred all at once.
  • the cycle of this batch transfer can be varied by appropriately setting the transfer timing.
  • the following effects can be obtained.
  • the sensing device SD on the transmission side the measured sensing data are encrypted in parallel by first and second encryption methods with different encryption algorithms, respectively, and the first and second The second encrypted data is inserted into the payload of one advertisement packet and transmitted.
  • the mobile terminal UT on the receiving side converts the first and second encrypted data inserted into the payload of the received advertisement packet to the first and second encryption schemes.
  • Each of the decoded data is decoded according to the decoding method, and the correctly decoded data is selected from the decoded data and transferred to the server device SV.
  • the sensing data is divided into a plurality of pieces, and each piece of divided data and the second encryption method, and each encrypted divided data is transmitted together with a sequence number indicating the order of division.
  • the sensing data can be transmitted without omission using BLE advertisement regardless of the data length of the sensing data. can be restored correctly.
  • the sensing data is added with encryption error judgment data known between transmission and reception, encrypted, and transmitted.
  • the mobile terminal UT on the receiving side determines whether or not the first decoded data and the second decoded data are correctly decoded based on the decoding result of the encryption error determination data. Correctly decoded data can be reliably selected.
  • the mobile terminal UT on the receiving side can correctly decode the sensing data to be transmitted from the correctly transmitted advertisement packet.
  • sensing data is transmitted in parallel using two different encryption methods.
  • sensing data may be transmitted in parallel using three or more encryption methods.
  • the message information indicating the situation is sent to the mobile terminal UT.
  • the information may be transmitted from the terminal UT to the management server used by the manufacturer of the sensing device SD or the service provider. In this way, the manufacturer or service provider can quickly take countermeasures such as restoration of the encryption algorithm of the target encryption method.
  • the type of sensing data measured by the sensing device the type and configuration of the wireless communication device used on the transmitting side and the receiving side, the processing procedure and processing content, etc. do not deviate from the gist of the present invention. Various modifications can be made within the range.
  • the present invention is not limited to the above-described embodiments as they are, and can be embodied by modifying the constituent elements without departing from the gist of the invention at the implementation stage.
  • various inventions can be formed by appropriate combinations of the plurality of constituent elements disclosed in the above embodiments. For example, some components may be omitted from all components shown in the embodiments.
  • constituent elements of different embodiments may be combined as appropriate.
  • Wireless packet decomposition processing unit 513 First decryption processing unit 514 Second decryption processing unit 515
  • Data selection processing unit 516 Sensing data transfer processing unit 531 Encrypted data storage unit 532 First decrypted data storage unit 533... Second decoded data storage unit 534... Sensing data storage unit

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

送受間で時系列上の同期をとる必要がなくかつ簡単なデータ処理により伝送データの秘匿性を維持する。第1の無線通信装置と第2の無線通信装置との間で、伝送対象のデータを片方向通信方式を使用して伝送する際に、第1の無線通信装置では、伝送対象のデータを、暗号アルゴリズムが互いに異なる第1および第2の暗号化方式によりそれぞれ暗号化し、その各暗号化データを含む無線パケットを片方向通信方式により送信する。一方、第2の無線通信装置では、前記無線パケットを受信すると、受信された前記無線パケットに含まれる前記第1および第2の暗号化データをそれぞれ復号して第1および第2の復号データを生成し、生成された前記第1の復号データおよび前記第2の復号データの少なくとも一方を、前記伝送対象のデータとして出力する。

Description

無線通信システム、無線通信方法、無線通信装置およびプログラム
 この発明は、複数の無線通信装置間でデータを伝送する無線通信システムと、このシステムで使用される無線通信方法、無線通信装置およびプログラムに関する。
 例えば、血圧計により得られた血圧データをユーザの携帯端末に転送する場合のように、複数の装置間でセンシングデータを転送する方式として、近距離無線通信技術、特にBluetooth(登録商標)を使用する方式が知られている。Bluetoothの通信(コネクション)は、一般に無線LAN(Wireless Local Area Network)通信に比べると小規模かつ省電力に実現可能である。そして、Bluetoothの仕様のバージョン4.0により定義されるBLE(Bluetooth Low Energy)を使用すれば、従前の仕様に比べて消費電力をさらに少なくすることが可能であり、特にBLEアドバタイジングと呼ばれる片方向通信を利用すると、より高い低消費電力化が期待できる。
 ところが、BLEアドバタイジングでは、送受間のペアリングや暗号化の仕組みが規定されていない。このため、アドバタイジングパケットを用いてデータを転送すると、アドバタイジングパケットを受信可能な第三者の携帯端末においてもデータを受信することが可能となり、データの秘匿性が失われるおそれがある。
 そこで、データの秘匿性を保持するために、例えば複数の暗号鍵を時系列的に切り替えてビーコン識別子を暗号化する方式が提案されている(例えば特許文献1を参照)。また別の例として、例えば1つの配信情報を異なる暗号化手段により重層的に暗号化する方式も提案されている(例えば特許文献2を参照)。
日本国特開2018-037898号公報 日本国特開2018-157307号公報
 ところが、特許文献1において提案される方式では、暗号鍵を時系列的に切り替えるために送受間で常に時系列上の同期をとらなければならない。また、特許文献2において提案される方式では、データを複数の暗号化手段により重層的に暗号化するため、暗号化処理が複雑化して装置の処理負荷が大きくなるという課題がある。
 この発明は、上記課題に着目してなされたもので、送受間で時系列上の同期をとる必要がなく、かつ簡単な暗号化処理により伝送データの秘匿性を維持することが可能な技術を提供しようとするものである。
 上記課題を解決するためにこの発明の第1の態様は、第1の無線通信装置と第2の無線通信装置との間で、伝送対象のデータを片方向通信方式を使用して伝送する無線通信システムにおいて、前記第1の無線通信装置に、第1の暗号化処理部と、第2の暗号化処理部と、パケット生成処理部と、送信処理部とを備え、前記第2の無線通信装置に、受信処理部と、第1の復号処理部と、第2の復号処理部と、データ出力処理部とを備える。
 第1の暗号化処理部は、前記伝送対象のデータを、第1の暗号化方式により暗号化して第1の暗号化データを生成する。第2の暗号化処理部は、前記伝送対象のデータを、前記第1の暗号化方式とは暗号アルゴリズムが異なる第2の暗号化方式により暗号化して第2の暗号化データを生成する。パケット生成処理部は、前記第1の暗号化データおよび前記第2の暗号化データを含む無線パケットを生成する。送信処理部は、前記無線パケットを前記片方向通信方式により送信する。
 受信処理部は、前記無線パケットを受信する。第1の復号処理部は、前記無線パケットに含まれる前記第1の暗号化データを、前記第1の暗号化方式に対応する第1の復号方式により復号して第1の復号データを生成する。第2の復号処理部は、受信された前記無線パケットに含まれる前記第2の暗号化データを、前記第2の暗号化方式に対応する第2の復号方式により復号して第2の復号データを生成する。データ出力処理部は、前記第1の復号データおよび前記第2の復号データの少なくとも一方を、前記伝送対象のデータとして出力する。
 この発明の第1の態様によれば、第1の無線通信装置から第2の無線通信装置へ伝送対象データを伝送する際に、第1の無線通信装置において、伝送対象のデータが暗号アルゴリズムの異なる第1および第2の暗号化方式によりそれぞれ暗号化され、暗号化された各データが並行して第2の無線通信装置へ伝送されそれぞれ受信復号される。従って、送受間で第1および第2の暗号化方式を共有しておくだけで、送受間で暗号化および復号処理のための時系列上の同期が不要となり、かつ複数の暗号化方式を重層的に用いて暗号化する場合に比べ、暗号化処理に係る処理負荷を低く抑えることが可能となる。
 また、自作の暗号ライブラリに基づく暗号アルゴリズムを使用する場合に、仮に暗号アルゴリズムに含まれるバグの影響により受信側でデータが復号不能になっても、第1および第2の暗号化方式のうちの少なくとも一方が正しく復号されればよいため、簡易な方式により暗号化通信の信頼性を高く維持することができる。また、開発者は自作の暗号アルゴリズムについてバグが存在しないことを証明するための膨大な検証試験を実施する必要がなくなり、開発負荷を大幅に軽減できる。
 この発明の第2の態様は、前記第1の暗号化処理部および前記第2の暗号化処理部が、それぞれ前記伝送対象のデータを、前記第1および第2の無線通信装置間で既知の暗号化誤り判定用データを付加した状態で暗号化し、前記データ出力処理部が、前記第1の復号データおよび前記第2の復号データのうち、前記暗号化誤り判定用データの復号結果が正しい側の復号データを前記伝送対象のデータとして出力するようにしたものである。
 この発明の第2の態様によれば、伝送対象のデータが、送受間で既知の暗号化誤り判定用データが付加された状態で暗号化され伝送される。このため、受信側の第2の無線通信装置では上記暗号化誤り判定用データの復号結果をもとに、暗号アルゴリズムが正しく機能しているか否かを判定することができ、これにより正しく機能している暗号化方式に対応する復号データを伝送対象のデータとして選択することが可能となる。
 この発明の第3の態様は、前記パケット生成処理部が、前記第1の暗号化データと、前記第2の暗号化データと、暗号化前の前記伝送対象のデータから生成される第1の誤り検査符号とを含む無線パケットを生成し、前記データ出力処理部が、前記第1の復号データおよび前記第2の復号データから計算される第2の誤り検査符号を、受信された前記無線パケットに含まれる前記第1の誤り検査符号と比較することにより、前記第1の復号データおよび前記第2の復号データの成否を判定するようにしたものである。
 この発明の第3の態様によれば、受信側の第2の無線通信装置では、第1および第2の復号データから計算される第2の誤り検査符号と、受信された無線パケットに挿入されている第1の誤り検査符号とを比較することで、復号結果の正否が判定される。従って、この場合も、暗号アルゴリズムが正しく機能しているか否かを判定することができ、これにより正しく機能している暗号化方式に対応する復号データを伝送対象のデータとして選択することが可能となる。
 この発明の第4の態様は、伝送対象のデータを片方向通信方式を使用して伝送する無線通信システムにおいて送信側として使用される無線通信装置に関するもので、無線通信装置は、第1の暗号化処理部と、第2の暗号化処理部と、パケット生成処理部と、送信処理部とを備える。第1の暗号化処理部は、前記伝送対象のデータを、第1の暗号化方式により暗号化して第1の暗号化データを生成する。第2の暗号化処理部は、前記伝送対象のデータを、前記第1の暗号化方式とは暗号アルゴリズムが異なる第2の暗号化方式により暗号化して第2の暗号化データを生成する。パケット生成処理部は、前記第1の暗号化データおよび前記第2の暗号化データを含む無線パケットを生成する。送信処理部は、前記無線パケットを送信する。
 この発明の第4の態様によれば、受信側の無線通信装置に、送信側の無線通信装置が使用する第1および第2の暗号化方式に対応する復号方式を持たせるだけで、第1の態様と同様に、受信側との間で暗号化およびそれに対応する復号処理のための時系列上の同期を確立することなく、かつ複数の暗号化方式を重層的に用いた暗号化処理を行うことなく、暗号化データを受信側へ送信することができる。また、開発者は自作の暗号アルゴリズムについてバグが存在しないことを証明するための膨大な検証試験を実施する必要がなくなり、開発負荷を大幅に軽減できる。
 この発明の第5の態様は、前記パケット生成処理部が、前記第1の暗号化データおよび前記第2の暗号化データを単一の前記無線パケットに直列に並べて挿入することにより、伝送用の前記無線パケットを生成するようにしたものである。 
 この発明の第5の態様によれば、第1および第2の暗号化データを少数の無線パケットにより効率良く伝送することが可能となる。
 この発明の第6の態様は、前記パケット生成処理部が、前記第1の暗号化データおよび前記第2の暗号化データを、それぞれ異なる第1の無線パケットおよび第2の無線パケットに分散して挿入し、前記送信処理部が、前記第1の無線パケットおよび前記第2の無線パケットを時系列上で分散して送信するようにしたものである。
 この発明の第6の態様によれば、例えば1つの無線パケットがフェージング等の無線伝送路の一時的な通信品質の劣化の影響を受けて正しく伝送されなかったとしても、異なる他の時間に送信された無線パケットが正しく伝送されれば、受信側の無線通信装置では当該無線パケットから伝送対象のデータを正しく復号することが可能となる。
 この発明の第7の態様は、前記第1の暗号化処理部および前記第2の暗号化処理部が、それぞれ、前記伝送対象のデータを時系列上で分けて複数の分割データを生成し、前記複数の分割データを前記第1の暗号化方式および前記第2の暗号化方式によりそれぞれ暗号化して、複数の第1の暗号化分割データおよび複数の第2の暗号化分割データを生成し、前記パケット生成処理部が、前記複数の第1の暗号化分割データおよび前記複数の第2の暗号化分割データを、それぞれ分割順序を表す固有のシーケンス番号を付与した状態で複数の無線パケットに分散して挿入し、前記送信処理部が、前記複数の無線パケットを時系列上で分散して送信するようにしたものである。
 この発明の第7の態様によれば、伝送対象のデータのデータ長が長く、その暗号化データを1個の無線パケットにより伝送できない場合でも、上記伝送対象のデータをもれなく伝送することが可能となる。また、受信側の無線通信装置では、複数の分割データから上記固有のシーケンス番号をもとに分割前のデータを確実に復元することが可能となる。
 この発明の第8の態様は、伝送対象のデータを片方向通信方式を使用して伝送する無線通信システムにおいて受信側として使用される無線通信装置に関するもので、無線通信装置は、受信処理部と、第1の復号処理部と、第2の復号処理部と、データ出力処理部とを備える。受信処理部は、前記片方向通信用方式により伝送された無線パケットを受信する。第1の復号処理部は、前記無線パケットに含まれる第1の暗号化データを、第1の暗号化方式に対応する第1の復号方式により復号して第1の復号データを生成する。第2の復号処理部は、前記無線パケットに含まれる第2の暗号化データを、前記第1の暗号化方式とは暗号アルゴリズムが異なる第2の暗号化方式に対応する第2の復号方式により復号して、第2の復号データを生成する。データ出力処理部は、前記第1の復号データおよび前記第2の復号データの少なくとも一方を、前記伝送対象のデータとして出力する。
 この発明の第8の態様によれば、受信側の無線通信装置は、送信側の無線通信装置が暗号化に使用する第1および第2の暗号化方式に対応する復号方式を備えておくだけで、第1の態様と同様に、送信側との間で復号処理のための時系列上の同期を確立することなく、かつ複数の暗号化方式を重層的に用いた暗号化処理に対応する復号処理を必要とすることなく、暗号化データを受信し復号することができる。また、開発者は自作の暗号アルゴリズムについてバグが存在しないことを証明するための膨大な検証試験を実施する必要がなくなり、開発負荷を大幅に軽減できる。
 すなわちこの発明によれば、送受間で時系列上の同期をとることなく、かつ簡単な暗号化処理により伝送データの秘匿性を維持することができる。
図1は、この発明の一実施形態に係る無線通信システムの全体構成を示す図である。 図2は、図1に示したシステムにおいて第1の無線通信装置として使用されるセンシング装置のハードウェア構成を示すブロック図である。 図3は、図1に示したシステムにおいて第1の無線通信装置として使用されるセンシング装置のソフトウェア構成を示すブロック図である。 図4は、図1に示したシステムにおいて第2の無線通信装置として使用される携帯端末のハードウェア構成を示すブロック図である。 図5は、図1に示したシステムにおいて第2の無線通信装置として使用される携帯端末のソフトウェア構成を示すブロック図である。 図6は、図3に示したセンシング装置の制御部が実行するセンシングデータ送信処理の処理手順と処理内容を示すフローチャートである。 図7は、図5に示した携帯端末の制御部が実行するセンシングデータ受信処理の処理手順と処理内容を示すフローチャートである。 図8は、BLEアドバタイジングの送受信動作の一例を説明するための図である。 図9は、BLEにおいて送受信される無線パケットのデータ構造を例示する図である。 図10は、アドバタイズドメントパケットのPDUフィールドのデータ構造を示す図である。 図11は、図3に示したセンシング装置が送信する無線パケットのPDUフィールドのペイロードに格納されるデータ構造の一例を示す図である。
 以下、図面を参照してこの発明に係わる実施形態を説明する。
 [一実施形態]
 (構成例)
 (1)システム
 図1は、この発明の一実施形態に係る無線通信システムの全体構成を示す図である。 
 一実施形態に係る無線通信システムは、第1の無線通信装置として機能するセンシング装置SDにより取得されるセンシングデータを、当該センシング装置SDからBLEアドバタイジングによる片方向通信を使用して、第2の無線通信装置として機能する携帯端末UTへ伝送する。そして、伝送された上記センシングデータを、携帯端末UTからネットワークNWを介してサーバ装置SVへ転送するように構成される。
 ネットワークNWは、例えばインターネットとこのインターネットにアクセスするためのアクセスネットワークとを含む。アクセスネットワークとしては、例えば4Gまたは5G規格を採用する移動無線通信ネットワークや無線LAN(Local Area Network)等が用いられるが、その限りではない。
 サーバ装置SVは、例えば医療保健機関または健康情報のサービス事業者等が運営するクラウドコンピュータまたはWebコンピュータからなり、ユーザのセンシングデータを収集し管理する。
 (2)装置
 (2-1)センシング装置SD
 図2および図3は、それぞれセンシング装置SDのハードウェア構成およびソフトウェア構成を示すブロック図である。
 センシング装置SDは、例えば血圧計からなり、制御ユニット1と、センシングユニット2と、通信モジュール3とを備えている。センシングユニット2は、制御ユニット1の制御の下で血圧データを含むセンシングデータの測定動作を行い、測定されたセンシングデータを制御ユニット1へ出力する。なお、センシングユニット2は、血圧データ以外に、心拍数や心電波形、血糖値、活動量、ストレス度等に係るその他の生体情報を単独または複合して測定するデバイスであってもよい。
 通信モジュール3は、上記携帯端末UTに対し、BLEアドバタイジングの規格で定義された通信プロトコルに従って片方向通信により無線パケットを送信する。なお、通信モジュール3は、センシング装置SDに内蔵されるものに限らず、付属の通信用アダプタとして外設されるものであってもよく、また独立して使用されるIoT機器やルータ、セットトップボックス(STB)が備える通信モジュールであってもよい。
 制御ユニット1は、例えば中央処理ユニット(Central Processing Unit:CPU)等のハードウェアプロセッサを使用した制御部11を備える。なお、制御部11は、暗号化処理等を行うためにDSP(Digital Signal Processor)を備えていてもよい。
 上記制御部11には、バス16を介して、プログラム記憶部12およびデータ記憶部13を有する記憶ユニットと、センサインタフェース(以後インタフェースをI/Fと記載する)14、通信I/F15が接続される。
 センサI/F14は、制御部11の制御の下、センシングユニット2の動作に係る各種制御信号の授受、およびセンシングユニット2から出力されるセンシングデータを受け取って制御部11に渡す処理を行う。通信I/F15は、制御部11の制御の下、通信モジュール3の動作に係る各種制御信号の授受と、制御部11により生成されるパケットを通信モジュール3へ出力する処理を行う。
 プログラム記憶部12は、例えば、記憶媒体としてHDD(Hard Disk Drive)またはSSD(Solid State Drive)等の随時書込みおよび読出しが可能な不揮発性メモリと、ROM(Read Only Memory)等の不揮発性メモリとを組み合わせて構成したもので、OS(Operating System)等のミドルウェアに加えて、一実施形態に係る各種制御処理を実行するために必要なプログラムを格納する。
 データ記憶部13は、例えば、記憶媒体として、SSD等の随時書込みおよび読出しが可能な不揮発性メモリと、RAM(Random Access Memory)等の揮発性メモリとを組み合わせたもので、一実施形態を実施するために必要な主たる記憶部として、センシングデータ記憶部131を備えている。
 センシングデータ記憶部131は、センシングユニット2により測定されたセンシングデータを、その測定日時を表す情報等と共に記憶するために使用される。なお、データ記憶部13は、制御部11の各種処理の過程で生成されるデータを一時保持する記憶領域も備える。
 制御部11は、一実施形態を実施するために必要な主たる処理機能として、センシングデータ取得処理部111と、第1の暗号化処理部112と、第2の暗号化処理部113と、無線パケット生成処理部114と、送信処理部115とを備える。これらの処理部111~115は、何れもプログラム記憶部12に格納されたプログラムを制御部11のハードウェアプロセッサに実行させることにより実現される。
 センシングデータ取得処理部111は、センシングユニット2により血圧値を含む生体情報の測定動作が行われた場合に、この測定動作により得られたセンシングデータをセンサI/F14を介して取り込む。そして、取り込んだ上記センシングデータを、測定日時を表す情報を対応付けてセンシングデータ記憶部131に記憶させる処理を行う。
 第1の暗号化処理部112および第2の暗号化処理部113は、以下の処理を行う。 
 (1) 上記測定動作が行われる毎に、上記センシングデータ記憶部131からセンシングデータを読み込み、読み込まれた上記センシングデータを第1の暗号化方式および第2の暗号化方式によりそれぞれ暗号化し、これにより第1の暗号化データおよび第2の暗号化データを生成する処理。なお、上記暗号化に先立ち、上記センシングデータには送受間で既知の暗号化誤り判定用データを付加する。
 上記第1の暗号化方式および第2の暗号化方式としては、暗号アルゴリズムが相互に異なる方式が、事前に用意された暗号ライブラリから選択され使用される。この例では、第1の暗号化方式として、AES-128等のブロック暗号方式が、また第2の暗号化方式としては上記AES-128とは暗号化データの単位が異なるDES等のブロック暗号化方式がそれぞれ使用されるが、これらに限るものではない。
 (2) 上記暗号化処理に先立ち、1個のセンシングデータの暗号化処理後のデータ長がしきい値を超えるか否かを予測し、上記データ長がしきい値を超えると予測される場合には、上記センシングデータを時系列上で例えば単位長ずつに区切って複数の分割データを生成する処理。なお、上記しきい値は、例えば上記暗号化後の1個の分割データの長さが、BLEアドバタイジングで用いられる1個のパケットのペイロード容量を超えない値に設定される。
 (3) センシングデータを複数に分割した場合に、各分割データの時系列上の順序を表すシーケンス番号を生成し、生成されたシーケンス番号をそれぞれ対応する分割データに付与する処理。なお、シーケンス番号は、第1の暗号化処理部112と第2の暗号化処理部113との間で、異なる値になるように生成する。
 無線パケット生成処理部114は、上記第1の暗号化処理部112により生成された第1の暗号化データと、上記第2の暗号化処理部113により生成された第2の暗号化データを、例えばBLEアドバタイジングで用いられる1個のパケットのペイロード中に挿入する。なお、BLEアドバタイジングで使用される無線パケットのデータ構造については、動作例において一例を説明する。
 送信処理部115は、上記無線パケット生成処理部114により生成されたパケットを、通信I/F15を介して通信モジュール3へ出力し、BLEアドバタイジングの規定により定義された通信プロトコルに従い、通信モジュール3から携帯端末UTに向けて送信させる処理を行う。
 (2-2)携帯端末UT
 図4および図5は、それぞれ携帯端末UTのハードウェア構成およびソフトウェア構成を示すブロック図である。
 携帯端末UTは、例えばユーザが所有するスマートフォンからなる。なお、携帯端末UTとしては、ユーザが所有するものであれば、他にタブレット型端末やウェアラブル型端末、ノート型のパーソナルコンピュータ等が用いられてもよい。
 携帯端末UTは、制御ユニット5と、BLE通信モジュール6と、移動無線通信モジュール7と、入出力デバイス8とを備える。
 BLE通信モジュール6は、BLEアドバタイジングの規格により定義された通信プロトコルに従い、BLEアドバタイジングの無線パケットを受信する。
 移動無線通信モジュール7は、移動通信ネットワークにより定義される無線アクセス方式および通信プロトコルを使用して、ネットワークNWを介してサーバ装置SVとの間でデータの送受信を行う。無線アクセス方式としては、例えばLTE(Long Time Evolution)(登録商標)、4Gまたは5Gが使用される。
 入出力デバイス8は、例えば液晶又は有機ELを用いた表示器の画面上に、感圧方式または静電容量方式を採用したタッチ式入力シートを重ねて配置したもので、各種操作データの入力および表示データの表示を行うために使用される。
 制御ユニット5は、中央処理ユニット等のハードウェアプロセッサを使用した制御部51を備える。この制御部51には、バス57を介して、プログラム記憶部52およびデータ記憶部53を有する記憶ユニットと、通信I/F54,55および入出力I/F56が接続される。
 通信I/F54は、BLE通信モジュール6により受信されたBLEアドバタイズの無線パケットを取り込んで制御部51に渡す。
 通信I/F55は、制御部51から出力されるセンシングデータを移動無線通信モジュール7へ出力し、移動通信ネットワークにより定義される通信プロトコルに従い送信させる。
 入出力I/F56は、上記入出力デバイス8において入力された操作データを取り込んで制御部51に渡すと共に、制御部51から出力された表示データを上記入出力デバイス8へ出力し表示させる。
 プログラム記憶部52は、例えば、記憶媒体としてSSD等の随時書込みおよび読出しが可能な不揮発性メモリと、ROM等の不揮発性メモリとを組み合わせて構成したもので、OS等のミドルウェアに加えて、一実施形態に係る各種制御処理を実行するために必要なプログラムを格納する。
 データ記憶部53は、例えば、記憶媒体として、SSD等の随時書込みおよび読出しが可能な不揮発性メモリと、RAM等の揮発性メモリと組み合わせたもので、一実施形態を実施するために必要な主たる記憶部として、暗号化データ記憶部531と、第1の復号データ記憶部532と、第2の復号データ記憶部533と、センシングデータ記憶部534とを備えている。なお、データ記憶部53は、制御部51の各種処理の過程で生成されるデータを一時保持する記憶領域も備える。
 暗号化データ記憶部531は、受信された無線パケットのペイロードから抽出された第1および第2の暗号化データを一時記憶するために使用される。
 第1の復号データ記憶部532は、上記第1の暗号化データの復号データを保存するために使用される。
 第2の復号データ記憶部533は、上記第2の暗号化データの復号データを保存するために使用される。
 センシングデータ記憶部534は、上記各復号データのうち正しく復号された復号データを、受信されたセンシングデータとして記憶するために使用される。
 制御部51は、一実施形態に係る主たる処理機能として、受信処理部511と、無線パケット分解処理部512と、第1の復号処理部513と、第2の復号処理部514と、データ選択処理部515と、センシングデータ転送処理部516とを備えている。これらの処理部511~516は、何れもプログラム記憶部52に格納されたプログラムを制御部51のハードウェアプロセッサに実行させることにより実現される。
 受信処理部511は、BLE通信モジュール6により受信されたBLEアドバタイジングの無線パケットを通信I/F54を介して受信し、受信された無線パケットを無線パケット分解処理部512に渡す処理を行う。
 無線パケット分解処理部512は、受信処理部511から渡された上記無線パケットに対しパケットを分解するデパケット処理を行うことでペイロードを抽出し、ペイロードに挿入されているデータに対し誤り検査を行って第1の暗号化データおよび第2の暗号化データを抽出する。そして、抽出された上記第1の暗号化データおよび第2の暗号化データを、暗号化データ記憶部531に一時記憶させる処理を行う。
 第1の復号処理部513は、上記暗号化データ記憶部531から第1の暗号化データを読み込み、読み込まれた第1の暗号化データを予め用意された第1の暗号化方式に対応する復号方式により復号し、その復号データを第1の復号データ記憶部532に保存する処理を行う。
 第2の復号処理部514は、上記暗号化データ記憶部531から第2の暗号化データを読み込み、読み込まれた第2の暗号化データを予め用意された第2の暗号化方式に対応する復号方式により復号し、その復号データを第2の復号データ記憶部533に保存する処理を行う。
 データ選択処理部515は、上記第1の復号データ記憶部532および第2の復号データ記憶部533からそれぞれ復号データを読み込み、これらの復号データが正しく復号されているか否かを判定する。そして、正しく判定されている側の復号データを受信されたセンシングデータとしてセンシングデータ記憶部534に記憶させる処理を行う。なお、復号データが正しく復号されているか否かの判定処理の一例は動作例において述べる。
 センシングデータ転送処理部516は、記憶された上記センシングデータの転送タイミングになると、上記センシングデータ記憶部534から未送信のセンシングデータを読み出し、読み出された上記センシングデータを通信I/F55を介して移動無線通信モジュール7へ出力する。そして、上記センシングデータを、移動通信ネットワークで規定される通信プロトコルに従い、移動無線通信モジュール7からネットワークNWを介してサーバ装置SVに向け送信させる処理を行う。
 (動作例)
 次に、以上のように構成された無線通信システムの動作例を、図6乃至図11を用いて説明する。
 (1)センシング装置SDの動作
 図6は、送信側となるセンシング装置SDの制御部11が実行する動作の処理手順と処理内容を示すフローチャートである。
 (1-1)センシングデータの取得
 センシング装置SDにおいて、被測定者がセンシングのための操作を行ったとする。センシング装置SDの制御部11は、上記操作をステップS10により検知すると、センシングデータ取得処理部111の制御の下、ステップS11において、センシングユニット2により測定されて出力されるセンシングデータをセンサI/F14を介して取得し、取得されたセンシングデータを、測定日時を表す情報を付加した後にセンシングデータ記憶部131に記憶させる。
 この例では、センシングデータとして、収縮期血圧(Systolic Blood Pressure)、拡張期血圧(Diastolic Blood Pressure)および脈拍数を表すデータが取得されるが、センシングデータには、心拍数や心電波形、血糖値、活動量、ストレス度等に係るその他の生体情報を単独または複合して含まれていてもよい。
 (1-2)センシングデータの暗号化
 上記測定動作が終了すると、センシング装置SDの制御部11は、次に第1の暗号化処理部112および第2の暗号化処理部113の制御の下、以下のように上記センシングデータに対する暗号化処理を実行する。
 すなわち、第1の暗号化処理部112および第2の暗号化処理部113は、センシングデータ記憶部131から上記センシングデータを読み込み、読み込まれた上記センシングデータに送受間で既知の暗号化誤り判定用データを付加する。この暗号化誤り判定用データは、受信側の携帯端末UTが第1の暗号化データおよび第2の暗号化データのいずれが正しく復号されたかを判定するために使用される。
 次に第1の暗号化処理部112および第2の暗号化処理部113は、ステップS12において、上記暗号化誤り判定用データが付加されたセンシングデータの暗号化処理後のデータ長を予測し、当該データ長がしきい値以上か否を判定する。この判定の結果、センシングデータのデータ長がしきい値以上であれば、第1の暗号化処理部112および第2の暗号化処理部113は、上記センシングデータの暗号化データを1個のパケットのペイロードに挿入することは困難であると判断する。そして、ステップS13により、上記暗号化誤り判定用データ付加後のセンシングデータを単位長毎に区切って複数の分割データを生成し、生成された上記複数の分割データをデータ記憶部13に一旦保存する。
 また、上記分割処理を行った場合、第1の暗号化処理部112および第2の暗号化処理部113は、それぞれステップS14において、上記各分割データに対し分割順序を表すシーケンス番号を生成し、生成された上記シーケンス番号を対応する各分割データに付与する。なお、上記シーケンス番号は、第1の暗号化処理部112および第2の暗号化処理部113間で異なる番号体系となるように設定されてもよいし、PDU単位でシーケンス番号が一つ設定されてもよい。
 次に第1の暗号化処理部112は、ステップS15において、上記センシングデータの複数の分割データを読み込み、各分割データに対しそれぞれ予め用意されている第1の暗号化方式を用いて暗号化する。
 一方、第2の暗号化処理部113は、ステップS16において、上記各分割データに対しそれぞれ上記第1の暗号化方式とは暗号アルゴリズムの異なる第2の暗号化方式を用いて暗号化する。
 なお、上記ステップS12においてデータ長がしきい値未満と判定され、上記ステップS13によりセンシングデータの分割処理が行われなかった場合には、第1の暗号化処理部112および第2の暗号化処理部113は、上記暗号化誤り判定用データ付加後のセンシングデータを、そのまま第1の暗号化方式および第2の暗号化方式によりそれぞれ暗号化する。
 (1-3)BLE無線パケットの生成
 センシング装置SDの制御部11は、次に無線パケット生成処理部114の制御の下、ステップS17において以下のように無線パケットの生成処理を実行する。
 先ず、BLEアドバタイズの無線通信方式についてその概要を説明する。図8乃至図11はその説明に使用するための図である。
 BLEにおいて採用されるパッシブスキャン方式では、図8に例示するように、新規ノードは自己の存在を周知するアドバタイズドメントパケットを定期的に送信する。この新規ノードは、アドバタイズドメントパケットを一度送信してから次に送信するまでの間に、低消費電力のスリープ状態に入る。これによりノードの消費電力を少なく抑えることが可能となる。また、アドバタイズドメントパケットの受信側も間欠的に動作するので、アドバタイズドメントパケットの送受信に伴う消費電力は僅かとなる。
 図9は、BLE無線通信パケットの基本構造を示す図である。BLE無線通信パケットは、1バイトのプリアンブルと、4バイトのアクセスアドレスと、2~39バイト(可変)のプロトコルデータユニット(PDU:Protocol Data Unit)と、3バイトの巡回冗長チェックサム(CRC:Cyclic Redundancy Checksum)とを含む。BLE無線通信パケットの長さは、PDUの長さに依存し、10~47バイトである。10バイトのBLE無線通信パケット(PDUは2バイト)は、Empty PDUパケットとも呼ばれ、マスタとスレイブ間で定期的に交換される。なお、Bluetooth 5のExtended Advertising機能を使用すると、PDUは2~257に拡張される。
 プリアンブルフィールドは、BLE無線通信の同期のために用意されており、「01」または「10」の繰り返しが格納される。アクセスアドレスは、アドバタイジングチャネルでは固定数値、データチャネルでは乱数のアクセスアドレスが格納される。CRCフィールドは、受信誤りの検出に用いられる。CRCの計算範囲は、PDUフィールドのみである。
 一実施形態では、BLEアドバタイジングの無線通信方式を使用するため、上記BLE無線通信パケットはアドバタイズドメントパケットとなる。 
 次に、図10を用いて、アドバタイズドメントパケットのPDUフィールドについて説明する。なお、データチャネル上で伝送されるBLE無線通信パケットであるデータ通信パケットのPDUフィールドは図10に示す構造とは異なるデータ構造を有するが、一実施形態ではデータ通信パケットを対象としていないので説明を省略する。
 アドバタイズドメントパケットのPDUフィールドは、2バイトのヘッダと、0~37バイト(可変)のペイロードとを含む。ヘッダは、さらに、4ビットのPDU Typeフィールドと、2ビットの未使用フィールドと、1ビットのTxAddフィールドと、1ビットのRxAddフィールドと、6ビットのLengthフィールドと、2ビットの未使用フィールドとを含む。
 PDU Typeフィールドには、PDUのタイプを示す値が格納される。PDUのタイプを示す値としては、「接続可能アドバタイジング」、「非接続アドバタイジング」などのいくつかの値が定義済みである。TxAddフィールドには、ペイロード中に送信アドレスがあるか否かを示すフラグが格納される。同様に、RxAddフィールドには、ペイロード中に受信アドレスがあるか否かを示すフラグが格納される。Lengthフィールドには、ペイロードのバイトサイズを示す値が格納される。
 ペイロードには、任意のデータを格納することができる。一実施形態では、このペイロードに、以下のようにセンシングデータの暗号化データを挿入して伝送する。 
 すなわち、センシング装置SDの制御部11は、無線パケット生成処理部114の制御の下、1個のアドバタイズドメントパケットのペイロードに、例えば図11に示すように、第1の暗号化データを含むデータユニット100と、第2の暗号化データを含むデータユニット200と、CRC204とを、時分割多重するように並べて挿入する。
 各データユニット100,200は、いずれもIDフィールド101,201と、Timeフィールド102,202と、データフィールド103,203とから構成される。このうちデータフィールド103,203に、それぞれ上記第1の暗号化データおよび第2の暗号化データが挿入される。
 また、このとき上記第1の暗号化データおよび第2の暗号化データが、それぞれセンシングデータを分割した複数の分割データをそれぞれ暗号化したものであれば、1個のアドバタイズドメントパケットのペイロードに複数の第1の暗号化分割データおよび第2の暗号化分割データのうちの一つが挿入され、他の第1の暗号化分割データおよび第2の暗号化分割データは、他のアドバタイズドメントパケットのペイロードに分散して順次挿入される。
 なお、IDフィールド101,201には、ユーザを表す識別子が格納されるが、ユーザを表す識別子の代わりに、またはこれに加えてセンシング装置SDまたは携帯端末UTを表す識別子が格納されてもよい。Timeフィールド102,202には、測定日時を表す情報が格納される。
 また、CRC204は、上記第1の暗号化データおよび第2の暗号化データを暗号化する前のセンシングデータから生成され、受信側において上記第1および第2の暗号化データの復号結果の正否を判定する際に用いられる。
 (1-4)BLE無線パケットの送信
 上記アドバタイズドメントパケットが生成されると、センシング装置SDの制御部11は、続いて送信処理部115の制御の下、ステップS18において、生成された上記アドバタイズドメントパケットを通信I/F15を介して通信モジュール3へ出力する。通信モジュール3は、上記アドバタイズドメントパケットを、BLEアドバタイジングの規格で定義された通信プロトコルに従い、BLE無線パケットとして一定期間送信する。
 センシング装置SDの制御部11は、1個のアドバタイズドメントパケットの送信が終了すると、ステップS19において、暗号化データの送信がすべて終了したか否かを判定する。この判定の結果、例えばセンシングデータを複数に分割した場合のように、未送信の暗号化データが残っていれば、ステップS17,S18に戻って、上記未送信の暗号化データに対し無線パケットの生成処理および送信処理を実行する。センシング装置SDの制御部11は、以後同様に、暗号化データの送信をすべて終了するまで上記処理を繰り返し実行する。
 具体的には、アドバタイズドメントパケットの送信間隔は、例えば最速20msec に設定される。これに対し、受信側の携帯端末UTでは、負荷軽減のために、受信されたアドバタイズドメントパケットはBLE通信モジュール6および制御部51のOSで間引処理された後、制御部51の無線パケット分解処理部512でデパケットされる。このため、センシング装置SDの制御部11は、センシングデータを分割した場合、第1の暗号化分割データを500msec の期間送信し、次の500msec の送信期間に第2の暗号化分割データを送信するという送信処理を繰り返す。
 (2)携帯端末UTの動作
 図7は、受信側となる携帯端末UTの制御部51が実行する動作の処理手順と処理内容を示すフローチャートである。
 (2-1)BLE無線パケットの受信
 携帯端末UTの制御部51は、ステップS20においてBLEアドバタイジングの受信タイミングを監視している。この状態で、受信タイミングになると、携帯端末UTの制御部51は、受信処理部511の制御の下、ステップS21においてBLE通信モジュール6を起動し、BLE無線パケットの受信処理を行う。
 そして、上記BLE無線パケットが受信されると携帯端末UTの制御部51は、次に無線パケット分解処理部512の制御の下、ステップS22において、受信された上記BLE無線パケットを分解する処理、つまりデパケット処理を行い、これによりパケット内のペイロードを特定する。そして、ペイロードに挿入されている暗号化データに対し、CRC符号により伝送誤りの検出処理を行った後、当該ペイロードから第1の暗号化データおよび第2の暗号化データを抽出し、抽出された上記各暗号化データを暗号化データ記憶部531に一旦記憶させる。
 (2-2)暗号化データの復号
 携帯端末UTの制御部51は、続いて第1の復号処理部513および第2の復号処理部514の制御の下、それぞれステップS23,S24において以下のように復号処理を実行する。
 すなわち、第1の復号処理部513は、上記暗号化データ記憶部531から第1の暗号化データを読み込み、読み込まれた上記第1の暗号化データに対し第1の暗号化方式に対応する復号方式を用いて復号処理を行い、これにより第1の復号データを生成して第1の復号データ記憶部532に記憶させる。
 また上記第1の復号処理と並行して第2の復号処理部514は、上記暗号化データ記憶部531から第2の暗号化データを読み込み、読み込まれた上記第2の暗号化データに対し第2の暗号化方式に対応する復号方式を用いて復号処理を行い、これにより第2の復号データを生成して第1の復号データ記憶部532に記憶させる。
 そして、上記第1および第2の復号処理部513,514は、ステップS25により復号処理が終了したか否かを判定する。この判定結果、まだ復号していない第1の暗号化データおよび第2の暗号化データが暗号化データ記憶部531に残っていれば、ステップS23,S24に戻って未復号の暗号化データに対し復号処理を実行する。以後同様に、ステップS25により復号処理終了と判定されるまで、すべての暗号化データに対し繰り返し復号処理を実行し、その復号データを第1および第2の復号データ記憶部532,533に順次記憶させる。
 この結果、第1および第2の暗号化データがそれぞれ複数の暗号化された分割データの集合体である場合にも、暗号化された各分割データの復号データは漏れなく得られる。また、各分割データに付与されているシーケンス番号をもとに、上記復号後の各分割データは上記シーケンス番号順に並べられて第1および第2の復号データ記憶部532,533に記憶される。
 (2-3)データ選択処理
 携帯端末UTの制御部51は、次にデータ選択処理部515の制御の下、ステップS26において、第1の復号データ記憶部532および第2の復号データ記憶部533からそれぞれ第1の復号データおよび第2の復号データを読み込み、これらの復号データが正しく復号されているか否かを判定する。
 正しく復号されているか否かの判定は、例えば次のように行われる。すなわち、先ず送信側において、例えば図11に示すように、アドバタイズPDUに、第1の暗号化データ103と、第2の暗号化データ203と、これら第1および第2の暗号化データを暗号化する前の元のセンシングデータから生成したCRC204を格納して送信する。これに対し受信側では、受信されたPDUに格納されている第1および第2の暗号化データをそれぞれ復号し、各復号データからCRCを計算する。そして、計算された上記CRCと、受信された上記PDUに格納されているCRC204とが一致するか否かを判定することにより、復号の成否を確認する。
 なお、復号結果の正否を判定する他の方法としては、例えば、第1および第2の復号データにそれぞれ含まれる復号後の暗号化誤り判定用データを、データ記憶部53に予め記憶されている既知の暗号化誤り判定用データと比較することにより、復号結果の正否を判定する方法を使用することも可能である。
 データ選択処理部515は、上記判定の結果、第1および第2の復号データのうち、正しく復号されている側の復号データを選択する。そして、選択された上記復号データを、暗号化誤り判定用データの復号データを削除した後、受信したセンシングデータとしてセンシングデータ記憶部534に記憶させる。従って、仮に第1の暗号化方式と第2の暗号化方式のいずれか一方にバグがあり、その影響によりいずれか一方の復号データが正しく復号されない場合でも、正しく復号された側の復号データが選択され、これによりセンシングデータを正しく受信することが可能となる。
 (2-4)センシングデータの転送
 携帯端末UTの制御部51は、上記データ選択処理が終了すると、ステップS27においてセンシングデータの転送タイミングを監視する。この状態で、転送タイミングになると、携帯端末UTの制御部51は、センシングデータ転送処理部516の制御の下、ステップS28においてセンシングデータ記憶部534から上記センシングデータを読み出す。そして、このとき読み出された上記センシングデータが複数の分割データにより構成される場合には、センシングデータ転送処理部516は上記複数の分割データをシーケンス番号順に接続して1個のセンシングデータを編集する。
 センシングデータ転送処理部516は、読み出された或いは編集された上記センシングデータを、通信I/F55を介して移動無線通信モジュール7へ出力する。移動無線通信モジュール7は、上記センシングデータを、移動通信ネットワークで定義される通信プロトコルに従い、ネットワークNWを介してサーバ装置SVに向け送信する。
 一方、上記ステップS27の判定の結果、まだ転送タイミングになっていなければ、携帯端末UTの制御部51は、ステップS20によるBLEアドバタイズの受信タイミングの監視に戻り、以後この受信タイミングの監視と、上記ステップS27による転送タイミングの監視とを繰り返す。
 なお、上記センシングデータの転送は、1個のセンシングデータが受信される毎に行ってもよいが、一定数分のセンシングデータがセンシングデータ記憶部534に記憶される毎、または一定期間が経過する毎に、センシングデータ記憶部534から未送信のセンシングデータを読み出して一括して転送するようにしてもよい。この一括転送の周期は、転送タイミングを適宜設定することで可変可能である。
 (作用・効果)
 以上述べたように一実施形態によれば、以下のような作用効果が奏せられる。 
 (1)送信側となるセンシング装置SDにおいて、測定されたセンシングデータを、暗号アルゴリズムの異なる第1および第2の暗号化方式によりそれぞれ並列的に暗号化処理し、これにより生成された第1および第2の暗号化データを1個のアドバタイズドメントパケットのペイロードに挿入して送信する。これに対し受信側となる携帯端末UTでは、受信されたアドバタイズドメントパケットのペイロードに挿入されている第1および第2の暗号化データを、上記第1および第2の暗号化方式に対応する復号方式によりそれぞれ復号し、復号された各データのうち正しく復号された側のデータを選択してサーバ装置SVへ転送する。
 従って、送受間で第1および第2の暗号化方式とそれに対応する復号方式を共有しておくだけで、送受間で暗号化処理のための時系列上の同期を不要にすることができ、また複数の暗号化方式を重層的に用いて暗号化する場合に比べ、センシング装置SDの暗号化処理に係る処理負荷を低く抑えることが可能となる。
 また、自作の暗号ライブラリに基づく暗号アルゴリズムを使用する場合に、仮に暗号アルゴリズムに含まれるバグの影響により受信側でデータが復号不能になっても、第1および第2の暗号化方式のうちの少なくとも一方が正しく復号されればよいため、簡易な方式により暗号化通信の信頼性を高く維持することができる。また、開発者は自作の暗号アルゴリズムについてバグが存在しないことを証明するための膨大な検証試験を実施する必要がなくなり、開発負荷を大幅に軽減できる利点がある。
 さらに、第1の暗号化データおよび第2の暗号化データを1個のアドバタイズドメントパケットのペイロードに挿入する伝送することで、上記第1および第2の暗号化データを少数のアドバタイズドメントパケットにより効率良く伝送することが可能となる。
 (2)センシングデータのデータ長が長く、暗号化後のセンシングデータを1個のアドバタイズドメントパケットにより送信できないと予測される場合に、センシングデータを複数に分割して、分割データ毎に第1および第2の暗号化方式により暗号化し、各暗号化分割データを上記分割の順序を表すシーケンス番号と共に送信するようにしている。
 このため、センシングデータをそのデータ長によらず、BLEアドバタイズを用いて漏れなく送信することが可能となり、一方受信側の携帯端末UTでは、受信復号された各分割データをシーケンス番号をもとに正しく復元することができる。
 (3)送信側のセンシング装置SDにおいて、センシングデータに送受間で既知の暗号化誤り判定用データを付加して暗号化し送信するようにしている。これにより、受信側の携帯端末UTでは、上記暗号化誤り判定用データの復号結果をもとに、第1の復号データおよび第2の復号データが正しく復号されたか否かを判定し、これにより正しく復号されたデータを確実に選択することができる。
 [その他の実施形態]
 (1)前記一実施形態では、第1の暗号化データおよび第2の暗号化データを1個のアドバタイズドメントパケットのペイロードに挿入して送信する場合を例にとって説明した。しかし、この発明は上記実施形態に限定されるものではない。例えば、第1の暗号化データおよび第2の暗号化データをそれぞれ異なる複数のアドバタイズドメントパケットのペイロードに分散して挿入し、これらのアドバタイズドメントパケットを時系列上で分散して送信するようにしてもよい。
 このようにすると、例えば1つのアドバタイズドメントパケットが、フェージング等の無線伝送路の一時的な通信品質の劣化の影響を受けて正しく伝送されなかったとしても、異なる他の時間に送信されたアドバタイズドメントパケットが正しく伝送されれば、受信側の携帯端末UTでは当該正しく伝送されたアドバタイズドメントパケットから伝送対象のセンシングデータを正しく復号することが可能となる。
 (2)前記一実施形態では、2つの異なる暗号化方式を使用してセンシングデータを並列伝送する場合を例にとって説明した。しかし、3以上の暗号化方式を使用してセンシングデータを並列伝送するようにしてもよい。
 (3)受信側の携帯端末UTにおいて、第1および第2の暗号化方式によりそれぞれ暗号化されたデータの少なくとも一方が正しく復号されないと判定された場合に、その状況を表すメッセージ情報を、携帯端末UTからセンシング装置SDのメーカまたはサービス事業者が使用する管理サーバに送信するようにしてもよい。このようにすると、メーカまたはサービス事業者は、対象となる暗号化方式の暗号アルゴリズムに対し速やかに修復等の対応処置を講じることが可能となる。
 (4)その他、センシング装置が測定するセンシングデータの種類、送信側および受信側でそれぞれ使用される無線通信装置の種類とその構成、処理手順および処理内容等についても、この発明の要旨を逸脱しない範囲で種々変形して実施できる。
 以上、本発明の実施形態を詳細に説明してきたが、前述までの説明はあらゆる点において本発明の例示に過ぎない。本発明の範囲を逸脱することなく種々の改良や変形を行うことができることは言うまでもない。つまり、本発明の実施にあたって、実施形態に応じた具体的構成が適宜採用されてもよい。
 要するにこの発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態に亘る構成要素を適宜組み合せてもよい。
  SD…センシング装置
  UT…携帯端末
  NW…ネットワーク
  SV…サーバ装置
  1,5…制御ユニット
  2…センシングユニット
  3…通信モジュール
  6…BLE通信モジュール
  7…移動無線通信モジュール
  8…入出力デバイス
  11,51…制御部
  12,52…プログラム記憶部
  13,53…データ記憶部
  14…センサI/F
  15,54,55…通信I/F
  56…入出力I/F
  111…センシングデータ取得処理部
  112…第1の暗号化処理部
  113…第2の暗号化処理部
  114…無線パケット生成処理部
  115…送信処理部
  131…センシングデータ記憶部
  511…受信処理部
  512…無線パケット分解処理部
  513…第1の復号処理部
  514…第2の復号処理部
  515…データ選択処理部
  516…センシングデータ転送処理部
  531…暗号化データ記憶部
  532…第1の復号データ記憶部
  533…第2の復号データ記憶部
  534…センシングデータ記憶部
 

Claims (11)

  1.  第1の無線通信装置から第2の無線通信装置に対し、伝送対象のデータを片方向通信方式を使用して伝送する無線通信システムであって、
     前記第1の無線通信装置は、
      前記伝送対象のデータを、第1の暗号化方式により暗号化して第1の暗号化データを生成する第1の暗号化処理部と、
      前記伝送対象のデータを、前記第1の暗号化方式とは暗号アルゴリズムが異なる第2の暗号化方式により暗号化して第2の暗号化データを生成する第2の暗号化処理部と、
      前記第1の暗号化データおよび前記第2の暗号化データを含む無線パケットを生成するパケット生成処理部と、
      前記無線パケットを前記片方向通信方式により送信する送信処理部と
     を備え、
     前記第2の無線通信装置は、
      前記無線パケットを受信する受信処理部と、
      前記無線パケットに含まれる前記第1の暗号化データを、前記第1の暗号化方式に対応する復号方式により復号して第1の復号データを生成する第1の復号処理部と、
      前記無線パケットに含まれる前記第2の暗号化データを、前記第2の暗号化方式に対応する第2の復号方式により復号して第2の復号データを生成する第2の復号処理部と、
      前記第1の復号データおよび前記第2の復号データの少なくとも一方を、前記伝送対象のデータとして出力するデータ出力処理部と
     を備える、無線通信システム。
  2.  前記第1の暗号化処理部および前記第2の暗号化処理部は、それぞれ前記伝送対象のデータを、前記第1の無線通信装置と前記第2の無線通信装置との間で既知の暗号化誤り判定用データを付加した状態で暗号化し、
     前記データ出力処理部は、前記第1の復号データおよび前記第2の復号データのうち、前記既知データの復号結果が正しい側の復号データを前記伝送対象のデータとして出力する、
     請求項1に記載の無線通信システム。
  3.  前記パケット生成処理部は、前記第1の暗号化データと、前記第2の暗号化データと、暗号化前の前記伝送対象のデータから生成される第1の誤り検査符号とを含む無線パケットを生成し、
     前記データ出力処理部は、前記第1の復号データおよび前記第2の復号データから計算される第2の誤り検査符号を、受信された前記無線パケットに含まれる前記第1の誤り検査符号と比較することにより、前記第1の復号データおよび前記第2の復号データの成否を判定する、
     請求項1に記載の無線通信システム。
  4.  伝送対象のデータを片方向通信方式を使用して伝送する無線通信システムで送信側として使用される無線通信装置であって、
     前記伝送対象のデータを、第1の暗号化方式により暗号化して第1の暗号化データを生成する第1の暗号化処理部と、
     前記伝送対象のデータを、前記第1の暗号化方式とは暗号アルゴリズムが異なる第2の暗号化方式により暗号化して第2の暗号化データを生成する第2の暗号化処理部と、
     前記第1の暗号化データおよび前記第2の暗号化データを含む無線パケットを生成するパケット生成処理部と、
     前記無線パケットを送信する送信処理部と
     を具備する無線通信装置。
  5.  前記パケット生成処理部は、前記第1の暗号化データおよび前記第2の暗号化データを単一の前記無線パケットに直列に並べて挿入する、請求項4に記載の無線通信装置。
  6.  前記パケット生成処理部は、前記第1の暗号化データおよび前記第2の暗号化データをそれぞれ異なる第1の無線パケットおよび第2の無線パケットに分散して挿入し、
     前記送信処理部は、前記第1の無線パケットおよび前記第2の無線パケットを時系列上で分散して送信する
     請求項4に記載の無線通信装置。
  7.  前記第1の暗号化処理部および前記第2の暗号化処理部は、それぞれ、前記伝送対象のデータを時系列上で分割して複数の分割データを生成し、前記複数の分割データを前記第1の暗号化方式および前記第2の暗号化方式によりそれぞれ暗号化して、複数の第1の暗号化分割データおよび複数の第2の暗号化分割データを生成し、
     前記パケット生成処理部は、前記複数の第1の暗号化分割データおよび前記複数の第2の暗号化分割データを、それぞれ分割順序を表す固有のシーケンス番号を付与した状態で複数の前記無線パケットに分散して挿入し、
     前記送信処理部は、前記複数の無線パケットを時系列上で分散して送信する
     請求項4に記載の無線通信装置。
  8.  伝送対象のデータを片方向通信方式を使用して伝送する無線通信システムで受信側として使用される無線通信装置であって、
     前記片方向通信方式により伝送された無線パケットを受信する受信処理部と、
     前記無線パケットに含まれる第1の暗号化データを、第1の暗号化方式に対応する第1の復号方式により復号して第1の復号データを生成する第1の復号処理部と、
     前記無線パケットに含まれる第2の暗号化データを、前記第1の暗号化方式とは暗号アルゴリズムが異なる第2の暗号化方式に対応する第2の復号方式により復号して、第2の復号データを生成する第2の復号処理部と、
     前記第1の復号データおよび前記第2の復号データの少なくとも一方を、前記伝送対象のデータとして出力するデータ出力処理部と
     を具備する無線通信装置。
  9.  第1の無線通信装置から第2の無線通信装置に対し、伝送対象のデータを片方向通信方式を使用して伝送するシステムが実行する無線通信方法であって、
     前記第1の無線通信装置が、前記伝送対象のデータを、第1の暗号化方式により暗号化して第1の暗号化データを生成する過程と、
     前記第1の無線通信装置が、前記伝送対象のデータを、前記第1の暗号化方式とは暗号アルゴリズムが異なる第2の暗号化方式により暗号化して第2の暗号化データを生成する過程と、
     前記第1の無線通信装置が、前記第1の暗号化データおよび前記第2の暗号化データを含む無線パケットを生成する過程と、
     前記第1の無線通信装置が、前記無線パケットを前記片方向通信方式により送信する過程と、
     前記第2の無線通信装置が、前記無線パケットを受信する過程と、
     前記第2の無線通信装置が、前記無線パケットに含まれる前記第1の暗号化データを、前記第1の暗号化方式に対応する第1の復号方式により復号して第1の復号データを生成する過程と、
     前記第2の無線通信装置が、前記無線パケットに含まれる前記第2の暗号化データを、前記第2の暗号化方式に対応する第2の復号方式により復号して第2の復号データを生成する過程と、
     前記第2の無線通信装置が、前記第1の復号データおよび前記第2の復号データの少なくとも一方を、前記伝送対象のデータとして出力する過程と
     を具備する無線通信方法。
  10.  請求項4乃至7のいずれかに記載の無線通信装置が備える前記各処理部の処理を、前記無線通信装置が備えるプロセッサに実行させるプログラム。
  11.  請求項8に記載の無線通信装置が備える前記各処理部の処理を、前記無線通信装置が備えるプロセッサに実行させるプログラム。
PCT/JP2022/003726 2021-02-12 2022-02-01 無線通信システム、無線通信方法、無線通信装置およびプログラム WO2022172802A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2021-021118 2021-02-12
JP2021021118A JP2022123667A (ja) 2021-02-12 2021-02-12 無線通信システム、無線通信方法、無線通信装置およびプログラム

Publications (1)

Publication Number Publication Date
WO2022172802A1 true WO2022172802A1 (ja) 2022-08-18

Family

ID=82838821

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2022/003726 WO2022172802A1 (ja) 2021-02-12 2022-02-01 無線通信システム、無線通信方法、無線通信装置およびプログラム

Country Status (2)

Country Link
JP (1) JP2022123667A (ja)
WO (1) WO2022172802A1 (ja)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000269953A (ja) * 1999-03-18 2000-09-29 Toyo Commun Equip Co Ltd 暗号化ファイルの生成方法及び閲覧方法
JP2004104181A (ja) * 2002-09-04 2004-04-02 Kenwood Corp 情報伝送システム、データ処理装置、暗号化処理装置、情報伝送方法及びプログラム
JP2005516559A (ja) * 2002-01-02 2005-06-02 ソニー エレクトロニクス インク 部分暗号化データの復号及びデコード
JP2006295330A (ja) * 2005-04-06 2006-10-26 Sony Corp 通信システム、通信装置、これらの装置の処理方法およびその方法をコンピュータに実行させるプログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000269953A (ja) * 1999-03-18 2000-09-29 Toyo Commun Equip Co Ltd 暗号化ファイルの生成方法及び閲覧方法
JP2005516559A (ja) * 2002-01-02 2005-06-02 ソニー エレクトロニクス インク 部分暗号化データの復号及びデコード
JP2004104181A (ja) * 2002-09-04 2004-04-02 Kenwood Corp 情報伝送システム、データ処理装置、暗号化処理装置、情報伝送方法及びプログラム
JP2006295330A (ja) * 2005-04-06 2006-10-26 Sony Corp 通信システム、通信装置、これらの装置の処理方法およびその方法をコンピュータに実行させるプログラム

Also Published As

Publication number Publication date
JP2022123667A (ja) 2022-08-24

Similar Documents

Publication Publication Date Title
CN106878926B (zh) 一种基于低功耗蓝牙的数据传输方法、从主设备及系统
US20130070925A1 (en) Communication device, recording medium, and method thereof
US10122691B2 (en) Receiving apparatus and packet processing method thereof
CN102300256B (zh) 一种头压缩反馈信息的反馈方法和设备
US11245531B2 (en) Method, apparatus and system for establishing biometric identification information transmission and storage medium
CN107529132B (zh) 蓝牙设备与应用程序之间传输数据的方法和装置
CN110620762A (zh) 基于rdma的数据传输方法、网卡、服务器及介质
US8375399B2 (en) Method, apparatus and computer program to perform dynamic selection of serialization processing schemes
US20200329400A1 (en) System and method for construction of a protocol data unit using selective relay
US20230111742A1 (en) Real-time soft combining, crc validation, and mic validation of decrypted packets
CN109218451A (zh) 一种分布式集群系统的数据传输方法、装置、设备及介质
US20090282249A1 (en) Process for establishing a secret key
CN111224903A (zh) 一种数据传输方法、设备及计算机可读存储介质
WO2022172802A1 (ja) 無線通信システム、無線通信方法、無線通信装置およびプログラム
US20220337566A1 (en) System and method for secure end-to-end electronic communication using a privately shared table of entropy
WO2019031333A1 (ja) データ送信装置
CN105959263B (zh) 基于json的机构养老数据交互方法及系统
JP5602602B2 (ja) 通信装置、制御方法及びプログラム
CN113133107B (zh) 用于同步信息的方法及装置
CN115225296B (zh) 一种加密数据的传输方法及相关设备
CN117459248A (zh) 一种基于链路追踪的安全可扩展的数据传输方法
JP7384028B2 (ja) データ記憶システム、データ記憶装置、コンピュータプログラム及びデータ記憶方法
CN103297430B (zh) 数据传输方法及设备
JP2006245733A (ja) 暗号化通信方法、送信端末および受信端末
CN117176760A (zh) 一种数据传输设备及其数据传输方法

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: 22751247

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 22751247

Country of ref document: EP

Kind code of ref document: A1