Method for transmitting and receiving messages including an encrypted identifier of a transmitter device - Patents.com
By splitting the identifier of the transmission device into multiple parts and encrypting it using a symmetric key encryption protocol, the problems of identifier security and resource optimization in IoT or M2M communication systems are solved, and efficient and secure message transmission is achieved.
Patent Information
- Application Number
- JP2022542165
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2020-01-09
- Filing Date
- 2021-01-07
- Publication Date
- 2025-04-04
- Estimated Expiration
- 2041-01-07
AI Technical Summary
In IoT or M2M communication systems, prior art has difficulty effectively protecting the identifier of the transmission device when transmitting messages, especially in terms of limiting message size, controlling energy consumption and optimizing resource usage while maintaining security.
By dividing the identifier of the transmission device into multiple parts, each part encoded and encrypted in order and level, different encryption keys are determined and used using a symmetric key encryption protocol so that the receiving device can decrypt the identifier.
Secure encryption of transmission device identifiers in IoT or M2M communication systems is realized, ensuring the security of message transmission and the uniqueness of device identifiers, while avoiding excessive consumption of system resources and energy consumption.
Smart Images

Figure 0007657231000004 
Figure 0007657231000005 
Figure 0007657231000006
Abstract
Description
[Technical field]
[0001] The present invention relates to the field of digital communications. In particular, the present invention relates to a method for sending and receiving a message that includes an encrypted identifier of the device sending the message. The present invention also relates to a sender device and a receiver device implementing said sending and receiving method, respectively. [Background technology]
[0002] The invention has been found to be of particularly advantageous application in, but not limited to, communication systems for connected objects (Internet of Things - IoT - or communication systems for machine-to-machine M2M communication). In such communication systems it is often necessary to secure exchanged messages by means of encryption. However, in order to limit the power consumption of the transmitter device and / or to optimize the radio resources of the communication system, it is also necessary to limit the size of the exchanged messages. It is also desirable to limit the complexity and processing time of the operations to be performed for encryption in the transmitter device.
[0003] Conventionally, a message exchange between a sender device and a receiver device includes an identifier of the sender device so that the receiver device can identify which sender device sent the message.
[0004] Authentication of a message exchange between a sender device and a receiver device is generally ensured by a message authentication code (i.e., MAC) calculated using a network authentication key (i.e., NAK) and possibly useful data included in the message or other data such as a message counter that maintains synchronization between the sender device and the receiver device. The authentication key is known to both the sender device and the receiver device. The authentication code calculated by the sender device is included in the message. Thus, the message may be verified by the receiver device to authenticate the message.
[0005] If a malicious person wanted to send a message with a particular identifier as if the message was sent by a transmitter device associated with that identifier, he would try several possible values of the authentication code until he came across a suitable value. In some cases, this would require trying a fairly large number of possible authentication code values, but this is not impossible.
[0006] To improve security, the identifier can be encrypted according to an encryption key, and possibly other data available at both the sender and receiver devices. Thus, a malicious person not only has to discover the appropriate authentication code value, but also the correct encryption to apply to the identifier. The problem that arises in this case is knowing how to encrypt the identifier.
[0007] Asymmetric cryptography is generally not well suited for IoT or M2M type systems: indeed, the processing times for encryption are relatively long and, for a given level of security, the keys that have to be used are significantly longer than those of symmetric cryptography.
[0008] However, symmetric cryptography is much better suited for IoT or M2M type systems. Nevertheless, symmetric cryptography requires an encryption key that must be known to both the sender device and the receiver device. It is not reasonable to use the same encryption key for all sender devices, since this would be equivalent to publishing the key (it would be possible to discover this encryption key, for example, by disassembling the computer code of the sender device). It is also not possible to associate an encryption key with each sender device, since the receiver device would not know which key to use to decrypt the identifier contained in the message received from the sender device. Summary of the Invention [Problem to be solved by the invention]
[0009] The present invention aims to overcome all or some of the drawbacks of the prior art, in particular those mentioned above. [Means for solving the problem]
[0010] To this end, according to a first aspect, the invention proposes a method for transmitting, by a transmitter device of a communication system, a message to a receiver device of said communication system, the method comprising the steps of: - dividing the identifier of the transmitter device into an integer number P of parts at least equal to 2, said parts being ordered and associated with a rank that varies between 1 and P; - determining, for at least one portion of rank -2 or higher, an encryption key depending on the value of the portion of said rank and encrypting said portion with the encryption key thus determined, said encryption being performed according to a symmetric key encryption protocol; - determining an encryption identifier from the encrypted portion(s) thus obtained; and - forming a message to be sent from the encrypted identifier; - Send messages and Includes.
[0011] The term "transmitter device identifier" means the smallest item of information that makes it possible to uniquely identify a transmitter device among all the transmitter devices of a communication system.
[0012] Conventionally, identifiers are usually coded as bit fields. Thus, the values that an identifier can take range from 0 to (2 N -1), where N is a positive integer corresponding to the number of bits that encode the identifier. In such a case, N It is possible to uniquely identify different transmitter devices.
[0013] In this case, each part of the identifier can be, for example, N k bits, kis a positive integer strictly less than N, and k is the exponent of said portion varying from 1 to P, with 1≦k≦P. Thus, the value of the identifier portion of index k ranges from 0 to (2 N -1), and the following relationship is satisfied:
[0014]
number
[0015] In this application, the term "portion" is used to refer to the unencrypted portion of the identifier. When considering the result of encryption of a portion of the identifier, the term "encrypted portion" is used.
[0016] Such a configuration allows the receiver device, when decrypting the identifier, to discover which encryption key it should use to fully decrypt the identifier, as will be described in more detail below. In fact, the receiver device only needs to know how to decrypt the rank 1 part (encrypted or not) and can then successively determine the encryption keys that it must use to decrypt the encrypted parts of rank 2 or higher.
[0017] It should be noted that this is obviously the case when the encrypted identifier contained in the message is a necessary item of information to make it possible to identify the sender device that sent said message (when the sender devices of the system are uniquely identified by the value of the identifier). It is also considered that, in addition to the encryption of the identifier, the message does not contain any other indications that would allow the determination of the encryption key and thus the decryption of the encrypted identifier.
[0018] Determining the encryption key for encrypting a portion of a given rank depending on the value of the non-encrypted part of said rank is particularly advantageous, since in this case it is sufficient for a given sender device to store the encryption key necessary for encrypting the (at most P) identifiers, which always remains valid even if the encryption algorithm of the symmetric key cryptographic protocol changes over time (in other words, when the encryption algorithm is updated, there is no need to update the encryption key of the sender device).
[0019] In certain implementations, the invention may further include one or more of the following features, taken alone or in all technically possible combinations:
[0020] In a particular implementation, the encryption is performed for all parts of rank equal to or greater than 2. Such a configuration allows for increased security of the identifier encryption.
[0021] In a particular implementation, determining the encryption identifier includes encrypting the rank 1 portion with the same encryption key for multiple transmitter devices in the system and concatenating the encrypted portions of rank 1 through P.
[0022] The term "plurality of transmitter devices of a system" means at least a portion of all transmitter devices of a communication system (this is particularly the case if only a portion of the transmitter devices of the system use the encryption of identifiers according to the invention), but nothing prevents said plurality of transmitter devices from corresponding to the set of all transmitter devices of the system.
[0023] With such an arrangement, the receiver device knows what encryption key to use and therefore how to decrypt the rank-1 encrypted portion.
[0024] In a particular implementation, determining the encryption identifier involves concatenating the unencrypted portion of rank 1 with the encrypted portions of rank 2 through P.
[0025] With such a configuration, the receiver device does not need to decrypt the rank-1 encrypted portion since the rank-1 portion is not encrypted.
[0026] In a particular implementation, each portion includes a single bit of a bit field that corresponds to an identifier of the transmitter device.
[0027] In a particular implementation, the encryption keys determined as a function of the values of the identifier portions are all different from one another.
[0028] Indeed, such an arrangement allows for increased security of the identifier encryption.
[0029] According to a second aspect, the present invention relates to a computer program product comprising a set of program code instructions which, when executed by one or more processors, configure the processor(s) to implement the transmission method according to any one of the implementations described above.
[0030] According to a third aspect, the invention relates to a transmitter device of a communication system for transmitting a message to a receiver device of said communication system, the transmitter device comprising: - dividing the identifier of the transmitter device into P integer parts at least equal to 2, determining, for at least one portion of rank -2 or greater, an encryption key in response to the value of the portion of said rank, and encrypting said portion with the encryption key thus determined; - determining an encrypted identifier from the encrypted portion(s) thus obtained; - forming a message to be sent from the encrypted identifier, - Send messages to the receiver device wherein each of said portions is ordered and associated with a rank that varies between 1 and P, and wherein said encryption is performed according to a symmetric key cryptography protocol.
[0031] In particular embodiments, the invention may further comprise one or more of the following features, taken alone or in all technically possible combinations:
[0032] In a particular implementation, to determine the encryption identifier, the rank 1 portion is encrypted with the same encryption key for multiple transmitter devices in the system, and the encrypted portions of rank 1 through P are concatenated.
[0033] In certain implementations, the processing circuitry is configured to encrypt all portions of two or more ranks.
[0034] In a particular embodiment, the unencrypted portion of rank 1 is concatenated with the encrypted portions of ranks 2 through P to determine the encrypted identifier.
[0035] In certain embodiments, each portion includes a single bit of a bit field corresponding to an identifier of the transmitter device.
[0036] In a particular embodiment, the encryption keys determined as a function of the values of the portions of the identifier are all different from one another.
[0037] According to a fourth aspect, the present invention relates to a method for receiving, by a receiver device of a communication system, a message transmitted by a transmitter device of said communication system according to a transmission method according to any one of the above implementations.
[0038] The reception method is - extracting an encrypted identifier from the received message; - dividing the encrypted identifier into P parts; - determining an encryption key for at least one encrypted portion of rank -2 or higher depending on the value of the non-encrypted or decrypted portion of said rank and decrypting said encrypted portion, said decryption being performed according to a symmetric key encryption protocol used by the message transmission method; - determining an identifier of the transmitter device from the decoded portion(s) thus obtained; and Includes.
[0039] Thus, when the receiver device decrypts the identifier, it discovers which key it should use to fully decrypt the identifier. It therefore suffices for the receiver device to know how to decrypt the rank 1 parts (encrypted or not) and then it can successively determine the encryption keys that it must use to decrypt the encrypted parts of rank 2 or higher.
[0040] Note that the encryption protocol may be different for different parts of the identifier, but for a given part, the same encryption protocol is used by the sending and receiving methods.
[0041] The term "cryptographic protocol" refers to a protocol that enables the encryption of non-encrypted data items and the decryption of encrypted data items.
[0042] In a particular implementation, decoding is performed for all portions of rank 2 or greater.
[0043] In a particular implementation, a rank 1 portion of the identifier of the transmitter device is encrypted by a method of transmitting a message with an encryption key that is the same for multiple transmitter devices of the communication system, and determining the identifier of the transmitter device includes decrypting the rank 1 encrypted portion with the encryption key that is the same for multiple transmitter devices of the system and concatenating the decrypted portions of ranks 1 through P.
[0044] In a particular embodiment, a rank 1 portion of the identifier of the transmitter device is transmitted unencrypted, and determining the identifier of the transmitter device includes concatenating the unencrypted portion of rank 1 with the decrypted portions of ranks 2 through P.
[0045] According to a fifth aspect, the present invention relates to a computer program product comprising a set of program code instructions which, when executed by one or more processors, configure the processor(s) to implement the receiving method according to any one of the implementations described above.
[0046] According to a sixth aspect, the present invention relates to a receiver device of a communication system, for receiving a message transmitted by a transmitter device of said communication system according to a transmission method according to any one of the above-mentioned implementations. The receiver device comprises: - Extracting the encrypted identifier of the received message, - dividing the encrypted identifier into P parts, determining an encryption key for at least one encrypted portion of rank -2 or higher depending on the value of the non-encrypted or decrypted portion of said rank; - determining an identifier of the transmitter device from the decoded portion(s) thus obtained wherein the decryption is performed in accordance with a symmetric key cryptographic protocol used by the message transmission method.
[0047] In a particular embodiment, the processing circuitry is configured to decode all portions of rank 2 or greater.
[0048] In a particular embodiment, a rank 1 portion of the identifier of the transmitter device is encrypted by a method of sending a message with the same encryption key for multiple transmitter devices of a communication system, and to determine the identifier of the transmitter device, the encrypted portion of rank 1 is decrypted with said encryption key, which is the same for multiple transmitter devices of the system, and the decrypted portions of ranks 1 through P are concatenated.
[0049] In a particular embodiment, a rank 1 portion of the identifier of the transmitter device is transmitted unencrypted, and the unencrypted portion of rank 1 is concatenated with the decrypted portions of ranks 2 through P to determine the identifier of the transmitter device.
[0050] The invention will be better understood on reading the following description, given by way of non-limiting example and with reference to FIGS. 1 to 10. FIG. [Brief description of the drawings]
[0051] [Figure 1] FIG. 2 is a schematic diagram of the encryption of an information item according to a symmetric key cryptographic protocol. [Diagram 2] FIG. 2 is a schematic diagram of the decryption of an information item according to a symmetric key cryptographic protocol. [Diagram 3] FIG. 2 is a schematic diagram of sending a message by a transmitter device to a receiver device. [Figure 4] 2 is a schematic diagram of the main steps of the message sending method according to the invention; [Diagram 5] FIG. 2 is a schematic diagram of splitting an identifier into several parts, each part containing several bits. [Figure 6] FIG. 2 is a schematic diagram of splitting an identifier into several parts, each part containing a single bit. [Figure 7] FIG. 2 is a schematic diagram of the encryption of an identifier by a transmitter device, where the identifier comprises four parts, each of which comprises a single bit. [Figure 8] 2 is a schematic diagram of the main steps of the message reception method according to the invention; [Figure 9] 4 is a schematic diagram of encryption keys that are each determined depending on the value of a portion of an identifier. FIG. [Figure 10] FIG. 8 is a schematic diagram of decrypting the encrypted identifier shown in FIG. 7 by a receiver device. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0052] In these figures, like reference numbers refer to the same or similar elements relative to each other. For reasons of clarity, elements depicted are not necessarily to scale unless otherwise noted.
[0053] As already indicated, the present invention is directed to encryption of identifiers of transmitter devices of a communication system by means of a symmetric key cryptographic protocol, which uses different encryption keys for different transmitter devices of the system.
[0054] 1 and 2 respectively represent the encryption and decryption of an information item 34 by a symmetric key cryptographic protocol 40. The encryption key 41 used during encryption (FIG. 1) and during decryption (FIG. 2) must be identical. The information item 34 to be encrypted corresponds, for example, to a bit field. The symmetric key cryptographic protocol 40 uses a symmetric encryption algorithm, such as, for example, AES (acronym for "Advanced Encryption Standard"). Conventionally, for encryption, an algorithm uses as input the information item 34 to be encrypted, the encryption key 41 and possibly other data known both to the entity performing the encryption and to the entity performing the decryption, and outputs an encrypted information item 35. For decryption, an algorithm uses the encryption key 41 and, if applicable, other data used during encryption, making it possible to decrypt the encrypted information 35 and obtain the original unencrypted information item 34.
[0055] 3 illustrates diagrammatically the transmission of a message 15 by a transmitter device 10 of a communication system to a receiver device 20 of said system. An identifier 30 is associated with the transmitter device 10. The identifier 30 is for example stored in a memory of the transmitter device 10. The identifier 30 (ID) is encrypted by a symmetric key cryptographic protocol 40 and the encrypted identifier 31 (cID) is included in the message 15.
[0056] As already mentioned, it is not desirable to use the same encryption key for all sender devices in the system, since this is equivalent to making the key public, which does not make sense from a security point of view. It is also not possible to simply associate an encryption key with each sender device 10, since the receiver device 20 would not know which key to use to decrypt the encrypted identifier 31 contained in the message received from the sender device 10.
[0057] Fig. 4 represents the main steps of a method 100 for transmitting a message by the transmitter device 10 to the receiver device 20. The transmitting method 100 is implemented by the transmitter device 10. For this purpose, as shown in Fig. 3, the transmitter device 10 comprises a memory 11, one or more processors 12 and a communication module 13. A computer program is stored non-volatilely in the memory 11 of the transmitter device 10. The computer program comprises a set of program code instructions which, when executed by the processor(s) 12, configure the processor(s) to implement the transmitting method 100 according to the invention. Alternatively or additionally, the transmitter device 10 comprises one or more programmable logic circuits (FPGA, PLD, etc.) and / or one or more application specific integrated circuits (ASICs), and / or a set of discrete electronic components, etc., adapted for implementing all or part of the steps of the transmitting method 100 according to the invention. In other words, the transmitter device 10 comprises means being software (a specific computer program product) and / or hardware (FPGA, PLD, ASIC, discrete electronic components, etc.) configured to carry out the steps of the transmission method 100 according to the present invention.
[0058] 4, the transmission method 100 includes dividing 101 the identifier 30 of the transmitter device 10 into an integer number P of parts, the integer number being at least equal to 2. Each of these parts is ordered and associated with a rank that varies between 1 and P, where each part of the identifier takes a specific value.
[0059] Next, the sending method 100 includes determining (102) for at least one portion of the two or more ranks an encryption key according to the value of said portion of the rank.
[0060] The sending method 100 then includes encrypting (103) said portion with the encryption key thus determined. The encryption is performed according to the symmetric key cryptographic protocol 40.
[0061] The sending method 100 then includes determining 104 an encrypted identifier 31 from the encrypted portion(s) thus obtained.
[0062] Finally, the sending method 100 includes forming 105 a message to be sent from the encrypted identifier and sending 106 the message to the receiver device 20 using the communication module 13 .
[0063] Such a configuration allows the receiver device, when decrypting the identifier, to discover which encryption key it should use to fully decrypt the identifier. Indeed, the receiver device 20 only needs to know how to decrypt the rank 1 part (encrypted or not) and can then successively determine the encryption keys that it must use to decrypt the encrypted parts of rank 2 or higher.
[0064] In the remainder of this specification, by way of non-limiting example, all parts of rank 2 and above are considered to be encrypted, but in a variant, nothing prevents only parts of the parts of rank 2 through P being encrypted.
[0065] In the considered example, the identifier is coded in a bit field, as shown in Figure 5. If N is the number of bits used to code the identifier 30, the values that the identifier 30 can take range from 0 to (2 NFor example, the identifier 30 comprises 32 bits (N=32). In a division step 101, the identifier is divided into P parts 32 (P being the number of parts into which the identifier is divided), and then each part 32 of the identifier 30 is divided into, for example, N k It can be encoded in N bits. k is a positive integer strictly less than N, and k is the index of the portion varying between 1 and P, where 1≦k≦P. In the example shown in FIG. 5, each portion 32 contains four bits, or in other words, N k is equal to 4 regardless of the value of the exponent k (N k = 4). Note, however, that there is no requirement that all portions 32 have the same size.
[0066] In the example shown in Figure 5, the portion 32 of rank 1 takes the value 0b1011 (the term "0b" indicates a binary representation, i.e. a base 2 system). The portion 32 of rank 2 takes the value 0b0010. The portion 32 of rank 3 takes the value 0b1001. The portion 32 of rank P takes the value 0b1100.
[0067] In a particular implementation, each part 32 comprises a single bit. In this case, the identifier 30 is divided into N parts 32, where P=N. Such a configuration makes it possible to maximize the number P of parts 32 used and thus enhance the security of the encryption.
[0068] In the example shown in FIG. 6, portion 32 of rank 1 takes the value 0b1, portion 32 of rank 2 takes the value 0b0, portion 32 of rank 3 takes the value 0b1, portion 32 of rank 4 takes the value 0b1, ... portion of rank P takes the value 0b0.
[0069] Figures 7, 9 and 10 show, for simplicity, as an example, the unrealistic case in which the identifier 30 of the transmitter device 10 is coded by a four bit field (N=4). As shown in Figure 7, in the considered example, the identifier 30 takes the binary value 0b1011. The identifier 30 is divided (in a division step 101) into four parts, each containing a single bit (P=4). The part 32 of rank 1 takes the value 0b1, the part 32 of rank 2 takes the value 0b0, the part 32 of rank 3 takes the value 0b1 and the part 32 of rank 4 takes the value 0b1. Figure 7 shows, in a schematic way, an example of implementation of the step 102 of encrypting the part 32 of the identifier 30 and the step 103 of determining the encrypted identifier 31 in the transmission method 100 according to the invention.
[0070] In the example considered and shown in Fig. 7, the first part (i.e. the part of rank 1) is encrypted with an encryption protocol 40 using an encryption key 41-1. This encryption key 41-1 is used by all the transmitter devices 10 of the communication system (or by a subset of the transmitter devices 10 of the communication system, for example if only at least a subset of said transmitter devices 10 of the communication system use the transmission method 100 according to the invention) to encrypt the first part of the identifier 30. This encryption key 41-1 is also known by the receiver device 20 of the communication system. With such an arrangement, the receiver device 20 knows how to decrypt the first part of the encrypted identifier 31 received in a message.
[0071] An encryption key 41-3 is determined from the value 0b1 of the first part 32 of the identifier 30. This encryption key 41-3 is used by the encryption protocol 40 to encrypt the second part 32 of the identifier 30 (i.e. the part of rank 2).
[0072] An encryption key 41-6 is determined from the respective values (0b1 and 0b0) of the first two parts 32 of the identifier 30. This encryption key 41-6 is used by the encryption protocol 40 to encrypt the third part 32 of the identifier 30 (i.e. the part of rank 3).
[0073] An encryption key 41-13 is determined from the values (0b1, 0b0 and 0b1) of each of the first three portions 32 of the identifier 30. This encryption key 41-13 is used by the encryption protocol 40 to encrypt the fourth portion 32 of the identifier 30 (i.e. the portion of rank 4).
[0074] It should be noted that in the drawings, reference numeral 41 generally refers to encryption keys used by the symmetric key cryptographic protocol 40. Reference numeral 41-j represents a particular encryption key for index j.
[0075] In this case, the encrypted identifier 31 is obtained by concatenating successively obtained encrypted portions 33 .
[0076] Note that there is no requirement that the encrypted portions 33 have the same size as the corresponding unencrypted portions, nor do the encrypted portions 33 necessarily all have the same size, nor is there a requirement to use the same encryption protocol 40 for encrypting the various portions 32 of the identifier 30.
[0077] As will also be explained with reference to Figures 1 and 2, each part 32 may be encrypted according to an encryption protocol 40, on the one hand, depending on an encryption key 41 and, on the other hand, depending on other parameters, such as useful data contained in the message or a sequence number from a message counter maintaining synchronization between the sender and receiver devices.
[0078] In a particular embodiment of the transmission method 100 according to the invention, instead of encrypting the first part of the identifier with the same encryption key for all sender devices 10, it is possible to not encrypt the first part of the identifier (only parts of ranks 2 to P are encrypted). With such a configuration, the receiver device 20 does not need to decrypt the first part of the encrypted identifier 31 received in the message. In this case, parts of rank 2 or higher may be decrypted using an encryption key determined depending on the value of the previous encrypted part (or not encrypted if the part is part of rank 1).
[0079] In general, the identifier of the transmitter device is divided into P parts, each part having M k can take on N distinct values (e.g., the exponent k part can take on N k bits, M k =2 Nk ), and D is the number of different values that the identifier can take (D=2 N and
[0080]
number
[0081] In this case, the encryption key associated with the rank 2 portion is shared among D / M1 transmitter devices, the encryption key associated with the rank 3 portion is shared among D / (M1×M2) transmitter devices, and so on. The encryption key associated with the rank k portion is shared among D / (M1×M2×××M (k-1) ) transmitter devices, and the encryption key associated with the portion of rank P is D / (M1×M2×××M (k-1) ×··xM (P-1) ) transmitter devices.
[0082] Fig. 8 represents the main steps of a method 200 of receiving a message coming from the transmitter device 10 by the receiver device 20. The receiving method 200 is implemented by the receiver device 20. For this purpose, as shown in Fig. 3, the receiver device 20 comprises a memory 21, one or more processors 22 and a communication module 23. A computer program is stored non-volatilely in the memory 21 of the receiver device 20. The computer program comprises a set of program code instructions which, when executed by the processor(s) 22, configure the processor(s) to implement the receiving method 200 according to the invention. Alternatively or additionally, the receiver device 20 comprises one or more programmable logic circuits (FPGA, PLD, etc.) and / or one or more application specific integrated circuits (ASICs), and / or a set of discrete electronic components, etc., adapted for implementing all or part of the steps of the receiving method 200 according to the invention. In other words, the receiver device 20 comprises means being software (a specific computer program product) and / or hardware (FPGA, PLD, ASIC, discrete electronic components, etc.) configured to carry out the steps of the receiving method 200 according to the present invention.
[0083] As shown in FIG. 8, the receiving method 200 includes extracting 201 the encrypted identifier 31 of the received message using the communication module 23 .
[0084] Next, the receiving method 200 includes splitting 202 the encrypted identifier 31 into P parts.
[0085] The receiving method 200 then comprises determining 203, for at least one encrypted portion 33 of two or more ranks, an encryption key 41 depending on the value of the unencrypted or encrypted portion of said rank.
[0086] The receiving method 200 then includes decrypting 204 said encrypted portion 33. The decryption is performed according to the symmetric key cryptographic protocol 40 used by the method 100 for sending the message.
[0087] Finally, the receiving method 200 includes determining 205 an identifier 30 of the transmitter device 10 from the decoded portion(s) thus obtained.
[0088] Fig. 9 shows diagrammatically encryption keys 41-1 to 41-15, each determined depending on the value of the identifier portion 32. In the example considered and shown in Fig. 9, key 41-2 is associated with the value 0b0 of the identifier portion of rank 1, key 41-3 is associated with the value 0b1 of the identifier portion of rank 1, key 41-4 is associated with the value 0b00 taken by the identifier portion of ranks 1 to 2, key 41-5 is associated with the value 0b01 taken by the identifier portion of ranks 1 to 2, key 41-6 is associated with the value 0b10 taken by the identifier portion of ranks 1 to 2, key 41-7 is associated with the value 0b11 taken by the identifier portion of ranks 1 to 2, key 41-8 is associated with the value 0b000 taken by the identifier portion of ranks 1 to 3 and key 41-9 is associated with the value 0b00 of the identifier portion of ranks 1 to 4. key 41-10 is associated with the value 0b010 taken by the portion of the identifier from rank 1 to 3, key 41-11 is associated with the value 0b011 taken by the portion of the identifier from rank 1 to 3, key 41-12 is associated with the value 0b100 taken by the portion of the identifier from rank 1 to 3, key 41-13 is associated with the value 0b101 taken by the portion of the identifier from rank 1 to 3, key 41-14 is associated with the value 0b110 taken by the portion of the identifier from rank 1 to 3, and key 41-15 is associated with the value 0b111 taken by the portion of the identifier from rank 1 to 3.
[0089] The encryption key 41-1 allows the decryption of the rank 1 part of the identifier 30 (in the example considered, this encryption key 41-1 is known in theory to the receiver device 20 and allows the decryption of the rank 1 part of the identifier independently of the transmitter device 10 that transmitted the message 15).
[0090] The encryption keys 41-2 and 41-3 enable the decryption of the rank 2 part of the identifier. The encryption keys 41-2 and 41-3 are determined depending on the value of the rank 1 part of the identifier.
[0091] The encryption keys 41-4 to 41-7 enable the decryption of the rank 3 part of the identifier. The encryption keys 41-2 to 41-7 are determined depending on the values of the rank 1 and 2 parts of the identifier.
[0092] The encryption keys 41-8 to 41-15 enable the decryption of the part of the identifier with rank 4. The encryption keys 41-8 to 41-15 are determined depending on the values of the parts of the identifier with ranks 1 to 3.
[0093] In a particular implementation, the encryption keys 41-1 to 41-15, which are determined depending on the value of the portion 32 of the identifier 30, are all different from each other. Such a configuration allows for increased security of the identifier encryption. In general, if the identifier is encoded on N bits, and all the portions of the identifier are encrypted, each portion corresponding to a bit of the identifier, then the same encryption key 41 allowing the decryption of the portion of rank of index k will be 2 N-k+1 The number of encryption keys that a sender device 10 must store in order to encrypt the identifier 30 is equal to N (as many encryption keys as there are parts the identifier is divided into). The number of encryption keys that a receiver device 20 must store in order to be able to decrypt the identifier contained in a message 15 sent by any sender device 10 is equal to N.
[0094]
number
[0095] For a 32-bit (N=32) encoded identifier, this is equal to 4 billion (2 32= 4,294,967,296) sender devices can have different identifiers, a sender device must store at most 32 encryption keys (i.e., for a 128-bit encryption key, it occupies 512 bytes (512B) of memory), and a receiver device must store at most 2 32 −1=4,294,967,295 encryption keys must be stored (which represents a memory occupation of 64 Gigabytes (64 GiB) for a 128-bit long encryption key). It is also interesting to note that only two different sender devices can have the same set of encryption keys.
[0096] FIG. 10 shows diagrammatically an example of implementation of the step 204 of decrypting the encrypted part 33 and the step 205 of determining the identifier 30 in a receiving method 200 according to the invention for an identifier encrypted as in FIG.
[0097] The encrypted part 33 of rank 1 is decrypted according to the encryption protocol 40 from the encryption key 41-1, which is common to all sender devices 10 and known in theory to the receiver device 20. Possibly, other parameters, such as useful data or a sequence number contained in the message, may be used to decrypt the message. The receiver device 20 may then determine an encryption key 41-3 from the value 0b1 of the first decrypted part 32. This encryption key 41-3 must be used to decrypt the part of rank 2. In the example considered, the value of the decrypted part of rank 2 is 0b0. The receiver device 20 may then determine an encryption key 41-6 from the value 0b10 taken by the first two decrypted parts. This encryption key 41-6 must be used to decrypt the part of rank 3. In the example considered, the value of the decrypted part of rank 3 is 0b1. The receiver device 20 may then determine the encryption key 41-13 from the value 0b101 taken by the first three decrypted parts. This encryption key 41-13 must be used to decrypt the part of rank 4. In the example considered, the value of the decrypted part of rank 4 is 0b1.
[0098] The identifier 30 of the sender device 10 that sent the message 15 is then obtained by concatenating the successively obtained decoded portions. The value of the identifier 30 is 0b1011.
[0099] The above description clearly shows that the invention achieves the set objectives, despite its various features and advantages. In particular, the invention makes it possible to encrypt, with a fairly satisfactory level of security, an identifier of a sender device by means of a symmetric key cryptographic protocol. A receiver device receiving a message containing the encrypted identifier is able to decrypt the identifier.
[0100] It should be noted that the implementations and embodiments discussed above are described as non-limiting examples, and thus other variations are possible.
[0101] In particular, as mentioned above, not all portions of the identifier are necessarily encrypted. The size of the portions, whether encrypted or not, may vary depending on the implementation. A variety of symmetric key encryption protocols may be used, and the selection of a particular encryption protocol is merely one variation of the present invention.
[0102] The invention is illustrated by considering a communication system for IoT or M2M type connected objects, but does not exclude other examples that follow, considering other communication systems.
Claims
1. A method (100) for transmitting a message by a transmitter device (10) of a communication system to a receiver device (20) of said communication system, said method (100) comprising: - dividing (101) the identifier (30) of said transmitter device into two or more integer P parts (32), each of said parts (32) being ordered and associated with a rank that varies between 1 and P; - determining (102) an encryption key (41) for at least one portion (32) of rank 2 or higher depending on the value of the portion of the rank preceding said portion (32) and encrypting (103) said portion (32) with said encryption key (41) thus determined, said encryption being performed according to a symmetric key encryption protocol (40); - determining (104) an encrypted identifier (31) from said encrypted part(s) (33) thus obtained; and - forming (105) from said encrypted identifier (31) a message to be sent; - sending (106) said message; A method of transmission (100), comprising:
2. 2. The method of claim 1, wherein the encryption is performed on all portions of rank 2 or greater.
3. The determination (104) of the encrypted identifier (31) comprises: - encrypting said portion (32) of rank 1 with the same encryption key (41) for a number of transmitting devices (10) of said system; - concatenating said encrypted parts (33) from rank 1 to P; The transmission method (100) of claim 2, comprising:
4. 3. The method of claim 2, wherein the determination of the encrypted identifier comprises a concatenation of the unencrypted portion of rank 1 and the encrypted portions of ranks 2 through P.
5. The method (100) of any one of claims 1 to 4, wherein each said portion (32) comprises a single bit of a bit field corresponding to the identifier (30) of the transmitter device (10).
6. 6. The transmission method (100) according to claim 1, wherein the encryption keys (41) determined depending on the value of the portion (32) of the identifier (30) are all different from one another.
7. A computer readable storage medium comprising a set of program code instructions which, when executed by one or more processors, configure the processor(s) to implement the transmission method (100) of any one of claims 1 to 6.
8. A transmitter device (10) of a communication system for transmitting a message to a receiver device (20) of the communication system, the transmitter device (10) comprising: - dividing the identifier (30) of said transmitter device (10) into P parts (32) equal to or greater than 2, - for at least one portion (32) having a rank equal to or greater than 2, determining an encryption key (41) depending on the value of the portion preceding said portion (32) in said rank, and encrypting said portion (32) with said encryption key thus determined, - determining an encrypted identifier (31) from said encrypted part(s) (33) thus obtained, - forming, from said encrypted identifier (31), the message to be sent, - transmitting said message to said receiver device (20); wherein each of the portions (32) is ordered and associated with a rank that varies between 1 and P, and wherein the encryption is performed according to a symmetric key cryptography protocol (40).
9. The transmitter device (10) of claim 8, wherein the processing circuitry is configured to encrypt all portions (32) of two or more ranks.
10. 10. The transmitter device (10) of claim 9, further comprising: encrypting the portion (32) of rank 1 with an encryption key (41) that is the same for multiple transmitter devices (10) of the system; and concatenating the encrypted portions (33) of ranks 1 through P.
11. 10. The transmitter device (10) of claim 9, further comprising concatenating the unencrypted portion (32) of rank 1 and the encrypted portions (33) of ranks 2 through P to determine the encryption identifier (31).
12. 12. The transmitter device (10) of any one of claims 8 to 11, wherein each said portion (32) comprises a single bit of a bit field corresponding to the identifier (30) of the transmitter device (10).
13. The transmitter device (10) according to any one of claims 8 to 12, wherein the encryption keys (41) determined depending on the value of the part (32) of the identifier (30) are all different from one another.
14. A receiving method (200) for receiving, by a receiver device (20) of a communication system, a message transmitted by a transmitter device (10) of said communication system according to a transmitting method (100) according to any one of claims 1 to 6, comprising the steps of: - extracting (201) said encrypted identifier (31) of said received message; - dividing (202) said encrypted identifier (31) into P parts; - determining (203) an encryption key (41) for at least one encrypted part (33) of rank 2 or higher depending on the value of the non-encrypted or decrypted part of the rank preceding said encrypted part (33) and decrypting (204) said encrypted part (33) with said encryption key (41) thus determined, said decryption being carried out according to the symmetric key cryptographic protocol (40) used by said message sending method (100); - determining (205) said identifier (30) of said transmitter device from said decoded part(s) thus obtained; and A receiving method (200), comprising:
15. 15. The method (200) of claim 14, wherein the decoding (204) is performed for all portions (32) of rank 2 or greater.
16. The rank 1 portion (32) of the identifier (30) of the transmitter device is encrypted by the message transmission method having an identical encryption key (41) for multiple transmitter devices (10) of the communication system, and the determination (205) of the identifier (30) of the transmitter device is - decrypting the rank 1 encrypted parts (33) with the same encryption key (41) for the plurality of transmitting devices (10) of the system; - concatenating said decoded parts from rank 1 to P; The receiving method (200) of claim 15, comprising:
17. 16. The receiving method (200) of claim 15, wherein the portion (32) of rank 1 of the identifier (30) of the transmitter device (10) is transmitted unencrypted, and the determination (205) of the identifier (30) of the transmitter device (10) comprises concatenation of the unencrypted portion of rank 1 with decrypted portions of ranks 2 through P.
18. 18. A computer readable storage medium comprising a set of program code instructions which, when executed by one or more processors, configure the processor(s) to implement a receiving method (200) according to any one of claims 14 to 17.
19. In a receiver device (20) of a communication system receiving a message transmitted by a transmitter device (10) of the communication system according to a transmission method (100) according to any one of claims 1 to 6, the receiver device comprises: - extracting said encrypted identifier (31) of said received message, - dividing said encrypted identifier (31) into P parts, determining an encryption key (41) for at least one encrypted portion (33) of rank -2 or higher depending on the value of the non-encrypted or decrypted portion of said rank, and decrypting said encrypted portion (33) with said encryption key (41) thus determined; - determining an identifier (30) of said transmitter device (10) from said decoded part(s) thus obtained; wherein said decryption is performed in accordance with said symmetric key cryptographic protocol (40) used by said message transmission method (100).
20. 20. The receiver device (20) of claim 19, wherein the processing circuitry is configured to decode all portions (32) of rank 2 or greater.
21. 21. The receiver device of claim 20, wherein the rank 1 portion (32) of the identifier (30) of the transmitter device is encrypted by the method (100) of transmitting a message with the same encryption key (41) for multiple transmitter devices (10) of the communication system, and to determine the identifier (30) of the transmitter device (10), the rank 1 encrypted portion (33) is decrypted with the encryption key (41) that is the same for the multiple transmitter devices of the system and the decrypted portions of ranks 1 to P are concatenated.
22. 21. The receiver device (20) of claim 20, wherein the portion (32) of rank 1 of the identifier (30) of the transmitter device (10) is transmitted unencrypted, and the unencrypted portion of rank 1 and the decrypted portions of ranks 2 through P are concatenated to determine the identifier (30) of the transmitter device (10).
Citation Information
Patent Citations
Encipherment method, decipherment method, enciphered communication system, enciphering device, and recording medium
JP2001331103A
Stateless Access Layer Security for the Cellular Internet of Things
JP2019506779A
Overhead reduction in frequency hopping system for intermittent transmission
US20060198426A1
Multipath demultiplexed network encryption
US20170244685A1
Terminal identity protection method in a communication system
WO2019040963A1