AUTOSAR Security Modules: Current Status
AUTOSAR Security Modules: Current Status
Current Status
V1.00 | 2015-05-27
Agenda
1. AUTOSAR
3. SecOC
2/40
AUTOSAR
Introduction
Software architecture
SWC/Application
RTE
SYS
COM
Microcontroller
3/40
AUTOSAR
Introduction
SWC/Application
Microcontroller
4/40
AUTOSAR
Introduction
SWC/Application
RTE
Microcontroller
5/40
AUTOSAR
Introduction
SWC/Application
RTE
SYS
LIB CDD
Microcontroller
6/40
AUTOSAR
Introduction
SWC/Application
RTE
SYS
COM
LIB CDD
Microcontroller
7/40
AUTOSAR
Introduction
SWC/Application
RTE
SYS
COM
Microcontroller
8/40
AUTOSAR
Motivation for security modules in AUTOSAR
9/40
AUTOSAR
SecOC
Authenticated communication seamlessly integrated into the AUTOSAR
communication stack
10/40
Agenda
1. AUTOSAR
3. SecOC
11/40
CAL & CSM
Introduction
CAL RTE
Crypto Primitive Library – CPL
SYS
SW implementation of CPL
CSM
cryptographic primitives
CRY CRY
COM
Crypto Service Manager – CSM
SHEDRV
SWC use CSM through RTE LIB MCAL CDD
AsymEncrypt_1 SymEncrypt_1
RSA2048 AES
AsymEncrypt_2 SymEncrypt_2
RSA4096 TwoFish
14/40
CAL & CSM
Cryptographic Service Configuration
AsymEncrypt_1 SymEncrypt_1
RSA2048 AES
AsymEncrypt_2 SymEncrypt_2
RSA4096 Serpent
15/40
CAL & CSM
Cryptographic Service Configuration
AsymEncrypt_1 SymEncrypt_1
RSA2048
ECC256 AES
AsymEncrypt_2 SymEncrypt_2
RSA4096
ECC512 Serpent
16/40
CAL & CSM
General Usage
Streaming services
Indefinite long data stream
...
Start Update Update Update ... Update Finish
Result
Non-streaming services
Example: Csm_GenerateRandom
17/40
CAL & CSM
Hardware-based Security
SWC/Application
RTE
CSM SYS
CRY CRY
Microcontroller SHE
18/40
CAL & CSM
Hardware-based Security
Controller
Secure Zone
AES
Control
CPU
Logic RAM + Flash +
ROM
19/40
CAL & CSM
SHE - Performance
1800 3 Blocks
1600
6 Blocks
1400
1200 1111.6
µs 1000
800
600
400
200
24.94 13.5
0
SHE 64 Mhz SW 64 Mhz SHE 120 Mhz SW 120 Mhz
Measured on a Freescale MPC5646C (w/ CSE), MICROSAR Stack with CSM and SHE driver with the Vector
‘AUTOSAR Measurement and Debugging (AMD) Runtime Measurement (Rtm)‘ Tool.
1 Block = 16 bytes
20/40
Agenda
1. AUTOSAR
3. SecOC
21/40
SecOC
Introduction
SWC/Application
RTE
SecOC PDUR
SYS COM
Microcontroller
22/40
SecOC
Introduction
Microcontroller
23/40
SecOC
Introduction
Microcontroller
24/40
SecOC
Functionality
ECU 1 ECU 3
Secured PDU
BUS
25/40
Replays
SecOC
Sending a secured PDU
ECU 1
DataID 1
PDU 1
Secured PDU
26/40
SecOC
Sending a secured PDU
ECU 1
DataID 1
PDU 1
Fresh. Value
Secured PDU
Freshness value
Monotonic counter to prevent replay attacks
Implementation
Timestamp
Counter
27/40
SecOC
Sending a secured PDU
ECU 1
DataID 1
PDU 1
Fresh. Value
Secured PDU
MAC Generator
MAC
28/40
SecOC
Sending a secured PDU
ECU 1
DataID 1
PDU 1
LSBs
Fresh.
Fresh. Value PDU 1 Value MAC
Secured PDU
MAC Generator
MAC
MSBs
29/40
SecOC
Sending a secured PDU
ECU 1
DataID 1
PDU 1
Fresh.
Fresh. Value PDU 1 Value MAC
Secured PDU
MAC Generator
MAC
MSBs
30/40
SecOC
Reception of a secured PDU
ECU 1 ECU 3
DataID 1 DataID 1
PDU 1 PDU 1
replace LSBs
Fresh.
Fresh. Value PDU 1 ValueMAC Ver. Fresh.
Secured PDU
MAC Generator
MAC
31/40
SecOC
Reception of a secured PDU
ECU 3
DataID 1
PDU 1
Fresh.
Ver. Fresh. PDU 1 Value MAC Ver. Fresh.
+ Secured PDU
0..01 0..0
=
Ver. Fresh.
32/40
SecOC
Reception of a secured PDU
ECU 1 ECU 3
DataID 1 DataID 1
PDU 1 PDU 1
Fresh.
Fresh. Value PDU 1 Value MAC Fresh. Value
Secured PDU
MAC Generator MAC Generator
compare
MAC MAC
33/40
SecOC
System Configuration
ECU 1 ECU 2 ECU 3
PDU 2 PDU 2
PDU 3 PDU 3
BUS
34/40
SecOC
System Configuration
ECU 1 ECU 2 ECU 3
PDU 2 PDU 2
PDU 3 PDU 3
BUS
35/40
SecOC
System Configuration
ECU 1 ECU 2 ECU 3
DataID 2 DataID 2
PDU 2 PDU 2
PDU 3 PDU 3
BUS
36/40
SecOC
System Configuration
ECU 1 ECU 2 ECU 3
DataID 2 DataID 2
Fresh. Fresh.
PDU 2 Value MAC PDU 2 Value MAC
PDU 3 PDU 3
BUS
37/40
SecOC
System configuration
ECU 1 ECU 2 ECU 3
DataID 2 DataID 2
Fresh. Fresh.
PDU 2 Value MAC PDU 2 Value MAC
PDU 3 PDU 3
BUS
38/40
SecOC
System configuration
ECU 1 ECU 2 ECU 3
DataID 2 DataID 2
Fresh. Fresh.
PDU 2 Value MAC PDU 2 Value MAC
PDU 3 PDU 3
39/40
For more information about Vector
and our products please visit
www.vector.com
Author:
Philipp Werner, Armin Happel, Ralf Fritz, Steffen Keul
Vector Informatik GmbH
© 2015. Vector Informatik GmbH. All rights reserved. Any distribution or copying is subject to prior written approval by Vector. V1.00 | 2015-05-27