Communication device
The communication device autonomously detects unauthorized ECUs by comparing IDs within the CAN protocol, addressing the need for self-detection in in-vehicle networks without additional hardware, thus enhancing security and reducing costs.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- DENSO CORP
- Filing Date
- 2022-09-13
- Publication Date
- 2026-04-28
AI Technical Summary
Existing in-vehicle network systems lack the ability to detect unauthorized electronic control units (ECUs) without requiring a dedicated communication protocol issuing device and memory storage for definition data.
A communication device equipped with a transceiver and processing unit that stores unique identification information and determines unauthorized devices by comparing transmitted and received IDs, using a CAN protocol to identify and suppress unauthorized connections.
Enables self-detection of unauthorized ECUs without altering the controller, reducing costs and enhancing security by preventing unauthorized access to the in-vehicle network.
Smart Images

Figure 0007852447000001 
Figure 0007852447000002 
Figure 0007852447000003
Abstract
Description
Technical Field
[0006] , , ,
[0001] The present disclosure relates to a communication device.
Background Art
[0002] Patent Document 1 discloses an in-vehicle network system in which an ECU and a communication protocol issuing device are connected via an in-vehicle network.
[0003] When the communication protocol issuing device receives a registration request for requesting the ECU to participate in the in-vehicle network from a registration device that allows the ECU to participate in the in-vehicle network, after performing authentication on the registration device, it creates definition data compliant with the implementation in the in-vehicle network and returns it to the registration device.
[0004] The registration device receives the definition data transmitted by the communication protocol issuing device and requests the ECU to store the received definition data in the memory. Then, the ECU receives the definition data from the registration device and stores it in the memory, and communicates using the in-vehicle network in accordance with the communication protocol according to the part defined by the definition data. According to this in-vehicle network system, the overall operation of the in-vehicle network is defined by a unique communication protocol for each vehicle, and it is detected that an unauthorized ECU that does not know it has connected to the in-vehicle network.
Prior Art Documents
Patent Documents
[0005]
Patent Document 1
Summary of the Invention
Problems to be Solved by the Invention
[0006] Prior art documents require the development of a dedicated communication protocol issuing device and the storage of definition data in the ECU's memory via a registration device. Therefore, prior art documents have the problem that they cannot detect fraudulent ECUs on their own.
[0007] One of the purposes of the disclosure is to provide a communication device that can determine, on its own, whether or not an unauthorized device has been connected. [Means for solving the problem]
[0008] The communication device disclosed herein is A communication device configured to transmit and receive multiple communication signals containing unique identification information via a communication line (200), A controller (20) outputs a transmission signal as a communication signal to be sent via a communication line, and also receives a reception signal as a communication signal received via a communication line, The system includes a transceiver (10) that is connected to a communication line, transmits a transmission signal input from the controller via the communication line, and outputs a reception signal received from the communication line to the controller, The controller outputs a transmission signal that includes identification information. One of the controllers and the other of the transceivers are: A storage unit (132) stores identification information contained in the transmitted signal, The system includes a processing unit (131) that determines that an unauthorized device has been connected to the communication line if the same identification information as that contained in the received signal is stored in the storage unit. 、 The processing unit is located in the transceiver, and if the identification information contained in the transmitted signal input from the controller matches the identification information contained in the received signal output to the controller within a predetermined time after the transmitted signal is input, it will not determine that an unauthorized device is connected to the communication line. It is characterized by the following:
[0009] According to the communication device disclosed herein, identification information contained in the transmitted signal is stored in a memory unit. The communication device then determines that an unauthorized device has been connected to the communication line if the same identification information as that contained in the received signal is stored in the memory unit. Therefore, the communication device can determine that an unauthorized device has been connected by itself.
[0010] The various embodiments disclosed in this specification employ different technical means to achieve their respective objectives. The claims and the reference numerals in parentheses in this section are illustrative in their correspondence with the embodiments described later and are not intended to limit the technical scope. The objectives, features, and effects disclosed in this specification will become clearer by referring to the subsequent detailed description and the accompanying drawings. [Brief explanation of the drawing]
[0011] [Figure 1] This is a block diagram showing the general configuration of a communication network. [Figure 2] This is a block diagram illustrating the schematic configuration of an electronic control unit. [Figure 3] This is a flowchart showing the processing operations during transmission in a communication device. [Figure 4] This flowchart shows the processing operations when a communication device receives data. [Figure 5] This is a flowchart showing the process of deleting an ID in a communication device. [Figure 6] This is a flowchart showing the process of deleting an ID in a communication device. [Modes for carrying out the invention]
[0012] In the following, the embodiments for implementing this disclosure will be described with reference to the drawings.
[0013] <Structure> With reference to FIGS. 1 and 2, the configurations of communication devices 10 and 20 will be described. The communication devices 10 and 20 are mounted on at least one of electronic control units 100 to 120. As shown in FIG. 1, the electronic control units 100 to 120 are configured to be able to transmit and receive (communicate) messages with each other via a communication line 200. In this way, the electronic control units 100 to 120 constitute a communication network via the communication line 200. This communication network can be mounted on, for example, a vehicle. In this case, the communication network may also be called an in-vehicle network. In the drawings, the electronic control unit is described as an ECU. ECU is an abbreviation for Electronic Control Unit. A message corresponds to a communication signal. Messages are communicated in a predetermined format called a frame.
[0014] In this embodiment, as an example, an example in which three electronic control units 100 to 120 are connected to the communication line 200 is adopted. However, the present disclosure is not limited to this, and it is sufficient that a plurality of electronic control units are connected to the communication line 200.
[0015] In this embodiment, as an example, an example in which the communication devices 10 and 20 are mounted on the electronic control unit 100 is adopted. In this case, the other electronic control units 110 and 120 are configured to be able to communicate via the communication line 200 by a device having a processing operation different from that of the communication devices 10 and 20. However, in the present disclosure, all of the electronic control units 100 to 120 may include the communication devices 10 and 20.
[0016] Each of the electronic control units 100 to 120 communicates in accordance with a predetermined communication standard. In this embodiment, as an example of the communication standard, Controller Area Network (hereinafter, CAN: registered trademark) is adopted. However, the present disclosure is not limited to this, and communication standards such as LIN or CXPI can also be adopted. LIN is an abbreviation for Local Interconnect Network. CXPI is an abbreviation for Clock Extension Peripheral Interface.
[0017] The communication line 200 includes two lines 201 and 202. A message is represented by the potential difference between the two lines 201 and 202. The communication line 200 can be said to be a two-wire communication line consisting of the CANH line 201 and the CANL line 202. Also, the communication line 200 may sometimes be referred to as a communication bus or a CAN bus.
[0018] A message with no potential difference corresponds to a recessive-level signal. On the other hand, a message with a potential difference corresponds to a dominant-level signal. A recessive-level signal may sometimes be called recessive. On the other hand, a dominant-level signal may sometimes be called dominant. Therefore, when each electronic control unit 100 to 120 transmits a message, it generates a potential difference between the CANH line 201 and the CANL line 202 and transmits the value (0) indicated by dominant and the value (1) indicated by recessive. In this way, each electronic control unit 100 to 120 transmits and receives messages in a two-wire operating voltage system.
[0019] When dominant and recessive collide on the communication line 200, dominant takes precedence. A dominant-level signal is prioritized over a recessive-level signal. Therefore, when a certain electronic control unit fixes and occupies the communication line 200 at the dominant level, other electronic control units cannot communicate via the communication line 200.
[0020] As shown in FIG. 2, the electronic control unit 100 includes a controller 20 and a transceiver 10 as communication devices. Also, in addition to the communication device, the electronic control unit 100 may include a microcomputer or the like that processes transmitted data and received data. Further, the controller 20 may be provided in the microcomputer. The transmitted data is the data included in the message to be transmitted. The received data is the data included in the received message.
[0021] Each of the electronic control units 100 to 120 transmits a plurality of messages. Each message is unique to each of the electronic control units 100 to 120 that transmit it. Also, each message includes identification information unique to each message. Hereinafter, the identification information is also referred to as ID.
[0022] Controller 20 is a communication control device that controls communication with other electronic control devices 110 and 120 according to the CAN protocol. Controller 20 converts the data to be transmitted into a message and issues a transmission instruction to the transceiver 10 while performing communication arbitration on the communication line 200. Controller 20 can issue transmission instructions to the transceiver 10 for multiple different messages.
[0023] When the controller 20 issues a transmission command, it outputs a message to be transmitted via the communication line 200 (transmission signal) as an input signal to the transceiver 10. At this time, the controller 20 outputs a message containing the ID to the transceiver 10. The controller 20 also receives the message received via the communication line 200 (received signal) as an output signal to the transceiver 10. The controller 20 is sometimes called a CAN controller. The message transmitted via the communication line 200 can also be called a transmission message. The message received via the communication line 200 can also be called a received message.
[0024] The transceiver 10 includes a transmitter 11, a receiver 12, a control unit 13, and the like. The transmitter 11 and receiver 12 are connected to the CANH line 201 and CANL line 202 of the communication line 200. The transmitter 11 transmits messages input from the controller 20 via the communication line 200. The receiver 12 outputs messages received from the communication line 200 to the controller 20. In other words, the transceiver 10 converts messages received from the controller 20 from bit level to voltage level and transmits them via the communication line 200. The transceiver 10 also reads the voltage level from the communication line 200, converts it from voltage level to bit level, and outputs it to the controller 20.
[0025] The control unit 13 comprises a processing unit 131, such as a CPU, and a storage unit 132, which includes volatile memory such as RAM and non-volatile memory such as flash memory. CPU is an abbreviation for Central Processing Unit. RAM is an abbreviation for Random Access Memory.
[0026] The processing unit 131 receives a message output from the controller 20. The processing unit 131 extracts the ID contained in the message and stores the extracted ID in the storage unit 132. Preferably, the processing unit 131 stores the ID in the non-volatile memory of the storage unit 132. In this way, the storage unit 132 stores the ID contained in the message.
[0027] The electronic control unit 100 transmits multiple different messages. Therefore, the processing unit 131 receives multiple different messages as input. Consequently, the storage unit 132 stores multiple IDs. Preferably, the IDs are stored in the storage unit 132 in a state that can be erased.
[0028] Furthermore, the processing unit 131 receives the received message output from the receiving unit 12. The processing unit 131 extracts the ID contained in the received message. Then, the processing unit 131 detects whether or not an unauthorized device is connected to the communication line 200 based on the ID extracted from the received message and the ID stored in the storage unit 132. In other words, the processing unit 131 detects impersonation. An unauthorized device is an electronic device that is not a legitimately installed electronic control device on the communication line 200, but is illegally connected by a malicious third party or the like. The transceiver 10 is sometimes called a CAN transceiver.
[0029] <Processing Actions> The processing operation of the transceiver 10 will be explained using Figures 3 to 6. First, the processing operation when a message is transmitted will be explained using Figure 3. When the transceiver 10 receives an input signal from the controller 20, it starts the processing shown in the flowchart in Figure 3.
[0030] In step S10, the ID is detected from the input signal. In other words, the processing unit 131 extracts the ID from the message, which is the input signal.
[0031] In step S11, it is determined whether the same ID is already stored in the storage unit 132. The processing unit 131 checks whether the ID extracted in step S10 is already stored in the storage unit 132. In other words, the processing unit 131 checks whether the current message has been entered before. It can also be said that the processing unit 131 checks whether it is necessary to store the ID included in the current message in the storage unit 132.
[0032] If the processing unit 131 determines that the ID extracted in step S10 is already stored in the storage unit 132, it considers that there is no need to store the ID and terminates the flowchart in Figure 3. If the processing unit 131 determines that the ID extracted in step S10 is not stored in the storage unit 132, it considers that there is a need to store the ID and proceeds to step S12.
[0033] In step S12, an ID is added to the storage unit 132. The processing unit 131 stores the ID extracted in step S10 in the storage unit 132. This is done to determine whether or not an unauthorized device is connected to the communication line 200 by comparing it with the ID contained in the received message.
[0034] Next, Figure 4 will be used to explain the processing operation when a message is received. When the transceiver 10 receives a message from the receiving unit 12, it starts the processing shown in the flowchart in Figure 4.
[0035] In step S20, the ID is detected from the output signal. In other words, the processing unit 131 extracts the ID from the received message, which is the output signal.
[0036] In step S21, it is determined whether the same ID is stored in the storage unit 132. The processing unit 131 checks whether the ID extracted in step S20 is stored in the storage unit 132. The processing unit 131 performs the check in step S21 to determine whether it has received a message that should only be transmitted by the electronic control unit 100 on which the processing unit 131 is installed. In other words, the processing unit 131 performs the check in step S21 to determine whether an unauthorized device is connected to the communication line 200.
[0037] If the processing unit 131 determines that the ID extracted in step S20 is stored in the storage unit 132, it assumes that the unauthorized device may be connected to the communication line 200 and proceeds to step S22. If the processing unit 131 determines that the ID extracted in step S10 is not stored in the storage unit 132, it assumes that the unauthorized device is not connected to the communication line 200 and terminates the flowchart in Figure 4.
[0038] In step S22, it is determined whether the input signal ID equals the output signal ID. The processing unit 131 determines whether the ID contained in the input signal matches the ID contained in the output signal. In other words, the processing unit 131 determines whether the ID contained in the message input from the controller 20 matches the ID contained in the received message output to the controller 20 within a predetermined time after the message is input.
[0039] If the processing unit 131 does not determine that there is a match, it proceeds to step S23. On the other hand, if the processing unit 131 determines that there is a match, it does not proceed to step S23 and terminates the flowchart in Figure 4.
[0040] If the input signal ID does not equal the output signal ID, it can be assumed that the message sent by the unauthorized device was received via the communication line 200. Therefore, if the processing unit 131 does not determine that they match, it assumes that the unauthorized device is connected to the communication line 200 and proceeds to step S23.
[0041] On the other hand, if the input signal ID equals the output signal ID, the processing unit 131 can be considered to have received the message it sent via the communication line 200. Therefore, even if the processing unit 131 determines YES in step S21, it will not determine that an unauthorized device is connected to the communication line 200 if the input signal ID equals the output signal ID. This prevents the transceiver 10 from mistakenly determining that an unauthorized device is connected based on the message it has sent.
[0042] In addition, step S22 may be omitted in this disclosure. In this case, the processing unit 131 determines that an unauthorized device is connected to the communication line 200 if the same ID as the ID contained in the received message is stored in the storage unit 132.
[0043] In step S23, an error frame is transmitted to the communication line. The processing unit 131 transmits an error frame via the transmitting unit 11 to suppress the continuous flow of frames transmitted by the tampering device through the communication line 200. In other words, the processing unit 131 transmits an error frame to destroy the frames transmitted by the tampering device. In this embodiment, as an example of an error frame, a dominant level signal is continuously transmitted for a certain period of time.
[0044] Furthermore, if the processing unit 131 determines that an unauthorized device has been connected to the communication line 200, it may notify the controller 20 that an unauthorized device has been connected to the communication line 200. In other words, if the processing unit 131 determines NO in step S22, it performs at least one of step S23 and notifying the controller 20.
[0045] Furthermore, the transceiver 10 may initiate the flowchart process shown in Figure 5 each time it extracts an ID from the input signal, which is a message.
[0046] In step S30, the time (time) when each ID stored in the memory unit 132 was last entered is recorded. The processing unit 131 records the time when each ID was entered. The processing unit 131 also updates the time each time an ID is entered. In this way, the processing unit 131 records the time when each ID was last entered. The processing unit 131 also associates each ID with the time and records it in the memory unit 132 or the like. Note that the time when each ID was entered can also be said to be the time when the ID was extracted from each entered message.
[0047] In step S31, it is determined whether a certain amount of time has elapsed. The processing unit 131 determines whether a certain amount of time has elapsed since the start of operation. If the processing unit 131 determines that a certain amount of time has elapsed, it proceeds to step S32; otherwise, it returns to step S30. The processing unit 131 can measure the elapsed time using a timer or the like.
[0048] In step S32, it is determined whether there are any IDs for which no input has been received for a reference time or longer. The processing unit 131 determines whether there are any IDs for which no input has been received by the transceiver 10 for a reference time or longer from the time of the last input.
[0049] The processing unit 131 measures the elapsed time for each ID since the last input time and determines whether there are any IDs whose elapsed time exceeds the reference time. If the processing unit 131 determines that there are IDs for which there has been no input for longer than the reference time, it considers such IDs to exist and proceeds to step S33. Alternatively, if the processing unit 131 determines that there are IDs for which there has been no input for longer than the reference time, it considers that the elapsed time since the ID was extracted has not reached the reference value and proceeds to step S33.
[0050] On the other hand, if the processing unit 131 does not determine that there are any IDs that have not received input for longer than the reference time, it considers that there are no such IDs and terminates the flowchart in Figure 5. A "such ID" is an ID that has not received input to the transceiver 10 for longer than the reference time. The reference time corresponds to a reference value.
[0051] In step S33, the corresponding ID is deleted from the storage unit 132. The processing unit 131 deletes the corresponding ID from the storage unit 132.
[0052] Alternatively, the transceiver 10 may start the flowchart process shown in Figure 6 each time it reads an ID from the input signal, which is a message.
[0053] In step S40, the input count for each ID stored in the memory unit 132 is recorded. The processing unit 131 updates the input count each time an ID is entered. The processing unit 131 associates each ID with its input count and records it in the memory unit 132 or the like. The input count for each ID can also be said to be the number of times the ID has been extracted from each entered message. The input count for each ID can also be said to be the number of times each entered message has been sent.
[0054] In step S41, it is determined whether the total number of inputs exceeds a certain number. If the processing unit 131 determines that the total number of inputs for each ID since the start of operation exceeds a certain number, it proceeds to step S42; otherwise, it returns to step S40. The processing unit 131 can count the number of inputs using a counter or the like.
[0055] In step S42, it is determined whether there are any IDs whose input count is less than or equal to the threshold count. The processing unit 131 determines whether there are any IDs whose input count is less than or equal to the threshold count. The processing unit 131 counts the input count for each ID and determines whether there are any IDs whose input count is below the threshold count. If the processing unit 131 determines that there are IDs whose input count is less than or equal to the threshold count, it considers that such IDs exist and proceeds to step S43. Alternatively, if the processing unit 131 determines that there are IDs whose input count is less than or equal to the threshold count, it can be said that it considers that the number of times the ID has been extracted has not reached the threshold value and proceeds to step S43.
[0056] On the other hand, if the processing unit 131 does not determine that there are any IDs with a count below the threshold, it considers that there are no such IDs and terminates the flowchart in Figure 6. A "successful ID" is an ID whose input count is less than or equal to the threshold. The threshold count corresponds to the threshold value. Step S43 is the same as step S33.
[0057] In this way, the processing unit 131 deletes from the storage unit 132 any IDs for which at least one of the elapsed time and transmission count does not reach the threshold value. In other words, if multiple IDs are stored in the storage unit 132, the processing unit 131 deletes from the storage unit 132 only the IDs for which at least one of the elapsed time and transmission count does not reach the threshold value.
[0058] Messages may contain incorrect IDs due to noise or other factors. In this case, the processing unit 131 will store the incorrect ID in the storage unit 132. However, the transceiver 10 can delete the incorrect ID from the storage unit 132 by deleting the ID as described above.
[0059] <Effects> According to the transceiver 10 disclosed herein, the ID contained in the message, which is the transmitted signal, is stored in the storage unit 132. The transceiver 10 then determines that an unauthorized device is connected to the communication line 200 if the same ID as the ID contained in the received message, which is the received signal, is stored in the storage unit 132. Therefore, the transceiver 10 can determine that an unauthorized device is connected to the communication line 200 by itself as an electronic control unit. Furthermore, since the communication devices 10 and 20 determine the connection of an unauthorized device by the transceiver 10, no changes to the controller 20 are necessary.
[0060] In this embodiment, an example is adopted in which the transceiver 10 is equipped with a processing unit 131 and a storage unit 132. However, this disclosure is not limited to this, and the controller 20 may be equipped with the processing unit 131 and the storage unit 132. In this case, the processing unit of the controller 20 stores the ID contained in the message, which is the transmission signal, in the storage unit of the controller 20. Then, if the processing unit of the controller 20 has the same ID as the ID contained in the message, which is the received signal, stored in the storage unit of the controller 20, it determines that an unauthorized device has been connected to the communication line 200. In this way, since the controller 20 is equipped with the processing unit 131 and the storage unit 132, the configuration of the transceiver 10 is independent, and thus the cost increase of the transceiver 10 can be suppressed.
[0061] Furthermore, the processing unit of the controller 20 may execute steps S22 and S23. In addition, if multiple IDs are stored in the storage unit, the processing unit of the controller 20 may delete from the storage unit any IDs for which at least one of the elapsed time and transmission count does not reach a reference value.
[0062] This disclosure is described in accordance with embodiments, but it is understood that this disclosure is not limited to such embodiments or structures. This disclosure also includes various modifications and variations within the scope of equivalents. In addition, while various combinations and forms are shown in this disclosure, other combinations and forms that include one, more, or fewer of those elements also fall within the scope and idea of this disclosure. [Explanation of Symbols]
[0063] 10...Transceiver, 11...Transmitter, 12...Receiver, 13...Control Unit, 131...Processing Unit, 132...Storage Unit, 20...Controller, 100...Electronic Control Unit, 200...Communication Line, 201...CANH Line, 202...CANL Line
Claims
1. A communication device configured to transmit and receive multiple communication signals containing unique identification information via a communication line (200), A controller (20) outputs a transmission signal as the communication signal to be transmitted via the communication line, and receives a reception signal as the communication signal received via the communication line, The system includes a transceiver (10) connected to the aforementioned communication line, which transmits the transmission signal input from the controller via the communication line and outputs the received signal received from the communication line to the controller, The controller outputs the transmission signal including the identification information, One of the controller and the transceiver is A storage unit (132) in which the identification information included in the transmission signal is stored, The system includes a processing unit (131) that determines that an unauthorized device is connected to the communication line if the same identification information as the identification information included in the received signal is stored in the storage unit, The processing unit is provided in the transceiver and, if the identification information contained in the transmission signal input from the controller matches the identification information contained in the reception signal output to the controller within a predetermined time after the transmission signal is input, the communication device does not determine that the unauthorized device is connected to the communication line.
2. The communication signal, which is represented by an inferior level signal and a dominant level signal that takes precedence over the inferior level signal, is transmitted and received via a pair of two-wire communication lines using a two-wire operating voltage method. The communication device according to claim 1, wherein the processing unit determines that the unauthorized device is connected to the communication line and continues to transmit the dominance level signal for a certain period of time.
Citation Information
Patent Citations
In-vehicle network system
JP2013168865A
Electronic control device and electronic control system
JP2014236248A
Controller area network (CAN) device and method for controlling can traffic
US20170093659A1
Can communication based hacking attack detection method and system
US20200120117A1
Security module for a can node
US20210044600A1