Data link layer authenticity and security for automotive communication system
The present disclosure relates to authenticity and data security for bus-based communication networks in a vehicle. The present disclosure teaches a protocol frame, a sender on data link layer, and a receiver on data link layer providing such authenticity and data security as well as a communication network in a vehicle employing the protocol frame, the sender and the receiver according to the present disclosure.
1 . A data link layer frame, comprising:
an indication configured to indicate a level of authenticity and a level of data security of the data link layer frame on a data link layer level, the level of data security indicating whether encryption is present for the data link layer frame, the data link layer frame for communication between a sender and one or more receivers of a bus-based communication system in a vehicle according to a protocol, both the sender and the one or more receivers being participants of the bus-based communication system; and
a security tag configured to verify authenticity of the data link layer frame on the data link layer level as an original data link layer frame intended for transmission from the sender to the one or more receivers.
2 . The data link layer frame according to claim 1 , wherein the indication comprises a first indication configured to indicate the level of authenticity only for the data link layer frame.
3 . The data link layer frame according to claim 1 , wherein the indication comprises a second indication configured to indicate the level of authenticity and the level of data security for the data link layer frame.
4 . The data link layer frame according to claim 3 , wherein at least one of the indication or the second indication is at least one of:
part of a header of the data link layer frame,
represented as a payload type of the data link layer frame, or
represented as a security indication flag.
5 . The data link layer frame according to claim 1 , further comprising:
security information downstream from a header; and
a protected payload portion downstream from the header, wherein the security information indicates a protection level for the protected payload portion.
6 . The data link layer frame according to claim 5 , wherein the security information is further configured to signal a security association specifying a key to be selected for authentication, or authentication and data security, for the data link layer frame on the data link layer level.
7 . The data link layer frame according to claim 1 , wherein the data link layer frame has a length N as used with a controller area network (CAN) standard, a CAN flexible data-rate standard, a CAN extra-large standard, an ethernet standard, 10BaseT1s, or 10BaseT1L.
8 . A sender on a data link layer configured to participate in a bus-based communication system in a vehicle, the sender configured to:
receive from a higher protocol layer a protected payload portion;
generate a security tag using a key (K) of k bytes length and additional authentication data, the security tag to verify an authenticity of a frame as an original frame sent from the sender to one or more receivers; and
generate a data link layer frame comprising a header, the protected payload portion, the additional authentication data, and an indication configured to indicate a level of authenticity or a level of data security of the data link layer frame on a data link layer level,
wherein the sender is configured to communicate the data link layer frame from the sender to one or more participants of the bus-based communication system on the data link layer level.
9 . The sender according to claim 8 , wherein the indication comprises a first indication configured to indicate authentication on a data link layer level for the data link layer frame, or a second indication configured to indicate authentication and data security, both on a data link layer level for the data link layer frame.
10 . The sender according to claim 8 , wherein in an authentication only mode of the sender, the additional authentication data is:
the header, and
the protected payload portion.
11 . The sender according to claim 8 , wherein the sender, in an authenticated encryption mode, is further configured to:
generate a cipher text for the protected payload portion using:
the key K,
the protected payload portion in plain text, and
the header, as additional authentication data.
12 . The sender according to claim 8 , wherein the sender is further configured to:
generate a sequence number of sn bytes downstream from the header and configured to integrate the sequence number into the data link layer frame at an expense of a shortened protected payload, the shortened protected payload being shortened by the sn bytes compared to the protected payload portion.
13 . The sender according to claim 8 , wherein the sender is configured to
generate security information of length si, using the key K; and
further configured to integrate the security information into the data link layer frame at an expense of a shortened payload, the shortened payload being shortened by si bytes compared to the protected payload portion, wherein the security information indicates a protection level for the protected payload portion.
14 . The sender according to claim 8 , wherein the sender, in an authenticated encryption mode, is further configured to:
generate security information of si bytes length, and further configured to integrate the security information into the data link layer frame downstream from the header at an expense of a shortened protected payload, the shortened protected payload being shortened by si+sn bytes compared to a protected payload, wherein the security information indicates a protection level for the shortened protected payload.
15 . A receiver on a data link layer level in a bus-based communication system, configured to:
receive data link layer frames, including a header, protected payload, authentication data, a security tag, and an indication;
use a key K to verify a data link layer frame of the data link layer frames based on the authentication data, wherein the indication is configured to indicate a level of authenticity or a level of data security of the data link layer frame on the data link layer level, and the security tag is configured to verify authenticity of the data link layer frame on the data link layer level as an original data link layer frame intended for transmission to the receiver; and
determine a security status of the data link layer frame as either authenticated, or authenticated and encrypted, based on the indication.
16 . The receiver according to claim 15 , further configured to:
extract a header from the data link layer frame;
extract a protected payload portion from the data link layer frame, to access a key of k bytes length;
extract the security tag from the data link layer frame downstream from the header; and
calculate an authenticity indication, based on the key, additional authenticity data comprising the header, the security tag, and the protected payload portion, wherein the authenticity indication is configured to verify on a data link layer level an authenticity of the data link layer frame sent from a sender to the receiver.
17 . The receiver according to claim 16 , further configured to:
drop the data link layer frame if the authenticity indication does not verify the authenticity of the data link layer frame sent from the sender to the receiver.
18 . The receiver according to claim 16 , wherein in an authenticated decryption mode of the receiver, the receiver is configured to:
generate a decrypted payload as an output stream to a higher protocol layer using a key, a protected payload portion as cipher text, and additional authentication data if the authenticity indication indicates authenticity of the data link layer frame sent from the sender to the receiver.
19 . The receiver according to claim 18 , wherein the additional authentication data comprises a header.
20 . The receiver according to claim 15 , wherein, in an authenticated decryption mode, the receiver is configured to:
generate a decrypted payload as an output stream to a higher protocol layer using a sequence number, a key, a protected payload portion as cipher text, and additional authentication data if an authenticity indication verifies authenticity of the data link layer frame sent from a sender to the receiver; and
signal the authenticity indication to a higher protocol layer.
21 . The receiver according to claim 15 , further configured to:
extract security information from the data link layer frame, wherein the security information indicates at least one of a virtual channel between a sender and the receiver; and
select a key according to a security association for protection of a protected payload portion.
22 . The data link layer frame according to claim 1 , wherein the data link layer frame is a controller area network (CAN), a CAN flexible-data rate (CAN-FD), or a CAN XL frame, and wherein the bus-based communication system comprises a CAN, a CAN-FD, or a CAN XL network.
23 . The data link layer frame according to claim 1 , wherein the data link layer frame further comprises a sequence number (SN) as a nonce.
24 . The data link layer frame according to claim 1 , wherein the data link layer frame comprises a command from an electronic control unit (ECU) to an actuator controlling the vehicle, the actuator coupled to a bus of the bus-based communication system in the vehicle.