Method for verifying a message in a communication system
Patent Information
- Application Number
- CN202111421745.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2020-11-27
- Filing Date
- 2021-11-26
- Publication Date
- 2026-10-09
- Estimated Expiration
- 2041-11-26
AI Technical Summary
由于所提到的缺少用于例如CAN协议的安全措施的情况,而能够成功地执行这样的身份接管,因为(其他)用户不能检验所传输的消息的真实性
[0015] For example, a computing unit according to the invention, such as an ASIC or microcontroller, in the control equipment of a motor vehicle, is particularly configured in terms of programming technology to execute the method according to the invention.
Smart Images

Figure CN114567456B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to a method for verifying messages in a communication system, as well as a computing unit and a computer program for performing the method. Background Technology
[0002] With increasing digitalization, wireless interfaces are being used more and more in everyday products or systems, such as vehicles. While these interfaces offer many advantages, they also provide increasing opportunities for attacks. A particular problem is the attack on electronic control units (ECUs), which are responsible for various functions within the vehicle and exchange data through the vehicle's internal communication system. Attackers could, for example, affect safety-critical functions such as steering, braking, or motor control. Typically, the communication systems or media used in vehicles, such as the CAN bus, are designed without security measures to prevent such attacks.
[0003] Therefore, an attacker could, for example, be able to act as another user and transmit unauthorized messages by connecting to an additional device or by influencing existing control devices on the communication medium. Such identity hijacking can be successfully performed due to the lack of security measures for protocols such as CAN, as the (other) user cannot verify the authenticity of the transmitted messages. Summary of the Invention
[0004] According to the present invention, a method for inspecting messages in a communication system, a computing unit for executing the method, and a computer program are provided. Advantageous designs are the subject of the following description.
[0005] This invention relates to the verification of messages in a communication system in which multiple users are connected to a communication medium and thereby exchange messages.
[0006] Typically, the lack of security measures is a known problem with communication media such as CAN buses. To address this, it's possible to utilize the physical characteristics of each user (typically control devices in this case) to identify the source of transmitted messages. For example, clock-cycle-based (time-based) attack detection systems (intrusion detection systems, so-called CIDS) can use the individual clock offsets of each user during periodic message transmissions to draw conclusions about the authenticity of the sender. These clock offsets can be used to identify deviations and anomalies in previously observed periodic transmission behavior, indicating the unauthorized origin of the message. However, this cannot be used to evaluate non-periodic messages, and attackers can bypass the system by observing clock offsets on the communication medium and subsequently matching their transmissions to the offsets of the user to be imitated.
[0007] Furthermore, an intrusion detection system can be used, which is based on the specific voltage characteristics of each user during their transmission process. Here, a model of the voltage sign (Spannungssignatur) can be created from authorized messages and compared with the voltage sign observed during normal message exchange. While this generally yields good detection accuracy, voltage fluctuations due to temperature variations are problematic. Moreover, this typically requires significant resources due to the extensive analysis of the voltage signal.
[0008] Existing solutions for providing authentication are based on physical characteristics, such as internal clocks or voltages. These solutions either place high demands on computing resources, are not robust to signal fluctuations, or can be bypassed by sophisticated attacks.
[0009] In the processing method proposed within the scope of this invention, the time difference between the reception times of messages sent on the communication medium at two different, pre-given locations is now obtained. Here, the absolute values of the two propagation times of the message from the sending user to the two locations are not important; only their difference, i.e., the propagation time difference, is important. The propagation times can be determined by a detection device—using a suitably designed connection—detecting the messages at the two locations. By comparing the time difference with at least one reference time difference, it is then determined whether the message originates from an authenticated user. Such a reference time difference can be obtained, for example, through a test measurement that ensures no attacker has altered or, in particular, transmitted the message on the communication medium.
[0010] If the time difference, for example, differs from a reference time difference by less than a pre-defined threshold, it can be determined or considered that the message originates from an authenticated user. Otherwise, it can be determined or considered that the message does not originate from an authenticated user, and in particular, that an attack attempt against the communication system exists. Suitable models can typically be used to perform the comparison. Such models, in particular, describe the propagation time differences for multiple users or the entire communication system, and can then be used to "verify" the propagation time differences subsequently measured for a specific user (or multiple or all users).
[0011] Therefore, an implementation method is proposed that not only provides authentication based on signal or message propagation time but can also be efficiently implemented in embedded systems. By using so-called TDCs, typically low-cost time-to-digital converters or transformers, the time difference can be determined particularly easily and quickly, eliminating the need for high-power sampling hardware, such as fast ADCs (analog-to-digital converters). Furthermore, the computational cost for calculating and evaluating the time difference is relatively small because simpler techniques can be used for comparison.
[0012] Compared to intrusion detection schemes that use clock characteristics or voltage, the proposed processing measures allow for a higher degree of reliability and accuracy. This enables, for example, the provision of intrusion detection systems (or intrusion prevention systems) that achieve the so-called Automotive Safety Integrity Level (ASIL) standard, due to the ability to achieve a high detection rate and a very low false positive rate. In this regard, it is even possible to block or actively disable malicious messages on the communication medium to prevent successful attacks.
[0013] Since it can be assumed that signal propagation is almost unaffected by external influences, such as aging or material loss in the communication medium, complex update methods for identifying the physical sender are unnecessary. Even if influences on signal propagation exist, they only affect propagation time very slowly and gradually. Sudden changes are not expected. Instead, this leads to the feasible approach of always adapting the reference time difference to the measured time difference. Therefore, small variations in propagation time, such as those caused by aging, can be taken into account.
[0014] Typically, the proposed method can be used by any bus topology (e.g., CAN, CAN FD, CAN XL, 10BASET1S, etc.) implemented for communication between multiple users and utilizing broadcast transmission. Based on feasible schemes for locating the message source, authentication can be provided where it is lacking, or existing security implementations can be extended for more robust security concepts. In this regard, the specific communication protocol implemented is irrelevant as long as only one user is active on the bus.
[0015] For example, a computing unit according to the invention, such as an ASIC or microcontroller, in the control equipment of a motor vehicle, is particularly configured in terms of programming technology to execute the method according to the invention.
[0016] It is also advantageous to implement the method according to the invention in the form of a computer program or computer program product having program code for performing all method steps, because this results in particularly low costs, especially if the control equipment used for implementation is also used for other tasks and therefore already exists. Suitable data carriers for providing the computer program are, in particular, magnetic storage, optical storage, and electrical storage, such as hard disks, flash memory, EEPROM, DVDs, etc. The program can also be downloaded via computer networks (Internet, intranet, etc.).
[0017] Other advantages and design solutions of the present invention will become apparent from the specification and drawings. Attached Figure Description
[0018] The present invention is schematically illustrated in the accompanying drawings by means of embodiments and is described below with reference to the accompanying drawings.
[0019] Figure 1 schematically illustrates a communication system with two variations, in which the method according to the invention can be executed.
[0020] Figure 2 The flowchart of a preferred embodiment of the method according to the invention is illustrated schematically.
[0021] Figure 3 A graph showing a reference time difference as it can be used in the method according to the invention is shown. Detailed Implementation
[0022] Figure 1 schematically illustrates a communication system with two variations, in which the method according to the invention can be executed. Figure 1aThe diagram here illustrates a communication system 100 with two exemplary users 110 and 112 connected or coupled to a communication medium 120. The users 110 and 112 may be, for example, control devices in a vehicle, and the communication medium 120 may be, for example, a CAN bus.
[0023] Furthermore, a computing unit 130 is shown, which is configured and used to obtain the time difference between the reception times of messages transmitted on the communication medium 120 at two different, pre-given locations P1 and P2. These two reception times are denoted as t1 and t2, and specifically, user 110 is the sender. For this purpose, the computing unit 130 can be connected to the communication medium 120 at locations P1 and P2. The computing unit 130 will be explained in detail below.
[0024] exist Figure 1b The diagram shows a communication system 100', which itself is based on... Figure 1a The communication system 100 is no different; however, instead of the computing unit 130, a time-to-digital converter (TDC) 140 and a microcontroller 142 are provided. These are also provided and used to obtain the time difference between the reception times of messages sent on the communication medium at two locations P1 and P2 on the communication medium 120. The resulting computing unit will also be explained in detail below.
[0025] First, the general processing measures of the proposed method must be explained. This method ultimately represents or can realize an intrusion detection system or an intrusion prevention system. Here, if it is certain that no attacker exists, the actual time difference should be measured using valid messages from each user. Therefore, this measurement is specifically performed for each user of the communication system. The results obtained are still... Figure 3 The reference time difference is shown in the diagram. For this purpose, for example, encrypted messages or messages sent in a protected environment, such as a workshop or factory, can be used. During this learning phase, a model is created based on the acquired time difference, for example, for subsequent comparisons. Simpler models can include, for example, lookup tables, probability distributions, or decision trees.
[0026] Following this stage, the entire communication system can be put into operation, where the time difference of the currently transmitted message is determined and evaluated using a pre-defined model. In principle, it is also possible to determine multiple time differences for messages from different users and compare them with models for all users. Additional sender information (in the case of CAN, this is, for example, a message identifier or ID) can be extracted and its authenticity verified. Depending on the implemented communication protocol (i.e., the CAN protocol), if the sender (i.e., the currently verified user) is classified as unauthorized, appropriate countermeasures can be taken to invalidate the continued transmission (in the case of CAN, this could be, for example, sending an error message or blocking the bus). As an alternative or supplementary solution, it is also possible to specify notification to the relevant location (e.g., the user of the control device) or to record the results.
[0027] To achieve the aforementioned functionality, two components are required, which can be housed in a common computing unit, such as computing unit 130—this computing unit can be, for example, an application-specific integrated circuit (ASIC). The first component, for example, according to... Figure 1a The component 132 then determines the time difference over the communication medium. Hereinafter, it will also be referred to as the PDDC (“Propagation Difference Determination Component”). The PDDC can be developed or provided, for example, as part of an ASIC or as a separate circuit that measures the time difference between two signals at two locations on the communication medium, for example, also at the ends, based on, for example, an internal timer.
[0028] In addition, the following, also referred to as PU ("processing unit"), are also required, such as in Figure 1a The same processing unit, represented by 134, is used to process the detected time difference. This can also be part of an ASIC.
[0029] Depending on the task at hand, a simpler or more powerful microcontroller 142 can be used instead (see [reference]). Figure 1b (or a specific processor core.) To determine the time difference, the TDC 140 can be used in particular. Based on the desired implementation, the proposed system can be built, for example, from standard components such as the TDC and a microcontroller. However, in principle, integrating the TDC into an ASIC is also possible.
[0030] Now Figure 2 The diagram schematically illustrates a preferred embodiment of the method according to the invention, and more specifically refers to components PDDC 132 and PU 134 (see...). Figure 1aThe diagram illustrates the process in which the various parts of the method are executed in these components.
[0031] Depending on the desired and available operating mode, the PDDC 132 must be configured, for example, first during system startup of the PU 134 according to step 210. This configuration can be achieved via a communication channel, such as SPI or I in standard hardware. 2 This can be performed using C, or, if an ASIC is used, by statically loading standard values into registers. Possible characteristics that can be considered for this configuration include, in particular, the number of measurements to be performed and whether the triggering occurs on a falling or rising signal edge. Once the configuration is complete, the PU 134 actively waits for or is triggered by a message transmission on the communication medium according to step 212.
[0032] Upon recognition of the transmitted message 200, PU 134 extracts the necessary sender information according to step 214. This information may represent a message identifier for CAN or a MAC address for Ethernet. This information can generally be obtained in two ways by providing a connection from the communication medium to PU 134. Either PU 134 actively determines this by using GPIO (General Purpose Input / Output) ports and corresponding timers to detect individual bits on the communication medium, or it can use a General Purpose Timer IP module (GTM, see also) Figure 1b Component 144 (in the PU 134) records the bits via GPIO ports and provides the results after sampling ends. GTM is already used in the automotive field and can be found in automotive microcontroller architectures.
[0033] It should be noted that sender information can also be extracted using dedicated circuitry, depending on the communication protocol used. For CAN, the message identifier can be detected, for example, by the CAN controller; however, this increases the coordination overhead for the entire process. Based on the sender information, an allocation relationship is established between the transmitted messages and the sending units.
[0034] If a message is confirmed to have been sent, PU 134 activates PDDC 132 in the next step (it waits for activation according to step 206) and waits for a received result according to step 216. PDDC 132 then leaves its quiescent state and waits for a change in the signal according to step 208, based on signal 202 from the measurement point at location P1 and signal 204 from the measurement point at location P2. Here, when PDDC 132 is activated, only one sender (or user) should occupy the communication medium. Otherwise, the obtained result may not correspond to the actual time difference.
[0035] Subsequently, the recorded reception time or propagation time is transmitted from PDDC 132 to PU 134, after which PDDC 132 returns to a static state and waits for the next activation.
[0036] Once the time difference is determined, the subsequent steps in the processing depend on system state 218. A learning phase is executed if a fundamental change has been made to the communication medium or if the system is being accessed for the first time. It is also advantageous to execute such a learning phase at each startup. Here, a model 228 is constructed based on step 222 and the time difference, and if necessary, based on sender information, including the previously mentioned reference time difference. This model is then used for classification 220 and intrusion detection 224, i.e., for attacker identification.
[0037] Importantly, it is crucial to ensure the absence of an attacker during this phase, as the model could otherwise be compromised or fail to be correctly created. To simplify operation of the system as much as possible, various models, including lookup tables, decision trees, or probability distributions, can be considered to compare the time difference with a reference time difference.
[0038] exist Figure 3 The diagram exemplifies a graph with a reference time difference as it can be used in the method according to the invention, and more precisely, it is shown as a probability distribution model of eight senders or users on the communication medium using a Gaussian distribution. The probability density is plotted for this purpose with respect to the time difference Δt (exemplarily in ns).
[0039] Regardless of the model chosen, the time difference is used in classification step 220 to determine the actual sender. This is based on the sender information extracted in the initial step during classification step 220—that is, for example, the reference time difference Δt. R —and the actually determined sender information—and the actual time difference Δt, to make a statement about the authenticity of the transmitted message 200, and to identify and, if necessary, mark possible attacks. Figure 2 The threshold Δt is shown exemplary in the example. S The threshold can be used to determine whether a verified user can still be inferred from the actual time difference Δt (e.g., when the time difference differs from the reference time difference by less than the threshold). In the latter case, appropriate measures can be taken, including, for example, recording the driver's entry into the vehicle, warning them, or implementing countermeasures.
[0040] If the transmission is legitimate, the calculated time difference can be taken into account for model update 226 to account for possible incremental changes in the propagation difference due to external influences, such as temperature or aging. After this step, the system returns to the "waiting for transmission" state according to step 212, and restarts the process when the next message is transmitted via the communication medium.
Claims
1. A method for verifying messages (200) in a communication system (100, 100'), wherein multiple users (110, 112) are connected to a communication medium (120) and exchange messages through the communication medium. in, When the processing unit (134, 142) identifies a message (200) transmitted on the communication medium (120), it extracts the sender information of the message (200) and activates the time difference acquisition unit (132, 140). The time difference acquisition components (132, 140) include or are formed by a time-to-digital converter, and are connected to the communication medium (120) at two different pre-given locations (P1, P2). The time difference acquisition components (132, 140), after being activated, acquire the time difference (Δt) between the reception times (t1, t2) of the information (200) sent at the two locations (P1, P2) and also on the communication medium (120) through the processing unit (134, 142). The acquired time difference (Δt) is transmitted to the processing units (134, 142), whereby the processing units (134, 142) use the time difference (Δt) to compare it with at least one reference time difference (Δt) belonging to a user determined by the sender message. R The comparison determines whether the message (200) comes from an authenticated user, and wherein the time difference acquisition unit (132, 140) returns to a static state after transmitting the acquired time difference.
2. The method of claim 1, wherein the time difference (Δt) is obtained when using a microcontroller.
3. The method of claim 1, wherein the time difference (Δt) is obtained when using an ASIC.
4. The method according to claim 1, wherein if the time difference (Δt) is different from the reference time difference (Δt) R The difference is less than a pre-given threshold (Δt). S If the message (200) is from an authenticated user, then it is determined that the message is from an authenticated user.
5. The method according to claim 1, wherein if the time difference (Δt) is different from the reference time difference (Δt) R The difference is greater than a pre-given threshold (Δt). S If the message (200) is not from an authenticated user and there is an attack attempt against the communication system (100, 100'), then it is determined that the message (200) is not from an authenticated user and there is an attack attempt against the communication system (100, 100').
6. The method according to any one of claims 1 to 5, in, In a learning phase, a model for subsequent comparisons is created based on the acquired time difference, wherein the time difference of the currently transmitted message is determined and evaluated using a pre-determined model, wherein if it is determined that the message (200) comes from a verified user, the calculated time difference can be taken into account for model updates.
7. The method according to any one of claims 1 to 5, wherein if it is determined that the message (200) originates from an authenticated user, then the corresponding reference time difference (Δt) is adjusted according to the time difference (Δt). R Adaptation is required.
8. The method according to any one of claims 1 to 5, wherein the time difference (Δt) is detected if only a single user sends a message (200) on the communication medium (120).
9. The method according to any one of claims 1 to 5, wherein the communication medium (120) utilizes broadcast transmission and is configured as a CAN bus, CAN-FD bus, CAN-XL bus or 10BASET1S bus.
10. A computing unit (130) configured to perform all method steps of the method according to any one of claims 1 to 9.
11. A computer program product comprising a computer program that, when implemented on a computing unit (130), causes the computing unit (130) to perform all the method steps of the method according to any one of claims 1 to 9.
12. A machine-readable storage medium having a computer program product according to claim 11 stored thereon.
Citation Information
Patent Citations
Message authentication based on a physical location on a bus
WO2019123458A1