Reducing the number of keys used to secure in-vehicle networks
AssigneeGM Global Technology Operations LLC
InventorBrian Farrell
Life of this patent
Estimating the term…
Abstract
An electronic control unit (ECU), or node, is configured to use a single key for all virtual ECUs (V-ECUs) having a message to transmit. The ECU also may include a security peripheral that includes the stored shared key. The security peripheral may further include a policy enabling it to detect if a request from the V-ECU is valid, in which case it generates a MAC. The security peripheral is also used to store information in a MAC Generate Allow List (MGAL), which may define the policy about when the V-ECU can transmit. The ECU may include a crypto-engine, which stores shared keys from other nodes used to verify MACs transmitted by other nodes.
Claims20
An electronic control unit (ECU) in a vehicle;
- comprising:
- a first memory configured to store a plurality of virtual-ECUs (V-ECUs);
- a processor configured to selectively run at least one of the plurality of V-ECUs;
- and
- a security peripheral configured to store, in a second memory, (i) a single key for generating message authentication codes (MACs), the key shared by the plurality of V-ECUs for sending authorized messages, and (ii) a MAC Generate Allow List (MGAL), the security peripheral further configured to receive a MAC generation request from an identified V-ECU of the plurality of V-ECUs, wherein the MGAL comprises information relevant to an authentication policy, the information being sufficient to determine whether the identified V-ECU is permitted to send a message,
- wherein the security peripheral is configured to use the key to generate a MAC authenticating the message when the identified V-ECU is permitted to send the message.
A method of an electronic control unit (ECU) node in a vehicle, comprising:
- storing a secret key in a security peripheral of the node, the secret key being shared among virtual electronic control units (V-ECUs) in the node for transmitting messages;
- sending, by one of the V-ECUs, a request to the security peripheral to generate a message identification code (MAC) to accompany a protected message to be sent by the one V-ECU;
- identifying the one V-ECU by the security peripheral;
- determining, by the security peripheral, whether the message is authorized to be sent by the identified V-ECU;
- generating the MAC if the message is deemed authorized;
- and
- not generating the MAC if the message is deemed unauthorized.
An electronic control unit (ECU), comprising:
- a processor;
- a security peripheral coupled to the processor;
- at least one memory coupled to the processor, wherein the memory comprises a plurality of virtual ECUs (V-ECUs), each of which, when loaded into the processor as executable code and when having a secure message to transmit, is configured to issue a message authentication code (MAC) request to the security peripheral with a shared transmit key,
- wherein the security peripheral is configured to verify the MAC generation request and to use a policy to identify the V-ECU that sent the MAC generation request and to determine whether the V-ECU is authorized to send the message to an identified recipient;
- wherein the security peripheral generates the MAC upon authorizing the V-ECU.
Dependencies are inferred from the claim text.