The present invention relates to a method and apparatus for forming a connection between devices using the Bluetooth, which is a short distance technique in wireless communication systems, and more particularly to a Bluetooth communication method and system implemented between first and second electronic devices for notably continuously process data such as phenomenon data or notification data.
Bluetooth is a technology standard allowing various devices to be wirelessly connected in a near field to exchange data. The Bluetooth communication method may be classified as a Basic Rate/Enhanced Data Rate (known by the acronym “BR/EDR”) method and a Low Energy (known by the acronym “LE”) method. The BR/EDR method may be termed Bluetooth Classic. The Bluetooth Classic method includes a Bluetooth technology led from Bluetooth 1.0 and a Bluetooth technology using an enhanced data rate (known by the acronym “EDR”) supported by Bluetooth 2.0 or a subsequent version.
A Bluetooth low energy (known by the acronym “LE”) technology applied, starting from Bluetooth 4.0, may stably provide information of hundreds of kilobytes (KB) at low power consumption. Such a Bluetooth low energy technology allows devices to exchange information with each other by utilizing an attribute protocol. The Bluetooth LE method may reduce energy consumption by reducing overhead of a header and simplifying an operation.
In the prior art it is known to implement a Bluetooth communication method to monitor phenomenon data relating for example to physical quantities such as tire pressure measurement in a Tire Pressure Monitoring Systems (known by the acronym “TPMS”). In this kind of system, each tire contains a tiny embedded electronic device such as a TPMS sensor. This TPMS sensor is configured to communicate with a vehicle electronic control unit (known by the acronym “ECU”) in order to send to this latter during a step of transmitting of this method, tire pressure measurement via an operating mode of the Bluetooth standard referred to as advertising mode.
However, one of the drawbacks of such method is that it is very vulnerable because of a non-secure transmission of these tire pressure measurement thus exposing the TPMS system at all kind of malicious attacks.
In order to overcome such a drawback, a solution in the state of the art provides that this tire pressure measurement is sent to the ECU during a step of transmitting of this method implementing a secure operating mode of the Bluetooth standard referred to as connected mode. Nonetheless, such connected mode generates particularly in this kind of use a high power consumption making unsuitable for the tiny embedded device like this TPMS sensor, which requires a very low power consumption.
It is therefore understood that there is a need to find an alternative solution, in particular which does not have the drawbacks of the prior art.
In this context, embodiments of the present disclosure provide a Bluetooth communication method and system implemented between first and second devices, to ensure integrity, authenticity and/or confidentiality of messages sent using the Bluetooth communication protocol mainly or only in advertising mode.
Furthermore, embodiments of the present disclosure provide a full protection against replay attack in advertising mode.
To this end, the invention relates to a Bluetooth communication method implemented between a first electronic device and a second electronic device, this second electronic device being capable of sending a secure message comprising data to be processed by the first electronic device, the method comprising:
In other embodiments:
The invention also relates to a Bluetooth communication system implemented between a first electronic device and a second electronic device, this second electronic device being capable of sending a secure message comprising data to be processed by the first electronic device, the system (100) comprising these first and second devices and configured to:
Advantageously, the system comprises the first and second devices and also a third electronic device, the system being configured to:
The present invention will be described subsequently in more detail with reference to the attached drawing, given by way of examples, but in no way limited thereto, in which:
In the different embodiments of the invention illustrated in the
This Bluetooth advertising mode referenced A in the
In this context, the message advertised is a secure message whose integrity, authenticity and/or confidentiality is ensured by these Bluetooth communication method and system 100. Such secure message includes usable data comprising preferably a payload, a secure tag and a singular element specific to each message. As is discussed later, this specific singular element can be in a non-limiting and/or non-exhaustive manner a sequence number or timestamp. In the embodiments of the invention, a new specific singular element is generated for each secure message exchanged between the first and second electronic devices 101, 102.
In this secure message, the payload comprises useful data, which can be, processed continuously or monitored continuously. Continuously means here: periodically or without interruption. This useful data can be for example phenomenon data also called event data. These phenomenon data can comprise physical and/or biological values. Such values are relating to physical quantities or biological quantities. It can be understood that a physical quantity is included in the field of physical sciences and a biological quantity in the field of the life sciences (also called “biology”). These values have been figured out by the second device 102 from at least one measurement of the physical quantity or the biological quantity evaluated by the at least one data generator of this device 102.
Furthermore, these useful data can also be notification data. These data include alphanumeric characters relating to an informative communication. This informative communication can contain alert communication, news communication, event communication, etc. . . .
In the system 100, the first electronic device 101 can be in a non-limiting and/or non-exhaustive manner a vehicle electronic control unit, an Internet server, a router, a desktop or laptop computer, a smartphone, a tablet, a processor, a module, or the like, and may be implemented in various forms, including, for example, an integrated circuit or collection thereof, a printed circuit board or collection thereof, or in a discrete housing/package/rack or multiple of the same.
This first device 101 comprises in a non-limiting and/or non-exhaustive manner:
In this configuration, the processing unit 104 is connected to the Bluetooth communication interface 109, and the wired and the wireless communication interfaces 110 not compatible with the Bluetooth standard.
This first device 101 can also comprise an interface 107 for broadcasting a visual piece of information such as a digital display, an interface 108 for broadcasting an audio piece of information such as a loudspeaker and an input interface 106 such as a touch interface comprised in, for example, the interface for broadcasting a visual piece of information.
It can be noted, that this first device 101 can be configured to receive signals from one or more second devices 102, to process the received signals and to control the said one or more second devices 102 via control signals.
This second device 102 includes in a non-limiting and/or non-exhaustive manner:
In this second device 102, the processing unit 105 is connected to the Bluetooth communication interface 114, the wired and the wireless communication interfaces 113 not compatible with the Bluetooth standard, and the data generator circuit 115 which is connected to the at least one data generator 120.
In this configuration, the data generator 120 is preferably a sensor. This sensor is an element capable to convert a physical quantity or a biological quantity to be measured to an electric signal (also called “sensor signal”). Such a physical quantity can be for example a tire pressure of a vehicle in a context of Tire Pressure Monitoring System (known by the acronym “TPMS”), or atmospheric pressure and air temperature monitoring for a weather forecasting system, etc. . . . Regarding biological quantity, it can be for example a heart rate and a blood pressure monitored in the context of electrocardiogramastem. Sensors can also measure insulin rate, brain signal etc. . . . Other applications can be in the field of agriculture where moisture rate, chemical properties of the soil are measured. Other sensors are present in the fire protection and safety area. Sensors detect the presence of radioactivity, gas such as monoxide of carbon, nanoparticles, etc. . . .
Alternatively, this data generator 120 can be a wireless communication device such a transponder for example a car key fob to unlock a vehicle wirelessly. In the consumer area, connected wearables such as connected watches are typical examples of devices that receive notifications, calls, messages and other data generated by a smartphone.
In this second device 102, the data generator circuit 115 may include an analog-to-digital converter (known by the acronym “ADC”) that converts the analog signal from the value relating to a physical quantity or a biological quantity to a digital signal. The data generator circuit may also include a digital signal processor (known by the acronym “DSP”) that performs some processing on the digital signal (e.g., to prepare physical or a biological quantity value for transmission). Therefore, the data generator package comprises a circuit which conditions and amplifies the small signal of this value via signal processing and/or conditioning. Signal conditioning, as used herein, refers to manipulating an analog signal in such a way that the signal meets the requirements of a next stage for further processing. Signal conditioning may include converting from analog to digital (e.g., via an analog-to-digital converter), amplification, filtering, converting, biasing, range matching, isolation and any other processes required to make a data generator output suitable for processing after conditioning.
In the first and second devices 101, 102, the processing unit 104, 105 can implement tag algorithms, specific singular element algorithms, cryptographic algorithms such as the Diffie-Hellman algorithm and/or encryption algorithms such as an Advanced Encryption Standard (known by the acronym “AES”) and corresponding decryption algorithms, which are stored in their memory element 112, 119. In this context, these tag algorithms comprises for example:
In this context, the specific singular element algorithms comprise a sequence number algorithm when the specific singular element is a sequence number. This sequence number algorithm can be a counter or a timestamp. The specific singular element algorithms participate in generating specific singular elements, which are different from each other, that is to say these specific identification elements are never the same. In other words, throughout the lifetime of these first and second devices, these specific identification elements will always be different. This particular feature ensures that each secure message can be used/transmitted/exchanged only once.
It should be noted that the system 100 includes a communication network 121 participating in the establishment of a communication link between the first and the second devices 101, 102. This communication network 121 is preferably a Bluetooth communication network, or a wired and a wireless communication network not compatible with the Bluetooth.
The system 100 can also comprise a third electronic device 103. This third device 103 is capable to participate to at least one security key exchange between the first and the second device 101, 102, to distribute this at least one security key to these first and second devices 101, 102.
This device 103 can be for example in a TPMS system or in other similar systems.
This third device 103 comprises in a non-limiting and/or non-exhaustive manner:
In this third device 103, the processing unit 122 is connected to the Bluetooth communication interface 123 and also with the wired and the wireless communication interfaces 124 which are not compatible with the Bluetooth standard as we said earlier.
According to some embodiments, the first, the second or the third device 101, 102, 103 can also include in the memory element 112, 119, 126 of its processing unit 104, 105, 122 the said at least one security key intended to secure the message.
Furthermore, the system 100 comprises two communication networks 127, 128 participating in the establishment of a communication link between the third and first devices 103, 101, and between the third and second devices 103, 102 respectively. These communication networks 127, 128 are preferably a Bluetooth communication network, or a wired and a wireless communication network not compatible with the Bluetooth.
Referring now to
More specifically in a first and second embodiments illustrated in the
In this context, the Bluetooth connected mode referenced C in the
This sub-step 19 is automatically implemented the first time that first device 101 receives a connection request from the second device 102 with which it is not yet paired. During this sub-step 19, the first device 101 detects the presence of the second device 102, which is in its vicinity and attempts to establish a connection with this last one. To this end, the second device 102 is set in a discoverable mode. Subsequently, during this phase of pairing 20, the first 101 or second device 102 and more specifically its processing unit 104, 105 is capable to generate several keys such as for example a Long Temporary Key, an Identity Resolving Key, a Connection Signature Resolving Key and/or a Diffie-Hellman key.
In the first embodiment, the step of obtaining 18 comprises a sub-step of exchanging 21 the said at least one security key between these first and second devices 102. This sub-step 21 includes:
In this context, the said at least one security key can be a key already stored in the processing unit 104, 105 of the first or second device 101, 102 such as for example an Advanced Encryption Standard key. In an alternative, the said at least one security key can also be a key generated during the phase of pairing 20 or derived from that key generated.
In the second embodiment, the step of obtaining 18 comprises a sub-step of generating 24 the said at least one security key by the first and the second devices 101, 102 by implementing a key agreement protocol. This key agreement protocol can be based on a cryptographic algorithm such as for example the Diffie-Hellman algorithm.
In reference to
In a fourth embodiment illustrated in
In a fifth embodiment of the step of obtaining 18 depicted in the
In this fifth embodiment, the step of obtaining 18 comprises subsequently:
The sub-step of exchanging 31 includes:
In this context, the said at least one security key can be a key already stored in the processing unit 104, 105, 122 of the first 101, the second 102 or the third device 103 such as for example an Advanced Encryption Standard key. In an alternative, this said at least one security key can also be a key generated during the phase of pairing of this fifth embodiment, or derived from that key generated during this phase. It can be noticed that during this phase, the first 101, the second 102 or the third device 103 and more specifically its processing unit 104, 105, 122 are capable to generate several keys like for example a Long Temporary Key, an Identity Resolving Key, a Connection Signature Resolving Key and/or a Diffie-Hellman key.
Then, the method comprises a step of interrupting 35 the communication link between the first and the second devices 101, 102 as long as the said at least one security key is valid. It may be noted that the communication link between the first and the second devices 101, 102 is directly interrupted when these two devices 101, 102 are connected to each other without an intermediate device as in the first to the four embodiments mentioned above. In the same approach, this communication link between the first and the second devices 101, 102 is indirectly interrupted when these two devices 101, 102 are connected to each other through the third device 103 as in the fifth embodiment mentioned above.
It is understood that this said at least one security key is considered as being valid once the two devices 101 and 102 agree on the key material. It can be either a shared secret key or a private-public key pair.
Thus, once the said at least one security key is valid, it is not required in this method to implement a sub-step of establishing 19, 25, 27, 29, 30 a communication link between the first and second devices 101, 102 or between the first, the second and the third devices 101, 102, 103:
Furthermore, the method includes a step of generating 36 the specific singular element for/relating to the secure message. This specific singular element is especially generated for each secure message exchanged between the first and second electronic devices 101, 102. In other words, a new and/or a different specific singular element from the previous ones is generated for each of these secure messages. The processing unit 105 of the second device 102 implements this step 36.
This step of generating 36 includes a sub-step of determining 37 the specific singular element by implementing the specific singular element algorithm. During this sub-step 37, the at least one processor 118 of the second device 102, executes this specific singular element algorithm stored in its memory elements 119. As we explained before, the specific singular element algorithm can be the sequence number algorithm when the specific singular element is a sequence number.
It can be noted that this step of generating 36 can be implemented at any time in this method but imperatively before a step of transmission 38 of the secure message by the second device 102 to the first device 101 discussed later.
Furthermore, the method comprises a step of transmitting 38 a secure message by the second device 102 to the first device 101. Such a step 38 includes a sub-step of realisation 39 of a message comprising a payload including data relating to phenomenon data or notification data.
Then, this step 38 comprises a sub-step of designing 40 the secure message by using the said at least one security key, the payload and or the singular element. To do that, this sub-step 40 comprises
This secure tag is a short piece of information, which contributes to ensure an integrity and/or an authenticity protection to the message comprising the payload. This secure tag comprises a Message Authentication Code (known under the acronym MAC) also called Message Integrity Code (known under the acronym MIC) or a signature. During this phase 41, the processing unit 105 of the second device 102 can execute this tag algorithm
Then, this sub-step 40 comprises a phase of generating 42 the secure message by appending the computed secure tag and the specific singular element to:
It should be noted that in addition of the payload, the secure tag and/or the specific singular element could be also encrypted during this phase of encrypting 43. For example in this context, a first security key can be used to compute the secure tag and a second security key to encrypt the payload, the specific singular element and/or this tag.
When this phase of encrypting 43 is executed, the processing unit 105 of the second device 102 can implement this encryption algorithm in order to encrypt this payload by using the said at least one security key. Such a phase 43 contributes to ensure a confidentiality protection to the message comprising the payload.
In remarks, it can be understood that in a secure message a same/unique security key can participate to encrypt the secure tag and/or the payload and/or the specific singular element. In an alternative in this secure message, different security keys can contribute to encrypt the secure tag, the payload and/or the specific singular element.
In such context, one can therefore understand that the secure message can include the usable data comprising in a non-limiting and/or non-exhaustive manner:
In addition, in this secure message, it can be noted that the specific singular element is preferably included in the secure tag computation and/or encrypted.
Once the secure message has been constructed, the step of transmitting 38 provides the implementation of a sub-step of establishing 44 a communication link in a Bluetooth advertising mode between these first and second devices 101, 102. Subsequently, the step of transmitting 38 comprises a subs-step of advertising 45 the secure message to the first device 101 by the second device 102.
Then the method comprises a step of processing 46 the usable data comprised in the secure message received by the first device 101 from the second device 102. This step 46 includes a sub-step of extracting 47 the specific singular element comprised in the usable data of the secure message received.
More specifically, this sub-step 47 includes a phase of verifying 48 the consistency of this specific singular element extracted from those usable data.
A such consistency is verified by comparing the received singular element with a computed singular element obtained by the first device by implementing the specific singular element algorithm for example the sequence number algorithm when the specific singular element is a sequence number or the timestamp number algorithm when the singular element is a timestamp number.
In this context, the sequence number algorithm is able to implement for example a counter. This counter is incremented from an incrementation element (e.g. an incrementation value) to obtain the computed singular element (i.e. the computed sequence number). Thereafter, this algorithm executed by the processing unit 104 of the first device 101, participates to control if the computed singular element is equal or sensitively equal to the received singular element (i.e. the received sequence number). It can be noted that the received singular element has been also incremented from the same incrementation element during the generation of this secure message.
Regarding the timestamp number algorithm, it is able to implement for example an evaluation of the differential between the received singular element and the computed singular element. These two singular elements can be here date information fetched by this algorithm in:
Thereafter, this algorithm executed by the processing unit 104 of the first device 101, participates to control if the differential evaluated between the computed singular element and the received singular element is less or greater or equal to a reference/reporting differential stored in this processing unit 104.
A such consistency is also verified by comparing the singular element of the received secure message with the singular element comprised in the preceding secure message. In this context, the singular element algorithm is executed by the processing unit 104 of the first device 101, in order to fetch the singular element of the previous secure message stored in this processing unit 104 and to control if this previous singular element is similar to the new singular element of the secure message lastly received. In an alternative, this singular element algorithm executed by the processing unit 104 can also contribute to control if the new singular element is less/greater/equal than this previous secure element.
It can be noted that for the first secure message advertised/sent by the second device to the first device, the singular element comprised in this secure message and a singular element stored in the processing unit 104 of the first device 101 are initialized to a same value or same alpha-numeric character. Such a singular element stored in the processing unit 104 being intended to be compared with the singular element comprised in this first secure message.
A such consistency is also verified by comparing the received singular element with a singular element originating from a plurality of singular elements stored in the processing unit 104 of the first device 101. In this context, the singular element algorithm is executed by the processing unit 104 of the first device 101, in order to find in this processing unit 104 the singular element corresponding to this received singular element. It can be noted that the same plurality of singular elements is stored in the processing unit 104 of the first device 101 and in the processing unit 105 of the second device 102. In this plurality of singular elements, each singular element differs from the other singular elements of this plurality. It should be noted that, the singular element comprises in the usable data of the secure message is randomly selected by the singular element algorithm executed by the processing unit 105 of the second device 102 among the plurality of singular elements stored in this processing unit 105.
If the consistency of the specific singular element contained in the usable data of the secure message is verified, the processing unit 104 of the first device 101 can safely assume that the secure message actually was received for the first time by this first device 101 and has not been replayed.
It can be noted that the phase of verifying 48 can comprise a sub-phase of decrypting the encrypted specific singular element contained in the secure message received, when the subs-step of designing 40 includes the phase of encrypting 43 this specific singular element. During this phase of decrypting, the processing unit 104 of the first device 101 can implement the corresponding decryption algorithm in order to decrypt this encrypted specific singular element by using the said at least one security key. In this way, the confidentiality protection of the specific singular element is ensured.
In this context, the step of processing 46 comprises a sub-step of extracting 49 the payload included in the secure message received once the consistency of the specific singular element contained in the usable data of the secure message has been verified.
As discussed above, the step of processing 46 includes the sub-step of extracting 49 the payload contained in the secure message received. This sub-step 49 comprises a phase of processing 50 the consistency of the secure tag contained in the secure message. This consistency is verified either comparing the computed tag with the received tag, or verifying the validity of the received signature tag. If the received tag in the secure message is valid, the processing unit 104 of first device 101 can safely assume that the message was not altered or tampered with during transmission. In other words, the integrity and/or the authenticity of this message and more specifically of the payload, can be considered as not altered.
Then, sub-step 49 comprises a phase of verifying 51 the consistency of the tag contained in the secure message. If the tag is consistent, the processing unit 104 of first device 101 can safely assume that the message was not altered or tampered with during transmission. In other words, the integrity and/or the authenticity of this message and more specifically of the payload, can be considered as not altered.
The sub-step 49 can comprise a phase of decrypting 52 the encrypted payload contained in the secure message received, when the sub-step of designing 40 includes the phase of encrypting the payload.
During this phase of decrypting 52, the processing unit 104 of the first device 101 can implement the decryption algorithm in order to decrypt this encrypted payload by using the said at least one security key. In this way, the confidentiality protection of the message and more particularly of the payload is ensured. In this sub-step 49, this phase 52 is executed before the phase of processing 50 the consistency of the secure tag which needs a decrypted payload to be implemented.
In other words, the phase of decrypting 52 can be executed before the phase of processing 50, if the secure tag and/or the payload contained in the secure message received have/has been encrypted during the subs-step of designing 40.
Then, the step of processing 46 includes sub-step of generating 53 useful information based on the data contained in the payload of this secure message. This useful information can be used in a biological or physical parameters monitoring system such as a TPMS system.
It is therefore understood that the invention offers the advantage of allowing these first and second devices to exchange messages securely in the advertising mode of Bluetooth, while assuring the freshness of these secure messages by using specific singular elements. In that way, full protection against replay attack is guaranteed. In this context, the use of a specific singular element ensures that each secure message can be used only once.
Furthermore, the invention ensures integrity and authenticity of the secure messages against malicious changes for secure messages advertised over Bluetooth technology. Moreover the invention optimizes the use of the unilateral communication against bilateral.
In addition, it should be noted that this invention offers many advantages, including the following:
In addition, the invention allows the second device 102 to advertise messages with integrity, authenticity and confidentiality protection. To achieve this, each encrypted message exchanged between these two devices 101, 102 comprises the payload and the calculated tag from the key.
At last, the invention can be implemented in a non-limiting and/or non-exhaustive manner in all of the following technical fields:
It will be apparent to those skilled in the art that various modifications may be made in the present disclosure, without departing from the spirit or the scope of the disclosure. Thus, it is intended that the present disclosure cover modifications and variations of embodiments of the present disclosure.
Number | Date | Country | Kind |
---|---|---|---|
22185010.0 | Jul 2022 | EP | regional |
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/EP2023/051431 | 1/20/2023 | WO |
Number | Date | Country | |
---|---|---|---|
63302744 | Jan 2022 | US |