WO2018110046A1 - 制御装置、制御システム、制御方法、制御プログラムおよび記憶媒体 - Google Patents

制御装置、制御システム、制御方法、制御プログラムおよび記憶媒体 Download PDF

Info

Publication number
WO2018110046A1
WO2018110046A1 PCT/JP2017/036296 JP2017036296W WO2018110046A1 WO 2018110046 A1 WO2018110046 A1 WO 2018110046A1 JP 2017036296 W JP2017036296 W JP 2017036296W WO 2018110046 A1 WO2018110046 A1 WO 2018110046A1
Authority
WO
WIPO (PCT)
Prior art keywords
brake
instruction
control instruction
brake control
control
Prior art date
Application number
PCT/JP2017/036296
Other languages
English (en)
French (fr)
Inventor
若林 徹
圭一 肥後
中野 稔久
Original Assignee
パナソニックIpマネジメント株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by パナソニックIpマネジメント株式会社 filed Critical パナソニックIpマネジメント株式会社
Priority to DE112017006282.9T priority Critical patent/DE112017006282T5/de
Publication of WO2018110046A1 publication Critical patent/WO2018110046A1/ja
Priority to US16/405,625 priority patent/US11247694B2/en

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W50/02Ensuring safety in case of control system failures, e.g. by diagnosing, circumventing or fixing failures
    • B60W50/0205Diagnosing or detecting failures; Failure detection models
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W30/00Purposes of road vehicle drive control systems not related to the control of a particular sub-unit, e.g. of systems using conjoint control of vehicle sub-units
    • B60W30/08Active safety systems predicting or avoiding probable or impending collision or attempting to minimise its consequences
    • B60W30/095Predicting travel path or likelihood of collision
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R16/00Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for
    • B60R16/02Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements
    • B60R16/023Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements for transmission of signals between vehicle parts or subsystems
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60TVEHICLE BRAKE CONTROL SYSTEMS OR PARTS THEREOF; BRAKE CONTROL SYSTEMS OR PARTS THEREOF, IN GENERAL; ARRANGEMENT OF BRAKING ELEMENTS ON VEHICLES IN GENERAL; PORTABLE DEVICES FOR PREVENTING UNWANTED MOVEMENT OF VEHICLES; VEHICLE MODIFICATIONS TO FACILITATE COOLING OF BRAKES
    • B60T8/00Arrangements for adjusting wheel-braking force to meet varying vehicular or ground-surface conditions, e.g. limiting or varying distribution of braking force
    • B60T8/17Using electrical or electronic regulation means to control braking
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60TVEHICLE BRAKE CONTROL SYSTEMS OR PARTS THEREOF; BRAKE CONTROL SYSTEMS OR PARTS THEREOF, IN GENERAL; ARRANGEMENT OF BRAKING ELEMENTS ON VEHICLES IN GENERAL; PORTABLE DEVICES FOR PREVENTING UNWANTED MOVEMENT OF VEHICLES; VEHICLE MODIFICATIONS TO FACILITATE COOLING OF BRAKES
    • B60T8/00Arrangements for adjusting wheel-braking force to meet varying vehicular or ground-surface conditions, e.g. limiting or varying distribution of braking force
    • B60T8/17Using electrical or electronic regulation means to control braking
    • B60T8/173Eliminating or reducing the effect of unwanted signals, e.g. due to vibrations or electrical noise
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W10/00Conjoint control of vehicle sub-units of different type or different function
    • B60W10/18Conjoint control of vehicle sub-units of different type or different function including control of braking systems
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W30/00Purposes of road vehicle drive control systems not related to the control of a particular sub-unit, e.g. of systems using conjoint control of vehicle sub-units
    • B60W30/08Active safety systems predicting or avoiding probable or impending collision or attempting to minimise its consequences
    • B60W30/09Taking automatic action to avoid collision, e.g. braking and steering
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W30/00Purposes of road vehicle drive control systems not related to the control of a particular sub-unit, e.g. of systems using conjoint control of vehicle sub-units
    • B60W30/18Propelling the vehicle
    • B60W30/18009Propelling the vehicle related to particular drive situations
    • B60W30/18109Braking
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W40/00Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models
    • B60W40/10Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models related to vehicle motion
    • B60W40/105Speed
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W50/02Ensuring safety in case of control system failures, e.g. by diagnosing, circumventing or fixing failures
    • B60W50/0205Diagnosing or detecting failures; Failure detection models
    • B60W2050/021Means for detecting failure or malfunction
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2520/00Input parameters relating to overall vehicle dynamics
    • B60W2520/10Longitudinal speed
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2554/00Input parameters relating to objects
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40208Bus networks characterized by the use of a particular bus standard
    • H04L2012/40215Controller Area Network CAN
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40267Bus for use in transportation systems
    • H04L2012/40273Bus for use in transportation systems the transportation system being a vehicle

Definitions

  • the present disclosure relates to, for example, a security technique for coping with a fraud about a brake control instruction message transmitted in an in-vehicle network with which an electronic control unit mounted on a vehicle communicates.
  • ECUs electronice control units
  • in-vehicle network A network connecting these ECUs.
  • in-vehicle networks There are many standards for in-vehicle networks. Among them, one of the most mainstream in-vehicle networks is a standard called CAN (Controller Area Network) defined by ISO 11898-1.
  • the communication path is a bus (CAN bus) composed of two wires, and an ECU connected to the bus is called a node.
  • Each node connected to the CAN bus transmits and receives frames (messages).
  • a transmitting node transmitting a frame transmits a value of “1” called recessive and a value of “0” called dominant by applying voltage to two buses and generating a potential difference between the buses.
  • the receiving node transmits a frame called an error frame if there is an abnormality in the format of the received frame.
  • the error frame notifies the transmitting node or other receiving nodes of a frame abnormality by continuously transmitting 6 bits of the dominant.
  • CAN there is no identifier that indicates the transmission destination or the transmission source, and the transmitting node attaches an ID called message ID to each frame and transmits it (that is, transmits a signal to the bus), and each receiving node is predetermined. Receive only the specified message ID (ie, read the signal from the bus).
  • CSMA / CA Carrier Sense Multiple Access / Collision Avoidance
  • arbitration by message ID is performed at the time of simultaneous transmission of multiple nodes, and frames with small values of message ID are transmitted preferentially Be done.
  • each of a number of ECUs performs exchange of various frames.
  • the collision avoidance support function or the like of an advanced driver assistance system is realized by each ECU exchanging a frame and cooperating with another ECU.
  • ADAS advanced driver assistance system
  • a brake ECU that controls a brake for example, a brake ECU that controls a brake, a sensor ECU that detects an obstacle, an emergency brake ECU that detects a risk of collision with an obstacle, and outputs a frame of a brake control instruction cooperates.
  • an attacker can connect an illegal node to the CAN bus, or attack an ECU or the like having a function of communicating with a portable information terminal, a communication device outside the vehicle, etc.
  • the attack frame is a frame transmitted to the CAN bus by an unauthorized attacker, and is a frame (illegal frame) which is not originally transmitted in a normal state of the in-vehicle network. For example, if a frame of a brake control instruction that activates a sudden braking is transmitted to the CAN bus by an attacker without an obstacle ahead of a running vehicle, the occupant may be injured by a sudden stop of the vehicle. An accident such as a collision of a following vehicle may occur.
  • Patent Document 1 As a technique for detecting such an attack frame and preventing it, an assumed cycle is registered in advance for a frame of a message ID to be periodically transmitted in the in-vehicle network, and it is determined whether it is incorrect based on the assumed cycle There is known a technology for performing the discrimination of (see Patent Document 1). However, the technique of Patent Document 1 can not cope with the case where the attacker transmits a frame in accordance with the frame transmission cycle of the regular ECU. For example, if an illegal frame is received immediately before a regular frame, the illegal frame can not be detected, and the regular frame following immediately after is erroneously detected as a fraud.
  • Patent Document 2 makes an abnormality determination regarding the received frame without depending on the frame period, it is not useful for appropriately dealing with an attack frame of an unauthorized brake control instruction.
  • the present disclosure provides a control device that appropriately copes with an attack frame of an illegal brake control instruction transmitted by an attacker to a bus of a network (for example, an in-vehicle network) in a mobile.
  • the present disclosure relates to a control system and control method that appropriately copes with an illegal frame related to a brake control instruction, and a control program used to appropriately cope with an illegal frame related to a brake control instruction in the control system. I will provide a.
  • a control device includes a reception unit and a control unit.
  • the receiving unit receives an instruction (referred to as a brake control instruction) for controlling the brake of the mobile unit from a bus used by the plurality of electronic control units in the mobile unit to communicate. If the distance between the moving object and the obstacle and the speed of the moving object satisfy a predetermined condition for disabling the brake control instruction when the receiving unit receives the brake control instruction, the control unit Control to invalidate or discard.
  • a control system concerning one mode of this indication has a brake provided in a mobile, a detection device which detects an obstacle to this mobile, and the above-mentioned control device.
  • a brake control instruction is received from a bus used by the plurality of electronic control units for communication in the mobile object.
  • the brake control instruction is invalidated or discarded.
  • a control program is a control program for causing an apparatus including a microprocessor to perform fraud detection processing.
  • a brake control instruction is received from a bus used by the plurality of electronic control units for communication in the mobile unit. Then, when the brake control instruction is received, whether the distance between the moving object and the obstacle and the speed of the moving object satisfy the predetermined condition or not is detected whether or not the brake control instruction is incorrect.
  • a storage medium is a non-transitory storage medium storing the control program.
  • an attacker may invalidate an unauthorized frame (attack frame) related to a brake control instruction.
  • FIG. 1 is a diagram showing an entire configuration of a control system according to a first embodiment.
  • FIG. 2 is a diagram showing the format of a data frame defined by the CAN protocol.
  • FIG. 3 is a diagram showing the format of an error frame defined by the CAN protocol.
  • FIG. 4 is a block diagram of the brake ECU according to the first embodiment.
  • FIG. 5 is a view showing an example of a data field of a frame related to a brake control instruction transmitted by the emergency brake ECU according to the first embodiment.
  • FIG. 6 is a block diagram of the security ECU (control device) according to the first embodiment.
  • FIG. 7 is a diagram for describing the condition of the fraud determination of the brake control instruction according to the first embodiment.
  • FIG. 1 is a diagram showing an entire configuration of a control system according to a first embodiment.
  • FIG. 2 is a diagram showing the format of a data frame defined by the CAN protocol.
  • FIG. 3 is a diagram showing the format of an error frame defined by the
  • FIG. 8 is a flowchart showing control processing in the security ECU shown in FIG.
  • FIG. 9 is a diagram showing an example of a processing sequence according to the brake control in the first embodiment.
  • FIG. 10 is a diagram showing an example of a processing sequence according to the brake control in the first embodiment.
  • FIG. 11 is a diagram showing an entire configuration of a control system according to a second embodiment.
  • FIG. 12 is a block diagram of a brake ECU according to the second embodiment.
  • FIG. 13 is a flowchart showing control processing in the brake ECU shown in FIG.
  • FIG. 14 is a diagram showing an example of a processing sequence according to the brake control in the second embodiment.
  • FIG. 15 is a diagram showing an example of a processing sequence according to brake control in the second embodiment.
  • the advanced driver assistance system of a vehicle has an emergency brake ECU for avoiding the collision of the vehicle with an obstacle.
  • the emergency brake ECU transmits a brake control instruction (that is, a frame of the brake control instruction) to the CAN bus substantially immediately before a collision based on information acquired from a sensor ECU that detects an obstacle or the like.
  • the brake ECU controls the brake to stop the vehicle before the collision.
  • the contents of the brake control instruction include, for example, a designation for suppressing the operation of the brake, as well as a designation for operating the brake.
  • An appropriate brake control instruction should be content corresponding to the distance between the obstacle and the vehicle in the traveling direction of the vehicle and the speed of the vehicle. Therefore, whether the brake control instruction transmitted to the CAN bus is an appropriate brake control instruction according to the traveling condition of the vehicle or an incorrect brake control instruction having different contents from the obstacle in the traveling direction of the vehicle and the vehicle And a method of determining based on the speed of the vehicle and the speed of the vehicle (for example, the relative speed or absolute speed between the vehicle and the obstacle).
  • a vehicle is an example and this method can be applied to a mobile including vehicles and the like.
  • an unauthorized brake control instruction is determined by the method, and if the unauthorized brake control instruction is invalidated, the brake control is not performed according to the brake control instruction. Do. This makes it possible to prevent an attack frame from causing an accident.
  • a control device includes a reception unit and a control unit.
  • the receiving unit receives an instruction (referred to as a brake control instruction) for controlling the brake of the mobile unit from a bus used by the plurality of electronic control units in the mobile unit to communicate.
  • the control unit invalidates the brake control instruction when the distance between the movable object and the obstacle and the speed of the movable object satisfy the predetermined condition for disabling the brake control instruction when the receiving unit receives the brake control instruction. Control to make or discard. Thereby, invalidating or discarding an incorrect brake control instruction based on the distance between the moving body (for example, a vehicle) and an obstacle (for example, a pedestrian, another vehicle, a building, etc.) and the speed of the moving body Is possible.
  • the invalidation means to make the brake control instruction ineffective in a broad sense.
  • disabling the brake control instruction effectively on the bus (for example, modifying it by overwriting with an error frame described later) is referred to as invalidation
  • deactivating the brake control instruction effectively is referred to as discarding.
  • the discarding includes suppressing the control of the brake according to the brake control instruction.
  • the speed may be a relative speed of the moving body with respect to the obstacle.
  • the speed may be a relative speed of the moving body with respect to the obstacle.
  • control unit may determine whether the distance and the speed satisfy the predetermined condition by comparing a result of a predetermined calculation based on the distance and the speed with a threshold.
  • the predetermined calculation and the threshold value it is possible to appropriately cope with an incorrect brake control instruction.
  • the brake control instruction includes the specification of the deceleration amount by the brake
  • the control unit includes the specification of the deceleration amount of the maximum brake control instruction
  • the brake control instruction includes designation of zero as the deceleration amount
  • it may be used as the predetermined condition that the result of the predetermined calculation is smaller than the second threshold equal to or less than the first threshold.
  • the second threshold may be smaller than the first threshold.
  • the plurality of electronic control units may include an emergency brake electronic control unit that transmits a brake control instruction to the bus. Then, when the brake control instruction in the normal state transmitted from the emergency brake electronic control unit to the bus includes designation of an amount larger than zero as the deceleration amount, the predetermined operation results in the first operation being equal to or less than the first threshold. It may be determined to be two or more thresholds. Thereby, the invalidation of the brake control instruction to be transmitted when the emergency brake ECU is in a normal state (that is, when the state is controlled by an attacker or not in a failure state) is suppressed.
  • the predetermined operation is an operation of subtracting the product of a predetermined coefficient and the velocity from the distance, and the first threshold may be zero. This makes it possible to effectively invalidate the incorrect brake control instruction by using a relatively simple operation.
  • the predetermined operation may be an operation of subtracting the result of substituting the velocity into the variable of the polynomial function of one variable whose coefficient is determined, from the distance.
  • control unit may change the content of the predetermined calculation according to the change of the component of the moving body that affects the braking distance by the brake of the moving body. This makes it possible to properly invalidate the incorrect brake control instruction even when the component of the moving body changes.
  • the receiving unit may receive obstacle information indicating the type of obstacle detected in the mobile body from the bus, and the control unit may change the content of the predetermined calculation according to the obstacle information. .
  • the control unit may change the content of the predetermined calculation according to the obstacle information.
  • the control unit may use, as a predetermined condition, that the ratio of the distance to the speed exceeds a predetermined threshold. As a result, it is possible to appropriately determine whether or not the brake control instruction for instructing the operation of the brake is incorrect (that is, whether or not it is a target of the invalidation control).
  • the predetermined condition may be determined corresponding to the vehicle type of the moving body. This makes it possible to appropriately determine whether the brake control instruction is incorrect or not according to the brake performance or the like for each vehicle type.
  • the receiving unit receives measurement information indicating the measurement result of distance and velocity measured in the mobile body from the bus, and the control unit determines the distance and the velocity based on the distance and velocity specified from the measurement information. It may be determined whether the speed satisfies a predetermined condition. As a result, since the control device can obtain the distance and speed from the bus, it is not necessary to have a communication circuit or a sensor for communicating with a sensor on a dedicated communication path.
  • the plurality of electronic control units may communicate via the bus according to a CAN (Controller Area Network) protocol.
  • the receiving unit receives a data frame including a brake control instruction.
  • the control unit may perform control to transmit an error frame for invalidating the data frame if the distance and the speed satisfy the predetermined condition.
  • the brake ECU performs incorrect control by an incorrect brake control instruction. It is suppressed to do.
  • control device may be an electronic control unit that controls the brakes of the moving object included in the plurality of electronic control units.
  • a control part may control a brake according to a brake control instruction, when distance and speed do not fulfill predetermined conditions.
  • the control unit may perform control to discard the brake control instruction by suppressing control of the brake according to the brake control instruction.
  • the brake ECU can appropriately cope with an incorrect brake control instruction.
  • the plurality of electronic control units may include a brake electronic control unit having a storage medium and a brake control unit that controls the brake in accordance with the information stored in the storage medium.
  • the controller may be included in the electronic brake control unit, and the controller may store information indicating a brake control instruction in the storage medium when the distance and the speed do not satisfy the predetermined conditions.
  • the control unit may perform control to discard the brake control instruction by not storing the information indicating the brake control instruction in the storage medium.
  • the brake ECU can appropriately filter the brake control instruction.
  • a control system concerning one mode of this indication has a brake provided in a mobile, a detection device which detects an obstacle to this mobile, and one of the above-mentioned control devices.
  • a brake provided in a mobile
  • a detection device which detects an obstacle to this mobile
  • one of the above-mentioned control devices it is possible to invalidate the incorrect brake control instruction based on the distance between the moving object and the obstacle and the speed of the moving object.
  • a brake control instruction is received from a bus used by the plurality of electronic control units for communication in the mobile object.
  • the brake control instruction is invalidated or discarded.
  • a control program is a control program for causing an apparatus including a microprocessor to perform fraud detection processing.
  • a brake control instruction is received from a bus used by the plurality of electronic control units for communication in the mobile unit. Then, when the brake control instruction is received, whether the distance between the moving object and the obstacle and the speed of the moving object satisfy the predetermined condition or not is detected whether or not the brake control instruction is incorrect.
  • the processor executes the control program to appropriately determine whether the brake control instruction appearing on the bus is incorrect or not. It becomes possible.
  • a storage medium is a non-transitory storage medium storing the control program.
  • Embodiment 1 a security ECU (control device that invalidates a frame related to an illegal brake control instruction transmitted to a bus (CAN bus) configuring an on-vehicle network in a vehicle as an example of a mobile object ) Will be described with reference to the drawings.
  • a security ECU control device that invalidates a frame related to an illegal brake control instruction transmitted to a bus (CAN bus) configuring an on-vehicle network in a vehicle as an example of a mobile object
  • FIG. 1 is a diagram showing an entire configuration of a control system 10 according to a first embodiment.
  • the control system 10 is mainly configured by an in-vehicle network system in the vehicle 20, and as illustrated in FIG. 1, various ECUs (security ECU 100, brake ECU 200, emergency brake ECU 310, sensor ECU 320, and engine ECU 330) mounted on the vehicle 20. And a bus (CAN bus) 30.
  • the in-vehicle network system in the vehicle 20 may include any number of ECUs. Is shown.
  • the control system 10 may also include a server device or the like outside the vehicle that communicates with any of the ECUs of the vehicle 20.
  • the ECU is, for example, a device including a processor (microprocessor), a digital circuit such as a memory, an analog circuit, a communication circuit, and the like.
  • the memory is a ROM (Read Only Memory), a RAM (Random Access Memory), or the like, and can store a control program (computer program as software) executed by the processor.
  • the processor operates in accordance with the control program (computer program)
  • the ECU realizes various functions.
  • the computer program is configured by combining a plurality of instruction codes indicating instructions to the processor in order to achieve a predetermined function.
  • the ECU can send and receive frames via the bus 30 in the vehicle according to the CAN protocol.
  • the ECUs are connected to various devices such as sensors, actuators, and user interface devices by communication paths other than the bus 30.
  • the brake ECU 200 is connected to the brake 201 and controls the brake 201.
  • the engine ECU 330 is connected to the engine 331 and controls the engine 331.
  • the sensor ECU 320 is also connected to the obstacle sensor 321 and the velocity sensor 322, and periodically transmits a frame (data frame) representing measurement information measured by each sensor to the bus 30.
  • the obstacle sensor (detection device) 321 is a sensor that detects an obstacle in the traveling direction of the vehicle 20 and measures the distance between the vehicle 20 and the obstacle.
  • the speed sensor 322 is a sensor that detects the speed of the vehicle 20, and may detect, for example, the absolute speed of the vehicle 20.
  • the speed sensor 322 detects the relative speed of the vehicle 20 to the obstacle detected by the obstacle sensor 321.
  • the absolute velocity of the vehicle 20 is equal to the relative velocity of the vehicle with respect to the obstacle when the obstacle does not move.
  • the emergency brake ECU 310 is an ECU having a collision avoidance support function as an advanced driver support system.
  • the emergency brake ECU 310 periodically transmits a frame of the brake control instruction to the bus 30 based on the measurement information and the like acquired from the sensor ECU 320 in order to request the brake control of the brake ECU 200.
  • the emergency brake ECU 310 may directly acquire measurement information and the like from each sensor without passing through the bus 30, for example, by being integrated with the sensor ECU 320 or the like.
  • the emergency brake ECU 310 transmits to the bus 30 a frame of a brake control instruction containing, for example, a specification requesting that the brake be actuated approximately immediately before a collision.
  • the diagnostic port 390 is a terminal connected to the bus 30 such as OBD 2 (On-Board Diagnostics 2), and through the diagnostic port 390, access to the bus 30 by a device such as a diagnostic tool (fault diagnostic tool) It becomes possible.
  • a diagnostic tool fault diagnostic tool
  • An attacker may inject (transmit) a frame (data frame) of an incorrect brake control instruction to the bus 30 via, for example, the diagnostic port 390 or the like.
  • the security ECU 100 is an ECU that has a function of securing the security of the in-vehicle network system.
  • the security ECU 100 is a device that monitors a frame flowing through the bus 30 and invalidates a data frame related to an incorrect brake control instruction appearing on the bus 30 by transmitting an error frame, and the attack frame of the incorrect brake control instruction Function as a control device to properly cope with
  • the security ECU 100 may have a function of invalidating not only the illegal brake control instruction but also other illegal data frames under certain conditions.
  • FIG. 2 is a diagram showing the format of a data frame defined by the CAN protocol.
  • FIG. 2 shows a data frame in a standard ID format defined by the CAN protocol.
  • the data frame includes SOF (Start Of Frame), ID field, RTR (Remote Transmission Request), IDE (Identifier Extension), reserved bit “r”, DLC (Data Length Code), data field, CRC (Cyclic Redundancy Check) sequence , A CRC delimiter "DEL", an ACK (Acknowledgement) slot, an ACK delimiter "DEL", and an EOF (End Of Frame) field.
  • SOF Start Of Frame
  • ID field includes ID field, ID field, RTR (Remote Transmission Request), IDE (Identifier Extension), reserved bit “r”, DLC (Data Length Code), data field, CRC (Cyclic Redundancy Check) sequence , A CRC delimiter "DEL", an ACK (Acknowledgement) slot, an ACK delimiter "DEL”, and
  • the SOF consists of 1-bit dominants.
  • the idle state of the bus is recessive, and SOF notifies the start of frame transmission by changing to dominant.
  • the ID field is a field configured of 11 bits and stores an ID (message ID) which is a value indicating the type of data.
  • ID message ID
  • the RTR is a value for identifying a data frame and a remote frame, and is configured by a dominant 1 bit in the data frame.
  • the IDE and "r" are both configured with a dominant 1 bit.
  • the DLC is composed of 4 bits and is a value indicating the length of the data field.
  • the IDE, "r" and DLC are collectively referred to as a control field.
  • the data field is a value indicating the content of data to be transmitted, which is configured by up to 64 bits. You can adjust the length every 8 bits.
  • the specifications of data to be sent are not defined by the CAN protocol, but are defined in the in-vehicle network system. Therefore, the specifications depend on the vehicle type, the manufacturer (manufacturer) and the like.
  • the CRC sequence is composed of 15 bits.
  • the CRC sequence is calculated from the transmission values of the SOF, the ID field, the control field and the data field.
  • the CRC delimiter is a delimiter indicating the end of a CRC sequence composed of 1-bit recessive.
  • the CRC sequence and the CRC delimiter are collectively referred to as a CRC field.
  • the ACK slot is configured by 1 bit.
  • the transmitting node transmits with the ACK slot as a recessive.
  • the receiving node transmits an ACK slot as a dominant if it can receive the CRC sequence normally. Since the dominant takes precedence over recessive, if the ACK slot is dominant after transmission, the transmitting node can confirm that any receiving node has successfully received.
  • the ACK delimiter is a delimiter indicating the end of an ACK composed of 1-bit recessive.
  • EOF is composed of 7-bit recessive, and indicates the end of a data frame.
  • FIG. 3 is a diagram showing the format of an error frame defined by the CAN protocol.
  • the error frame is composed of an error flag (primary), an error flag (secondary), and an error delimiter.
  • the error flag (primary) is used to notify other nodes of the occurrence of an error.
  • a node that has detected an error continuously transmits a 6-bit dominant signal to notify other nodes of the occurrence of an error. This transmission violates the bit stuffing rule (does not transmit the same value more than 6 bits consecutively) in the CAN protocol, and causes the transmission of error frames (secondary) from other nodes.
  • the error flag (secondary) is composed of consecutive 6-bit dominants used to notify other nodes of the occurrence of an error. All nodes that receive an error flag (primary) and detect a bit stuffing rule violation send an error flag (secondary).
  • the error delimiter “DEL” is an 8-bit continuous recessive and indicates the end of an error frame.
  • FIG. 4 is a block diagram of the brake ECU 200.
  • the brake ECU 200 for controlling the brake 201 includes a communication unit 210, a data buffer 220, and a control processing unit (brake control unit) 230.
  • the communication unit 210 is an integrated circuit (for example, a communication circuit, a memory, a processor, and the like) which controls communication on the bus 30.
  • the communication unit 210 has, for example, a frame transmission / reception function unit, a reception frame interpretation function unit, and the like as functional components.
  • the frame transmission / reception function unit performs, for example, transmission / reception of frames (sequential transmission / reception of each bit of frames) to the bus 30 according to the CAN protocol. Further, the reception frame interpretation function unit interprets the value of the frame received by the frame transmission / reception function unit to map each field in the frame format defined by the CAN protocol.
  • the reception frame interpretation function unit determines whether the value determined to be the ID field is an ID (message ID) to be received by the brake ECU 200, and if it is not to be received, interprets the frame. If it is determined that the frame does not conform to the CAN protocol, for example, if the received frame interpretation function unit determines that the frame does not conform to the CAN protocol, for example, if the CRC value does not match or the dominant fixed item is recessive, Control. Also, in the reception frame interpretation function unit, when an error frame is received, that is, when it is interpreted as an error frame from the value in the received frame, the frame is discarded thereafter, that is, the interpretation of the frame is Discontinue.
  • the reception frame interpretation function unit stores in the data buffer 220 the contents of the frame (ID, data in the data field, etc.) determined as the ID to be received.
  • the ID of the data frame indicating the brake control instruction which is predetermined in the in-vehicle network system in the control system 10, is determined as the ID to be received in the reception frame interpretation function unit of the communication unit 210.
  • the data buffer 220 is one storage area of a storage medium such as a memory, a register, and the like.
  • the data buffer 220 stores an ID as content of a frame of an ID to be received, which is received by the communication unit 210, and information indicating data of a data field (for example, information indicating a brake control instruction).
  • information indicating data of a data field for example, information indicating a brake control instruction.
  • ID information indicating data of a data field
  • the reception timing from the bus 30 by the brake ECU 200 of the data frame related to the brake control instruction transmitted by the emergency brake ECU 310 does not necessarily exactly coincide with a fixed cycle (for example, 50 ms etc.). It may shift.
  • the data buffer 220 is used to process the received data frame efficiently in response to the fluctuation of the reception timing in such communication arbitration.
  • Control processing unit 230 periodically or certain conditions (conditions related to frame storage in data buffer 220, etc.) are satisfied periodically (information indicating brake control instruction etc.) stored in data buffer 220.
  • the brake 201 is controlled by transmitting a control signal to the brake 201 according to a brake control instruction acquired in a case etc. and indicated by the acquired information.
  • ECU for example, engine ECU330 grade
  • ECU200 which can control an actuator other than brake ECU200 also equips with a communication part, a data buffer, and the control processing part for control of an actuator like brake ECU200.
  • the measurement information indicates the measurement result regarding the distance between the vehicle 20 and the obstacle and the relative velocity of the vehicle 20 to the obstacle.
  • FIG. 5 is a view showing an example of a data field of a frame related to a brake control instruction transmitted by the emergency brake ECU 310.
  • the data field of the frame of the brake control instruction includes specification of the amount of deceleration by the brake 201 (that is, the amount of deceleration required to request deceleration by the brake 201), and FIG. 5 shows an example of the contents of the amount of deceleration There is.
  • the data field of the frame of the brake control instruction may include information other than the deceleration (for example, a flag indicating whether valid or invalid), only the deceleration is included here for convenience. It explains as a thing.
  • the amount of deceleration itself does not necessarily have to match the value (data value) in the data field.
  • the deceleration amount is represented by 1 byte
  • a value 255 represents the deceleration amount zero (0)
  • a value 55 represents the maximum amount (for example, 100) of the deceleration amount.
  • the brake ECU 200 When the emergency brake ECU 310 transmits a brake control instruction including designation of a deceleration amount larger than zero (0), the brake ECU 200 operates the brake 201 according to the deceleration amount of the brake control instruction. That is, in the brake ECU 200, the brake 201 is operated such that the larger the deceleration amount of the brake control instruction, the stronger the effect (the larger the braking force). Specifically, when the deceleration amount of the brake control instruction is the maximum amount (for example, 100), the control processing unit 230 of the brake ECU 200 operates the brake 201 with the maximum braking force corresponding to so-called full braking. Control the brake 201 as done.
  • the deceleration amount of the brake control instruction is the maximum amount (for example, 100)
  • the control processing unit 230 of the brake ECU 200 operates the brake 201 with the maximum braking force corresponding to so-called full braking. Control the brake 201 as done.
  • the control processing unit 230 of the brake ECU 200 suppresses the operation of the brake 201 according to the brake control instruction.
  • the brake ECU 200 controls the brake 201 in accordance with the operation of the brake pedal of the driver of the vehicle 20, for example, the control in accordance with the operation is prioritized over the control of suppressing the operation of the brake 201. It can be done.
  • FIG. 6 is a block diagram of the security ECU 100.
  • the security ECU 100 has a function as a control device that monitors a frame flowing through the bus 30 and invalidates a data frame relating to an incorrect brake control instruction appearing on the bus 30 by transmitting an error frame.
  • the security ECU 100 includes a communication unit 110, a storage unit 120, and a control unit 130.
  • Each function of each component is realized by, for example, a communication circuit in the security ECU 100, a storage medium such as a memory, a processor that executes a control program stored in the memory, a digital circuit, or the like.
  • the communication unit 110 is realized by a communication circuit, a processor that executes a control program, and the like.
  • the communication unit 110 includes a receiving unit 111 and a transmitting unit 112 for transmitting and receiving a frame to the bus 30 (sequentially transmitting and receiving each 1 bit of a frame) according to the CAN protocol.
  • the receiving unit 111 receives a frame (for example, a data frame related to a brake control instruction, a data frame including measurement information, and the like) from the bus 30.
  • the communication unit 110 When the communication unit 110 receives a frame from the bus 30 by the reception unit 111, the communication unit 110 interprets the frame to be mapped to each field in a frame format defined by the CAN protocol, whereby ID (message ID), DLC, data Distinguish and extract each of the field data.
  • Communication unit 110 is an ID of a data frame indicating a brake control instruction, or a data frame ID indicating measurement information transmitted from sensor ECU 320, in which the extracted ID is predetermined in the in-vehicle network system in control system 10. It is determined whether or not the ID should be received. If the ID is not to be received, the communication unit 110 stops interpreting the frame.
  • the communication unit 110 stores, in the storage unit 120, the content (ID, data, etc.) of the frame that is the ID to be received, which is received by the receiving unit 111.
  • the communication unit 110 also receives an error frame transmission instruction from the control unit 130, and the transmission unit 112 transmits the error frame to the bus 30.
  • the storage unit 120 is a storage area of a storage medium such as a memory for storing the contents of the frame received by the receiving unit 111.
  • measurement information sequentially transmitted from the sensor ECU 320 is sequentially stored.
  • the measurement information indicates the distance between the vehicle 20 and the obstacle and the relative velocity of the vehicle 20 to the obstacle as a measurement result measured by the sensor in the vehicle 20.
  • the control unit 130 is realized by a processor or the like that executes a control program, and has a function of performing invalidation control of invalidating a data frame of a brake control instruction under certain conditions.
  • the control unit 130 includes a determination unit 131 and an error frame transmission control unit 132.
  • the determination unit 131 determines whether the distance between the vehicle 20 and the obstacle at the time when the reception unit 111 receives the data frame of the brake control instruction and whether a predetermined condition for the speed of the vehicle 20 is satisfied, the brake control instruction It is determined whether or not (i.e., whether or not the data frame of the brake control instruction should be invalidated). Whether the determination unit 131 specifies the distance between the vehicle 20 and the obstacle based on the measurement information received by the reception unit 111 and the speed of the vehicle 20, and the predetermined condition is satisfied based on the specified distance and speed Determine if it is not.
  • This determination is performed until the entire data frame of the brake control instruction is received from the bus 30 by the receiving unit 111 (that is, before the end of the data frame, for example, immediately after receiving the data field or immediately after receiving the CRC sequence). It will be.
  • the determination unit 131 determines that the brake control instruction is invalid, the determination unit 131 notifies the error frame transmission control unit 132 to that effect.
  • the determination unit 131 determines, among the measurement information sequentially stored in the storage unit 120, the distance between the vehicle 20 and the obstacle when the reception unit 111 receives the data frame of the brake control instruction, and the speed of the vehicle 20. The distance between the vehicle 20 and the obstacle indicated by the latest measurement information when the data frame of the brake control instruction is received, and the speed of the vehicle 20 (relative speed to the obstacle) are used.
  • the error frame transmission control unit 132 causes the transmission unit 112 to invalidate the data frame of the brake control instruction appearing on the bus 30 when the determination unit 131 determines that the brake control instruction is incorrect. , Sending an error frame to the bus 30 to perform invalidation control.
  • the invalidation control by the error frame transmission control unit 132 is realized by transmitting an error frame to the bus 30 before the end of reception (EOF) of the data frame of the brake control instruction is completed.
  • EAF end of reception
  • the data frame of the brake control instruction is overwritten on the bus 30 by the transmission of an error frame before the end of the data frame of the brake control instruction. The data frame is discarded, and the brake control according to the brake control instruction is not performed.
  • the determination unit 131 satisfies the predetermined condition C for the distance L (m) between the obstacle and the vehicle and the relative velocity V (km / h) between the obstacle and the vehicle.
  • the brake control instruction is determined to be incorrect.
  • the determination unit 131 determines whether or not the predetermined condition C is satisfied by comparing the result of the predetermined calculation F (V, L) based on the distance L and the relative velocity V with a threshold. .
  • the determination unit 131 It is used as the predetermined condition C that the result of the calculation F (V, L) is larger than the first threshold value a.
  • the predetermined condition C is that the result of the predetermined calculation F (V, L) is smaller than the second threshold b equal to or less than the first threshold a.
  • the brake control instruction to suppress the operation of the brake (set the amount of deceleration to zero) is In a situation where the brake control instruction for suppressing the actuation of the brake is incorrect, and the brake control instruction for operating the brake so as to maximize the amount of deceleration is not incorrect.
  • the second threshold b may be smaller than the first threshold a.
  • G is a polynomial function of one variable whose coefficient is determined.
  • the polynomial function may be a linear function or an n-order function of two or more.
  • the predetermined calculation F (V, L) is a value obtained by subtracting G (V) obtained by substituting the velocity (relative velocity V) into the variable G, from the distance L.
  • the predetermined operation F (V, L) may be L-kV.
  • k is a fixed coefficient.
  • FIG. 7 is a diagram for explaining the condition of the fraud determination of the brake control instruction.
  • the distance L (m) between the vehicle 20 and the obstacle when the emergency brake ECU 310 in a normal state transmits a data frame of a brake control instruction including designation of an amount larger than zero as a deceleration amount.
  • the distribution of the experimental result which measured relative velocity V (km / h) to the obstacle of vehicles 20 is denoted by the point (black rhombus) on a graph.
  • the predetermined control F (V, L) described above is transmitted from the emergency brake ECU 310 in such a normal state and received by the receiving unit 111 includes designation of an amount larger than zero as a deceleration amount.
  • the result of the predetermined calculation F (V, L) is set so as to be equal to or less than the first threshold a and equal to or more than the second threshold b. As a result, the predetermined condition C is not satisfied for the brake control instruction transmitted by the emergency brake ECU 310 in the normal state.
  • the coefficient k here is 0.25.
  • the brake control instruction (instruction to operate the brake) specifies the bus 30 to specify the maximum amount as the deceleration amount. When it is transmitted, it may be determined that the brake control instruction is incorrect.
  • a brake control instruction an instruction to suppress the operation of the brake designating zero as the deceleration amount When transmitted to the bus 30, it may be determined that the brake control instruction is incorrect.
  • the determination unit 131 includes a brake including designation of the maximum amount as a deceleration amount.
  • the control instruction it is used as the predetermined condition C that the result of the predetermined calculation F (V, L) is larger than the first threshold value a.
  • the predetermined condition C that the result of the predetermined calculation F (V, L) is smaller than the second threshold value b equal to or less than the first threshold value a for the brake control instruction including designation of zero as the deceleration amount.
  • the determination unit 131 instructs the brake control instruction received by the reception unit 111 to operate the brake (for example, the brake control in which the deceleration amount is specified other than zero).
  • the predetermined condition C may be that the ratio of the distance L to the relative velocity V exceeds a predetermined threshold value.
  • the predetermined condition for determining that the brake control instruction is illegal is, for example, that the relative velocity V belongs to one or more specific categories (for example, 8 km / h to 10 km / h etc.) among a plurality of range categories.
  • the condition may be satisfied when the distance L belongs to one or more specific sections (for example, 3 m to 4 m) among the plurality of range sections.
  • FIG. 8 shows an example of control processing in the security ECU 100.
  • control processing executed in the security ECU 100 to appropriately cope with an attack frame of an incorrect brake control instruction will be described with reference to FIG.
  • Step S12 When the security ECU 100 receives from the bus 30 a data frame including measurement information transmitted by the sensor ECU 320 in the reception unit 111 (yes in step S11), the measurement information is stored or stored in the storage unit 120 (in other words, Step S12). As a result, measurement information representing the distance L (m) between the obstacle and the vehicle and the relative velocity V (km / h) between the obstacle and the vehicle is stored in the storage unit 120. Since sensor ECU 320 periodically transmits a data frame including measurement information indicating the measurement result of the sensor, storage of the measurement information in step S12 is repeated.
  • step S13 When security ECU 100 receives the data frame of the brake control instruction from bus 30 at reception unit 111 (yes in step S13), the determination is made based on the latest measurement information most recently stored in storage unit 120. In the part 131, the distance L between the vehicle and the obstacle and the relative velocity V are specified (step S14). Then, the determination unit 131 determines whether or not the brake control instruction related to the data frame received in step S13 is incorrect by determining whether or not the predetermined condition C for the specified distance L and relative velocity V is satisfied. It is determined (step S15).
  • the determination unit 131 designates the deceleration amount. It is possible to specify whether the maximum amount, zero, and so on.
  • the determination unit 131 uses, as a predetermined condition C, that the result of the predetermined calculation F (V, L) is larger than the first threshold a for a brake control instruction including designation of the maximum amount as the deceleration amount as the deceleration amount As for the brake control instruction including designation of zero, it is used as the predetermined condition C that the result of the predetermined calculation F (V, L) is smaller than the second threshold b which is equal to or less than the first threshold a. In addition, for a brake control instruction that includes, for example, designation of a deceleration amount larger than zero and smaller than a maximum amount as the deceleration amount, the determination unit 131 sets that the result of the predetermined calculation F (V, L) is larger than the first threshold a. It may be used as C, or may be used as the predetermined condition C to be larger or smaller than another predetermined threshold.
  • step S15 determines in step S15 that the predetermined condition C is satisfied (yes in step S15), it means that the brake control instruction is determined to be incorrect.
  • the error frame transmission control unit 132 performs invalidation control to invalidate the data frame of the brake control instruction by causing the transmission unit 112 to transmit an error frame (step S16).
  • FIG. 9 and FIG. 10 show an example of the processing sequence related to the brake control in the control system 10.
  • a device referred to as an unauthorized ECU connected to the diagnostic port 390 causes the bus 30 to execute an incorrect brake control instruction (a sudden brake is activated) in a situation where the vehicle 20 is not likely to collide with an obstacle.
  • An example of transmitting a data frame of instruction is shown.
  • the operation of each ECU in the control system 10 will be described with reference to FIG.
  • the example in which the unauthorized ECU is a device connected to the diagnostic port 390 is described here, this is only an example of an unauthorized device that can access the bus 30, and for example, it is connected to the bus 30. If any of the ECUs being attacked and controlled by an attacker (for example, if the firmware etc. of the ECU is illegally rewritten), that ECU can become an unauthorized ECU.
  • the sensor ECU 320 transmits a data frame including measurement information indicating the measurement result measured by the obstacle sensor 321 and the speed sensor 322 to the bus 30 (step S101).
  • each ECU electronic device (emergency brake ECU 310, security ECU 100, etc.) connected to the bus 30 receives measurement information indicating the distance between the obstacle and the vehicle and the relative speed between the obstacle and the vehicle.
  • the emergency brake ECU 310 periodically transmitting the brake control instruction transmits the data frame of the brake control instruction designating the amount of deceleration to zero to the bus 30 when there is no risk of a collision with an obstacle (step S102). .
  • the unauthorized ECU transmits the data frame of the brake control instruction (illegal brake control instruction) specifying the deceleration amount as the maximum amount to the bus 30. (Step S103). If the unauthorized ECU transmits an incorrect brake control instruction data frame so as to substantially coincide with the transmission period of the emergency brake ECU 310 data frame for the brake control instruction, whether the unauthorized brake control instruction is transmitted or not is determined based on the transmission period. It can not be determined.
  • the security ECU 100 When the security ECU 100 receives up to the data field of the data frame of the brake control instruction transmitted by the unauthorized ECU by the control process (see FIG. 8), the distance between the vehicle and the obstacle based on the received latest measurement information L and the relative velocity V are specified, the predetermined condition C is selected according to the specification of the amount of deceleration, and it is determined whether or not the brake control instruction is incorrect.
  • the security ECU 100 determines that the predetermined condition C is not satisfied and the brake control instruction is appropriate. Further, upon receiving the data frame of the brake control instruction transmitted from the unauthorized ECU in step S103, the security ECU 100 determines that the predetermined condition C is satisfied and the brake control instruction is unauthorized.
  • step S104 the security ECU 100 transmits an error frame (step S104).
  • the data frame of the incorrect brake control instruction sent from the wrong ECU is invalidated (that is, invalidated by partially overwriting the data frame on the bus 30 with the error frame). )
  • the control processing unit 230 follows the brake control instruction from the emergency brake ECU 310 received corresponding to step S102. Therefore, the control processing unit 230 of the brake ECU 200 does not operate the brake 201 in accordance with the unauthorized brake control instruction from the unauthorized ECU (step S105).
  • the security ECU 100 does not exist, the data frame of the illegal brake control instruction transmitted by the illegal ECU in step S103 is not invalidated.
  • the data frame of the incorrect brake control instruction is completely received by the brake ECU 200, and the brake control instruction from the emergency brake ECU 310 stored in the data buffer 220 corresponding to step S102 is subjected to the incorrect brake control The instruction overwrites.
  • the control processing unit 230 of the brake ECU 200 controls the brake 201 in accordance with the unauthorized brake control instruction from the unauthorized ECU.
  • FIG. 10 shows an example in which the unauthorized ECU transmits to the bus 30 a data frame of an incorrect brake control instruction (an instruction to suppress the operation of the brake) immediately before the vehicle 20 collides with an obstacle.
  • an incorrect brake control instruction an instruction to suppress the operation of the brake
  • the sensor ECU 320 transmits a data frame including measurement information indicating the measurement result measured by the obstacle sensor 321 and the speed sensor 322 to the bus 30 (step S201).
  • This step S201 is similar to step S101 of FIG. 9 described above.
  • the emergency brake ECU 310 that periodically transmits the brake control instruction transmits a data frame of the brake control instruction specifying the deceleration amount as the maximum amount to the bus 30 (step S202).
  • the unauthorized ECU transmits the data frame of the brake control instruction (illegal brake control instruction) designating the amount of deceleration to zero to the bus 30 ( Step S203).
  • the security ECU 100 When the security ECU 100 receives up to the data field of the data frame of the brake control instruction transmitted by the unauthorized ECU by the control process (see FIG. 8), the distance between the vehicle and the obstacle based on the received latest measurement information L and the relative velocity V are specified, the predetermined condition C is selected according to the specification of the amount of deceleration, and it is determined whether or not the brake control instruction is incorrect.
  • the security ECU 100 upon reception of the data frame of the brake control instruction transmitted from the emergency brake ECU 310 in step S202, the security ECU 100 determines that the brake control instruction is appropriate without the predetermined condition C being satisfied.
  • the security ECU 100 determines that the predetermined condition C is satisfied and the brake control instruction is unauthorized.
  • step S204 the security ECU 100 transmits an error frame (step S204).
  • the control processing unit 230 actuates the brake 201 in accordance with the brake control instruction received from the emergency brake ECU 310 corresponding to step S202 (step S205).
  • control unit 130 of security ECU (control device) 100 acquires from sensor ECU 320 immediately before reception of the brake control instruction (that is, the data frame of the brake control instruction) by receiver 111. Based on the measured information, the distance L between the vehicle 20 and the obstacle at the time of receiving the brake control instruction and the relative velocity V of the vehicle 20 to the obstacle are specified. Then, when the predetermined condition C for the distance L and the relative velocity V is satisfied, the control unit 130 performs invalidation control to invalidate the brake control instruction by transmitting an error frame.
  • the predetermined condition C may differ depending on whether the brake control instruction designates the maximum amount as the amount of deceleration or specifies zero as the amount of deceleration.
  • the predetermined condition C can be set such that the predetermined condition C is not satisfied for the brake control instruction transmitted by the emergency brake ECU 310 in the normal state.
  • the security ECU 100 improperly applies the brake control instruction when the predetermined condition C is satisfied. Therefore, it is possible to prevent the brake ECU 200 from controlling the brake 201 in accordance with an incorrect brake control instruction. That is, in the control system 10, the security ECU 100 can appropriately cope with an unauthorized frame (attack frame) related to a brake control instruction, and an attack frame can be prevented from causing an accident.
  • control system 10 when the security ECU 100 determines that the brake control instruction (data frame for the brake control instruction) flowing through the bus 30 is incorrect, the data frame for the brake control instruction is invalidated by transmitting an error frame.
  • the control system 11 according to the present embodiment does not include the security ECU 100, and the brake ECU obtained by partially deforming the brake ECU 200 described in the first embodiment receives an incorrect brake control instruction.
  • An example will be described in which the brake control according to the brake control instruction is not performed (that is, the brake control instruction is discarded) when it is determined to be incorrect.
  • FIG. 11 is a diagram showing an entire configuration of a control system 11 according to the present embodiment. About the same composition as control system 10 (refer to Drawing 1) shown in Embodiment 1, the same numerals as Drawing 1 are attached in Drawing 11, and explanation is omitted.
  • the control system 11 is mainly configured by an in-vehicle network system in the vehicle 20, and as illustrated in FIG. 11, various ECUs (a brake ECU 2200, an emergency brake ECU 310, a sensor ECU 320, and an engine ECU 330) mounted on the vehicle 20; And a bus 30.
  • the control system 11 is the same as the control system 10 shown in the first embodiment with respect to matters that are not particularly described.
  • FIG. 12 is a configuration diagram of the brake ECU 2200.
  • the brake ECU 2200 is a partial modification of the brake ECU 200 shown in the first embodiment, and the same components as in the brake ECU 200 (see FIG. 4) are denoted by the same reference numerals in FIG. The description is omitted as appropriate.
  • a brake ECU 2200 connected to the brake 201 for controlling the brake 201 includes a communication unit 210, a data buffer 220, a control processing unit 230, and a control unit 2130.
  • the functional configuration related to frame reception that the communication unit 210 has is illustrated as a reception unit 2111 in FIG. 12.
  • the receiving unit 2111 receives a frame from the bus 30 according to the CAN protocol (sequential reception of each bit of the frame).
  • the reception unit 2111 has a frame reception function and a reception frame interpretation function, and interprets the values of the frame received from the bus 30 to map each field in the frame format defined by the CAN protocol. . By this interpretation, the ID (message ID) in the data frame, the DLC, and the data of the data field are separately extracted.
  • the receiving unit 2111 is an ID of a data frame indicating a brake control instruction, or a data frame indicating a measurement information transmitted from the sensor ECU 320, in which the extracted ID is predetermined in the in-vehicle network system in the control system 11. It is determined whether or not the ID should be received. If the ID is not to be received, the receiving unit 2111 cancels the interpretation of the frame.
  • the communication unit 210 determines that the frame does not conform to the CAN protocol, for example, if the CRC value of the frame received by the reception unit 2111 does not match, or if the item fixed as dominant is recessive, the frame is not compliant with the CAN protocol. Control to send an error frame to In addition, when the receiving unit 2111 receives an error frame, that is, when it is interpreted as an error frame from the value in the received frame, the frame is discarded thereafter, that is, the interpretation of the frame is canceled. . The receiving unit 2111 stores the contents (ID, data of the data field, etc.) of the frame determined as the ID to be received in the storage unit 120 of the control unit 2130.
  • the control unit 2130 is realized by a processor or the like that executes a control program, and performs control to discard the brake control instruction by filtering processing that suppresses transfer of information indicating the brake control instruction to the data buffer 220 under certain conditions.
  • Be responsible for The control unit 2130 includes a storage unit 120, a determination unit 131, and a transfer unit 2133.
  • Storage unit 120 in control unit 2130 is the same as storage unit 120 of security ECU 100 shown in the first embodiment, and one storage medium such as a memory for storing the contents of the frame received by reception unit 2111. It is an area.
  • the storage unit 120 for example, the content of a data frame related to measurement information sequentially transmitted from the sensor ECU 320 and the content (for example, the amount of deceleration) related to a brake control instruction are sequentially stored.
  • the measurement information indicates the distance between the vehicle 20 and the obstacle and the relative velocity of the vehicle 20 to the obstacle.
  • Discrimination unit 131 in control unit 2130 is substantially the same as discrimination unit 131 of security ECU 100 shown in the first embodiment, and when reception unit 2111 receives a data frame of a brake control instruction, vehicle 20 and an obstacle are Whether or not the brake control instruction is incorrect is determined based on whether the predetermined condition C for the distance L and the velocity (relative velocity) V of the vehicle 20 with respect to the obstacle is satisfied.
  • the determination unit 131 specifies the distance L between the vehicle 20 and the obstacle based on the measurement information received by the reception unit 2111 and the speed (relative speed) V of the vehicle 20 with respect to the obstacle, and specifies the specified distance L and Based on the velocity V, it is determined whether a predetermined condition C is satisfied.
  • the determination unit 131 notifies the transfer unit 2133 of the determination result as to whether or not the brake control instruction is incorrect.
  • the determination unit 131 determines the distance L between the vehicle 20 and the obstacle when the reception unit 2111 receives the data frame of the brake control instruction, and the speed V of the vehicle 20 in the measurement information sequentially stored in the storage unit 120. Among them, the distance between the vehicle 20 and the obstacle indicated by the latest measurement information when the data frame of the brake control instruction is received, and the speed of the vehicle 20 (relative speed with respect to the obstacle) are used.
  • the predetermined condition C for determining that the brake control instruction is incorrect for example, one of a plurality of conditions is selected according to the amount of deceleration designated in the brake control instruction as described in the first embodiment. It can be done.
  • the transfer unit 2133 transfers the contents of the data frame related to the brake control instruction from the storage unit 120 to the data buffer 220, and the brake control instruction is incorrect. If it is determined, the content of the data frame related to the brake control instruction is not transferred from the storage unit 120 to the data buffer 220.
  • the data buffer 220 stores an ID as a content of a data frame of a brake control instruction determined not to be illegal, information indicating data of a data field, and the like (that is, information indicating the brake control instruction).
  • Control processing unit 230 periodically or certain conditions (conditions related to frame storage in data buffer 220, etc.) are satisfied periodically (information indicating brake control instruction etc.) stored in data buffer 220.
  • the brake 201 is controlled by transmitting a control signal to the brake 201 according to a brake control instruction acquired in a case etc. and indicated by the acquired information.
  • a part of the brake ECU 2200 (for example, the receiving unit 2111 and the control unit 2130) functions as a control device 2100 that appropriately copes with an attack frame of an unauthorized brake control instruction.
  • FIG. 13 shows an example of control processing in the brake ECU 2200.
  • control processing executed in the brake ECU 2200 to appropriately cope with an attack frame of an incorrect brake control instruction will be described with reference to FIG.
  • the brake ECU 2200 stores or stores the measurement information in the storage unit 120 (Yes in step S21) when the receiving unit 2111 receives the data frame including the measurement information transmitted by the sensor ECU 320 from the bus 30 (yes in step S21) Step S22). As a result, measurement information representing the distance L (m) between the obstacle and the vehicle and the relative velocity V (km / h) between the obstacle and the vehicle is stored in the storage unit 120. Since the sensor ECU 320 periodically transmits a data frame including measurement information indicating the measurement result of the sensor, storage of the measurement information in step S22 is repeatedly performed.
  • step S23 When the brake ECU 2200 receives the data frame of the brake control instruction from the bus 30 in the reception unit 2111 (yes in step S23), the determination is made based on the latest measurement information most recently stored in the storage unit 120.
  • the part 131 identifies the distance L between the vehicle and the obstacle and the relative velocity V (step S24). Then, the determination unit 131 determines whether the brake control instruction related to the data frame received in step S23 is incorrect by determining whether or not the predetermined condition C for the specified distance L and relative velocity V is satisfied. It is determined (step S25).
  • the receiving unit 2111 receives the data frame of the brake control instruction, the receiving unit 2111 stores the deceleration amount and the like designated by the brake control instruction in the storage unit 120.
  • the determining unit 131 designates the deceleration amount. It is possible to specify whether it is the maximum amount, zero, or others. Also in the present embodiment, as described in the first embodiment, the determination unit 131 determines that the result of the predetermined calculation F (V, L) is the first threshold value for the brake control instruction including designation of the maximum amount as the deceleration amount. For a brake control instruction that uses greater than a as the predetermined condition C and includes specification of zero as the deceleration amount, the result of the predetermined operation F (V, L) is less than the second threshold b less than the first threshold a Used as a predetermined condition C.
  • the determination unit 131 sets that the result of the predetermined calculation F (V, L) is larger than the first threshold a. It may be used as C, or may be used as the predetermined condition C to be larger or smaller than another predetermined threshold.
  • step S25 determines in step S25 that the predetermined condition C is satisfied (YES in step S25). If it is determined that the brake control instruction is incorrect, the transfer unit 2133 does not transfer the contents of the data frame of the brake control instruction from the storage unit 120 to the data buffer 220 (step S26), and the brake control instruction is incorrect. If it is not determined, the transfer unit 2133 transfers the content of the data frame of the brake control instruction from the storage unit 120 to the data buffer 220 (step S27). By the processing in steps S25 to S27, the brake ECU 2200 suppresses the control of the brake 201 in accordance with the incorrect brake control instruction, and controls the brake 201 in accordance with the appropriate brake control instruction.
  • FIG. 14 and FIG. 15 show an example of the processing sequence related to the brake control in the control system 11.
  • an apparatus connected to the diagnostic port 390 gives an incorrect brake control instruction to the bus 30 (an instruction to operate a sudden brake) in a situation where the vehicle 20 is not likely to collide with an obstacle.
  • An example of transmitting a data frame of The operation of each ECU in the control system 11 will be described below with reference to FIG.
  • the sensor ECU 320 transmits a data frame including measurement information indicating the measurement result measured by the obstacle sensor 321 and the speed sensor 322 to the bus 30 (step S301).
  • each ECU electronic brake ECU 310, brake ECU 2200, etc.
  • each ECU connected to the bus 30 receives measurement information indicating the distance between the obstacle and the vehicle and the relative speed between the obstacle and the vehicle.
  • the emergency brake ECU 310 which periodically transmits the brake control instruction, transmits a data frame of the brake control instruction with the amount of deceleration specified as zero to the bus 30 when there is no risk of a collision with an obstacle (step S302). .
  • the brake ECU 2200 When the brake ECU 2200 receives the data frame of the brake control instruction transmitted by the emergency brake ECU 310 by the control process (see FIG. 13), the distance L between the vehicle and the obstacle and the received latest measurement information The relative speed V is specified, the predetermined condition C is selected according to the specification of the amount of deceleration, and it is determined whether or not the brake control instruction is incorrect. In the example of FIG. 14, it is determined that the brake control instruction is appropriate because the predetermined condition C is not satisfied, and the content of the data frame of the brake control instruction received from the bus 30 is transferred from the storage unit 120 by the transfer unit 2133. It is transferred to the buffer 220 (step S303).
  • the unauthorized ECU sets the data frame of the brake control instruction (illegal brake control instruction) for which the deceleration amount is specified as the maximum amount. It transmits (step S304).
  • the brake ECU 2200 specifies the distance L between the vehicle and the obstacle and the relative velocity V based on the received latest measurement information when receiving the data frame of the brake control instruction transmitted by the unauthorized ECU by the control processing. Then, according to the specification of the amount of deceleration, the predetermined condition C is selected, and it is determined whether or not the brake control instruction is incorrect. In the example of FIG. 14, it is determined that the predetermined condition C is satisfied and the brake control instruction is incorrect. In this case, the transfer unit 2133 stores the content of the data frame of the brake control instruction received from the bus 30 It does not transfer from 120 to the data buffer 220 (step S305).
  • control processing unit 230 of the brake ECU 2200 performs the brake control corresponding to the brake control instruction indicated by the information stored in the data buffer 220 in step S303, so that the brake 201 is operated according to the incorrect brake control instruction. There is no (step S306).
  • FIG. 15 shows an example in which the unauthorized ECU transmits a data frame of an incorrect brake control instruction (an instruction to suppress the operation of the brake) to the bus 30 in a situation immediately before the vehicle 20 collides with an obstacle.
  • an incorrect brake control instruction an instruction to suppress the operation of the brake
  • the sensor ECU 320 transmits a data frame including measurement information indicating the measurement result measured by the obstacle sensor 321 and the speed sensor 322 to the bus 30 (step S401).
  • This step S401 is similar to step S301 of FIG. 14 described above.
  • the emergency brake ECU 310 that periodically transmits the brake control instruction transmits, to the bus 30, a data frame of the brake control instruction in which the deceleration amount is designated as the maximum amount (step S402).
  • the brake ECU 2200 When the brake ECU 2200 receives the data frame of the brake control instruction transmitted by the emergency brake ECU 310 by control processing, the brake ECU 2200 identifies the distance L and the relative velocity V between the vehicle and the obstacle based on the received latest measurement information. Then, according to the specification of the amount of deceleration, the predetermined condition C is selected, and it is determined whether or not the brake control instruction is incorrect. In the example of FIG. 15, it is determined that the brake control instruction is appropriate because the predetermined condition C is not satisfied, and the content of the data frame of the brake control instruction received from the bus 30 is transferred from the storage unit 120 by the transfer unit 2133. It is transferred to the buffer 220 (step S403).
  • Step S404 the unauthorized ECU transmits the data frame of the brake control instruction (illegal brake control instruction) designating the amount of deceleration to zero to the bus 30.
  • the brake ECU 2200 specifies the distance L between the vehicle and the obstacle and the relative velocity V based on the received latest measurement information when receiving the data frame of the brake control instruction transmitted by the unauthorized ECU by the control processing. Then, according to the specification of the amount of deceleration, the predetermined condition C is selected, and it is determined whether or not the brake control instruction is incorrect. In the example of FIG. 15, it is determined that the predetermined condition C is satisfied and the brake control instruction is determined to be incorrect. In this case, the transfer unit 2133 stores the contents of the data frame of the brake control instruction received from the bus 30 It does not transfer from 120 to the data buffer 220 (step S405).
  • control processing unit 230 of the brake ECU 2200 performs control to operate the brake 201 in response to the brake control instruction indicated by the information stored in the data buffer 220 in step S403. There is no possibility of suppressing the operation (step S406).
  • control unit 2130 of control device 2100 functions as a part of brake ECU 2200. Based on the measurement information acquired from sensor ECU 320 immediately before reception of the brake control instruction (that is, the data frame of the brake control instruction) by control unit 2130, control unit 2130 receives vehicle 20 at the time of reception of the brake control instruction. The distance L to the obstacle and the relative velocity V to the obstacle of the vehicle 20 are specified. When predetermined condition C for distance L and relative velocity V is satisfied, control unit 2130 performs filtering so that the brake control instruction is not transferred to data buffer 220. By this filtering, the control unit 2130 performs control to discard the brake control instruction.
  • the predetermined condition C may differ depending on whether the brake control instruction designates the maximum amount as the amount of deceleration or specifies zero as the amount of deceleration.
  • the predetermined condition C can be set such that the predetermined condition C is not satisfied for the brake control instruction transmitted by the emergency brake ECU 310 in the normal state.
  • the control unit 2130 performs the brake control instruction when the predetermined condition C is satisfied. Determine that it is illegal. Then, filtering is performed so that information indicating the brake control instruction is not transferred to the data buffer 220.
  • control processing unit 230 can be prevented from controlling brake 201 in accordance with an incorrect brake control instruction. That is, in the control system 11, the brake ECU 2200 can appropriately take measures to an unauthorized frame (attack frame) related to a brake control instruction, and an attack frame can be prevented from causing an accident.
  • Embodiments 1 and 2 have been described as examples of the technology according to the present disclosure.
  • the technology according to the present disclosure is not limited to this, and is also applicable to embodiments in which changes, replacements, additions, omissions, and the like are appropriately made.
  • the following modifications are also included in an embodiment of the present disclosure.
  • the security ECU 100 obtains the distance between the vehicle 20 and the obstacle and the speed of the vehicle 20 (relative speed to the obstacle) via the bus 30 (data including measurement information)
  • An example obtained by receiving a frame is shown.
  • the data frame of the brake control instruction is received using, for example, each sensor connected to the security ECU 100 by a dedicated communication line (that is, within a fixed period before and after the reception)
  • the vehicle 20 and the obstacle are And the speed of the vehicle 20 (the relative speed to the obstacle) may be measured directly.
  • the absolute velocity of the vehicle 20 is acquired by the velocity sensor 322 to determine whether the brake control instruction is incorrect or not.
  • the predetermined condition of (3) the distance between the vehicle 20 and the obstacle and the condition on the absolute speed of the vehicle 20 may be used.
  • the control unit 2130 stores information indicating the brake control instruction received by the receiving unit 2111 in the data buffer 220 when the predetermined condition for determining that the brake control instruction is incorrect is not satisfied. If the condition is satisfied, control is performed to discard the brake control instruction by not storing the information indicating the brake control instruction received by the receiving unit 2111 in the data buffer 220.
  • the brake ECU 2200 may function as a control device that appropriately copes with an attack frame of an incorrect brake control instruction.
  • control unit 2130 when the control unit 2130 includes the function of the control processing unit 230 and the predetermined condition for determining that the brake control instruction is incorrect is not satisfied, the control unit 2130 follows the brake control instruction received by the receiving unit 2111.
  • the control of the brake 201 is performed, and the control of discarding the brake control instruction is performed by suppressing the control of the brake 201 according to the brake control instruction received by the receiving unit 2111 when the predetermined condition is satisfied. It is also good.
  • the predetermined conditions for determining that the brake control instruction described in the above embodiment is incorrect may be determined corresponding to each vehicle type of the vehicle 20. That is, the predetermined condition may be determined to be the same for the plurality of vehicles 20 of the same vehicle type, and may be determined to be different for the plurality of vehicles 20 of different vehicle types.
  • vehicles of the same type of vehicle are, for example, vehicles of the same type (vehicle type).
  • vehicles having the same vehicle type are vehicles having the same model type value in the chassis number or the digit values from the top of the vehicle identification number (VIN: Vehicle Identification Number) to the serial number.
  • the coefficients and the like of the polynomial function G may be changed according to, for example, the road surface condition (paved road, gravel road), the weather (fine weather, rainfall, snowfall) or the like.
  • the obstacle sensor 321 described in the above embodiment detects, for example, the type of obstacle (for example, the type that distinguishes a person from an object other than a person, etc.), and the sensor ECU 320 detects the type of obstacle
  • a data frame including obstacle information to be shown may be transmitted to the bus 30.
  • the receiving units 111 and 2111 receive the data frame including the obstacle information from the bus 30, and the control units 130 and 2130 perform the brake according to the type indicated by the obstacle information received by the receiving units 111 and 2111.
  • the contents of the predetermined calculation F (V, L) relating to the predetermined condition C for determining that the control instruction is incorrect may be changed.
  • the data frame of the brake control instruction includes the designation of the deceleration amount.
  • the designation of the deceleration amount may not necessarily be included.
  • the data frame of the brake control instruction may include designation of activating the brake or designation of suppressing the actuation of the brake. In this case, in determining whether or not the brake control instruction is incorrect, designation of activating the brake may be handled in the same manner as, for example, maximum designation of the amount of deceleration, and designation of suppressing actuation of the brake. May be treated in the same manner as, for example, designation of the deceleration amount zero.
  • the standard ID format (see FIG. 2) is shown as the format for the data frame in the CAN protocol, but the extended ID format may be used, and the ID (message ID) of the data frame is , And an extended ID in the extended ID format.
  • the CAN protocol described in the above embodiment may have a broad meaning including derivative protocols such as TT-CAN (Time-Triggered CAN) and CAN-FD (CAN with Flexible Data Rate).
  • the function sharing of the various components provided in the control systems 10 and 11 described in the above embodiments is merely an example, and the sharing can be changed. Further, a part of the functions of the control unit 130 and the like in the security ECU 100 may be shared by an apparatus (for example, a server apparatus outside the vehicle 20) capable of communicating with the security ECU 100.
  • each ECU in the above embodiment is a device including, for example, a digital circuit such as a processor and a memory, an analog circuit, a communication circuit, etc., hardware such as a hard disk device, a display, a keyboard, and a mouse A component may be included. Further, each device shown in the above embodiment realizes its function by dedicated hardware (digital circuit etc.) instead of the control program stored in the memory being executed by the processor to realize the function in software. You may do it.
  • a part or all of the components constituting each device in the above embodiment may be configured from one system LSI (Large Scale Integration: large scale integrated circuit).
  • the system LSI is a super-multifunctional LSI manufactured by integrating a plurality of components on one chip, and more specifically, is a computer system including a microprocessor, a ROM, a RAM and the like. .
  • a computer program is recorded in the RAM.
  • the system LSI achieves its functions by the microprocessor operating according to the computer program.
  • each part of the component which comprises each said apparatus may be integrated into 1 chip separately, and 1 chip may be integrated so that one part or all may be included.
  • a system LSI may be called an IC, an LSI, a super LSI, or an ultra LSI depending on the degree of integration.
  • the method of circuit integration is not limited to LSI's, and implementation using dedicated circuitry or general purpose processors is also possible.
  • a programmable field programmable gate array FPGA
  • a reconfigurable processor that can reconfigure connection and setting of circuit cells in the LSI may be used.
  • FPGA field programmable gate array
  • a reconfigurable processor that can reconfigure connection and setting of circuit cells in the LSI may be used.
  • integrated circuit technology comes out to replace LSI's as a result of the advancement of semiconductor technology or a derivative other technology, it is naturally also possible to carry out function block integration using this technology. Application of biotechnology etc. may be possible.
  • the IC card or module is a computer system including a microprocessor, a ROM, a RAM, and the like.
  • the IC card or module may include the above-described ultra-multifunctional LSI.
  • the IC card or module achieves its functions by the microprocessor operating according to the computer program. This IC card or this module may be tamper resistant.
  • One aspect of the present disclosure may be, for example, a control method including all or part of the processing procedure shown in FIGS. 8 to 10, 13 to 15, and the like.
  • the control method includes a receiving step (for example, steps S13 and S23) of receiving a brake control instruction from a bus 30 used by the plurality of ECUs in the vehicle 20 for communication, and the vehicle 20 when receiving the brake control instruction in the receiving step.
  • a control step eg, steps S15 to S16, S25 to S26
  • a computer program that implements processing relating to this control method by a computer may be used, or a digital signal formed of a computer program may be used.
  • the process related to this control method is, for example, a fraud detection process including a receiving step (for example, steps S13 and S23) and a determining step (for example, steps S15 and S25).
  • the brake control instruction is received from the bus 30 used by the plurality of ECUs in the vehicle 20 for communication.
  • the brake control instruction is incorrect depending on the distance between the vehicle 20 and the obstacle when the brake control instruction is received in the reception step and whether or not a predetermined condition for the speed of the vehicle 20 is satisfied. It determines (detects) whether it is or not.
  • a computer program or a storage medium which can read a digital signal by a computer, such as a flexible disk, a hard disk, a CD-ROM, an MO, a DVD, a DVD, a DVD-ROM, a DVD-RAM, a BD (Blu It may be recorded on a -ray (registered trademark) Disc), a semiconductor memory or the like.
  • digital signals may be recorded on these storage media.
  • a computer program or a digital signal may be transmitted via a telecommunication line, a wireless or wired communication line, a network typified by the Internet, data broadcasting, or the like.
  • a computer system including a microprocessor and a memory
  • the memory may store the computer program
  • the microprocessor may operate according to the computer program.
  • it may be implemented by another independent computer system by recording and transferring the program or digital signal in a storage medium, or by transferring the program or digital signal via a network or the like.
  • the present disclosure can be used to combat attacks that transmit a frame of unauthorized brake control instructions to a network of mobiles, such as vehicles that require a brake.
  • Control system 20
  • Vehicle 30 Bus 100 Security ECU (control device) DESCRIPTION OF SYMBOLS 110 Communications part 111, 2111 Reception part 112 Transmission part 120 Storage part 130, 2130 Control part 131 Determination part 132 Error frame transmission control part 200, 2200 Brake ECU 201 brake 210 communication unit 220 data buffer 230 control processing unit (brake control unit) 310 Emergency brake ECU 320 sensor ECU 321 Obstacle sensor (detection device) 322 Speed Sensor 330 Engine ECU 331 Engine 390 Port for diagnosis 2100 Controller 2133 Transfer unit

Landscapes

  • Engineering & Computer Science (AREA)
  • Mechanical Engineering (AREA)
  • Transportation (AREA)
  • Automation & Control Theory (AREA)
  • Human Computer Interaction (AREA)
  • Combustion & Propulsion (AREA)
  • Chemical & Material Sciences (AREA)
  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Regulating Braking Force (AREA)
  • Small-Scale Networks (AREA)

Abstract

制御装置は、受信部と、制御部とを有する。受信部は、移動体において複数の電子制御ユニットが通信に用いるバスからブレーキ制御指示を受信する。制御部は、受信部がブレーキ制御指示を受信した際、移動体と障害物との距離及び移動体の速度が、ブレーキ制御指示の無効化のための所定条件を満たす場合、ブレーキ制御指示を無効化又は破棄する制御を行う。

Description

制御装置、制御システム、制御方法、制御プログラムおよび記憶媒体
 本開示は、例えば車両に搭載される電子制御ユニットが通信を行う車載ネットワークにおいて送信されるブレーキ制御指示メッセージについての不正に対処するためのセキュリティ技術に関する。
 近年、自動車の中のシステムには、電子制御ユニット(ECU:Electronic Control Unit)と呼ばれる装置が多数配置されている。これらのECUをつなぐネットワークは車載ネットワークと呼ばれる。車載ネットワークには、多数の規格が存在する。その中でも最も主流な車載ネットワークの一つに、ISO11898-1で規定されているCAN(Controller Area Network)という規格が存在する。
 CANでは、通信路は2本のワイヤで構成されたバス(CANバス)であり、バスに接続されているECUはノードと呼ばれる。CANバスに接続されている各ノードは、フレーム(メッセージ)を送受信する。フレームを送信する送信ノードは、2本のバスに電圧をかけ、バス間で電位差を発生させることによって、レセシブと呼ばれる「1」の値と、ドミナントと呼ばれる「0」の値を送信する。複数の送信ノードが全く同一のタイミングで、レセシブとドミナントを送信した場合は、ドミナントが優先されて送信される。受信ノードは、受け取ったフレームのフォーマットに異常がある場合には、エラーフレームと呼ばれるフレームを送信する。エラーフレームは、ドミナントを6bit連続して送信することで、送信ノードや他の受信ノードにフレームの異常を通知する。
 またCANでは、送信先や送信元を指す識別子は存在せず、送信ノードはフレーム毎に、メッセージIDと呼ばれるIDを付けて送信し(つまりバスに信号を送出し)、各受信ノードは予め定められたメッセージIDのみを受信する(つまりバスから信号を読み取る)。また、CANでは、CSMA/CA(Carrier Sense Multiple Access/Collision Avoidance)方式を採用しており、複数ノードの同時送信時にはメッセージIDによる調停が行われ、メッセージIDの値が小さいフレームが優先的に送信される。自動車の中のシステムにおいては、多数のECUそれぞれは、様々なフレームの授受を行う。例えば、各ECUがフレームを授受して他のECUと連携することで、先進運転者支援システム(ADAS:Advanced Driver Assistance System)の衝突回避支援機能等が実現される。衝突回避支援機能では、例えば、ブレーキを制御するブレーキECU、障害物の検知等を行うセンサECU、障害物に衝突する恐れを検知してブレーキ制御指示のフレームを出す緊急ブレーキECU等が連携する。
 ところで、CANバスに不正なノードを接続すること、或いは、携帯情報端末、車外の通信装置等と通信する機能を有するECU等を攻撃して不正なノードに変化させること等により、攻撃者が、攻撃フレームをCANバスに送信して、自動車を不正にコントロールする脅威が存在する。攻撃フレームは、不正な攻撃者によってCANバスに送信されたフレームであり、車載ネットワークの正常状態において本来は送信されないフレーム(不正なフレーム)である。例えば、攻撃者により、走行中の車両の前方に障害物がない状態で、急ブレーキを発動させるようなブレーキ制御指示のフレームがCANバスに送信されると、その車両の急停止により乗員の負傷、後続車両の衝突等の事故が生じ得る。
 このような攻撃フレームを検知して防御する技術として、車載ネットワークにおいて周期的に送信されるべきメッセージIDのフレームについて、想定される周期を予め登録しておき、想定周期に基づいて不正か否かの判別を行う技術が知られている(特許文献1参照)。しかし、特許文献1の技術では、攻撃者が正規のECUのフレーム送信周期に合わせてフレームを送信するような場合に対応できない。例えば、不正なフレームを正規のフレームの直前に受信した場合に、不正なフレームを検出できず、直後に続く正規のフレームを不正と誤って検出してしまう。
 また、従来、車載ネットワークで受信したフレームに係る車輪速の数値情報について、基準として定めた所定値より大きい場合には、異常であると判断する技術が知られている(特許文献2参照)。
特開2014-146868号公報 特開2008-114806号公報
 特許文献2の技術は、フレームの周期に依存せずに、受信したフレームに関して異常の判断を行うが、不正なブレーキ制御指示の攻撃フレームに適切に対処するためには有用ではない。
 本開示は、攻撃者により移動体におけるネットワーク(例えば車載ネットワーク)のバスに送信される不正なブレーキ制御指示の攻撃フレームに適切に対処する制御装置を提供する。また、本開示は、ブレーキ制御指示に係る不正なフレームに適切に対処する制御システム、制御方法、及び、その制御システムでブレーキ制御指示に係る不正なフレームに適切に対処するために用いられる制御プログラムを提供する。
 本開示の一態様に係る制御装置は、受信部と、制御部とを有する。受信部は、移動体において複数の電子制御ユニットが通信に用いるバスからこの移動体のブレーキを制御する指示(ブレーキ制御指示と称す)を受信する。制御部は、受信部がブレーキ制御指示を受信した際、移動体と障害物との距離及び移動体の速度が、ブレーキ制御指示の無効化のための所定条件を満たす場合、このブレーキ制御指示を無効化又は破棄する制御を行う。
 また、本開示の一態様に係る制御システムは、移動体に設けられるブレーキと、この移動体に対する障害物を検知する検知装置と、上記制御装置とを有する。
 また、本開示の一態様に係る制御方法では、移動体において複数の電子制御ユニットが通信に用いるバスからブレーキ制御指示を受信する。そして、ブレーキ制御指示を受信した際、移動体と障害物との距離及び移動体の速度が所定条件を満たす場合、ブレーキ制御指示を無効化又は破棄する。
 また、本開示の一態様に係る制御プログラムは、マイクロプロセッサを備える装置に不正検知処理を行わせるための制御プログラムである。この不正検知処理では、移動体において複数の電子制御ユニットが通信に用いるバスからブレーキ制御指示を受信する。そして、ブレーキ制御指示を受信した際、移動体と障害物との距離及び移動体の速度が所定条件を満たすか否かにより、このブレーキ制御指示が不正であるか否かを検知する。
 また、本開示の一態様に係る記憶媒体は、上記制御プログラムを記憶した一過性でない記憶媒体である。
 本開示によれば、攻撃者によりブレーキ制御指示に係る不正なフレーム(攻撃フレーム)の無効化が可能となり得る。
図1は、実施の形態1に係る制御システムの全体構成を示す図である。 図2は、CANプロトコルで規定されるデータフレームのフォーマットを示す図である。 図3は、CANプロトコルで規定されるエラーフレームのフォーマットを示す図である。 図4は、実施の形態1に係るブレーキECUの構成図である。 図5は、実施の形態1に係る緊急ブレーキECUが送信するブレーキ制御指示に係るフレームのデータフィールドの一例を示す図である。 図6は、実施の形態1に係るセキュリティECU(制御装置)の構成図である。 図7は、実施の形態1に係るブレーキ制御指示の不正判別の条件について説明するための図である。 図8は、図6に示すセキュリティECUにおける制御処理を示すフローチャートである。 図9は、実施の形態1におけるブレーキ制御に係る処理シーケンスの一例を示す図である。 図10は、実施の形態1におけるブレーキ制御に係る処理シーケンスの一例を示す図である。 図11は、実施の形態2に係る制御システムの全体構成を示す図である。 図12は、実施の形態2に係るブレーキECUの構成図である。 図13は、図12に示すブレーキECUにおける制御処理を示すフローチャートである。 図14は、実施の形態2におけるブレーキ制御に係る処理シーケンスの一例を示す図である。 図15は、実施の形態2におけるブレーキ制御に係る処理シーケンスの一例を示す図である。
 本開示の実施の形態の説明に先立ち、本開示の基礎となる知見等を簡単に説明する。
 車両の先進運転者支援システムは、障害物に車両が衝突することを回避するための緊急ブレーキECUを有する。緊急ブレーキECUは、障害物の検知等を行うセンサECUから取得した情報等に基づいて、概ね衝突直前にブレーキ制御指示(つまりブレーキ制御指示のフレーム)をCANバスに送信する。そのブレーキ制御指示に従って、ブレーキECUがブレーキを制御することで、衝突の前に車両が停止する。なお、ブレーキ制御指示の内容として、例えばブレーキを作動させる指定の他に、ブレーキの作動を抑止させる指定等がある。
 攻撃者により、不正なブレーキ制御指示の攻撃フレーム(不正なフレーム)が送信され、その不正なブレーキ制御指示が、緊急ブレーキECUが送信する適正なブレーキ制御指示と相違する内容である場合においては、車両等の事故につながる可能性がある。適正なブレーキ制御指示は、車両の進行方向における障害物と車両との距離、及び、車両の速度に対応した内容となるべきである。そこで、CANバスに送信されたブレーキ制御指示が、車両の走行状況に応じた適正なブレーキ制御指示か、これと相違する内容の不正なブレーキ制御指示かを、車両の進行方向の障害物と車両との距離、及び、車両の速度(例えば車両と障害物との相対速度或いは絶対速度)に基づいて判別する方法に想到した。なお、車両は一例であり、車両その他を含む移動体にもこの方法を適用し得る。本開示の一態様に係る制御システム等では、その方法により不正なブレーキ制御指示を判別し、不正なブレーキ制御指示であれば無効化することで、そのブレーキ制御指示に従ってブレーキ制御がなされないようにする。これにより、攻撃フレームによって事故が引き起こされることの防止が可能となる。
 本開示の一態様に係る制御装置は、受信部と、制御部とを有する。受信部は、移動体において複数の電子制御ユニットが通信に用いるバスからこの移動体のブレーキを制御する指示(ブレーキ制御指示と称す)を受信する。制御部は、受信部がブレーキ制御指示を受信した際、移動体と障害物との距離及び移動体の速度が、ブレーキ制御指示の無効化のための所定条件を満たす場合、ブレーキ制御指示を無効化又は破棄する制御を行う。これにより、移動体(例えば車両)と障害物(例えば歩行者、他の車両、建築物等)との距離、及び、移動体の速度に基づいて不正なブレーキ制御指示を無効化又は破棄することが可能となる。無効化は広義にはブレーキ制御指示が有効に作用しないようにすることである。但し、ここではブレーキ制御指示をバス上において有効に作用しないようにする(例えば後述するエラーフレームによる上書きによって改変する)ことを無効化と称し、バスからブレーキ制御指示がECUに受信された後においてそのブレーキ制御指示を有効に作用しないようにすることを破棄と称する。破棄は、ブレーキ制御指示に従ったブレーキの制御を抑止することを含む。
 また、例えば、上記速度は、障害物に対する移動体の相対速度であることとしてもよい。これにより、障害物が移動している場合においても、ブレーキ制御指示が不正か否か(つまり無効化制御の対象であるか否か)を適切に判別可能となる。
 また、例えば、制御部は、上記距離と上記速度とに基づく所定演算の結果と閾値とを比較することにより上記距離及び上記速度が所定条件を満たすか否かを判別することとしてもよい。これにより、所定演算及び閾値を適切に定めておくことで、不正なブレーキ制御指示に対する適切な対処が可能となる。
 また、例えば、ブレーキ制御指示は、ブレーキによる減速量の指定を含み、制御部は、ブレーキ制御指示が最大の減速量の指定を含む場合、所定演算の結果が第1閾値より大きいことを所定条件として用いてもよい。一方、ブレーキ制御指示が減速量としてゼロの指定を含む場合、所定演算の結果が第1閾値以下の第2閾値より小さいことを所定条件として用いてもよい。これにより、ブレーキを作動させるべき状況においてその作動の抑止を指示するような不正なブレーキ制御指示、或いは、ブレーキを作動させるべきでない状況においてブレーキの作動を指示するような不正なブレーキ制御指示を、無効化することが可能となる。
 また、例えば、第2閾値は、第1閾値より小さくてもよい。これにより、ブレーキの作動を指示するブレーキ制御指示とブレーキの作動の抑止を指示するブレーキ制御指示との両方が必ずしも不正ではない状況(障害物と移動体の距離及び移動体の速度に係る状況)に適切に対応することが可能となる。
 また、例えば、複数の電子制御ユニットは、ブレーキ制御指示をバスに送信する緊急ブレーキ電子制御ユニットを含んでもよい。そして、所定演算は、緊急ブレーキ電子制御ユニットからバスに送信された正常な状態のブレーキ制御指示が減速量としてゼロより大きい量の指定を含む場合、所定演算の結果が、第1閾値以下かつ第2閾値以上となるように定められていてもよい。これにより、緊急ブレーキECUが正常な状態である場合(つまり攻撃者に支配された状態や故障した状態でない場合)において送信するブレーキ制御指示の無効化が、抑止される。
 また、例えば、所定演算は、定められた係数と上記速度との積を距離から減算する演算であり、第1閾値は0であってもよい。これにより、比較的簡易な演算を用いて効率的に不正なブレーキ制御指示の無効化を実現することが可能となる。
 また、例えば、所定演算は、係数が定められた一変数の多項式関数の変数に上記速度を代入した結果を距離から減算する演算であることとしてもよい。これにより、多項式関数の係数を適切に定めておくことで、不正なブレーキ制御指示に対する適切な対処が可能となる。
 また、例えば、制御部は、移動体のブレーキによる制動距離に影響を与える移動体の構成要素の変化に応じて、所定演算の内容を変更してもよい。これにより、移動体の構成要素が変化した場合においても適切に不正なブレーキ制御指示を無効化することが可能となる。
 また、例えば、受信部は、移動体において検出された障害物の種別を示す障害物情報をバスから受信し、制御部は、障害物情報に応じて、所定演算の内容を変更してもよい。これにより、人、物体等といった障害物の種別に応じて緊急ブレーキECUがブレーキを作動させるべきタイミング等を変化させるようなシステムにおいて、適切に不正なブレーキ制御指示を無効化することが可能となる。
 また、例えば、制御部は、ブレーキ制御指示がブレーキの作動の指示である場合、上記速度に対する距離の比が予め定められた閾値を超えることを所定条件として用いてもよい。これにより、ブレーキの作動を指示するブレーキ制御指示が不正か否か(つまり無効化制御の対象であるか否か)を適切に判別可能となる。
 また、例えば、所定条件は、移動体の車種に対応して定められていることとしてもよい。これにより、車種毎のブレーキ性能等に応じて、ブレーキ制御指示が不正か否かを適切に判別することが可能となる。
 また、例えば、受信部は、移動体において測定された、距離及び速度の測定結果を示す測定情報をバスから受信し、制御部は、この測定情報から特定した距離及び速度に基づいて、距離及び速度が所定条件を満たすか否かを判別してもよい。これにより、制御装置は、バスから距離及び速度の取得が可能となるので、センサと専用の通信路で通信するための通信回路、或いは、センサを有する必要がなくなる。
 また、例えば、複数の電子制御ユニットは、CAN(Controller Area Network)プロトコルに従ってバスを介して通信を行ってもよい。この場合、受信部は、ブレーキ制御指示を含むデータフレームを受信する。そして、制御部は、受信部がデータフレームを受信した際、距離及び速度が所定条件を満たす場合、データフレームを無効化するエラーフレームを送信する制御を行うこととしてもよい。これにより、ブレーキECUの構成を新たなものにする必要がなくなり、例えば従来同様のブレーキECUが接続されたバスに制御装置を接続することで、不正なブレーキ制御指示によってブレーキECUが不正な制御を行うことが抑制される。
 また、例えば、制御装置は、複数の電子制御ユニットに含まれる移動体のブレーキを制御する電子制御ユニットであってもよい。そして制御部は、距離及び速度が所定条件を満たさない場合、ブレーキ制御指示に従って、ブレーキを制御してもよい。一方、距離及び速度が所定条件を満たす場合、制御部は、ブレーキ制御指示に従ったブレーキの制御を抑止することでブレーキ制御指示を破棄する制御を行ってもよい。これにより、ブレーキECUにおいて不正なブレーキ制御指示に適切に対処することが可能となる。
 また、例えば、複数の電子制御ユニットは、記憶媒体と、この記憶媒体に格納された情報に従ってブレーキを制御するブレーキ制御部とを有するブレーキ電子制御ユニットを含んでもよい。そして、記制御装置は、ブレーキ電子制御ユニットに含まれ、制御部は、距離及び速度が所定条件を満たさない場合、ブレーキ制御指示を示す情報を記憶媒体に格納してもよい。一方、距離及び速度が所定条件を満たす場合、制御部は、ブレーキ制御指示を示す情報を記憶媒体に格納しないことでブレーキ制御指示を破棄する制御を行ってもよい。これにより、ブレーキECUにおいてブレーキ制御指示を適切にフィルタリングすることが可能となる。
 また、本開示の一態様に係る制御システムは、移動体に設けられるブレーキと、この移動体に対する障害物を検知する検知装置と、上記のいずれかの制御装置とを有する。これにより、移動体と障害物との距離、及び、移動体の速度に基づいて不正なブレーキ制御指示を無効化することが可能となる。
 また、本開示の一態様に係る制御方法では、移動体において複数の電子制御ユニットが通信に用いるバスからブレーキ制御指示を受信する。そして、ブレーキ制御指示を受信した際、移動体と障害物との距離及び移動体の速度が所定条件を満たす場合、ブレーキ制御指示を無効化又は破棄する。これにより、移動体と障害物との距離、及び、移動体の速度に基づいて不正なブレーキ制御指示を無効化することが可能となる。
 また、本開示の一態様に係る制御プログラムは、マイクロプロセッサを備える装置に不正検知処理を行わせるための制御プログラムである。この不正検知処理では、移動体において複数の電子制御ユニットが通信に用いるバスからブレーキ制御指示を受信する。そして、ブレーキ制御指示を受信した際、移動体と障害物との距離及び移動体の速度が所定条件を満たすか否かにより、このブレーキ制御指示が不正であるか否かを検知する。この制御プログラムを、プロセッサ(マイクロプロセッサ)を備える装置にインストールすることにより、そのプロセッサが制御プログラムを実行することで、バス上に現れたブレーキ制御指示が不正であるか否かを適切に判別することが可能となる。
 なお、これらの全般的又は具体的な態様は、システム、方法、集積回路、コンピュータプログラム又はコンピュータで読み取り可能なCD-ROM等の記憶媒体で実現されても良く、システム、方法、集積回路、コンピュータプログラム又は記憶媒体の任意な組み合わせで実現されてもよい。すなわち、本開示の一態様に係る記憶媒体は、上記制御プログラムを記憶した一過性でない記憶媒体である。
 以下、実施の形態に係る制御方法を用いる制御システム等について、図面を参照しながら説明する。ここで示す実施の形態は、いずれも本開示の一具体例を示すものである。従って、以下の実施の形態で示される数値、構成要素、構成要素の配置及び接続形態、並びに、ステップ(工程)及びステップの順序等は、一例であって本開示を限定するものではない。以下の実施の形態における構成要素のうち、独立請求項に記載されていない構成要素については、任意に付加可能な構成要素である。また、各図は、模式図であり、必ずしも厳密に図示されたものではない。
 (実施の形態1)
 以下、本開示の実施の一態様として、移動体の一例としての車両において車載ネットワークを構成するバス(CANバス)に送信された不正なブレーキ制御指示に係るフレームを無効化するセキュリティECU(制御装置)を備える制御システムについて、図面を参照しながら説明する。
 [1.1 制御システム10の構成]
 図1は、実施の形態1に係る制御システム10の全体構成を示す図である。
 制御システム10は、主として車両20における車載ネットワークシステムで構成され、図1に例示するように、車両20に搭載された各種ECU(セキュリティECU100、ブレーキECU200、緊急ブレーキECU310、センサECU320、及び、エンジンECU330)と、バス(CANバス)30とを含んで構成される。なお、車両20における車載ネットワークシステムには、セキュリティECU100、ブレーキECU200、緊急ブレーキECU310、センサECU320、及び、エンジンECU330以外にいくつものECUが含まれ得るが、図1では省略して一部のECUのみを示している。また、制御システム10が、車両20におけるいずれかのECUと通信する車両外部のサーバ装置等を含んでもよい。
 ECUは、例えば、プロセッサ(マイクロプロセッサ)、メモリ等のデジタル回路、アナログ回路、通信回路等を含む装置である。メモリは、ROM(Read Only Memory)、RAM(Random Access Memory)等であり、プロセッサにより実行される制御プログラム(ソフトウェアとしてのコンピュータプログラム)を記憶することができる。例えばプロセッサが、制御プログラム(コンピュータプログラム)に従って動作することにより、ECUは各種機能を実現することになる。なお、コンピュータプログラムは、所定の機能を達成するために、プロセッサに対する指令を示す命令コードが複数個組み合わされて構成されたものである。ECUは、CANプロトコルに従って車両内のバス30を介してフレームの授受を行い得る。
 一部のECUは、バス30以外の通信路によりセンサ、アクチュエータ、ユーザインタフェース装置等の各種機器と接続されている。例えば、ブレーキECU200は、ブレーキ201に接続され、ブレーキ201を制御する。また、エンジンECU330は、エンジン331に接続され、エンジン331を制御する。また、センサECU320は、障害物センサ321及び速度センサ322に接続され、各センサで測定された測定情報を表すフレーム(データフレーム)を周期的にバス30に送信する。車載ネットワークシステムにおいて、個々のセンサ毎に対応してセンサECU320が複数存在してもよいが、ここでは便宜上、複数のセンサそれぞれで測定された測定情報を表すフレームを送信し得る1つのセンサECU320が存在するものとして説明する。障害物センサ(検知装置)321は、車両20の進行方向における障害物を検知し、車両20と障害物との距離等を測定するセンサである。速度センサ322は、車両20の速度を検知するセンサであり、例えば車両20の絶対速度を検知し得るが、ここでは障害物センサ321が検知した障害物に対する車両20の相対速度を検知するものとして説明する。なお、車両20の絶対速度は、障害物が移動しない場合については、障害物に対する車両の相対速度に等しい。
 緊急ブレーキECU310は、先進運転者支援システムとしての衝突回避支援機能等を担うECUである。緊急ブレーキECU310は、ブレーキECU200のブレーキ制御を要求するために、センサECU320から取得した測定情報等に基づいて、ブレーキ制御指示のフレームをバス30に周期的に送信する。なお、緊急ブレーキECU310は、例えばセンサECU320と一体化する等により、バス30を介さずに各センサからの測定情報等を直接取得することとしてもよい。緊急ブレーキECU310は、例えば、概ね衝突直前にはブレーキを作動させることを要求する指定を内容とするブレーキ制御指示のフレームをバス30に送信する。
 診断用ポート390は、OBD2(On-Board Diagnostics2)等のバス30に接続された端子であり、診断用ポート390を介して、診断ツール(故障診断ツール)等の機器によるバス30へのアクセスが可能となる。攻撃者は、例えば診断用ポート390等を介して、不正なブレーキ制御指示のフレーム(データフレーム)をバス30に注入(送信)する可能性がある。
 セキュリティECU100は、車載ネットワークシステムのセキュリティを確保するための機能を担うECUである。セキュリティECU100は、バス30に流れるフレームを監視し、バス30上に現れた不正なブレーキ制御指示に係るデータフレームを、エラーフレームの送信により無効化する装置であり、不正なブレーキ制御指示の攻撃フレームに適切に対処する制御装置としての機能を有する。なお、セキュリティECU100は、不正なブレーキ制御指示のみならずその他の不正なデータフレームを一定条件下で無効化する機能を有してもよい。
 [1.2 データフレームフォーマット]
 以下、CANプロトコルに従ったネットワークで用いられるフレームの1つであるデータフレーム(メッセージ)について説明する。
 図2は、CANプロトコルで規定されるデータフレームのフォーマットを示す図である。図2には、CANプロトコルで規定される標準IDフォーマットにおけるデータフレームを示している。データフレームは、SOF(Start Of Frame)、IDフィールド、RTR(Remote Transmission Request)、IDE(Identifier Extension)、予約ビット「r」、DLC(Data Length Code)、データフィールド、CRC(Cyclic Redundancy Check)シーケンス、CRCデリミタ「DEL」、ACK(Acknowledgement)スロット、ACKデリミタ「DEL」、及び、EOF(End Of Frame)のフィールドで構成される。
 SOFは、1bitのドミナントで構成される。バスがアイドルの状態はレセシブになっており、SOFによりドミナントへ変更することでフレームの送信開始を通知する。
 IDフィールドは、11bitで構成される、データの種類を示す値であるID(メッセージID)を格納するフィールドである。複数のノードが同時に送信を開始した場合、このIDフィールドで通信調停を行うために、IDが小さい値を持つフレームが高い優先度となるよう設計されている。
 RTRは、データフレームとリモートフレームとを識別するための値であり、データフレームにおいてはドミナント1bitで構成される。
 IDEと「r」とは、両方ドミナント1bitで構成される。
 DLCは、4bitで構成され、データフィールドの長さを示す値である。なお、IDE、「r」及びDLCを合わせてコントロールフィールドと称する。
 データフィールドは、最大64bitで構成される送信するデータの内容を示す値である。8bit毎に長さを調整できる。送られるデータの仕様については、CANプロトコルで規定されておらず、車載ネットワークシステムにおいて定められる。従って、車種、製造者(製造メーカ)等に依存した仕様となる。
 CRCシーケンスは、15bitで構成される。CRCシーケンスは、SOF、IDフィールド、コントロールフィールド及びデータフィールドの送信値より算出される。
 CRCデリミタは、1bitのレセシブで構成されるCRCシーケンスの終了を表す区切り記号である。なお、CRCシーケンス及びCRCデリミタを合わせてCRCフィールドと称する。
 ACKスロットは、1bitで構成される。送信ノードはACKスロットをレセシブにして送信を行う。受信ノードはCRCシーケンスまで正常に受信ができていればACKスロットをドミナントとして送信する。レセシブよりドミナントが優先されるため、送信後にACKスロットがドミナントであれば、送信ノードは、いずれかの受信ノードが受信に成功していることを確認できる。
 ACKデリミタは、1bitのレセシブで構成されるACKの終了を表す区切り記号である。
 EOFは、7bitのレセシブで構成されており、データフレームの終了を示す。
 [1.3 エラーフレームフォーマット]
 図3は、CANプロトコルで規定されるエラーフレームのフォーマットを示す図である。エラーフレームは、エラーフラグ(プライマリ)と、エラーフラグ(セカンダリ)と、エラーデリミタとから構成される。
 エラーフラグ(プライマリ)は、エラーの発生を他のノードに知らせるために使用される。エラーを検知したノードはエラーの発生を他のノードに知らせるために6bitのドミナントを連続で送信する。この送信は、CANプロトコルにおけるビットスタッフィングルール(連続して同じ値を6bit以上送信しない)に違反し、他のノードからのエラーフレーム(セカンダリ)の送信を引き起こす。
 エラーフラグ(セカンダリ)は、エラーの発生を他のノードに知らせるために使用される連続した6ビットのドミナントで構成される。エラーフラグ(プライマリ)を受信してビットスタッフィングルール違反を検知した全てのノードがエラーフラグ(セカンダリ)を送信する。
 エラーデリミタ「DEL」は、8bitの連続したレセシブであり、エラーフレームの終了を示す。
 [1.4 ブレーキECU200の構成]
 図4は、ブレーキECU200の構成図である。ブレーキ201を制御するためのブレーキECU200は、通信部210と、データバッファ220と、制御処理部(ブレーキ制御部)230とを含んで構成される。
 通信部210は、バス30での通信の制御を担う集積回路(例えば通信回路、メモリ、プロセッサ等)である。通信部210は、例えば、機能的な構成要素としてフレーム送受信機能部、受信フレーム解釈機能部等を有する。フレーム送受信機能部では、例えば、バス30に対してCANプロトコルに従ってフレームの送受信(フレームの1bitずつの逐次送受信)を行う。また、受信フレーム解釈機能部では、フレーム送受信機能部で受信したフレームの値を、CANプロトコルで規定されているフレームフォーマットにおける各フィールドにマッピングするよう解釈を行う。受信フレーム解釈機能部では、IDフィールドと判断した値が、ブレーキECU200が受信すべきID(メッセージID)か否かを判別し、受信すべきIDでなければそのフレームの解釈を中止する。受信フレーム解釈機能部では、例えば、CRCの値が合わなかったり、ドミナント固定とされている項目がレセシブだったりする等、CANプロトコルに則っていないフレームと判断した場合は、エラーフレームを送信するよう制御する。また、受信フレーム解釈機能部では、エラーフレームを受信した場合、つまり受け取ったフレームにおける値からエラーフレームになっていると解釈した場合には、それ以降はそのフレームを破棄する、つまりフレームの解釈を中止する。受信フレーム解釈機能部は、受信すべきIDと判別されたフレームの内容(ID、データフィールドのデータ等)を、データバッファ220に格納する。制御システム10における車載ネットワークシステムで予め定められている、ブレーキ制御指示を示すデータフレームのIDは、通信部210の受信フレーム解釈機能部において受信すべきIDと判別される。
 データバッファ220は、メモリ、レジスタ等といった記憶媒体の一記憶領域である。データバッファ220には、通信部210により受信された、受信すべきIDのフレームの内容としてのID、データフィールドのデータ等を示す情報(例えば、ブレーキ制御指示を示す情報)が格納される。バス30上への複数ノードからのデータフレームの同時送信時にはIDによる通信調停が行われる。このため、緊急ブレーキECU310が送信するブレーキ制御指示に係るデータフレームのブレーキECU200によるバス30からの受信タイミングは、必ずしも一定周期(例えば50ms等)と正確に一致するとは限らず、その一定周期から多少ずれることもある。ブレーキECU200において、このような通信調停での受信タイミングの変動に対応して、受信したデータフレームを効率的に処理すべく、データバッファ220が用いられる。
 制御処理部230は、データバッファ220に格納されたフレームの内容(ブレーキ制御指示等を示す情報)を、周期的に或いは一定条件(データバッファ220へのフレーム格納に関連した条件等)が成立した場合等に取得し、その取得した情報が示すブレーキ制御指示に従って、ブレーキ201に対して制御信号を送信することでブレーキ201を制御する。
 なお、ブレーキECU200以外の、アクチュエータを制御し得るECU(例えばエンジンECU330等)も、ブレーキECU200と同様に、通信部、データバッファ、及び、アクチュエータの制御のための制御処理部を備える。また、センサと接続されたセンサECU320については、センサでの測定結果を取得して予め定められたメッセージIDを付してその測定結果を示す測定情報をデータフィールド内に含むデータフレームを生成する処理部と、そのデータフレームをCANプロトコルに従ってバス30に送信するための通信部等を備える。この測定情報は、車両20と障害物との距離、及び、車両20の障害物に対する相対速度に関する測定結果を示す。
 [1.5 ブレーキ制御指示]
 図5は、緊急ブレーキECU310が送信するブレーキ制御指示に係るフレームのデータフィールドの一例を示す図である。ブレーキ制御指示のフレームのデータフィールドには、ブレーキ201による減速量(つまりブレーキ201での減速を要求する減速要求量)の指定が含まれ、図5では、その減速量の内容の例を示している。なお、ブレーキ制御指示のフレームのデータフィールドには減速量以外の情報(例えば有効、無効の別を示すフラグ等)が付加されていてもよいが、ここでは便宜上、減速量のみが含まれていることとして説明する。減速量自体がデータフィールド内の値(データ値)と必ずしも一致する必要はない。減速量は、例えば1Byteで表され、値255により減速量ゼロ(0)が表され、値55により、減速量の最大量(例えば100)が表される。
 緊急ブレーキECU310から、ゼロ(0)より大きい減速量の指定を含むブレーキ制御指示が送信された場合に、ブレーキECU200では、ブレーキ制御指示の減速量に従ってブレーキ201を作動させる。即ち、ブレーキECU200では、ブレーキ制御指示の減速量が大きいほど強い効き(大きな制動力)となるようにブレーキ201を作動させる。具体的には、ブレーキ制御指示の減速量が最大量(例えば100)である場合には、ブレーキECU200の制御処理部230は、所謂フルブレーキングに相当する最大の制動力でブレーキ201の作動がなされるようにブレーキ201を制御する。また、緊急ブレーキECU310から、減速量としてゼロの指定を含むブレーキ制御指示が送信された場合に、ブレーキECU200の制御処理部230では、ブレーキ制御指示によってのブレーキ201の作動を抑止する。なお、ブレーキECU200において、例えば車両20の運転者のブレーキペダルの操作に応じたブレーキ201の制御を行っている場合には、その操作に応じた制御を、ブレーキ201の作動の抑止の制御より優先させ得る。
 [1.6 セキュリティECU100の構成]
 図6は、セキュリティECU100の構成図である。セキュリティECU100は、バス30に流れるフレームを監視し、バス30上に現れた不正なブレーキ制御指示に係るデータフレームを、エラーフレームの送信により無効化する制御装置としての機能を有する。この機能の実現のために、セキュリティECU100は、通信部110と、記憶部120と、制御部130とを含んで構成される。これらの各構成要素の各機能は、例えばセキュリティECU100における通信回路、メモリ等の記憶媒体、メモリに格納された制御プログラムを実行するプロセッサ或いはデジタル回路等により実現される。
 通信部110は、通信回路、制御プログラムを実行するプロセッサ等により実現される。通信部110は、CANプロトコルに従ってバス30に対するフレームの送受信(フレームの1bitずつの逐次送受信)を行うための受信部111及び送信部112を含む。受信部111は、バス30からフレーム(例えばブレーキ制御指示に係るデータフレーム、測定情報を含むデータフレーム等)を受信する。通信部110は、受信部111によりバス30からフレームを受信すると、フレームからCANプロトコルで規定されているフレームフォーマットにおける各フィールドにマッピングするよう解釈を行うことで、ID(メッセージID)、DLC、データフィールドのデータのそれぞれを区別して抽出する。通信部110は、抽出したIDが、制御システム10における車載ネットワークシステムで予め定められている、ブレーキ制御指示を示すデータフレームのID、或いは、センサECU320から送信される測定情報を示すデータフレームのID等の受信すべきIDであるか否かを判別する。通信部110は、受信すべきIDでなければそのフレームの解釈を中止する。通信部110は、受信部111が受信した、受信すべきIDであるフレームの内容(ID、データ等)を、記憶部120に格納する。また、通信部110は、制御部130からのエラーフレームの送信指示を受けて、送信部112によりエラーフレームをバス30に送信する。
 記憶部120は、受信部111により受信されたフレームの内容を格納するためのメモリ等の記憶媒体の一記憶領域である。記憶部120には、例えば、センサECU320から逐次送信される測定情報が逐次格納される。測定情報は、車両20におけるセンサにより測定された測定結果としての、車両20と障害物との距離及び車両20の障害物に対する相対速度を示す。
 制御部130は、制御プログラムを実行するプロセッサ等により実現され、一定条件下でブレーキ制御指示のデータフレームを無効化する無効化制御を行う機能を担う。制御部130は、判別部131及びエラーフレーム送信制御部132を含む。
 判別部131は、受信部111がブレーキ制御指示のデータフレームを受信した際における車両20と障害物との距離、及び、車両20の速度についての所定条件が満たされるか否かにより、ブレーキ制御指示が不正か否か(つまりそのブレーキ制御指示のデータフレームを無効化すべきか否か)を判別する。判別部131は、受信部111により受信された測定情報に基づいて車両20と障害物との距離、及び、車両20の速度を特定し、特定した距離及び速度に基づいて所定条件が満たされるか否かを判別する。この判別は、ブレーキ制御指示のデータフレームの全体が受信部111によりバス30から受信されるまで(つまりデータフレームの終了前であり、例えばデータフィールドの受信直後或いはCRCシーケンスの受信直後等)に行われる。判別部131は、ブレーキ制御指示を不正と判別した場合には、その旨をエラーフレーム送信制御部132に通知する。判別部131は、受信部111がブレーキ制御指示のデータフレームを受信した際における車両20と障害物との距離、及び、車両20の速度として、記憶部120に逐次格納された測定情報のうちそのブレーキ制御指示のデータフレームを受信した際における最新の測定情報が示す車両20と障害物との距離、及び、車両20の速度(障害物に対する相対速度)を用いる。
 エラーフレーム送信制御部132は、判別部131により、ブレーキ制御指示が不正であると判別された場合において、バス30に現れているブレーキ制御指示のデータフレームを無効化するために、送信部112に、バス30にエラーフレームを送信させることで無効化制御を行う。このエラーフレーム送信制御部132による無効化制御は、ブレーキ制御指示のデータフレームの終了(EOF)の受信が完了するより前に、バス30にエラーフレームを送信することで実現される。無効化制御がなされると、ブレーキ制御指示のデータフレームの終了前のエラーフレームの送信により、バス30上でブレーキ制御指示のデータフレームは上書きされるので、ブレーキECU200においては、そのブレーキ制御指示のデータフレームが破棄され、そのブレーキ制御指示に従ったブレーキ制御が実行されない。
 [1.7 ブレーキ制御指示の不正判別]
 以下、上述のセキュリティECU100(制御装置)における制御部130の判別部131でのブレーキ制御指示が不正か否かの判別の方法について説明する。
 判別部131は、例えば、ブレーキ制御指示を受信した際における障害物と車両との距離L(m)と、障害物と車両との相対速度V(km/h)とについての所定条件Cが満たされた場合に、ブレーキ制御指示が不正であると判別する。具体例としては、判別部131は、距離Lと、相対速度Vとに基づく所定演算F(V,L)の結果と閾値とを比較することにより所定条件Cが満たされるか否かを判別する。
 より詳細な例としては、判別部131は、例えば、受信部111により受信されたブレーキ制御指示(つまり受信されたデータフレームに係るブレーキ制御指示)が減速量として最大量の指定を含む場合、所定演算F(V,L)の結果が第1閾値aより大きいことを所定条件Cとして用いる。また受信部111により受信されたブレーキ制御指示が減速量としてゼロの指定を含む場合、所定演算F(V,L)の結果が第1閾値a以下の第2閾値bより小さいことを所定条件Cとして用いる。これは、減速量を最大とするようにブレーキを作動させる旨のブレーキ制御指示が不正となるような状況においては、ブレーキの作動を抑止させる(減速量をゼロにする)旨のブレーキ制御指示は不正とならず、また、ブレーキの作動を抑止させる旨のブレーキ制御指示が不正となるような状況においては、減速量を最大とするようにブレーキを作動させる旨のブレーキ制御指示が不正とならないこと等を示す。なお、例えば第2閾値bは第1閾値aより小さいこととしてもよい。
 また、例えば、所定演算F(V,L)=L-G(V)であるとしてもよい。Gは、係数が定められた一変数の多項式関数である。多項式関数は1次関数であってもよいし、2次以上のn次関数であってもよい。この場合に、所定演算F(V,L)は、Gの変数に速度(相対速度V)を代入したG(V)を、距離Lから減算した値となる。
 更に、単純化した一例としては、所定演算F(V,L)=L-kVであることとしてもよい。ここでkは定められた係数である。
 図7は、ブレーキ制御指示の不正判別の条件について説明するための図である。図7では、正常な状態の緊急ブレーキECU310が、減速量としてゼロより大きい量の指定を含むブレーキ制御指示のデータフレームをバス30に送信した際における車両20と障害物との距離L(m)、及び、車両20の障害物に対する相対速度V(km/h)を測定した実験結果の分布を、グラフ上の点(黒菱形)で表している。上述した所定演算F(V,L)は、このような正常な状態の緊急ブレーキECU310から送信されて受信部111により受信されたブレーキ制御指示が減速量としてゼロより大きい量の指定を含む場合において所定演算F(V,L)の結果が、第1閾値a以下、かつ、第2閾値b以上となるように、定められている。これにより、正常な状態の緊急ブレーキECU310が送信するブレーキ制御指示については所定条件Cが満たされなくなる。
 また、図7には、L-kV=0の関係式を示す直線F01と、L-kV=-1の関係式を示す直線F02とを付記している。ここでの係数kは、0.25である。
 一例としては、距離L及び相対速度Vの関係が、図7において直線F01より上側部分である状況においては、減速量として最大量を指定するブレーキ制御指示(ブレーキを作動させる指示)がバス30に送信された場合にそのブレーキ制御指示が不正であると判別することとしてもよい。また、同様に、距離L及び相対速度Vの関係が、図7において直線F02より下側部分である状況においては、減速量としてゼロを指定するブレーキ制御指示(ブレーキの作動を抑止させる指示)がバス30に送信された場合にそのブレーキ制御指示が不正であると判別することとしてもよい。この例は、所定演算F(V,L)=L-kV、第1閾値a=0、及び、第2閾値b=-1として、判別部131が、減速量として最大量の指定を含むブレーキ制御指示について、所定演算F(V,L)の結果が第1閾値aより大きいことを所定条件Cとして用いる。また減速量としてゼロの指定を含むブレーキ制御指示について、所定演算F(V,L)の結果が第1閾値a以下の第2閾値bより小さいことを所定条件Cとして用いる。これらは、所定条件Cが満たされた場合にブレーキ制御指示が不正であると判別することに対応する。これは一例に過ぎないが、例えばこのように実験結果に基づいて、ブレーキ制御指示が不正か否かを判別するための所定条件Cを定めることは可能である。
 なお、図7の実験結果と直線F01との関係に鑑みて、判別部131は、受信部111により受信されたブレーキ制御指示がブレーキの作動の指示(例えば減速量をゼロ以外と指定したブレーキ制御指示)である場合において、距離Lの相対速度Vに対する比が予め定められた閾値を超えることを所定条件Cとして用いることとしてもよい。また、不正なブレーキ制御指示であると判別するための所定条件は、例えば、相対速度Vが、複数の範囲区分のうち特定の1以上の区分(例えば8km/h~10km/h等)に属し、かつ、距離Lが複数の範囲区分のうち特定の1以上の区分(例えば3m~4m)に属する場合に満たされるような条件であってもよい。
 [1.8 セキュリティECU100の制御処理]
 図8は、セキュリティECU100における制御処理の一例を示す。以下、図8を参照しながら、セキュリティECU100において不正なブレーキ制御指示の攻撃フレームに適切に対処するために実行される制御処理について説明する。
 セキュリティECU100は、受信部111で、センサECU320が送信した、測定情報を含むデータフレームをバス30から受信した場合には(ステップS11でyes)、測定情報を記憶部120に保存、つまり格納する(ステップS12)。これにより、記憶部120に、障害物と車両との距離L(m)と、障害物と車両との相対速度V(km/h)とを表す測定情報が保存される。センサECU320は、周期的にセンサでの測定結果を示す測定情報を含むデータフレームを送信するので、このステップS12での測定情報の保存は、繰り返し行われることになる。
 セキュリティECU100は、受信部111で、ブレーキ制御指示のデータフレームをバス30から受信した場合には(ステップS13でyes)、記憶部120に直近に保存されている最新の測定情報に基づいて、判別部131で、車両と障害物との距離L及び相対速度Vを特定する(ステップS14)。そして、判別部131は、特定した距離Lと相対速度Vとについての所定条件Cが満たされるか否かを判別することで、ステップS13で受信されたデータフレームに係るブレーキ制御指示が不正か否かを判別する(ステップS15)。なお、受信部111によりブレーキ制御指示のデータフレームのデータフィールドまでの受信が終了すれば、ブレーキ制御指示における減速量の指定の内容を取得することができるので、判別部131は、減速量の指定が最大量であるか、ゼロであるか、その他であるか等を特定できる。例えば、判別部131は、減速量として最大量の指定を含むブレーキ制御指示については、所定演算F(V,L)の結果が第1閾値aより大きいことを所定条件Cとして用い、減速量としてゼロの指定を含むブレーキ制御指示については、所定演算F(V,L)の結果が第1閾値a以下の第2閾値bより小さいことを所定条件Cとして用いる。また、判別部131は、例えば、減速量としてゼロより大きく最大量より小さい指定を含むブレーキ制御指示については、所定演算F(V,L)の結果が、第1閾値aより大きいことを所定条件Cとして用いることとしてもよいし、他の予め定めた閾値より大きい或いは小さいことを所定条件Cとして用いることとしてもよい。
 ステップS15で、判別部131が、所定条件Cが満たされると判別した場合には(ステップS15でyes)、ブレーキ制御指示を不正と判別したこととなる。この場合にエラーフレーム送信制御部132は、送信部112にエラーフレームを送信させることで、ブレーキ制御指示のデータフレームを無効化させる無効化制御を行う(ステップS16)。
 [1.9 制御システム10におけるブレーキ制御に係る処理シーケンス]
 図9及び図10は、制御システム10におけるブレーキ制御に係る処理シーケンスの一例を示す。
 図9は、車両20が障害物と衝突するおそれがない状況で、診断用ポート390に接続された装置(不正ECUと称する)がバス30に不正なブレーキ制御指示(急ブレーキを作動させるような指示)のデータフレームを送信する例を示す。以下、図9に即して、制御システム10における各ECUの動作について説明する。なお、ここでは不正ECUが、診断用ポート390に接続された装置である例を用いて説明するが、これはバス30にアクセス可能な不正な装置の一例に過ぎず、例えば、バス30に接続されているいずれかのECUが攻撃者に攻撃されて支配されている場合(例えばECUのファームウェア等を不正に書き換えられている場合)においては、そのECUが不正ECUとなり得る。
 センサECU320は、障害物センサ321及び速度センサ322で測定された測定結果を示す測定情報を含むデータフレームをバス30に送信する(ステップS101)。これにより、バス30に接続された各ECU(緊急ブレーキECU310、セキュリティECU100等)は、障害物と車両との距離及び障害物と車両との相対速度を表す測定情報を受信する。
 ブレーキ制御指示を周期的に送信する緊急ブレーキECU310は、障害物との衝突のおそれがない場合においては、減速量をゼロと指定したブレーキ制御指示のデータフレームをバス30に送信する(ステップS102)。
 例えば、緊急ブレーキECU310がブレーキ制御指示のデータフレームを送信した直後等において、不正ECUが、減速量を最大量に指定したブレーキ制御指示(不正なブレーキ制御指示)のデータフレームをバス30に送信する(ステップS103)。なお、緊急ブレーキECU310によるブレーキ制御指示のデータフレームの送信周期と略一致するように不正ECUが不正なブレーキ制御指示のデータフレームを送信した場合には、不正か否かを送信周期に基づいては判別できない。
 セキュリティECU100は、制御処理(図8参照)により、不正ECUが送信したブレーキ制御指示のデータフレームのデータフィールドまで受信した段階で、受信済の最新の測定情報に基づいて車両と障害物との距離L及び相対速度Vを特定して、減速量の指定に応じて所定条件Cを選択し、ブレーキ制御指示が不正か否かを判別する。図9の例では、ステップS102で緊急ブレーキECU310から送信されたブレーキ制御指示のデータフレームの受信に際して、セキュリティECU100では、所定条件Cが満たされずにそのブレーキ制御指示が適正であると判別される。また、ステップS103で不正ECUから送信されたブレーキ制御指示のデータフレームの受信に際して、セキュリティECU100では、所定条件Cが満たされてそのブレーキ制御指示が不正であると判別される。
 所定条件Cが満たされ、ステップS103に対応して受信されたデータフレームに係るブレーキ制御指示が不正であると判別すると、セキュリティECU100は、エラーフレームを送信する(ステップS104)。このエラーフレームの送信により、不正ECUから送信された不正なブレーキ制御指示のデータフレームは無効化され(つまり、バス30上においてそのデータフレームの一部がエラーフレームで上書きされることで無効化され)、ブレーキECU200におけるブレーキ制御に利用されない。このため、ブレーキECU200では、制御処理部230が、ステップS102に対応して受信された緊急ブレーキECU310からのブレーキ制御指示に従う。従って、ブレーキECU200の制御処理部230は、不正ECUからの不正なブレーキ制御指示に従ったブレーキ201の作動を行うことがない(ステップS105)。
 なお、もしセキュリティECU100が存在しなければ、ステップS103で不正ECUが送信した不正なブレーキ制御指示のデータフレームは無効化されない。この場合には、不正なブレーキ制御指示のデータフレームがブレーキECU200で完全に受信され、ステップS102に対応してデータバッファ220に格納された緊急ブレーキECU310からのブレーキ制御指示を、その不正なブレーキ制御指示が上書きする。そして、ブレーキECU200の制御処理部230は、不正ECUからの不正なブレーキ制御指示に従って、ブレーキ201を制御してしまう。
 図10は、車両20が障害物と衝突する直前という状況で、不正ECUがバス30に不正なブレーキ制御指示(ブレーキの作動を抑止させるような指示)のデータフレームを送信する例を示す。以下、図10に即して、制御システム10における各ECUの動作について説明する。
 センサECU320は、障害物センサ321及び速度センサ322で測定された測定結果を示す測定情報を含むデータフレームをバス30に送信する(ステップS201)。このステップS201は、上述の図9のステップS101と同様である。
 ブレーキ制御指示を周期的に送信する緊急ブレーキECU310は、障害物との衝突の直前においては、減速量を最大量と指定したブレーキ制御指示のデータフレームをバス30に送信する(ステップS202)。
 例えば、緊急ブレーキECU310がブレーキ制御指示のデータフレームを送信した直後等において、不正ECUが、減速量をゼロに指定したブレーキ制御指示(不正なブレーキ制御指示)のデータフレームをバス30に送信する(ステップS203)。
 セキュリティECU100は、制御処理(図8参照)により、不正ECUが送信したブレーキ制御指示のデータフレームのデータフィールドまで受信した段階で、受信済の最新の測定情報に基づいて車両と障害物との距離L及び相対速度Vを特定して、減速量の指定に応じて所定条件Cを選択し、ブレーキ制御指示が不正か否かを判別する。図10の例では、ステップS202で緊急ブレーキECU310から送信されたブレーキ制御指示のデータフレームの受信に際して、セキュリティECU100では、所定条件Cが満たされずにそのブレーキ制御指示が適正であると判別される。また、ステップS203で不正ECUから送信されたブレーキ制御指示のデータフレームの受信に際して、セキュリティECU100では、所定条件Cが満たされてそのブレーキ制御指示が不正であると判別される。
 所定条件Cが満たされ、ステップS203に対応して受信されたデータフレームに係るブレーキ制御指示が不正であると判別すると、セキュリティECU100は、エラーフレームを送信する(ステップS204)。このエラーフレームの送信により、不正ECUから送信された不正なブレーキ制御指示のデータフレームは無効化され、ブレーキECU200におけるブレーキ制御に利用されない。このため、ブレーキECU200では、制御処理部230が、ステップS202に対応して受信された緊急ブレーキECU310からのブレーキ制御指示に従って、ブレーキ201を作動させる(ステップS205)。
 [1.10 実施の形態1の効果]
 実施の形態1に係る制御システム10では、セキュリティECU(制御装置)100の制御部130が、ブレーキ制御指示(つまりブレーキ制御指示のデータフレーム)の受信部111での受信の直前にセンサECU320から取得した測定情報に基づいて、そのブレーキ制御指示の受信の際における車両20と障害物との距離L、及び、車両20の障害物に対する相対速度Vを特定する。そして、距離Lと相対速度Vとについての所定条件Cが満たされる場合に、制御部130は、エラーフレームの送信によりそのブレーキ制御指示を無効化する無効化制御を行う。所定条件Cは、ブレーキ制御指示が、減速量として最大量を指定するものか、減速量としてゼロを指定するものかにより相違し得る。所定条件Cは、正常状態の緊急ブレーキECU310が送信するブレーキ制御指示については所定条件Cが満たされないように、定めておくことができる。不正ECUが、緊急ブレーキECU310と相違するブレーキ制御指示(つまり不正なブレーキ制御指示のデータフレーム)をバス30に送信した際に、セキュリティECU100は、所定条件Cが満たされるとそのブレーキ制御指示を不正と判別してエラーフレームの送信により無効化するので、ブレーキECU200が不正なブレーキ制御指示に従ってブレーキ201を制御してしまうことが防止され得る。即ち、制御システム10では、セキュリティECU100によりブレーキ制御指示に係る不正なフレーム(攻撃フレーム)への適切な対処がなされ、攻撃フレームによって事故が引き起こされることが防止され得る。
 (実施の形態2)
 以下、実施の形態1で示した制御システム10における車両20内の一部のECUを変形してなる制御システム11について説明する。
 実施の形態1に係る制御システム10では、セキュリティECU100が、バス30を流れるブレーキ制御指示(ブレーキ制御指示のデータフレーム)を不正と判別した場合にエラーフレームの送信によりブレーキ制御指示のデータフレームを無効化する。これに対して、本実施の形態に係る制御システム11は、セキュリティECU100を備えず、実施の形態1で示したブレーキECU200を部分的に変形したブレーキECUが、受信したブレーキ制御指示が不正か否かを判別し、不正と判別した場合にそのブレーキ制御指示に従ったブレーキ制御を行わない(つまりブレーキ制御指示を破棄する)例について説明する。
 [2.1 制御システム11の構成]
 図11は、本実施の形態に係る制御システム11の全体構成を示す図である。実施の形態1で示した制御システム10(図1参照)と同様の構成については、図11において図1と同一の符号を付しており、説明を省略する。
 制御システム11は、主として車両20における車載ネットワークシステムで構成され、図11に例示するように、車両20に搭載された各種ECU(ブレーキECU2200、緊急ブレーキECU310、センサECU320、及び、エンジンECU330)と、バス30とを含んで構成される。ここで、特に説明しない事項については、制御システム11は、実施の形態1で示した制御システム10と同様である。
 [2.2 ブレーキECU2200の構成]
 図12は、ブレーキECU2200の構成図である。ブレーキECU2200は、実施の形態1で示したブレーキECU200を一部変形したものであり、ブレーキECU200(図4参照)と同様の構成については、図12において図4と同一の符号を付しており、説明を適宜省略する。
 ブレーキ201に接続され、ブレーキ201を制御するためのブレーキECU2200は、通信部210と、データバッファ220と、制御処理部230と、制御部2130とを含んで構成される。
 通信部210の有するフレーム受信に係る機能構成を、図12において受信部2111として表している。受信部2111は、バス30からCANプロトコルに従ってフレームの受信(フレームの1bitずつの逐次受信)を行う。受信部2111は、フレームの受信機能、及び、受信フレームの解釈機能を有し、バス30から受信したフレームの値を、CANプロトコルで規定されているフレームフォーマットにおける各フィールドにマッピングするよう解釈を行う。この解釈により、データフレームにおけるID(メッセージID)、DLC、データフィールドのデータのそれぞれが区別して抽出される。受信部2111は、抽出したIDが、制御システム11における車載ネットワークシステムで予め定められている、ブレーキ制御指示を示すデータフレームのID、或いは、センサECU320から送信される測定情報を示すデータフレームのID等の受信すべきIDであるか否かを判別する。受信部2111は、受信すべきIDでなければそのフレームの解釈を中止する。
 通信部210では、受信部2111で受信したフレームのCRCの値が合わなかったり、ドミナント固定とされている項目がレセシブだったりする等、CANプロトコルに則っていないフレームと判断した場合は、バス30にエラーフレームを送信するよう制御する。また、受信部2111では、エラーフレームを受信した場合、つまり受け取ったフレームにおける値からエラーフレームになっていると解釈した場合には、それ以降はそのフレームを破棄する、つまりフレームの解釈を中止する。受信部2111は、受信すべきIDと判別されたフレームの内容(ID、データフィールドのデータ等)を、制御部2130における記憶部120に格納する。
 制御部2130は、制御プログラムを実行するプロセッサ等により実現され、一定条件下でブレーキ制御指示を示す情報のデータバッファ220への転送を抑止するフィルタリング処理により、ブレーキ制御指示を破棄する制御を行う機能を担う。制御部2130は、記憶部120、判別部131及び転送部2133を含んで構成される。制御部2130における記憶部120は、実施の形態1で示したセキュリティECU100の記憶部120と同様であり、受信部2111により受信されたフレームの内容を格納するためのメモリ等の記憶媒体の一記憶領域である。記憶部120には、例えば、センサECU320から逐次送信される測定情報に係るデータフレームの内容、及び、ブレーキ制御指示に係るデータフレームの内容(例えば減速量等)が逐次格納される。測定情報は、車両20と障害物との距離及び車両20の障害物に対する相対速度を示す。
 制御部2130における判別部131は、実施の形態1で示したセキュリティECU100の判別部131と概ね同様であり、受信部2111がブレーキ制御指示のデータフレームを受信した際における車両20と障害物との距離L、及び、障害物に対する車両20の速度(相対速度)Vについての所定条件Cが満たされるか否かにより、ブレーキ制御指示が不正か否かを判別する。判別部131は、受信部2111により受信された測定情報に基づいて車両20と障害物との距離L、及び、障害物に対する車両20の速度(相対速度)Vを特定し、特定した距離L及び速度Vに基づいて所定条件Cが満たされるか否かを判別する。判別部131は、ブレーキ制御指示についての不正か否かの判別結果を転送部2133に通知する。判別部131は、受信部2111がブレーキ制御指示のデータフレームを受信した際における車両20と障害物との距離L、及び、車両20の速度Vとして、記憶部120に逐次格納された測定情報のうちそのブレーキ制御指示のデータフレームを受信した際における最新の測定情報が示す車両20と障害物との距離、及び、車両20の速度(障害物に対する相対速度)を用いる。なお、ブレーキ制御指示を不正と判別するための所定条件Cとして、例えば、実施の形態1で説明したようにブレーキ制御指示において指定される減速量に応じて、複数の条件のうちの1つが選択され得る。
 転送部2133は、判別部131によりブレーキ制御指示が不正でないと判別された場合には、そのブレーキ制御指示に係るデータフレームの内容を記憶部120からデータバッファ220に転送し、ブレーキ制御指示が不正であると判別された場合には、そのブレーキ制御指示に係るデータフレームの内容を記憶部120からデータバッファ220に転送しない。
 データバッファ220には、不正でないと判別されたブレーキ制御指示のデータフレームの内容としてのID、データフィールドのデータ等を示す情報(つまりブレーキ制御指示を示す情報)が格納される。
 制御処理部230は、データバッファ220に格納されたフレームの内容(ブレーキ制御指示等を示す情報)を、周期的に或いは一定条件(データバッファ220へのフレーム格納に関連した条件等)が成立した場合等に取得し、その取得した情報が示すブレーキ制御指示に従って、ブレーキ201に対して制御信号を送信することでブレーキ201を制御する。
 なお、ブレーキECU2200の一部(例えば受信部2111及び制御部2130)は、不正なブレーキ制御指示の攻撃フレームに適切に対処する制御装置2100として機能する。
 [2.3 ブレーキECU2200の制御処理]
 図13は、ブレーキECU2200における制御処理の一例を示す。以下、図13を参照しながら、ブレーキECU2200において不正なブレーキ制御指示の攻撃フレームに適切に対処するために実行される制御処理について説明する。
 ブレーキECU2200は、受信部2111で、センサECU320が送信した、測定情報を含むデータフレームをバス30から受信した場合には(ステップS21でyes)、測定情報を記憶部120に保存、つまり格納する(ステップS22)。これにより、記憶部120に、障害物と車両との距離L(m)と、障害物と車両との相対速度V(km/h)とを表す測定情報が保存される。センサECU320は、周期的にセンサでの測定結果を示す測定情報を含むデータフレームを送信するので、このステップS22での測定情報の保存は、繰り返し行われる。
 ブレーキECU2200は、受信部2111で、ブレーキ制御指示のデータフレームをバス30から受信した場合には(ステップS23でyes)、記憶部120に直近に保存されている最新の測定情報に基づいて、判別部131で、車両と障害物との距離L及び相対速度Vを特定する(ステップS24)。そして、判別部131は、特定した距離Lと相対速度Vとについての所定条件Cが満たされるか否かを判別することで、ステップS23で受信されたデータフレームに係るブレーキ制御指示が不正か否かを判別する(ステップS25)。受信部2111によりブレーキ制御指示のデータフレームが受信された場合にブレーキ制御指示で指定された減速量等が受信部2111により記憶部120に格納されるので、判別部131は、減速量の指定が最大量であるか、ゼロであるか、その他であるか等を特定できる。本実施の形態においても判別部131は、実施の形態1で示したように、減速量として最大量の指定を含むブレーキ制御指示については、所定演算F(V,L)の結果が第1閾値aより大きいことを所定条件Cとして用い、減速量としてゼロの指定を含むブレーキ制御指示については、所定演算F(V,L)の結果が第1閾値a以下の第2閾値bより小さいことを所定条件Cとして用いる。また、判別部131は、例えば、減速量としてゼロより大きく最大量より小さい指定を含むブレーキ制御指示については、所定演算F(V,L)の結果が、第1閾値aより大きいことを所定条件Cとして用いることとしてもよいし、他の予め定めた閾値より大きい或いは小さいことを所定条件Cとして用いることとしてもよい。
 ステップS25で、判別部131が、所定条件Cが満たされると判別した場合には(ステップS25でyes)、ブレーキ制御指示を不正と判別したこととなる。ブレーキ制御指示が不正であると判別された場合には、転送部2133は、ブレーキ制御指示のデータフレームの内容を記憶部120からデータバッファ220に転送せず(ステップS26)、ブレーキ制御指示が不正でないと判別された場合には、転送部2133は、ブレーキ制御指示のデータフレームの内容を記憶部120からデータバッファ220に転送する(ステップS27)。このステップS25~S27での処理により、ブレーキECU2200は、不正なブレーキ制御指示に従ったブレーキ201の制御を抑止し、適正なブレーキ制御指示に従ってブレーキ201の制御を行うことになる。
 [2.4 制御システム11におけるブレーキ制御に係る処理シーケンス]
 図14及び図15は、制御システム11におけるブレーキ制御に係る処理シーケンスの一例を示す。
 図14は、車両20が障害物と衝突するおそれがない状況で、診断用ポート390に接続された装置(不正ECU)がバス30に不正なブレーキ制御指示(急ブレーキを作動させるような指示)のデータフレームを送信する例を示す。以下、図14に即して、制御システム11における各ECUの動作について説明する。
 センサECU320は、障害物センサ321及び速度センサ322で測定された測定結果を示す測定情報を含むデータフレームをバス30に送信する(ステップS301)。これにより、バス30に接続された各ECU(緊急ブレーキECU310、ブレーキECU2200等)は、障害物と車両との距離及び障害物と車両との相対速度を表す測定情報を受信する。
 ブレーキ制御指示を周期的に送信する緊急ブレーキECU310は、障害物との衝突のおそれがない場合においては、減速量をゼロと指定したブレーキ制御指示のデータフレームをバス30に送信する(ステップS302)。
 ブレーキECU2200は、制御処理(図13参照)により、緊急ブレーキECU310が送信したブレーキ制御指示のデータフレームを受信した際に、受信済の最新の測定情報に基づいて車両と障害物との距離L及び相対速度Vを特定して、減速量の指定に応じて所定条件Cを選択し、ブレーキ制御指示が不正か否かを判別する。図14の例では、所定条件Cが満たされずにそのブレーキ制御指示が適正であると判別され、転送部2133により、バス30から受信されたブレーキ制御指示のデータフレームの内容が記憶部120からデータバッファ220へと転送される(ステップS303)。
 そして、例えば、緊急ブレーキECU310がブレーキ制御指示のデータフレームを送信した直後等において、不正ECUが、減速量を最大量に指定したブレーキ制御指示(不正なブレーキ制御指示)のデータフレームをバス30に送信する(ステップS304)。
 ブレーキECU2200は、制御処理により、不正ECUが送信したブレーキ制御指示のデータフレームを受信した際に、受信済の最新の測定情報に基づいて車両と障害物との距離L及び相対速度Vを特定して、減速量の指定に応じて所定条件Cを選択し、ブレーキ制御指示が不正か否かを判別する。図14の例では、所定条件Cが満たされてそのブレーキ制御指示が不正であると判別され、この場合に転送部2133は、バス30から受信されたブレーキ制御指示のデータフレームの内容を記憶部120からデータバッファ220へと転送しない(ステップS305)。
 そして、ブレーキECU2200の制御処理部230は、ステップS303でデータバッファ220に格納された情報が示すブレーキ制御指示に対応してブレーキ制御を行うので、不正なブレーキ制御指示に従ってブレーキ201の作動を行うことがない(ステップS306)。
 図15は、車両20が障害物と衝突する直前という状況で、不正ECUがバス30に不正なブレーキ制御指示(ブレーキの作動を抑止させるような指示)のデータフレームを送信する例を示す。以下、図15に即して、制御システム11における各ECUの動作について説明する。
 センサECU320は、障害物センサ321及び速度センサ322で測定された測定結果を示す測定情報を含むデータフレームをバス30に送信する(ステップS401)。このステップS401は、上述の図14のステップS301と同様である。
 ブレーキ制御指示を周期的に送信する緊急ブレーキECU310は、障害物との衝突の直前においては、減速量を最大量と指定したブレーキ制御指示のデータフレームをバス30に送信する(ステップS402)。
 ブレーキECU2200は、制御処理により、緊急ブレーキECU310が送信したブレーキ制御指示のデータフレームを受信した際に、受信済の最新の測定情報に基づいて車両と障害物との距離L及び相対速度Vを特定して、減速量の指定に応じて所定条件Cを選択し、ブレーキ制御指示が不正か否かを判別する。図15の例では、所定条件Cが満たされずにそのブレーキ制御指示が適正であると判別され、転送部2133により、バス30から受信されたブレーキ制御指示のデータフレームの内容が記憶部120からデータバッファ220へと転送される(ステップS403)。
 そして、例えば、緊急ブレーキECU310がブレーキ制御指示のデータフレームを送信した直後等において、不正ECUが、減速量をゼロに指定したブレーキ制御指示(不正なブレーキ制御指示)のデータフレームをバス30に送信する(ステップS404)。
 ブレーキECU2200は、制御処理により、不正ECUが送信したブレーキ制御指示のデータフレームを受信した際に、受信済の最新の測定情報に基づいて車両と障害物との距離L及び相対速度Vを特定して、減速量の指定に応じて所定条件Cを選択し、ブレーキ制御指示が不正か否かを判別する。図15の例では、所定条件Cが満たされてそのブレーキ制御指示が不正であると判別され、この場合に転送部2133は、バス30から受信されたブレーキ制御指示のデータフレームの内容を記憶部120からデータバッファ220へと転送しない(ステップS405)。
 そして、ブレーキECU2200の制御処理部230は、ステップS403でデータバッファ220に格納された情報が示すブレーキ制御指示に対応してブレーキ201を作動させる制御を行うので、不正なブレーキ制御指示に従ってブレーキ201の作動を抑止してしまうことがない(ステップS406)。
 [2.5 実施の形態2の効果]
 実施の形態2に係る制御システム11では、制御装置2100の制御部2130がブレーキECU2200の一部として機能する。制御部2130は、ブレーキ制御指示(つまりブレーキ制御指示のデータフレーム)の受信部2111での受信の直前にセンサECU320から取得した測定情報に基づいて、そのブレーキ制御指示の受信の際における車両20と障害物との距離L、及び、車両20の障害物に対する相対速度Vを特定する。そして、距離Lと相対速度Vとについての所定条件Cが満たされる場合に、制御部2130は、データバッファ220へブレーキ制御指示が転送されないようにフィルタリングする。このフィルタリングにより、制御部2130は、そのブレーキ制御指示を破棄する制御を行う。所定条件Cは、ブレーキ制御指示が、減速量として最大量を指定するものか、減速量としてゼロを指定するものかにより相違し得る。所定条件Cは、正常状態の緊急ブレーキECU310が送信するブレーキ制御指示については所定条件Cが満たされないように、定めておくことができる。不正ECUが、緊急ブレーキECU310と相違するブレーキ制御指示(つまり不正なブレーキ制御指示のデータフレーム)をバス30に送信した際に、制御部2130は、所定条件Cが満たされるとそのブレーキ制御指示を不正と判別する。そして、データバッファ220へそのブレーキ制御指示を示す情報が転送されないようにフィルタリングする。そのため、制御処理部230が不正なブレーキ制御指示に従ってブレーキ201を制御してしまうことが防止され得る。即ち、制御システム11では、ブレーキECU2200によりブレーキ制御指示に係る不正なフレーム(攻撃フレーム)への適切な対処がなされ、攻撃フレームによって事故が引き起こされることが防止され得る。
 (その他変形例)
 以上のように、本開示に係る技術の例示として実施の形態1、2を説明した。しかしながら、本開示に係る技術は、これに限定されず、適宜、変更、置き換え、付加、省略等を行った実施の形態にも適用可能である。例えば、以下のような変形例も本開示の一実施態様に含まれる。
 (1)上記実施の形態1では、セキュリティECU100は、車両20と障害物との距離、及び、車両20の速度(障害物に対する相対速度)をバス30経由で取得する例(測定情報を含むデータフレームの受信により取得する例)を示した。この他に、例えばセキュリティECU100と専用の通信線で接続した各センサを用いて、ブレーキ制御指示のデータフレームを受信した際に(つまりその受信の前後の一定期間内において)、車両20と障害物との距離、及び、車両20の速度(障害物に対する相対速度)を測定することで直接的に取得することとしてもよい。また、上記実施の形態で示した車両20と障害物との相対速度の代わりに、車両20の絶対速度を速度センサ322で取得して、ブレーキ制御指示が不正であるか否かの判別のための所定条件として、車両20と障害物との距離、及び、車両20の絶対速度についての条件を用いることとしてもよい。
 (2)上記実施の形態2では、ブレーキECU2200の一部が、不正なブレーキ制御指示の攻撃フレームに適切に対処する制御装置2100として機能する例を示した。即ち、制御部2130が、ブレーキ制御指示が不正であることの判別のための所定条件が満たされない場合において、受信部2111により受信されたブレーキ制御指示を示す情報をデータバッファ220に格納し、所定条件が満たされる場合には、受信部2111により受信されたブレーキ制御指示を示す情報をデータバッファ220に格納しないことで、ブレーキ制御指示を破棄する制御を行うこととした。この他に、ブレーキECU2200が、不正なブレーキ制御指示の攻撃フレームに適切に対処する制御装置として機能することとしてもよい。例えば、制御部2130に、制御処理部230の機能を含ませて、ブレーキ制御指示が不正であることの判別のための所定条件が満たされない場合において、受信部2111により受信されたブレーキ制御指示に従って、ブレーキ201の制御を行い、所定条件が満たされる場合には、受信部2111により受信されたブレーキ制御指示に従ったブレーキ201の制御を抑止することでブレーキ制御指示を破棄する制御を行うこととしてもよい。
 (3)上記実施の形態で示したブレーキ制御指示が不正であることの判別のための所定条件は、車両20の車種毎に対応して定められていることとしてもよい。即ち、同一車種の複数の車両20それぞれにおいて所定条件が同じように定められ、互いに相違する車種の複数の車両20それぞれにおいて所定条件が相違するように定められ得る。ここでの車種が同一の車両は、例えば、型式(車両型式)が同一の車両である。一例としては、車種が同一の車両は、車台番号における型式の値、或いは、車両識別番号(VIN:Vehicle Identification Number)における先頭からシリアル番号の前までの桁の値が、同一の車両である。
 (4)上記実施の形態で示した制御部130、2130は、ブレーキ制御指示が不正であることの判別のための所定条件Cに係る所定演算F(V,L)の内容を、車両20のブレーキ201による制動距離に影響を与える車両20の構成要素の変化に応じて変更してもよい。例えば、制御部130、2130は、所定演算F(V,L)=L-G(V)とした場合における多項式関数Gの係数等を、車両20のブレーキ201の部品、タイヤ等の交換或いは劣化等に応じて変更してもよい。なお、制御部130、2130は、例えばブレーキ201の部品、タイヤ等の情報を、通信その他のいかなる方法で取得しても良く、また、時計、走行距離の積算計等からの情報を用いて、ブレーキ201の部品、タイヤ等の劣化度合いを算定してもよい。また、上記多項式関数Gの係数等は、例えば路面状況(舗装路、砂利道)、天候(晴天、降雨、降雪)等に応じて変更してもよい。
 (5)上記実施の形態で示した障害物センサ321は、例えば障害物の種別(例えば人と、人以外の物体等とを区別する種別)を検出し、センサECU320は、障害物の種別を示す障害物情報を含むデータフレームをバス30に送信することとしてもよい。そして、受信部111、2111は、バス30から障害物情報を含むデータフレームを受信し、制御部130、2130は、受信部111、2111により受信された障害物情報が示す種別に応じて、ブレーキ制御指示が不正であることの判別のための所定条件Cに係る所定演算F(V,L)の内容を変更してもよい。
 (6)上記実施の形態では、ブレーキ制御指示のデータフレームが減速量の指定を含む例を示したが、必ずしも減速量の指定を含まなくてもよい。例えば、ブレーキ制御指示のデータフレームは、ブレーキを作動させる旨の指定或いはブレーキの作動を抑止させる旨の指定を含むこととしてもよい。この場合に、ブレーキ制御指示が不正か否かの判別においては、ブレーキを作動させる旨の指定を例えば減速量の最大の指定と同様に扱うこととしても良く、ブレーキの作動を抑止させる旨の指定を例えば減速量のゼロの指定と同様に扱うこととしてもよい。
 (7)上記実施の形態では、CANプロトコルにおけるデータフレームについてのフォーマットとして、標準IDフォーマット(図2参照)を示したが、拡張IDフォーマットであっても良く、データフレームのID(メッセージID)は、拡張IDフォーマットでの拡張ID等であってもよい。また、上記実施の形態で示したCANプロトコルは、TTCAN(Time-Triggered CAN)、CANFD(CAN with Flexible Data Rate)等の派生的なプロトコルも包含する広義の意味のものとしてもよい。
 (8)上記実施の形態で示した制御システム10、11が備える各種構成要素の機能分担は、一例に過ぎず、その分担を変更し得る。また、セキュリティECU100における制御部130等の機能の一部を、セキュリティECU100と通信可能な装置(例えば車両20外部のサーバ装置等)が分担することとしてもよい。
 (9)上記実施の形態における各ECUは、例えば、プロセッサ、メモリ等のデジタル回路、アナログ回路、通信回路等を含む装置であることとしたが、ハードディスク装置、ディスプレイ、キーボード、マウス等のハードウェア構成要素を含んでいてもよい。また、上記実施の形態で示した各装置は、メモリに記憶された制御プログラムがプロセッサにより実行されてソフトウェア的に機能を実現する代わりに、専用のハードウェア(デジタル回路等)によりその機能を実現することとしてもよい。
 (10)上記実施の形態における各装置を構成する構成要素の一部又は全部は、1個のシステムLSI(Large Scale Integration:大規模集積回路)から構成されているとしてもよい。システムLSIは、複数の構成部を1個のチップ上に集積して製造された超多機能LSIであり、具体的には、マイクロプロセッサ、ROM、RAM等を含んで構成されるコンピュータシステムである。RAMには、コンピュータプログラムが記録されている。マイクロプロセッサが、コンピュータプログラムに従って動作することにより、システムLSIは、その機能を達成する。また、上記各装置を構成する構成要素の各部は、個別に1チップ化されていてもよいし、一部又は全部を含むように1チップ化されてもよい。また、ここでは、システムLSIとしたが、集積度の違いにより、IC、LSI、スーパーLSI、ウルトラLSIと呼称されることもある。また、集積回路化の手法はLSIに限るものではなく、専用回路又は汎用プロセッサで実現してもよい。LSI製造後に、プログラムすることが可能なFPGA(Field Programmable Gate Array)や、LSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。更には、半導体技術の進歩又は派生する別技術によりLSIに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行ってもよい。バイオ技術の適用等が可能性としてあり得る。
 (11)上記各装置を構成する構成要素の一部又は全部は、各装置に脱着可能なICカード又は単体のモジュールから構成されているとしてもよい。ICカード又はモジュールは、マイクロプロセッサ、ROM、RAM等から構成されるコンピュータシステムである。ICカード又はモジュールは、上記の超多機能LSIを含むとしてもよい。マイクロプロセッサが、コンピュータプログラムに従って動作することにより、ICカード又はモジュールは、その機能を達成する。このICカード又はこのモジュールは、耐タンパ性を有するとしてもよい。
 (12)本開示の一態様としては、例えば図8~図10、図13~図15等に示す処理手順の全部又は一部を含む制御方法であるとしてもよい。例えば、制御方法は、車両20において複数のECUが通信に用いるバス30からブレーキ制御指示を受信する受信ステップ(例えばステップS13、S23)と、受信ステップでブレーキ制御指示を受信した際における車両20と障害物との距離、及び、車両20の速度についての所定条件が満たされる場合に、そのブレーキ制御指示を無効化又は破棄する制御を行う制御ステップ(例えばステップS15~S16、S25~S26)とを含む。また、本開示の一態様としては、この制御方法に係る処理をコンピュータにより実現するコンピュータプログラムであるとしてもよいし、コンピュータプログラムからなるデジタル信号であるとしてもよい。
 この制御方法に係る処理は、例えば、受信ステップ(例えばステップS13、S23)と、判別ステップ(例えばステップS15、S25)とを含む不正検知処理である。受信ステップでは、車両20において複数のECUが通信に用いるバス30からブレーキ制御指示を受信する。判別ステップでは、受信ステップでブレーキ制御指示を受信した際における車両20と障害物との距離、及び、車両20の速度についての所定条件が満たされるか否かにより、そのブレーキ制御指示が不正であるか否かを判別(検知)する。
 また、本開示の一態様としては、コンピュータプログラム又はデジタル信号をコンピュータで読み取り可能な記憶媒体、例えば、フレキシブルディスク、ハードディスク、CD-ROM、MO、DVD、DVD-ROM、DVD-RAM、BD(Blu-ray(登録商標) Disc)、半導体メモリ等に記録したものとしてもよい。また、これらの記憶媒体に記録されているデジタル信号であるとしてもよい。また、本開示の一態様としては、コンピュータプログラム又はデジタル信号を、電気通信回線、無線又は有線通信回線、インターネットを代表とするネットワーク、データ放送等を経由して伝送するものとしてもよい。また、本開示の一態様としては、マイクロプロセッサとメモリを備えたコンピュータシステムであって、メモリは、上記コンピュータプログラムを記録しており、マイクロプロセッサは、コンピュータプログラムに従って動作するとしてもよい。また、上記プログラム若しくはデジタル信号を記憶媒体に記録して移送することにより、又は、プログラム若しくはデジタル信号を、ネットワーク等を経由して移送することにより、独立した他のコンピュータシステムにより実施するとしてもよい。
 (13)上記実施の形態及び上記変形例で示した各構成要素及び機能を任意に組み合わせることで実現される形態も本開示の範囲に含まれる。
 本開示は、ブレーキを要する車両等の移動体のネットワークに不正なブレーキ制御指示のフレームを送信する攻撃に対処するために利用可能である。
10,11  制御システム
20  車両
30  バス
100  セキュリティECU(制御装置)
110  通信部
111,2111  受信部
112  送信部
120  記憶部
130,2130  制御部
131  判別部
132  エラーフレーム送信制御部
200,2200  ブレーキECU
201  ブレーキ
210  通信部
220  データバッファ
230  制御処理部(ブレーキ制御部)
310  緊急ブレーキECU
320  センサECU
321  障害物センサ(検知装置)
322  速度センサ
330  エンジンECU
331  エンジン
390  診断用ポート
2100  制御装置
2133  転送部

Claims (20)

  1. 移動体において複数の電子制御ユニットが通信に用いるバスから前記移動体のブレーキを制御する指示を受信する受信部と、
    前記受信部が前記指示を受信した際、前記移動体と障害物との距離及び前記移動体の速度が、前記指示の無効化のための所定条件を満たす場合、前記指示を無効化又は破棄する制御を行う制御部と、を備えた、
    制御装置。
  2. 前記速度は、前記障害物に対する前記移動体の相対速度である、
    請求項1に記載の制御装置。
  3. 前記制御部は、前記距離と前記速度とに基づく所定演算の結果と閾値とを比較することにより前記距離及び前記速度が前記所定条件を満たすか否かを判別する、
    請求項1又は2に記載の制御装置。
  4. 前記指示は、前記ブレーキによる減速量の指定を含み、
    前記制御部は、
     前記指示が最大の減速量の指定を含む場合、前記所定演算の結果が第1閾値より大きいことを前記所定条件として用い、
     前記指示が減速量としてゼロの指定を含む場合、前記所定演算の結果が前記第1閾値以下の第2閾値より小さいことを前記所定条件として用いる、
    請求項3に記載の制御装置。
  5. 前記第2閾値は、前記第1閾値より小さい、
    請求項4に記載の制御装置。
  6. 前記複数の電子制御ユニットは、前記指示を前記バスに送信する緊急ブレーキ電子制御ユニットを含み、
    前記所定演算は、前記緊急ブレーキ電子制御ユニットから前記バスに送信された正常な状態の前記指示が減速量としてゼロより大きい量の指定を含む場合、前記所定演算の結果が、前記第1閾値以下かつ前記第2閾値以上となるように定められている、
    請求項4又は5に記載の制御装置。
  7. 前記所定演算は、定められた係数と前記速度との積を前記距離から減算する演算であり、
    前記第1閾値は0である、
    請求項4又は5に記載の制御装置。
  8. 前記所定演算は、係数が定められた一変数の多項式関数の変数に前記速度を代入した結果を前記距離から減算する演算である、
    請求項3~5のいずれか一項に記載の制御装置。
  9. 前記制御部は、前記移動体の前記ブレーキによる制動距離に影響を与える前記移動体の構成要素の変化に応じて、前記所定演算の内容を変更する、
    請求項3~8のいずれか一項に記載の制御装置。
  10. 前記受信部は、前記移動体において検出された前記障害物の種別を示す障害物情報を、前記バスから受信し、
    前記制御部は、前記障害物情報に応じて、前記所定演算の内容を変更する、
    請求項3~9のいずれか一項に記載の制御装置。
  11. 前記制御部は、前記指示が前記ブレーキの作動の指示である場合、前記速度に対する前記距離の比が予め定められた閾値を超えることを前記所定条件として用いる、
    請求項1又は2に記載の制御装置。
  12. 前記所定条件は、前記移動体の車種に対応して定められている、
    請求項1~11のいずれか一項に記載の制御装置。
  13. 前記受信部は、前記移動体において測定された、前記距離及び前記速度の測定結果を示す測定情報を、前記バスから受信し、
    前記制御部は、前記測定情報から特定した前記距離及び前記速度に基づいて、前記距離及び前記速度が前記所定条件を満たすか否かを判別する、
    請求項1~12のいずれか一項に記載の制御装置。
  14. 前記複数の電子制御ユニットは、Controller Area Networkプロトコルに従って前記バスを介して通信を行い、
    前記受信部は、前記指示を含むデータフレームを受信し、
    前記制御部は、前記受信部が前記データフレームを受信した際、前記距離及び前記速度が前記所定条件を満たす場合、前記データフレームを無効化するエラーフレームを送信する制御を行う、
    請求項1~13のいずれか一項に記載の制御装置。
  15. 前記制御装置は、前記複数の電子制御ユニットに含まれる前記移動体の前記ブレーキを制御する電子制御ユニットであり、
    前記制御部は、
     前記距離及び前記速度が前記所定条件を満たさない場合、前記指示に従って、前記ブレーキを制御し、
     前記距離及び前記速度が前記所定条件を満たす場合、前記指示に従った前記ブレーキの制御を抑止することで前記指示を破棄する制御を行う、
    請求項1~13のいずれか一項に記載の制御装置。
  16. 前記複数の電子制御ユニットは、記憶媒体と、前記記憶媒体に格納された情報に従って前記ブレーキを制御するブレーキ制御部とを有するブレーキ電子制御ユニットを含み、
    前記制御装置は、前記ブレーキ電子制御ユニットに含まれ、
    前記制御部は、
     前記距離及び前記速度が前記所定条件を満たさない場合、前記指示を示す情報を前記記憶媒体に格納し、
     前記距離及び前記速度が前記所定条件を満たす場合、前記指示を示す情報を前記記憶媒体に格納しないことで前記指示を破棄する制御を行う、
    請求項1~13のいずれか一項に記載の制御装置。
  17. 移動体に設けられるブレーキと、
    前記移動体に対する障害物を検知する検知装置と、
    制御装置と、を備え、
    前記制御装置は、
     前記移動体において複数の電子制御ユニットが通信に用いるバスから、前記移動体の前記ブレーキを制御する指示を受信する受信部と、
     前記受信部が前記指示を受信した際、前記移動体と前記障害物との距離及び前記移動体の速度が所定条件を満たす場合、前記指示を無効化又は破棄する制御を行う制御部と、を有する、
    制御システム。
  18. 移動体において複数の電子制御ユニットが通信に用いるバスから、前記移動体のブレーキを制御する指示を受信し、
    前記指示を受信した際、前記移動体と障害物との距離及び前記移動体の速度が所定条件を満たす場合、前記指示を無効化又は破棄する、
    制御方法。
  19. マイクロプロセッサを備える装置に不正検知処理を行わせるための制御プログラムを記憶した一過性でない記憶媒体であって、
    前記不正検知処理は、
    移動体において複数の電子制御ユニットが通信に用いるバスから、前記移動体のブレーキを制御する指示を受信し、
    前記指示を受信した際、前記移動体と障害物との距離及び前記移動体の速度が所定条件を満たすか否かにより、前記指示が不正であるか否かを検知する、
    記憶媒体。
  20. マイクロプロセッサを備える装置に不正検知処理を行わせるための制御プログラムであって、
    前記不正検知処理は、
    移動体において複数の電子制御ユニットが通信に用いるバスから、前記移動体のブレーキを制御する指示を受信し、
    前記指示を受信した際、前記移動体と障害物との距離及び前記移動体の速度が所定条件を満たすか否かにより、前記指示が不正であるか否かを検知する、
    制御プログラム。
PCT/JP2017/036296 2016-12-14 2017-10-05 制御装置、制御システム、制御方法、制御プログラムおよび記憶媒体 WO2018110046A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
DE112017006282.9T DE112017006282T5 (de) 2016-12-14 2017-10-05 Steuervorrichtung, Steuersystem, Steuerverfahren und Speichermedium
US16/405,625 US11247694B2 (en) 2016-12-14 2019-05-07 Control apparatus, control system, control method, and storage medium

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2016242731A JP6558703B2 (ja) 2016-12-14 2016-12-14 制御装置、制御システム、及びプログラム
JP2016-242731 2016-12-14

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US16/405,625 Continuation US11247694B2 (en) 2016-12-14 2019-05-07 Control apparatus, control system, control method, and storage medium

Publications (1)

Publication Number Publication Date
WO2018110046A1 true WO2018110046A1 (ja) 2018-06-21

Family

ID=62558433

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2017/036296 WO2018110046A1 (ja) 2016-12-14 2017-10-05 制御装置、制御システム、制御方法、制御プログラムおよび記憶媒体

Country Status (4)

Country Link
US (1) US11247694B2 (ja)
JP (1) JP6558703B2 (ja)
DE (1) DE112017006282T5 (ja)
WO (1) WO2018110046A1 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6828632B2 (ja) * 2017-08-03 2021-02-10 住友電気工業株式会社 検知装置、検知方法および検知プログラム
US11124185B2 (en) 2018-11-13 2021-09-21 Zoox, Inc. Perception collision avoidance
US11104332B2 (en) 2018-12-12 2021-08-31 Zoox, Inc. Collision avoidance system with trajectory validation
JP7138083B2 (ja) * 2019-06-21 2022-09-15 国立大学法人東海国立大学機構 車載通信システム、車載通信装置及び送信周期算出方法
DE102020121831A1 (de) * 2020-08-20 2022-02-24 Zf Cv Systems Global Gmbh Verfahren zum Sichern eines Fahrzeugs
DE102020211022A1 (de) * 2020-09-01 2022-03-03 Volkswagen Aktiengesellschaft Verfahren zum Betreiben eines Kraftfahrzeugs, Sicherheitssystem für ein Kraftfahrzeug sowie Kraftfahrzeug mit einem Sicherheitssystem
DE102020212565A1 (de) * 2020-10-06 2022-04-07 Volkswagen Aktiengesellschaft Fahrzeug, Vorrichtung, Computerprogramm und Verfahren zur Durchführung in einem Fahrzeug

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015159486A1 (ja) * 2014-04-17 2015-10-22 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 車載ネットワークシステム、不正検知電子制御ユニット及び不正検知方法

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05106471A (ja) * 1991-10-15 1993-04-27 Toyota Motor Corp 車両用走行制御装置
JP3611028B2 (ja) * 2000-08-29 2005-01-19 トヨタ自動車株式会社 走行制御装置
JP2004017676A (ja) 2002-06-12 2004-01-22 Denso Corp 車両用通信システム、初期化装置及び車両用制御装置
JP5286659B2 (ja) 2006-11-07 2013-09-11 株式会社オートネットワーク技術研究所 車載装置中継システム、車載装置中継方法及び中継装置
US8676466B2 (en) * 2009-04-06 2014-03-18 GM Global Technology Operations LLC Fail-safe speed profiles for cooperative autonomous vehicles
US8698639B2 (en) * 2011-02-18 2014-04-15 Honda Motor Co., Ltd. System and method for responding to driver behavior
WO2013074897A1 (en) * 2011-11-16 2013-05-23 Flextronics Ap, Llc Configurable vehicle console
JP2014085711A (ja) * 2012-10-19 2014-05-12 Toyota Motor Corp 制動制御装置、制動制御方法、プログラム及び媒体
JP6031956B2 (ja) 2012-11-15 2016-11-24 株式会社デンソー 通信装置
JP5919205B2 (ja) 2013-01-28 2016-05-18 日立オートモティブシステムズ株式会社 ネットワーク装置およびデータ送受信システム
WO2014174585A1 (ja) * 2013-04-23 2014-10-30 トヨタ自動車株式会社 車速制御装置
JP2015065546A (ja) 2013-09-25 2015-04-09 日立オートモティブシステムズ株式会社 車両制御装置
JP6289284B2 (ja) * 2014-06-20 2018-03-07 ルネサスエレクトロニクス株式会社 半導体装置及び制御方法
JP6336886B2 (ja) * 2014-10-22 2018-06-06 株式会社デンソー 物体検知装置
JP2016141231A (ja) * 2015-01-30 2016-08-08 株式会社アドヴィックス 衝突回避装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015159486A1 (ja) * 2014-04-17 2015-10-22 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 車載ネットワークシステム、不正検知電子制御ユニット及び不正検知方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
KISHIKAWA, TAKESHI ET AL.: "Proposal for Unauthorized ECU Detection Method Using CAN Traffic Centralized Monitoring", CAN SCIS 2016 SYMPOSIUM ON CRYPTOGRAPHY AND INFORMATION SECURITY, 19 January 2016 (2016-01-19) *
NAKANO, MASASHI ET AL.: "Threat analysis of spoofing attacks on vehicles equipped with the Advanced Driving Assistant System", IEICE TECH. REP., vol. 115, no. 519, 24 March 2016 (2016-03-24), pages 13 - 18 *
UEDA, HIROSHI ET AL.: "Security Authentication System for in-Vehicle Network", SEI SEI TECHNICAL REVIEW, July 2015 (2015-07-01) *

Also Published As

Publication number Publication date
US20190263423A1 (en) 2019-08-29
JP6558703B2 (ja) 2019-08-14
US11247694B2 (en) 2022-02-15
JP2018098682A (ja) 2018-06-21
DE112017006282T5 (de) 2019-09-26

Similar Documents

Publication Publication Date Title
WO2018110046A1 (ja) 制御装置、制御システム、制御方法、制御プログラムおよび記憶媒体
CN107113214B (zh) 不正常检测电子控制单元、车载网络系统以及通信方法
CN111052681B (zh) 异常检测电子控制单元、车载网络系统及异常检测方法
CN109076001B (zh) 帧传送阻止装置、帧传送阻止方法及车载网络系统
CN106031098B (zh) 不正常帧应对方法、不正常检测电子控制单元以及车载网络系统
CN108353014B (zh) 非法控制抑止方法、非法控制抑止装置和车载网络系统
CN108028784B (zh) 不正常检测方法、监视电子控制单元以及车载网络系统
CN111934966B (zh) 不正常检测电子控制单元、车载网络系统以及不正常检测方法
US20190141070A1 (en) Anomaly detection electronic control unit, onboard network system, and anomaly detection method
KR102030397B1 (ko) 네트워크 감시 장치
JP2022125099A (ja) 不正検知サーバ、及び、方法
US9843523B2 (en) Communication management apparatus and communication management method for vehicle network
US20180375881A1 (en) Information processing device, information processing method, and non-transitory computer readable recording medium
US20180375879A1 (en) Vehicle network operating protocol and method
WO2020085330A1 (ja) 電子制御装置、電子制御方法及びプログラム
KR101714526B1 (ko) 차량 네트워크 해킹 방지 방법 및 장치
JP2019146145A (ja) 通信装置、通信方法及びプログラム
JP2019209961A (ja) 情報処理装置、監視方法、プログラム及びゲートウェイ装置
JP6519830B1 (ja) 電子制御装置、監視方法、プログラム及びゲートウェイ装置
JP2019172261A (ja) 制御装置、制御システム、及び制御プログラム
CN113556271A (zh) 非法控制抑止方法、非法控制抑止装置和车载网络系统
JP2019209962A (ja) 情報処理装置、監視方法、プログラム及びゲートウェイ装置
WO2020105657A1 (ja) 車載中継装置及び中継方法
JP6519829B1 (ja) 電子制御装置、監視方法、プログラム及びゲートウェイ装置
WO2018020833A1 (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: 17881197

Country of ref document: EP

Kind code of ref document: A1

122 Ep: pct application non-entry in european phase

Ref document number: 17881197

Country of ref document: EP

Kind code of ref document: A1