PUBLIC
JORDI JOFRE 24/04/2018
A71CH Plug & trust for IoT Session 1: A71CH product introduction - - PowerPoint PPT Presentation
A71CH Plug & trust for IoT Session 1: A71CH product introduction JORDI JOFRE 24/04/2018 PUBLIC A71CH Plug & trust for IoT Session 1: A71CH product introduction Get familiar with A71CH key security features, key benefits, use
PUBLIC
JORDI JOFRE 24/04/2018
1
Session 1: A71CH product introduction
Get familiar with A71CH key security features, key benefits, use cases and product support package.
April 24th, 2018 - 10 AM CEST and 08 AM PDT
Session 2: Getting started with A71CH product support package
Learn how to get started with A71CH and its support package, including an example with i.MX6UltraLite.
April 26th, 2018 - 10 AM CEST and 08 AM PDT Registration link: https://register.gotowebinar.com/rt/6148121966411079939
2
−A71CH development boards −A71CH Host software package −A71CH documentation
3
4
Gateway
IoT device
Connectivity Sensors / Actuator Host processor
IoT device IoT device IoT device IoT device IoT device IoT device
Servers
The IoT is a network of physical objects (or “things”) embedded with electronics, software, sensors and connectivity which enable those objects to exchange data with the operator, manufacturer, service provider, and / or other connected devices. Connections · Data · Control
IoT is about …
Network
5
Gateway
IoT device IoT device IoT device IoT device
Network Servers
Security is like a chain that is only as strong as the weakest link
Execution of malware Extraction of device keys Exploit a SW bug Personal data leakage Disclosure of company secrets Insertion of counterfeit devices
IoT device IoT device
IoT device
Connectivity Sensors / Actuator Host processor
Insecure connection
6
IoT device
IoT device IoT device IoT device IoT device IoT device IoT device
Gateway
IoT device IoT device IoT device IoT device IoT device
Connectivity Sensors / Actuator Host Security IC
IoT device
IoT device
Network
Execution
Extraction of device keys Exploit a SW bug Personal data leakage Disclosure of company secrets Insertion of counterfeit devices Insecure connection Security IC provides protected storage the device keys. Security IC provides protected storage of the device keys for creating a trusted and authenticated TLS connection. Security IC provides protected storage of the device credentials signed by a CA. Security IC contributes to the chain
Security IC contributes by preventing the device credentials to be compromised Security IC contributes by enabling an encrypted TLS connection with the endpoint. Security IC contributes by enabling an encrypted TLS connection with the endpoint.
7
Root of trust
Why a discrete security IC in IoT devices?
Out-of-the-box security Closed system Security and key management through the whole value chain right from the start Scalable and ready to deploy No need to develop secure SW On Chip NV Memory with access policy Closed system architecture to isolate memory access from host system. NV memory only accessible via Chip OS / Applet
Keep secrets secret
8
9
Plug & Trust, ready-to-use security IC for the IoT ecosystem IoT solution for secure connection with public and private clouds Easy to integrate with different MCU platforms Fast design-in with complete product support package www.nxp.com/A71CH
10
Product Overview & Features
mechanism
easy integration with the most common MCU/MPU platforms.
platforms, infrastructure
Use Cases Interfaces
Customer benefits
Packaging
measures to protect the chip.
integrated Java Card operating system and applet. Direct memory access is possible by the fixed functionalities of the applet only. With that, the content from the memory is entirely isolated from the host system.
chip layout, the logic and the functional blocks.
Security features
11
Cloud / Network onboarding & device ID management Mutual authentication based on credential stored on SE (e.g., certificate based TLS). No key handling necessary at insecure stages of supply chain.
SoC SE
Hardware Protection for the secrets Pre-injected keys stored in hardware to identify genuine devices, all cryptographic calculations isolated in A71CH with its own resources (CPU, NVM, Co-Processors, etc.), hardware design with basic measures against physical attacks, such as probing, hardware manipulation, glitches and light. Physical / Logical separation Only indirect access by the instruction set of the A71 applet, no direct memory access from SoC. Lifecycle Management protects keys throughout product lifecycle from unauthorized access (overwriting, deleting, manipulation, etc.).
12
IoT device IoT device IoT device IoT device IoT device IoT device
IoT device
A71CH Host MCU
A71CH
Secure Storage Key pair #1 Key pair #2 Public key #1 Public key #2 Sym key #1 Sym key #2 Sym key #5 Sym key #6 General purpose storage
Secure storage of two monotonic counters (32 bit) Secure storage, generation and insertion of 4 key pairs (ECC NIST P-256) Secure storage and insertion of 3 public keys Secure storage, insertion of eight symmetric secrets (8X128 bits) Secure storage of general purpose data (e.g. digital certificates)
A71CH can be integrated as a slave device into the IoT to provide secure storage of credentials and crypto operations
Public key #3 Key pair #3 Key pair #4 Sym key #3 Sym key #4 Sym key #7 Sym key #8 Monotonic counter #1 Monotonic counter #2
13
IoT device IoT device IoT device IoT device IoT device IoT device
IoT device
A71CH Host MCU
Gateway Network Cloud
End-to-end TLS connection
001010 001010
A71CH Cloud servers
The keys and certificates used to authenticate the cloud connection remain secure in A71CH
Authenticity Trusted connection Data privacy A71CH security IC supports the TLS Handshake protocol version 1.2
Public and private cloud service providers
14
IoT device IoT device IoT device IoT device IoT device IoT device
IoT device
A71CH Host MCU
A71CH
The keys and certificates used to verify device authenticity remain secure in A71CH
Servers
I want to authenticate the device’s
make sure there’s no counterfeit I want to make sure I am communicating with the genuine server
Server
IoT device authenticity verification Server authenticity verification
Authenticity is proved by the verification of signed random numbers
967949 125697
Certificates are used to bind public key with its owner.
15
IoT device IoT device IoT device IoT device IoT device IoT device
IoT device
A71CH Host MCU
I2C
Host interface When using SCP03, Host processor and A71CH are mutually authenticated Setting up the SCP03 channel requires 3 128- bit AES keys (both on Host and A71CH side).
A71CH provides the option to bind the Host processor to the security IC by configuring it to use an SCP03 channel. A71CH Host MCU
I2C
SCP03 secure channel
SCP03 keys SCP03 keys
16
17
Secure injection of keys and credentials, volume independent.
A71CH Host software package)
with Data I/O, a leading company providing secure programming solutions.
SentriX system.
IoT device
A71CH Host MCU
I2C
A71CH
Secure Storage Key pair #0 Key pair #1 Public key #0 Public key #1 Sym key #0 Sym key #1 Sym key #4 Sym key #5 General purpose storage Public key #2 Key pair #2 Key pair #3 Sym key #2 Sym key #3 Sym key #6 Sym key #7 Monotonic counter #0 Monotonic counter #1
Trust provisioning
Config keys (3)
18
Customer (SP, OEM)
AWS Service Provider Account NXP
A71CH
CA with AWS IoT.
certificates when devices connect to AWS IoT for the first time
Programming facility
Per customer set up
programming facility)
Root CA
programming equipment
device certificate signed by customer signing/intermediate certificate and a corresponding device individual key pair
19
20
Documentation A71CH Host software package A71CH development boards Extensive support documentation for facilitating product evaluation as well as the implementation process of the main use cases. Includes an A71CH Mini PCB board and an Arduino adaptor for i.MX, Kinetis and LPC boards. Comprehensive software package including A71CH Host SW API, sample applications, source code and API documentation
21
22
A71CH Arduino compatible dev kit
Part number complete kit: OM3710/A71CHARD 12NC: 935368997598 Ordering: eCommerce
OM3710/A71CHARD contents
OM3710/A71CHARD features
board and A71CH mini PCB board.
IC to any host featuring an Arduino compatible header.
www.nxp.com/OM3710
23
Kinetis board as VCOM port
USB / I2C bird (OM3710/B001)
Note: For availability please contact your NXP representative.
OM3710/B001 contents
OM3710/B001 features
Features
VCOM boards after downloading a dedicated firmware.
Part number complete kit: FRDM-K64F 12NC: 935326293598 Ordering: eCommerce Part number complete kit: FRDM-K82F 12NC: 935327211598 Ordering: eCommerce
24
25
A71CH Configure tool A71CH Host API documentation A71CH Host API source code A71CH API usage examples A71CH OpenSSL Engine examples
26
Host MCU
OpenSSL Application Host Library OpenSSL Engine I2C
A71CH I2C The A71CH Host Library behaves as the interface between a host microcontroller application and the A71CH security IC. The A71CH Host Library translates function calls into APDUs that are transferred through an I2C interface to the A71CH security IC. Host MCU
Application Host Library mbedTLS ALT mbedTLS I2C VCOM
A71CH I2C
27
Host MCU I2C
A71CH configure tool A71CH Host API
The A71CH Configure tool is a command line tool that supports the insertion of credentials into the A71CH. The A71CH Configure tool source code is part of the A71CH Host SW support package as well
Serial port
(SSH possible) e.g. i.MXUltraLite e.g. TeraTerm command line bash tool Configuration commands APDU commands Development PC
A71CH design tools: www.nxp.com/products/:A71CH?tab=Design_Tools_Tab
e.g.OM3710/A71CHARD
A71CH
Secure Storage Key pair #0 Key pair #1 Public key #0 Public key #1 Sym key #0 Sym key #1 Sym key #4 Sym key #5 General purpose storage Public key #2 Key pair #2 Key pair #3 Sym key #2 Sym key #3 Sym key #6 Sym key #7 Monotonic counter #0 Monotonic counter #1 Config keys (3)
28
A71CH Host MCU I2C
A71CH API examples A71CH Host API
The A71CH Host API usage example application is a sample project oriented to show the functionality of the A71CH Host library
Development PC e.g. i.MXUltraLite e.g.OM3710/A71CHARD e.g. TeraTerm command line bash tool A71CH responses APDU command / responses Serial port
The A71CH Host API usage examples: ex_aes, ex_config, ex_ecc_nohc, ex_gpstorage, ex_misc, ex_psk, ex_scp, ex_sst_kp, ex_boot, ex_walkthrough, ex_debug.
A71CH design tools: www.nxp.com/products/:A71CH?tab=Design_Tools_Tab
29
Host MCU I2C
A71CH OpenSSL client- side scripts A71CH Host API
The A71CH OpenSSL Engine TLS connection examples show how to initiate a TLS/SSL- based communication between two devices acting as a client and a server
Serial port
Development PC e.g. i.MXUltraLite e.g.OM3710/A71CHARD e.g. TeraTerm command line bash tool APDUs
A71CH OpenSSL Engine
e.g. Linux machine (e.g. Ubuntu VM)
A71CH OpenSSL server- side scripts
TLS connection
A71CH
A71CH design tools: www.nxp.com/products/:A71CH?tab=Design_Tools_Tab
30
31
32
IoT security brochure A71CH product leaflet A71CH product short datasheet AN12121 – How to start a development with A71CH
A71CH documentation: www.nxp.com/products/:A71CH?tab=Documentation_Tab
33
AN12119 – A71CH Quick start guide for OM3710A71CHARD and i.MXUltraLite AN12133 – A71CH Host software package documentation AN12131 – A71CH for secure connection to AWS cloud AN12132 – A71CH for secure connection to OEM cloud
A71CH documentation: www.nxp.com/products/:A71CH?tab=Documentation_Tab
34
AN12120 – A7CH for electronic anti-counterfeit protection AN12135 – A71CH Quick start guide for OM3710A71CHARD and Kinetis AN12134 – A71CH Quick start guide for Windows AN – A71CH Host software porting guidelines
Available soon Available soon Available soon A71CH documentation: www.nxp.com/products/:A71CH?tab=Documentation_Tab
35
AN – A71CH trust provisioning options AN – A71CH for secure connection to more private and public cloud providers
Available soon Available soon A71CH documentation: www.nxp.com/products/:A71CH?tab=Documentation_Tab
36
37
A71CH key benefits
Support for:
Product website: www.nxp.com/A71CH Development kit: www.nxp.com/OM3710 Order info:
Item Description Package 12NC A7101CHTK2 Security IC with standard temp range (-25 to +85 °C) HVSON8, Reel, MoQ = 6k 9353 680 97118 A7102CHTK2 Security IC with extended temp range (-40 to +90 °C) HVSON8, Reel, MoQ = 6k 9353 635 15118 OM3710/A71CHARD OM3710/A71CHARD A71CH Arduino-compatible development kit 9353 689 97598
MCU/ MPU A71CH as an easy add-on to MPU & MCU for Secure Cloud Connection & Mutual Authentication
38
Please remember to fill out our evaluation survey (pop-up) Check your email for material download and on-demand video addresses Please check NXP and MobileKnowledge websites for upcoming webinars and training sessions
http://www.nxp.com/support/classroom-training-events:CLASSROOM-TRAINING-EVENTS www.themobileknowledge.com/content/knowledge-catalog-0
Jordi Jofre (Speaker) Angela Gemio (Host)
39
MobileKnowledge is a team of HW, SW and system engineers, experts in smart, connected and secure technologies for the IoT world. We are your ideal engineering consultant for any specific support in connection with your IoT and NFC developments. We design and develop secure HW systems, embedded FW, mobile phone and secure cloud applications. Our services include:
▪ Secure hardware design ▪ Embedded software development ▪ NFC antenna design and evaluation ▪ NFC Wearable ▪ EMV L1 pre-certification support ▪ Mobile and cloud application development ▪ Secure e2e system design
We help companies leverage the secure IoT revolution
www.themobileknowledge.com mk@themobileknowledge.com