the hardware security platform behind azure sphere · 2018-08-19 · pluton security subsystem. tcm...

16
The Hardware Security Platform Behind Azure Sphere Doug Stiles Sr Director, HW Engineering Microsoft Silicon Development

Upload: others

Post on 03-Apr-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: The Hardware Security Platform Behind Azure Sphere · 2018-08-19 · Pluton security subsystem. TCM 128kB Pluton engine ARM Cortex M4F core DMA L2 cache 256kB ARM Cortex-A7 core with

The Hardware Security Platform Behind Azure SphereDoug StilesSr Director, HW EngineeringMicrosoft Silicon Development

Page 2: The Hardware Security Platform Behind Azure Sphere · 2018-08-19 · Pluton security subsystem. TCM 128kB Pluton engine ARM Cortex M4F core DMA L2 cache 256kB ARM Cortex-A7 core with

© Microsoft Corporation

Microcontrollers (MCUs)

Low-Cost single chip computersManufactured in fully depreciated fabsThis older low-cost technology supports: • good compute performance• variety of connectivity solutions• sizeable on-chip memory

† TMS1100: 300 KHz core, 2KB ROM, 64B RAM, 23 GPIO pins

Page 3: The Hardware Security Platform Behind Azure Sphere · 2018-08-19 · Pluton security subsystem. TCM 128kB Pluton engine ARM Cortex M4F core DMA L2 cache 256kB ARM Cortex-A7 core with

MCUs are used everywhere

9 billion connected devices shipped in 2017

Estimated 30 billion connected devices by 2020

The Mirai virus was first identified in August, 2016

Targets devices running Linux such as IP cameras, home routers, printers

Uses these devices as bots as part of a botnet in large scale Distributed Denial of Service (DDOS) attacks

Dyn (a Domain Service Provider) was attacked in October, 2016 resulting in loss of major internet platforms and services in large parts of Europe and North America

The Internet of Things and Security

Page 4: The Hardware Security Platform Behind Azure Sphere · 2018-08-19 · Pluton security subsystem. TCM 128kB Pluton engine ARM Cortex M4F core DMA L2 cache 256kB ARM Cortex-A7 core with

© Microsoft Corporation

A new Azure Sphere class of MCUs, from silicon partners, with built-in

Microsoft security technology provide connectivity and a dependable

hardware root of trust.

A new Azure Sphere OS secured by Microsoft for the devices 10-year lifetime to create a trustworthy platform for new IoT experiences

The Azure Sphere Security Service guards every Azure Sphere device; it brokers trust for device-to-device and device-to-cloud communication, detects emerging threats, and renews device security.

Azure Sphere is an end-to-end solution for securing MCU powered devices

Page 5: The Hardware Security Platform Behind Azure Sphere · 2018-08-19 · Pluton security subsystem. TCM 128kB Pluton engine ARM Cortex M4F core DMA L2 cache 256kB ARM Cortex-A7 core with

© Microsoft Corporation

Highly-secured connected devices require 7 properties

Hardware Root of TrustIs your device’s identity and software integrity secured by hardware?

Defense in DepthDoes your device remain protected if a security mechanism is defeated?

Small Trusted Computing BaseIs your device’s TCB protected from bugs in other code?

Dynamic CompartmentsCan your device’s security protections improve after deployment?

Certificate-Based AuthenticationDoes your device use certificates instead of passwords for authentication?

FailureReportingDoes your device report back about failures and anomalies?

Does your device’s software update automatically?

Renewable Security

= Silicon support required = OS support required = Cloud Service support required

Page 6: The Hardware Security Platform Behind Azure Sphere · 2018-08-19 · Pluton security subsystem. TCM 128kB Pluton engine ARM Cortex M4F core DMA L2 cache 256kB ARM Cortex-A7 core with

S E C U R E D with built-in Microsoft silicon security technology including the Pluton Security Subsystem

C R O S S O V E R Cortex-A processing powerbrought to MCUs for the first time

C O N N E C T E D with built-in networking

MicrosoftPlutonSecurity

Subsystem

Firewall Firewall Firewall

Firewall Firewall Firewall

Multiplexed I/O

SPII2CUARTI2STDMPWMGPIO ADC

ARM Cortex-AOptimized for

low power

FLASH ≥ 4MB

SRAM≥ 4MB

Network ConnectionWi-Fi in first chips

ARM Cortex-MFor real-time processing

Azure Sphere MCUs are connected, secured, crossover devices

C O N N E C T E D with built-in networking

S E C U R E D with built-in Microsoft silicon security technology including the Pluton Security Subsystem

C R O S S O V E R Cortex-A processing powerbrought to MCUs for the first time

Page 7: The Hardware Security Platform Behind Azure Sphere · 2018-08-19 · Pluton security subsystem. TCM 128kB Pluton engine ARM Cortex M4F core DMA L2 cache 256kB ARM Cortex-A7 core with

MediaTek MT3620 – the first Azure Sphere class MCU

SystemMemory

CachesWiFiRadio

BasebandProcessing

IO Processing PSU

Page 8: The Hardware Security Platform Behind Azure Sphere · 2018-08-19 · Pluton security subsystem. TCM 128kB Pluton engine ARM Cortex M4F core DMA L2 cache 256kB ARM Cortex-A7 core with

MediaTek MT3620The first Azure Sphere class Microcontroller

Clock generation

PMU

SWD, SWO

dual channel flash controller

e-fuse4kb

N9 core

ILM/DLMSRAM/ROM Firewalls

dual-bandWi-Fi RF

Wi-Fi baseband

Wi-Fi MAC

Wi-Fi PSE

Wi-Fi RF

SRAM

Wi-Fi subsystem

Application processor subsystem

RTC

UART x 2PWM/counter

UART x 2UART/SPI/I2C

up to x76/x12/x6

x5

ADC

UART x 2I2S

x2

I/O peripheralsCortex-M4F

I/O subsystems

DMA

TCM / cache192kB

ARM Cortex- M4F core

SRAM64kB

x2

e-fuse4kb

Mailboxes

Pluton security subsystem

Pluton engineTCM 128kB

ARM Cortex M4F core

DMA

L2 cache 256kB

ARM Cortex-A7 core with NEON/FPU

SRAM4MB

Trust Zone DMA

e-fuse4kb

L1 cacheI:64kB / D:32kB

x8

serial flashserial flash

64kB ROM Recovery UART

Service UART

Dedicated GPIO/UARTUART x 2GPIO

x12/x6

up to x72

Page 9: The Hardware Security Platform Behind Azure Sphere · 2018-08-19 · Pluton security subsystem. TCM 128kB Pluton engine ARM Cortex M4F core DMA L2 cache 256kB ARM Cortex-A7 core with

Dedicated high-performance 160 MHz N9 32-bit RISC core

Dedicated OTP e-fuse block for Wi-Fi specific calibration and configuration

IEEE 802.11 a/b/g/n compliant

20MHz bandwidth in 2.4GHz and 5GHz bands

Dual-band 1Tx/1Rx mode

Built-in RX diversity support

Full TX/RX antenna diversity support

WiFi Subsystem

Page 10: The Hardware Security Platform Behind Azure Sphere · 2018-08-19 · Pluton security subsystem. TCM 128kB Pluton engine ARM Cortex M4F core DMA L2 cache 256kB ARM Cortex-A7 core with

Two 200 MHz ARM Cortex M4 cores, each with 192kB TCM, 64kB SRAM, and integrated FPU

I/O Peripheral groups are mapped by SW to their assigned M4 core

Five “ISU” serial interface blocks configured as I2C master, I2C slave, SPI master, SPI slave, or UART

Two I2S interfaces supporting slave and TDM slave modes

Eight-channel, 12-bit, 2MS/s single-ended ADC

76 programmable GPIO (some multiplexed with other functions)

12 PWM outputs

24 external interrupt inputs

I/O Peripherals and Processor Subsystems

Page 11: The Hardware Security Platform Behind Azure Sphere · 2018-08-19 · Pluton security subsystem. TCM 128kB Pluton engine ARM Cortex M4F core DMA L2 cache 256kB ARM Cortex-A7 core with

500 MHz ARM Cortex A7 with NEON and FPU support64kB L1 instruction cache32kB L1 data cache256kB L2 cache4MB system memory

Application Processor Subsystem

Page 12: The Hardware Security Platform Behind Azure Sphere · 2018-08-19 · Pluton security subsystem. TCM 128kB Pluton engine ARM Cortex M4F core DMA L2 cache 256kB ARM Cortex-A7 core with

200 MHz Dedicated M4 ProcessorROM for initialization and boot code128 KB TCM for security runtime 4 Kb dedicated e-fuse for crypto keys, security state, and rollback state

Pluton Security Subsystem

Page 13: The Hardware Security Platform Behind Azure Sphere · 2018-08-19 · Pluton security subsystem. TCM 128kB Pluton engine ARM Cortex M4F core DMA L2 cache 256kB ARM Cortex-A7 core with

Pluton Engine (Hardware Security Platform)

RNG – Random Number GeneratorCCE – Complex Command EnginePKA – Public Key AcceleratorSHA – Secure Hash AlgorithmAES – Advanced Encryption SystemAEB – Access Enablement BlockECC – Elliptic Curve Cryptography

SharedMemory CCE PKA SHA AES Fuse

Control

AHB-to-AXIBridge

AEB

AHB Bus

AXI Bus

IsolatedECC Key

RNG

Page 14: The Hardware Security Platform Behind Azure Sphere · 2018-08-19 · Pluton security subsystem. TCM 128kB Pluton engine ARM Cortex M4F core DMA L2 cache 256kB ARM Cortex-A7 core with

© Microsoft Corporation

Hardware Root of Trust

Defense in Depth

Small Trusted Computing Base

Dynamic Compartments

Certificate-Based Authentication

FailureReporting

Renewable Security

Keys randomly generated and device uniqueKeys in fuses and not software accessibleCrypto operations in HW Units have HW firewallsCPU to CPU messaging via mailboxesWatchdog timers for failed operationsConfigurations are sticky and lockedHW based attestation

Security processor is first to boot and initial code is in ROMApplication CPU has MMUSoftware in separate processesSeparate CPUs and memory for Security, OS, WiFi, and I/O processingHW error detection with SW reporting to cloudSoftware is signedNo passwordsSW rollback protection

Page 15: The Hardware Security Platform Behind Azure Sphere · 2018-08-19 · Pluton security subsystem. TCM 128kB Pluton engine ARM Cortex M4F core DMA L2 cache 256kB ARM Cortex-A7 core with

© Copyright Microsoft Corporation. All rights reserved.

© 2018 Microsoft CorporationThe information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation.

Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of the presentation.Microsoft makes no warrantees, express, implied or statutory, as to the information in this presentation.

Page 16: The Hardware Security Platform Behind Azure Sphere · 2018-08-19 · Pluton security subsystem. TCM 128kB Pluton engine ARM Cortex M4F core DMA L2 cache 256kB ARM Cortex-A7 core with

ADC – Analog to Digital ConverterAHB – Advanced High Performance BusAXI – Advanced eXtensible InterfaceFPU – Floating Point UnitGPIO – General Purpose Input/OutputI/O – Input/OutputLDO – Low-voltage DropOut regulatorMCU – Microcontroller UnitMMU – Memory Management UnitNEON - ARM technology SIMD (Single Instruction Multiple Data) extension to ARM A coreOTP – One-Time ProgrammablePSU – Power Supply UnitPWM – Pulse Width ModulationROM – Read Only MemoryRX – ReceiveTCM – Tightly Coupled MemoryTDM – Time Division MultiplexedTX - TransmitUART – Universal Asynchronous Receiver-Transmitter

Glossary