WO2016080422A1 - 通信制御装置及び通信システム - Google Patents
通信制御装置及び通信システム Download PDFInfo
- Publication number
- WO2016080422A1 WO2016080422A1 PCT/JP2015/082349 JP2015082349W WO2016080422A1 WO 2016080422 A1 WO2016080422 A1 WO 2016080422A1 JP 2015082349 W JP2015082349 W JP 2015082349W WO 2016080422 A1 WO2016080422 A1 WO 2016080422A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- message
- transmission
- hash value
- unit
- communication
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40143—Bus networks involving priority mechanisms
- H04L12/40163—Bus networks involving priority mechanisms by assigning priority to messages according to a message field
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40052—High-speed IEEE 1394 serial bus
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40143—Bus networks involving priority mechanisms
- H04L12/40156—Bus networks involving priority mechanisms by using dedicated slots associated with a priority level
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L2012/40208—Bus networks characterized by the use of a particular bus standard
- H04L2012/40215—Controller Area Network CAN
Definitions
- the present invention relates to a communication system in which a plurality of communication devices transmit and receive messages, such as CAN (Controller Area Network), and a communication control apparatus that detects intrusion of unauthorized messages to the system.
- a communication system in which a plurality of communication devices transmit and receive messages, such as CAN (Controller Area Network), and a communication control apparatus that detects intrusion of unauthorized messages to the system.
- CAN Controller Area Network
- a CAN communication protocol has been widely used for communication between a plurality of ECUs (Electronic Control Units) mounted on a vehicle.
- a communication system that employs a CAN communication protocol has a configuration in which a plurality of ECUs are connected to a common CAN bus, and transmission and reception of messages are performed when the receiving ECU acquires a signal output from the transmitting ECU to the CAN bus. Is done.
- a technique for detecting or preventing unauthorized message intrusion on a common communication line has been studied.
- Patent Document 1 proposes a communication management device for a vehicle network that restricts input of external data.
- This communication management device monitors data on the CAN bus and monitors data input from the outside. When the usage rate of the CAN bus exceeds the load reference value, and when the external data is transferred, the CAN bus When it is predicted that the usage rate will exceed the load reference value, external data transmission restriction is executed.
- a malicious device may be connected to the CAN bus.
- Such a device may cause a malfunction of a legitimate ECU or the like connected to the CAN bus by, for example, sending an illegal message to the CAN bus.
- the communication management device described in Patent Document 1 is configured to determine whether or not the CAN bus usage rate exceeds the load reference value, transmission restrictions are imposed when the amount of message transmission by a malicious device is small. There is a problem that can not be done.
- the present invention has been made in view of such circumstances, and an object of the present invention is to detect such message transmission when an unauthorized device transmits a message to a common communication line. It is an object of the present invention to provide a communication control apparatus and a communication system that can perform the above-described operation.
- a communication control apparatus is a communication control apparatus that controls communication by a communication apparatus having a message transmission unit that periodically transmits a message, and a reference for determining a reference time point related to message transmission by the message transmission unit A predetermined time period including the scheduled transmission time with respect to a scheduled transmission time obtained by adding a period that is an integral multiple of a message transmission cycle by the message transmission unit to the reference time determined by the reference time determination unit.
- a permission period determination unit as a permission period, a message detection unit for detecting a message transmitted by the communication device, and a message detected by the message detection unit are transmitted within the permission period determined by the permission period determination unit
- a transmission permission / non-permission determining unit that determines whether the message can be transmitted according to whether the message is a message. .
- the reference time point determination unit and the permission period determination unit determine the reference time point and the permission period for each of the plurality of communication devices. It is made to do so.
- the message transmitted by the communication apparatus includes information indicating the priority of the message, and the permission period determination unit determines the permission period for each message priority. It is made to do so.
- the communication control apparatus further includes arbitration means for arbitrating a transmission order according to a priority determined for a message when message transmissions of a plurality of the communication apparatuses collide, and determining whether or not transmission is possible.
- the section examines the priority of other messages that have completed transmission from the scheduled transmission time of the determination target message to the completion of the transmission of the determination target message, and has a lower priority than the determination target message. When other messages exist, it is determined that transmission of the determination target message is not permitted.
- the transmission permission / inhibition determining unit may determine that the message non-transmission period exceeds a predetermined length between the scheduled transmission time of the determination target message and the completion of transmission of the determination target message. When the message exists, it is determined that transmission of the determination target message is not permitted.
- the communication control device includes a hash value request unit that gives a hash value calculation request to the communication device, and a hash value reception unit that receives a hash value transmitted by the communication device as a response to the calculation request And a hash value determination unit that determines whether the hash value received by the hash value reception unit is correct, the reference time point determination unit is based on the time point when the reception of the correct hash value from the communication device is completed, A reference time point is determined.
- the communication control device includes a discard processing unit that performs processing for causing the communication device that receives the message to discard the message that the transmission permission determination unit determines not to permit transmission. .
- the communication system is a communication system including a plurality of communication devices that transmit and receive messages to each other and a communication control device that controls communication by the communication devices.
- the communication device periodically transmits messages.
- the communication control device includes a reference time determination unit that determines a reference time point related to message transmission by the message transmission unit, and a reference time point determined by the reference time determination unit by the message transmission unit.
- a message for detecting a message transmitted by the communication apparatus, and a permission period determination unit that sets a predetermined period including the scheduled transmission time as a permission period for message transmission with respect to a scheduled transmission time including a period that is an integral multiple of the message transmission cycle.
- the detection unit and the message detected by the message detection unit are within the permission period determined by the permission period determination unit. Depending on whether or not sent, and having a determining transmission availability determination unit whether transmission of said message.
- the communication system is characterized in that the reference time point determination unit and the permission period determination unit determine the reference time point and the permission period for each of the plurality of communication devices.
- the message transmitted by the communication device includes information indicating the priority of the message, and the permission period determination unit determines the permission period for each message priority. It is made to do so.
- the communication system further includes arbitration means for arbitrating a transmission order in accordance with a priority determined for a message when message transmissions of a plurality of the communication apparatuses collide, and determining whether or not transmission is possible.
- the section examines the priority of other messages that have completed transmission from the scheduled transmission time of the determination target message to the completion of the transmission of the determination target message, and has a lower priority than the determination target message. When other messages exist, it is determined that transmission of the determination target message is not permitted.
- a message non-transmission period that exceeds a predetermined length between the scheduled transmission time of the determination target message and completion of transmission of the determination target message in the communication system according to the present invention.
- the communication control device includes a hash value request unit that gives a hash value calculation request to the communication device, and a hash value that the communication device transmits as a response to the calculation request.
- a hash value receiving unit that receives the hash value, and a hash value determination unit that determines whether the hash value received by the hash value receiving unit is correct.
- a hash value transmission unit that transmits the hash value calculated by the hash value calculation unit to the communication control device, and the reference time point determination unit receives a correct hash value from the communication device. The reference time point is determined on the basis of the time point when the reception is completed.
- the message transmission unit determines a reference time point based on a time point when the hash value transmission unit completes transmission of a correct hash value, and periodically transmits a message based on the determined time point. It is characterized by carrying out.
- the communication system includes a discard processing unit that performs processing for causing the communication device that receives the message to discard the message that the communication control device determines that the transmission permission determination unit does not permit transmission. It is characterized by having.
- a communication control device that detects unauthorized message transmission is provided for a communication system in which a plurality of communication devices are connected to a common communication line and each communication device periodically transmits messages.
- a predetermined period (t1 ⁇ A to t1 + B, t2 ⁇ A to t2 + B, t3 ⁇ A to t3 + B,..., tn ⁇ A to tn + B) including this time point is determined as a message transmission permission period.
- the communication control device detects a message transmitted by the communication device by monitoring a common communication line.
- the communication control device can determine whether or not this message is illegal by determining whether or not the detected message is transmitted within the above-described permission period. It is possible to determine whether or not to permit message transmission.
- the communication control apparatus of the present invention is configured to determine the permission period for subsequent message transmission based on the reference time determined in the first stage, that is, to determine the permission period on an absolute basis.
- the communication control apparatus of the present invention determines the permission period for subsequent message transmission based on the reference time determined in the first stage, that is, to determine the permission period on an absolute basis.
- a predetermined period including a time point when a period T is added to the reception time of this message is used as a permission period, that is, a configuration in which a permission period is determined based on a relative standard Conceivable.
- a permission period is determined based on a relative standard Conceivable.
- the CAN communication protocol when a message transmission collision occurs, an arbitration process is performed, and a delay occurs in the transmission of a low-priority message.
- the permission period for determination when a delay occurs in message transmission, the permission period for determination varies. Therefore, it is necessary to set the permission period wide to some extent, and it is not easy to narrow the permission period. The wider the permission period, the higher the possibility that a fraudulent message will be misjudged as valid. Further, in the configuration in which relative determination is performed, there is a possibility that the permission period of the next message is determined based on reception of an illegal message. When such a situation occurs, there is a possibility that an incorrect message is erroneously determined to be a valid message continuously.
- the communication control apparatus of the present invention can avoid the occurrence of these problems by determining the permission period on an absolute basis.
- the communication control device individually determines the reference time for each communication device included in the communication system. In addition, the communication control device determines a permission period for each communication device with respect to each determined reference time point. Note that the message transmission cycle of each communication device may be different. Thereby, even if it is a case where the communication apparatus in which the transmission cycle of a message, a transmission timing, etc. differ in a communication system, a communication control apparatus can determine the propriety of message transmission for every communication apparatus.
- the communication device can transmit a plurality of types of messages having different transmission cycles, and the communication control device determines the permission period for each message type.
- the communication control apparatus may determine the reference time point for each message type. Thus, even when one communication device transmits messages having different transmission cycles, the communication control device can determine whether or not transmission is possible for each message type.
- the communication control apparatus checks whether another message has been transmitted between the scheduled transmission time and the completion of the transmission of the message to be determined. If another message has been transmitted, the communication control device compares the priority of the determination target message with the priority of the other message. When the priority of the other message is higher than the priority of the message to be determined, the communication control device transmits the message to be determined because the message to be determined is considered to have been delayed in transmission due to proper arbitration processing. Allow. On the other hand, if the priority of other messages is lower than the priority of the message to be determined, the delay of the message to be determined is not due to a valid arbitration process. Is not allowed to send messages. Thereby, even in a communication system in which a delay occurs in message transmission due to arbitration processing, the communication control device can determine whether or not message transmission is possible.
- the communication control device determines whether or not there is a message non-transmission period exceeding a predetermined length between the scheduled transmission time of the message to be determined and the completion of transmission of this message.
- a message non-transmission period it is considered that the delay of the determination target message is not caused by a valid arbitration process, and therefore the communication control device does not permit transmission of the determination target message.
- a predetermined procedure is performed between the communication control device and the communication device in order to determine the reference time point.
- the communication control device transmits a hash value calculation request to the communication device.
- the communication control apparatus may give information necessary for hash value calculation to the communication apparatus together with the calculation request.
- the communication device that has received the calculation request from the communication control device calculates a hash value using a predetermined hash function based on, for example, information stored in its own memory, and transmits the calculated hash value to the communication control device. To do.
- the communication control device that has received the hash value from the communication device determines whether or not this hash value is correct.
- the communication control apparatus determines a reference time point based on the time point when reception of the hash value is completed. Note that the communication device may use the time when reception of the correct hash value is completed as the reference time, or may use the time when the predetermined time is increased or decreased as the reference time. Similarly, the communication apparatus determines a reference time point based on the time when transmission of the correct hash value is completed, and performs periodic message transmission based on the determined time point. Since the reference time point can be determined based on a highly reliable communication result based on the hash value, the communication control device can perform highly reliable fraud message detection.
- the communication control device performs a process of causing the communication device that receives this message to discard the message for the message that the communication control device determines is not permitted to be transmitted because it is an illegal message. As a result, it is possible to prevent the communication device from receiving an unauthorized message and performing processing corresponding to this message in the communication device.
- the communication control device determines a permission period including a time point that is an integral multiple of the message transmission period with respect to the reference time point, and whether or not the message transmitted by the communication device is within the permission period.
- FIG. 1 is a schematic diagram showing a configuration of a communication system according to the present embodiment.
- the communication system according to the present embodiment includes a plurality of ECUs 3 mounted on the vehicle 1 and a single monitoring device 5.
- the ECU 3 and the monitoring device 5 are connected via a common communication line laid on the vehicle 1 and can send and receive messages to and from each other.
- this communication line is a CAN bus, and the ECU 3 and the monitoring device 5 perform communication according to the CAN protocol.
- the ECU 3 controls, for example, an engine ECU that controls the engine of the vehicle 1, a body ECU that controls electrical components of the vehicle body, an ABS-ECU that performs control related to ABS (Antilock Brake System), or an airbag of the vehicle 1.
- ABS Antilock Brake System
- the monitoring device 5 is a device that monitors unauthorized message transmission to the in-vehicle network.
- the monitoring device 5 may be provided as a device dedicated to monitoring.
- the monitoring device 5 may have a configuration in which a monitoring function is added to a device such as a gateway. It may be.
- FIG. 2 is a block diagram showing the configuration of the ECU 3.
- blocks relating to communication, fraud detection, and the like are extracted from the plurality of ECUs 3 provided in the vehicle 1. These blocks are common to each ECU 3.
- the ECU 3 includes a processing unit 31, a ROM (Read Only Memory) 32, a RAM (Random Access Memory) 33, a CAN communication unit 34, and the like.
- the processing unit 31 is configured using an arithmetic processing device such as a CPU (Central Processing Unit) or an MPU (Micro-Processing Unit).
- the processing unit 31 reads out and executes the program 32 a stored in the ROM 32 to perform various information processing or control processing related to the vehicle 1.
- the ROM 32 is configured by using a non-volatile memory element such as a flash memory or an EEPROM (Electrically Erasable Programmable ROM).
- the ROM 32 stores a program 32a executed by the processing unit 31 and various data 32b necessary for processing performed thereby.
- the program 32a and data 32b stored in the ROM 32 are different for each ECU 3.
- the RAM 33 is configured by using a data rewritable memory element such as SRAM (Static Random Access Memory) or DRAM (Dynamic Random Access Memory).
- the RAM 33 stores various data generated by the processing of the processing unit 31.
- the CAN communication unit 34 communicates with another ECU 3 or the monitoring device 5 via the CAN bus according to the CAN communication protocol.
- the CAN communication unit 34 converts the information for transmission given from the processing unit 31 into a signal according to the CAN communication protocol, and outputs the converted signal to the CAN bus to another ECU 3 or the monitoring device 5.
- Send information The CAN communication unit 34 obtains a signal output by another ECU 3 or the monitoring device 5 by sampling the potential of the CAN bus, and converts this signal into binary information according to the CAN communication protocol. Reception is performed and the received information is given to the processing unit 31.
- the CAN communication unit 34 performs a process of arbitrating which message is transmitted first when a collision occurs between its own message transmission and message transmission by another ECU 3 or the monitoring device 5, so-called arbitration process.
- the message transmitted by each ECU 3 has an ID determined in advance according to the type of message. This ID is information handled as a numerical value, and the smaller the value, the higher the priority of message transmission. For this reason, in the communication system, when a plurality of message transmissions collide with each other on the CAN bus, the message transmission with the highest priority is performed, and another message is transmitted after the transmission of this message is completed.
- the arbitration process performed by the CAN communication unit 34 is an existing technique, and thus a detailed description of the processing procedure is omitted.
- the message processing unit 41, the hash value calculation unit 42, and the like are realized as software functional blocks by executing the program 32a.
- part or all of the message processing unit 41 and the hash value calculation unit 42 may be realized as functional blocks by hardware.
- the message processing unit 41 acquires information such as information detected by a sensor or feedback information from a control target device, creates a CAN protocol message including the acquired information, and sends the created message to the CAN bus. The transmission process is performed periodically. Note that the message transmission cycle is determined for each message type (ie, ID), and the message processing unit 41 can perform transmission with a different cycle for each message type.
- the hash value calculation unit 42 performs a process of calculating a hash value in response to a calculation request from the monitoring device 5.
- the hash value calculation unit 42 is based on a part or all of the data stored in the ROM 32 (which may include both the program 32a and the data 32b) and the random seed attached to the calculation request from the monitoring device 5. Then, a hash value is calculated by using a predetermined hash function. A detailed procedure for calculating the hash value by the hash value calculation unit 42 will be described later.
- the hash value calculation unit 42 transmits the calculated hash value to the monitoring device 5 as a response to the calculation request.
- FIG. 3 is a block diagram showing the configuration of the monitoring device 5.
- the monitoring device 5 includes a processing unit 51, a storage unit 52, a CAN communication unit 53, and the like.
- the processing unit 51 is configured by using an arithmetic processing device such as a CPU or MPU, and performs processing for monitoring the behavior and communication of the ECU 3 of the vehicle 1 by reading and executing a program stored in the storage unit 52.
- the storage unit 52 is configured using a non-volatile memory element that can rewrite data, such as a flash memory or an EEPROM.
- the storage unit 52 stores copy data 52 a obtained by copying the stored contents of the ROM 32 of the ECU 3 mounted on the vehicle 1, and cycle information 52 b regarding the transmission cycle of messages transmitted by each ECU 3.
- the CAN communication unit 53 performs communication with the ECU 3 via the CAN bus according to the CAN communication protocol.
- the CAN communication unit 53 converts the information for transmission given from the processing unit 51 into a signal according to the CAN communication protocol, and outputs the converted signal to the CAN bus to transmit information to the ECU 3.
- the CAN communication unit 53 obtains a signal output from the ECU 3 by sampling the potential of the CAN bus, converts the signal into binary information according to the CAN communication protocol, and receives the information. Information is given to the processing unit 51.
- the processing unit 51 of the monitoring device 5 is provided with a reference time point determination unit 61, a permission period determination unit 62, a transmission availability determination unit 63, a discard processing unit 64, and the like.
- the reference time determination unit 61 to the discard processing unit 64 may be configured as hardware functional blocks or may be configured as software functional blocks.
- the reference time point determination unit 61 and the permission period determination unit 62 perform processing for determining conditions for the monitoring device 5 to detect unauthorized message transmission.
- the transmission permission / inhibition determination unit 63 performs processing for determining whether or not the message output on the CAN bus can be transmitted based on the conditions determined by the reference time determination unit 61 and the permission period determination unit 62.
- the discard processing unit 64 performs a process for causing the ECU 3 to discard the message that is not permitted to be transmitted by the transmission permission / inhibition determining unit 63 so as to prevent the ECU 3 from receiving the message.
- FIG. 4 is a schematic diagram illustrating the configuration of the copy data 52a stored in the storage unit 52 of the monitoring device 5.
- the monitoring device 5 stores the same data stored in the ROM 32 as copy data 52a for all the monitored ECUs 3 mounted on the vehicle 1.
- identification information uniquely assigned to each ECU 3 (ECUa, ECUb... In FIG. 4) and the stored contents of the ROM 32 of each ECU3 are stored in association with each other.
- FIG. 5 is a schematic diagram illustrating the configuration of the period information 52b stored in the storage unit 52 of the monitoring device 5.
- the monitoring device 5 associates identification information (CAN-ID) attached to a message transmitted / received on the network in the vehicle 1 with a cycle in which a message having this CAN-ID is transmitted as cycle information 52b. I remember it.
- CAN-ID 1 has a transmission cycle of 10 ms
- a message with CAN-ID 2 has a transmission cycle of 50 ms
- a message with CAN-ID 3 has a transmission cycle of 32 ms.
- these numerical values are examples.
- the monitoring device 5 performs processing for detecting that an unauthorized message is transmitted on the CAN bus through which the plurality of ECUs 3 transmit and receive messages.
- an unauthorized communication device may be illegally connected to the CAN bus, and this communication device may transmit an unauthorized message on the CAN bus.
- any ECU 3 mounted on the vehicle 1 is illegally modified or altered and the ECU 3 transmits an illegal message.
- the unauthorized messages detected by the monitoring device 5 may be due to other factors.
- An unauthorized communication device can transmit an unauthorized message with a specific CAN-ID according to the CAN protocol.
- CAN-ID attached to such a fraudulent message, a legitimate one used in the communication system of the vehicle 1 is used, but other data included in the fraudulent message is illegal data.
- the ECU 3 receives an unauthorized message based on the CAN-ID, the ECU 3 performs processing based on unauthorized data.
- an unauthorized message with a regular CAN-ID that is, a so-called spoof message is detected.
- the monitoring device 5 detects an invalid message by determining whether or not this message is transmitted at a correct cycle with respect to a message to be transmitted periodically.
- FIG. 6 is a schematic diagram for explaining illegal message detection processing by the monitoring device 5. For each CAN-ID attached to a message transmitted and received in the communication system, the monitoring device 5 determines a permission period during which transmission of a message having this CAN-ID is permitted. FIG. 6 illustrates a permission period determined by the monitoring device 5 for a message to which a certain CAN-ID is attached. In the present embodiment, it is assumed that a plurality of ECUs 3 use one CAN-ID, that is, a plurality of ECUs 3 do not transmit a message with the same CAN-ID.
- the transmission cycle of the message to be monitored by the monitoring device 5 is T.
- the reference time determination unit 61 of the monitoring device 5 determines a reference time t0 for message transmission by performing a predetermined procedure with the ECU 3 that transmits this message (the details of the reference time determination process will be described later). ).
- the permission period determination unit 62 of the monitoring device 5 refers to the cycle information 52b stored in the storage unit 52 to obtain the transmission cycle T of the message to be monitored.
- the permission period determination unit 62 sets a time point t1 obtained by adding the transmission period T to the reference time point t0 as a scheduled message transmission time point t1.
- the permission period determination unit 62 sets a time point t2 obtained by adding twice the transmission period T to the reference time point t0 as a scheduled transmission time point t2, and a time point when adding three times the transmission period T to the reference time point t0.
- t3 can be a scheduled transmission time t3
- the permission period determination unit 62 of the monitoring device 5 determines a period in which a predetermined period A and a period B are provided for the scheduled transmission time t1 as the permission period.
- the permission period determining unit 62 determines the period of t1 ⁇ A ⁇ t ⁇ t1 + B as the permission period.
- the same applies to the scheduled transmission times t2, t3,. That is, the permission period determining unit 62 determines t0 + nT ⁇ A ⁇ t ⁇ t0 + nT + B (n 1, 2, 3,...) As the permission period.
- the period A and the period B for determining the permission period are determined in advance based on, for example, a simulation of a communication system or a measurement result in an actual machine.
- the same value may be used for all messages.
- a different value may be used for each CAN-ID.
- the period A and the period B can be stored in the period information 52b in association with the CAN-ID.
- the period A can be determined based on a clock error between the monitoring device 5 and the ECU 3 that transmits this message.
- the period B is determined in consideration of the time that this message is delayed by the arbitration process.
- the CAN communication unit 53 of the monitoring device 5 monitors the transmission of a message to the CAN bus, and notifies the processing unit 51 when a message transmission is detected. Based on the notification from the CAN communication unit 53, the transmission permission / inhibition determination unit 63 of the processing unit 51 acquires the CAN-ID of the transmitted message and information regarding the start time or end time of message transmission. Further, the transmission permission / inhibition determination unit 63 acquires the permission period determined by the permission period determination unit 62 for the acquired CAN-ID. The transmission permission / inhibition determination unit 63 determines whether or not the message for which transmission has been detected is transmitted within the permission period.
- the condition for judging whether or not the message has been transmitted within the permission period is that the message transmission has started within the permission period, or that the message transmission has been completed within the permission period. There are two possible conditions. Any of the conditions can be adopted, and the value of the period B may be appropriately set according to which condition is adopted. In the present embodiment, on the condition that the message transmission is completed within the permission period, the transmission permission / inhibition determination unit 63 determines whether the message has been transmitted within the permission period.
- the transmission permission / inhibition determination unit 63 determines that the message is an unauthorized message and determines that transmission of the message is not permitted.
- the discard processing unit 64 of the monitoring device 5 performs processing for causing the ECU 3 connected to the CAN bus to discard this message. Details of the message discarding process will be described later.
- the transmission permission / inhibition determination unit 63 performs another condition determination when the message is transmitted within the permission period.
- the transmission permission / inhibition determination unit 63 performs condition determination regarding arbitration processing and condition determination regarding a message non-transmission period.
- FIG. 7 to 9 are schematic diagrams for explaining the condition determination regarding the arbitration process by the transmission permission / inhibition determination unit 63.
- FIG. 7 As described above, in a CAN communication system, arbitration processing is performed when a plurality of message transmissions collide, and there is a possibility that a delay occurs in the transmission of a low priority message.
- the CAN-ID of the message to be determined is 7, and three messages with higher priority than this message (messages with CAN-IDs 3, 5, and 2 respectively) were transmitted earlier by the arbitration process. The state is illustrated.
- the transmission permission / inhibition determination unit 63 determines whether another message transmission is performed before the transmission of the determination target message in the permission period of the determination target message. When other message transmission is performed, the transmission permission / inhibition determination unit 63 checks the CAN-ID of one or more other transmitted messages and compares it with the CAN-ID of the determination target message. The CAN-ID attached to the message in the CAN protocol indicates the priority. The smaller the value, the higher the priority. The transmission permission / inhibition determination unit 63 determines that the determination target message is genuine only when either of the following conditions 1 or 2 is satisfied for all other previously transmitted messages. Condition 1: When the CAN-ID of another message is smaller than the CAN-ID of the message to be determined, that is, when all the previous messages have high priority. Condition 2: The other message is lower than the message to be determined. If it is a priority but a low-priority message has been sent because transmission started before the permitted period of the message to be judged
- the transmission permission determination unit 63 determines that the determination target message is an unauthorized message.
- the CAN-ID of the message to be determined is 7, and the state in which the messages with CAN-IDs 3, 5, and 9 are transmitted before this message is transmitted is shown.
- a message with a CAN-ID of 9 has a lower priority than a determination target message with a CAN-ID of 7.
- the transmission target determination unit 63 determines that the determination target message is an invalid message and transmission is not permitted, a message discarding process by the discarding processing unit 64 is performed.
- Condition 2 is an exception to condition 1. That is, according to the condition 1, it is necessary that other messages before the determination target message have higher priority than the determination target message. However, among the one or more other messages sent within the permission period of the message, the first sent message is the message that has already been sent at the start of the permission period. The condition 2 is that the message may have a lower priority than the above message.
- FIG. 9 shows a state in which a message with CAN-ID 10 is transmitted before the start of the permission period in addition to the message shown in FIG. A message with a CAN-ID of 10 has a lower priority than a determination target message with a CAN-ID of 7. However, since the low priority message is a message that has started transmission before the start of the permission period of the determination target message, the transmission permission / inhibition determination unit 63 permits transmission of the determination target message.
- FIG. 10 is a schematic diagram for explaining the condition determination regarding the message non-transmission period by the transmission permission / inhibition determination unit 63.
- the transmission permission / inhibition determination unit 63 determines whether there is a message non-transmission period in which no message is transmitted on the CAN bus between the scheduled transmission time t1 and the transmission of the determination target message in the determination target message permission period. Find out.
- the transmission permission / inhibition determination unit 63 determines whether or not the message non-transmission period exceeds a predetermined length.
- the transmission permission / inhibition determination unit 63 individually compares each message non-transmission period with a predetermined length.
- the predetermined length for example, a period required to transmit about 3 to 10 bits of a message can be set. This is based on a period of 3 bits of IFS (Inter Frame Space) in message transmission of the CAN protocol, or 10 bits obtained by adding 7 bits of EOF (End Of Frame) to IFS.
- IFS Inter Frame Space
- EOF End Of Frame
- the transmission permission / inhibition determination unit 63 determines that the determination target message is an invalid message and transmission is not permitted. If the transmission target determination unit 63 determines that the determination target message is an invalid message and transmission is not permitted, a message discarding process by the discarding processing unit 64 is performed.
- the transmission propriety determination unit 63 determines that the determination target message is valid It is determined that the message is correct, and transmission is permitted.
- the transmission permission / inhibition determination unit 63 detects the transmission of the message having the CAN-ID to be determined within the permission period, whether or not a delay other than the delay due to the valid arbitration processing has occurred in the transmission of this message. Determine whether. That is, the transmission permission / inhibition determination unit 63 indicates that the priority of messages transmitted prior to the determination target message within the permission period is high (except for messages that have been transmitted before the permission period), and the scheduled transmission time
- the condition for permitting the transmission of the message to be determined is that no message non-transmission period exceeding a predetermined length exists between the transmission of the message to be determined and the determination target message.
- the transmission permission / inhibition determination unit 63 permits transmission of a determination target message when both conditions are satisfied, and does not permit determination target message transmission when at least one of the conditions is not satisfied.
- the monitoring device 5 stores the history of messages transmitted on the CAN bus in the storage unit 52 in order to perform the condition determination by the transmission permission determination unit 63.
- the history to be stored includes the CAN-ID of the transmitted message, information on the transmission start time or the transmission end time, and the like.
- the monitoring of message transmission by the monitoring device 5 is performed for each CAN-ID. That is, the monitoring device 5 determines a permission period for each CAN-ID, and determines whether or not a message can be transmitted for each CAN-ID. For example, in FIG. 7, an example in which the monitoring device 5 performs the determination for a message with a CAN-ID of 7 has been described. At this time, the monitoring device 5 also performs a message with a CAN-ID of 3, 5, and 2, respectively. Individual transmission permission / inhibition is determined.
- FIG. 11 and FIG. 12 are flowcharts showing a procedure of message transmission permission / inhibition determination processing performed by the monitoring device 5.
- the variable n used in this flowchart can be realized by using a storage area such as a register or a memory included in the processing unit 51 of the monitoring device 5, for example.
- the processing unit 51 of the monitoring device 5 performs a process of determining the reference time t0 by the reference time determination unit 61 (step S1).
- the processing unit 51 reads the cycle information 52b stored in the storage unit 52 (Step S2), and acquires the transmission cycle T of the determination target message.
- the processing unit 51 initializes the value of the variable n to 1 (step S3).
- the permission period determination unit 62 of the processing unit 51 determines the permission period based on the reference time t0 determined in step S1, the cycle T acquired in step S2, predetermined constants A and B, and the variable n. Determine (step S4).
- the permission period can be determined as a period from (t0 + nT ⁇ A) to (t0 + nT + B).
- the transmission permission determination unit 63 of the processing unit 51 determines whether or not the permission period determined in step S4 has ended (step S5). When the permission period has not expired (S5: NO), the transmission permission / inhibition determination unit 63 checks whether or not the CAN communication unit 53 has detected message reception on the CAN bus (step S7). When the message reception is not detected (S7: NO), the transmission permission / inhibition determination unit 63 returns the process to step S5. When message reception is detected (S7: YES), the transmission permission / inhibition determination unit 63 determines whether or not this message is a determination target message by examining the CAN-ID of the detected message (step S8). ).
- the transmission permission / inhibition determination unit 63 When the message is not a determination target message (S8: NO), the transmission permission / inhibition determination unit 63 records information (CAN-ID, transmission start time, end time, etc.) related to the message as a history (step S9), and step S5. Return processing to. When it is a message to be determined (S8: YES), the transmission permission / inhibition determination unit 63 determines whether or not this message has been transmitted within the permission period (step S10). If not transmitted within the permission period (S10: NO), the processing unit 10 performs a message discarding process by the discarding processing unit 64 (step S11), and returns the process to step S5.
- the transmission permission / inhibition determination unit 63 determines whether or not this message has been transmitted within the permission period (step S10). If not transmitted within the permission period (S10: NO), the processing unit 10 performs a message discarding process by the discarding processing unit 64 (step S11), and returns the process to step S5.
- the transmission availability determination unit 63 determines whether or not there is a delay of this message with respect to the scheduled transmission time tn (step S12). If there is no delay (S12: NO), the transmission permission / inhibition determination unit 63 determines that transmission is permitted because the message is valid, and returns the process to step S5 without performing the message discarding process. When there is a message delay with respect to the scheduled transmission time tn (S12: YES), the transmission permission / inhibition determining unit 63 acquires the history regarding the message transmission recorded in step S9 (step 13).
- the transmission availability determination unit 63 determines whether a message having a lower priority than the determination target message has been transmitted between the scheduled transmission time tn and the determination target message transmission (Ste S14).
- the transmission permission determination unit 63 determines whether or not the low-priority message has been transmitted before the determination target message permission period. Is further determined (step S15).
- the transmission permission / inhibition determining unit 63 When the low-priority message is not transmitted (S14: NO), or when the low-priority message is started before the permission period (S15: YES), the transmission permission / inhibition determining unit 63 Then, it is determined whether there is a non-transmission period of a message exceeding a predetermined length between the scheduled transmission time tn and the determination target message transmission (step S16). If there is no message non-transmission period (S16: NO), the transmission permission determination unit 63 determines that transmission is permitted because the message is valid, and returns the process to step S5 without performing the message discarding process.
- the transmission availability determination unit 63 Since the message is not valid, it is determined that transmission is not permitted, the message discard process is performed by the discard processing unit 64 (step S17), and the process returns to step S5.
- step S5 When it determines with the permission period having been complete
- a message transmitted / received in the communication system according to the present embodiment conforms to the CAN protocol, and includes a CAN header, a data field, a CRC (Cyclic Redundancy Check) field, an ACK field, an EOF (End Of Frame), and the like. It is configured to include.
- the CAN header includes an SOF (Start Of Frame), an arbitration field, a control field, and the like in the conventional CAN protocol, and the above-mentioned CAN-ID is set in the arbitration field.
- the data field stores a main body of information to be exchanged between the ECUs 3 such as a control instruction to the ECU 3 or a sensor detection result. Since the CRC field, ACK field, and EOF are the same as those used in the conventional CAN protocol, detailed description thereof is omitted.
- the CRC field stores information for error detection.
- the ACK field is a field for a reception response by the ECU 3 that receives this frame.
- the EOF is a specific bit string indicating the end of the field.
- the discard processing unit 64 of the monitoring device 5 transmits an error frame to the CAN bus during the EOF output period of this message for the message that the transmission permission determination unit 63 determines not to permit transmission. With this error frame, all ECUs 3 connected to the CAN bus can discard the illegal message being received.
- the transmission permission / inhibition determination unit 63 of the monitoring device 5 needs to finish the determination before the EOF of the message is output to the CAN bus.
- the transmission permission / inhibition determination unit 63 starts the above-described determination processing when the CAN header output of the message on the CAN bus is completed, for example, and ends the determination before outputting the EOF. Since the message length of the CAN protocol message is specified, the transmission permission / inhibition determination unit 63 can calculate the transmission end time even before the message transmission ends.
- the monitoring device 5 stores the CAN-ID determined by the transmission permission / inhibition determination unit 63 as an invalid message, and when a message with the same CAN-ID is output to the CAN bus thereafter.
- the discard processing unit 64 may discard the message without performing the determination by the transmission permission / inhibition determining unit 63.
- the message discarding process by the monitoring device 5 is not limited to the above-described method, and may be performed by various other methods.
- the monitoring device 5 also transmits a warning message to the ECU 3, a notification to the user of the vehicle 1, information transmission to an external server device, or a communication system or It may be configured to perform processing other than discarding such as shutdown of the corresponding communication network.
- FIG. 13 is a schematic diagram for explaining a reference time point determination process performed between the ECU 3 and the monitoring device 5.
- the monitoring device 5 of the communication system according to the present embodiment starts the reference time determination process by the reference time determination unit 61 of the processing unit 51 after being activated by turning on the power.
- the reference time determination unit 61 of the monitoring device 5 first generates information used for hash value calculation.
- the reference time point determination unit 61 generates a random seed and region designation information.
- the reference time point determination unit 61 uses, as a random seed, data having a predetermined bit length obtained by generating a random number using a predetermined algorithm.
- the area designation information is information that designates an area of the ROM 32 that is a target of hash value calculation, and is information such as a start address and an end address, or a start address and a data size.
- the reference time point determination unit 61 can determine a start address based on, for example, a random number, and add a predetermined number to the start address as an end address.
- the reference time point determination unit 61 of the monitoring device 5 transmits the generated random seed and region designation information to the ECU 3 together with a hash value calculation request. Further, the reference time point determination unit 61 reads the storage content of the ECU 3 to be processed from the copy data 52a of the storage unit 52, and calculates a hash value using the read storage content and the generated random seed and region designation information. . The reference time point determination unit 61 extracts the location specified by the area specification information from the copied storage content, and inputs the extracted storage content and random seed to a predetermined hash function, thereby obtaining the hash value. calculate. In the present embodiment, it is assumed that the reference time point determination unit 61 calculates a 160-bit hash value using the SHA-1 hash function.
- the ECU 3 that has received the random seed and region designation information from the monitoring device 5 uses the stored contents of its own ROM 32 and the received random seed and region designation information to perform a hash in the hash value calculation unit 42 of the processing unit 31. Calculate the value.
- the hash value calculation unit 42 calculates a hash value by extracting a part specified by the area specifying information from the ROM 32 and inputting the extracted storage content and a random seed to a predetermined hash function. Note that the hash function used by the monitoring device 5 and the hash function used by the ECU 3 are the same, and the content stored in the copy data 52a by the monitoring device 5 and the content stored in the ROM 32 by the ECU 3 are the same. Therefore, the monitoring device 5 and the ECU 3 should calculate the same hash value. If the two hash values are different from each other, there is a possibility that the stored content of the ROM 32 of the ECU 3 has been falsified.
- the monitoring device 5 and the ECU 3 use an existing hash function such as MD (MessageMDDigest) 4, MD5, SHA-1, SHA-256, SHA-384, SHA-512, EIPEMD-160, or SHA-3. It can be configured to calculate a hash value. These are so-called one-way hash functions, and are functions that output one hash value for input information. Information input to the hash function is a part or all of the program 32a or data 32b stored in the ROM 32 of the ECU 3 in the present embodiment.
- the hash function simply treats the input as binary information, A hash value can be calculated.
- the monitoring device 5 and the ECU 3 store a predetermined hash function, and calculate a hash value using this hash function.
- the calculation method in the case where the monitoring device 5 and the ECU 3 calculate the hash value using the hash function of SHA-1 will be described. Note that the detailed processing of the hash function of SHA-1 and the case where the monitoring device 5 and the ECU 3 use other hash functions are omitted because they are existing techniques.
- the monitoring device 5 and the ECU 3 first perform a padding process.
- the padding process the monitoring device 5 and the ECU 3 adjust the size of information to be processed to be an integral multiple of a predetermined value (512 bits) by adding extra data after the input information.
- the monitoring device 5 and the ECU 3 divide the padded information into 512-bit blocks, and perform a first process of calculating 80 values for each block.
- the monitoring device 5 and the ECU 3 perform an operation using the value calculated in the first process with respect to the initial value of the predetermined size (160 bits), and use the 160-bit value after the operation as the hash value.
- the monitoring device 5 and the ECU 3 perform an 80-step operation on the initial value of 160 bits using 80 values calculated for one block.
- block information can be mixed with the 160-bit initial value, and a 160-bit value is obtained as an output.
- the monitoring device 5 and the ECU 3 use the obtained 160-bit value as an initial value, and similarly perform 80-step calculations using the 80 values calculated for the next block.
- the monitoring device 5 and the ECU 3 perform the same 80-step process for all the blocks, and use the finally obtained 160-bit value as the hash value.
- the monitoring device 5 and the ECU 3 need to calculate a hash value using a random seed generated by the monitoring device 5.
- the monitoring device 5 and the ECU 3 can use a random seed for the data added to the input information in the padding process.
- the monitoring device 5 and the ECU 3 can use a random seed for the initial value of 160 bits in the second process.
- a random seed is used as the initial value of the second process.
- the method of using random seeds by the monitoring device 5 and the ECU 3 is not limited to the above.
- the monitoring device 5 and the ECU 3 can use, as input information to the hash function, a logical operation value (exclusive OR or the like) between the storage content of the ROM 32 that is the target of hash value calculation and the random seed.
- the monitoring device 5 and the ECU 3 can use, as input information to the hash function, a random seed added to a predetermined position such as a head portion or a tail portion of the stored contents of the ROM 32 that is a target of hash value calculation.
- the reference time point determination unit 61 of the monitoring device 5 performs a process of extracting a part of the calculated hash value after the transmission of the random seed and the region designation information to the ECU 3 and the calculation of the hash value.
- the reference time point determination unit 61 extracts a 64-bit value from the calculated 160-bit hash value and uses it as confirmation information.
- the reference time point determination unit 61 transmits a hash confirmation request including the extracted confirmation information to the ECU 3 to be processed.
- the processing unit 31 of the ECU 3 compares the confirmation information acquired from the monitoring device 5 with the hash value calculated by the hash value calculation unit 42 itself. The processing unit 31 determines whether the hash value calculated by the hash value calculation unit 42 includes a part of the hash value acquired as confirmation information from the monitoring device 5. When it is determined that the hash value of the confirmation information is not included in its own hash value, the hash value calculated by the ECU 3 and the hash value calculated by the monitoring device 5 are not considered to match, so the processing unit 31 interrupts the process. Then, an error notification or the like is given to the monitoring device 5.
- the processing unit 31 Processing for transmitting a response (hash confirmation response) to the hash confirmation request to 5 is performed.
- the processing unit 31 extracts 64-bit information following the confirmation information from the monitoring device 5 as response information in the 160-bit hash value calculated by the hash value calculation unit 42.
- the processing unit 31 includes the extracted 64-bit response information in the hash confirmation response and transmits it to the monitoring device 5.
- the method for extracting the confirmation information and the response information from the hash value is not limited to this. For example, part of the confirmation information and the response information may overlap.
- the reference time point determination unit 61 of the monitoring device 5 that has received the hash confirmation response from the ECU 3 acquires response information included in the received hash confirmation response.
- the reference time point determination unit 61 compares the response information acquired from the ECU 3 with the hash value calculated by itself.
- the reference time point determination unit 61 determines whether or not a part of the hash value acquired as the response information from the ECU 3 is included in the part obtained by removing the confirmation information from the hash value calculated by itself. When it is determined that the hash value of the response information is not included in its own hash value, it is considered that the hash value calculated by the monitoring device 5 and the hash value calculated by the ECU 3 do not match. Is interrupted, and an error notification or the like is made to the ECU 3.
- the reference time point determination unit 61 regards the hash value calculated by the monitoring device 5 and the hash value calculated by the ECU 3 as the same value. At this time, the reference time point determination unit 61 may notify the ECU 3 that the hash value has been successfully determined. The reference time point determination unit 61 determines the time point when the reception of the valid hash confirmation response from the ECU 3 is completed as the reference time point t0. After determining the reference time t0, the monitoring device 5 determines the scheduled transmission time and the permission period as described above and starts monitoring message transmission.
- the processing unit 31 of the ECU 3 sets the time point when the transmission of the hash confirmation response to the monitoring device 5 is completed as the reference time point t0.
- the message processing unit 41 of the ECU 3 transmits a message at a cycle T with respect to the reference time t0.
- FIG. 14 is a schematic diagram for explaining reference time point determination processing with the plurality of ECUs 3 by the monitoring device 5.
- the monitoring device 5 performs reference time determination processing with three ECUs 3, but the monitoring device 5 performs reference time determination processing with two or less ECUs 3 or four or more ECUs 3. Is the same.
- the monitoring device 5 sequentially transmits a hash value calculation request including a random seed and region designation information to each ECU 3. At this time, a common value may be used for the random seed and region designation information included in each hash value calculation request, or a different value may be set for each ECU 3.
- Each ECU 3 that has received a hash value calculation request from the monitoring device 5 calculates a hash value based on the stored contents of its own ROM 32. Further, the monitoring device 5 reads the stored contents of each ECU 3 from the copy data 52 a of the storage unit 52 and calculates a hash value for each ECU 3.
- the monitoring device 5 that has finished calculating the hash value of each ECU 3 transmits a hash value confirmation request to any one of the ECUs 3 and receives a hash value confirmation response from the ECU 3.
- the monitoring device 5 determines whether or not the hash value included in the received hash value confirmation response is correct. If the hash value is correct, the monitoring device 5 determines that the reception of the hash value confirmation response is completed with this ECU 3.
- the reference time t0 is determined.
- the monitoring device 5 transmits a hash value confirmation request, receives a hash value confirmation response, and determines a reference time for another ECU 3. In this way, the monitoring device 5 sequentially repeats transmission of the hash value confirmation request, reception of the hash value confirmation response, and determination of the reference time point for each ECU 3 included in the communication system. After the reference time points are determined for all the ECUs 3, the monitoring device 5 starts monitoring message transmission, and each ECU 3 starts message transmission / reception. Note that the monitoring by the monitoring device 5 and the message transmission by the ECU 3 may be started sequentially from the reference time determined.
- FIG. 15 is a flowchart showing a procedure of reference time determination processing by the monitoring device 5.
- the reference time point determination unit 61 of the monitoring device 5 generates a random seed used for hash value calculation and area designation information that designates a storage area of the ROM 32 of the ECU 3 as a hash value calculation target (step S21).
- the reference time point determination unit 61 transmits a hash value calculation request including the generated random seed and region designation information to the ECU 3 to be processed by the CAN communication unit 53 (step S22).
- the reference time point determination unit 61 acquires the copy data 52a stored in the ECU 3 to be processed from the storage unit 52, and determines the predetermined time based on the acquired copy data 52a and the random seed and region designation information generated in step S21. A hash value is calculated using the hash function (step S23). The reference time point determination unit 61 extracts a part of the hash value calculated in step S23 as confirmation information (step S24). The reference time point determination unit 61 transmits a hash value confirmation request including the extracted confirmation information to the ECU 3 to be processed by the CAN communication unit 53 (step S25).
- the reference time determination unit 61 determines whether or not the CAN communication unit 53 has received a hash value confirmation response transmitted by the ECU 3 in response to the hash value confirmation request (step S26). When the hash value confirmation response has not been received (S26: NO), the reference time point determination unit 61 determines whether an error notification has been received from the ECU 3 to be processed (step S27). When the error notification is not received (S27: NO), the reference time point determination unit 61 returns the process to step S26 and waits until a hash value confirmation response or an error notification is received from the ECU 3.
- the reference time point determination unit 61 When the hash value confirmation response is received from the ECU 3 to be processed (S26: YES), the reference time point determination unit 61 includes the response information included in the received hash value confirmation response in the hash value calculated in step S23. Whether or not the response information is successful is determined according to whether or not (step S28). When the error notification is received from the ECU 3 (S27: YES), or when the response information received from the ECU 3 is not correct (S28: NO), the reference time point determination unit 61 modifies the stored contents of the ROM 32 of the target ECU 3. For example, an appropriate error process such as stopping the operation of the ECU 3 is performed (step S29), and the process is terminated.
- the reference time point determination unit 61 determines the time point when the reception of the hash value confirmation response from the ECU 3 is completed as the reference time point (step S30), and ends the process.
- FIG. 16 is a flowchart showing a procedure of processing performed by the ECU 3 in response to a hash value calculation request from the monitoring device 5.
- the processing unit 31 of the ECU 3 determines whether or not the hash value calculation request has been received from the monitoring device 5 by the CAN communication unit 34 (step S31). When the hash value calculation request is not received (S31: NO), the processing unit 31 waits until the hash value calculation request is received. When the hash value calculation request is received (S31: YES), the processing unit 31 acquires the random seed and area designation information included in the received hash value calculation request (step S32).
- the hash value calculation unit 42 of the processing unit 31 calculates a hash value using a predetermined hash function based on the storage content of the ROM 32 and the random seed and area designation information acquired in step S32 (step S33). .
- the processing unit 31 stores the calculated hash value in the storage unit 33 (step S34) and ends the process.
- FIG. 17 is a flowchart showing a procedure of processing performed by the ECU 3 in response to a hash value confirmation request from the monitoring device 5.
- the processing unit 31 of the ECU 3 determines whether or not the hash value confirmation request has been received from the monitoring device 5 by the CAN communication unit 34 (step S41). When the hash value confirmation request has not been received (S41: NO), the processing unit 31 waits until the hash value confirmation request is received. When the hash value confirmation request is received (S41: YES), the processing unit 31 reads the hash value stored in the storage unit 33 (step S42).
- the processing unit 31 determines the success or failure of the confirmation information according to whether or not the confirmation information included in the hash value confirmation request received in step S41 is included in the hash value read in step S42 ( Step S43). If the confirmation information is not correct (S43: NO), the processing unit 31 transmits an error notification to the monitoring device 5 (step S44) and ends the process.
- the processing unit 31 extracts, as response information, a predetermined length portion following the confirmation information from the hash value read in step S42 (step S45). .
- the processing unit 31 transmits a hash value confirmation response including the extracted response information to the monitoring device 5 through the CAN communication unit 34 (step S46).
- the processing unit 31 determines the time point when the transmission of the hash value confirmation response is completed as the reference time point (step S47), and ends the process.
- the reference time determination process is performed when the monitoring device 5 and the ECU 3 are activated.
- the timing of the process is not limited thereto. Further, when there is a deviation in the timing at which the ECU 3 transmits a message for some reason or when the message transmission cycle is changed, a process for re-determining the reference time point between the monitoring device 5 and the ECU 3 may be performed. .
- the same process as the first reference time point determination process as described above may be performed. That is, the monitoring device 5 may send a hash value calculation request and a hash value confirmation request, and the ECU 3 may send a hash value confirmation response and redetermine the reference time point accordingly.
- the ECU 3 may be configured to transmit a request for performing a process for re-determining the reference time point to the monitoring device 5, and the monitoring device 5 may start the reference time point determination process accordingly.
- the hash value at the time of performing the reference time determination process may be stored, and the ECU 3 may transmit a reference time redetermination request including the hash value to the monitoring device 5.
- the monitoring device 5 that has received this redetermination request sets the time when the reception of the redetermination request is completed as a new reference time when the hash value included in the redetermination request is correct.
- the ECU 3 may set the time point when the transmission of the redetermination request is completed as a new reference time point.
- the communication system is a monitoring system that detects unauthorized message transmission with respect to a communication system in which a plurality of ECUs 3 are connected to a CAN bus and each ECU 3 periodically transmits messages.
- the apparatus 5 is provided.
- the monitoring device 5 detects the message transmitted by the ECU 3 by monitoring the CAN bus.
- the monitoring device 5 can determine whether or not this message is invalid by determining whether or not the detected message is transmitted within the permission period. It can be determined whether or not transmission is permitted.
- Such a monitoring apparatus 5 is configured to determine a permission period for subsequent message transmission based on the reference time t0 determined in the first stage, that is, to determine the permission period on an absolute basis. It is a configuration. On the other hand, for example, each time a message is received, a configuration is adopted in which the permission period is determined with the time when the period T is added to the reception time of the message as the scheduled transmission time, that is, the permission period is determined on a relative basis. Can be considered. However, in the CAN communication protocol, when a message transmission collision occurs, arbitration processing is performed, and transmission of a low-priority message is delayed. In the configuration in which relative determination is performed, when a delay occurs in message transmission, the permission period for determination varies.
- the monitoring device 5 can avoid the occurrence of these problems by determining the permission period on an absolute basis.
- the monitoring device 5 individually determines the reference time point t0 for each ECU 3 included in the communication system.
- the monitoring device 5 determines the scheduled transmission time tn and the permission period for each ECU 3 with respect to each determined reference time t0. Thereby, even if ECU3 from which the transmission cycle T of a message, transmission timing, etc. are contained in the communication system is contained, the monitoring apparatus 5 can determine the propriety of message transmission for every ECU3.
- the ECU 3 can transmit a plurality of types of messages having different transmission cycles, and the monitoring device 5 determines a permission period for each CAN-ID of the message. Thereby, even if it is a case where one ECU3 transmits the message from which a transmission period differs, the monitoring apparatus 5 can determine the propriety of transmission for every kind of message.
- the reference time point t0 is determined for each ECU 3.
- the present invention is not limited to this, and the reference time point t0 may be determined for each CAN-ID.
- the monitoring device 5 may perform reference time determination processing a plurality of times (that is, the number of CAN-IDs assigned to the ECU 3) for one ECU 3.
- the monitoring device 5 checks whether another message has been transmitted between the scheduled transmission time tn and the completion of the transmission of the message to be determined. If another message has been transmitted, the monitoring device 5 compares the priority of the determination target message with the priority of the other message. If the priority of the other message is higher than the priority of the determination target message, it is considered that the determination target message has been delayed in transmission due to the arbitration process, and thus the monitoring device 5 permits transmission of the determination target message. To do.
- the monitoring device 5 does not permit transmission of the determination target message because it is considered that the message is not a thing. Thereby, even in a communication system in which a delay occurs in message transmission due to arbitration processing, the monitoring device 5 can determine whether message transmission is possible.
- the monitoring device 5 determines whether or not there is a message non-transmission period exceeding a predetermined length between the scheduled transmission time tn of the determination target message and the completion of transmission of this message. When there is a message non-transmission period, it is considered that the delay of the determination target message is not caused by a valid arbitration process, and therefore the monitoring device 5 does not permit transmission of the determination target message.
- a predetermined procedure is performed between the monitoring device 5 and the ECU 3 in order to determine the reference time point t0.
- the monitoring device 5 transmits a hash value calculation request to the ECU 3.
- the monitoring device 5 gives the ECU 3 a random seed and region designation information necessary for hash value calculation.
- the ECU 3 that has received the hash value calculation request from the monitoring device 5 determines the hash value using a predetermined hash function based on the random seed and area designation information included in the hash value calculation request and the data stored in the ROM 32. Perform the calculation.
- the ECU 3 transmits a hash value confirmation response including the calculated hash value to the monitoring device 5.
- the monitoring device 5 that has received the hash value confirmation response from the ECU 3 determines whether or not the hash value included in the hash value confirmation response is correct.
- the monitoring device 5 determines the reference time t0 based on the time when reception of the hash value confirmation response is completed. For example, the monitoring device 5 sets the reception completion time such as the hash value confirmation as the reference time t0.
- the reference time point t0 is not limited to this.
- the transmission start time point of the hash value confirmation response may be set as the reference time point t0. It is good also as time t0.
- the ECU 3 determines the reference time t0 based on the transmission completion time of the hash confirmation response including the correct hash value, and performs message transmission in the cycle T based on the determined time. Since the reference time point t0 can be determined based on highly reliable information transmission / reception based on the hash value, the monitoring device 5 can perform highly reliable unauthorized message detection processing.
- the monitoring device 5 determines that transmission of an unauthorized message is not permitted, the monitoring device 5 performs processing for causing the ECU 3 that receives this message to discard the message. For example, the monitoring device 5 can cause the ECU 3 to discard this message by transmitting an error frame to the CAN bus during the EOF output period of an illegal message. As a result, it is possible to prevent the ECU 3 from receiving an unauthorized message and performing processing corresponding to this message in the ECU 3.
- the processing unit 51 (so-called CPU or the like) of the monitoring device 5 performs a reference time determination process, a permission period determination process, a transmission permission determination process, an unauthorized message discard process, and the like.
- the present invention is not limited to this, and the CAN communication unit 53 (a so-called CAN controller or the like) may perform these processes.
- the reference point determination process such as the hash value calculation process of the ECU 3 may be performed not by the processing unit 31 but by the CAN communication unit 34.
- the reference time t0 is determined by exchanging information using the hash value between the monitoring device 5 and the ECU 3, the determination of the reference time t0 may be performed by a method that does not use the hash value. For example, information encrypted using a public key or a secret key may be transmitted / received between the monitoring device 5 and the ECU 3, and the reference time t0 may be determined based on the transmission / reception result.
- the monitoring device 5 and the ECU 3 perform highly reliable communication, and the reference time t0 may be determined based on the communication result.
- the monitoring device 5 is configured to store the copy data 52a obtained by copying the storage contents of the ROM 32 of the ECU 3 in the storage unit 52
- the present invention is not limited to this.
- the copy data 52a may be stored in another server device or the like, and the monitoring device 5 may acquire the copy data 52a from the server device as necessary.
- the server device may be provided with a hash value calculation function. It is good also as a structure which acquires a required hash value from a server apparatus.
- the communication system mounted on the vehicle 1 has been described as an example.
- the communication system is not limited to the one mounted on the vehicle 1, and is mounted on a moving body such as an airplane or a ship. For example, it may be installed in a factory, office, school or the like instead of a mobile object.
- the monitoring device 5 in the above-described embodiment determines whether the message non-transmission period does not exist between the scheduled transmission time and the message transmission or when the message non-transmission period exists but is shorter than the predetermined length.
- the transmission permission / rejection determination unit 63 determines that the message is a legitimate message and permits transmission.
- the monitoring device 5 according to the modification has a configuration in which the determination condition of the transmission permission / inhibition determination unit 63 is added to the configuration of the monitoring device 5 described above.
- the transmission permission / inhibition determination unit 63 of the monitoring device 5 according to the modification determines that two or more target messages have arrived within the transmission permission period, the subsequent message transmission is not permitted for all of the plurality of messages. .
- the monitoring device 5 according to the modified example can prohibit transmission of a message that may be illegal.
- the monitoring device 5 may be configured to count the number of times two or more target messages have arrived within the transmission permission period, for example, and prohibit message transmission when the number exceeds a predetermined number. .
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Small-Scale Networks (AREA)
Abstract
Description
また通信制御装置は、共通の通信線を監視することによって、通信装置が送信したメッセージを検出する。通信制御装置は、検出されたメッセージが上記の許可期間内に送信されたものであるか否かを判定することにより、このメッセージが不正なものであるか否かを判定することができ、このメッセージの送信を許可するか否かを判定することができる。
このような調停処理が行われる通信システムでは、通信装置が周期的に送信しようとしたメッセージが他のメッセージと衝突して遅延する可能性がある。そこで通信制御装置は、判定対象のメッセージについて送信予定時点からこのメッセージの送信完了までの間に、他のメッセージが送信されたか否かを調べる。他のメッセージが送信されていた場合、通信制御装置は、判定対象のメッセージの優先度と他のメッセージの優先度とを比較する。
他のメッセージの優先度が判定対象のメッセージの優先度より高い場合、判定対象のメッセージは正当な調停処理によって送信に遅延が発生したと考えられるため、通信制御装置は、判定対象のメッセージの送信を許可する。これに対して、他のメッセージの優先度が判定対象のメッセージの優先度より低い場合、判定対象のメッセージの遅れは正当な調停処理によるものではないと考えられるため、通信制御装置は、判定対象のメッセージの送信を許可しない。これにより、調停処理によってメッセージ送信に遅延が発生する通信システムであっても、通信制御装置は、メッセージ送信の可否を判定することができる。
同様に通信装置は、正しいハッシュ値の送信を完了した時点に基づいて基準時点を決定し、決定した時点を基準として周期的なメッセージ送信を行う。
ハッシュ値に基づく信頼性の高い通信結果に基づいて基準時点を決定することができるため、通信制御装置は、信頼性の高い不正メッセージ検出を行うことができる。
図1は、本実施の形態に係る通信システムの構成を示す模式図である。本実施の形態に係る通信システムは、車両1に搭載された複数のECU3と、1つの監視装置5とを備えて構成されている。ECU3及び監視装置5は、車両1に敷設された共通の通信線を介して接続され、相互にメッセージを送受信することができる。本実施の形態においては、この通信線をCANバスとし、ECU3及び監視装置5は、CANプロトコルに従った通信を行う。ECU3は、例えば車両1のエンジンの制御を行うエンジンECU、車体の電装品の制御を行うボディECU、ABS(Antilock Brake System)に関する制御を行うABS-ECU、又は、車両1のエアバッグの制御を行うエアバッグECU等のように、種々の電子制御装置であってよい。監視装置5は、車内ネットワークに対する不正なメッセージ送信を監視する装置である。監視装置5は、監視専用の装置として設けられてもよく、例えばゲートウェイなどの装置に監視の機能を付加した構成であってもよく、また例えばいずれか1つのECU3に監視の機能を付加した構成であってもよい。
本実施の形態に係る通信システムでは、複数のECU3がメッセージの送受信を行うCANバス上に不正なメッセージが送信されたことを検出する処理を監視装置5が行う。例えばCANバスに対して不正な通信装置が不正に接続され、この通信装置が不正なメッセージをCANバス上に送信することが考えられる。また例えば、車両1に搭載されたいずれかのECU3に不正な改造又は改変等がなされ、このECU3が不正なメッセージを送信することが考えられる。これらは不正なメッセージの一例であり、監視装置5が検出する不正なメッセージはこれら以外の要因によるものであってよい。
条件1:他のメッセージのCAN-IDが判定対象のメッセージのCAN-IDより小さい場合、即ち以前のメッセージが全て優先度の高いものである場合
条件2:他のメッセージが判定対象のメッセージより低優先度であるが、判定対象メッセージの許可期間の開始以前に送信開始されて低優先度のメッセージが送信されていた場合
本実施の形態に係る通信システムでは、CANバス上に出力されたメッセージが正当なものではなく、送信を許可しないと判定した場合に、監視装置5は、CANバスに接続されたECU3にこのメッセージを破棄させるための処理を行う。本実施の形態に係る通信システムにて送受信されるメッセージは、CANプロトコルに従ったものであり、CANヘッダ、データフィールド、CRC(Cyclic Redundancy Check)フィールド、ACKフィールド及びEOF(End Of Frame)等を含んで構成されている。CANヘッダは、従来のCANプロトコルにおけるSOF(Start Of Frame)、アービトレーションフィールド及びコントロールフィールド等を含むものであり、アービトレーションフィールドに上述のCAN-IDが設定される。データフィールドは、例えばECU3に対する制御指示又はセンサ検知結果等のように、ECU3間で授受すべき情報の本体が格納される。CRCフィールド、ACKフィールド及びEOFは、従来のCANプロトコルにて用いられるものと同じであるため詳細な説明は省略する。CRCフィールドは、誤り検出を行うための情報を格納する。ACKフィールドは、このフレームを受信するECU3による受信応答のためのフィールドである。EOFは、フィールドの終了を示す特定のビット列である。
本実施の形態に係る通信システムでは、ECU3によるメッセージ送信及び監視装置5によるメッセージ送信の監視を開始する前に、基準時点t0を決定する処理を行う必要がある。図13は、ECU3及び監視装置5の間で行われる基準時点決定処理を説明するための模式図である。本実施の形態に係る通信システムの監視装置5は、電源投入などにより起動した後、処理部51の基準時点決定部61による基準時点決定処理を開始する。
以上の構成の本実施の形態に係る通信システムは、CANバスに複数のECU3が接続され、各ECU3が周期的にメッセージ送信を行う構成の通信システムに対して、不正なメッセージ送信を検出する監視装置5を設けた構成である。監視装置5は、ECU3による周期的なメッセージ送信の基準時点t0を決定し、基準時点t0に対してメッセージの送信周期Tの整数倍の期間を加えた複数の送信予定時点t1=t0+T,t2=t0+2T,…を決定し、各送信予定時点に対してこの時点を含む所定期間t1-A~t1+B,t2-A~t2+B,…をメッセージ送信の許可期間と決定する。
上述の実施の形態における監視装置5は、送信予定時点からメッセージ送信までの間にメッセージ無送信期間が存在しない場合、又は、メッセージ無送信期間が存在しても所定長より短い場合に、判定対象のメッセージが正当なメッセージであると送信可否判定部63が判定し、送信を許可する構成であった。変形例に係る監視装置5は、上述の監視装置5の構成に、送信可否判定部63の判定条件を追加した構成である。
3 ECU(通信装置)
5 監視装置(通信制御装置)
31 処理部(ハッシュ値送信部)
32 ROM
32a プログラム
32b データ
33 RAM
34 CAN通信部(調停手段)
41 メッセージ処理部(メッセージ送信部)
42 ハッシュ値算出部
51 処理部
52 記憶部
52a 複写データ
52b 周期情報
53 CAN通信部(メッセージ検出部)
61 基準時点決定部(ハッシュ値要求部、ハッシュ値受信部、ハッシュ値判定部)
62 許可期間決定部
63 送信可否判定部
64 破棄処理部
Claims (15)
- 周期的にメッセージ送信を行うメッセージ送信部を有する通信装置による通信を制御する通信制御装置であって、
前記メッセージ送信部によるメッセージ送信に係る基準時点を決定する基準時点決定部と、
該基準時点決定部が決定した基準時点に前記メッセージ送信部によるメッセージ送信周期の整数倍の期間を加えた送信予定時点に対し、該送信予定時点を含む所定期間をメッセージ送信の許可期間とする許可期間決定部と、
前記通信装置が送信したメッセージを検出するメッセージ検出部と、
該メッセージ検出部が検出したメッセージが、前記許可期間決定部が決定した許可期間内に送信されたものであるか否かに応じて、前記メッセージの送信可否を判定する送信可否判定部と
を備えることを特徴とする通信制御装置。 - 制御対象の通信装置が複数存在する場合に、
前記基準時点決定部及び前記許可期間決定部は、複数の通信装置それぞれについて前記基準時点及び前記許可期間を決定するようにしてあること
を特徴とする請求項1に記載の通信制御装置。 - 前記通信装置が送信する前記メッセージには、該メッセージの優先度を示す情報を含み、
前記許可期間決定部は、メッセージの優先度毎に前記許可期間を決定するようにしてあること
を特徴とする請求項1又は請求項2に記載の通信制御装置。 - 複数の前記通信装置のメッセージ送信が衝突した場合に、メッセージに対して定められた優先度に応じて送信順序を調停する調停手段を備え、
前記送信可否判定部は、判定対象のメッセージに関する前記送信予定時点から前記判定対象のメッセージの送信が完了するまでの間に送信を完了した他のメッセージの優先度を調べ、前記判定対象のメッセージより優先度が低い他のメッセージが存在する場合に、前記判定対象のメッセージの送信を許可しないと判定するようにしてあること
を特徴とする請求項3に記載の通信制御装置。 - 前記送信可否判定部は、判定対象のメッセージに関する前記送信予定時点から前記判定対象のメッセージの送信が完了するまでの間に、所定長を超えるメッセージ無送信期間が存在する場合に、前記判定対象のメッセージの送信を許可しないと判定するようにしてあること
を特徴とする請求項1乃至請求項4のいずれか1つに記載の通信制御装置。 - 前記通信装置に対してハッシュ値の算出要求を与えるハッシュ値要求部と、
前記算出要求に対する応答として前記通信装置が送信するハッシュ値を受信するハッシュ値受信部と、
該ハッシュ値受信部が受信したハッシュ値の正誤を判定するハッシュ値判定部と
を備え、
前記基準時点決定部は、前記通信装置から正しいハッシュ値の受信を完了した時点に基づいて、前記基準時点を決定するようにしてあること
を特徴とする請求項1乃至請求項5のいずれか1つに記載の通信制御装置。 - 前記送信可否判定部が送信を許可しないと判定したメッセージを、該メッセージを受信する前記通信装置に破棄させる処理を行う破棄処理部を備えること
を特徴とする請求項1乃至請求項6のいずれか1つに記載の通信制御装置。 - 互いにメッセージの送受信を行う複数の通信装置及び該通信装置による通信を制御する通信制御装置を備える通信システムであって、
前記通信装置は、周期的にメッセージ送信を行うメッセージ送信部を有し、
前記通信制御装置は、
前記メッセージ送信部によるメッセージ送信に係る基準時点を決定する基準時点決定部と、
該基準時点決定部が決定した基準時点に前記メッセージ送信部によるメッセージ送信周期の整数倍の期間を加えた送信予定時点に対し、該送信予定時点を含む所定期間をメッセージ送信の許可期間とする許可期間決定部と、
前記通信装置が送信したメッセージを検出するメッセージ検出部と、
該メッセージ検出部が検出したメッセージが、前記許可期間決定部が決定した許可期間内に送信されたものであるか否かに応じて、前記メッセージの送信可否を判定する送信可否判定部と
を有すること
を特徴とする通信システム。 - 前記基準時点決定部及び前記許可期間決定部は、前記複数の通信装置それぞれについて前記基準時点及び前記許可期間を決定するようにしてあること
を特徴とする請求項8に記載の通信システム。 - 前記通信装置が送信する前記メッセージには、該メッセージの優先度を示す情報を含み、
前記許可期間決定部は、メッセージの優先度毎に前記許可期間を決定するようにしてあること
を特徴とする請求項8又は請求項9に記載の通信システム。 - 複数の前記通信装置のメッセージ送信が衝突した場合に、メッセージに対して定められた優先度に応じて送信順序を調停する調停手段を備え、
前記送信可否判定部は、判定対象のメッセージに関する前記送信予定時点から前記判定対象のメッセージの送信が完了するまでの間に送信を完了した他のメッセージの優先度を調べ、前記判定対象のメッセージより優先度が低い他のメッセージが存在する場合に、前記判定対象のメッセージの送信を許可しないと判定するようにしてあること
を特徴とする請求項10に記載の通信システム。 - 前記送信可否判定部は、判定対象のメッセージに関する前記送信予定時点から前記判定対象のメッセージの送信が完了するまでの間に、所定長を超えるメッセージ無送信期間が存在する場合に、前記判定対象のメッセージの送信を許可しないと判定するようにしてあること
を特徴とする請求項8乃至請求項11のいずれか1つに記載の通信システム。 - 前記通信制御装置は、
前記通信装置に対してハッシュ値の算出要求を与えるハッシュ値要求部と、
前記算出要求に対する応答として前記通信装置が送信するハッシュ値を受信するハッシュ値受信部と、
該ハッシュ値受信部が受信したハッシュ値の正誤を判定するハッシュ値判定部と
を有し、
前記通信装置は、
前記通信制御装置からの算出要求に応じてハッシュ値を算出するハッシュ値算出部と、
該ハッシュ値算出部が算出したハッシュ値を前記通信制御装置へ送信するハッシュ値送信部と
を有し、
前記基準時点決定部は、前記通信装置から正しいハッシュ値の受信を完了した時点に基づいて、前記基準時点を決定するようにしてあること
を特徴とする請求項8乃至請求項12のいずれか1つに記載の通信システム。 - 前記メッセージ送信部は、前記ハッシュ値送信部が正しいハッシュ値の送信を完了した時点に基づく基準時点を決定し、決定した時点を基準として周期的にメッセージ送信を行うようにしてあること
を特徴とする請求項13に記載の通信システム。 - 前記通信制御装置は、前記送信可否判定部が送信を許可しないと判定したメッセージを、該メッセージを受信する前記通信装置に破棄させる処理を行う破棄処理部を有すること
を特徴とする請求項8乃至請求項14のいずれか1つに記載の通信システム。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE112015005252.6T DE112015005252T5 (de) | 2014-11-20 | 2015-11-18 | Kommunikationssteuereinrichtung und Kommunikationssystem |
CN201580061067.9A CN107005447B (zh) | 2014-11-20 | 2015-11-18 | 通信控制装置及通信系统 |
JP2016560252A JP6306206B2 (ja) | 2014-11-20 | 2015-11-18 | 通信制御装置及び通信システム |
US15/527,826 US10432421B2 (en) | 2014-11-20 | 2015-11-18 | Communication control device and communication system |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014-235782 | 2014-11-20 | ||
JP2014235782 | 2014-11-20 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2016080422A1 true WO2016080422A1 (ja) | 2016-05-26 |
Family
ID=56013957
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2015/082349 WO2016080422A1 (ja) | 2014-11-20 | 2015-11-18 | 通信制御装置及び通信システム |
Country Status (5)
Country | Link |
---|---|
US (1) | US10432421B2 (ja) |
JP (1) | JP6306206B2 (ja) |
CN (1) | CN107005447B (ja) |
DE (1) | DE112015005252T5 (ja) |
WO (1) | WO2016080422A1 (ja) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018051607A1 (ja) * | 2016-09-15 | 2018-03-22 | 住友電気工業株式会社 | 検知装置、ゲートウェイ装置、検知方法および検知プログラム |
JP2018056980A (ja) * | 2016-09-27 | 2018-04-05 | 富士通株式会社 | 攻撃検知装置、攻撃検知方法、および、攻撃検知プログラム |
JP2018088616A (ja) * | 2016-11-29 | 2018-06-07 | 富士通株式会社 | 攻撃検知装置、攻撃検知方法、および、攻撃検知プログラム |
JP2019068253A (ja) * | 2017-09-29 | 2019-04-25 | 株式会社デンソー | 異常検知装置、異常検知方法、プログラム及び通信システム |
JP2019176473A (ja) * | 2018-03-29 | 2019-10-10 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America | 不正検知方法、不正検知装置及びプログラム |
JP2020530967A (ja) * | 2017-08-14 | 2020-10-29 | アーガス サイバー セキュリティ リミテッド | 自動車用サイバーセキュリティ |
JPWO2021065069A1 (ja) * | 2019-09-30 | 2021-04-08 | ||
US11849324B2 (en) | 2019-09-30 | 2023-12-19 | Autonetworks Technologies, Ltd. | Detection device, vehicle, detection method, and detection program |
WO2024195467A1 (ja) * | 2023-03-20 | 2024-09-26 | 株式会社オートネットワーク技術研究所 | 車載装置、プログラム及び情報処理方法 |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109644153B (zh) * | 2016-04-12 | 2020-10-13 | 伽德诺克斯信息技术有限公司 | 具有被配置为实现安全锁定的相关设备的特别编程的计算系统及其使用方法 |
JP7094670B2 (ja) * | 2017-07-03 | 2022-07-04 | 矢崎総業株式会社 | 設定装置及びコンピュータ |
US10387139B2 (en) | 2017-07-25 | 2019-08-20 | Aurora Labs Ltd. | Opportunistic software updates during select operational modes |
CN109696900A (zh) * | 2017-10-23 | 2019-04-30 | 北京长城华冠汽车科技股份有限公司 | 一种测试汽车控制器局域网络报文发送周期的系统和方法 |
US10009325B1 (en) * | 2017-12-07 | 2018-06-26 | Karamba Security | End-to-end communication security |
CN108833018B (zh) * | 2018-04-09 | 2021-01-22 | 桂林电子科技大学 | 一种组网通信系统及方法 |
US11711384B2 (en) * | 2018-08-27 | 2023-07-25 | Lear Corporation | Method and system for detecting message injection anomalies |
KR20200056192A (ko) * | 2018-11-14 | 2020-05-22 | 현대자동차주식회사 | 데이터 통신 시스템과 데이터 통신 방법, 서버, 차량 |
JP7175858B2 (ja) * | 2019-08-07 | 2022-11-21 | 株式会社日立製作所 | 情報処理装置および正規通信判定方法 |
CN112738151B (zh) * | 2019-09-17 | 2024-05-31 | 三菱重工业株式会社 | 传送装置 |
JP7347141B2 (ja) * | 2019-11-13 | 2023-09-20 | 株式会社オートネットワーク技術研究所 | 車載通信装置及び情報置換方法 |
CN113271612B (zh) * | 2020-02-17 | 2024-04-09 | 华为技术有限公司 | 一种随流信息遥测iFIT检测信息的上报方法及装置 |
US20210312729A1 (en) * | 2020-04-01 | 2021-10-07 | Gm Cruise Holdings Llc | Distributed autonomous vehicle data logger |
US20230072454A1 (en) * | 2021-08-24 | 2023-03-09 | Robert Bosch Gmbh | System and method for generating random numbers within a vehicle controller |
CN113923139B (zh) * | 2021-12-15 | 2022-03-01 | 北京城市轨道交通咨询有限公司 | 一种评估列控数据通信系统可靠性的方法及装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013094072A1 (ja) * | 2011-12-22 | 2013-06-27 | トヨタ自動車 株式会社 | 通信システム及び通信方法 |
JP2014146868A (ja) * | 2013-01-28 | 2014-08-14 | Hitachi Automotive Systems Ltd | ネットワーク装置およびデータ送受信システム |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2355130C2 (ru) * | 2003-03-11 | 2009-05-10 | Конинклейке Филипс Электроникс Н.В. | Способ планирования периодов обслуживания в беспроводной локальной сети (wlan) |
CN100563162C (zh) * | 2003-09-02 | 2009-11-25 | 华为技术有限公司 | 一种实现网络访问控制的方法 |
US7788713B2 (en) * | 2004-06-23 | 2010-08-31 | Intel Corporation | Method, apparatus and system for virtualized peer-to-peer proxy services |
NZ552760A (en) * | 2004-07-06 | 2008-09-26 | Ntt Docomo Inc | Message transmission system and message transmission method |
US7609625B2 (en) * | 2005-07-06 | 2009-10-27 | Fortinet, Inc. | Systems and methods for detecting and preventing flooding attacks in a network environment |
US7949317B2 (en) * | 2008-02-13 | 2011-05-24 | Apple Inc. | Momentary burst protocol for wireless communication |
JP5594255B2 (ja) | 2011-08-10 | 2014-09-24 | トヨタ自動車株式会社 | 車両ネットワークの通信管理装置 |
WO2015106333A1 (en) * | 2014-01-16 | 2015-07-23 | Perry + Currier Inc. | Device, system and method of mobile identity verification |
US9220013B2 (en) * | 2014-02-06 | 2015-12-22 | Verizon Patent And Licensing Inc. | Tune control for shared access system |
-
2015
- 2015-11-18 WO PCT/JP2015/082349 patent/WO2016080422A1/ja active Application Filing
- 2015-11-18 CN CN201580061067.9A patent/CN107005447B/zh not_active Expired - Fee Related
- 2015-11-18 JP JP2016560252A patent/JP6306206B2/ja active Active
- 2015-11-18 DE DE112015005252.6T patent/DE112015005252T5/de not_active Ceased
- 2015-11-18 US US15/527,826 patent/US10432421B2/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013094072A1 (ja) * | 2011-12-22 | 2013-06-27 | トヨタ自動車 株式会社 | 通信システム及び通信方法 |
JP2014146868A (ja) * | 2013-01-28 | 2014-08-14 | Hitachi Automotive Systems Ltd | ネットワーク装置およびデータ送受信システム |
Cited By (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109691029B (zh) * | 2016-09-15 | 2021-10-22 | 住友电气工业株式会社 | 检测装置、网关装置和检测方法 |
JP2018046432A (ja) * | 2016-09-15 | 2018-03-22 | 住友電気工業株式会社 | 検知装置、ゲートウェイ装置、検知方法および検知プログラム |
CN109691029A (zh) * | 2016-09-15 | 2019-04-26 | 住友电气工业株式会社 | 检测装置、网关装置、检测方法、以及检测程序 |
US10880415B2 (en) | 2016-09-15 | 2020-12-29 | Sumitomo Electric Industries, Ltd. | Detecting device, gateway device, and detecting method |
WO2018051607A1 (ja) * | 2016-09-15 | 2018-03-22 | 住友電気工業株式会社 | 検知装置、ゲートウェイ装置、検知方法および検知プログラム |
JP2018056980A (ja) * | 2016-09-27 | 2018-04-05 | 富士通株式会社 | 攻撃検知装置、攻撃検知方法、および、攻撃検知プログラム |
JP2018088616A (ja) * | 2016-11-29 | 2018-06-07 | 富士通株式会社 | 攻撃検知装置、攻撃検知方法、および、攻撃検知プログラム |
JP7030957B2 (ja) | 2017-08-14 | 2022-03-07 | アーガス サイバー セキュリティ リミテッド | 自動車用サイバーセキュリティ |
JP2020530967A (ja) * | 2017-08-14 | 2020-10-29 | アーガス サイバー セキュリティ リミテッド | 自動車用サイバーセキュリティ |
JP2019068253A (ja) * | 2017-09-29 | 2019-04-25 | 株式会社デンソー | 異常検知装置、異常検知方法、プログラム及び通信システム |
JP7003544B2 (ja) | 2017-09-29 | 2022-01-20 | 株式会社デンソー | 異常検知装置、異常検知方法、プログラム及び通信システム |
JP2019176473A (ja) * | 2018-03-29 | 2019-10-10 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America | 不正検知方法、不正検知装置及びプログラム |
JP7512473B2 (ja) | 2018-03-29 | 2024-07-08 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ | 不正検知方法、不正検知装置及びプログラム |
JP7280082B2 (ja) | 2018-03-29 | 2023-05-23 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ | 不正検知方法、不正検知装置及びプログラム |
WO2021065069A1 (ja) * | 2019-09-30 | 2021-04-08 | 株式会社オートネットワーク技術研究所 | 検知装置、車両、検知方法および検知プログラム |
JP7396363B2 (ja) | 2019-09-30 | 2023-12-12 | 株式会社オートネットワーク技術研究所 | 検知装置、車両、検知方法および検知プログラム |
US11849324B2 (en) | 2019-09-30 | 2023-12-19 | Autonetworks Technologies, Ltd. | Detection device, vehicle, detection method, and detection program |
US11870789B2 (en) | 2019-09-30 | 2024-01-09 | Autonetworks Technologies, Ltd. | Detection device, vehicle, detection method, and detection program |
JPWO2021065069A1 (ja) * | 2019-09-30 | 2021-04-08 | ||
WO2024195467A1 (ja) * | 2023-03-20 | 2024-09-26 | 株式会社オートネットワーク技術研究所 | 車載装置、プログラム及び情報処理方法 |
Also Published As
Publication number | Publication date |
---|---|
US20170324579A1 (en) | 2017-11-09 |
DE112015005252T5 (de) | 2017-08-10 |
CN107005447B (zh) | 2020-09-08 |
CN107005447A (zh) | 2017-08-01 |
JPWO2016080422A1 (ja) | 2017-08-17 |
JP6306206B2 (ja) | 2018-04-04 |
US10432421B2 (en) | 2019-10-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6306206B2 (ja) | 通信制御装置及び通信システム | |
JP6477281B2 (ja) | 車載中継装置、車載通信システム及び中継プログラム | |
CN108353015B (zh) | 中继装置 | |
EP3151462B1 (en) | Transmission device, reception device, transmission method, and reception method | |
CN106471767B (zh) | 通信系统及密钥信息共享方法 | |
JP5880898B2 (ja) | 送信装置 | |
JP6282216B2 (ja) | 通信システム及び通信装置 | |
US10050983B2 (en) | Communication system, receiving apparatus, receiving method, and computer program product | |
US11647045B2 (en) | Monitoring a network connection for eavesdropping | |
WO2017057165A1 (ja) | 車載通信システム | |
CN113169979B (zh) | 用于检测对网络的分布式现场总线的入侵的方法及其系统 | |
JP6404848B2 (ja) | 監視装置、及び、通信システム | |
CN108632242B (zh) | 通信装置及接收装置 | |
CN113273144B (zh) | 车载通信系统、车载通信控制装置、车载通信装置、通信控制方法及通信方法 | |
JP7110950B2 (ja) | ネットワークシステム | |
KR20190097216A (ko) | 센서의 측정값들에 서명하기 위한 방법, 장치 및 명령어들을 포함하는 컴퓨터 판독 가능 저장 매체 | |
JP2023519910A (ja) | 特に自動車におけるデータの異常を処理するための方法 | |
JP6108251B2 (ja) | 受信装置、及び受信方法 | |
JP6447974B2 (ja) | 送信方法 | |
JP7328419B2 (ja) | 車載通信システム、車載通信装置、コンピュータプログラム及び通信方法 | |
JP6676065B2 (ja) | 接続された装置による認証連鎖 | |
JP6822090B2 (ja) | 通信システム | |
JP2018011155A (ja) | Can通信システム | |
JP6149716B2 (ja) | 車載ネットワークシステム | |
JP2022086429A (ja) | 通信装置、通信装置が行なう通信異常判定方法、および通信装置を制御するためのプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 15861317 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2016560252 Country of ref document: JP Kind code of ref document: A |
|
WWE | Wipo information: entry into national phase |
Ref document number: 15527826 Country of ref document: US |
|
WWE | Wipo information: entry into national phase |
Ref document number: 112015005252 Country of ref document: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 15861317 Country of ref document: EP Kind code of ref document: A1 |