WO2017056154A1 - Communication device and communication system - Google Patents

Communication device and communication system Download PDF

Info

Publication number
WO2017056154A1
WO2017056154A1 PCT/JP2015/077322 JP2015077322W WO2017056154A1 WO 2017056154 A1 WO2017056154 A1 WO 2017056154A1 JP 2015077322 W JP2015077322 W JP 2015077322W WO 2017056154 A1 WO2017056154 A1 WO 2017056154A1
Authority
WO
WIPO (PCT)
Prior art keywords
message
value
transmission
counter value
communication device
Prior art date
Application number
PCT/JP2015/077322
Other languages
French (fr)
Japanese (ja)
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 三菱電機株式会社
Priority to PCT/JP2015/077322 priority Critical patent/WO2017056154A1/en
Publication of WO2017056154A1 publication Critical patent/WO2017056154A1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/10Integrity
    • H04W12/106Packet or message integrity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04W4/04

Definitions

  • the present invention relates to a communication technique using a frame counter.
  • a replay attack is an attack in which an attacker reuses a message transmitted from a sender to a receiver and transmits the message to the receiver.
  • the password is transmitted from the sender to the receiver, the password is prevented from leaking by transmitting the encrypted password.
  • the attacker can impersonate the sender even if the password string is not leaked.
  • the communication device on the transmission side transmits the frame counter value included in the MAC frame.
  • the transmission side communication device increments the frame counter value each time a MAC frame is transmitted.
  • Each time the receiving communication apparatus receives and accepts a MAC frame it stores the frame counter value included in the accepted MAC frame.
  • the receiving communication device discards the received MAC frame.
  • the replay attack since the MAC frame is reused, the frame counter value becomes equal to or less than the frame counter value stored in the receiving communication apparatus. Therefore, the replay attack can be prevented by processing as described above.
  • a wireless multi-hop communication system may be constructed by applying the IEEE 802.15.4 standard.
  • multicast transmission is used when a route used for communication is maintained and when a message is transmitted by simultaneous broadcast.
  • each communication device receives MAC frames from a plurality of communication devices.
  • Non-Patent Document 1 describes a configuration in which each communication device continues to manage frame counter values.
  • An object of the present invention is to reduce the amount of memory required for storing a frame counter value.
  • the communication device is: A reception counter value is divided into an upper byte and a lower byte, a value common to a plurality of transmission sources is stored for the upper byte, and a value is stored corresponding to each of the plurality of transmission sources for the lower byte.
  • the reception counter value which is the frame counter value stored in the communication device, is stored separately for the upper byte and the lower byte.
  • a value common to a plurality of transmission sources is stored.
  • FIG. 1 is a configuration diagram of a communication system 1 according to Embodiment 1.
  • FIG. 1 is a configuration diagram of a communication device 10 according to Embodiment 1.
  • FIG. 3 is a configuration diagram of a message 20 according to the first embodiment. Explanatory drawing of the transmission counter memory
  • FIG. 6 is a flowchart showing transmission processing of a message 20 according to the first embodiment.
  • 5 is a flowchart showing reception processing for a message 20 according to the first embodiment.
  • FIG. 1 is a configuration diagram of a communication system 1 according to the first embodiment.
  • the communication system 1 includes a plurality of communication devices 10. Each communication device 10 has the same configuration. Each communication device 10 transmits / receives a message 20 to / from another communication device 10 by wireless communication.
  • the communication system 1 includes the three communication devices 10. However, the communication system 1 may include any number of communication devices 10 as long as it is plural.
  • FIG. 2 is a configuration diagram of the communication apparatus 10 according to the first embodiment.
  • the communication device 10 includes an antenna 11, a wireless communication unit 12, a message generation unit 13, a message transmission unit 14, a message reception unit 15, a message determination unit 16, a change signal output unit 17, and a transmission counter storage unit. 18, a reception counter storage unit 19, a transmission counter control unit 181, and a reception counter control unit 191.
  • the antenna 11 is an antenna for wireless communication.
  • the wireless communication unit 12 transmits / receives a message 20 to / from another communication device 10 via the antenna 11.
  • the message generator 13 generates a message 20 that is a message 20 to be transmitted to another communication device 10 and includes a frame counter value 23.
  • the message transmission unit 14 transmits the message 20 generated by the message generation unit 13 via the wireless communication unit 12 and the antenna 11.
  • the message transmission unit 14 determines the transmission timing using a rule such as CSMA-CA, requests the wireless communication unit 12 to transmit the message 20 at the determined transmission timing, and transmits the message 20.
  • CSMA-CA is an abbreviation for Carrier Sense Multiple Access-Collision Avidance.
  • CSMA-CA is a rule used in a communication method in which a plurality of terminals share the same line, and is used as a data link layer communication protocol in IEEE 802.11, which is a wireless LAN communication standard.
  • the message receiving unit 15 receives the message 20 including the frame counter value 23 transmitted by the other communication device 10 via the antenna 11 and the wireless communication unit 12.
  • the message determination unit 16 determines whether or not to accept the message 20 by determining whether or not the frame counter value 23 is valid.
  • the message determination unit 16 compares the reception counter value 40 stored in the reception counter storage unit 19 to be described later with the frame counter value 23 included in the message 20 received by the message reception unit 15, thereby obtaining the frame counter value 23. It is determined whether or not is valid.
  • the change signal output unit 17 outputs the change signal 50 at a timing synchronized with the other communication device 10.
  • the change signal output unit 17 changes a transmission counter value 30 and a reception counter value 40 to be described later by outputting a change signal 50.
  • the change signal output unit 17 holds the time, and outputs the change signal 50 when a preset time is reached.
  • the time held by the change signal output unit 17 is synchronized with the other communication device 10 by the time information transmitted from the other communication device 10.
  • the change signal output unit 17 may acquire time information from an external time source such as GPS, and synchronize the time with another communication device 10.
  • the transmission counter storage unit 18 stores a transmission counter value 30.
  • the transmission counter value 30 is updated when the message 20 is transmitted by the message transmission unit 14 and when the change signal 50 is output by the change signal output unit 17.
  • the reception counter storage unit 19 stores a reception counter value 40.
  • the reception counter value 40 is updated when it is determined that the message 20 is received by the message determination unit 16 and when the change signal 50 is output by the change signal output unit 17.
  • the transmission counter control unit 181 updates the transmission counter value 30 stored in the transmission counter storage unit 18 when the change signal 50 is output by the change signal output unit 17.
  • the reception counter control unit 191 updates the reception counter value 40 stored in the reception counter storage unit 19 when the change signal 50 is output by the change signal output unit 17.
  • FIG. 3 is a configuration diagram of the message 20 according to the first embodiment.
  • the message 20 includes a local destination 21, a local transmission source 22, a frame counter value 23, an MIC value 24, and transmission data 25.
  • MIC is an abbreviation for Message Integrity Check.
  • the local destination 21 is set with the MAC address of the destination communication device 10.
  • the MAC address set as the local destination 21 may be a unicast address indicating the destination communication device 10 or a broadcast address.
  • the local transmission source 22 is set with the MAC address of the communication device 10 of the transmission source.
  • the transmission counter value 30 stored in the transmission counter storage unit 18 is set.
  • the MIC value 24 is a value for confirming that the message 20 has not been tampered with, and an encryption key and transmission data 25 shared in advance between the transmission source communication device 10 and the transmission destination communication device 10. It is a value generated from As a specific example, the MIC value 24 is a value calculated by inputting an encryption key and transmission data 25 into a hash function. The transmission data 25 is data transmitted to the transmission destination.
  • the message generation unit 13 encrypts the transmission data 25 by an encryption and message authentication method called AES-CCM * defined in the IEEE 802.15.4 standard.
  • AES-CCM * by encrypting the transmission data 25, the MIC value 24 for the transmission data 25 is also calculated, and the MIC value 24 and the transmission data 25 are integrated into the encrypted data 26.
  • FIG. 4 is an explanatory diagram of the transmission counter storage unit 18 according to the first embodiment.
  • the transmission counter storage unit 18 stores the transmission counter value 30 separately into upper bytes 31 and lower bytes 32 according to the control of the message transmission unit 14 and the transmission counter control unit 181.
  • the transmission counter value 30 is changed by the message transmission unit 14 when the message 20 is transmitted by the message transmission unit 14.
  • the transmission counter value 30 is changed by the transmission counter control unit 181 when the change signal 50 is output by the change signal output unit 17.
  • the transmission counter value 30 is incremented by 1 to the value of the lower byte 32 by the transmission counter control unit 181 every time the message 20 is transmitted by the message transmission unit 14.
  • the transmission counter value 30 is incremented by 1 to the value of the upper byte 31 by the transmission counter control unit 181, and the value of the lower byte 32 is 0. To be.
  • FIG. 5 is an explanatory diagram of the reception counter storage unit 19 according to the first embodiment.
  • the reception counter storage unit 19 stores the reception counter value 40 into upper bytes 41 and lower bytes 42 according to the control of the message determination unit 16 and the reception counter control unit 191.
  • the reception counter storage unit 19 stores a value common to the plurality of communication devices 10 for the upper byte 41 and stores a value corresponding to each of the plurality of communication devices 10 for the lower byte 42.
  • the reception counter storage unit 19 stores a lower byte 42 for each MAC address 43 of the communication device 10.
  • the reception counter value 40 is set to the value of the lower byte 42 corresponding to the transmission source of the message 20 and the lower byte of the frame counter value 23 included in the message 20.
  • the value is set by the message determination unit 16.
  • the reception counter value 40 is changed by the reception counter control unit 191 when the change signal 50 is output by the change signal output unit 17.
  • the reception counter value 40 is incremented by 1 to the value of the upper byte 41 by the reception counter control unit 191 when the change signal 50 is output by the change signal output unit 17.
  • the value of the lower byte 42 is not changed.
  • reception counter storage unit 19 stores a flag 44 and a key generation number 45 for each MAC address 43 of the communication device 10.
  • the flag 44 is used to determine whether or not the communication device 10 that has transmitted the message 20 has changed the transmission counter value 30 after the change signal 50 is transmitted. That is, due to the time synchronization error between the communication devices 10, the transmission counter value 10 is changed in the transmission side communication device 10 even though the transmission counter value 30 and the reception counter value 40 are changed in the reception side communication device 10. The case where 30 is not changed may occur. In this case, the flag 44 is used to correctly determine whether or not to accept the message 20. The flag 44 is changed to On when the change signal 50 is output by the change signal output unit 17. The flag 44 is changed to Off when the message 20 after the upper byte 31 of the transmission counter value 30 is changed is received in the On state.
  • the key generation number 45 is a generation number of an encryption key used for calculating the MIC value 24 and encrypting the transmission data 25.
  • the encryption key specified by the key generation number 45 is used.
  • the key generation number 45 is updated regularly or when the key is lost, and the encryption key to be used is changed.
  • the key generation number 45 is stored for each MAC address 43 of the communication device 10, but may be a value common to all the communication devices 10.
  • the operation of communication apparatus 10 according to Embodiment 1 corresponds to the communication method according to Embodiment 1.
  • the operation of the communication device 10 according to the first embodiment corresponds to the communication program according to the first embodiment.
  • the communication device 10 exchanges the transmission counter value 30 with the adjacent communication device 10.
  • the communication apparatus 10 exchanges the transmission counter value 30 by using MLE protocol defined by IETF.
  • MLE is an abbreviation for Internet Engineering Task Force.
  • the IETF is an organization that formulates standardization of technologies used on the Internet.
  • MLE is an abbreviation for Mesh Link Establishment.
  • MLE protocol is a Challenge-Response type protocol.
  • the communication apparatus 10 exchanges the transmission counter value 30 with the adjacent communication apparatus 10 using MLE protocol as follows.
  • the communication device 10 on the transmission side generates a random number value, and transmits the generated random value to the communication device 10 on the reception side as Challenge.
  • the communication device 10 on the receiving side When receiving the Challenge, the communication device 10 on the receiving side generates a random value, and sets the generated random value as Challenge. Then, the communication device 10 on the reception side transmits Challenge, the transmission counter value 30, and the MIC value generated from the random value received as Challenge to the communication device 10 on the transmission side.
  • the communication device 10 on the transmission side receives the Challenge, the transmission counter value 30, and the MIC value transmitted from the communication device 10 on the reception side, and verifies the MIC value.
  • the communication device 10 on the transmission side sets the transmission counter value 30 received from the communication device 10 on the reception side as the reception counter value 40 of the communication device 10 on the reception side.
  • the communication device 10 on the transmission side transmits the transmission counter value 30 to the communication device 10 on the reception side together with the MIC value generated from the random value received as Challenge.
  • the reception side communication device 10 receives the transmission counter value 30 and the MIC value transmitted from the transmission side communication device 10, and verifies the MIC value. If the MIC value is valid, the communication device 10 on the reception side sets the transmission counter value 30 received from the communication device 10 on the transmission side as the reception counter value 40 of the communication device 10 on the transmission side. As a result, the transmission counter value 30 is exchanged between the communication device 10 on the transmission side and the communication device 10 on the reception side.
  • FIG. 6 is a flowchart showing transmission processing of the message 20 according to the first embodiment.
  • the message generator 13 acquires the transmission data 25 and the MAC address of the transmission destination of the transmission data 25.
  • the message generation unit 13 reads the transmission counter value 30 from the transmission counter storage unit 18.
  • the message generator 13 reads the upper byte 31 and the lower byte 32 and concatenates the upper byte 31 and the lower byte 32 to obtain the transmission counter value 30.
  • the message generator 13 receives the transmission data 25 and the encryption key shared with the transmission destination of the transmission data 25, and encrypts the transmission data 25.
  • the message generator 13 encrypts the transmission data 25 using AES-CCM *, and generates encrypted data 26 including the MIC value 24.
  • the message generation unit 13 sets the MAC address of the transmission destination acquired in S11 as the local destination 21, sets its own MAC address as the local transmission source 22, and sets the transmission counter value 30 acquired in S12. The frame counter value is 23. Then, the message generator 13 generates the message 20 using the encrypted data 26 calculated in S13 as data including the MIC value 24 and the transmission data 25.
  • the message transmission unit 14 transmits the message 20 generated in S14 from the antenna 11 to the transmission destination via the wireless communication unit 12. Then, the message transmission unit 14 adds 1 to the value of the lower byte 32 of the transmission counter value 30 stored by the transmission counter storage unit 18.
  • FIG. 7 is a flowchart showing the reception process of the message 20 according to the first embodiment.
  • the message reception unit 15 receives the message 20 from the wireless communication unit 12 via the antenna 11.
  • the message determination unit 16 reads the flag 44 for the communication device 10 of the transmission source indicated by the local transmission source 22 of the message 20 received in S21 from the reception counter storage unit 19. Then, the message determination unit 16 determines whether or not the read flag 44 is Off. If the flag 44 is Off, that is, if the message 20 after the change of the upper byte 31 of the transmission counter value 30 has already been received from the transmission source communication device 10 (YES in S22), the message determination unit 16 To S23. On the other hand, if the flag 44 is On, that is, before the message 20 after the change of the upper byte 31 of the transmission counter value 30 is received from the communication device 10 of the transmission source (NO in S22), The process proceeds to S26.
  • the message determination unit 16 transmits the lower byte of the communication device 10 that is the transmission source indicated by the upper byte 41 and the local transmission source 22 of the message 20 received in S21 from the reception counter storage unit 19. Read byte 42. The message determination unit 16 combines the read upper byte 41 and lower byte 42 as a reception counter value 40. Then, the message determination unit 16 determines whether or not the frame counter value 23 of the message 20 received in S21 is larger than the reception counter value 40. If the frame counter value 23 is larger than the reception counter value 40 (YES in S23), the message determination unit 16 advances the process to S24. On the other hand, when the frame counter value 23 is not larger than the reception counter value 40 (NO in S23), the message determination unit 16 advances the process to S32.
  • the message determination unit 16 decrypts the encrypted data 26 of the message 20 received in S21 using the encryption key shared with the transmission source indicated by the local transmission source 22 of the message 20.
  • the message determination unit 16 determines whether or not the decryption of the encrypted data 26 has succeeded. In AES-CCM *, if the encrypted data 26 is successfully decrypted, the MIC value 24 has been successfully verified. If the decryption is successful (YES in S25), the message determination unit 16 advances the process to S31. On the other hand, if the decryption fails (NO in S25), the message determination unit 16 advances the process to S32.
  • the message determination unit 16 transmits the lower byte of the communication device 10 that is the transmission source indicated by the upper byte 41 and the local transmission source 22 of the message 20 received in S21 from the reception counter storage unit 19. Read byte 42. The message determination unit 16 adds the value obtained by subtracting 1 from the read upper byte 41 and the lower byte 42 to obtain the reception counter value 40. Then, the message determination unit 16 determines whether or not the frame counter value 23 of the message 20 received in S21 is larger than the reception counter value 40. If the frame counter value 23 is larger than the reception counter value 40 (YES in S26), the message determination unit 16 advances the process to S27. On the other hand, when the frame counter value 23 is not larger than the reception counter value 40 (NO in S26), the message determination unit 16 advances the process to S32.
  • the message determination unit 16 decrypts the encrypted data 26 of the message 20 received in S21 using the encryption key shared with the transmission source indicated by the local transmission source 22 of the message 20.
  • the message determination unit 16 determines whether or not the decryption of the encrypted data 26 has succeeded. If the decryption is successful (YES in S28), the message determination unit 16 advances the process to S29. On the other hand, when the decryption fails (NO in S28), the message determination unit 16 advances the process to S32.
  • the message determination unit 16 determines whether or not the upper byte of the frame counter value 23 of the message 20 received in S21 is the same as the upper byte 41 of the reception counter value 40. That is, the message determination unit 16 determines whether or not the upper byte of the frame counter value 23 is a value after the change. If the upper byte is the same (YES in S29), the message determination unit 16 advances the process to S30. On the other hand, if the upper byte is different (NO in S29), the message determination unit 16 advances the process to S31.
  • the reception counter storage unit 19 updates the flag 44 for the communication device 10 of the transmission source indicated by the local transmission source 22 of the message 20 received in S21 to Off.
  • the message determination unit 16 sets the lower byte of the frame counter value 23 of the message 20 received in S21 in the lower byte 42 of the reception counter value 40. That is, the message determination unit 16 overwrites the lower byte 42 of the frame counter value 23 of the message 20 received in S21 on the lower byte 42 of the reception counter value 40 stored in the reception counter storage unit 19.
  • the message determination unit 16 discards the message 20 received in S21.
  • the process of S23 is executed when the message 20 after the change of the upper byte 31 of the transmission counter value 30 has already been received from the communication device 10 as the transmission source. Therefore, when the process of S23 is executed, the upper byte 31 of the communication device 10 that is the transmission source and the upper byte 41 of the communication device 10 that is the reception side match. The lower byte 42 of the communication device 10 on the receiving side is changed based on the frame counter value 23 included in the message 20 after the upper byte 31 is changed. Accordingly, the message determination unit 16 simply compares the frame counter value 23 with the value obtained by combining the upper byte 41 and the lower byte 42 as the reception counter value 40.
  • the frame counter value 23 becomes equal to or less than the reception counter value 40, so that the replay attack can be prevented.
  • the frame counter value 23 becomes larger than the reception counter value 40, so that the message 20 is not erroneously discarded. That is, it is possible to make a correct determination while preventing the replay attack and preventing the message 20 from being accidentally discarded.
  • the process of S26 is executed when the message 20 after the upper byte 31 of the transmission counter value 30 is changed is not received from the communication device 10 as the transmission source. Therefore, when the process of S26 is executed, in the communication apparatus 10 that is the transmission source, before the upper byte 31 of the transmission counter value 30 is changed and after the upper byte 31 of the transmission counter value 30 is changed. There are times when Therefore, the message determination unit 16 compares the value obtained by subtracting 1 from the upper byte 41 and the lower byte 42 as the reception counter value 40 and compares it with the frame counter value 23. When the upper byte 31 of the transmission counter value 30 is not changed in the transmission source communication device 10, 1 is subtracted from the upper byte 31 of the transmission source communication device 10 and the upper byte 41 of the reception side communication device 10.
  • the value matches. Further, the lower byte 42 of the receiving communication device 10 is not changed when the upper byte 41 is changed, and remains in its original state. Therefore, by setting the value obtained by subtracting 1 from the upper byte 41 and the lower byte 42 as the reception counter value 40, the message 20 is erroneously discarded while preventing a replay attack as in the processing of S23. It is possible to make a correct judgment without any problems.
  • the upper byte 31 of the transmission counter value 30 has been changed in the transmission source communication device 10
  • the upper byte 31 of the transmission source communication device 10 is the upper byte 41 of the reception side communication device 10. It becomes larger than the value obtained by subtracting 1 from. That is, the frame counter value 23 is larger than the reception counter value 40.
  • the message 20 is not discarded, and the message 20 is not accidentally discarded.
  • the replay attack using the message 20 after the upper byte 31 is changed is not performed.
  • the communication device 10 according to the first embodiment stores the reception counter value 40 by dividing it into the upper byte 41 and the lower byte 42.
  • the communication device 10 according to the first embodiment does not need to store the upper byte 41 for each adjacent communication device 10, and can reduce the amount of memory necessary for storing the reception counter value 40.
  • the message determination unit 16 has already received the frame counter value 23 in which the value of the upper byte 31 has been changed from the communication device 10 that has transmitted the message 20 in S22. Determine whether. If the message has already been received, the message determination unit 16 uses the value of the upper byte 31 after the value has been changed in S23. If not, the message determination unit 16 has not changed the value in S26. Is used to determine whether to accept the message 20. As a result, the communication device 10 according to the first embodiment makes a correct determination that prevents the message 20 from being accidentally discarded while preventing a replay attack.
  • the transmission counter value 30 including the upper byte 31 and the lower byte 32 is included in the message 20 as the frame counter value 23.
  • only the lower byte 32 may be included in the message 20 as the frame counter value 23.
  • the message 20 can be shortened and the consumption of communication resources can be reduced.
  • the upper byte 31 is not included in the frame counter value 23
  • the transmission counter value 30 is exchanged as a premise for transmission / reception of the message 20.
  • the transmission counter value 30 and the reception counter value 40 may be determined by synchronizing the times. Specifically, the upper byte 31 and the upper byte 41 are set to 0 in the case of time T1 as a starting point, and 1 is added to the upper byte 31 and the upper byte 41 every time the first reference time elapses. Similarly, the lower byte 32 and the lower byte 42 are set to 0 in the case of the time T2 as a starting point, and 1 is added to the lower byte 32 and the lower byte 42 every time the second reference time elapses. Thereby, if the time is synchronized, the transmission counter value 30 and the reception counter value 40 can be synchronized.
  • AES-CCM * since AES-CCM * is adopted, it is possible to determine whether or not the MIC value 24 is valid by decrypting the encrypted data 26. However, when another method different from AES-CCM * is adopted, a process for determining whether or not the MIC value 24 is valid is required in addition to the process for decrypting the encrypted data 26.
  • the upper byte 31 and the upper byte 41 have the same number of digits
  • the lower byte 32 and the lower byte 42 have the same number of digits.
  • the lower byte 32 and the lower byte 42 are not allowed to carry after reaching the maximum value. Therefore, it is necessary to prepare the number of digits necessary for the communication system 1 to be configured.
  • the communication device 10 is a computer.
  • the function of the communication device 10 can be realized by software or hardware.
  • FIG. 8 is a diagram illustrating a hardware configuration example in a case where the function of the communication device 10 is realized by software.
  • FIG. 9 is a diagram illustrating a hardware configuration example in a case where the function of the communication device 10 is realized by hardware.
  • a hardware configuration example of the communication apparatus 10 will be described with reference to FIGS. 8 and 9.
  • the communication device 10 includes hardware such as a processor 901, an auxiliary storage device 902, a memory 903, a communication interface circuit 904, a modulation circuit 905, and an antenna 11, as shown in FIG. Wear.
  • the processor 901 is connected to other hardware via the signal line 910, and controls these other hardware.
  • the communication interface circuit 904 is a circuit for transmitting and receiving the message 20 according to a predetermined protocol.
  • the modulation circuit 905 is a circuit that performs modulation for transmitting the message 20 on a carrier wave.
  • the antenna 11 is as described above.
  • the processor 901 is an IC that performs processing.
  • IC is an abbreviation for Integrated Circuit.
  • the processor 901 is a CPU, a DSP, or a GPU.
  • CPU is an abbreviation for Central Processing Unit.
  • DSP is an abbreviation for Digital Signal Processor.
  • GPU is an abbreviation for Graphics Processing Unit.
  • the auxiliary storage device 902 is a ROM, a flash memory, or an HDD.
  • ROM is an abbreviation for Read Only Memory.
  • HDD is an abbreviation for Hard Disk Drive.
  • the memory 903 is a RAM.
  • RAM is an abbreviation for Random Access Memory.
  • the transmission counter storage unit 18 and the reception counter storage unit 19 are realized by the auxiliary storage device 902 or the memory 903.
  • the auxiliary storage device 902 stores a program that realizes the functions of the wireless communication unit 12, the message generation unit 13, the message transmission unit 14, the message determination unit 16, and the change signal output unit 17.
  • the wireless communication unit 12, the message generation unit 13, the message transmission unit 14, the message determination unit 16, the change signal output unit 17, the transmission counter control unit 181, and the reception counter control unit 191 are collectively referred to as “ Part.
  • This program is loaded into the memory 903, read into the processor 901, and executed by the processor 901.
  • the auxiliary storage device 902 stores an OS.
  • OS is an abbreviation for Operating System. Then, at least a part of the OS is loaded into the memory 903, and the processor 901 executes a program that realizes the function of “unit” while executing the OS.
  • the communication apparatus 10 may include a plurality of processors 901.
  • a plurality of processors 901 may execute a program for realizing the function of “unit” in cooperation with each other.
  • information, data, signal values, and variable values indicating the processing results of “unit” are stored in the memory 903, the auxiliary storage device 902, or a register or cache memory in the processor 901.
  • the program for realizing the function of “unit” may be stored in a portable storage medium such as a magnetic disk, a flexible disk, an optical disk, a compact disk, a Blu-ray (registered trademark) disk, or a DVD.
  • the communication device 10 includes hardware such as a processing circuit 990, a communication interface circuit 904, a modulation circuit 905, and an antenna 11, as shown in FIG.
  • the processing circuit 990 is a dedicated electronic circuit that implements the functions of the “unit”, the transmission counter storage unit 18, and the reception counter storage unit 19.
  • the processing circuit 990 is assumed to be a single circuit, a composite circuit, a programmed processor, a parallel programmed processor, a logic IC, a GA, an ASIC, and an FPGA.
  • GA is an abbreviation for Gate Array.
  • ASIC is an abbreviation for Application Specific Integrated Circuit.
  • FPGA is an abbreviation for Field-Programmable Gate Array.
  • the functions of “part”, transmission counter storage unit 18 and reception counter storage unit 19 may be realized by one processing circuit 990, or “part”, transmission counter storage unit 18 and reception counter storage unit 19 may be realized by being distributed to a plurality of processing circuits 990.
  • processor 901, the auxiliary storage device 902, the memory 903, and the processing circuit 990 are collectively referred to as “processing circuitry”. That is, regardless of whether the hardware configuration of the communication apparatus 10 is the hardware configuration of FIG. 8 or the hardware configuration of FIG. 9, the function of “unit” is realized by the processing circuitry. In addition, “part” may be read as “process”, “procedure”, or “processing”. Further, the function of “unit” may be realized by firmware.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Small-Scale Networks (AREA)

Abstract

A reception counter storage unit (19) splits reception counter values into an upper byte and lower bytes, and stores said reception counter values. The reception counter storage unit (19) stores a value shared by a plurality of transmission sources as the upper byte, and stores values corresponding to each of the plurality of transmission sources as the lower bytes. A message determination unit (16) determines whether a message (20) is to be accepted by comparing a frame counter value included in the message (20), with the reception counter value generated from the value of the upper byte stored by the reception counter storage unit (19), and the value of the lower byte which corresponds to the transmission source of the message (20), and which is stored by the reception counter storage unit (19).

Description

通信装置及び通信システムCommunication apparatus and communication system
 この発明は、フレームカウンタを用いた通信技術に関する。 The present invention relates to a communication technique using a frame counter.
 センサネットワークに用いられるIEEE802.15.4規格において、リプレイアタックに対するセキュリティ方式が規定されている。
 リプレイアタックとは、送信者から受信者へ送信されたメッセージを攻撃者が再利用して受信者へ送信する攻撃である。送信者から受信者へパスワードを送信する場合には、パスワードを暗号化した上で送信することにより、パスワードが漏洩することが防止される。しかし、暗号化されたパスワードを攻撃者が再利用することで、パスワードの文字列は漏洩していなくても、攻撃者が送信者になりすますことが可能になる。
In the IEEE 802.15.4 standard used for sensor networks, a security method for replay attack is defined.
A replay attack is an attack in which an attacker reuses a message transmitted from a sender to a receiver and transmits the message to the receiver. When the password is transmitted from the sender to the receiver, the password is prevented from leaking by transmitting the encrypted password. However, by reusing the encrypted password, the attacker can impersonate the sender even if the password string is not leaked.
 IEEE802.15.4規格では、以下のように、リプレイアタックを防止することが規定されている。
 送信側の通信装置は、フレームカウンタ値をMACフレームに含めて送信する。送信側の通信装置は、MACフレームを送信する度に、フレームカウンタ値をインクリメントする。
 受信側の通信装置は、MACフレームを受信し受理する度に、受理したMACフレームに含まれるフレームカウンタ値を記憶する。受信側の通信装置は、MACフレームに含まれるフレームカウンタ値が、記憶されたフレームカウンタ値以下の場合には、受信したMACフレームを破棄する。
 リプレイアタックでは、MACフレームが再利用されるため、フレームカウンタ値が受信側の通信装置で記憶されたフレームカウンタ値以下になる。そのため、上述したように処理することで、リプレイアタックを防止することが可能である。
In the IEEE 802.15.4 standard, it is specified that replay attack is prevented as follows.
The communication device on the transmission side transmits the frame counter value included in the MAC frame. The transmission side communication device increments the frame counter value each time a MAC frame is transmitted.
Each time the receiving communication apparatus receives and accepts a MAC frame, it stores the frame counter value included in the accepted MAC frame. When the frame counter value included in the MAC frame is equal to or smaller than the stored frame counter value, the receiving communication device discards the received MAC frame.
In the replay attack, since the MAC frame is reused, the frame counter value becomes equal to or less than the frame counter value stored in the receiving communication apparatus. Therefore, the replay attack can be prevented by processing as described above.
 IEEE802.15.4規格を適用し、無線マルチホップ通信システムが構築されることがある。無線マルチホップ通信システムでは、通信に用いる経路をメンテナンスする場合、及び、一斉同報でメッセージを送信する場合において、マルチキャスト送信が用いられる。マルチキャスト送信が用いられると、各通信装置は、複数の通信装置からMACフレームを受信することになる。
 IEEE802.15.4規格のセキュリティ方式を適用するためには、MACフレームを送受信する通信装置間でフレームカウンタ値を保持し続けることが必要である。
A wireless multi-hop communication system may be constructed by applying the IEEE 802.15.4 standard. In a wireless multi-hop communication system, multicast transmission is used when a route used for communication is maintained and when a message is transmitted by simultaneous broadcast. When multicast transmission is used, each communication device receives MAC frames from a plurality of communication devices.
In order to apply the IEEE 802.15.4 standard security method, it is necessary to keep the frame counter value between communication devices that transmit and receive MAC frames.
 非特許文献1には、フレームカウンタ値を各通信装置が管理し続ける構成が記載されている。 Non-Patent Document 1 describes a configuration in which each communication device continues to manage frame counter values.
 複数の通信装置からMACフレームを受信する場合、各通信装置は、MACフレームの送信元となるそれぞれの通信装置についてのフレームカウンタ値を管理し続ける必要がある。そのため、フレームカウンタ値を記憶するために必要なメモリ量が多くなる。
 この発明は、フレームカウンタ値を記憶するために必要なメモリ量を減らすことを目的とする。
When receiving MAC frames from a plurality of communication devices, each communication device needs to continue to manage the frame counter value for each communication device that is the transmission source of the MAC frame. Therefore, the amount of memory necessary for storing the frame counter value increases.
An object of the present invention is to reduce the amount of memory required for storing a frame counter value.
 この発明に係る通信装置は、
 受信カウンタ値を上位バイトと下位バイトとに分け、前記上位バイトについては複数の送信元に共通の値を記憶し、前記下位バイトについては前記複数の送信元それぞれに対応させて値を記憶する受信カウンタ記憶部と、
 前記受信カウンタ記憶部によって記憶された前記上位バイトの値と、メッセージの送信元に対応して前記受信カウンタ記憶部によって記憶された前記下位バイトの値とから生成される受信カウンタ値と、前記メッセージに含まれたフレームカウンタ値とを比較して、前記メッセージを受理するか否かを判定するメッセージ判定部と
を備える。
The communication device according to the present invention is:
A reception counter value is divided into an upper byte and a lower byte, a value common to a plurality of transmission sources is stored for the upper byte, and a value is stored corresponding to each of the plurality of transmission sources for the lower byte. A counter storage unit;
A reception counter value generated from the value of the upper byte stored by the reception counter storage unit and the value of the lower byte stored by the reception counter storage unit corresponding to the transmission source of the message; And a message determination unit that determines whether to accept the message by comparing the frame counter value included in the message.
 この発明では、通信装置で記憶するフレームカウンタ値である受信カウンタ値が上位バイトと下位バイトとに分けて記憶される。特に、上位バイトについては複数の送信元に共通の値が記憶される。これにより、フレームカウンタ値を記憶するために必要なメモリ量を減らすことができる。 In the present invention, the reception counter value, which is the frame counter value stored in the communication device, is stored separately for the upper byte and the lower byte. In particular, for the upper byte, a value common to a plurality of transmission sources is stored. As a result, the amount of memory required to store the frame counter value can be reduced.
実施の形態1に係る通信システム1の構成図。1 is a configuration diagram of a communication system 1 according to Embodiment 1. FIG. 実施の形態1に係る通信装置10の構成図。1 is a configuration diagram of a communication device 10 according to Embodiment 1. FIG. 実施の形態1に係るメッセージ20の構成図。FIG. 3 is a configuration diagram of a message 20 according to the first embodiment. 実施の形態1に係る送信カウンタ記憶部18の説明図。Explanatory drawing of the transmission counter memory | storage part 18 which concerns on Embodiment 1. FIG. 実施の形態1に係る受信カウンタ記憶部19の説明図。Explanatory drawing of the reception counter memory | storage part 19 which concerns on Embodiment 1. FIG. 実施の形態1に係るメッセージ20の送信処理を示すフローチャート。6 is a flowchart showing transmission processing of a message 20 according to the first embodiment. 実施の形態1に係るメッセージ20の受信処理を示すフローチャート。5 is a flowchart showing reception processing for a message 20 according to the first embodiment. 通信装置10の機能がソフトウェアで実現される場合のハードウェア構成例を示す図。The figure which shows the hardware structural example in case the function of the communication apparatus 10 is implement | achieved by software. 通信装置10の機能がハードウェアで実現される場合のハードウェア構成例を示す図。The figure which shows the hardware structural example in case the function of the communication apparatus 10 is implement | achieved by hardware.
 実施の形態1.
 ***構成の説明***
 図1は、実施の形態1に係る通信システム1の構成図である。
 通信システム1は、複数の通信装置10を備える。各通信装置10は同一の構成である。各通信装置10は、無線通信によって他の通信装置10とメッセージ20を送受信する。
 図1では、通信システム1が3つの通信装置10を備えているが、通信システム1が備える通信装置10の数は複数であればいくつであってもよい。
Embodiment 1 FIG.
*** Explanation of configuration ***
FIG. 1 is a configuration diagram of a communication system 1 according to the first embodiment.
The communication system 1 includes a plurality of communication devices 10. Each communication device 10 has the same configuration. Each communication device 10 transmits / receives a message 20 to / from another communication device 10 by wireless communication.
In FIG. 1, the communication system 1 includes the three communication devices 10. However, the communication system 1 may include any number of communication devices 10 as long as it is plural.
 図2は、実施の形態1に係る通信装置10の構成図である。
 通信装置10は、アンテナ11と、無線通信部12と、メッセージ生成部13と、メッセージ送信部14と、メッセージ受信部15と、メッセージ判定部16と、変更信号出力部17と、送信カウンタ記憶部18と、受信カウンタ記憶部19と、送信カウンタ制御部181と、受信カウンタ制御部191とを備える。
FIG. 2 is a configuration diagram of the communication apparatus 10 according to the first embodiment.
The communication device 10 includes an antenna 11, a wireless communication unit 12, a message generation unit 13, a message transmission unit 14, a message reception unit 15, a message determination unit 16, a change signal output unit 17, and a transmission counter storage unit. 18, a reception counter storage unit 19, a transmission counter control unit 181, and a reception counter control unit 191.
 アンテナ11は、無線通信用のアンテナである。 The antenna 11 is an antenna for wireless communication.
 無線通信部12は、アンテナ11を介して他の通信装置10との間でメッセージ20を送受信する。 The wireless communication unit 12 transmits / receives a message 20 to / from another communication device 10 via the antenna 11.
 メッセージ生成部13は、他の通信装置10に送信するメッセージ20であって、フレームカウンタ値23を含むメッセージ20を生成する。 The message generator 13 generates a message 20 that is a message 20 to be transmitted to another communication device 10 and includes a frame counter value 23.
 メッセージ送信部14は、メッセージ生成部13によって生成されたメッセージ20を、無線通信部12及びアンテナ11を介して送信する。
 メッセージ送信部14は、CSMA-CAのようなルールを用いて送信タイミングを決定し、決定した送信タイミングにメッセージ20の送信を無線通信部12に依頼して、メッセージ20を送信する。
 なお、CSMA-CAは、Carrier Sense Multiple Access-Collision Avoidanceの略である。CSMA-CAは、複数の端末が同じ回線を共用する通信方式で用いられるルールであり、無線LANの通信規格であるIEEE 802.11において、データリンク層の通信プロトコルとして使われている。CSMA-CAでは、通信開始前に、受信を試みて通信をしている端末が他にないことが確認され、他端末が通信をしていなければ送信開始され、他端末が通信をしている場合には、他端末の通信終了後、一定時間待った上で送信開始される。
The message transmission unit 14 transmits the message 20 generated by the message generation unit 13 via the wireless communication unit 12 and the antenna 11.
The message transmission unit 14 determines the transmission timing using a rule such as CSMA-CA, requests the wireless communication unit 12 to transmit the message 20 at the determined transmission timing, and transmits the message 20.
Note that CSMA-CA is an abbreviation for Carrier Sense Multiple Access-Collision Avidance. CSMA-CA is a rule used in a communication method in which a plurality of terminals share the same line, and is used as a data link layer communication protocol in IEEE 802.11, which is a wireless LAN communication standard. In CSMA-CA, it is confirmed that there is no other terminal that is trying to receive before starting communication, and if no other terminal is communicating, transmission is started and the other terminal is communicating. In this case, after the communication of the other terminal is completed, transmission is started after waiting for a certain time.
 メッセージ受信部15は、アンテナ11及び無線通信部12を介して、他の通信装置10によって送信されたフレームカウンタ値23を含むメッセージ20を受信する。 The message receiving unit 15 receives the message 20 including the frame counter value 23 transmitted by the other communication device 10 via the antenna 11 and the wireless communication unit 12.
 メッセージ判定部16は、フレームカウンタ値23が正当であるか否かを判定することにより、メッセージ20を受理するか否かを判定する。
 メッセージ判定部16は、後述する受信カウンタ記憶部19によって記憶された受信カウンタ値40と、メッセージ受信部15によって受信されたメッセージ20に含まれるフレームカウンタ値23とを比較して、フレームカウンタ値23が正当であるか否かを判定する。
The message determination unit 16 determines whether or not to accept the message 20 by determining whether or not the frame counter value 23 is valid.
The message determination unit 16 compares the reception counter value 40 stored in the reception counter storage unit 19 to be described later with the frame counter value 23 included in the message 20 received by the message reception unit 15, thereby obtaining the frame counter value 23. It is determined whether or not is valid.
 変更信号出力部17は、他の通信装置10と同期したタイミングに、変更信号50を出力する。変更信号出力部17は、変更信号50を出力することにより、後述する送信カウンタ値30及び受信カウンタ値40を変更する。
 ここでは、変更信号出力部17は、時刻を保持しており、予め設定された時刻になると、変更信号50を出力する。変更信号出力部17が保持する時刻は、他の通信装置10から送信された時刻情報によって、他の通信装置10と同期している。変更信号出力部17は、GPSのような外部の時刻源から時刻情報を取得して、他の通信装置10と時刻を同期してもよい。
The change signal output unit 17 outputs the change signal 50 at a timing synchronized with the other communication device 10. The change signal output unit 17 changes a transmission counter value 30 and a reception counter value 40 to be described later by outputting a change signal 50.
Here, the change signal output unit 17 holds the time, and outputs the change signal 50 when a preset time is reached. The time held by the change signal output unit 17 is synchronized with the other communication device 10 by the time information transmitted from the other communication device 10. The change signal output unit 17 may acquire time information from an external time source such as GPS, and synchronize the time with another communication device 10.
 送信カウンタ記憶部18は、送信カウンタ値30を記憶する。送信カウンタ値30は、メッセージ送信部14によってメッセージ20が送信された場合と、変更信号出力部17によって変更信号50が出力された場合とに更新される。 The transmission counter storage unit 18 stores a transmission counter value 30. The transmission counter value 30 is updated when the message 20 is transmitted by the message transmission unit 14 and when the change signal 50 is output by the change signal output unit 17.
 受信カウンタ記憶部19は、受信カウンタ値40を記憶する。受信カウンタ値40は、メッセージ判定部16によってメッセージ20を受理すると判定された場合と、変更信号出力部17によって変更信号50が出力された場合とに更新される。 The reception counter storage unit 19 stores a reception counter value 40. The reception counter value 40 is updated when it is determined that the message 20 is received by the message determination unit 16 and when the change signal 50 is output by the change signal output unit 17.
 送信カウンタ制御部181は、変更信号出力部17によって変更信号50が出力された場合に、送信カウンタ記憶部18に記憶された送信カウンタ値30を更新する。 The transmission counter control unit 181 updates the transmission counter value 30 stored in the transmission counter storage unit 18 when the change signal 50 is output by the change signal output unit 17.
 受信カウンタ制御部191は、変更信号出力部17によって変更信号50が出力された場合に、受信カウンタ記憶部19に記憶された受信カウンタ値40を更新する。 The reception counter control unit 191 updates the reception counter value 40 stored in the reception counter storage unit 19 when the change signal 50 is output by the change signal output unit 17.
 図3は、実施の形態1に係るメッセージ20の構成図である。
 メッセージ20は、ローカル宛先21と、ローカル送信元22と、フレームカウンタ値23と、MIC値24と、送信データ25とを含む。なお、MICは、Message Integrity Checkの略である。
 ローカル宛先21は、送信先の通信装置10のMACアドレスが設定される。ローカル宛先21に設定されるMACアドレスは、送信先の通信装置10を示すユニキャストアドレスでもよいし、ブロードキャストアドレスでもよい。
 ローカル送信元22は、送信元の通信装置10のMACアドレスが設定される。
 フレームカウンタ値23は、送信カウンタ記憶部18によって記憶された送信カウンタ値30が設定される。
 MIC値24は、メッセージ20が改ざんされていないことを確認するための値であり、送信元の通信装置10と送信先の通信装置10との間で事前に共有された暗号鍵と送信データ25とから生成される値である。具体例としては、MIC値24は、暗号鍵と送信データ25とをハッシュ関数に入力して計算された値である。
 送信データ25は、送信先に送信されるデータである。
FIG. 3 is a configuration diagram of the message 20 according to the first embodiment.
The message 20 includes a local destination 21, a local transmission source 22, a frame counter value 23, an MIC value 24, and transmission data 25. Note that MIC is an abbreviation for Message Integrity Check.
The local destination 21 is set with the MAC address of the destination communication device 10. The MAC address set as the local destination 21 may be a unicast address indicating the destination communication device 10 or a broadcast address.
The local transmission source 22 is set with the MAC address of the communication device 10 of the transmission source.
As the frame counter value 23, the transmission counter value 30 stored in the transmission counter storage unit 18 is set.
The MIC value 24 is a value for confirming that the message 20 has not been tampered with, and an encryption key and transmission data 25 shared in advance between the transmission source communication device 10 and the transmission destination communication device 10. It is a value generated from As a specific example, the MIC value 24 is a value calculated by inputting an encryption key and transmission data 25 into a hash function.
The transmission data 25 is data transmitted to the transmission destination.
 ここでは、メッセージ生成部13は、IEEE802.15.4規格にて規定されているAES-CCM*と呼ばれる暗号及びメッセージ認証の方式により、送信データ25を暗号化する。AES-CCM*では、送信データ25を暗号化することにより送信データ25に対するMIC値24も計算され、MIC値24と送信データ25とが一体化された暗号化データ26となる。 Here, the message generation unit 13 encrypts the transmission data 25 by an encryption and message authentication method called AES-CCM * defined in the IEEE 802.15.4 standard. In AES-CCM *, by encrypting the transmission data 25, the MIC value 24 for the transmission data 25 is also calculated, and the MIC value 24 and the transmission data 25 are integrated into the encrypted data 26.
 図4は、実施の形態1に係る送信カウンタ記憶部18の説明図である。
 送信カウンタ記憶部18は、メッセージ送信部14及び送信カウンタ制御部181の制御に従い、送信カウンタ値30を、上位バイト31と下位バイト32とに分けて記憶する。
FIG. 4 is an explanatory diagram of the transmission counter storage unit 18 according to the first embodiment.
The transmission counter storage unit 18 stores the transmission counter value 30 separately into upper bytes 31 and lower bytes 32 according to the control of the message transmission unit 14 and the transmission counter control unit 181.
 送信カウンタ値30は、メッセージ送信部14によってメッセージ20が送信された場合に、下位バイト32の値がメッセージ送信部14によって変更される。また、送信カウンタ値30は、変更信号出力部17によって変更信号50が出力された場合に、上位バイト31及び下位バイト32の値が送信カウンタ制御部181によって変更される。
 ここでは、送信カウンタ値30は、メッセージ送信部14によってメッセージ20が送信される度に、送信カウンタ制御部181によって下位バイト32の値に1加算される。また、送信カウンタ値30は、変更信号出力部17によって変更信号50が出力された場合に、送信カウンタ制御部181によって、上位バイト31の値に1加算されるとともに、下位バイト32の値が0にされる。
The transmission counter value 30 is changed by the message transmission unit 14 when the message 20 is transmitted by the message transmission unit 14. The transmission counter value 30 is changed by the transmission counter control unit 181 when the change signal 50 is output by the change signal output unit 17.
Here, the transmission counter value 30 is incremented by 1 to the value of the lower byte 32 by the transmission counter control unit 181 every time the message 20 is transmitted by the message transmission unit 14. Further, when the change signal 50 is output by the change signal output unit 17, the transmission counter value 30 is incremented by 1 to the value of the upper byte 31 by the transmission counter control unit 181, and the value of the lower byte 32 is 0. To be.
 図5は、実施の形態1に係る受信カウンタ記憶部19の説明図である。
 受信カウンタ記憶部19は、メッセージ判定部16及び受信カウンタ制御部191の制御に従い、受信カウンタ値40を、上位バイト41と下位バイト42とに分けて記憶する。
 特に、受信カウンタ記憶部19は、上位バイト41については、複数の通信装置10に共通の値を記憶し、下位バイト42については複数の通信装置10それぞれに対応させて値を記憶する。ここでは、受信カウンタ記憶部19は、通信装置10のMACアドレス43毎に、下位バイト42を記憶している。
FIG. 5 is an explanatory diagram of the reception counter storage unit 19 according to the first embodiment.
The reception counter storage unit 19 stores the reception counter value 40 into upper bytes 41 and lower bytes 42 according to the control of the message determination unit 16 and the reception counter control unit 191.
In particular, the reception counter storage unit 19 stores a value common to the plurality of communication devices 10 for the upper byte 41 and stores a value corresponding to each of the plurality of communication devices 10 for the lower byte 42. Here, the reception counter storage unit 19 stores a lower byte 42 for each MAC address 43 of the communication device 10.
 受信カウンタ値40は、メッセージ判定部16によってメッセージ20を受理すると判定された場合、メッセージ20の送信元に対応する下位バイト42の値に、メッセージ20に含まれたフレームカウンタ値23の下位バイトの値がメッセージ判定部16によって設定される。また、受信カウンタ値40は、変更信号出力部17によって変更信号50が出力された場合に、受信カウンタ制御部191によって上位バイト41の値が変更される。
 ここでは、受信カウンタ値40は、変更信号出力部17によって変更信号50が出力された場合に、受信カウンタ制御部191によって上位バイト41の値に1加算される。なお、この際、下位バイト42の値は変更されない。
When the message determination unit 16 determines that the message 20 is received, the reception counter value 40 is set to the value of the lower byte 42 corresponding to the transmission source of the message 20 and the lower byte of the frame counter value 23 included in the message 20. The value is set by the message determination unit 16. The reception counter value 40 is changed by the reception counter control unit 191 when the change signal 50 is output by the change signal output unit 17.
Here, the reception counter value 40 is incremented by 1 to the value of the upper byte 41 by the reception counter control unit 191 when the change signal 50 is output by the change signal output unit 17. At this time, the value of the lower byte 42 is not changed.
 また、受信カウンタ記憶部19は、通信装置10のMACアドレス43毎に、フラグ44と、鍵世代番号45とを記憶している。 In addition, the reception counter storage unit 19 stores a flag 44 and a key generation number 45 for each MAC address 43 of the communication device 10.
 フラグ44は、変更信号50が送信された後に、メッセージ20の送信元の通信装置10が送信カウンタ値30を変更した後か否かを判定するために利用される。つまり、通信装置10間での時刻同期誤差に起因して、受信側の通信装置10では送信カウンタ値30及び受信カウンタ値40を変更したにも関わらず、送信側の通信装置10で送信カウンタ値30を変更していない場合が起こり得る。この場合に、フラグ44は、メッセージ20を受理するか否かの判定が正しく行われるようにするために利用される。
 フラグ44は、変更信号出力部17によって変更信号50が出力された場合に、Onに変更される。フラグ44は、Onの状態で、送信カウンタ値30の上位バイト31が変更された後のメッセージ20が受信されると、Offに変更される。
The flag 44 is used to determine whether or not the communication device 10 that has transmitted the message 20 has changed the transmission counter value 30 after the change signal 50 is transmitted. That is, due to the time synchronization error between the communication devices 10, the transmission counter value 10 is changed in the transmission side communication device 10 even though the transmission counter value 30 and the reception counter value 40 are changed in the reception side communication device 10. The case where 30 is not changed may occur. In this case, the flag 44 is used to correctly determine whether or not to accept the message 20.
The flag 44 is changed to On when the change signal 50 is output by the change signal output unit 17. The flag 44 is changed to Off when the message 20 after the upper byte 31 of the transmission counter value 30 is changed is received in the On state.
 鍵世代番号45は、MIC値24の計算と送信データ25の暗号化とに使用される暗号鍵の世代番号である。鍵世代番号45によって特定される暗号鍵が使用される。鍵世代番号45は、定期的に、あるいは、鍵の紛失があったような場合に更新され、使用される暗号鍵が変更される。
 ここでは、鍵世代番号45は、通信装置10のMACアドレス43毎に記憶されているが、全ての通信装置10に共通の値であってもよい。
The key generation number 45 is a generation number of an encryption key used for calculating the MIC value 24 and encrypting the transmission data 25. The encryption key specified by the key generation number 45 is used. The key generation number 45 is updated regularly or when the key is lost, and the encryption key to be used is changed.
Here, the key generation number 45 is stored for each MAC address 43 of the communication device 10, but may be a value common to all the communication devices 10.
 ***動作の説明***
 実施の形態1に係る通信装置10の動作を説明する。
 実施の形態1に係る通信装置10の動作は、実施の形態1に係る通信方法に相当する。また、実施の形態1に係る通信装置10の動作は、実施の形態1に係る通信プログラムに相当する。
*** Explanation of operation ***
An operation of communication apparatus 10 according to Embodiment 1 will be described.
The operation of communication apparatus 10 according to Embodiment 1 corresponds to the communication method according to Embodiment 1. The operation of the communication device 10 according to the first embodiment corresponds to the communication program according to the first embodiment.
 <前提>
 メッセージ20の送受信の前提として、通信装置10は、隣接する通信装置10と送信カウンタ値30の交換を行う。ここでは、通信装置10は、IETFで規定されるMLE protocolを用いて、送信カウンタ値30の交換を行う。なお、IETFは、Internet Engineering Task Forceの略である。IETFは、インターネットで利用される技術の標準化を策定する組織である。また、MLEは、Mesh Link Establishmentの略である。MLE protocolは、Challenge-Response型のプロトコルである。
<Premise>
As a premise for transmission / reception of the message 20, the communication device 10 exchanges the transmission counter value 30 with the adjacent communication device 10. Here, the communication apparatus 10 exchanges the transmission counter value 30 by using MLE protocol defined by IETF. Note that IETF is an abbreviation for Internet Engineering Task Force. The IETF is an organization that formulates standardization of technologies used on the Internet. MLE is an abbreviation for Mesh Link Establishment. MLE protocol is a Challenge-Response type protocol.
 具体的には、通信装置10は、MLE protocolを用いて、次のように隣接する通信装置10と送信カウンタ値30の交換を行う。
 (1)発信側の通信装置10は、乱数値を生成して、生成した乱数値をChallengeとして受信側の通信装置10に送信する。
 (2)受信側の通信装置10は、Challengeを受信すると、乱数値を生成して、生成した乱数値をChallengeとする。そして、受信側の通信装置10は、Challengeと、送信カウンタ値30と、Challengeとして受信した乱数値から生成したMIC値とを発信側の通信装置10に送信する。
 (3)発信側の通信装置10は、受信側の通信装置10から送信されたChallengeと、送信カウンタ値30と、MIC値とを受信し、MIC値の検証を行う。MIC値が正当であれば、発信側の通信装置10は、受信側の通信装置10から受信した送信カウンタ値30を、受信側の通信装置10の受信カウンタ値40として設定する。また、発信側の通信装置10は、送信カウンタ値30を、Challengeとして受信した乱数値から生成したMIC値とともに受信側の通信装置10に送信する。
 (4)受信側の通信装置10は、送信側の通信装置10から送信された送信カウンタ値30と、MIC値とを受信し、MIC値の検証を行う。MIC値が正当であれば、受信側の通信装置10は、送信側の通信装置10から受信した送信カウンタ値30を、送信側の通信装置10の受信カウンタ値40として設定する。
 これにより、発信側の通信装置10と、受信側の通信装置10とで送信カウンタ値30が交換される。
Specifically, the communication apparatus 10 exchanges the transmission counter value 30 with the adjacent communication apparatus 10 using MLE protocol as follows.
(1) The communication device 10 on the transmission side generates a random number value, and transmits the generated random value to the communication device 10 on the reception side as Challenge.
(2) When receiving the Challenge, the communication device 10 on the receiving side generates a random value, and sets the generated random value as Challenge. Then, the communication device 10 on the reception side transmits Challenge, the transmission counter value 30, and the MIC value generated from the random value received as Challenge to the communication device 10 on the transmission side.
(3) The communication device 10 on the transmission side receives the Challenge, the transmission counter value 30, and the MIC value transmitted from the communication device 10 on the reception side, and verifies the MIC value. If the MIC value is valid, the communication device 10 on the transmission side sets the transmission counter value 30 received from the communication device 10 on the reception side as the reception counter value 40 of the communication device 10 on the reception side. In addition, the communication device 10 on the transmission side transmits the transmission counter value 30 to the communication device 10 on the reception side together with the MIC value generated from the random value received as Challenge.
(4) The reception side communication device 10 receives the transmission counter value 30 and the MIC value transmitted from the transmission side communication device 10, and verifies the MIC value. If the MIC value is valid, the communication device 10 on the reception side sets the transmission counter value 30 received from the communication device 10 on the transmission side as the reception counter value 40 of the communication device 10 on the transmission side.
As a result, the transmission counter value 30 is exchanged between the communication device 10 on the transmission side and the communication device 10 on the reception side.
 <メッセージ20の送信>
 図6は、実施の形態1に係るメッセージ20の送信処理を示すフローチャートである。
 S11の送信情報取得処理では、メッセージ生成部13は、送信データ25と、送信データ25の送信先のMACアドレスとを取得する。
<Transmission of message 20>
FIG. 6 is a flowchart showing transmission processing of the message 20 according to the first embodiment.
In the transmission information acquisition process of S11, the message generator 13 acquires the transmission data 25 and the MAC address of the transmission destination of the transmission data 25.
 S12のカウンタ値読出処理では、メッセージ生成部13は、送信カウンタ記憶部18から送信カウンタ値30を読み出す。ここでは、メッセージ生成部13は、上位バイト31と下位バイト32とを読み出して、上位バイト31と下位バイト32とを連結して送信カウンタ値30とする。 In the counter value reading process of S12, the message generation unit 13 reads the transmission counter value 30 from the transmission counter storage unit 18. Here, the message generator 13 reads the upper byte 31 and the lower byte 32 and concatenates the upper byte 31 and the lower byte 32 to obtain the transmission counter value 30.
 S13の暗号化処理では、メッセージ生成部13は、送信データ25と、送信データ25の送信先と共有された暗号鍵とを入力として、送信データ25の暗号化を行う。
 ここでは、メッセージ生成部13は、AES-CCM*により送信データ25を暗号化して、MIC値24を含む暗号化データ26が生成される。
In the encryption process of S13, the message generator 13 receives the transmission data 25 and the encryption key shared with the transmission destination of the transmission data 25, and encrypts the transmission data 25.
Here, the message generator 13 encrypts the transmission data 25 using AES-CCM *, and generates encrypted data 26 including the MIC value 24.
 S14のメッセージ生成処理では、メッセージ生成部13は、S11で取得された送信先のMACアドレスをローカル宛先21とし、自身のMACアドレスをローカル送信元22とし、S12で取得された送信カウンタ値30をフレームカウンタ値23とする。そして、メッセージ生成部13は、S13で計算された暗号化データ26を、MIC値24及び送信データ25を含むデータとしてメッセージ20を生成する。 In the message generation process of S14, the message generation unit 13 sets the MAC address of the transmission destination acquired in S11 as the local destination 21, sets its own MAC address as the local transmission source 22, and sets the transmission counter value 30 acquired in S12. The frame counter value is 23. Then, the message generator 13 generates the message 20 using the encrypted data 26 calculated in S13 as data including the MIC value 24 and the transmission data 25.
 S15のメッセージ送信処理では、メッセージ送信部14は、S14で生成されたメッセージ20を、無線通信部12を介してアンテナ11から送信先に送信する。そして、メッセージ送信部14は、送信カウンタ記憶部18によって記憶された送信カウンタ値30の下位バイト32の値に1加算する。 In the message transmission process of S15, the message transmission unit 14 transmits the message 20 generated in S14 from the antenna 11 to the transmission destination via the wireless communication unit 12. Then, the message transmission unit 14 adds 1 to the value of the lower byte 32 of the transmission counter value 30 stored by the transmission counter storage unit 18.
 <メッセージ20の受信>
 図7は、実施の形態1に係るメッセージ20の受信処理を示すフローチャートである。
 S21のメッセージ受信処理では、メッセージ受信部15は、アンテナ11を介して無線通信部12からメッセージ20を受信する。
<Reception of message 20>
FIG. 7 is a flowchart showing the reception process of the message 20 according to the first embodiment.
In the message reception process of S <b> 21, the message reception unit 15 receives the message 20 from the wireless communication unit 12 via the antenna 11.
 S22のフラグ確認処理では、メッセージ判定部16は、受信カウンタ記憶部19から、S21で受信されたメッセージ20のローカル送信元22が示す送信元の通信装置10についてのフラグ44を読み出す。そして、メッセージ判定部16は、読み出されたフラグ44がOffであるか否かを判定する。
 メッセージ判定部16は、フラグ44がOff、つまり送信カウンタ値30の上位バイト31が変更された後のメッセージ20を送信元の通信装置10から既に受信した後であれば(S22でYES)、処理をS23に進める。一方、メッセージ判定部16は、フラグ44がOn、つまり送信カウンタ値30の上位バイト31が変更された後のメッセージ20を送信元の通信装置10から受信する前であれば(S22でNO)、処理をS26に進める。
In the flag confirmation process of S22, the message determination unit 16 reads the flag 44 for the communication device 10 of the transmission source indicated by the local transmission source 22 of the message 20 received in S21 from the reception counter storage unit 19. Then, the message determination unit 16 determines whether or not the read flag 44 is Off.
If the flag 44 is Off, that is, if the message 20 after the change of the upper byte 31 of the transmission counter value 30 has already been received from the transmission source communication device 10 (YES in S22), the message determination unit 16 To S23. On the other hand, if the flag 44 is On, that is, before the message 20 after the change of the upper byte 31 of the transmission counter value 30 is received from the communication device 10 of the transmission source (NO in S22), The process proceeds to S26.
 S23の第1カウンタ判定処理では、メッセージ判定部16は、受信カウンタ記憶部19から、上位バイト41と、S21で受信されたメッセージ20のローカル送信元22が示す送信元の通信装置10についての下位バイト42とを読み出す。メッセージ判定部16は、読み出された上位バイト41と下位バイト42とを合わせて受信カウンタ値40とする。そして、メッセージ判定部16は、受信カウンタ値40よりも、S21で受信されたメッセージ20のフレームカウンタ値23が大きいか否かを判定する。
 メッセージ判定部16は、受信カウンタ値40よりもフレームカウンタ値23が大きい場合(S23でYES)、処理をS24に進める。一方、メッセージ判定部16は、受信カウンタ値40よりもフレームカウンタ値23が大きくない場合(S23でNO)、処理をS32に進める。
In the first counter determination process of S23, the message determination unit 16 transmits the lower byte of the communication device 10 that is the transmission source indicated by the upper byte 41 and the local transmission source 22 of the message 20 received in S21 from the reception counter storage unit 19. Read byte 42. The message determination unit 16 combines the read upper byte 41 and lower byte 42 as a reception counter value 40. Then, the message determination unit 16 determines whether or not the frame counter value 23 of the message 20 received in S21 is larger than the reception counter value 40.
If the frame counter value 23 is larger than the reception counter value 40 (YES in S23), the message determination unit 16 advances the process to S24. On the other hand, when the frame counter value 23 is not larger than the reception counter value 40 (NO in S23), the message determination unit 16 advances the process to S32.
 S24の第1復号処理では、メッセージ判定部16は、S21で受信されたメッセージ20の暗号化データ26を、メッセージ20のローカル送信元22が示す送信元と共有した暗号鍵を用いて復号する。 In the first decryption process of S24, the message determination unit 16 decrypts the encrypted data 26 of the message 20 received in S21 using the encryption key shared with the transmission source indicated by the local transmission source 22 of the message 20.
 S25の第1復号判定処理では、メッセージ判定部16は、暗号化データ26の復号に成功したか否かを判定する。AES-CCM*では、暗号化データ26の復号に成功すれば、MIC値24の検証に成功したことになる。
 メッセージ判定部16は、復号に成功した場合(S25でYES)、処理をS31に進める。一方、メッセージ判定部16は、復号に失敗した場合(S25でNO)、処理をS32に進める。
In the first decryption determination process of S25, the message determination unit 16 determines whether or not the decryption of the encrypted data 26 has succeeded. In AES-CCM *, if the encrypted data 26 is successfully decrypted, the MIC value 24 has been successfully verified.
If the decryption is successful (YES in S25), the message determination unit 16 advances the process to S31. On the other hand, if the decryption fails (NO in S25), the message determination unit 16 advances the process to S32.
 S26の第2カウンタ判定処理では、メッセージ判定部16は、受信カウンタ記憶部19から、上位バイト41と、S21で受信されたメッセージ20のローカル送信元22が示す送信元の通信装置10についての下位バイト42とを読み出す。メッセージ判定部16は、読み出された上位バイト41から1減じた値と下位バイト42とを合わせて受信カウンタ値40とする。そして、メッセージ判定部16は、受信カウンタ値40よりも、S21で受信されたメッセージ20のフレームカウンタ値23が大きいか否かを判定する。
 メッセージ判定部16は、受信カウンタ値40よりもフレームカウンタ値23が大きい場合(S26でYES)、処理をS27に進める。一方、メッセージ判定部16は、受信カウンタ値40よりもフレームカウンタ値23が大きくない場合(S26でNO)、処理をS32に進める。
In the second counter determination process of S26, the message determination unit 16 transmits the lower byte of the communication device 10 that is the transmission source indicated by the upper byte 41 and the local transmission source 22 of the message 20 received in S21 from the reception counter storage unit 19. Read byte 42. The message determination unit 16 adds the value obtained by subtracting 1 from the read upper byte 41 and the lower byte 42 to obtain the reception counter value 40. Then, the message determination unit 16 determines whether or not the frame counter value 23 of the message 20 received in S21 is larger than the reception counter value 40.
If the frame counter value 23 is larger than the reception counter value 40 (YES in S26), the message determination unit 16 advances the process to S27. On the other hand, when the frame counter value 23 is not larger than the reception counter value 40 (NO in S26), the message determination unit 16 advances the process to S32.
 S27の第2復号処理では、メッセージ判定部16は、S21で受信されたメッセージ20の暗号化データ26を、メッセージ20のローカル送信元22が示す送信元と共有した暗号鍵を用いて復号する。 In the second decryption process of S27, the message determination unit 16 decrypts the encrypted data 26 of the message 20 received in S21 using the encryption key shared with the transmission source indicated by the local transmission source 22 of the message 20.
 S28の第2復号判定処理では、メッセージ判定部16は、暗号化データ26の復号に成功したか否かを判定する。
 メッセージ判定部16は、復号に成功した場合(S28でYES)、処理をS29に進める。一方、メッセージ判定部16は、復号に失敗した場合(S28でNO)、処理をS32に進める。
In the second decryption determination process of S28, the message determination unit 16 determines whether or not the decryption of the encrypted data 26 has succeeded.
If the decryption is successful (YES in S28), the message determination unit 16 advances the process to S29. On the other hand, when the decryption fails (NO in S28), the message determination unit 16 advances the process to S32.
 S29の変更判定処理では、メッセージ判定部16は、S21で受信されたメッセージ20のフレームカウンタ値23の上位バイトが、受信カウンタ値40の上位バイト41と同じか否かを判定する。つまり、メッセージ判定部16は、フレームカウンタ値23の上位バイトが、変更後の値になっているか否かを判定する。
 メッセージ判定部16は、上位バイトが同じ場合(S29でYES)、処理をS30に進める。一方、メッセージ判定部16は、上位バイトが異なる場合(S29でNO)、処理をS31に進める。
In the change determination process in S29, the message determination unit 16 determines whether or not the upper byte of the frame counter value 23 of the message 20 received in S21 is the same as the upper byte 41 of the reception counter value 40. That is, the message determination unit 16 determines whether or not the upper byte of the frame counter value 23 is a value after the change.
If the upper byte is the same (YES in S29), the message determination unit 16 advances the process to S30. On the other hand, if the upper byte is different (NO in S29), the message determination unit 16 advances the process to S31.
 S30のフラグ更新処理では、受信カウンタ記憶部19は、S21で受信されたメッセージ20のローカル送信元22が示す送信元の通信装置10についてのフラグ44をOffに更新する。 In the flag update process of S30, the reception counter storage unit 19 updates the flag 44 for the communication device 10 of the transmission source indicated by the local transmission source 22 of the message 20 received in S21 to Off.
 S31のカウンタ値更新処理では、メッセージ判定部16は、受信カウンタ値40の下位バイト42に、S21で受信されたメッセージ20のフレームカウンタ値23の下位バイトを設定する。つまり、メッセージ判定部16は、受信カウンタ記憶部19に記憶された受信カウンタ値40の下位バイト42に、S21で受信されたメッセージ20のフレームカウンタ値23の下位バイトを上書きする。 In the counter value update process in S31, the message determination unit 16 sets the lower byte of the frame counter value 23 of the message 20 received in S21 in the lower byte 42 of the reception counter value 40. That is, the message determination unit 16 overwrites the lower byte 42 of the frame counter value 23 of the message 20 received in S21 on the lower byte 42 of the reception counter value 40 stored in the reception counter storage unit 19.
 S32の第1破棄処理では、メッセージ判定部16は、S21で受信されたメッセージ20を破棄する。 In the first discard process of S32, the message determination unit 16 discards the message 20 received in S21.
 ここで、S23の処理は、送信カウンタ値30の上位バイト31が変更された後のメッセージ20を送信元の通信装置10から既に受信した後である場合に実行される。したがって、S23の処理が実行される場合、送信元の通信装置10の上位バイト31と、受信側の通信装置10の上位バイト41とは一致している。また、受信側の通信装置10の下位バイト42は、上位バイト31が変更された後のメッセージ20に含まれるフレームカウンタ値23に基づき変更されている。
 そこで、メッセージ判定部16は、単純に上位バイト41と下位バイト42とを合わせた値を受信カウンタ値40として、フレームカウンタ値23と比較する。これにより、リプレイアタックが行われた場合には、フレームカウンタ値23が受信カウンタ値40以下になるため、リプレイアタックを防止できる。一方、受信すべきメッセージ20であれば、フレームカウンタ値23が受信カウンタ値40よりも大きくなるため、誤ってメッセージ20が破棄されることがない。つまり、リプレイアタックを防止しつつ、誤ってメッセージ20が破棄されることのない、正しい判定をすることができる。
Here, the process of S23 is executed when the message 20 after the change of the upper byte 31 of the transmission counter value 30 has already been received from the communication device 10 as the transmission source. Therefore, when the process of S23 is executed, the upper byte 31 of the communication device 10 that is the transmission source and the upper byte 41 of the communication device 10 that is the reception side match. The lower byte 42 of the communication device 10 on the receiving side is changed based on the frame counter value 23 included in the message 20 after the upper byte 31 is changed.
Accordingly, the message determination unit 16 simply compares the frame counter value 23 with the value obtained by combining the upper byte 41 and the lower byte 42 as the reception counter value 40. As a result, when a replay attack is performed, the frame counter value 23 becomes equal to or less than the reception counter value 40, so that the replay attack can be prevented. On the other hand, in the case of the message 20 to be received, the frame counter value 23 becomes larger than the reception counter value 40, so that the message 20 is not erroneously discarded. That is, it is possible to make a correct determination while preventing the replay attack and preventing the message 20 from being accidentally discarded.
 S26の処理は、送信カウンタ値30の上位バイト31が変更された後のメッセージ20を送信元の通信装置10から受信する前である場合に実行される。したがって、S26の処理が実行される場合、送信元の通信装置10では、送信カウンタ値30の上位バイト31が変更される前であるときと、送信カウンタ値30の上位バイト31が変更された後であるときとがある。
 そこで、メッセージ判定部16は、上位バイト41から1減じた値と下位バイト42とを合わせた値を受信カウンタ値40として、フレームカウンタ値23と比較する。
 送信元の通信装置10で送信カウンタ値30の上位バイト31が変更される前である場合、送信元の通信装置10の上位バイト31と、受信側の通信装置10の上位バイト41から1減じた値とは一致している。また、受信側の通信装置10の下位バイト42は、上位バイト41が変更される際に変更されておらず、元の状態のままである。したがって、上位バイト41から1減じた値と下位バイト42とを合わせた値を受信カウンタ値40とすることにより、S23の処理と同様に、リプレイアタックを防止しつつ、誤ってメッセージ20が破棄されることのない、正しい判定をすることができる。
 一方、送信元の通信装置10で送信カウンタ値30の上位バイト31が変更された後である場合には、送信元の通信装置10の上位バイト31は、受信側の通信装置10の上位バイト41から1減じた値よりも大きくなる。つまり、フレームカウンタ値23の方が受信カウンタ値40よりも大きい値になる。したがって、メッセージ20が破棄されることはなく、誤ってメッセージ20が破棄されることがない。また、送信カウンタ値30の上位バイト31が変更された後のメッセージ20を受信する前であるため、上位バイト31が変更された後のメッセージ20を用いたリプレイアタックが行われることはない。
The process of S26 is executed when the message 20 after the upper byte 31 of the transmission counter value 30 is changed is not received from the communication device 10 as the transmission source. Therefore, when the process of S26 is executed, in the communication apparatus 10 that is the transmission source, before the upper byte 31 of the transmission counter value 30 is changed and after the upper byte 31 of the transmission counter value 30 is changed. There are times when
Therefore, the message determination unit 16 compares the value obtained by subtracting 1 from the upper byte 41 and the lower byte 42 as the reception counter value 40 and compares it with the frame counter value 23.
When the upper byte 31 of the transmission counter value 30 is not changed in the transmission source communication device 10, 1 is subtracted from the upper byte 31 of the transmission source communication device 10 and the upper byte 41 of the reception side communication device 10. The value matches. Further, the lower byte 42 of the receiving communication device 10 is not changed when the upper byte 41 is changed, and remains in its original state. Therefore, by setting the value obtained by subtracting 1 from the upper byte 41 and the lower byte 42 as the reception counter value 40, the message 20 is erroneously discarded while preventing a replay attack as in the processing of S23. It is possible to make a correct judgment without any problems.
On the other hand, when the upper byte 31 of the transmission counter value 30 has been changed in the transmission source communication device 10, the upper byte 31 of the transmission source communication device 10 is the upper byte 41 of the reception side communication device 10. It becomes larger than the value obtained by subtracting 1 from. That is, the frame counter value 23 is larger than the reception counter value 40. Therefore, the message 20 is not discarded, and the message 20 is not accidentally discarded. In addition, since the message 20 after the upper byte 31 of the transmission counter value 30 is changed is not received, the replay attack using the message 20 after the upper byte 31 is changed is not performed.
 なお、通信装置10が受信カウンタ値40の上位バイト41を変更する前に、送信カウンタ値30の上位バイト31が変更された後のメッセージ20を受信する可能性もある。この場合、受信カウンタ値40よりもフレームカウンタ値23の方が大きい値になる。そのため、メッセージ20が破棄されることはなく、誤ってメッセージ20が破棄されることがない。 Note that there is a possibility that the message 20 after the upper byte 31 of the transmission counter value 30 is changed is received before the communication device 10 changes the upper byte 41 of the reception counter value 40. In this case, the frame counter value 23 is larger than the reception counter value 40. Therefore, the message 20 is not discarded and the message 20 is not accidentally discarded.
 ***実施の形態1の効果***
 以上のように、実施の形態1に係る通信装置10は、受信カウンタ値40を上位バイト41と下位バイト42とに分けて記憶する。特に、上位バイト41については複数の送信元の通信装置10に共通の値を記憶する。これにより、実施の形態1に係る通信装置10は、隣接する通信装置10毎に上位バイト41を記憶する必要が無くなり、受信カウンタ値40を記憶するために必要なメモリ量を減らすことができる。
*** Effects of Embodiment 1 ***
As described above, the communication device 10 according to the first embodiment stores the reception counter value 40 by dividing it into the upper byte 41 and the lower byte 42. In particular, for the upper byte 41, a value common to a plurality of transmission source communication devices 10 is stored. As a result, the communication device 10 according to the first embodiment does not need to store the upper byte 41 for each adjacent communication device 10, and can reduce the amount of memory necessary for storing the reception counter value 40.
 また、実施の形態1に係る通信装置10は、メッセージ判定部16は、S22でメッセージ20の送信元の通信装置10から上位バイト31の値が変更されたフレームカウンタ値23を既に受信したか否かを判定する。そして、メッセージ判定部16は、既に受信している場合には、S23で値が変更された後の上位バイト31の値を用い、受信していない場合には、S26で値が変更される前の上位バイト31の値を用いて、メッセージ20を受理するか否かを判定する。これにより、実施の形態1に係る通信装置10は、リプレイアタックを防止しつつ、誤ってメッセージ20が破棄されることのない、正しい判定をする。 Also, in the communication device 10 according to the first embodiment, the message determination unit 16 has already received the frame counter value 23 in which the value of the upper byte 31 has been changed from the communication device 10 that has transmitted the message 20 in S22. Determine whether. If the message has already been received, the message determination unit 16 uses the value of the upper byte 31 after the value has been changed in S23. If not, the message determination unit 16 has not changed the value in S26. Is used to determine whether to accept the message 20. As a result, the communication device 10 according to the first embodiment makes a correct determination that prevents the message 20 from being accidentally discarded while preventing a replay attack.
 ***他の構成***
 上記説明では、上位バイト31と下位バイト32とを合わせた送信カウンタ値30をフレームカウンタ値23としてメッセージ20に含めた。
 しかし、下位バイト32のみをフレームカウンタ値23としてメッセージ20に含めるようにしてもよい。これにより、メッセージ20を短くすることができ、通信リソースの消費量を削減できる。
 但し、この場合、フレームカウンタ値23には上位バイト31が含まれていないので、図7のS29において、上位バイト41がフレームカウンタ値23の上位バイトと同じかを判定することができない。そのため、上位バイト31の下位の一部のビットをメッセージ20に含めておき、S29では、上位バイト41の下位の一部のビットと、メッセージ20に含まれる上位バイト31の下位の一部のビットとが同じか比較する。
*** Other configurations ***
In the above description, the transmission counter value 30 including the upper byte 31 and the lower byte 32 is included in the message 20 as the frame counter value 23.
However, only the lower byte 32 may be included in the message 20 as the frame counter value 23. Thereby, the message 20 can be shortened and the consumption of communication resources can be reduced.
However, in this case, since the upper byte 31 is not included in the frame counter value 23, it cannot be determined whether the upper byte 41 is the same as the upper byte of the frame counter value 23 in S29 of FIG. Therefore, some lower bits of the upper byte 31 are included in the message 20, and in S29, some lower bits of the upper byte 41 and some lower bits of the upper byte 31 included in the message 20 are included. Compare if is the same.
 また、上記説明では、メッセージ20の送受信の前提として、送信カウンタ値30の交換を行った。
 しかし、送信カウンタ値30の交換を行うことに代え、時刻を同期させることにより、送信カウンタ値30及び受信カウンタ値40を決定するようにしてもよい。
 具体的には、ある起点となる時刻T1の場合を上位バイト31及び上位バイト41を0として設定し、第1基準時間が経過する毎に上位バイト31及び上位バイト41に1加算する。同様に、ある起点となる時刻T2の場合を下位バイト32及び下位バイト42を0として設定し、第2基準時間が経過する毎に下位バイト32及び下位バイト42に1加算する。これにより、時刻を同期させれば、送信カウンタ値30及び受信カウンタ値40を同期させることができる。
In the above description, the transmission counter value 30 is exchanged as a premise for transmission / reception of the message 20.
However, instead of exchanging the transmission counter value 30, the transmission counter value 30 and the reception counter value 40 may be determined by synchronizing the times.
Specifically, the upper byte 31 and the upper byte 41 are set to 0 in the case of time T1 as a starting point, and 1 is added to the upper byte 31 and the upper byte 41 every time the first reference time elapses. Similarly, the lower byte 32 and the lower byte 42 are set to 0 in the case of the time T2 as a starting point, and 1 is added to the lower byte 32 and the lower byte 42 every time the second reference time elapses. Thereby, if the time is synchronized, the transmission counter value 30 and the reception counter value 40 can be synchronized.
 なお、上記説明では、AES-CCM*を採用したため、暗号化データ26を復号することにより、MIC値24が正当であるか否かを判定することができた。しかし、AES-CCM*とは異なる他の方式を採用した場合、暗号化データ26を復号する処理とは別に、MIC値24が正当であるか否かを判定する処理が必要となる。 In the above description, since AES-CCM * is adopted, it is possible to determine whether or not the MIC value 24 is valid by decrypting the encrypted data 26. However, when another method different from AES-CCM * is adopted, a process for determining whether or not the MIC value 24 is valid is required in addition to the process for decrypting the encrypted data 26.
 また、上位バイト31と上位バイト41とは同じ桁数であり、下位バイト32と下位バイト42とは同じ桁数である。下位バイト32と下位バイト42とは、最大値になった後の桁上がりが許容されない。そのため、構成する通信システム1で必要な桁数を用意しておく必要がある。 Further, the upper byte 31 and the upper byte 41 have the same number of digits, and the lower byte 32 and the lower byte 42 have the same number of digits. The lower byte 32 and the lower byte 42 are not allowed to carry after reaching the maximum value. Therefore, it is necessary to prepare the number of digits necessary for the communication system 1 to be configured.
 ***ハードウェア構成例の説明***
 最後に、通信装置10のハードウェア構成例を説明する。
 通信装置10はコンピュータである。
 通信装置10の機能は、ソフトウェアで実現することもできるし、ハードウェアで実現することもできる。
 図8は、通信装置10の機能がソフトウェアで実現される場合のハードウェア構成例を示す図である。
 図9は、通信装置10の機能がハードウェアで実現される場合のハードウェア構成例を示す図である。
 以下、図8及び図9を参照して、通信装置10のハードウェア構成例を説明する。
*** Explanation of hardware configuration example ***
Finally, a hardware configuration example of the communication device 10 will be described.
The communication device 10 is a computer.
The function of the communication device 10 can be realized by software or hardware.
FIG. 8 is a diagram illustrating a hardware configuration example in a case where the function of the communication device 10 is realized by software.
FIG. 9 is a diagram illustrating a hardware configuration example in a case where the function of the communication device 10 is realized by hardware.
Hereinafter, a hardware configuration example of the communication apparatus 10 will be described with reference to FIGS. 8 and 9.
 **通信装置10の機能がソフトウェアで実現される場合**
 通信装置10の機能がソフトウェアで実現される場合は、図8に示すように、通信装置10は、プロセッサ901、補助記憶装置902、メモリ903、通信インタフェース回路904、変調回路905、アンテナ11といったハードウェアを備える。
 プロセッサ901は、信号線910を介して他のハードウェアと接続され、これら他のハードウェアを制御する。通信インタフェース回路904は、予め決められたプロトコルに従いメッセージ20の送受信をするための回路である。変調回路905は、メッセージ20を搬送波に乗せて送信するための変調を行う回路である。アンテナ11は、上述したものである。
** When the function of the communication device 10 is realized by software **
When the function of the communication device 10 is realized by software, the communication device 10 includes hardware such as a processor 901, an auxiliary storage device 902, a memory 903, a communication interface circuit 904, a modulation circuit 905, and an antenna 11, as shown in FIG. Wear.
The processor 901 is connected to other hardware via the signal line 910, and controls these other hardware. The communication interface circuit 904 is a circuit for transmitting and receiving the message 20 according to a predetermined protocol. The modulation circuit 905 is a circuit that performs modulation for transmitting the message 20 on a carrier wave. The antenna 11 is as described above.
 プロセッサ901は、プロセッシングを行うICである。ICは、Integrated Circuitの略である。
 プロセッサ901は、具体的には、CPU、DSP、GPUである。CPUは、Central Processing Unitの略である。DSPは、Digital Signal Processorの略である。GPUは、Graphics Processing Unitの略である。
 補助記憶装置902は、具体的には、ROM、フラッシュメモリ、HDDである。ROMは、Read Only Memoryの略である。HDDは、Hard Disk Driveの略である。
 メモリ903は、具体的には、RAMである。RAMは、Random Access Memoryの略である。
 送信カウンタ記憶部18と、受信カウンタ記憶部19とは、補助記憶装置902又はメモリ903により実現される。
The processor 901 is an IC that performs processing. IC is an abbreviation for Integrated Circuit.
Specifically, the processor 901 is a CPU, a DSP, or a GPU. CPU is an abbreviation for Central Processing Unit. DSP is an abbreviation for Digital Signal Processor. GPU is an abbreviation for Graphics Processing Unit.
Specifically, the auxiliary storage device 902 is a ROM, a flash memory, or an HDD. ROM is an abbreviation for Read Only Memory. HDD is an abbreviation for Hard Disk Drive.
Specifically, the memory 903 is a RAM. RAM is an abbreviation for Random Access Memory.
The transmission counter storage unit 18 and the reception counter storage unit 19 are realized by the auxiliary storage device 902 or the memory 903.
 補助記憶装置902には、無線通信部12と、メッセージ生成部13と、メッセージ送信部14と、メッセージ判定部16と、変更信号出力部17との機能を実現するプログラムが記憶されている。以下、無線通信部12と、メッセージ生成部13と、メッセージ送信部14と、メッセージ判定部16と、変更信号出力部17と、送信カウンタ制御部181と、受信カウンタ制御部191とをまとめて「部」と表記する。
 このプログラムは、メモリ903にロードされ、プロセッサ901に読み込まれ、プロセッサ901によって実行される。
 更に、補助記憶装置902には、OSも記憶されている。OSは、Operating Systemの略である。そして、OSの少なくとも一部がメモリ903にロードされ、プロセッサ901はOSを実行しながら、「部」の機能を実現するプログラムを実行する。
 図8では、1つのプロセッサ901が図示されているが、通信装置10が複数のプロセッサ901を備えていてもよい。
 そして、複数のプロセッサ901が「部」の機能を実現するプログラムを連携して実行してもよい。
 また、「部」の処理の結果を示す情報やデータや信号値や変数値が、メモリ903、補助記憶装置902、又は、プロセッサ901内のレジスタ又はキャッシュメモリに記憶される。
 また、「部」の機能を実現するプログラムは、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ブルーレイ(登録商標)ディスク、DVD等の可搬記憶媒体に記憶されてもよい。
The auxiliary storage device 902 stores a program that realizes the functions of the wireless communication unit 12, the message generation unit 13, the message transmission unit 14, the message determination unit 16, and the change signal output unit 17. Hereinafter, the wireless communication unit 12, the message generation unit 13, the message transmission unit 14, the message determination unit 16, the change signal output unit 17, the transmission counter control unit 181, and the reception counter control unit 191 are collectively referred to as “ Part.
This program is loaded into the memory 903, read into the processor 901, and executed by the processor 901.
Further, the auxiliary storage device 902 stores an OS. OS is an abbreviation for Operating System. Then, at least a part of the OS is loaded into the memory 903, and the processor 901 executes a program that realizes the function of “unit” while executing the OS.
Although one processor 901 is illustrated in FIG. 8, the communication apparatus 10 may include a plurality of processors 901.
A plurality of processors 901 may execute a program for realizing the function of “unit” in cooperation with each other.
In addition, information, data, signal values, and variable values indicating the processing results of “unit” are stored in the memory 903, the auxiliary storage device 902, or a register or cache memory in the processor 901.
The program for realizing the function of “unit” may be stored in a portable storage medium such as a magnetic disk, a flexible disk, an optical disk, a compact disk, a Blu-ray (registered trademark) disk, or a DVD.
 **通信装置10の機能がハードウェアで実現される場合**
 通信装置10の機能がハードウェアで実現される場合は、図9に示すように、通信装置10は、処理回路990、通信インタフェース回路904、変調回路905、アンテナ11といったハードウェアを備える。
 処理回路990は、「部」と、送信カウンタ記憶部18と、受信カウンタ記憶部19との機能を実現する専用の電子回路である。
 処理回路990は、単一回路、複合回路、プログラム化したプロセッサ、並列プログラム化したプロセッサ、ロジックIC、GA、ASIC、FPGAが想定される。GAは、Gate Arrayの略である。ASICは、Application Specific Integrated Circuitの略である。FPGAは、Field-Programmable Gate Arrayの略である。
 「部」と、送信カウンタ記憶部18と、受信カウンタ記憶部19との機能を1つの処理回路990で実現してもよいし、「部」と、送信カウンタ記憶部18と、受信カウンタ記憶部19との機能を複数の処理回路990に分散させて実現してもよい。
** When the function of the communication device 10 is realized by hardware **
When the function of the communication device 10 is realized by hardware, the communication device 10 includes hardware such as a processing circuit 990, a communication interface circuit 904, a modulation circuit 905, and an antenna 11, as shown in FIG.
The processing circuit 990 is a dedicated electronic circuit that implements the functions of the “unit”, the transmission counter storage unit 18, and the reception counter storage unit 19.
The processing circuit 990 is assumed to be a single circuit, a composite circuit, a programmed processor, a parallel programmed processor, a logic IC, a GA, an ASIC, and an FPGA. GA is an abbreviation for Gate Array. ASIC is an abbreviation for Application Specific Integrated Circuit. FPGA is an abbreviation for Field-Programmable Gate Array.
The functions of “part”, transmission counter storage unit 18 and reception counter storage unit 19 may be realized by one processing circuit 990, or “part”, transmission counter storage unit 18 and reception counter storage unit 19 may be realized by being distributed to a plurality of processing circuits 990.
 **通信装置10の機能がソフトウェアとハードウェアの組み合わせで実現される場合**
 通信装置10の一部の機能を専用のハードウェアで実現し、他の機能をソフトウェア又はプログラムで実現するようにしてもよい。
 つまり、通信装置10の一部の機能を図9に示した処理回路990で実現し、通信装置10の残りの機能をプログラムで実現し、図8に示したプロセッサ901が残りの機能を実現するプログラムを実行するようにしてもよい。
** When the function of the communication device 10 is realized by a combination of software and hardware **
Some functions of the communication device 10 may be realized by dedicated hardware, and other functions may be realized by software or a program.
That is, some functions of the communication device 10 are realized by the processing circuit 990 shown in FIG. 9, the remaining functions of the communication device 10 are realized by a program, and the processor 901 shown in FIG. 8 realizes the remaining functions. The program may be executed.
 **付記**
 プロセッサ901、補助記憶装置902及びメモリ903と、処理回路990を、総称して「プロセッシングサーキットリー」という。
 つまり、通信装置10のハードウェア構成が図8のハードウェア構成、図9のハードウェア構成のいずれであっても、「部」の機能は、プロセッシングサーキットリーにより実現される。
 また、「部」を「工程」又は「手順」又は「処理」に読み替えてもよい。
 また、「部」の機能をファームウェアで実現してもよい。
** Additional notes **
The processor 901, the auxiliary storage device 902, the memory 903, and the processing circuit 990 are collectively referred to as “processing circuitry”.
That is, regardless of whether the hardware configuration of the communication apparatus 10 is the hardware configuration of FIG. 8 or the hardware configuration of FIG. 9, the function of “unit” is realized by the processing circuitry.
In addition, “part” may be read as “process”, “procedure”, or “processing”.
Further, the function of “unit” may be realized by firmware.
 1 通信システム、10 通信装置、11 アンテナ、12 無線通信部、13 メッセージ生成部、14 メッセージ送信部、15 メッセージ受信部、16 メッセージ判定部、17 変更信号出力部、18 送信カウンタ記憶部、19 受信カウンタ記憶部、20 メッセージ、21 ローカル宛先、22 ローカル送信元、23 フレームカウンタ値、24 MIC値、25 送信データ、26 暗号化データ、30 送信カウンタ値、31 上位バイト、32 下位バイト、40 受信カウンタ値、41 上位バイト、42 下位バイト、43 MACアドレス、44 フラグ、45 鍵世代番号。 1 communication system, 10 communication device, 11 antenna, 12 wireless communication unit, 13 message generation unit, 14 message transmission unit, 15 message reception unit, 16 message determination unit, 17 change signal output unit, 18 transmission counter storage unit, 19 reception Counter storage, 20 messages, 21 local destinations, 22 local transmission sources, 23 frame counter values, 24 MIC values, 25 transmission data, 26 encrypted data, 30 transmission counter values, 31 upper bytes, 32 lower bytes, 40 reception counter Value, 41 upper byte, 42 lower byte, 43 MAC address, 44 flag, 45 key generation number.

Claims (7)

  1.  受信カウンタ値を上位バイトと下位バイトとに分け、前記上位バイトについては複数の送信元に共通の値を記憶し、前記下位バイトについては前記複数の送信元それぞれに対応させて値を記憶する受信カウンタ記憶部と、
     前記受信カウンタ記憶部によって記憶された前記上位バイトの値と、メッセージの送信元に対応して前記受信カウンタ記憶部によって記憶された前記下位バイトの値とから生成される受信カウンタ値と、前記メッセージに含まれたフレームカウンタ値とを比較して、前記メッセージを受理するか否かを判定するメッセージ判定部と
    を備える通信装置。
    A reception counter value is divided into an upper byte and a lower byte, a value common to a plurality of transmission sources is stored for the upper byte, and a value is stored corresponding to each of the plurality of transmission sources for the lower byte. A counter storage unit;
    A reception counter value generated from the value of the upper byte stored by the reception counter storage unit and the value of the lower byte stored by the reception counter storage unit corresponding to the transmission source of the message; A message determination unit that compares the frame counter value included in the message and determines whether or not to accept the message.
  2.  前記受信カウンタ値は、前記メッセージ判定部によって前記メッセージを受理すると判定された場合、前記メッセージの送信元に対応する前記下位バイトの値に、前記メッセージに含まれたフレームカウンタ値の下位バイトの値が設定される
    請求項1に記載の通信装置。
    The reception counter value is a value of the lower byte of the frame counter value included in the message in the value of the lower byte corresponding to the transmission source of the message when the message determination unit determines to accept the message. The communication device according to claim 1, wherein
  3.  前記受信カウンタ値は、変更信号が出力された場合に、前記上位バイトの値が変更され、
     前記メッセージ判定部は、前記メッセージの送信元から上位バイトの値が変更されたフレームカウンタ値を既に受信したか否かを判定し、既に受信している場合には、値が変更された後の前記上位バイトの値を用い、未だ受信していない場合には、値が変更される前の前記上位バイトの値を用いて、前記メッセージを受理するか否かを判定する
    請求項1又は2に記載の通信装置。
    The reception counter value, when a change signal is output, the value of the upper byte is changed,
    The message determination unit determines whether or not the frame counter value in which the value of the upper byte has been changed has already been received from the transmission source of the message, and if it has already been received, the value after the value has been changed 3. The method according to claim 1, wherein the value of the upper byte is used and if the message has not been received yet, the value of the upper byte before the value is changed is used to determine whether to accept the message. The communication device described.
  4.  前記通信装置は、さらに、
     送信カウンタ値を記憶する送信カウンタ記憶部と、
     前記送信カウンタ記憶部によって記憶された送信カウンタ値を前記フレームカウンタ値として含むメッセージを送信するメッセージ送信部と
    を備える請求項1から3までのいずれか1項に記載の通信装置。
    The communication device further includes:
    A transmission counter storage unit for storing a transmission counter value;
    The communication apparatus according to claim 1, further comprising: a message transmission unit that transmits a message including the transmission counter value stored in the transmission counter storage unit as the frame counter value.
  5.  前記送信カウンタ記憶部は、送信カウンタ値を上位バイトと下位バイトとに分けて記憶し、
     前記送信カウンタ値は、前記メッセージ送信部によってメッセージが送信された場合に、前記下位バイトの値が変更される
    請求項4に記載の通信装置。
    The transmission counter storage unit stores the transmission counter value divided into upper bytes and lower bytes,
    The communication apparatus according to claim 4, wherein the value of the lower byte is changed when the message is transmitted by the message transmission unit.
  6.  前記送信カウンタ値は、変更信号が出力された場合に、前記上位バイトの値が変更される
    請求項4又は5に記載の通信装置。
    The communication apparatus according to claim 4 or 5, wherein the value of the upper byte is changed when the change signal is output from the transmission counter value.
  7.  複数の通信装置を備える通信システムであり、
     各通信装置は、
     受信カウンタ値を上位バイトと下位バイトとに分け、前記上位バイトについては他の通信装置に共通の値を記憶し、前記下位バイトについては前記他の通信装置それぞれに対応させて値を記憶する受信カウンタ記憶部と、
     前記受信カウンタ記憶部によって記憶された前記上位バイトの値と、メッセージの送信元の通信装置に対応して前記受信カウンタ記憶部によって記憶された前記下位バイトの値とから生成される受信カウンタ値と、前記メッセージに含まれたフレームカウンタ値とを比較して、前記メッセージを受理するか否かを判定するメッセージ判定部と
    を備える通信システム。
    A communication system comprising a plurality of communication devices,
    Each communication device
    The reception counter value is divided into an upper byte and a lower byte, a value common to other communication devices is stored for the upper byte, and a value corresponding to each of the other communication devices is stored for the lower byte. A counter storage unit;
    A reception counter value generated from the value of the upper byte stored by the reception counter storage unit and the value of the lower byte stored by the reception counter storage unit corresponding to the communication device that is the transmission source of the message; A message determination unit that compares a frame counter value included in the message to determine whether to accept the message.
PCT/JP2015/077322 2015-09-28 2015-09-28 Communication device and communication system WO2017056154A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/JP2015/077322 WO2017056154A1 (en) 2015-09-28 2015-09-28 Communication device and communication system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2015/077322 WO2017056154A1 (en) 2015-09-28 2015-09-28 Communication device and communication system

Publications (1)

Publication Number Publication Date
WO2017056154A1 true WO2017056154A1 (en) 2017-04-06

Family

ID=58422785

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2015/077322 WO2017056154A1 (en) 2015-09-28 2015-09-28 Communication device and communication system

Country Status (1)

Country Link
WO (1) WO2017056154A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109213796A (en) * 2018-09-20 2019-01-15 京信通信系统(中国)有限公司 Rf data table generating method and device, radio frequency value querying method and device
WO2024019655A1 (en) * 2022-07-22 2024-01-25 Schneider Electric Asia Pte Ltd Frame counter recordal and an energy limited device

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090292913A1 (en) * 2008-05-23 2009-11-26 Honeywell International Inc. Apparatus and method for counter-based communications in wireless sensor networks and other networks
US20110158410A1 (en) * 2008-09-10 2011-06-30 Rainer Falk Method for transmitting data between network nodes
WO2013084304A1 (en) * 2011-12-06 2013-06-13 富士通株式会社 Nodes, communication method, and communication system

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090292913A1 (en) * 2008-05-23 2009-11-26 Honeywell International Inc. Apparatus and method for counter-based communications in wireless sensor networks and other networks
US20110158410A1 (en) * 2008-09-10 2011-06-30 Rainer Falk Method for transmitting data between network nodes
WO2013084304A1 (en) * 2011-12-06 2013-06-13 富士通株式会社 Nodes, communication method, and communication system

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109213796A (en) * 2018-09-20 2019-01-15 京信通信系统(中国)有限公司 Rf data table generating method and device, radio frequency value querying method and device
CN109213796B (en) * 2018-09-20 2020-11-10 京信通信系统(中国)有限公司 Radio frequency data table generation method and device and radio frequency value query method and device
WO2024019655A1 (en) * 2022-07-22 2024-01-25 Schneider Electric Asia Pte Ltd Frame counter recordal and an energy limited device

Similar Documents

Publication Publication Date Title
US11909870B2 (en) ECDHE key exchange for mutual authentication using a key server
US11943343B2 (en) ECDHE key exchange for server authentication and a key server
US11533297B2 (en) Secure communication channel with token renewal mechanism
US9485230B2 (en) Efficient key generator for distribution of sensitive material from multiple application service providers to a secure element such as a universal integrated circuit card (UICC)
US8121284B2 (en) Information processing system, information processing method, and information processing program
JP5575914B2 (en) Multi-band / multi-link secure key generation and distribution protocol
WO2016098303A1 (en) Signature verification device, signature generation device, signature processing system, signature verification method, and signature generation method
US20150341178A1 (en) Certificate issuing system, client terminal, server device, certificate acquisition method, and certificate issuing method
US20130070925A1 (en) Communication device, recording medium, and method thereof
US20090276629A1 (en) Method for deriving traffic encryption key
JP6367376B2 (en) Chaos-based synchronization for secure network communication
US10686587B2 (en) Method for safeguarding the information security of data transmitted via a data bus and data bus system
EP3811583B1 (en) Secure systems and methods for resolving audio device identity using remote application
US11190354B2 (en) Randomness verification system and method of verifying randomness
US20220209944A1 (en) Secure Server Digital Signature Generation For Post-Quantum Cryptography Key Encapsulations
US20200213106A1 (en) Security service providing apparatus and method for supporting lightweight security scheme
US20230274035A1 (en) Securing data stored in a memory of an iot device during a low power mode
JP7451738B2 (en) Key update method and related devices
US9825920B1 (en) Systems and methods for multi-function and multi-purpose cryptography
WO2017056154A1 (en) Communication device and communication system
US20080045180A1 (en) Data transmitting method and apparatus applying wireless protected access to a wireless distribution system
CN115314284B (en) Public key authentication searchable encryption method and system based on trusted execution environment
JP5835162B2 (en) Cryptographic communication system and cryptographic communication method
JP2023015282A (en) Second communication apparatus
US11917402B2 (en) Digital radio communications

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

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

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP