Nxp corporate template, INTERNAL PROPRIETARY

29
Company Public – NXP, the NXP logo, and NXP secure connections for a smarter world are trademarks of NXP B.V. All other product or service names are the property of their respective owners. © 2019 NXP B.V. Automotive FAE Alejandro Cervantes CAN Secure October 2019 | Session #AMF-AUT-T3873

Transcript of Nxp corporate template, INTERNAL PROPRIETARY

Page 1: Nxp corporate template, INTERNAL PROPRIETARY

Company Public – NXP, the NXP logo, and NXP secure connections for a smarter world are trademarks of NXP B.V. All other product or service names are the property of their respective owners. © 2019 NXP B.V.

Automotive FAE

Alejandro Cervantes

CAN Secure

October 2019 | Session #AMF-AUT-T3873

Page 2: Nxp corporate template, INTERNAL PROPRIETARY

COMPANY PUBLIC 1COMPANY PUBLIC 1

• What is Security• Connectivity Mega Trends• CAN Bus Threads• Technologies and Standards• Implementations and Solutions

Agenda

Page 3: Nxp corporate template, INTERNAL PROPRIETARY

COMPANY PUBLIC 2

What is Security?First Things First

2

Page 4: Nxp corporate template, INTERNAL PROPRIETARY

COMPANY PUBLIC 3

Secure System Definition

Page 5: Nxp corporate template, INTERNAL PROPRIETARY

COMPANY PUBLIC 4

What is Security?• Security is a quality aspect…

− Attackers should not be able to bring down the proper operation of a system

• …in an uncontrolled and evolving environment− Attackers do not obey to “the rules”− Attack(er)s only get better over time

• Security must be an integral part of the system design− Security is as strong as the weakest link point solutions usually don’t work− Secure by design vs. security as an afterthought

• System security solutions are (usually) custom-made− Different use cases & architectures may (will) require different security solutions− But they often use generic building blocks

• 100% secure (or safe) does not exist in the real world− The challenge is to find the right balance between risk and protection (cost)

Page 6: Nxp corporate template, INTERNAL PROPRIETARY

COMPANY PUBLIC 5

Attackers should not be able to

bring down the proper operation

of a system.

Security is a quality aspect.

Page 7: Nxp corporate template, INTERNAL PROPRIETARY

COMPANY PUBLIC 6

…it must be an integral part of system design.

Source: Bielefeld University, Germany.

Security is as strong as its

weakest Link.

Page 8: Nxp corporate template, INTERNAL PROPRIETARY

COMPANY PUBLIC 7

Why Now?

Page 9: Nxp corporate template, INTERNAL PROPRIETARY

COMPANY PUBLIC 8

History: Vehicle Electronics & ConnectivityIn

tera

ctio

n

Collaborating,Interacting,

Sharing

Interconnected,Integrated

Standalone,Autonomous

System Type

Standalone Component Composed Systems Systems of Systems

Engine control ECU(~1980)

CAN BUS(~1995)

Telematics,Bluetooth,5G, V2X(2000 - now)

Page 10: Nxp corporate template, INTERNAL PROPRIETARY

COMPANY PUBLIC 9

Cybersecurity Threats in Automotive

https://www.youtube.com/watch?v=MK0SrxBC1xs

Remote hack of an unaltered car(July 2015)

https://www.youtube.com/watch?v=8pffcngJJq0

Vehicle theft by relay attack

Ransom for a drive

Tampering the odometer

https://www.nhtsa.gov/equipment/odometer-fraud

VDI Conference on IT Security for Vehicles(Berlin / July 2017)

Engine tuning

Workshop around the corner, or in your garage

Local Attacks Remote Attacks

Page 11: Nxp corporate template, INTERNAL PROPRIETARY

COMPANY PUBLIC 10

Mega Trends Force Vehicle Architecture TransformationTomorrow: Domains After Tomorrow: ZonesToday: Flat

Gateway

Connected Infotainment

Connectivity

Domain Controller

(H) EV & Powertrain

Domain Controller

Domain Controller

Body & Comfort

Domain Controller

Domain Controller

ADAS Autonomy

• Low bandwidth, flat network• One MCU per application

Unfit for future mobility

• High bandwidth network• Gateway key to communication between domains

Step to autonomous car

• Domains virtualized by SW – enabling high flexibility• Easy enable/disable or update functions

Step to user-defined car

Central Brain

Zonal Gateway

Zonal Gateway

Zonal Gateway

Zonal Gateway

Flat to hierarchical

Wires govirtual

Page 12: Nxp corporate template, INTERNAL PROPRIETARY

COMPANY PUBLIC 11

4 Layers to Securing a Car

Page 13: Nxp corporate template, INTERNAL PROPRIETARY

COMPANY PUBLIC 12

Spoof (S)

Authentication

Tampering (T)

Data Integrity

Repudiation ( R )

Non-repudiation

Information Disclosure (I)

Confidentiality

Denial of Service (D)

Availability

Elevation of Privilege (E)

Authorization

Expected Types of Threats on the CAN Bus

Threat / Security properties

Page 14: Nxp corporate template, INTERNAL PROPRIETARY

COMPANY PUBLIC 13

Technologies & Standards

Page 15: Nxp corporate template, INTERNAL PROPRIETARY

COMPANY PUBLIC 14

Security Requirements – Today’s LandscapeMore recent needsSHE EVITA (Light / Medium / Full)

Architecture • Configurable, fixed function • Programmable(except EVITA Light)

• Acceleration close to the interfaces (CAN and ETH MAC/PHYs)

• Support for Flash-less technologies

Functionality • Secure boot• Memory update protocol• AES-128 (ECB, CBC)• CMAC, AES-MP• TRNG, PRNG• Key derivation (fixed algorithm)• 10+4 keys, key-usage flags

Same as SHE, plus:• AES-PRNG• monotonic counters (16x, 64bit)

Plus, for EVITA Medium and Full:• WHIRLPOOL, HMAC-SHA1,

ECDH and ECDSA (P256)

• Further crypto algorithms(e.g. RSA, SHA1-3, Curve25519, …)

• Rollback protection• Key negotiation protocols• Communication protocol offloading

(e.g. TLS, IPsec, MACsec, …)• Context separation / multi-application

scenarios

Other • Increased attack resistance(e.g. SCA, Fault Injection, …)

CSE family (since 2010)

HSM family (since 2015)

HSE family (since 2019)

Covered by:

Page 16: Nxp corporate template, INTERNAL PROPRIETARY

COMPANY PUBLIC 15

Implementations/ Solutions

Page 17: Nxp corporate template, INTERNAL PROPRIETARY

COMPANY PUBLIC 16

NXP’s Automotive Security SolutionsAutomotive ICs with... …on-chip security subsystems² Security companions

Powertrain &Vehicle Dynamics

Driver Replacement

In-Vehicle Experience

Body & Comfort

Gateway

HSE (HSM)

Security Controller (SECO)

CSE

Secure Element (SE)

High performance

High performance

Versatile feature set

Ease-of-useCost-optimized

Tamper-resistant secure systemideal for M2M authentication (e.g. V2X)

Function-specific secure ICs

Secure CAN Transceiver (TJA115x)

Secure Ethernet Switch (SJA1110)

Connectivity

i.MX8

S32x

&

MPC57xx

Layerscape

Secure Car Access ICs

For enhanced IDS & IPS

Network frame analysis (L2/L3/L4)

For advanced RKE / PKE solutions

Media content protection

Security Engine (SEC)

V2X DSRC Baseband (SAF5x00)Ultra-fast ECDSA verifications

Page 18: Nxp corporate template, INTERNAL PROPRIETARY

COMPANY PUBLIC 17

S32K144 Block DiagramHigh performance• ARM Cortex M4F up to 112MHz w FPU• eDMA from 57xxx family

Software Friendly Architecture• High RAM to Flash ratio• Independent CPU and peripheral clocking• 48MHz 1% IRC – no PLL init required in LP• Registers maintained in all modes• Programmable triggers for ADC no SW delay counters or

extra interrupts

Functional safety • ISO26262 support for ASIL B or higher• Memory Protection Unit, ECC on Flash/Dataflash and RAM • Independent internal OSC for Watchdog• Diversity between ADC and ACMP, SPI/SCI and FlexIO• Core self test libraries• Scalable LVD protection, CRC

Low power• Low leakage technology• Multiple VLP modes and IRC combos• Wake-up on analog thresholds

Security• CSEc (SHE-spec)

Crossbar Switch with MPU

RAMUp To64KB

System

Perip

hera

lBr

idge

FlashUp To 512K

NVI

CCortex M4F112 MHz

FPU, DSP, MPU,4 KB I/D-Cache

EEPROMUp To 4KB

RTC

PMC2.7 - 5.5V

FLL Clk Mult

Ext Osc (8 - 40MHz)

Fast R/C OSC(48MHz 1%)

LP OSC (128KHz 10%)

SCG

DigitalComponents

5V AnalogueComponents

MCU Coreand Memories

Operating Characteristics• Voltage range: 2.7V to 5.5V• Temperature (ambient): -40°C to

+125°C

Packages & IO• Open-drain for 3.3 V and hi-drive pins• Powered ESD protection• Packages: 100 BGA, 64 LQFP, 100

LQFP

secu

ritySlow R/C OSC

(8MHz 3%)

16cheDMA

LVD

WDOG EWM

Debug

SWD JTAG

Communications / I/O System

2x A

DC

16ch

12b

it

ACM

Pw

8-b

it DA

C

4x F

lex

Tim

er8c

h 16

-Bit

3x F

lex

CAN

1

with

FD

2x P

DB

3x S

PI

1x I2

C

Flex IO

I2S

UART

SPILP

IT

CRC

3x U

ART/

LIN

Page 19: Nxp corporate template, INTERNAL PROPRIETARY

COMPANY PUBLIC 18

Secure CAN (FlexCAN + DMA+ CSEc)

FlexCANMB

DMA Ch1

CSEc

DMA Ch0

Flash/RAM

CAN BUS

Page 20: Nxp corporate template, INTERNAL PROPRIETARY

COMPANY PUBLIC 19

S32K Security Module (CSEc) – PRAM• 128 bit (16

bytes) SRAM with 8 x128 bit (16 bytes) pages.

• Command header must be las data written

• Write to the command header locks PRAM.

FUNID

DATA INPUT OR OUTPUT FROM CSEc

COMMAND SPECIFICI.E. PAGE LENGHT

CMD

FORMAT

CALL SEQ

KEY ID ERROR BITS

Page 21: Nxp corporate template, INTERNAL PROPRIETARY

COMPANY PUBLIC 20

Encryption or Authentication?

Page 22: Nxp corporate template, INTERNAL PROPRIETARY

COMPANY PUBLIC 21

Communication ExampleObjective: Bob wants to transmit a message to Alice, without Eve reading it...

Dear Alice,

BobAliceEve

Page 23: Nxp corporate template, INTERNAL PROPRIETARY

COMPANY PUBLIC 22

Confidentiality Through Encryption

Dear Alice, E D Dear Alice,

???

EncryptionFunction

DecryptionFunction

Page 24: Nxp corporate template, INTERNAL PROPRIETARY

COMPANY PUBLIC 23

Eve Just Got Smarter...Eve observed several messages exchanged between Alice & Bob and noticed certain recurring patterns in the ciphertext...

What if Eve could alter the ciphertext to her advantage?

Dear

Eve,DE

Page 25: Nxp corporate template, INTERNAL PROPRIETARY

COMPANY PUBLIC 24

CMAC Generation

32 bytes Data 4 Bytes CMAC

CAN Frame

MAC = message authentication codeMACs are used for data authenticationCipher key is the “identifier”, only the secret owner can produce the right CMAC for a given message

Page 26: Nxp corporate template, INTERNAL PROPRIETARY

COMPANY PUBLIC 25

Secure Communication

• Random number: protects against replay attacks.• Encryption: protects against eavesdropping.• Random number and encryption: ensures data integrity and authenticity.

AES-128

Random number

generators

Unique ID

CSEc module

Step 2: Sensor ECU reads sensor value and asks CSE module to encrypt it and the

received random number (using key #x)

Step 3: Sensor ECU sends encrypted message to

central ECU.

Step 4: Central ECU asks CSE module to decrypt

received message (using key #x).

Keys

Encrypted(sensor value;RND)

Central ECU with MPC5646C or S32K

AES-128

Random number

generators

Unique ID

CSEc moduleKeys

Sensor ECU

E.g.CAN Key #x

Step 5: Central ECU checks sent random number vs.

received/decrypted random number.

Sensor value

Decrypted(sensor value;RND)

Step 1: Central ECU obtains random number and sends

it to sensors ECU (e.g., after power-on of car)

RND

Keys

Key #x

Page 27: Nxp corporate template, INTERNAL PROPRIETARY

COMPANY PUBLIC 26

CSEc Performance

13.2 13.5

18.225

22

0

5

10

15

20

25

Encryption ECB Decryption ECB CMAC Generation CMAC VerificationTi

me

[us]

16 bytes CSEc Operations

CSEc Timing

Page 28: Nxp corporate template, INTERNAL PROPRIETARY

COMPANY PUBLIC 27

HW(CSEc) vs. SW Performance

55.58

7.21

45.09

3.14

0

10

20

30

40

50

60

SW HW

Tme

[Sec

]

Axis Title

HW vs SW Performance

Clasic CAN CAN FD

• Board 1 sends a 73KBytes encrypted image, which is decrypted by board 2

• Decryption by HW improves ~1500% with CAN-FD

Page 29: Nxp corporate template, INTERNAL PROPRIETARY

NXP and the NXP logo are trademarks of NXP B.V. All other product or service names are the property of their respective owners. © 2019 NXP B.V.