WO2020022445A1 - フレーム転送方法及びセキュアスターカプラ - Google Patents
フレーム転送方法及びセキュアスターカプラ Download PDFInfo
- Publication number
- WO2020022445A1 WO2020022445A1 PCT/JP2019/029252 JP2019029252W WO2020022445A1 WO 2020022445 A1 WO2020022445 A1 WO 2020022445A1 JP 2019029252 W JP2019029252 W JP 2019029252W WO 2020022445 A1 WO2020022445 A1 WO 2020022445A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- frame
- branch
- unit
- star coupler
- routing
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/30—Services specially adapted for particular environments, situations or purposes
- H04W4/40—Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P]
- H04W4/44—Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P] for communication between vehicles and infrastructures, e.g. vehicle-to-cloud [V2C] or vehicle-to-home [V2H]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/44—Star or tree networks
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60R—VEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
- B60R16/00—Electric 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/02—Electric 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/023—Electric 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40006—Architecture of a communication node
- H04L12/40013—Details regarding a bus controller
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/407—Bus networks with decentralised control
- H04L12/417—Bus networks with decentralised control with deterministic access, e.g. token passing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
- H04L63/101—Access control lists [ACL]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L2012/40208—Bus networks characterized by the use of a particular bus standard
- H04L2012/40215—Controller Area Network CAN
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L2012/40208—Bus networks characterized by the use of a particular bus standard
- H04L2012/40234—Local Interconnect Network LIN
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L2012/40208—Bus networks characterized by the use of a particular bus standard
- H04L2012/40241—Flexray
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L2012/40267—Bus for use in transportation systems
- H04L2012/40273—Bus for use in transportation systems the transportation system being a vehicle
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/44—Star or tree networks
- H04L2012/445—Star or tree networks with switching in a hub, e.g. ETHERNET switch
Definitions
- the present disclosure relates to a secure star coupler for preventing transmission of an illegal frame in a star topology communication network.
- ECUs electronice control units
- the communication network connecting these ECUs is called an in-vehicle network.
- in-vehicle network There are many standards for in-vehicle networks. Among them, there is a standard called FlexRay (registered trademark) designed as a protocol that is faster and more reliable than the currently mainstream Controller @ Area @ Network (hereinafter referred to as CAN (registered trademark)).
- FlexRay registered trademark
- CAN registered trademark
- FlexRay represents a value of “0” and a value of “1” by a voltage difference between two stranded wires.
- the ECU connected to the bus is called a node, and each node connected to the bus transmits and receives a message called a frame in common with the CAN.
- flex-ray adopts Time Division Multiple Multiple Access (hereinafter, TDMA), whereas CAN employs an event-triggered communication scheme.
- TDMA Time Division Multiple Multiple Access
- CAN employs an event-triggered communication scheme.
- each frame is transmitted at a predefined timing and order.
- Patent Literature 1 proposes an in-vehicle network monitoring device that detects whether a frame is transmitted to a bus at a predetermined communication interval, and determines that a frame out of the specified communication interval is invalid. A method for preventing control by an illegal frame is disclosed.
- Patent Literature 2 discloses an intelligent star coupler that switches a transfer source branch according to a time schedule.
- the intelligent star coupler makes it possible to prevent the attack frame from being injected from a branch where the transmission of the frame is not originally planned, but it is impossible to know that the attack has been attempted.
- the intelligent star coupler of Patent Document 2 cannot prevent the injection of an illegal frame from an illegal node existing in a branch where transmission is originally planned.
- the present disclosure solves the above-mentioned problem by coping with an illegal frame by grasping a transmission point of an illegal frame in a communication network adopting a time-triggered protocol designed by a star topology.
- the present invention aims to provide a frame transfer method and a secure star coupler that allow a secure communication network system.
- a secure star coupler is a secure star coupler in a time-slot-based time-triggered communication network, and includes a plurality of branches each including one or more communication devices and one bus in the communication network. Are connected through the secure star coupler, and the communication device transmits and receives frames within a predetermined time slot, and the secure star coupler is connected to a routing rule holding unit, a routing unit, and any of the plurality of branches.
- the first transceiver unit which is one of the plurality of transceiver units, holds a predetermined rule indicating a correspondence of the transceiver unit connected to the transmission source branch, and the first transceiver unit among the plurality of branches is Converting the physical signal received from the connected first branch bus to obtain a first digital signal, the routing unit converts the first digital signal into the first digital signal unless the non-transfer condition is met.
- a frame transfer method is a frame transfer method in a time-triggered time-triggered communication network, wherein the communication network includes one or more communication devices and one bus. Are connected through a secure star coupler, and the communication device transmits and receives a frame within a predetermined time slot.
- the frame transfer method includes a routing rule holding step, a receiving step, a routing step, a transmitting step,
- a routing rule holding step a predetermined rule regarding the correspondence between a time slot and a source branch that transmits a physical signal to be transferred by the secure star coupler in the time slot is held, and in the receiving step, The plurality Converting a physical signal received from the bus of the first branch, which is one of the branches, to obtain a first digital signal, and in the routing step, excluding the non-transfer condition, the first digital signal Routing the physical signal obtained by converting the routed first digital signal to a branch other than the first branch of the plurality of branches.
- the non-transfer condition includes: a first condition that the predetermined rule is not adhered to in the first branch; and a first branch of the plurality of branches already in a current time slot.
- a second digital signal obtained by converting a physical signal received from a second branch different from the second branch; It includes a second condition that is routed to branch other than the second branch of the.
- a recording medium such as a system, an integrated circuit, a computer program, or a computer-readable CD-ROM, and an apparatus, a system, a method, a computer program, and a recording medium. May be realized by any combination.
- FIG. 1 is a block diagram showing the overall configuration of the vehicle-mounted network system according to the first and second embodiments.
- FIG. 2 is a diagram for explaining a FlexRay cycle in the first and second embodiments.
- FIG. 3 is a diagram illustrating a format of a FlexRay frame according to the first and second embodiments.
- FIG. 4 is a block diagram illustrating a functional configuration of the ECU according to the first and second embodiments.
- FIG. 5 is a block diagram illustrating a configuration example of the secure star coupler according to the first embodiment.
- FIG. 6 is a block diagram illustrating an example of a functional configuration of the fraud detection ECU according to the first embodiment.
- FIG. 7 is a diagram illustrating an example of communication setting parameters stored in the communication setting parameter holding unit according to the first and second embodiments.
- FIG. 8 is a diagram illustrating an example of received frame information stored in the received frame information holding unit according to the first and second embodiments.
- FIG. 9 is a diagram illustrating an example of a routing table stored in the routing table holding unit according to the first and second embodiments.
- FIG. 10 is a diagram illustrating an example of frame information stored in the frame information holding unit according to the first and second embodiments.
- FIG. 11 is a diagram illustrating an example of a frame rule stored in the frame rule holding unit according to the first and second embodiments.
- FIG. 12 is a diagram illustrating an example of a branch abnormality degree stored in the branch abnormality degree holding unit according to the first and second embodiments.
- FIG. 13 is a diagram illustrating an example of a reception history stored in the reception history holding unit according to the first and second embodiments.
- FIG. 14 is a flowchart illustrating a procedure example of the operation of the secure star coupler according to the first embodiment.
- FIG. 15 is a flowchart illustrating a procedure example of the operation of the fraud detection ECU according to the first embodiment.
- FIG. 16 is a block diagram illustrating an example of a functional configuration of the secure star coupler according to the second embodiment.
- FIG. 17 is a block diagram illustrating an example of a functional configuration of a fraud detection ECU according to the second embodiment.
- FIG. 18 is a diagram illustrating an example of a blacklist stored in a blacklist holding unit according to the second embodiment.
- FIG. 19 is a diagram illustrating an example of a vehicle state stored in the vehicle state holding unit according to the second embodiment.
- FIG. 20 is a flowchart illustrating an example of a procedure of an operation of the secure star coupler according to the second embodiment when receiving a frame.
- FIG. 21 is a flowchart illustrating a procedure example of the operation of the fraud detection ECU according to the second embodiment.
- a secure star coupler is a secure star coupler in a time-slot-based time-triggered communication network, wherein the communication network includes a plurality of branches each including one or more communication devices and one bus. Are connected through the secure star coupler, and the communication device transmits and receives frames within a predetermined time slot, and the secure star coupler is connected to a routing rule holding unit, a routing unit, and any of the plurality of branches.
- the first transceiver unit which is one of the plurality of transceiver units, holds a predetermined rule indicating a correspondence of the transceiver unit connected to the transmission source branch, and the first transceiver unit among the plurality of branches is Converting the physical signal received from the connected first branch bus to obtain a first digital signal, the routing unit converts the first digital signal into the first digital signal unless the non-transfer condition is met.
- a second condition that the second digital signal obtained by converting the obtained physical signal is routed to a branch other than the second branch among the plurality of branches.
- the communication device further includes a communication control unit for performing communication with the communication device, wherein the communication control unit decodes the first digital signal, interprets the first digital signal as a frame, and stores information of the frame and the first digital signal.
- a receiving frame information holding unit that holds the identifier indicating the first branch or the first transceiver unit that is the transfer source and holds the received frame information as received frame information, wherein the communication control unit sends the received frame information to the communication device. You may be notified. This makes it possible for a device external to the secure star coupler to easily grasp the branch to which the frame received by the secure star coupler has been transmitted, thereby facilitating identification of the cause of the generation of an incorrect frame.
- the transceiver unit further includes a branch abnormality degree holding unit that holds an abnormality degree of each of the plurality of branches, wherein the routing unit is connected to a third branch that is one of the plurality of branches.
- a branch abnormality degree holding unit that holds an abnormality degree of each of the plurality of branches
- the routing unit is connected to a third branch that is one of the plurality of branches.
- the routing unit detects the occurrence of an error in a communication protocol used in the communication network in the frame, and the predetermined rule is followed for the third digital signal received from the third transceiver unit.
- the degree of abnormality of the third branch may be increased.
- the apparatus further includes an illegal reference list holding unit that holds an illegal reference list indicating an appropriate or inappropriate correspondence between the time slot and the value of the payload included in the frame, wherein the routing unit transmits the digital signal whose transfer has not been completed.
- the interpreted frame is compared with the fraud criterion list, and as a result of the comparison, the routing unit has an inappropriate correspondence between the time slot in which the frame was received and the value of the payload included in the frame. In this case, the transfer of the digital signal whose transfer has not been completed may be stopped. As a result, even if the frame is an illegal frame that matches the routing rule, it can be detected from the payload included in the frame and the transfer thereof can be prevented.
- the communication network is an in-vehicle network
- the secure star coupler further includes a vehicle state holding unit that holds vehicle information indicating a state of a vehicle equipped with the in-vehicle network
- the communication control unit includes the communication device.
- the routing unit updates the vehicle information using information received from the communication unit, and determines that the correspondence between the time slot in which the frame is received and the value of the payload included in the frame is inappropriate.
- the transfer of the digital signal whose transfer has not been completed may be stopped.
- the communication network is a vehicle-mounted network
- a vehicle state such as a traveling state
- the safety of traveling by an illegal frame in a dangerous situation for a driver is improved.
- a frame transfer method is a frame transfer method in a time-slot-based time-triggered communication network, wherein the communication network includes one or more communication devices and one bus. Are connected through a secure star coupler, and the communication device transmits and receives a frame within a predetermined time slot.
- the frame transfer method includes a routing rule holding step, a receiving step, a routing step, a transmitting step,
- a routing rule holding step a predetermined rule regarding the correspondence between a time slot and a source branch that transmits a physical signal to be transferred by the secure star coupler in the time slot is held, and in the receiving step, The plurality Converting a physical signal received from the bus of the first branch, which is one of the branches, to obtain a first digital signal, and in the routing step, excluding the non-transfer condition, the first digital signal Routing the physical signal obtained by converting the routed first digital signal to a branch other than the first branch of the plurality of branches.
- the non-transfer condition includes: a first condition that the predetermined rule is not adhered to in the first branch; and a first branch of the plurality of branches already in a current time slot.
- a second digital signal obtained by converting a physical signal received from a second branch different from the second branch; It includes a second condition that is routed to branch other than the second branch of the.
- Embodiment 1 [1. System configuration]
- an in-vehicle network of a star topology is monitored, and transmission of an unauthorized frame is performed based on information indicating each frame to be transmitted and received and a branch from which each frame is transmitted.
- a secure star coupler for detecting or preventing the transfer thereof and a fraud detection ECU will be described with reference to the drawings.
- FIG. 1 is a block diagram illustrating an example of an overall configuration of an in-vehicle network system 10 according to the present disclosure.
- the in-vehicle network system 10 includes buses 100a, 100b, 100c, and 100d that are buses used for communication according to the FlexRay protocol, ECUs 200a, 200b, 200c, and 200d that are ECUs connected to each bus, and control targets of each ECU. It comprises a certain steering 210, a gear 220, a brake 230, a camera 240, a secure star coupler 300 connecting between the buses, and a fraud detection ECU 310 connected to the secure star coupler 300 and the communication line 110.
- the ECUs 200a to 200d realize control of the vehicle by transmitting and receiving frames via the buses 100a to 100d, respectively.
- the fraud detection ECU 310 observes the buses 100a to 100d through the secure star coupler 300 in order to detect the occurrence of a fraudulent frame in the in-vehicle network system 10.
- the ECUs 200a to 200d and the fraud detection ECU 310 are examples of the communication device according to the present embodiment.
- the secure star coupler 300 shapes the signal so that the same signal flows through any of the buses 100a to 100d, and the ECUs are synchronized through the buses 100a to 100d.
- each bus and an ECU connected to the bus are also referred to as branches.
- a character string that is the same as the reference sign of each bus may be used for convenience.
- FlexRay cycle In FlexRay communication, an operation cycle called a cycle composed of four segments is repeated.
- Each node included in one FlexRay network (also referred to as a cluster) realizes synchronous communication by measuring and correcting a difference between a global time indicating a cycle length and a start time and each unique local time. I have.
- FIG. 2 is a diagram showing a cycle of FlexRay communication. FlexRay communication is executed by repeating this cycle. Each node synchronously holds the number of cycle repetitions (cycle count). The value of the cycle count (n + 0, n + 1 in FIG. 2) is incremented by 1 from 0 to 63, and is reset once and becomes 0 again in the next cycle of 63.
- Each cycle is composed of four segments: a static segment (Static segment), a dynamic segment (Dynamic segment), a symbol window (Symbol window), and a network idle time (NIT). Since the time length of each segment is common to clusters according to parameters designed in advance, the time length of one cycle is also common to clusters. Note that the dynamic segment and symbol window are optional.
- Each node sends frames in static and dynamic segments.
- the static segment and the dynamic segment are configured in units of a fixed time during which one frame called a time slot or a slot can be transmitted.
- a static segment is composed of multiple slots, and each cycle starts with a static segment.
- the number of slots in the static segment and the length of each slot are common in the cluster.
- the slots are given numbers (slot numbers) that are incremented by one from the top in order from the top, and the frames transmitted in each slot are assigned as frame identifiers (Frame IDs, hereinafter also referred to as frame IDs). Numbers are used.
- Slots in the static segment are also called static slots (or static time slots), and frames transmitted in the static segment are also called static frames.
- Static frames have a common payload length within a cluster.
- Dynamic segments are composed of slots called minislots, and are located next to static segments in each cycle. However, it is not essential as described above.
- the mini-slots are also provided with numbers (slot numbers) that are incremented by one in order from the beginning similarly to the slots of the static segment.
- Each ECU has a predetermined frame transmission timing (mini-slot). However, unlike the static segment, it is not necessary to transmit the frame every predetermined cycle.
- Slots in the dynamic segment are also called dynamic slots (or dynamic time slots), and frames transmitted in the dynamic segment are also called dynamic frames.
- the payload length of the dynamic frame can take any value from 0 to 254. That is, the length of the dynamic slot is variable.
- the symbol window is a time zone for transmitting and receiving signals called symbols.
- the network idle time is a time period during which communication is not performed, and is always provided at the end of each cycle.
- each ECU performs a synchronization process or the like without transmitting data, and the network is literally in an idle state.
- the transmitting node transmits a frame having a predetermined content to the bus at the predetermined transmission timing (slot) as described above. Then, the receiving node receives the frame from the bus only at a predetermined receiving timing (slot).
- a method called “cycle multiplexing” that realizes communication of frames having different contents depending on the cycle even in the same numbered slot of the static segment or the dynamic segment is used.
- FIG. 3 is a diagram showing a frame format of the FlexRay protocol. This format is common for static and dynamic frames.
- the frame includes three segments: a header segment (Header segment), a payload segment (Payload segment), and a trailer segment (Trailer segment).
- a header, a payload, and a trailer may also be referred to.
- the $ header segment starts with Reserved @ bit, followed by Payload @ preamble @ indicator, Null @ frame @ indicator, Sync @ frame @ indicator, and Startup @ frame @ indicator, each of which is one bit as meta information relating to the attribute (type) of the frame. Further, 11 bits of Frame @ ID, 7 bits of Payload @ length, 11 bits of Header @ CRC follow, and the last 6 bits of Cycle @ count.
- the above-mentioned slot number used in the Frame @ ID is also referred to as a slot ID, and is used for identifying a type according to a frame transmission timing and a frame content in a static segment or a dynamic segment. .
- ⁇ Payload ⁇ length indicates the length of the payload of the frame, and the maximum value is 127.
- the payload segment stores data of the number of bytes obtained by multiplying the value of Payload @ length by two.
- Header CRC is a CRC (Cyclic Redundancy Check) calculated from a value from Sync frame indicator to Payload length.
- ⁇ Cycle ⁇ count stores a value (0 to 63) indicating the number of times the current cycle is repeated in the cluster.
- the payload segment contains the net data of the frame and is up to 254 bytes.
- the trailer segment stores a CRC calculated from a value including the entire header and payload.
- FIG. 4 is a block diagram illustrating an example of a functional configuration of the ECU 200a. Note that the ECU 200b, the ECU 200c, and the ECU 200d may have the same configuration as the ECU 200a, and a description thereof will be omitted.
- the ECU 200a includes a frame transmission / reception unit 201, a frame interpretation unit 202, an external device control unit 203, a frame generation unit 204, and a communication setting parameter holding unit 205.
- the ECU 200a includes, for example, a microcontroller including a processor and a memory, and the components described here have a functional configuration realized by the processor executing one or a plurality of programs stored in the memory. Element. The same applies to the ECUs 200b, 200c and 200d.
- the frame transmission / reception unit 201 converts a physical signal received from the bus 100a into a digital signal and acquires frame data (frame reception).
- the frame transmission / reception unit 201 synchronizes with another ECU included in the in-vehicle network system 10 as a cluster while referring to the communication setting parameters held in the communication setting parameter holding unit 205, so that the other ECUs transmit.
- the received frame can be correctly received.
- the frame transmission / reception unit 201 converts the frame into a physical signal according to a transmission frame request from the frame generation unit 204, and transmits the physical signal to the bus 100a at a predetermined timing (slot) (frame transmission). .
- the frame interpreting unit 202 interprets the payload of the received frame notified from the frame transmitting / receiving unit 201, and sends a notification for executing the control of the steering 210 connected to the ECU 200a according to the content of the payload to the external device control unit 203. Out.
- this notification for example, steering assist control according to the traveling state determined by the frame interpretation unit 202 based on the information on the vehicle speed notified from another ECU is realized.
- automatic steering of the steering is realized based on a steering operation instruction signal received from an automatic parking ECU (not shown).
- the external device control unit 203 controls the steering 210 connected to the ECU 200a. Further, the external device control unit 203 monitors the state of the steering 210 and requests the frame generation unit to transmit a frame for notifying the other ECU of the state.
- the state of the steering 210 is, for example, a steering angle (steering angle) of the steering 210.
- the frame generation unit 204 generates a frame based on a request from the external device control unit 203, and requests the frame transmission / reception unit 201 to transmit the frame.
- the communication setting parameter holding unit 205 holds parameters for correctly converting a physical signal received from the bus 100a into a digital signal. This parameter is common in the in-vehicle network system 10. Therefore, the same thing is held in other ECUs. Details of the communication setting parameters will be described later using an example shown in FIG.
- FIG. 5 is a diagram illustrating an example of the configuration of the secure star coupler 300.
- the secure star coupler 300 includes transceiver units 301a, 301b, 301c, and 301d, a routing unit 302, an ECU interface unit 303, a received frame information holding unit 304, and a routing table holding unit 305.
- the transceiver unit 301a is connected to the bus 100a, converts a physical signal received from the bus 100a into a digital signal, and notifies the routing unit 302 of the digital signal. Further, it converts the digital signal notified from the routing unit 302 into a physical signal, and transmits the physical signal to the bus 100a.
- the transceiver unit 301b is connected to the bus 100b
- the transceiver unit 301c is connected to the bus 100c
- the transceiver unit 301d is connected to the bus 100d.
- Each of the transceiver units 301b to 301e functions similarly to the transceiver unit 301a for a physical signal received from the connected bus.
- the routing unit 302 routes the digital signal notified from the transceiver unit 301a to the transceiver units 301b, 301c, and 301d excluding the transceiver unit 301a. Similarly, the routing unit 302 routes the digital signal notified from the transceiver unit 301b to each transceiver unit except the transceiver unit 301b. The routing unit 302 further notifies the ECU interface unit 303 of the digital signal being routed and information indicating from which branch the digital signal is received (reception branch information).
- the routing unit 302 transfers a slot number (slot ID) and a time slot indicated by the slot number based on the routing table stored in the routing table holding unit 305.
- a correspondence with a source branch (or a transceiver unit connected to the source branch) which is a branch for transmitting a signal to be performed is set.
- the routing unit 302 routes the signal received from the set corresponding source branch to the other branch in the time slot of each slot number.
- the signal received from the branch not corresponding to the slot number is ignored by the routing unit 302, that is, the transfer to the other branch by the secure star coupler 300 is not performed.
- the routing unit 302 routes the signal received first to a branch other than the branch that transmitted the signal.
- the branch and the transceiver unit are in a correspondence relationship with the bus to which the transceiver unit is connected as an intermediary, and identifying and indicating one can be replaced with identifying and indicating the other.
- the routing unit 302 routes a signal to a transceiver unit connected to (a bus of) a certain branch may be expressed as routing to the branch, and vice versa.
- a branch that is a signal transmission source may be indicated using a transceiver unit connected to (the bus of) the branch.
- the ECU interface unit 303 When notified of the digital signal and the reception branch information from the routing unit 302, the ECU interface unit 303 decodes the digital signal and interprets it as a reception frame, and associates the information of the reception frame with the reception branch information. It is stored in the received frame information holding unit 304. Further, in response to a request from the fraud detection ECU 310, the reception frame information and the reception branch information stored in the reception frame information holding unit 304 are notified to the fraud detection ECU 310. Further, the ECU interface unit 303 interprets the instruction from the fraud detection ECU 310 and rewrites the routing table stored in the routing table holding unit 305 and indicating the transmission source branch which is the transmission source of the signal to be transferred in each slot. , And the control of the routing unit 302 to reflect the settings after the rewriting.
- the received frame information holding unit 304 holds the above-mentioned received frame information and received branch information in association with each other.
- FIG. 8 shows an example of received frame information stored in the received frame information holding unit 304.
- an identifier 100b, 100a, 100c in the figure
- reception frame information information in which the information of the reception frame and the reception branch information are associated with each other in this manner. Details of the received frame information will be described later using this example shown in FIG.
- the routing table holding unit 305 stores a table indicating a source branch which is a branch for transmitting a signal to be transferred in each slot.
- FIG. 9 shows an example of the routing table stored in the routing table holding unit 305. Details of the routing table will be described later using this example shown in FIG.
- FIG. 6 is a block diagram illustrating an example of a functional configuration of the fraud detection ECU 310.
- the fraud detection ECU 310 includes a star coupler communication control unit 311, a fraud detection unit 312, a frame generation unit 313, a communication setting parameter storage unit 205, a frame information storage unit 314, a frame rule storage unit 315, a branch abnormality degree storage unit 316, and A reception history holding unit 317 is provided. Note that the same components as those of the ECU 200a are given the same numbers, and descriptions thereof are omitted.
- the fraud detection ECU 310 also includes a microcontroller including, for example, a processor and a memory, and the components listed here are functional units implemented by the processor executing one or more programs stored in the memory. It is a component.
- the star coupler communication control unit 311 is a communication interface with the secure star coupler 300, and sets the secure star coupler 300 based on the communication setting parameters stored in the communication setting parameter holding unit 205.
- the setting of the secure star coupler 300 can also include routing control information based on a table indicating the correspondence between slots and source branches. Further, the above-mentioned received frame information, which is information of the frame received by the secure star coupler 300, is received from the secure star coupler 300 and is notified to the fraud detecting unit 312. When requested to transmit a frame from the frame generation unit 313, the star coupler communication control unit 311 notifies the contents of the frame to the secure star coupler 300.
- the fraud detecting unit 312 determines whether the received frame is a fraudulent frame based on the received frame information including the information on the receiving branch, which is notified from the star coupler communication control unit 311. In this determination, the fraud detecting unit 312 first refers to the table indicating the correspondence between the slot ID and the source branch stored in the frame information holding unit 314, and determines the frame ID and the receiving branch of the actual received frame. To determine if the response is correct. If the correspondence between the frame ID of the received frame and the reception branch is correct, the fraud detection unit 312 determines a rule for each type according to the content of the payload of the received frame stored in the frame rule holding unit 315 and a reception history holding unit.
- the invalidity detection unit 312 further requests the frame generation unit 313 to transmit a frame for notifying another ECU that the invalid frame has been transmitted.
- the fraud detection unit 312 increases the value of the branch that transmitted the fraudulent frame among the degrees of abnormality of each branch stored in the branch abnormality degree holding unit 316.
- the fraud detecting unit 312 rewrites the routing table to the ECU interface unit 303 of the secure star coupler 300 and prevents the fraudulent frame transmitted from this branch from being transferred to another branch in the future. An instruction to reflect the later setting to the control of the routing unit 302 is notified via the star coupler communication control unit 311.
- the frame information holding unit 314 stores frame information that is information on a frame (or slot) ID, a transmission source branch, and the like transmitted by each ECU.
- An example of the frame information stored in the frame information holding unit 314 is shown in FIG. 10 and will be described later in detail.
- the frame rule holding unit 315 stores rules used by the fraud detecting unit 312 to determine whether or not the received frame is fraudulent.
- FIG. 11 shows an example of a frame rule stored in the frame rule holding unit 315, which will be described later in detail.
- the branch abnormality degree holding unit 316 stores an abnormality degree for each branch based on the number of received invalid frames.
- FIG. 12 shows an example of the branch abnormality degree stored in the branch abnormality degree holding unit 316, which will be described later in detail.
- the reception history holding unit 317 stores information related to a received frame, for example, a value indicated by a payload, meta information such as a frame attribute, and the number of received frames.
- FIG. 13 shows an example of the reception history stored in the reception history holding unit 317, and details thereof will be described later.
- FIG. 7 illustrates an example of the communication setting parameters stored in the communication setting parameter storage unit 205.
- the communication setting parameters include a data transfer speed of 10 Mbps, a slot ID of a static segment (that is, a frame ID of a frame transmitted and received in each slot) of 1 to 50, and a slot of a dynamic segment.
- the ID (same as above, that is, the frame ID) is 51 to 100. It also shows that the payload length of the static frame is 8 (that is, 16 bytes).
- the values of these parameters are shared by all the ECUs, and the transmission and reception of the FlexRay frame is realized based on the values of these parameters. It should be noted that the values of the communication setting parameters shown in FIG.
- the above-described communication setting parameters are merely examples, and may include parameters not described in FIG. 7 (for example, the length of each segment, the length of a slot, and the like). Not all of the parameters listed in are required.
- FIG. 8 shows an example of the received frame information stored in the received frame information holding unit 304 provided in the secure star coupler 300.
- the information of the latest received frame is held in a list format from the top.
- the information of the received frame includes, for each frame received by the secure star coupler 300, a reception branch which is information on which branch the signal was received from, a time slot ID (reception slot ID) for receiving a signal indicating the reception frame, and a cycle count. , Payload length, data included in the payload, a flag state of Payload @ preamble @ indicator, and an error flag indicating whether or not the frame was correctly received.
- FIG. 9 shows an example of a routing table stored in the routing table holding unit 305 provided in the secure star coupler 300.
- the routing table in FIG. 9 includes a rule (also referred to as a routing rule) that defines a specific timing determined by a combination of a slot ID, a cycle offset, and a cycle reception, and a source branch that transmits a signal to be transferred at the timing. Is shown for each line. For example, the first line indicates the transmission source branch at the timing when the slot ID is 1, Cycle @ offset is 0, and Cycle @ reception is 1, by the identifier of 100c. Upon receiving a signal from the bus (bus 100c) of the branch indicated by the identifier at this timing, the routing unit 302 routes the signal so that the signal is transferred to another branch.
- a rule also referred to as a routing rule
- the routing unit 302 ignores the signal (does not route).
- the transmission source branch at the timing determined by the combination of the slot ID of 3, the cycle @ offset of 0, and the cycle @ reception of 2 is the branch with the identifier of 100a.
- the source branch at the timing when the slot ID is 99, the cycle @ offset is 1, and the cycle @ reception is 2 is the branch with the identifier 100b.
- the routing table holding unit 305 including the routing table indicating such a routing rule is an example of the routing rule holding unit in the present embodiment.
- FIG. 10 shows an example of frame information stored in the frame information holding unit 314 provided in the fraud detection ECU 310.
- each row of the table holds, as one piece of frame information, a slot ID, a cycle offset, a cycle reception, a frame name, and a type of information indicated by a payload included in the frame.
- Cycle @ offset and Cycle @ reception are used when a method of transmitting and receiving a frame including data of different contents (types) depending on the cycle even with the same slot ID is used, which is called cycle multiplexing (cycle multiplexing). This is information necessary for extraction.
- Cycle @ offset is 0 and Cycle @ reception is 4.
- the transmission of the frame D which is a frame including the data of the camera information 1 in the payload, starts from the cycle with the cycle count of 0 and is executed every four cycles. That is, the frame D is transmitted in a slot having a slot ID of 99 in a cycle count of 0, 4, 8, 12, 16,..., 52, 56, and 60.
- the frame E including the camera information 2 is transmitted in a slot having a slot ID of 99 in a cycle having a cycle count of 1, 5, 9,... 53, 57, 61.
- the frame F including the camera information 3 is transmitted in a slot having a slot ID of 99 in a cycle having a cycle count of 2, 6, 10,..., 54, 58, and 62.
- the frame G including the camera information 4 is transmitted in a slot having a slot ID of 99 in a cycle having a cycle count of 3, 7, 11,..., 55, 59, and 63.
- Cycle multiplexing (cycle multiplexing) transmits frames having different contents in slots of the same slot ID in different cycles as described above.
- each frame information further includes information indicating a transmission source ECU which is a transmission source of the frame in the in-vehicle network system 10 and a branch to which the transmission source ECU is connected.
- Such frame information indicates, so to speak, a frame transmission / reception schedule in the vehicle-mounted network system 10.
- the first row of the table in FIG. 10 is a schedule in which, for a slot having a slot ID of 1, a cycle @ offset is 0 and a cycle @ reception is 1 (that is, a frame including data of the same content is transmitted in every cycle) This indicates that the frame with the name A is transmitted, the content of the payload of frame A, that is, the information indicated by the payload is information on speed, the transmission source ECU is 200c, and the branch is 100c.
- the second row of the table indicates that no frame is transmitted in the slot with the slot ID of 2.
- the third row of the table shows a schedule in which, for a slot having a slot ID of 3, a cycle @ offset is 0 and a cycle @ reception is 2 (that is, the cycle count is transmitted only in an even-numbered cycle).
- the information indicates that the frame is transmitted, the information indicated by the payload of the frame B is the steering angle, the transmission source ECU is 200a, and the branch is 100a.
- the schedule of which the cycle @ offset is 1 and the cycle @ reception is 2 (that is, transmitted only when the cycle count is an odd number)
- the information indicates that the frame is transmitted, the information indicated by the payload of the frame C is the gear state (position of the shift lever or the selector), the transmission source ECU is 200b, and the branch is 100b.
- the slot with the slot ID of 99 a schedule with a cycle @ offset of 0 and a cycle of $ reception of 4 is transmitted, a frame with a frame name of D is transmitted, and the payload of the frame D indicates the camera information. 1 indicates that the transmission source ECU is 200d and the branch is 100d.
- a schedule with a cycle @ offset of 1 and a cycle of @reception of 4 is transmitted, and a frame with a frame name of E is transmitted.
- the payload of the frame E indicates the camera information. 2
- the transmission source ECU is 200d
- the branch is 100d.
- the schedule of which the cycle @ offset is 2 and the cycle @ reception is 4 the frame whose frame name is F is transmitted, and the payload of the frame F indicates the camera information.
- 3 indicates that the transmission source ECU is 200d and the branch is 100d.
- a slot having a slot ID of 99, a schedule of Cycle @ offset of 3, and a cycle of Cycle of reception of 4 indicate that a frame having a frame name of G is transmitted, and the payload of the frame G indicates that the camera information 4 and This indicates that the information is called predetermined information, the transmission source ECU is 200d, and the branch is 100d.
- frames A and B are static frames transmitted in the static segment, and frames C to G are transmitted in the dynamic segment. It is a dynamic frame.
- FIG. 11 is a diagram illustrating an example of a frame rule stored in the frame rule holding unit 315 provided in the fraud detection ECU 310.
- a reception rule is set for each frame type specified by a frame name in each row of the table.
- the payload length is fixed at 8
- the reception rule is that the difference between the speed indicated by the payload of the currently received frame A and the speed indicated by the previously received frame A is 0.5 km / h or more. In this case, it is determined that the frame is invalid.
- the payload length is fixed at 8
- the reception rule is that the difference between the steering angle indicated by the payload of the currently received frame B and the steering angle indicated by the payload of the previously received frame B is 30 degrees or more. In some cases, it is determined that the frame is invalid.
- the fraud detection ECU 310 may determine whether the frame is fraudulent based not only on whether the received frame conforms to the reception rule but also on whether the payload length is correct.
- FIG. 12 is an example of the branch abnormality degree stored in the branch abnormality degree holding unit 316 provided in the fraud detection ECU 310.
- the abnormalities for each branch are held in each row of the table.
- the degree of abnormality of the branch is increased by one every time an illegal frame is received based on the result of the determination by the illegality detecting unit 312, by one.
- the abnormality degree of the branch identified by the identifier “100a” is 0, the abnormality degree of the branch identified by the identifier “100b” is 0, and the abnormality degree of the branch identified by the identifier “100c” is 0, the abnormality degree of the branch identified by the identifier “100d” is 20.
- FIG. 13 is an example of the reception history stored in the reception history holding unit 317 provided in the fraud detection ECU 310.
- the table holds the last received value and the vehicle state indicated by the payload for each frame type specified by the frame name.
- the previous reception value is held together with the reception time ( ⁇ s).
- the previous reception value of the frame A indicating the speed of the vehicle is 40.5 km / h
- the previous reception time is 12100 ⁇ s.
- the previous reception value of the frame B indicating the steering angle is 5 degrees
- the previous reception time is 8100.
- the previous reception value of the frame C indicating the gear state is the drive state
- the previous reception time is 12400 ⁇ s.
- the previous reception value of the frame D indicating the camera information 1 indicates detection of the preceding vehicle, and the previous reception time is 1440 ⁇ s.
- the previous reception value of the frame E indicating the camera information 2 indicates pedestrian detection, and the reception time is 5480 ⁇ s.
- the previous reception value of the frame F indicating the camera information 3 indicates the lane detection state, and the reception time is 9520 ⁇ s.
- the previous reception value of the frame G indicating the camera information 4 indicates that the rear camera has not been started, and the reception time is 13560 ⁇ s.
- the vehicle state information is updated to “running” when the speed of the vehicle indicated by the frame A is greater than 0 km / h, and is updated to “stopping” when the speed is 0 km / h.
- the previous received value is updated by the fraud detecting unit 312, for example, every time a frame is received.
- the reception time is held, but the reception time is not essential. Further, the reception time is expressed in ⁇ s indicating the elapsed time from a predetermined reference time, but may be any unit indicating time. For example, the number of micro ticks calculated from the internal clock used in the FlexRay protocol may be used, and the number of macro ticks defined using the micro ticks may be used.
- FIG. 14 is a flowchart showing an example of a procedure of an operation of the secure star coupler 300.
- the routing unit 302 determines whether a signal has been received from any of the branches of the transceiver units 301a to 301d (S1001). If the signal is received (Yes in S1001), the routing unit 302 stores the routing rule corresponding to the current timing (slot) at which the signal is received in the routing table stored in the routing table holding unit 305. It is determined whether or not exists (S1002). If a corresponding routing rule exists (Yes in S1002), the routing unit 302 checks whether the correspondence between the slot receiving the signal and the branch transmitting the signal is appropriate, based on the routing rule. (S1003). If there is no corresponding routing rule (No in S1002), the routing unit 302 checks whether a signal is being received from another branch (S1006).
- step S1003 when the correspondence between the slot in which the frame was received and the branch in which the received frame was transmitted is appropriate (Yes in S1003), the routing unit 302 transmits this signal to a branch other than the branch in which the received frame was transmitted. The route is routed to the branch and transmitted from the transceiver unit (S1004).
- the ECU interface unit 303 interprets a frame from the received signal, and stores the received frame in the received frame information holding unit 304 (S1005). If the correspondence between the slot in which the frame was received and the branch in which the received frame was transmitted is not appropriate (No in S1003), the processing of the secure star coupler 300 ends.
- step S1006 if no signal is received from another branch (No in S1006), the secure star coupler 300 executes the processing in steps S1004 and S1005 described above. If a signal has been received from another branch (Yes in S1006), the processing of the secure star coupler 300 ends.
- step S1001 if a signal has not been received (No in S1001), the ECU interface unit 303 determines whether a notification has been received from the fraud detection ECU 310 (S1007). If the notification has not been received (No in S1007), the process of the secure star coupler 300 returns to S1001. If the notification has been received (Yes in S1007), the ECU interface unit 303 determines whether or not the content of the notification is a frame transmission request for an alert or the like to another ECU (S1008). If the request is a frame transmission request (Yes in S1008), the ECU interface unit 303 causes each transceiver unit to transmit the frame to all branches (S1009), and the process of the secure star coupler 300 ends.
- the ECU interface unit 303 determines that the notification is a request to update and reflect the setting of the routing table (RT in the figure), updates the routing table, and changes the setting. After the reflection (S1010), the processing of the secure star coupler 300 ends.
- FIG. 15 is a flowchart showing an example of the procedure of the operation of the fraud detection ECU 310.
- the star coupler communication control unit 311 receives the reception frame information from the secure star coupler 300 (S1101).
- the fraud detecting unit 312 determines that the combination of the reception branch and the reception slot ID indicated by the reception frame information is the combination of the slot ID and the transmission source branch indicated by the frame information (FIG. 10) stored in the frame information holding unit 314. It is confirmed whether or not they match (S1102). If the received frame information matches the frame information (Yes in S1102), the fraud detecting unit 312 stores the content (payload) of the received frame indicated by the received frame information in the frame rule (FIG. 11) stored in the frame rule holding unit 315. It is further confirmed whether or not it matches the corresponding one included (S1103). If the corresponding frame rule is satisfied (Yes in S1103), the processing of the fraud detection ECU 310 ends.
- the fraud detecting unit 312 determines whether the accumulated abnormality degree of the reception branch is equal to or more than a predetermined value (S1105). If the value is equal to or more than the predetermined value (Yes in S1105), the fraud detecting unit 312 transmits the secure star coupler via the star coupler communication control unit 311 in order to suppress transmission of a frame that is highly likely to be fraudulent from the branch. 300 is updated (S1106). If the abnormality degree is less than the predetermined value (No in S1105), or after updating the routing table, the processing of the fraud detection ECU 310 ends.
- the updating of the routing table (S1106) may be executed, for example, by deleting the routing rule in which the reception branch determined in step S1105 that the degree of abnormality is equal to or more than the predetermined value is the transmission source branch.
- the routing table may further include a flag indicating whether or not transfer is possible for each routing rule.
- the configuration of the in-vehicle network system using the above-described secure star coupler and the fraud detecting ECU is such that the secure star coupler 300 and the fraud detecting ECU 310 in the in-vehicle network system 10 shown in FIG. 1300 and the fraud detection ECU 1310, respectively, and the other components may be common, so that illustration and description are omitted.
- the FlexRay cycle shown in FIG. 2 the FlexRay frame format shown in FIG. 3, the functional configuration of the ECU shown in FIG. 4, and the parameters, information and rules shown in FIGS.
- the present invention can be applied to the embodiment, and the illustration and description will not be repeated.
- FIG. 16 is a diagram illustrating an example of a functional configuration of the secure star coupler 1300.
- the secure star coupler 1300 includes transceiver units 301a, 301b, 301c, 301d, a routing unit 1302, an ECU interface unit 1303, a received frame information holding unit 304, a routing table holding unit 305, a black list holding unit 1306, and a branch abnormality degree holding unit 316. , And a vehicle state holding unit 1307.
- the secure star coupler 1300 includes, for example, a microcontroller including a processor and a memory, and an input / output circuit.
- the above-mentioned components of the secure star coupler 1300 may be configured to receive a signal at an input circuit and execute a program or a plurality of programs stored in a memory on the signal to determine a result of the determination. It is a functional component that implements processing until a signal is output from an output circuit to a predetermined bus in response.
- the routing unit 1302 routes the digital signal notified from the transceiver unit 301a to the transceiver units 301b, 301c, and 301d excluding the transceiver unit 301a. Similarly, the routing unit 1302 routes the digital signal notified from the transceiver unit 301b to each transceiver unit except the transceiver unit 301b. The routing unit 1302 further notifies the ECU interface unit 1303 of the digital signal being routed and the reception branch information indicating from which branch the digital signal is being received. In addition, the routing unit 1302 associates the slot number (slot ID) with the transmission source branch (or the transceiver unit connected to the transmission source branch) based on the routing table stored in the routing table holding unit 305. Set.
- the routing unit 1302 routes the signal received from the set corresponding source branch to the other branch in the time slot of each slot number.
- the signal received from the unset source branch is ignored by the routing unit 1302, that is, the transfer to another branch by the secure star coupler 300 is not executed.
- the routing unit 1302 routes the signal received first to a branch other than the branch that transmitted the signal.
- the routing unit 1302 obtains a frame by decoding a signal that is being routed, that is, a signal for which transfer is not completed, and determines whether or not the contents of the frame match the blacklist held in the blacklist holding unit 1306. I do.
- the routing unit 1302 further refers to the branch abnormality degree stored in the branch abnormality degree storage unit 316 and the vehicle state stored in the vehicle state storage unit 1307.
- the routing unit 1302 stops signal routing. I do. That is, the transfer of the signal to another branch by the secure star coupler 1300 is stopped.
- the routing unit 1302 decodes the signal received from each branch to acquire a frame, and performs an error detection process for checking whether or not a protocol error has occurred in the frame in each branch. If an error has occurred in a frame received in a slot for which the routing rule is valid, the degree of abnormality of the branch stored in the branch abnormality degree holding unit 316 for the branch that transmitted this frame is increased. This is done to keep track of which branch is trying to send an incorrect frame. If the legitimate ECU transmitting a predetermined frame in a specific slot and the ECU attempting to transmit an invalid frame in the slot are included in different branches, the secure star coupler 1300 satisfies the routing rule. Ignored as an illegal frame transmission from a branch that does not.
- the ECU interface unit 1303 decodes the digital signal and interprets the digital signal as a reception frame, and interprets the information of the reception frame and the reception branch information.
- the information is stored in the received frame information holding unit 304 in association with each other.
- the fraud detection ECU 1310 is notified of received frame information and received branch information stored in the received frame information holding unit 304.
- the ECU interface unit 1303 interprets the instruction from the fraud detection ECU 1310, rewrites the routing table stored in the routing table holding unit 305 and indicating the source branch transmitting the signal to be transferred in each slot, and The update of the blacklist stored in the blacklist storage unit 1306, the update of the branch abnormality degree stored in the branch abnormality degree storage unit 316, and the update of the vehicle state stored in the vehicle state storage unit 1307 are executed. .
- the blacklist holding unit 1306 stores a blacklist that is referred to by the routing unit 1302 and that is used to determine whether to stop the transfer of a signal being transferred.
- FIG. 18 shows an example of a blacklist held by the blacklist holding unit 1306, which will be described later in detail.
- the vehicle state holding unit 1307 stores a vehicle state that is referred to by the routing unit 1302 and is used as a condition for activating the blacklist stored in the blacklist holding unit 1306.
- FIG. 19 shows an example of the vehicle state held by the vehicle state holding unit 1307. In the example of FIG. 19, the vehicle state indicates that the vehicle is running.
- FIG. 17 is a block diagram illustrating an example of a functional configuration of the fraud detection ECU 1310.
- the fraud detection ECU 1310 includes a star coupler communication control unit 1311, a fraud detection unit 1312, a frame generation unit 313, a communication setting parameter storage unit 205, a frame information storage unit 314, a frame rule storage unit 315, a reception history And a holding unit 317.
- the star coupler communication control unit 1311 is a communication interface with the secure star coupler 1300, and sets the secure star coupler 1300 based on the communication setting parameters stored in the communication setting parameter holding unit 205.
- the setting of the secure star coupler 1300 may also include routing control information based on a table indicating the correspondence between slots and source branches, and a blacklist.
- the secure star coupler 1300 issues an update notification of a vehicle state such as a running state determined based on the frame received, and a notification regarding an increase in the degree of branch abnormality.
- the secure star coupler 1300 receives the above-mentioned received frame information which is information of the frame received, and notifies the fraud detecting unit 1312 of the received frame information.
- the star coupler communication control unit 1311 When requested to transmit a frame from the frame generation unit 313, the star coupler communication control unit 1311 notifies the contents of the frame to the secure star coupler 1300.
- the fraud detecting unit 1312 determines whether the received frame is a fraudulent frame based on the received frame information including the information on the receiving branch notified from the star coupler communication control unit 1311. In this determination, the fraud detecting unit 1312 first refers to the table indicating the correspondence between the slot ID and the transmission source branch stored in the frame information holding unit 314, and determines the frame ID of the actual reception frame and the reception branch. Check if the response is correct. If the correspondence between the frame ID of the received frame and the reception branch is correct, the fraud detecting unit 1312 determines a rule for each type according to the content of the payload of the received frame stored in the frame rule holding unit 315, and stores the reception history.
- the fraud detection unit 312 determines that the reception frame whose payload content deviates from this rule is invalid. If it is determined that the received frame is invalid, the fraud detection unit 312 further requests the frame generation unit 313 to transmit a frame for an alert notifying another ECU that the invalid frame has been transmitted. I do. At the same time, the fraud detection unit 312 notifies the star coupler communication control unit 1311 that the reception branch is abnormal. Further, the fraud detecting unit 1312 notifies the ECU interface unit 1303 of the secure star coupler 1300 of the rewriting of the routing table in order to prevent a fraudulent frame transmitted from this branch from being transferred to another branch in the future. .
- FIG. 18 is an example of a blacklist stored in the blacklist holding unit 1306.
- the blacklist in FIG. 18 indicates, for each row, a reception branch, a payload value, and a blacklist enabling condition for each frame received in a specific slot determined by a combination of a slot ID, a cycle offset, and a cycle reception. .
- the receiving branch is 100d and the payload value is ** 5 *.
- the vehicle state is “running”, it indicates that the transfer is stopped on the condition that the frame matches the blacklist and the degree of branch abnormality is greater than 30.
- “*” in the column of the black list means that the value indicated by the corresponding bit in the payload is “don't care”.
- the receiving branch is 100a and the value of the payload is FF 11 **.
- the frame matches the blacklist, and a frame (signal indicating) that matches the blacklist indicates that the transfer is always stopped.
- FIG. 20 is a flowchart showing an example of the procedure of the operation of the secure star coupler 1300 when receiving a frame.
- the secure star coupler 1300 starts receiving a frame (signal indicating) (S2001).
- the routing unit 1302 determines whether or not a routing rule (RR in the figure) corresponding to the current slot receiving the signal exists in the routing table stored in the routing table holding unit 305 (see FIG. 4). S2002). If a corresponding routing rule exists (Yes in S2002), the routing unit 1302 performs the determination in Step S2003. Otherwise (No in S2002), the secure star coupler 1300 executes the determination in step S2011.
- a routing rule RR in the figure
- step S2003 the routing unit 1302 checks whether the relationship between the slot receiving the signal and the reception branch matches the corresponding routing rule.
- the routing unit 1302 starts routing for transferring the received signal to a branch other than the receiving branch (S2004). Otherwise (No in S2003), the secure star coupler 1300 increases the degree of abnormality of the receiving branch (S2008), and the process of the secure star coupler 1300 ends.
- the routing unit 1302 decodes a signal whose transfer has not been completed, and determines whether or not the frame obtained by the decoding matches the blacklist stored in the blacklist holding unit 1306. Performed (S2005). If it matches the blacklist (Yes in S2005), the routing unit 1302 stops the routing (S2009) and ends the processing of the secure star coupler 1300. If the frame does not match the blacklist (No in S2005), the routing unit 1302 completes the signal transfer (S2006).
- the routing unit 1302 checks the error occurrence status in each branch (S2007). If there is no error in all branches (No in S2007), it is determined that the transfer has been completed normally, and the process of the secure star coupler 1300 ends. If there is a branch in which an error has occurred (Yes in S2007), the routing unit 1302 determines that there is a possibility that an illegal frame has been transmitted, and increases the degree of abnormality of the branch in which the error has occurred (S2010). The process of the secure star coupler 1300 ends.
- step S2011 the routing unit 1302 checks whether a signal received from another branch in the current slot is being routed for transfer. If routing is not being performed (No in S2011), S2004 is executed. If routing is being performed (Yes in S2011), the routing unit 1302 ignores the received signal, and the processing of the secure star coupler 1300 ends.
- FIG. 21 is a flowchart showing an example of the procedure of the operation of the fraud detection ECU 1310 when receiving a frame.
- the fraud detection unit 1312 when the star coupler communication control unit 1311 receives a notification of frame reception from the secure star coupler 1300, the fraud detection unit 1312 obtains the reception slot ID of the reception frame, the payload information, and the reception frame information on the reception branch. (S2101).
- the fraud detecting unit 1312 refers to the frame information stored in the frame information holding unit 314, and determines whether the combination of the receiving branch and the receiving slot ID indicated by the received frame information is appropriate (S2102). . If the combination is appropriate (Yes in S2102), the fraud detecting unit 1312 executes Step S2103. If the response is not appropriate (No in S2102), the fraud detecting unit 1312 notifies the secure star coupler 1300 to increase the degree of abnormality of the receiving branch (S2106), and ends the process.
- the fraud detecting unit 1312 refers to the frame rule stored in the frame rule holding unit 315, and determines whether the received frame conforms to the corresponding frame rule. If the frame rule is satisfied (Yes in S2103), it is determined that an irregular frame has been received, and the fraud detection unit 1312 updates the reception history stored in the reception history holding unit 317 (S2104), and updates the vehicle state. The notification is sent to the secure star coupler 1300 (S2105), and the processing of the fraud detection ECU 1310 ends. When the frame rule is not satisfied (No in S2103), the fraud detection ECU 1310 notifies the secure star coupler 1300 to increase the degree of abnormality of the reception branch, assuming that the fraudulent frame has been received (S2106). Is terminated.
- each step executed by each component in the operation of the secure star coupler described above may be a step executed by the fraud detection ECU.
- each step executed by each component in the operation of the above-described fraud detection ECU may be a step executed by the secure star coupler.
- the secure star coupler and the fraud detection ECU are integrally realized, in the present disclosure, the secure star coupler is referred to for convenience, but the components of the secure star coupler and the fraud detection ECU according to the present disclosure are used. What includes components in combination is included in the technical scope of the present disclosure regardless of its name.
- the secure star coupler communicates with the fraud detecting ECU, but the fraud detecting ECU is not an essential component.
- the contents of the routing table holding unit and the communication setting parameter holding unit may be embedded in the secure star coupler in advance, and only the minimum necessary functions may be realized at the beginning of operation. As a result, the number of communication devices on the communication network can be reduced, which is effective in reducing costs.
- the driver may be notified of the occurrence of an incorrect frame or the information of the incorrect frame on the in-vehicle network via the user interface of the vehicle.
- the gateway or the domain controller includes a fraud detecting unit, a process of not transferring the fraudulent frame or transferring the fraudulent frame with information indicating that the frame is fraudulent may be performed.
- the frame information and the frame rule are stored in plain text, but may be stored in an encrypted form.
- the abnormality level is stored for each branch.
- the abnormality level may be stored for each frame. As a result, it is possible to block only a frame having a high degree of abnormality, which is effective in suppressing the influence on the vehicle.
- one reception rule is set for each frame rule (FIG. 11), but two or more reception rules may be set. Further, there may be an individual frame rule for which no reception rule is set. For example, by setting a reception rule only for a second type of frame having high importance, it is possible to check according to the importance of the frame, which is effective for improving the safety of the vehicle-mounted network.
- no frame rule is set for a dynamic frame (FIG. 11), but a frame rule may be set for a dynamic frame.
- a frame rule may be set for a dynamic frame.
- a rule regarding the amount of change from the previous received value may be set.
- the secure star coupler has received the frame transmission request from the fraud detection ECU and has been able to transmit the frame to another branch.
- the secure star coupler may not transmit the frame.
- the function of the secure star coupler can be reduced, which is effective for cost reduction.
- the frame name is held in the frame information stored in the frame information holding unit (FIG. 10), but the frame name is not essential.
- one type of payload information held by one frame is one type, but is not limited to this (FIG. 10).
- One frame may hold two or more types of information or a plurality of pieces of the same type of information, and may not have the payload information. Further, when a plurality of pieces of payload information are held, information (field position, length, unit, etc.) indicating the field of each case in the payload segment may be included.
- the previous reception value of the reception history (FIG. 13) is held for one signal for each frame name, but may be held for a plurality of signals. Further, the payload value may be held as it is.
- the vehicle state included in the reception history includes only the two states of running or stopped, but the vehicle state is not limited to these two states.
- an ignition on state, an accessory on state, a low speed running state, a high speed running state, a steering state, a gear state, an advanced driving support function on / off state, or a state in which these are combined can be taken.
- the blacklist (FIG. 18) that is stored in advance is used.
- the blacklist is a dynamic one that is updated even after the use is started. You may. For example, when the fraud detection ECU holds the payload value of a frame detected as fraudulent, and detects fraud for a predetermined number of times in a frame transmitted to a slot having the same ID, cycle reception, and cycle offset, the fraud detection ECU detects these values.
- the blacklist may be updated by using a field whose payload value matches between the frames. As a result, it is possible to prevent the routing of an unauthorized frame with a newer attack pattern that is not registered in the blacklist in advance, which is effective in improving security.
- the routing unit has a function of detecting an error in a frame obtained by decoding a signal, but the error detection function is not performed in the routing unit (secure star coupler).
- the fraud detection ECU connected to the secure star coupler may receive signals of any two branches, and the error detection may be performed by a decoder unit provided in the fraud detection ECU.
- the transfer of a frame (signal) that matches the blacklist (FIG. 18) indicating an inappropriate correspondence between the time slot and the value of the payload included in the frame is stopped. It is not limited to this.
- the transfer of a signal that does not match the whitelist indicating the appropriate correspondence between the time slot and the value of the payload included in the frame may be stopped.
- Such a blacklist and a whitelist are examples of the fraud standard list in the second embodiment and the present modification, and the blacklist holding unit is an example of the fraud standard list holding unit.
- the vehicle state and the degree of branch abnormality are used for the activation condition of the blacklist (FIG. 18), but may be used for the activation condition of the routing rule (FIG. 9). Good. As a result, frame transmission from the branch where the unauthorized ECU exists can be invalidated, which is effective.
- the state held by the vehicle state holding unit is the running state of the vehicle (FIG. 19), but is not limited to this.
- the above-described ignition-on state may be used, or a predetermined state notified from each ECU, for example, a flag indicating the state of an external device connected to the ECU may be used.
- the blacklist can be validated according to the flag, and it is possible to flexibly cope with various states of the vehicle.
- the FlexRay protocol was used as the in-vehicle network, but the present invention is not limited to this.
- CAN CAN
- CAN-FD CAN Without Flexible Data Rate
- Ethernet registered trademark
- LIN Local Interconnect Network
- MOST Media Oriented Systems Transport
- a network in which these networks are combined as a sub-network may be used. This is particularly effective for a network employing a time trigger method.
- the secure star coupler and the like according to aspects of the present disclosure are The present invention is also applicable to communication networks other than the in-vehicle network.
- Each device in the above embodiment is, specifically, a computer system including a microprocessor, a ROM, a RAM, a hard disk unit, a display unit, a keyboard, a mouse, and the like.
- a computer program is recorded in the RAM or the hard disk unit.
- Each device achieves its function by the microprocessor operating according to the computer program.
- the computer program is configured by combining a plurality of instruction codes indicating instructions to the computer in order to achieve a predetermined function.
- Each or all of the constituent elements of each device in the above embodiment may be configured by one system LSI (Large Scale Integration).
- the system LSI is an ultra-multifunctional LSI manufactured by integrating a plurality of components on one chip, and is specifically a computer system including a microprocessor, a ROM, a RAM, and the like. .
- the RAM stores a computer program. When the microprocessor operates according to the computer program, the system LSI achieves its function.
- Each part of the constituent elements constituting each of the above devices may be individually formed into one chip, or may be formed into one chip so as to include part or all.
- LSI may also be called IC, LSI, super LSI, or ultra LSI depending on the degree of integration.
- the method of circuit integration is not limited to LSI, and may be realized by a dedicated circuit or a general-purpose processor. After the LSI is manufactured, a programmable FPGA (Field Programmable Gate Array) or a reconfigurable processor capable of reconfiguring connection and setting of circuit cells inside the LSI may be used.
- FPGA Field Programmable Gate Array
- a part or all of the constituent elements of each device described above may be configured by an IC card or a single module that is detachable from each device.
- the IC card or the module is a computer system including a microprocessor, a ROM, a RAM, and the like.
- the IC card or module may include the above-mentioned super-multifunctional LSI.
- the IC card or module achieves its functions by the microprocessor operating according to the computer program.
- the IC card or the module may have tamper resistance.
- the present disclosure may be the methods described above. Further, these methods may be a computer program that is realized by a computer, or may be a digital signal composed of a computer program.
- the present disclosure also relates to a computer-readable recording medium capable of reading a computer program or a digital signal, for example, a flexible disk, a hard disk, a CD-ROM, an MO, a DVD, a DVD-ROM, a DVD-RAM, a BD (Blu-ray (registered trademark) ) Disc), and may be recorded in a semiconductor memory or the like. Further, it may be a digital signal recorded on these recording media.
- the present disclosure may transmit a computer program or a digital signal via an electric communication line, a wireless or wired communication line, a network represented by the Internet, data broadcasting, or the like.
- the present disclosure may also be a computer system including a microprocessor and a memory, wherein the memory records the computer program, and the microprocessor operates according to the computer program.
- the program or the digital signal may be recorded on a recording medium and transferred, or the program or the digital signal may be transferred via a network or the like, so as to be implemented by another independent computer system.
- the technology according to the present disclosure can be used in a communication network, particularly in a network employing a time trigger method, in order to be able to cope with an illegal frame due to a cyber attack or the like.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mechanical Engineering (AREA)
- Small-Scale Networks (AREA)
Abstract
タイムスロットに基づくタイムトリガー方式の通信ネットワークにおけるセキュアスターカプラ(300)は、複数のブランチにそれぞれ接続され信号を送受信する複数のトランシーバ部(301a、301b、301c、301d)と、タイムスロットとブランチとの対応を示す所定のルールを保持するルーティングテーブル保持部(305)と、非転送条件に合致する場合を除き、第1ブランチから受信した信号をその他のブランチへ転送するためにルーティングするルーティング部(302)とを備える。非転送条件は、第1ブランチについて上記の所定のルールが守られていないことと、タイムスロットにおいて、第1ブランチとは別の第2ブランチから受信した信号をその他のブランチへ転送するためのルーティングを既に開始していることとを含む。
Description
本開示は、スター型トポロジの通信ネットワークにおける不正なフレームの送信を防止するセキュアスターカプラに関する。
近年、自動車の車載システムには、電子制御ユニット(Electronic Control Unit、以下、ECU)と呼ばれる装置が多数配置されている。これらのECUをつなぐ通信ネットワークを車載ネットワークと呼ばれる。車載ネットワークには、多数の規格が存在する。その中でも現在主流となっているController Area Network(以下CAN(登録商標))よりも高速かつ高信頼のプロトコルとして設計された、FlexRay(登録商標)という規格が存在する。
FlexRayでは、2本のより線の電圧差により“0”の値と“1”の値を表す。バスに接続されているECUはノードと呼ばれ、バスに接続されている各ノードは、フレームと呼ばれるメッセージを送受信する点はCANと共通している。一方で、イベントトリガの通信方式が採用されているCANに対し、FlexRayではタイムトリガー方式であるTime Division Multiple Access(以下、TDMA)が採用されている。FlexRayの車載ネットワークでは、各フレームは事前に定義されたタイミング及び順番で送信される。
一方、セキュリティに関しては、CANの車載ネットワークでは、攻撃者がバスにアクセスし、不正なフレームを送信することでECUを不正に制御するといった脅威が存在し、このような脅威に対するセキュリティ対策が検討されている。
例えば特許文献1では、車載ネットワーク監視装置を提案しており、フレームが予め規定された通信間隔でバスに送信されているかを検出し、規定された通信間隔から外れるフレームを不正と判断することで、不正なフレームによる制御を防止する方法が開示されている。
しかしながら、FlexRayの車載ネットワークでは、予め規定された通信間隔で通信が行われるため、ある特定の識別子(ID)を持つフレームの受信間隔は一定となり、特許文献1のような不正検知手法を適用することはできない。
また、FlexRayでは、設計容易性の観点からスター型のネットワークトポロジが利用されることが多い。特許文献2では、タイムスケジュールに応じて転送元のブランチをスイッチするインテリジェントスターカプラが開示されている。インテリジェントスターカプラにより、フレームの送信が本来は予定されていないブランチからの攻撃フレームの注入を防ぐことが可能になるが、攻撃が試行されたことを把握することはできない。さらに特許文献2のインテリジェントスターカプラでは、送信が本来予定されているブランチに存在する不正なノードからの不正なフレームの注入を防ぐことはできない。
本開示は、上記課題を解決するため、スター型トポロジにより設計されているタイムトリガー方式のプロトコルを採用している通信ネットワークにおいて不正なフレームの送信箇所を把握することで、不正なフレームへの対処を可能にするフレーム転送方法及びセキュアスターカプラを提供し、より安全な通信ネットワークシステムを実現することを目的とする。
本開示の一態様に係るセキュアスターカプラは、タイムスロットに基づくタイムトリガー方式の通信ネットワークにおけるセキュアスターカプラであって、前記通信ネットワークにおいて、1以上の通信装置及び1つのバスをそれぞれ含む複数のブランチが前記セキュアスターカプラを通じて接続され、かつ、前記通信装置は所定のタイムスロット内でフレームを送受信し、前記セキュアスターカプラは、ルーティングルール保持部と、ルーティング部と、前記複数のブランチのいずれかにそれぞれ接続されている複数のトランシーバ部とを備え、前記ルーティングルール保持部は、タイムスロットと、当該タイムスロットで前記セキュアスターカプラが転送すべき物理信号を送信する送信元ブランチ又は前記複数のトランシーバ部のうちで前記送信元ブランチに接続されたトランシーバ部の対応を示した所定のルールを保持し、前記複数のトランシーバ部の一である第1トランシーバ部は、前記複数のブランチのうちで前記第1トランシーバ部が接続されている第1ブランチのバスから受信された物理信号を変換して第1デジタル信号を取得し、前記ルーティング部は、非転送条件に合致する場合を除き、前記第1デジタル信号を、前記複数のトランシーバ部のうちの前記第1トランシーバ部以外のトランシーバ部へルーティングし、前記第1トランシーバ部以外のトランシーバ部は、ルーティングされた前記第1デジタル信号を変換して取得する物理信号を、前記複数のブランチのうちの前記第1ブランチ以外のブランチの前記バスへ送信し、前記非転送条件は、前記第1ブランチ又は前記第1トランシーバ部について前記所定のルールが守られていないという第1条件と、現在のタイムスロットにおいて既に、前記複数のブランチのうちの前記第1ブランチとは別の第2ブランチから受信された物理信号を変換して取得された第2デジタル信号を前記複数のブランチのうちの前記第2ブランチ以外のブランチへルーティングしているという第2条件を含む。
また、本開示の一態様に係るフレーム転送方法は、タイムスロットに基づくタイムトリガー方式の通信ネットワークにおけるフレーム転送方法であって、前記通信ネットワークにおいて、1以上の通信装置及び1つのバスをそれぞれ含む複数のブランチがセキュアスターカプラを通じて接続され、かつ、前記通信装置は所定のタイムスロット内でフレームを送受信し、前記フレーム転送方法は、ルーティングルール保持ステップと、受信ステップと、ルーティングステップと、送信ステップとを含み、前記ルーティングルール保持ステップでは、タイムスロットと、当該タイムスロットで前記セキュアスターカプラが転送すべき物理信号を送信する送信元ブランチとの対応に関する所定のルールを保持し、前記受信ステップでは、前記複数のブランチの一である第1ブランチの前記バスから受信された物理信号を変換して第1デジタル信号を取得し、前記ルーティングステップでは、非転送条件に合致する場合を除き、前記第1デジタル信号を、前記複数のブランチのうちの前記第1ブランチ以外のブランチへルーティングし、前記送信ステップでは、ルーティングされた前記第1デジタル信号を変換して取得する物理信号を、前記第1ブランチ以外のブランチの前記バスへ送信し、前記非転送条件は、前記第1ブランチについて前記所定のルールが守られていないという第1条件と、現在のタイムスロットにおいて既に、前記複数のブランチのうちの前記第1ブランチとは別の第2ブランチから受信された物理信号を変換して取得された第2デジタル信号を、前記複数のブランチのうちの前記第2ブランチ以外のブランチへルーティングしているという第2条件を含む。
なお、これらの包括的又は具体的な態様は、システム、集積回路、コンピュータプログラム又はコンピュータ読み取り可能なCD-ROMなどの記録媒体で実現されてもよく、装置、システム、方法、コンピュータプログラム及び記録媒体の任意な組み合わせで実現されてもよい。
本開示によれば、タイムトリガー方式を採用しているスター型トポロジの通信ネットワークに対しても、不正なフレームの送信箇所を把握することで不正なフレームへの対処を可能とする。これにより、通信ネットワークシステム全体として、安全な状態をより確実に維持することができる。
本開示の一実施態様のセキュアスターカプラは、タイムスロットに基づくタイムトリガー方式の通信ネットワークにおけるセキュアスターカプラであって、前記通信ネットワークにおいて、1以上の通信装置及び1つのバスをそれぞれ含む複数のブランチが前記セキュアスターカプラを通じて接続され、かつ、前記通信装置は所定のタイムスロット内でフレームを送受信し、前記セキュアスターカプラは、ルーティングルール保持部と、ルーティング部と、前記複数のブランチのいずれかにそれぞれ接続されている複数のトランシーバ部とを備え、前記ルーティングルール保持部は、タイムスロットと、当該タイムスロットで前記セキュアスターカプラが転送すべき物理信号を送信する送信元ブランチ又は前記複数のトランシーバ部のうちで前記送信元ブランチに接続されたトランシーバ部の対応を示した所定のルールを保持し、前記複数のトランシーバ部の一である第1トランシーバ部は、前記複数のブランチのうちで前記第1トランシーバ部が接続されている第1ブランチのバスから受信された物理信号を変換して第1デジタル信号を取得し、前記ルーティング部は、非転送条件に合致する場合を除き、前記第1デジタル信号を、前記複数のトランシーバ部のうちの前記第1トランシーバ部以外のトランシーバ部へルーティングし、前記第1トランシーバ部以外のトランシーバ部は、ルーティングされた前記第1デジタル信号を変換して取得する物理信号を、前記複数のブランチのうちの前記第1ブランチ以外のブランチの前記バスへ送信し、前記非転送条件は、前記第1ブランチ又は前記第1トランシーバ部について前記所定のルールが守られていないという第1条件と、現在のタイムスロットにおいて既に、前記複数のブランチのうちの前記第1ブランチとは別の第2ブランチから受信された物理信号を変換して取得された第2デジタル信号を前記複数のブランチのうちの前記第2ブランチ以外のブランチへルーティングしているという第2条件を含む。これにより、ルーティングルールに合致しないブランチにて送信された不正なフレームであっても、セキュアスターカプラにより他のブランチへの転送が防止され、通信ネットワークの安全性が向上する。
また、前記通信装置と通信を行うための通信制御部をさらに備え、前記通信制御部は、前記第1デジタル信号をデコードしてフレームとして解釈し、前記フレームの情報と、前記第1デジタル信号の転送元である前記第1ブランチ又は前記第1トランシーバ部を示す識別子を対応付けて受信フレーム情報として保持する受信フレーム情報保持部とを備え前記通信制御部は、前記受信フレーム情報を前記通信装置へ通知してもよい。これにより、セキュアスターカプラが受信したフレームが送信されたブランチを、セキュアスターカプラの外部の装置が容易に把握することが可能となり、不正なフレームの発生原因の特定が容易になり得る。
また、前記複数のブランチのそれぞれの異常度を保持するブランチ異常度保持部をさらに備え、前記ルーティング部は、前記複数のブランチの一である第3ブランチに接続されている、前記複数のトランシーバ部の一である第3トランシーバ部から受信した物理信号を変換して取得された第3デジタル信号について前記所定のルールが守られていない場合に、前記第3ブランチの異常度を増加させ、前記ルーティング部は、前記第3ブランチの異常度が所定値以上であるときは、前記第3デジタル信号を前記複数のトランシーバ部のうちの前記第3トランシーバ部以外のトランシーバ部へ転送しないとしてもよい。これにより、不正なフレームを送信したと反復的に判断されたブランチから送信されるフレームの転送の防止が可能となり得る。
また、前記ルーティング部は、前記フレームに前記通信ネットワークに利用されている通信プロトコル上のエラー発生の検知し、前記第3トランシーバ部から受信した前記第3デジタル信号について前記所定のルールが守られている場合に前記通信プロトコル上のエラーを検知したとき、前記第3ブランチの異常度を増加させてもよい。これにより、ルーティングルールに従った転送を行うことで車載ネットワークの安全性を保ちながら、不正なフレームの送信が試行されている可能性の高いブランチを把握し、このブランチから送信されるフレームの転送を阻止することが可能となり得る。
また、タイムスロットとフレームに含まれるペイロードの値との適切又は不適切な対応を示す不正基準リストを保持する不正基準リスト保持部をさらに備え、前記ルーティング部は、転送が未完了のデジタル信号を解釈したフレームについて、前記不正基準リストとの照合を行い、前記ルーティング部は、前記照合の結果、前記フレームが受信されたタイムスロットと前記フレームに含まれるペイロードの値との対応が不適切である場合に、前記転送が未完了のデジタル信号の転送を停止してもよい。これにより、ルーティングルールに合致する不正なフレームであっても、フレームに含まれるペイロードから検知して、その転送の防止が可能となり得る。
また、前記通信ネットワークは車載ネットワークであり、前記セキュアスターカプラは、前記車載ネットワークを搭載する車両の状態を示す車両情報を保持する車両状態保持部をさらに備え、前記通信制御部は、前記通信装置から受信する情報を用いて前記車両情報を更新し、前記ルーティング部は、前記フレームが受信されたタイムスロットと前記フレームに含まれるペイロードの値との対応が不適切であると前記照合の結果判断し、かつ、前記車両情報が示す前記車両の状態が所定の条件を満たしている場合に、前記転送が未完了のデジタル信号の転送を停止してもよい。これにより、通信ネットワークが車載のネットワークの場合、走行状態などの車両状態に応じて、不正なフレームの転送禁止の有無を切り替えることで、運転者にとって危険な状況における不正フレームによる走行の安全性への悪影響を防止しつつ、安全な状況においては車載ネットワークシステムへの介入による先進的な機能の停止を抑えることが可能となる。
また、本開示の一実施態様のフレーム転送方法は、タイムスロットに基づくタイムトリガー方式の通信ネットワークにおけるフレーム転送方法であって、前記通信ネットワークにおいて、1以上の通信装置及び1つのバスをそれぞれ含む複数のブランチがセキュアスターカプラを通じて接続され、かつ、前記通信装置は所定のタイムスロット内でフレームを送受信し、前記フレーム転送方法は、ルーティングルール保持ステップと、受信ステップと、ルーティングステップと、送信ステップとを含み、前記ルーティングルール保持ステップでは、タイムスロットと、当該タイムスロットで前記セキュアスターカプラが転送すべき物理信号を送信する送信元ブランチとの対応に関する所定のルールを保持し、前記受信ステップでは、前記複数のブランチの一である第1ブランチの前記バスから受信された物理信号を変換して第1デジタル信号を取得し、前記ルーティングステップでは、非転送条件に合致する場合を除き、前記第1デジタル信号を、前記複数のブランチのうちの前記第1ブランチ以外のブランチへルーティングし、前記送信ステップでは、ルーティングされた前記第1デジタル信号を変換して取得する物理信号を、前記第1ブランチ以外のブランチの前記バスへ送信し、前記非転送条件は、前記第1ブランチについて前記所定のルールが守られていないという第1条件と、現在のタイムスロットにおいて既に、前記複数のブランチのうちの前記第1ブランチとは別の第2ブランチから受信された物理信号を変換して取得された第2デジタル信号を、前記複数のブランチのうちの前記第2ブランチ以外のブランチへルーティングしているという第2条件を含む。これにより、ルーティングルールに合致しないブランチにて送信された不正なフレームであっても、セキュアスターカプラにより他のブランチへの転送が防止され、通信ネットワークの安全性が向上する。
以下、実施の形態に係るセキュアスターカプラについて、図面を参照しながら説明する。ここで示す実施の形態は、いずれも包括的又は具体的な例を示すものである。したがって、以下の実施の形態で示される数値、構成要素、構成要素の配置及び接続形態、並びに、ステップ(工程)及びステップの順序等は一例であって、本開示に係る発明を限定するものではない。また、各図は模式図であり、必ずしも厳密に図示されたものではない。
(実施の形態1)
[1.システムの構成]
ここでは、本開示の一実施の形態として、スター型トポロジの車載ネットワークを監視し、送受信される各フレームと、各フレームの送信元であるブランチとを示す情報に基づいて不正なフレームの送信を検知し、又はその転送を防止するセキュアスターカプラ及び不正検知ECUについて、図面を参照しながら説明する。
[1.システムの構成]
ここでは、本開示の一実施の形態として、スター型トポロジの車載ネットワークを監視し、送受信される各フレームと、各フレームの送信元であるブランチとを示す情報に基づいて不正なフレームの送信を検知し、又はその転送を防止するセキュアスターカプラ及び不正検知ECUについて、図面を参照しながら説明する。
[1.1 車載ネットワークシステムの全体構成]
図1は、本開示に係る車載ネットワークシステム10の全体構成の例を示すブロック図である。車載ネットワークシステム10は、FlexRayプロトコルによる通信に用いられるバスであるバス100a、100b、100c及び100dと、各バスに接続されるECUであるECU200a、200b、200c及び200dと、各ECUの制御対象であるステアリング210、ギア220、ブレーキ230及びカメラ240と、各バス間を接続するセキュアスターカプラ300と、セキュアスターカプラ300と通信線110により接続される不正検知ECU310とから構成される。ECU200a~200dは、それぞれバス100a~100dを通じてフレームの送受信を行うことで車両の制御を実現する。不正検知ECU310は、車載ネットワークシステム10における不正なフレームの発生を検知するために、セキュアスターカプラ300を通じてバス100a~100dを観測する。ECU200a~200d及び不正検知ECU310は、本実施の形態における通信装置の例である。また、バス100a~100dのいずれにも同じ信号が流れるよう、セキュアスターカプラ300が信号の整形を行い、各ECUは、バス100a~100dを通じて同期をとっている。本開示では、各バス及び当該バスに接続されるECUのことを指してブランチとも呼ぶ。また本開示では、当該バスを含むブランチの識別子の例として、便宜的に各バスの参照符号と同じ文字列を用いることがある。
図1は、本開示に係る車載ネットワークシステム10の全体構成の例を示すブロック図である。車載ネットワークシステム10は、FlexRayプロトコルによる通信に用いられるバスであるバス100a、100b、100c及び100dと、各バスに接続されるECUであるECU200a、200b、200c及び200dと、各ECUの制御対象であるステアリング210、ギア220、ブレーキ230及びカメラ240と、各バス間を接続するセキュアスターカプラ300と、セキュアスターカプラ300と通信線110により接続される不正検知ECU310とから構成される。ECU200a~200dは、それぞれバス100a~100dを通じてフレームの送受信を行うことで車両の制御を実現する。不正検知ECU310は、車載ネットワークシステム10における不正なフレームの発生を検知するために、セキュアスターカプラ300を通じてバス100a~100dを観測する。ECU200a~200d及び不正検知ECU310は、本実施の形態における通信装置の例である。また、バス100a~100dのいずれにも同じ信号が流れるよう、セキュアスターカプラ300が信号の整形を行い、各ECUは、バス100a~100dを通じて同期をとっている。本開示では、各バス及び当該バスに接続されるECUのことを指してブランチとも呼ぶ。また本開示では、当該バスを含むブランチの識別子の例として、便宜的に各バスの参照符号と同じ文字列を用いることがある。
[1.2 FlexRayサイクル]
FlexRay通信では、4つのセグメントからなるサイクル(Cycle)と呼ばれる動作の周期が繰り返される。ひとつのFlexRayネットワーク全体(クラスタともいう)に含まれる各ノードは、サイクルの長さ及び開始時刻を示すグローバルタイムと各々固有のローカルタイムとの差を測定し補正することで同期通信を実現している。
FlexRay通信では、4つのセグメントからなるサイクル(Cycle)と呼ばれる動作の周期が繰り返される。ひとつのFlexRayネットワーク全体(クラスタともいう)に含まれる各ノードは、サイクルの長さ及び開始時刻を示すグローバルタイムと各々固有のローカルタイムとの差を測定し補正することで同期通信を実現している。
図2は、FlexRay通信のサイクルを示す図である。FlexRayの通信はこのサイクルを繰り返して実行される。各ノードは、サイクルの繰り返し回数(サイクルカウント)を同期して保持している。サイクルカウントの値(図2における、n+0、n+1)は0から63まで1ずつインクリメントし、63の次のサイクルではいったんリセットされて再び0となる。
各サイクルは、静的セグメント(Static segment)、動的セグメント(Dynamic segment)、シンボルウィンドウ(Symbol window)、ネットワークアイドルタイム(NIT)の4つのセグメントで構成される。各セグメントの時間長は予め設計されたパラメータによってクラスタで共通であるため、1サイクルの時間長もクラスタで共通である。なお、動的セグメント及びシンボルウィンドウはオプションである。各ノードは静的セグメント及び動的セグメントにおいてフレームを送信する。静的セグメント及び動的セグメントは、タイムスロット又はスロットと呼ばれる1つのフレームを送信することができる一定の時間を単位として構成される。
静的セグメントは複数のスロットから構成され、各サイクルは静的セグメントで開始する。静的セグメント内のスロットの個数及び各スロットの長さはクラスタ内で共通である。スロットには先頭から順に1ずつインクリメントする番号(スロット番号)が付されており、各スロット内で送信されるフレームには、フレームの識別子(Frame ID、以下ではフレームIDとも表記する)としてこのスロット番号が用いられる。静的セグメント内のスロットを静的スロット(又は静的タイムスロット)とも呼び、静的セグメント内で送信されるフレームを静的フレームとも呼ぶ。各静的スロットでは、予め定められたECUが、予め定められたサイクルでは常にフレームを送信する。静的フレームは、ペイロード長がクラスタ内で共通である。
動的セグメントはミニスロットと呼ばれるスロットから構成され、各サイクルで静的セグメントの次に位置する。ただし、上述のとおり必須ではない。ミニスロットにも静的セグメントのスロットと同じく先頭から順に1ずつインクリメントする番号(スロット番号)が付されている。各ECUには、フレームを送信するタイミング(ミニスロット)が予め定められているが、静的セグメントと異なり、予め定められたサイクル毎にフレームを送信する必要はない。動的セグメント内のスロットを動的スロット(又は動的タイムスロット)とも呼び、動的セグメント内で送信されるフレームを動的フレームとも呼ぶ。動的フレームのペイロード長は、0~254の任意の値をとることができる。つまり、動的スロットの長さは可変である。
シンボルウィンドウは、シンボルと呼ばれる信号の送受信を行う時間帯である。
ネットワークアイドルタイムは、通信を行わない時間帯であり、各サイクルの最後に必ず設けられる。ネットワークアイドルタイムでは、各ECUはデータの送信を行わずに同期処理等を行い、ネットワークは文字どおりアイドル状態である。
なお、FlexRayプロトコルでは、送信先又は送信元を示す識別子は存在しない。送信ノードは、上述のように予め定められた送信タイミング(スロット)に、予め定められた内容のフレームをバスに送信する。そして受信ノードは、予め決められた受信タイミング(スロット)にのみバスからフレームを受信する。また、静的セグメント又は動的セグメントの同一の番号のスロットであっても、サイクルによって異なる内容のフレームの通信を実現する「サイクルマルチプレキシング」と呼ばれる方法も用いられる。
また、FlexRayプロトコルでは、CANのように全てのノードが1つのバスに接続されるバス型のネットワークトポロジだけでなく、スターカプラを介したスター型、バス型とスター型とのハイブリッド型のネットワークトポロジで通信ネットワークを設計することが可能である。
[1.3 フレームフォーマット]
図3は、FlexRayプロトコルのフレームフォーマットを示す図である。このフォーマットは、静的フレーム及び動的フレームで共通である。フレームは、ヘッダセグメント(Header segment)、ペイロードセグメント(Payload segment)、トレーラーセグメント(Trailer segment)の3つのセグメントから構成される。なお、本開示ではそれぞれヘッダ、ペイロード、トレーラーとも呼ぶことがある。
図3は、FlexRayプロトコルのフレームフォーマットを示す図である。このフォーマットは、静的フレーム及び動的フレームで共通である。フレームは、ヘッダセグメント(Header segment)、ペイロードセグメント(Payload segment)、トレーラーセグメント(Trailer segment)の3つのセグメントから構成される。なお、本開示ではそれぞれヘッダ、ペイロード、トレーラーとも呼ぶことがある。
ヘッダセグメントはReserved bitから始まり、続いてフレームの属性(種別)に関するメタ情報としての、Payload preamble indicator、Null frame indicator、Sync frame indicator、Startup frame indicatorがそれぞれ1ビットずつ含まれる。そしてさらに11ビットのFrame ID、7ビットのPayload length、11ビットのHeader CRCが続き、最後の6ビットのCycle countまでで構成される。
Frame IDに用いられているのは上述のスロット番号であって、スロットIDとも呼ばれ、静的セグメント又は動的セグメントにおけるフレームの送信タイミング及びフレームの内容に応じた種類を識別するために用いられる。
Payload lengthは当該フレームのペイロードの長さを示し、最大値は127である。ペイロードセグメントにはPayload lengthの値に2をかけたバイト数のデータが格納される。
Header CRCは、Sync frame indicatorからPayload lengthまでの値から計算されるCRC(Cyclic Redundancy Check)である。
Cycle countには、クラスタにおける現在のサイクルの繰り返し回数を示す値(0~63)が格納される。
ペイロードセグメントには、フレームの正味のデータが含まれ、最大で254バイトである。
トレーラーセグメントには、ヘッダ及びペイロードの全体を含んだ値から計算されるCRCが格納されている。
[1.4 ECU(不正検知ECUを除く)の構成]
図4は、ECU200aの機能的な構成の例を示すブロック図である。なお、ECU200b、ECU200c及びECU200dもECU200aと共通の構成であってよく、説明を省略する。
図4は、ECU200aの機能的な構成の例を示すブロック図である。なお、ECU200b、ECU200c及びECU200dもECU200aと共通の構成であってよく、説明を省略する。
ECU200aは、フレーム送受信部201と、フレーム解釈部202と、外部機器制御部203と、フレーム生成部204と、通信用設定パラメータ保持部205とを備える。なお、ECU200aは、例えばプロセッサ及びメモリを含むマイクロコントローラを備え、ここに挙げた構成要素は、メモリに記憶される1個又は複数個のプログラムをプロセッサが実行することで実現される機能的な構成要素である。ECU200b、ECU200c及びECU200dについても同様である。
フレーム送受信部201は、バス100aから受信した物理信号をデジタル信号に変換してフレームのデータを取得する(フレームの受信)。フレーム送受信部201は通信用設定パラメータ保持部205に保持される、通信用設定パラメータを参照しながら、クラスタである車載ネットワークシステム10に含まれる他のECUと同期することで、他のECUが送信したフレームを正しく受信することができる。また、フレーム送受信部201は、フレーム生成部204からの送信フレーム要求に従って、フレームを物理信号に変換し、予め定められたタイミング(スロット)でこの物理信号をバス100aに送信する(フレームの送信)。
フレーム解釈部202は、フレーム送受信部201から通知される受信したフレームのペイロードを解釈し、ペイロードの内容に応じてECU200aに接続されるステアリング210の制御を実行させるための通知を外部機器制御部203へ出す。この通知によって、例えば、他のECUから通知される車両の速度の情報に基いてフレーム解釈部202が判断した走行状態に応じたステアリングのアシスト制御が実現される。また例えば、自動駐車モード時に、図示しない自動駐車ECUから受信するステアリング操作指示信号に基づくステアリングの自動操舵が実現される。
外部機器制御部203は、ECU200aに接続されるステアリング210の制御を行う。また、外部機器制御部203は、ステアリング210の状態を監視し、その状態を他のECUに通知するためのフレーム送信をフレーム生成部に要求する。ステアリング210の状態とは、例えば、ステアリング210の転舵角(ステアリング角度)である。
フレーム生成部204は、外部機器制御部203からの要求に基いてフレームを生成し、フレーム送受信部201へ当該フレームの送信を要求する。
通信用設定パラメータ保持部205は、バス100aから受信した物理信号をデジタル信号に正しく変換するためのパラメータが保持されている。このパラメータは、車載ネットワークシステム10内で共通である。したがって、他のECUでも同じものが保持される。通信用設定パラメータの詳細は、図7に示す一例を用いて後述する。
[1.5 セキュアスターカプラの構成]
図5は、セキュアスターカプラ300の構成の例を示す図である。セキュアスターカプラ300は、トランシーバ部301a、301b、301c及び301dと、ルーティング部302と、ECUインターフェース部303と、受信フレーム情報保持部304と、ルーティングテーブル保持部305とを備える。
図5は、セキュアスターカプラ300の構成の例を示す図である。セキュアスターカプラ300は、トランシーバ部301a、301b、301c及び301dと、ルーティング部302と、ECUインターフェース部303と、受信フレーム情報保持部304と、ルーティングテーブル保持部305とを備える。
トランシーバ部301aはバス100aに接続され、バス100aから受信した物理信号をデジタル信号に変換し、このデジタル信号をルーティング部302へ通知する。また、ルーティング部302から通知されたデジタル信号を物理信号へ変換し、この物理信号をバス100aへ送信する。同様に、トランシーバ部301bはバス100bに、トランシーバ部301cはバス100cに、トランシーバ部301dはバス100dに接続される。トランシーバ部301b~301eの各々は、接続されるバスから受信する物理信号に対してトランシーバ部301aと同様に機能する。
ルーティング部302は、トランシーバ部301aから通知されたデジタル信号を、トランシーバ部301aを除くトランシーバ部301b、301c及び301dへルーティングする。同様に、トランシーバ部301bから通知されたデジタル信号を、ルーティング部302は、トランシーバ部301bを除く各トランシーバ部へルーティングする。ルーティング部302はさらに、ルーティング中のデジタル信号と、当該デジタル信号をどのブランチから受信しているかを示す情報(受信ブランチ情報)とをECUインターフェース部303へ通知する。また、ルーティング部302は、ECUインターフェース部303から受信する指示に従って、ルーティングテーブル保持部305が格納しているルーティングテーブルに基いて、スロット番号(スロットID)と、当該スロット番号が示すタイムスロットで転送されるべき信号を送信するブランチである送信元ブランチ(又は送信元ブランチに接続されているトランシーバ部)との対応を設定する。ルーティング部302は、各スロット番号のタイムスロットにおいて、設定されている対応する送信元ブランチから受信された信号をその他のブランチへルーティングする。スロット番号に対応していないブランチから受信された信号はルーティング部302で無視され、つまりセキュアスターカプラ300による他のブランチへの転送が実行されない。また、スロット番号と送信元ブランチとの対応が設定されていないタイムスロットにおいては、ルーティング部302は、最初に受信された信号を、当該信号を送信したブランチ以外のブランチへルーティングする。なお、ブランチとトランシーバ部とは、トランシーバ部が接続されるバスを仲立ちとして対応する関係にあり、一方を識別して指すことで他方を識別して指すことに代えることができる。この対応関係に基づいて、本開示では、例えばルーティング部302が信号をあるブランチ(のバス)に接続されるトランシーバ部へルーティングすることを、当該ブランチへルーティングするとも表現することもあり、その逆もある。また例えば、信号の送信元であるブランチを、当該ブランチ(のバス)に接続されるトランシーバ部を用いて指すこともある。
ECUインターフェース部303は、ルーティング部302からデジタル信号と受信ブランチ情報とを通知されると、当該デジタル信号をデコードして受信フレームとして解釈し、この受信フレームの情報を受信ブランチ情報とを対応付けて受信フレーム情報保持部304に保存する。また、不正検知ECU310からの要求に従って、受信フレーム情報保持部304に格納されている受信フレーム情報及び受信ブランチ情報を不正検知ECU310に通知する。さらにECUインターフェース部303は、不正検知ECU310からの指示を解釈して、ルーティングテーブル保持部305に格納されている、各スロットで転送すべき信号の送信元である送信元ブランチを示すルーティングテーブルの書換、及びルーティング部302の制御への、この書換後の設定の反映を実行する。
受信フレーム情報保持部304には、上述の受信フレームの情報と受信ブランチ情報とが対応付けられて保持されている。図8に受信フレーム情報保持部304に格納されている受信フレームの情報の一例を示す。この例では、各行において、ブランチを示す識別子(図中の100b、100a、100c)と、各ブランチから受信された信号に基づく受信フレームの情報とが対応付けられている。なお、本開示では、このように受信フレームの情報と受信ブランチ情報とが対応付けられたものについても受信フレーム情報と称する。受信フレーム情報の詳細は、図8に示すこの例を用いて後述する。
ルーティングテーブル保持部305は、各スロットで転送すべき信号を送信するブランチである送信元ブランチを示したテーブルを格納している。図9にルーティングテーブル保持部305に格納されているルーティングテーブルの一例を示す。ルーティングテーブルの詳細は、図9に示すこの例を用いて後述する。
[1.6 不正検知ECU310の構成]
図6は、不正検知ECU310の機能的な構成の例を示すブロック図である。
図6は、不正検知ECU310の機能的な構成の例を示すブロック図である。
不正検知ECU310は、スターカプラ通信制御部311、不正検知部312、フレーム生成部313、通信用設定パラメータ保持部205、フレーム情報保持部314、フレームルール保持部315、ブランチ異常度保持部316、及び受信履歴保持部317を備える。なお、ECU200aと同様の構成要素には、同じ番号を付与して説明を省略する。不正検知ECU310もまた、例えばプロセッサ及びメモリを含むマイクロコントローラを備え、ここに挙げた構成要素は、メモリに記憶される1個又は複数個のプログラムをプロセッサが実行することで実現される機能的な構成要素である。
スターカプラ通信制御部311は、セキュアスターカプラ300との通信インターフェースであり、通信用設定パラメータ保持部205に格納されている通信用設定パラメータに基づいてセキュアスターカプラ300の設定を行う。セキュアスターカプラ300の設定には、スロットと送信元ブランチとの対応を示したテーブルに基づくルーティングの制御情報も含まれ得る。また、セキュアスターカプラ300が受信したフレームの情報である上記の受信フレーム情報をセキュアスターカプラ300から受信し、不正検知部312へ通知する。フレーム生成部313からフレームの送信を要求されると、スターカプラ通信制御部311は、このフレームの内容をセキュアスターカプラ300へ通知する。
不正検知部312は、スターカプラ通信制御部311から通知される、受信ブランチの情報を含む受信フレーム情報に基づいて、受信フレームが不正なフレームであるか否かを判断する。この判断では、不正検知部312は、まず、フレーム情報保持部314に格納されているスロットIDと送信元ブランチとの対応を示すテーブルを参照して、実際の受信フレームのフレームIDと受信ブランチとの対応が正しいかを判断する。受信フレームのフレームIDと受信ブランチとの対応が正しい場合、不正検知部312は、フレームルール保持部315に格納されている受信フレームのペイロードの内容に応じた種別ごとのルールと、受信履歴保持部317に保持されている受信履歴とをさらに参照し、ペイロードの内容がこのルールから外れる受信フレームを不正であると判断する。受信フレームが不正であると判断した場合、不正検知部312はさらに、不正なフレームが送信されていることを他のECUに通知するためのフレームの送信を、フレーム生成部313に要求する。あわせて、不正検知部312は、ブランチ異常度保持部316に格納されている各ブランチの異常度のうち、不正なフレームを送信したブランチの値を増加させる。またさらに不正検知部312は、今後このブランチから送信される不正なフレームが他のブランチへ転送されることを防ぐために、セキュアスターカプラ300のECUインターフェース部303へ、ルーティングテーブルの書換、及びこの書換後の設定のルーティング部302の制御への反映の指示を、スターカプラ通信制御部311を介して通知する。
フレーム情報保持部314は、各ECUが送信するフレームの(又はスロットの)ID、送信元のブランチ等の情報であるフレーム情報を格納している。フレーム情報保持部314に格納されるフレーム情報の一例を図10に示し、詳細は後述する。
フレームルール保持部315は、不正検知部312が受信フレームを不正であるか否かの判断に用いるルールを格納している。フレームルール保持部315に格納されるフレームルールの一例を図11に示し、詳細は後述する。
ブランチ異常度保持部316は、不正なフレームの受信数に基づくブランチごとの異常度を格納している。ブランチ異常度保持部316に格納されるブランチ異常度の一例を図12に示し、詳細は後述する。
受信履歴保持部317は、受信フレームに関する情報、例えばペイロードが示す値、フレームの属性などのメタ情報、フレームの受信数を格納している。受信履歴保持部317に格納される受信履歴の一例を図13に示し、詳細は後述する。
[1.7 通信用設定パラメータ]
図7は、通信用設定パラメータ保持部205に格納されている通信用設定パラメータの一例を示している。通信用設定パラメータとしては、データ転送の速度が10Mbpsであることと、静的セグメントのスロットID(すなわち各スロットで送受信されるフレームのフレームID)が1~50であること、動的セグメントのスロットID(同じく、すなわちフレームID)が51~100であることを示している。また、静的フレームのペイロード長が8(つまり16バイト)であることも示されている。クラスタでは、これらのパラメータの値は、ECU全てに共有されており、これらのパラメータの値に基づいてFlexRayフレームの送受信が実現される。なお、図7に示す通信用設定パラメータの値は一例に過ぎず、別の値であっても構わない。また、上述した通信用設定パラメータも一例に過ぎず、図7に記載のないパラメータ(例えば、各セグメントの長さ、スロットの長さ等)が含まれていてもよいし、逆に、図7に記載されているパラメータの全てが必須というわけではない。
図7は、通信用設定パラメータ保持部205に格納されている通信用設定パラメータの一例を示している。通信用設定パラメータとしては、データ転送の速度が10Mbpsであることと、静的セグメントのスロットID(すなわち各スロットで送受信されるフレームのフレームID)が1~50であること、動的セグメントのスロットID(同じく、すなわちフレームID)が51~100であることを示している。また、静的フレームのペイロード長が8(つまり16バイト)であることも示されている。クラスタでは、これらのパラメータの値は、ECU全てに共有されており、これらのパラメータの値に基づいてFlexRayフレームの送受信が実現される。なお、図7に示す通信用設定パラメータの値は一例に過ぎず、別の値であっても構わない。また、上述した通信用設定パラメータも一例に過ぎず、図7に記載のないパラメータ(例えば、各セグメントの長さ、スロットの長さ等)が含まれていてもよいし、逆に、図7に記載されているパラメータの全てが必須というわけではない。
[1.8 受信フレーム情報]
図8は、セキュアスターカプラ300が備える受信フレーム情報保持部304に格納される受信フレーム情報の一例を示している。
図8は、セキュアスターカプラ300が備える受信フレーム情報保持部304に格納される受信フレーム情報の一例を示している。
図8に示す例では、リスト形式で上から順に最新の受信フレームの情報が保持されている。受信フレームの情報は、セキュアスターカプラ300で受信されたフレームごとに、どのブランチから受信されたかの情報である受信ブランチ、受信フレームを示す信号を受信したタイムスロットのID(受信スロットID)、サイクルカウント、ペイロード長、ペイロードに含まれるデータ、Payload preamble indicatorのフラグ状態、フレームが正しく受信されたかを示すエラーフラグが保持されている。
[1.9 ルーティングテーブル]
図9は、セキュアスターカプラ300が備えるルーティングテーブル保持部305に格納されるルーティングテーブルの一例を示している。
図9は、セキュアスターカプラ300が備えるルーティングテーブル保持部305に格納されるルーティングテーブルの一例を示している。
図9のルーティングテーブルは、スロットID、Cycle offset及びCycle receptionの組み合わせにより決定される特定のタイミングと、当該タイミングで転送されるべき信号を送信する送信元ブランチを規定するルール(ルーティングルールともいう)を行ごとに示す。例えば1行目は、スロットIDが1、Cycle offsetが0、Cycle receptionが1のタイミングにおける送信元ブランチを、100cの識別子で示す。ルーティング部302は、このタイミングでこの識別子が示すブランチのバス(バス100c)から信号を受信すると、当該信号が他のブランチへ転送されるようにルーティングする。また、このタイミングでバス100c以外から受信された信号があった場合も、ルーティング部302は当該信号を無視する(ルーティングしない)。同様に、2行目に示されるルールでは、スロットIDが3、Cycle offsetが0、Cycle receptionが2の組み合わせにより決定されるタイミングにおける送信元ブランチは、識別子が100aのブランチである。また、3行目に示されるルールでは、スロットIDが99、Cycle offsetが1、Cycle receptionが2のタイミングにおける送信元ブランチは、識別子が100bのブランチである。このようなルーティングルールを示すルーティングテーブルを備えるルーティングテーブル保持部305は、本実施の形態におけるルーティングルール保持部の例である。
[1.10 フレーム情報]
図10は、不正検知ECU310が備えるフレーム情報保持部314に格納されるフレーム情報の一例を示している。
図10は、不正検知ECU310が備えるフレーム情報保持部314に格納されるフレーム情報の一例を示している。
図10に示す例では、テーブルの各行に1件のフレーム情報として、スロットID、Cycle offset、Cycle reception、フレーム名、及びフレームに含まれるペイロードが示す情報の種類が保持されている。Cycle offset及びCycle receptionは、サイクル多重化(サイクルマルチプレキシング)と呼ばれる、同じスロットIDであってもサイクルによって異なる内容(種類)のデータを含むフレームを送受信する方法が用いられるときに対象のフレームを抽出するために必要な情報である。例えばスロットIDが99のフレームとしてはD、E、F、Gの4つのフレーム名が存在し、それぞれカメラ情報1、カメラ情報2、カメラ情報3、カメラ情報4の異なる内容の情報をペイロードに含み、異なるサイクルにおいて送受信される。
例えばカメラ情報1ではCycle offsetが0で、Cycle receptionが4である。これは、カメラ情報1のデータをペイロードに含むフレームであるフレームDの送信が、サイクルカウントが0のサイクルからスタートして、4サイクルごと実行されることを意味する。つまりフレームDは、サイクルカウントが、0、4、8、12、16、・・・、52、56、60のサイクル内のスロットIDが99のスロットで送信される。同様に、カメラ情報2を含むフレームEは、サイクルカウントが1、5、9、・・・53、57、61のサイクル内の、スロットIDが99のスロットで送信される。カメラ情報3を含むフレームFは、サイクルカウントが2、6、10、・・・、54、58、62のサイクル内のスロットIDが99のスロットで送信される。カメラ情報4を含むフレームGは、サイクルカウントが3、7、11、・・・、55、59、63のサイクル内のスロットIDが99のスロットで送信される。上記のようにして内容の異なるフレームを異なるサイクル内の同一スロットIDのスロットで送信するのが、サイクル多重化(サイクルマルチプレキシング)である。
また、各フレーム情報にはさらに、当該フレームの車載ネットワークシステム10の設計上の送信元である送信元ECUと、送信元ECUが接続されるブランチを示す情報が含まれている。このようなフレーム情報が示すのは、いわば、車載ネットワークシステム10におけるフレームの送受信のスケジュールである。
図10に例示されるフレーム情報の中身についてさらに具体的に説明する。
図10のテーブルの1行目は、スロットIDが1のスロットでは、Cycle offsetが0、Cycle receptionが1(つまり全てのサイクルで同一内容のデータを含むフレームが送信される)のスケジュールで、フレーム名がAのフレームが送信されること、フレームAのペイロードの内容、つまりペイロードが示す情報は速度に関する情報であること、送信元ECUは200cであり、ブランチは100cであることを示している。同テーブルの2行目は、スロットIDが2のスロットでは、フレームが送信されないことを示している。また、同テーブルの3行目は、スロットIDが3のスロットでは、Cycle offsetが0、Cycle receptionが2(つまりサイクルカウントが偶数のサイクルでのみ送信される)のスケジュールで、フレーム名がBのフレームが送信されること、フレームBのペイロードが示す情報はステアリング角度であること、送信元ECUは200aであり、ブランチは100aであることを示している。また、同テーブルのさらに下の行では、スロットIDが98のスロットでは、Cycle offsetが1、Cycle receptionが2(つまりサイクルカウントが奇数のときのみ送信される)のスケジュールで、フレーム名がCのフレームが送信されること、フレームCのペイロードが示す情報はギア状態(シフトレバー又はセレクターのポジション)であること、送信元ECUは200bであり、ブランチは100bであることを示している。さらに次の行では、スロットIDが99のスロットでは、Cycle offsetが0、Cycle receptionが4のスケジュールで、フレーム名がDのフレームが送信されること、フレームDのペイロードが示すのは、カメラ情報1と呼ばれる所定の情報であること、送信元ECUは200dであり、ブランチは100dであることを示している。さらに次の行では、スロットIDが99のスロットでは、Cycle offsetが1、Cycle receptionが4のスケジュールで、フレーム名がEのフレームが送信されること、フレームEのペイロードが示すのは、カメラ情報2と呼ばれる所定の情報であること、送信元ECUは200dであり、ブランチは100dであることを示している。さらに次の行では、スロットIDが99のスロットでは、Cycle offsetが2、Cycle receptionが4のスケジュールで、フレーム名がFのフレームが送信されること、フレームFのペイロードが示すのは、カメラ情報3と呼ばれる所定の情報であること、送信元ECUが200dであり、ブランチが100dであることを示している。最下行では、スロットIDが99のスロットで、Cycle offsetが3、Cycle receptionが4のスケジュールで、フレーム名がGのフレームが送信されること、フレームGのペイロードが示すのは、カメラ情報4と呼ばれる所定の情報であること、送信元ECUは200dであり、ブランチが100dであることを示している。なお、図7の通信用設定パラメータに含まれるIDによれば、フレームA及びBは静的セグメント内で送信される静的フレームであり、フレームCからフレームGは動的セグメント内で送信される動的フレームである。
[1.11 フレームルール]
図11は、不正検知ECU310が備えるフレームルール保持部315に格納されるフレームルールの一例を示した図である。図11に示す例では、テーブルの各行においてフレーム名で特定されるフレームの種別ごとに受信ルールが設定されている。
図11は、不正検知ECU310が備えるフレームルール保持部315に格納されるフレームルールの一例を示した図である。図11に示す例では、テーブルの各行においてフレーム名で特定されるフレームの種別ごとに受信ルールが設定されている。
フレームAに関しては、ペイロード長は8で固定であり、受信ルールとしては、今回受信したフレームAのペイロードが示す速度と前回受信したフレームAが示す速度との差分が0.5km/h以上である場合に不正なフレームであると判断される。フレームBに関しては、ペイロード長は8で固定であり、受信ルールとしては、今回受信したフレームBのペイロードが示すステアリング角度と前回受信したフレームBのペイロードが示すステアリング角度との差分が30度以上である場合に不正なフレームであると判断される。
なお、不正検知ECU310は、受信したフレームが受信ルールに適合するかだけでなく、ペイロード長が正しいかに基づいてフレームが不正であるか否かを判断してもよい。
[1.12 ブランチ異常度]
図12は、不正検知ECU310が備えるブランチ異常度保持部316に格納されるブランチ異常度の一例である。図12に示す例では、テーブルの各行においてブランチごとの異常度が保持されている。ブランチ異常度は、不正検知部312による判断の結果に基づく不正なフレームの受信のたびに、当該フレームを送信したブランチの異常度が1ずつ増加される。図12に示す例では、識別子「100a」で識別されるブランチの異常度は0、識別子「100b」で識別されるブランチの異常度は0、識別子「100c」で識別されるブランチの異常度は0、識別子「100d」で識別されるブランチの異常度は20である。
図12は、不正検知ECU310が備えるブランチ異常度保持部316に格納されるブランチ異常度の一例である。図12に示す例では、テーブルの各行においてブランチごとの異常度が保持されている。ブランチ異常度は、不正検知部312による判断の結果に基づく不正なフレームの受信のたびに、当該フレームを送信したブランチの異常度が1ずつ増加される。図12に示す例では、識別子「100a」で識別されるブランチの異常度は0、識別子「100b」で識別されるブランチの異常度は0、識別子「100c」で識別されるブランチの異常度は0、識別子「100d」で識別されるブランチの異常度は20である。
[1.13 受信履歴]
図13は、不正検知ECU310が備える受信履歴保持部317に格納される受信履歴の一例である。図13に示す例では、テーブル内にフレーム名で特定されるフレームの種別ごとの、ペイロードが示す前回受信値及び車両状態が保持されている。前回受信値は、受信時刻(μs)と併せて保持されている。この例では、車両の速度を示すフレームAの前回受信値は40.5km/hであり、前回の受信時刻が12100μsである。また、ステアリング角度を示すフレームBの前回受信値は5度であり、前回受信時刻は8100である。また、ギア状態を示すフレームCの前回受信値はドライブ状態であり、前回の受信時刻は12400μsである。また、カメラ情報1を示すフレームDの前回受信値は、前方車両の検知を示しており、前回の受信時刻は1440μsである。また、カメラ情報2を示すフレームEの前回受信値は歩行者検知を示しており、受信時刻は5480μsである。また、カメラ情報3を示すフレームFの前回受信値はレーン検知状態を示しており、受信時刻は9520μsである。また、カメラ情報4を示すフレームGの前回受信値は、後方のカメラが未起動であることを示しており、受信時刻は13560μsである。車両状態の情報は、フレームAが示す車両の速度が0km/hより大きい場合には「走行中」に更新され、0km/hの場合には「停止中」に更新される。なお、上記の前回受信値は、例えばフレームの受信の度に、該当する値が不正検知部312によって更新される。
図13は、不正検知ECU310が備える受信履歴保持部317に格納される受信履歴の一例である。図13に示す例では、テーブル内にフレーム名で特定されるフレームの種別ごとの、ペイロードが示す前回受信値及び車両状態が保持されている。前回受信値は、受信時刻(μs)と併せて保持されている。この例では、車両の速度を示すフレームAの前回受信値は40.5km/hであり、前回の受信時刻が12100μsである。また、ステアリング角度を示すフレームBの前回受信値は5度であり、前回受信時刻は8100である。また、ギア状態を示すフレームCの前回受信値はドライブ状態であり、前回の受信時刻は12400μsである。また、カメラ情報1を示すフレームDの前回受信値は、前方車両の検知を示しており、前回の受信時刻は1440μsである。また、カメラ情報2を示すフレームEの前回受信値は歩行者検知を示しており、受信時刻は5480μsである。また、カメラ情報3を示すフレームFの前回受信値はレーン検知状態を示しており、受信時刻は9520μsである。また、カメラ情報4を示すフレームGの前回受信値は、後方のカメラが未起動であることを示しており、受信時刻は13560μsである。車両状態の情報は、フレームAが示す車両の速度が0km/hより大きい場合には「走行中」に更新され、0km/hの場合には「停止中」に更新される。なお、上記の前回受信値は、例えばフレームの受信の度に、該当する値が不正検知部312によって更新される。
なお、この例では受信時刻が保持されているが、受信時刻は必須ではない。また、受信時刻が、基準となる所定の時刻からの経過時間を示すμs単位で表されているが、時間を表す単位であればよい。例えば、FlexRayプロトコルで用いられる内部クロックから算出されるマイクロティックの個数が用いられて、マイクロティックを用いて定義されるマクロティックの個数が用いられてもよい。
[1.14 セキュアスターカプラの動作]
次に、上記の様に構成されている車載ネットワークシステム10における、各情報及びルールを用いたセキュアスターカプラ300の動作の手順について例を用いて説明する。なお、セキュアスターカプラ300の動作は、セキュアスターカプラ300の構成要素による処理の実行によって実現される。したがって、以下のセキュアスターカプラ300の各構成要素による処理の説明をもって、セキュアスターカプラ300の動作の説明であると理解されたい。
次に、上記の様に構成されている車載ネットワークシステム10における、各情報及びルールを用いたセキュアスターカプラ300の動作の手順について例を用いて説明する。なお、セキュアスターカプラ300の動作は、セキュアスターカプラ300の構成要素による処理の実行によって実現される。したがって、以下のセキュアスターカプラ300の各構成要素による処理の説明をもって、セキュアスターカプラ300の動作の説明であると理解されたい。
図14は、セキュアスターカプラ300の動作の手順例を示すフローチャートである。
セキュアスターカプラ300において、ルーティング部302が、トランシーバ部301a~301dのいずれかのブランチから信号を受信しているかを判断する(S1001)。信号が受信されている場合(S1001でYes)、ルーティング部302は、ルーティングテーブル保持部305に格納されているルーティングテーブルに、当該信号を受信している現在のタイミング(スロット)に対応するルーティングルールが存在するか否かを判断する(S1002)。対応するルーティングルールが存在する場合(S1002でYes)、ルーティング部302は、このルーティングルールに照らして、信号を受信したスロットと、この信号を送信したブランチとの対応が適切であるかを確認する(S1003)。対応するルーティングルールが存在しない場合(S1002でNo)、ルーティング部302は、他のブランチから信号を受信中かを確認する(S1006)。
ステップS1003にて、フレームを受信したスロットと受信したフレームを送信したブランチとの対応が適切である場合(S1003でYes)、ルーティング部302は、この信号を、受信したフレームを送信したブランチ以外のブランチへルーティングして、トランシーバ部から送信させる(S1004)。また、ECUインターフェース部303によって、この受信した信号からフレームが解釈され、受信フレームが受信フレーム情報保持部304に格納される(S1005)。フレームを受信したスロットと受信したフレームを送信したブランチとの対応が適切でない場合(S1003でNo)、セキュアスターカプラ300の処理は終了する。
ステップS1006にて、他のブランチから信号を受信していない場合(S1006でNo)、セキュアスターカプラ300では上述のステップS1004及びS1005以降の処理が実行される。他のブランチから、信号を受信している場合(S1006でYes)、セキュアスターカプラ300の処理は終了する。
ステップS1001にて、信号を受信していない場合(S1001でNo)、ECUインターフェース部303は、不正検知ECU310から通知があったかを判断する(S1007)。通知を受けていない場合(S1007でNo)、セキュアスターカプラ300の処理は、S1001に戻る。通知を受けている場合(S1007でYes)、ECUインターフェース部303が、この通知の内容が、他のECUへのアラートなどのためのフレームの送信要求であるか否かを判断する(S1008)。フレームの送信要求である場合(S1008でYes)、ECUインターフェース部303は、各トランシーバ部から全ブランチにフレームを送信させて(S1009)、セキュアスターカプラ300の処理が終了する。通知内容がフレームの送信要求でない場合(S1008でNo)、ECUインターフェース部303が、通知はルーティングテーブル(図中RT)の更新・設定の反映の要求であるとして、ルーティングテーブルを更新し、設定を反映させて(S1010)、セキュアスターカプラ300の処理が終了する。
なお、セキュアスターカプラ300の上述の動作において、ステップS1001で信号を受信したスロットとこの信号を送信したブランチとの対応が適切でないこと(S1003でNo)が、及び他のブランチから信号を受信していること(S1006でYes)が、それぞれ本実施の形態における非転送条件の第1条件及び第2条件の例である。
[1.15 不正検知ECUの動作]
次に、上記の様に構成されている車載ネットワークシステム10における、各情報、ルール及び受信履歴を用いた不正検知ECU310の動作の手順について例を用いて説明する。なお、不正検知ECU310の動作は、不正検知ECU310の構成要素による処理の実行によって実現される。したがって、以下の不正検知ECU310の各構成要素による処理の説明をもって、不正検知ECU310の動作の説明であると理解されたい。
次に、上記の様に構成されている車載ネットワークシステム10における、各情報、ルール及び受信履歴を用いた不正検知ECU310の動作の手順について例を用いて説明する。なお、不正検知ECU310の動作は、不正検知ECU310の構成要素による処理の実行によって実現される。したがって、以下の不正検知ECU310の各構成要素による処理の説明をもって、不正検知ECU310の動作の説明であると理解されたい。
図15は、不正検知ECU310の動作の手順例を示すフローチャートである。
不正検知ECU310において、スターカプラ通信制御部311がセキュアスターカプラ300から受信フレーム情報を受信する(S1101)。不正検知部312は、受信フレーム情報が示す受信ブランチと受信スロットIDとの組み合わせが、フレーム情報保持部314に格納されているフレーム情報(図10)が示すスロットIDと送信元ブランチとの組み合わせに適合するかを確認する(S1102)。フレーム情報に適合する場合(S1102でYes)、不正検知部312は、当該受信フレーム情報が示す受信フレームの内容(ペイロード)が、フレームルール保持部315に格納されているフレームルール(図11)に含まれる対応するものに適合するかをさらに確認する(S1103)。対応するフレームルールに適合する場合(S1103でYes)、不正検知ECU310の処理は終了する。
受信ブランチと受信スロットIDとの組み合わせがフレーム情報に適合しない(S1102でNo)場合、又は受信フレームの内容が、対応するフレームルールに適合しない場合(S1103でNo)、不正検知部312は、この受信ブランチの異常度(図12)を1増加させる(S1104)。さらに不正検知部312は、受信ブランチの累積された異常度が所定値以上であるかを判断する(S1105)。所定値以上である場合(S1105でYes)、当該ブランチからの不正である可能性が高いフレームの送信を抑制するために、不正検知部312は、スターカプラ通信制御部311を介してセキュアスターカプラ300のルーティングテーブルの更新を行う(S1106)。異常度が所定値未満の場合(S1105でNo)、又はルーティングテーブルの更新後、不正検知ECU310の処理は終了する。
なお、ルーティングテーブルの更新(S1106)は、例えば異常度が所定値以上であるとステップS1105で判断した受信ブランチが送信元ブランチであるルーティングルールを削除することで実行されてもよい。またはルーティングテーブルに、各ルーティングルールについて転送可否であることを示すフラグがさらに含まれてもよい。
(実施の形態2)
[2.システムの構成]
次に、本開示の一実施の形態として、スター型トポロジの車載ネットワークを監視し、送受信される各フレームと、各フレームで転送されるべき信号を送信する送信元ブランチを示す情報と、さらにブラックリストを用いて不正なフレームの送信を検知し、又はその転送を防止するセキュアスターカプラ及び不正検知ECUについて、図面を参照しながら説明する。実施の形態1と同様の機能を有する構成要素は同じ参照符号を付与し、説明を省略する。
[2.システムの構成]
次に、本開示の一実施の形態として、スター型トポロジの車載ネットワークを監視し、送受信される各フレームと、各フレームで転送されるべき信号を送信する送信元ブランチを示す情報と、さらにブラックリストを用いて不正なフレームの送信を検知し、又はその転送を防止するセキュアスターカプラ及び不正検知ECUについて、図面を参照しながら説明する。実施の形態1と同様の機能を有する構成要素は同じ参照符号を付与し、説明を省略する。
なお、上記のセキュアスターカプラ及び不正検知ECUが用いられる車載ネットワークシステムの構成は、図1に示す車載ネットワークシステム10において、セキュアスターカプラ300及び不正検知ECU310を、本実施の形態に係るセキュアスターカプラ1300及び不正検知ECU1310にそれぞれ置換し、その他は共通でよいため、図示及び説明を省略する。また、図2に示されるFlexRayのサイクル、図3に示されるFlexRayフレームのフォーマット、図4に示されるECUの機能的な構成、並びに図7~図13に示されるパラメータ、情報及びルール等も本実施の形態に適用可能であり、再度の図示及び説明は省略する。
[2.1 セキュアスターカプラの構成]
図16は、セキュアスターカプラ1300の機能的な構成の例を示す図である。セキュアスターカプラ1300は、トランシーバ部301a、301b、301c、301d、ルーティング部1302、ECUインターフェース部1303、受信フレーム情報保持部304、ルーティングテーブル保持部305、ブラックリスト保持部1306、ブランチ異常度保持部316、及び車両状態保持部1307を備える。なお、セキュアスターカプラ1300は、例えばプロセッサ及びメモリを含むマイクロコントローラ、並びに入出力回路を備える。セキュアスターカプラ1300のここに挙げた構成要素は、入力回路で信号の入力を受け、当該信号に対してプロセッサがメモリに記憶される1個又は複数個のプログラムを実行して行う判断の結果に応じて出力回路から所定のバスへ向けて信号が出力されるまでの処理を実現する機能的な構成要素である。
図16は、セキュアスターカプラ1300の機能的な構成の例を示す図である。セキュアスターカプラ1300は、トランシーバ部301a、301b、301c、301d、ルーティング部1302、ECUインターフェース部1303、受信フレーム情報保持部304、ルーティングテーブル保持部305、ブラックリスト保持部1306、ブランチ異常度保持部316、及び車両状態保持部1307を備える。なお、セキュアスターカプラ1300は、例えばプロセッサ及びメモリを含むマイクロコントローラ、並びに入出力回路を備える。セキュアスターカプラ1300のここに挙げた構成要素は、入力回路で信号の入力を受け、当該信号に対してプロセッサがメモリに記憶される1個又は複数個のプログラムを実行して行う判断の結果に応じて出力回路から所定のバスへ向けて信号が出力されるまでの処理を実現する機能的な構成要素である。
ルーティング部1302は、トランシーバ部301aから通知されたデジタル信号を、トランシーバ部301aを除くトランシーバ部301b、301c及び301dへルーティングする。同様に、トランシーバ部301bから通知されたデジタル信号を、ルーティング部1302は、トランシーバ部301bを除く各トランシーバ部へルーティングする。ルーティング部1302はさらに、ルーティング中のデジタル信号と、当該デジタル信号をどのブランチから受信しているかを示す受信ブランチ情報とをECUインターフェース部1303へ通知する。また、ルーティング部1302は、ルーティングテーブル保持部305に格納されているルーティングテーブルに基いて、スロット番号(スロットID)と、送信元ブランチ(又は送信元ブランチに接続されているトランシーバ部)との対応を設定する。ルーティング部1302は、各スロット番号のタイムスロットにおいて、設定されている対応する送信元ブランチから受信された信号をその他のブランチへルーティングする。設定されていない送信元ブランチから受信された信号はルーティング部1302で無視され、つまりセキュアスターカプラ300による他のブランチへの転送が実行されない。スロット番号と送信元ブランチとの対応が設定されていないタイムスロットにおいては、ルーティング部1302は、最初に受信された信号を、当該信号を送信したブランチ以外のブランチへルーティングする。
また、ルーティング部1302は、ルーティング中、つまり転送が未完了の信号をデコードしてフレームを取得し、当該フレームの内容がブラックリスト保持部1306に保持されているブラックリストに合致しているかを判断する。ルーティング部1302は、さらにブランチ異常度保持部316に格納されているブランチ異常度、及び車両状態保持部1307に格納されている車両状態を参照する。ルーティング中の信号が示すフレームの内容がブラックリストに合致し、かつ、参照して取得したブランチ異常度及び車両状態が、ブラックリストの有効化条件を満たす場合、ルーティング部1302は信号のルーティングを停止する。つまり、セキュアスターカプラ1300による当該信号の他のブランチへの転送が停止される。これにより、不正なフレームを送信するECUが、ルーティングテーブルが含むルーティングルールに合致するブランチに存在している場合であっても、このECUから送信されるフレームはペイロード値に基づいて不正と判定される。したがって、不正なフレーム(信号)の転送が防止される。
また、ルーティング部1302は、各ブランチから受信した信号をデコードしてフレームを取得し、当該フレームに各ブランチにおいてプロトコル上のエラーが発生しているか否かを確認するエラー検知処理を行う。ルーティングルールが有効なスロットにおいて受信されたフレームにエラーが発生している場合、このフレームを送信したブランチについての、ブランチ異常度保持部316に格納されているブランチの異常度を増加させる。これは、不正なフレーム送信が試行されているブランチを把握する目的で実行される。ある特定のスロットで所定のフレームを送信する正規のECUと、当該スロットにて不正なフレームを送信しようとするECUとが異なるブランチに含まれる場合には、セキュアスターカプラ1300において、ルーティングルールに合致しないブランチからの不正なフレームの送信であるとして無視される。つまり、不正なフレームの転送は防止される。しかしながら、これだけでは不正なフレームを送信したブランチは特定されない。正規のECUから送信されるフレームは、セキュアスターカプラ1300によってその他のブランチに転送される。この転送されたこのフレームと、不正なECUから送信されたフレームとが衝突を起こすことで、不正なECUを含むブランチのみエラー状態となり、このエラー状態がルーティング部1302によって検知される。
ECUインターフェース部1303は、ルーティング部302からデジタル受信した信号と、受信ブランチ情報とを通知されると、当該デジタル信号をデコードして受信フレームとして解釈し、この受信フレームの情報と受信ブランチ情報とを対応付けて受信フレーム情報保持部304に保存する。また、不正検知ECU1310からの要求に従って、受信フレーム情報保持部304に格納されている、受信フレームの情報及び受信ブランチ情報を不正検知ECU1310に通知する。さらにECUインターフェース部1303は、不正検知ECU1310からの指示を解釈して、ルーティングテーブル保持部305に格納されている、各スロットで転送すべき信号を送信する送信元ブランチを示すルーティングテーブルの書換、及びブラックリスト保持部1306に格納されているブラックリストの更新、ブランチ異常度保持部316に格納されているブランチ異常度の更新、及び車両状態保持部1307に格納されている車両状態の更新を実行する。
ブラックリスト保持部1306は、ルーティング部1302によって参照され、転送中の信号の転送を停止させるか否かの判断に用いられるブラックリストを格納している。ブラックリスト保持部1306が保持するブラックリストの一例を図18に示し、詳細は後述する。
車両状態保持部1307は、ルーティング部1302によって参照され、ブラックリスト保持部1306に格納されるブラックリストを有効化する条件として用いられる車両状態を格納している。図19に車両状態保持部1307が保持する車両状態の一例を示す。図19の例では、車両状態は走行中であることを示している。
[2.2 不正検知ECUの構成]
図17は、不正検知ECU1310の機能的な構成の例を示すブロック図である。
図17は、不正検知ECU1310の機能的な構成の例を示すブロック図である。
不正検知ECU1310は、スターカプラ通信制御部1311と、不正検知部1312と、フレーム生成部313と、通信用設定パラメータ保持部205と、フレーム情報保持部314と、フレームルール保持部315と、受信履歴保持部317とを備える。
スターカプラ通信制御部1311は、セキュアスターカプラ1300との通信インターフェースであり、通信用設定パラメータ保持部205に格納されている通信用設定パラメータに基づいてセキュアスターカプラ1300の設定を行う。セキュアスターカプラ1300の設定には、スロットと送信元ブランチとの対応を示したテーブルに基づくルーティングの制御情報、及びブラックリストも含まれ得る。さらに、セキュアスターカプラ1300が受信したフレームに基づいて決定される走行状態等の車両状態の更新通知、ブランチ異常度の増加に関する通知を行う。また、セキュアスターカプラ1300が受信したフレームの情報である上記の受信フレーム情報を受信し、不正検知部1312へ通知する。フレーム生成部313からフレームの送信を要求されると、スターカプラ通信制御部1311は、このフレームの内容をセキュアスターカプラ1300へ通知する。
不正検知部1312は、スターカプラ通信制御部1311から通知される、受信ブランチの情報を含む受信フレーム情報に基づいて、受信フレームが不正なフレームであるかを判断する。この判断では、不正検知部1312は、まず、フレーム情報保持部314に格納されているスロットIDと送信元ブランチとの対応を示すテーブルを参照して、実際の受信フレームのフレームIDと受信ブランチとの対応が正しいかを確認する。受信フレームのフレームIDと受信ブランチとの対応が正しい場合は、不正検知部1312は、フレームルール保持部315に格納されている受信フレームのペイロードの内容に応じた種別ごとのルールと、受信履歴保持部317に保持されている受信履歴とをさらに参照し、ペイロードの内容がこのルールから外れる受信フレームを不正であると判断する。受信フレームが不正であると判断した場合は、不正検知部312はさらに、不正なフレームが送信されていることを他のECUに通知するアラートのためのフレームの送信を、フレーム生成部313に要求する。あわせて、不正検知部312はスターカプラ通信制御部1311に、受信ブランチが異常であることを通知する。またさらに、不正検知部1312は、今後このブランチから送信される不正なフレームが他のブランチへ転送されることを防ぐために、セキュアスターカプラ1300のECUインターフェース部1303へ、ルーティングテーブルの書換を通知する。
[2.3 ブラックリスト]
図18は、ブラックリスト保持部1306に格納されるブラックリストの一例である。図18のブラックリストは、スロットID、Cycle offset、Cycle receptionの組み合わせにより決定される特定のスロットで受信されるフレームごとの、受信ブランチ、ペイロードの値を及びブラックリスト有効化条件を行ごとに示す。例えば1行目は、スロットIDが20、Cycle offsetが3、Cycle receptionが4のスケジュールで受信されるフレームについては、受信ブランチが100dであって、ペイロードの値が**5*・・・である場合に、車両状態が「走行中」である場合に当該フレームはブラックリストに合致し、かつブランチ異常度が30より大きいことを条件として転送が中止されることを示す。ここで、ブラックリストの欄の「*」は、ペイロードで対応するビットが示す値がドントケアであることを意味する。つまりこの例では、上位2バイト目の上位4ビットが示す値が5であるペイロードのフレームを受信した場合にブラックリストに合致することを示している。同様に2行目は、スロットIDが10、Cycle offsetが0、Cycle receptionが2のスケジュールで受信されるフレームについては、受信ブランチが100aであって、ペイロードの値がFF 11 **・・・である場合に当該フレームはブラックリストに合致し、ブラックリストに合致したフレーム(を示す信号)は常に転送が中止されることを示している。
図18は、ブラックリスト保持部1306に格納されるブラックリストの一例である。図18のブラックリストは、スロットID、Cycle offset、Cycle receptionの組み合わせにより決定される特定のスロットで受信されるフレームごとの、受信ブランチ、ペイロードの値を及びブラックリスト有効化条件を行ごとに示す。例えば1行目は、スロットIDが20、Cycle offsetが3、Cycle receptionが4のスケジュールで受信されるフレームについては、受信ブランチが100dであって、ペイロードの値が**5*・・・である場合に、車両状態が「走行中」である場合に当該フレームはブラックリストに合致し、かつブランチ異常度が30より大きいことを条件として転送が中止されることを示す。ここで、ブラックリストの欄の「*」は、ペイロードで対応するビットが示す値がドントケアであることを意味する。つまりこの例では、上位2バイト目の上位4ビットが示す値が5であるペイロードのフレームを受信した場合にブラックリストに合致することを示している。同様に2行目は、スロットIDが10、Cycle offsetが0、Cycle receptionが2のスケジュールで受信されるフレームについては、受信ブランチが100aであって、ペイロードの値がFF 11 **・・・である場合に当該フレームはブラックリストに合致し、ブラックリストに合致したフレーム(を示す信号)は常に転送が中止されることを示している。
[2.4 セキュアスターカプラの動作]
次に、上記の各情報及びルール等を用いたセキュアスターカプラ1300の動作の手順について例を用いて説明する。なお、セキュアスターカプラ1300の動作は、セキュアスターカプラ1300の構成要素による処理の実行によって実現される。したがって、以下のセキュアスターカプラ1300の各構成要素による処理の説明をもって、セキュアスターカプラ1300の動作の説明であると理解されたい。
次に、上記の各情報及びルール等を用いたセキュアスターカプラ1300の動作の手順について例を用いて説明する。なお、セキュアスターカプラ1300の動作は、セキュアスターカプラ1300の構成要素による処理の実行によって実現される。したがって、以下のセキュアスターカプラ1300の各構成要素による処理の説明をもって、セキュアスターカプラ1300の動作の説明であると理解されたい。
図20はセキュアスターカプラ1300のフレーム受信時の動作の手順例を示すフローチャートである。
セキュアスターカプラ1300は、フレーム(を示す信号)の受信を開始する(S2001)。
ルーティング部1302は、ルーティングテーブル保持部305に格納されているルーティングテーブルに、当該信号を受信している現在のスロットに対応するルーティングルール(図中、RR)が存在するか否かを判断する(S2002)。対応するルーティングルールが存在する場合(S2002でYes)、ルーティング部1302は、ステップS2003の判断を実行する。そうでない場合(S2002でNo)、セキュアスターカプラ1300は、ステップS2011の判断を実行する。
ルーティング部1302は、ステップS2003では、当該信号を受信しているスロットと受信ブランチとの関係が、対応するルーティングルールに合致しているかを確認する。ルーティングルールに合致している場合(S2003でYes)、ルーティング部1302は、受信している信号を受信ブランチ以外のブランチへ転送するルーティングを開始する(S2004)。そうでない場合(S2003でNo)、セキュアスターカプラ1300は、受信ブランチの異常度を増加させて(S2008)、セキュアスターカプラ1300の処理は終了する。
また、ルーティング部1302は、ルーティング開始後に、転送が未完了の信号のデコードを行い、デコードによって取得したフレームが、ブラックリスト保持部1306に格納されるブラックリストに合致しているか否かの判断を行う(S2005)。ブラックリストに合致している場合(S2005でYes)、ルーティング部1302はルーティングを停止し(S2009)、セキュアスターカプラ1300の処理を終了する。フレームがブラックリストに合致しない場合(S2005でNo)、ルーティング部1302は、信号の転送を完了させる(S2006)。
ステップS2006の後、ルーティング部1302は、各ブランチでのエラー発生状況を確認する(S2007)。全てのブランチでエラーが無ければ(S2007でNo)、転送は正常に完了したとして、セキュアスターカプラ1300の処理は終了する。エラーの発生したブランチが存在する場合(S2007でYes)、ルーティング部1302は、不正なフレームの送信がなされていた可能性があるとして、エラーが発生したブランチの異常度を増加させ(S2010)、セキュアスターカプラ1300の処理は終了する。
ルーティング部1302は、ステップS2011では、現在のスロットで他のブランチから受信している信号を転送のためにルーティング中であるか否かを確認する。ルーティング中でない場合(S2011でNo)は、S2004を実行する。ルーティング中である場合(S2011でYes)、ルーティング部1302は受信していた信号を無視し、セキュアスターカプラ1300の処理は終了する。
[2.5 フレーム受信時の不正検知ECUの動作]
次に、上記の各情報及びルール等を用いた不正検知ECU1310の動作の手順について例を用いて説明する。なお、不正検知ECU1310の動作は、不正検知ECU1310の構成要素による処理の実行によって実現される。したがって、以下の不正検知ECU1310の各構成要素による処理の説明をもって、不正検知ECU1310の動作の説明であると理解されたい。
次に、上記の各情報及びルール等を用いた不正検知ECU1310の動作の手順について例を用いて説明する。なお、不正検知ECU1310の動作は、不正検知ECU1310の構成要素による処理の実行によって実現される。したがって、以下の不正検知ECU1310の各構成要素による処理の説明をもって、不正検知ECU1310の動作の説明であると理解されたい。
図21は、不正検知ECU1310のフレーム受信時の動作の手順例を示すフローチャートである。
不正検知ECU1310において、スターカプラ通信制御部1311がフレーム受信の通知をセキュアスターカプラ1300から受けると、不正検知部1312は、受信フレームの受信スロットID、ペイロード情報、及び受信ブランチに関する受信フレーム情報を取得(S2101)する。不正検知部1312は、フレーム情報保持部314に格納されているフレーム情報を参照し、当該受信フレーム情報が示す受信ブランチと受信スロットIDとの組み合わせが適切であるか否かを判断する(S2102)。組み合わせが適切である場合(S2102でYes)、不正検知部1312は、ステップS2103を実行する。対応が適切でない場合(S2102でNo)、不正検知部1312は、この受信ブランチの異常度を増加させるようにセキュアスターカプラ1300へ通知を行い(S2106)、処理を終了する。
ステップS2103では、不正検知部1312は、フレームルール保持部315に格納されているフレームルールを参照し、受信フレームが対応するフレームルールに適合するか否かを判断する。フレームルールに適合する場合(S2103でYes)、不正規のフレームを受信したとして、不正検知部1312は、受信履歴保持部317に格納されている受信履歴を更新し(S2104)、車両状態の更新通知をセキュアスターカプラ1300に行い(S2105)、不正検知ECU1310の処理は終了する。フレームルールに適合しない場合(S2103でNo)、不正なフレームを受信したとして、不正検知ECU1310は、受信ブランチの異常度を増加させるようにセキュアスターカプラ1300へ通知を行い(S2106)、不正検知ECU1310の処理は終了する。
[3. 変形例及び補足事項]
本開示の一又は複数の態様に係るフレーム転送方法及びセキュアスターカプラは、上記の各実施の形態の説明に限定されるものではない。本開示の趣旨を逸脱しない限り、当業者が想到する各種の変形を上記の実施の形態に施したものも、本開示の態様に含まれてもよい。下記に、そのような変形の例、及び実施の形態の説明へのその他の補足事項を挙げる。
本開示の一又は複数の態様に係るフレーム転送方法及びセキュアスターカプラは、上記の各実施の形態の説明に限定されるものではない。本開示の趣旨を逸脱しない限り、当業者が想到する各種の変形を上記の実施の形態に施したものも、本開示の態様に含まれてもよい。下記に、そのような変形の例、及び実施の形態の説明へのその他の補足事項を挙げる。
(1)上記の各実施の形態は、図1に示したスター型のネットワークトポロジにおける例を用いて説明したが、適用可能なネットワークトポロジをこの例に限るものではない。例えば、バス型、又はスター型とバス型とのハイブリッド型などのネットワークトポロジにも本開示のセキュアスターカプラ等は適用できる。
(2)上記の各実施の形態では、別個の物として説明されるセキュアスターカプラと不正検知ECUとは一体的に実現されてもよいし、また、一方の機能的構成要素の一部が他方に組み込まれてもよい。これにより部品点数の削減につながる。この場合、上述のセキュアスターカプラの動作において各構成要素によって実行される各ステップは、不正検知ECUで実行されるステップとなり得る。また、上述の不正検知ECUの動作において各構成要素によって実行される各ステップは、セキュアスターカプラで実行されるステップとなり得る。なお、セキュアスターカプラと不正検知ECUとを一体的に実現するものであっても、本開示では便宜的にセキュアスターカプラと称するが、本開示に係るセキュアスターカプラの構成要素と不正検知ECUの構成要素とを組み合わせて備えるものは、その呼称に拘わらず本開示の技術的範囲に含まれる。
(3)上記の実施の形態では、セキュアスターカプラと不正検知ECUとが通信を行っていたが、不正検知ECUは必須の構成要素ではない。例えば予めルーティングテーブル保持部及び通信用設定パラメータ保持部の内容をセキュアスターカプラに埋め込んでおき、運用開始当初は必要最小限の機能のみを実現してもよい。これにより、通信ネットワーク上の通信装置の数を削減でき、コスト低下に効果的である。
(4)上記の実施の形態では、不正なフレームが発生したか否か、又はフレームが不正であるか否かという不正検知処理以降について詳細に述べていないが、この処理の結果の利用例について補足する。例えば、不正検知処理において得られる、不正なフレームのヘッダに含まれる情報、ペイロード値、受信時刻、受信時の車両状態等(これら情報の少なくとも一部を指して、以下では不正フレーム情報ともいう)がログに保存されておいてもよい。また、車載ネットワーク上の他のECUに不正なフレームの発生又は不正フレーム情報が通知されてもよいし、外部のサーバへ当該車両での不正なフレームの発生又は不正フレーム情報が通知されてもよい。また、当該車両のユーザインタフェースを介して運転者へ車載ネットワークに不正なフレームの発生又は不正フレーム情報が通知されてもよい。また、ゲートウェイ又はドメインコントローラが不正検知部を備える場合は、当該不正フレームを転送しない、又は不正なフレームであることを示す情報を付加して転送する等の処理を実行してもよい。
(5)上記の各実施の形態では、フレーム情報、フレームルールを平文で保持されているが、暗号化して保持されていてもよい。
(6)上記の各実施の形態では、異常度をブランチごとに保持していたが、フレームごとに異常度を保持していてもよい。これにより、異常度の高いフレームのみを遮断することが可能となり、車両への影響の抑止に効果的である。
(7)上記の各実施の形態では、フレームルールにはそれぞれ1つの受信ルールが設定されている(図11)が、2つ以上が設定されていてよい。また、受信ルールが設定されていない個別フレームルールが存在してもよい。例えば、重要性の高い第二種別のフレームにのみ受信ルールを設定することで、フレームの重要度に応じたチェックが可能となり、車載ネットワークの安全性の向上に効果的である。
(8)上記の各実施の形態では、動的フレームに関してフレームルールが設定されていない(図11)が、動的フレームに関してもフレームルールが設定されていてもよい。例えば、前回受信値からの変化量に関するルール設定されてもよい。
(9)上記の各実施の形態では、セキュアスターカプラは不正検知ECUからフレームの送信要求を受け、他ブランチにフレームを送信可能であったが、送信しないものであってもよい。これによりセキュアスターカプラの機能削減ができ、コストの削減に効果的である。
(10)上記の各実施の形態では、フレーム情報保持部に格納されるフレーム情報にフレーム名が保持されている(図10)が、フレーム名は必須ではない。
(11)上記の各実施の形態では、フレーム情報保持部に格納されるフレーム情報について、1つのフレームが保持するペイロード情報は1種類1件であるが、(図10)これに限定されない。1つのフレームが2種類以上又は同種の情報を複数件保持してもよいし、ペイロード情報が無くてもよい。また、複数件のペイロード情報が保持される場合には、ペイロードセグメントでの各件のフィールドを示す情報(フィールドの位置、長さ、単位等)が含まれていてもよい。
(12)上記の各実施の形態では、受信履歴(図13)の前回受信値はフレーム名ごとに1信号相当分だけ保持しているが、複数信号相当分保持してもよいし。また、ペイロード値をそのまま保持してもよい。
(13)上記の各実施の形態では、受信履歴(図13)に含まれる車両状態は、走行中か停止中の2状態のみであったが、車両状態はこの2状態に限らない。例えば、イグニッションオン状態、アクセサリーオン状態、低速走行状態、高速走行状態、ステアリング操舵状態、ギア状態、若しくは先進運転支援機能オンオフ状態、又はこれらを組み合わせた状態を取り得る。
(14)上記の実施の形態2では、ブラックリスト(図18)は予め保持しているものを使用する例を示したが、ブラックリストは、使用開始後も更新される動的なものであってもよい。例えば、不正検知ECUが不正であると検知したフレームのペイロード値を保持しておき、同じID、Cycle reception、Cycle offsetのスロットに送信されるフレームにて不正を所定回数以上検知したときに、これらのフレーム間でペイロード値が一致するフィールドを用いてブラックリストを更新してもよい。これにより、予めブラックリストに登録されていない、より新しい攻撃パターンの不正なフレームのルーティングを防止できるようになり、安全性の向上に効果的である。
(15)上記の実施の形態2では、ルーティング部は信号をデコードして取得するフレームのエラーを検出する機能を備えるが、エラー検出の機能はルーティング部(セキュアスターカプラ)内で実行されなくてよい。例えば、セキュアスターカプラに接続する不正検知ECUが任意の2ブランチの信号を受信可能にし、不正検知ECUが備えるデコーダ部でエラーの検出が行われてもよい。
(16)上記の実施の形態2では、ブラックリスト(図18)に合致するフレーム(信号)の転送が停止されるが、ブラックリストに合致するフレーム(信号)の転送停止以外の処理が行われてもよい。例えば、フレームに含まれるCRCの値を書き換えるなどしてもよい。転送された信号が、他の受信するECUに有効なフレームとして認識されて処理されることを防止することができる対処方法であればよい。
(17)上記の実施の形態2では、タイムスロットとフレームに含まれるペイロードの値との不適切な対応を示すブラックリスト(図18)に合致するフレーム(信号)の転送が停止されるが、これに限定されない。タイムスロットとフレームに含まれるペイロードの値との適切な対応を示すホワイトリストに合致しない信号の転送を停止してもよい。このようなブラックリスト及びホワイトリストは上記の実施の形態2及び本変形例における不正基準リストの例であり、ブラックリスト保持部は不正基準リスト保持部の例である。
(18)上記の実施の形態2では、車両状態及びブランチ異常度は、ブラックリスト(図18)の有効化条件に用いられていたが、ルーティングルール(図9)の有効化条件に用いてもよい。これにより、不正なECUの存在するブランチからのフレーム送信を無効化でき効果的である。
(19)上記の実施の形態2では、車両状態保持部に保持されているのは車両の走行状態であるが(図19)、これに限定されない。例えば上記のイグニッションオン状態などでもよいし、各ECUから通知される所定の状態、例えばECUに接続される外部機器の状態を示すフラグであってもよい。これによりフラグに応じてブラックリストの有効化が可能となり、車両の多様な状態により柔軟に対応することができる。
(20)上記の実施の形態では、車載ネットワークとしてFlexRayプロトコルを用いていたが、これに限るものではない。例えば、CAN、CAN-FD(CAN with Frexible Data Rate)、Ethernet(登録商標)、LIN(Local Interconnect Network)、MOST(Media Oriented Systems Transport)などを用いてもよい。あるいはこれらのネットワークをサブネットワークとして、組み合わせたネットワークであってもよい。特にタイムトリガー方式を採用しているネットワークに対して有効である。また、実施の形態は車載ネットワークに含まれるセキュアスターカプラ及びセキュアスターカプラで実行される不正フレームの転送防止方法を例に用いて説明しているが、本開示の態様に係るセキュアスターカプラ等は、車載ネットワーク以外の通信ネットワークにも適用可能である。
(21)上記の実施の形態における各装置は、具体的には、マイクロプロセッサ、ROM、RAM、ハードディスクユニット、ディスプレイユニット、キーボード、マウスなどから構成されるコンピュータシステムである。RAM又はハードディスクユニットには、コンピュータプログラムが記録されている。マイクロプロセッサが、コンピュータプログラムに従って動作することにより、各装置は、その機能を達成する。ここでコンピュータプログラムは、所定の機能を達成するために、コンピュータに対する指令を示す命令コードが複数個組み合わされて構成されたものである。
(22)上記の実施の形態における各装置は、構成する構成要素の一部又は全部は、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に置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行ってもよい。バイオ技術の適用等が可能性としてありえる。
(23)上記の各装置を構成する構成要素の一部又は全部は、各装置に脱着可能なICカード又は単体のモジュールから構成されているとしてもよい。ICカード又はモジュールは、マイクロプロセッサ、ROM、RAMなどから構成されるコンピュータシステムである。ICカード又はモジュールは、上記の超多機能LSIを含むとしてもよい。マイクロプロセッサが、コンピュータプログラムに従って動作することにより、ICカード又はモジュールは、その機能を達成する。このICカード又はこのモジュールは、耐タンパ性を有するとしてもよい。
(24)本開示は、上記に示す方法であるとしてもよい。また、これらの方法をコンピュータにより実現するコンピュータプログラムであるとしてもよいし、コンピュータプログラムからなるデジタル信号であるとしてもよい。
また、本開示は、コンピュータプログラム又はデジタル信号をコンピュータ読み取り可能な記録媒体、例えば、フレキシブルディスク、ハードディスク、CD-ROM、MO、DVD、DVD-ROM、DVD-RAM、BD(Blu-ray(登録商標) Disc)、半導体メモリなどに記録したものとしてもよい。また、これらの記録媒体に記録されているデジタル信号であるとしてもよい。
また、本開示は、コンピュータプログラム又はデジタル信号を、電気通信回線、無線又は有線通信回線、インターネットを代表とするネットワーク、データ放送等を経由して伝送するものとしてもよい。
また、本開示は、マイクロプロセッサとメモリを備えたコンピュータシステムであって、メモリは、上記コンピュータプログラムを記録しており、マイクロプロセッサは、コンピュータプログラムに従って動作するとしてもよい。
また、プログラム又はデジタル信号を記録媒体に記録して移送することにより、又はプログラム又はデジタル信号を、ネットワーク等を経由して移送することにより、独立した他のコンピュータシステムにより実施するとしてもよい。
(25)上記実施の形態及び上記変形例をそれぞれ組み合わせるとしてもよい。
本開示に係る技術は、通信ネットワーク、特にタイムトリガー方式を採用しているネットワークにおいて、サイバー攻撃などによる不正なフレームへの対処を可能にするために利用することができる。
10 車載ネットワークシステム
100a、100b、100c、100d バス
200a、200b、200c、200d ECU
201 フレーム送受信部
202 フレーム解釈部
203 外部機器制御部
204 フレーム生成部
205 通信用設定パラメータ保持部
210 ステアリング
220 ギア
230 ブレーキ
240 カメラ
300、1300 セキュアスターカプラ
301a、301b、301c、301d トランシーバ部
302、1302 ルーティング部
303、1303 ECUインターフェース部
304 受信フレーム情報保持部
305 ルーティングテーブル保持部
310、1310 不正検知ECU
311、1311 スターカプラ通信制御部
312、1312 不正検知部
313 フレーム生成部
314 フレーム情報保持部
315 フレームルール保持部
316 ブランチ異常度保持部
317 受信履歴保持部
1306 ブラックリスト保持部
1307 車両状態保持部
100a、100b、100c、100d バス
200a、200b、200c、200d ECU
201 フレーム送受信部
202 フレーム解釈部
203 外部機器制御部
204 フレーム生成部
205 通信用設定パラメータ保持部
210 ステアリング
220 ギア
230 ブレーキ
240 カメラ
300、1300 セキュアスターカプラ
301a、301b、301c、301d トランシーバ部
302、1302 ルーティング部
303、1303 ECUインターフェース部
304 受信フレーム情報保持部
305 ルーティングテーブル保持部
310、1310 不正検知ECU
311、1311 スターカプラ通信制御部
312、1312 不正検知部
313 フレーム生成部
314 フレーム情報保持部
315 フレームルール保持部
316 ブランチ異常度保持部
317 受信履歴保持部
1306 ブラックリスト保持部
1307 車両状態保持部
Claims (7)
- タイムスロットに基づくタイムトリガー方式の通信ネットワークにおけるセキュアスターカプラであって、
前記通信ネットワークにおいて、1以上の通信装置及び1つのバスをそれぞれ含む複数のブランチが前記セキュアスターカプラを通じて接続され、かつ、前記通信装置は所定のタイムスロット内でフレームを送受信し、
前記セキュアスターカプラは、
ルーティングルール保持部と、ルーティング部と、前記複数のブランチのいずれかにそれぞれ接続されている複数のトランシーバ部とを備え、
前記ルーティングルール保持部は、タイムスロットと、当該タイムスロットで前記セキュアスターカプラが転送すべき物理信号を送信する送信元ブランチ又は前記複数のトランシーバ部のうちで前記送信元ブランチに接続されたトランシーバ部の対応を示した所定のルールを保持し、
前記複数のトランシーバ部の一である第1トランシーバ部は、前記複数のブランチのうちで前記第1トランシーバ部が接続されている第1ブランチのバスから受信された物理信号を変換して第1デジタル信号を取得し、
前記ルーティング部は、非転送条件に合致する場合を除き、前記第1デジタル信号を、前記複数のトランシーバ部のうちの前記第1トランシーバ部以外のトランシーバ部へルーティングし、
前記第1トランシーバ部以外のトランシーバ部は、ルーティングされた前記第1デジタル信号を変換して取得する物理信号を、前記複数のブランチのうちの前記第1ブランチ以外のブランチの前記バスへ送信し、
前記非転送条件は、前記第1ブランチ又は前記第1トランシーバ部について前記所定のルールが守られていないという第1条件と、現在のタイムスロットにおいて既に、前記複数のブランチのうちの前記第1ブランチとは別の第2ブランチから受信された物理信号を変換して取得された第2デジタル信号を前記複数のブランチのうちの前記第2ブランチ以外のブランチへルーティングしているという第2条件を含む、
セキュアスターカプラ。 - 前記通信装置と通信を行うための通信制御部をさらに備え、
前記通信制御部は、前記第1デジタル信号をデコードしてフレームとして解釈し、前記フレームの情報と、前記第1デジタル信号の転送元である前記第1ブランチ又は前記第1トランシーバ部を示す識別子を対応付けて受信フレーム情報として保持する受信フレーム情報保持部とを備え、
前記通信制御部は、前記受信フレーム情報を前記通信装置へ通知する、
請求項1に記載のセキュアスターカプラ。 - 前記複数のブランチのそれぞれの異常度を保持するブランチ異常度保持部をさらに備え、
前記ルーティング部は、前記複数のブランチの一である第3ブランチに接続されている、前記複数のトランシーバ部の一である第3トランシーバ部から受信した物理信号を変換して取得された第3デジタル信号について前記所定のルールが守られていない場合に、前記第3ブランチの異常度を増加させ、
前記ルーティング部は、前記第3ブランチの異常度が所定値以上であるときは、前記第3デジタル信号を前記複数のトランシーバ部のうちの前記第3トランシーバ部以外のトランシーバ部へ転送しない、
請求項2に記載のセキュアスターカプラ。 - 前記ルーティング部は、前記フレームに前記通信ネットワークに利用されている通信プロトコル上のエラー発生の検知し、前記第3トランシーバ部から受信した前記第3デジタル信号について前記所定のルールが守られている場合に前記通信プロトコル上のエラーを検知したとき、前記第3ブランチの異常度を増加させる、
請求項3に記載のセキュアスターカプラ。 - タイムスロットとフレームに含まれるペイロードの値との適切又は不適切な対応を示す不正基準リストを保持する不正基準リスト保持部をさらに備え、
前記ルーティング部は、転送が未完了のデジタル信号を解釈したフレームについて、前記不正基準リストとの照合を行い、
前記ルーティング部は、前記照合の結果、前記フレームが受信されたタイムスロットと前記フレームに含まれるペイロードの値との対応が不適切である場合に、前記転送が未完了のデジタル信号の転送を停止する、
請求項2から4のいずれか一項に記載のセキュアスターカプラ。 - 前記通信ネットワークは車載ネットワークであり、
前記セキュアスターカプラは、前記車載ネットワークを搭載する車両の状態を示す車両情報を保持する車両状態保持部をさらに備え、
前記通信制御部は、前記通信装置から受信する情報を用いて前記車両情報を更新し、
前記ルーティング部は、前記フレームが受信されたタイムスロットと前記フレームに含まれるペイロードの値との対応が不適切であると前記照合の結果判断し、かつ、前記車両情報が示す前記車両の状態が所定の条件を満たしている場合に、前記転送が未完了のデジタル信号の転送を停止する、
請求項5に記載のセキュアスターカプラ。 - タイムスロットに基づくタイムトリガー方式の通信ネットワークにおけるフレーム転送方法であって、
前記通信ネットワークにおいて、1以上の通信装置及び1つのバスをそれぞれ含む複数のブランチがセキュアスターカプラを通じて接続され、かつ、前記通信装置は所定のタイムスロット内でフレームを送受信し、
前記フレーム転送方法は、
ルーティングルール保持ステップと、受信ステップと、ルーティングステップと、送信ステップとを含み、
前記ルーティングルール保持ステップでは、タイムスロットと、当該タイムスロットで前記セキュアスターカプラが転送すべき物理信号を送信する送信元ブランチとの対応に関する所定のルールを保持し、
前記受信ステップでは、前記複数のブランチの一である第1ブランチの前記バスから受信された物理信号を変換して第1デジタル信号を取得し、
前記ルーティングステップでは、非転送条件に合致する場合を除き、前記第1デジタル信号を、前記複数のブランチのうちの前記第1ブランチ以外のブランチへルーティングし、
前記送信ステップでは、ルーティングされた前記第1デジタル信号を変換して取得する物理信号を、前記第1ブランチ以外のブランチの前記バスへ送信し、
前記非転送条件は、前記第1ブランチについて前記所定のルールが守られていないという第1条件と、現在のタイムスロットにおいて既に、前記複数のブランチのうちの前記第1ブランチとは別の第2ブランチから受信された物理信号を変換して取得された第2デジタル信号を、前記複数のブランチのうちの前記第2ブランチ以外のブランチへルーティングしているという第2条件を含む、
フレーム転送方法。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP19841931.9A EP3832956B1 (en) | 2018-07-27 | 2019-07-25 | Frame transfer method and secure star coupler |
JP2020532476A JP7337063B2 (ja) | 2018-07-27 | 2019-07-25 | フレーム転送方法及びセキュアスターカプラ |
CN201980006599.0A CN111788800B (zh) | 2018-07-27 | 2019-07-25 | 帧传送方法以及安全星型耦合器 |
US17/089,277 US11764998B2 (en) | 2018-07-27 | 2020-11-04 | Frame transfer method and secure star coupler |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JPPCT/JP2018/028294 | 2018-07-27 | ||
PCT/JP2018/028294 WO2020021714A1 (ja) | 2018-07-27 | 2018-07-27 | 不正防止方法およびセキュアスターカプラ |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US17/089,277 Continuation US11764998B2 (en) | 2018-07-27 | 2020-11-04 | Frame transfer method and secure star coupler |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2020022445A1 true WO2020022445A1 (ja) | 2020-01-30 |
Family
ID=69180787
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2018/028294 WO2020021714A1 (ja) | 2018-07-27 | 2018-07-27 | 不正防止方法およびセキュアスターカプラ |
PCT/JP2019/029252 WO2020022445A1 (ja) | 2018-07-27 | 2019-07-25 | フレーム転送方法及びセキュアスターカプラ |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2018/028294 WO2020021714A1 (ja) | 2018-07-27 | 2018-07-27 | 不正防止方法およびセキュアスターカプラ |
Country Status (5)
Country | Link |
---|---|
US (1) | US11764998B2 (ja) |
EP (1) | EP3832956B1 (ja) |
JP (1) | JP7337063B2 (ja) |
CN (1) | CN111788800B (ja) |
WO (2) | WO2020021714A1 (ja) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010503305A (ja) * | 2006-09-06 | 2010-01-28 | エヌエックスピー ビー ヴィ | タイムトリガ通信用インテリジェントスターカプラ及びタイムトリガプロトコルを用いるネットワーク内のノード間で通信を行う方法 |
JP2010035171A (ja) * | 2008-07-25 | 2010-02-12 | Tttech Computertechnik Ag | 時間制御通信システムのマルチルータ |
JP2010521858A (ja) * | 2007-03-14 | 2010-06-24 | エヌエックスピー ビー ヴィ | 分散通信システムのノード、分散通信システムに結合されたノード及び監視装置 |
WO2013171829A1 (ja) * | 2012-05-14 | 2013-11-21 | トヨタ自動車 株式会社 | 車両用ネットワークの通信管理装置及び通信管理方法 |
JP5664799B2 (ja) | 2011-12-22 | 2015-02-04 | トヨタ自動車株式会社 | 通信システム及び通信方法 |
WO2017061079A1 (ja) * | 2015-10-09 | 2017-04-13 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ | セキュリティ装置、攻撃検知方法及びプログラム |
JP2017111796A (ja) * | 2015-12-16 | 2017-06-22 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America | セキュリティ処理方法及びサーバ |
WO2018008452A1 (ja) * | 2016-07-05 | 2018-01-11 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ | 不正制御抑止方法、不正制御抑止装置及び車載ネットワークシステム |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5222637Y2 (ja) | 1971-12-10 | 1977-05-24 | ||
JPS5664799U (ja) | 1979-10-23 | 1981-05-30 | ||
US5210632A (en) * | 1989-05-26 | 1993-05-11 | Hitachi, Ltd. | Signal transmission system having a star coupled repeater |
CN101512987A (zh) * | 2006-09-06 | 2009-08-19 | Nxp股份有限公司 | 时间触发网络中的集群耦合器 |
US8407339B2 (en) * | 2007-11-14 | 2013-03-26 | Nxp B.V. | Star network and method for preventing a repeated transmission of a control symbol in such a star network |
DE102009030204A1 (de) * | 2009-06-24 | 2010-12-30 | Audi Ag | Sternkoppler für ein Bussystem, Bussystem mit einem solchen Sternkoppler sowie Verfahren zum Austauschen von Signalen in einem Bussystem |
WO2015123712A1 (de) * | 2014-02-24 | 2015-08-27 | Fts Computertechnik Gmbh | Verfahren und computernetzwerk zum übertragen von nachrichten |
EP3139547B1 (en) * | 2015-09-07 | 2018-10-17 | TTTech Computertechnik AG | An online incremental scheduling method for deterministic networks |
US20170072876A1 (en) * | 2015-09-14 | 2017-03-16 | Broadcom Corporation | Hardware-Accelerated Protocol Conversion in an Automotive Gateway Controller |
JP6173541B2 (ja) * | 2015-10-09 | 2017-08-02 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America | セキュリティ装置、攻撃検知方法及びプログラム |
WO2017104096A1 (ja) * | 2015-12-14 | 2017-06-22 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ | セキュリティ装置、ネットワークシステム及び攻撃検知方法 |
JP6684690B2 (ja) * | 2016-01-08 | 2020-04-22 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America | 不正検知方法、監視電子制御ユニット及び車載ネットワークシステム |
CN113553285B (zh) * | 2016-05-27 | 2024-08-09 | 松下电器(美国)知识产权公司 | 电子控制单元、帧生成方法和记录介质 |
JP6492234B2 (ja) * | 2016-12-06 | 2019-03-27 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America | 情報処理装置及び情報処理方法 |
US20180300477A1 (en) * | 2017-04-13 | 2018-10-18 | Argus Cyber Security Ltd. | In-vehicle cyber protection |
CN106982397B (zh) * | 2017-05-16 | 2020-06-16 | 华北电力大学(保定) | 基于回传检测的变电站通信网络及其时间同步安全方法 |
CN107342833B (zh) * | 2017-06-15 | 2019-03-15 | 西安微电子技术研究所 | 一种时间触发以太网交换控制方法 |
JP7033499B2 (ja) * | 2017-07-26 | 2022-03-10 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ | 異常検知装置および異常検知方法 |
-
2018
- 2018-07-27 WO PCT/JP2018/028294 patent/WO2020021714A1/ja active Application Filing
-
2019
- 2019-07-25 EP EP19841931.9A patent/EP3832956B1/en active Active
- 2019-07-25 WO PCT/JP2019/029252 patent/WO2020022445A1/ja unknown
- 2019-07-25 JP JP2020532476A patent/JP7337063B2/ja active Active
- 2019-07-25 CN CN201980006599.0A patent/CN111788800B/zh active Active
-
2020
- 2020-11-04 US US17/089,277 patent/US11764998B2/en active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010503305A (ja) * | 2006-09-06 | 2010-01-28 | エヌエックスピー ビー ヴィ | タイムトリガ通信用インテリジェントスターカプラ及びタイムトリガプロトコルを用いるネットワーク内のノード間で通信を行う方法 |
JP4871395B2 (ja) | 2006-09-06 | 2012-02-08 | エヌエックスピー ビー ヴィ | タイムトリガ通信用インテリジェントスターカプラ及びタイムトリガプロトコルを用いるネットワーク内のノード間で通信を行う方法 |
JP2010521858A (ja) * | 2007-03-14 | 2010-06-24 | エヌエックスピー ビー ヴィ | 分散通信システムのノード、分散通信システムに結合されたノード及び監視装置 |
JP2010035171A (ja) * | 2008-07-25 | 2010-02-12 | Tttech Computertechnik Ag | 時間制御通信システムのマルチルータ |
JP5664799B2 (ja) | 2011-12-22 | 2015-02-04 | トヨタ自動車株式会社 | 通信システム及び通信方法 |
WO2013171829A1 (ja) * | 2012-05-14 | 2013-11-21 | トヨタ自動車 株式会社 | 車両用ネットワークの通信管理装置及び通信管理方法 |
WO2017061079A1 (ja) * | 2015-10-09 | 2017-04-13 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ | セキュリティ装置、攻撃検知方法及びプログラム |
JP2017111796A (ja) * | 2015-12-16 | 2017-06-22 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America | セキュリティ処理方法及びサーバ |
WO2018008452A1 (ja) * | 2016-07-05 | 2018-01-11 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ | 不正制御抑止方法、不正制御抑止装置及び車載ネットワークシステム |
Also Published As
Publication number | Publication date |
---|---|
US20210051090A1 (en) | 2021-02-18 |
EP3832956A4 (en) | 2021-10-13 |
JP7337063B2 (ja) | 2023-09-01 |
JPWO2020022445A1 (ja) | 2021-08-05 |
EP3832956A1 (en) | 2021-06-09 |
WO2020021714A1 (ja) | 2020-01-30 |
CN111788800B (zh) | 2022-05-10 |
US11764998B2 (en) | 2023-09-19 |
EP3832956B1 (en) | 2022-04-06 |
CN111788800A (zh) | 2020-10-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6887040B2 (ja) | 不正検知方法、監視電子制御ユニット及び車載ネットワークシステム | |
JP6377143B2 (ja) | 車載ネットワークシステム、電子制御ユニット及び更新処理方法 | |
US11190533B2 (en) | Anomaly detection electronic control unit, onboard network system, and anomaly detection method | |
JP7232832B2 (ja) | 不正検知方法及び不正検知装置 | |
JP6280662B2 (ja) | 不正制御抑止方法、不正制御抑止装置及び車載ネットワークシステム | |
JP7280082B2 (ja) | 不正検知方法、不正検知装置及びプログラム | |
WO2019216306A1 (ja) | 異常検知電子制御ユニット、車載ネットワークシステム及び異常検知方法 | |
JP2018026791A (ja) | フレーム伝送阻止装置、フレーム伝送阻止方法及び車載ネットワークシステム | |
JP7340537B2 (ja) | 不正制御防止システム、監視装置、および、不正制御防止方法 | |
KR101972457B1 (ko) | Can 통신 기반 해킹공격 탐지 방법 및 시스템 | |
US12063235B2 (en) | Communication control device, anomaly detection electronic control unit, mobility network system, communication control method, anomaly detection method, and recording medium | |
JP6497656B2 (ja) | 通信方法およびそれを利用した通信装置 | |
WO2020022445A1 (ja) | フレーム転送方法及びセキュアスターカプラ | |
WO2020021715A1 (ja) | 不正対処方法、不正対処装置および通信システム | |
WO2018008452A1 (ja) | 不正制御抑止方法、不正制御抑止装置及び車載ネットワークシステム | |
KR20200136124A (ko) | Can 통신에서 도스 공격 방지를 위한 전자 제어 장치 및 이를 이용한 우선 순위 변경 방법 |
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: 19841931 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2020532476 Country of ref document: JP Kind code of ref document: A |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
ENP | Entry into the national phase |
Ref document number: 2019841931 Country of ref document: EP Effective date: 20210301 |