zero touch provisioning for aws iot masakazu shinozaki ... · 3....
TRANSCRIPT
1
Zero Touch Provisioning for AWS IOT
Masakazu Shinozaki/Japan K.K
2
その製品本当にSecureですか?
⚫ 今SecurityはPlatform/Systemレベルから
Edge Device/Productsレベルへ
1.Networkに繋がる全てのデバイスが、Trusted DeviceでないとSecurityは守れない
2.Edge DeviceのSecurityは、Siliconレベルでの
Securityが必要
3
4
How to Strengthen Security
Strong protection of device identity to
prevent identity spoofing for access
認証技術によるナリスマシ防止
In common remote attacks, hacking a single device or
transaction is typically not of value to an attacker, scale is
!
Strong authentication & encryption to
prevent eavesdropping
強固な認証と暗号化技術による盗聴防止
Strong protection against unauthorized
firmware updates to prevent proliferation
強固な認証技術による、FWの改ざん、Updateの防止
5
セキュリティにおける鍵の重要性
⚫ セキュリティ: 鍵こそが全て
⚫ 暗号システムは、鍵以外の全てが公知になっても、安全であるべきである
ケルクホフスの原理
⚫ 敵はシステムを知っているクロード・エルウッド・シャノン
⚫ 鍵はなぜ重要なのか?鍵を手に入れれば、トランザクションを偽装できる
実際に使われる秘密鍵の例:JVFDvdfvJvfdnjvjk543524cds9ics9cCDSCcs0dcw8eidpciswsn8934XSCDS
6
The 4 pillars (鍵)重要
Isolate private keys from users (Private Keyは人に触れさせない)
⚫ Humans are the most unpredictable security risk
Isolate private keys from Software(SWから鍵は分離する)
⚫ Once a patch is released, it reveals the software weakness to the
attacker. It can take months to patch an IoT hardware which
gives enough time to the attacker to penetrate the system.
Isolate key manipulation from the manufacturing phase
(製造工程から、鍵の改ざん防止)
⚫ Not only from the supply chain equipment but also from the users
in the supply chain.
Isolate keys from Microcontrollers
(MCU内のメモリー空間に鍵を保存していませんか?)
⚫ Please don’t leave the private key in the clear of a flash memory
7
Manufacturer Challenges for IP Connected Devices
⚫ Creating trustable unique device certificates presents
manufacturers with numerable challenges⚫ How to securely generate device unique keys needed to create device certificates
⚫ How to protect the confidentiality of the keys in their chain of manufacturing
⚫ How to onboard the devices to cloud services
⚫ How to continually protect the keys hence identity of the devices after onboarding
誰が、どの様にSecurityなデバイスを作るの?鍵の生成はどうするの?
Trustデバイスの生産は??
Couldのサービスにどう繋げるの???
製品後、鍵は守られているの????
8
Microchip社が提供するセキュリティソリューションの紹介
9
Microchip Security Portfolio
Features AT97x SAMA5 CEC1702ECC608
SHA204
SAMD
PIC24
AES132
AT8x
MCSx
ATA57x
CSQ
AT21C
Application TPM MPU32EC
MCU32
Secure
Element
MCU16
MCU32
Crypto
Memory
Keeloq
Car
Access
Smallest Package/
SizeUDFN 8
2x3 mm
TFBGA 256
8x8 mm
WFBGA 84
7x7 mm
UDFN 8
2x3 mm
SSOP 28
5x10 mm
UDFN 8
2x3 mm
TSSOP 20
6.5x4.4 mmWLCSP
Fixed Identity, Fuses ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓
Authentication in HW ✓ ✓ ✓ ✓
Secure Boot ROM ✓ ✓ ✓ ✓ ✓
AES HW Accelerator ✓ ✓ ✓ ✓ ✓
Secure Key Storage ✓ ✓ ✓ ✓
Intrusion Protection ✓ ✓ ✓ ✓
Non-Intrusive
Attack Defenses ✓ ✓ ✓ ✓
Secure Field Update ✓ ✓ ✓ N/A N/A N/A N/A
Protected Execution
TrustZone® N/A ✓ N/A N/A N/A N/A N/A
10
Diagnostic ports are very common, easy to abuse
Don’t Ignore Physical Access
11
Stand-Alone Security Features
⚫ Strong Multi-Level HW Security
⚫ Active shield over entire chip
⚫ All memories internally encrypted
⚫ Data independent crypto execution
⚫ Randomized math operations
⚫ Internal state consistency checking
⚫ Voltage tampers, isolated power rail
⚫ Internal clock generation
⚫ Secure test methods, no JTAG
⚫ No debug probe points, no test pads
⚫ Designed to Defend Against
⚫ Microprobe attacks
⚫ Timing attacks
⚫ Emissions analysis attacks
⚫ Fault , invalid command attacks
⚫ Power cycling, clock glitches
⚫ Partial personalization attacks
ATECC508A
Standard
Devices
12
Secure Factory Provisioning
Private key generated entirely
inside the ATECC608A
⚫ Solid randomness
⚫ NEVER readable
⚫ NEVER known by anybody
Certificates generated by world-
class HSMs at Microchip
⚫ Protected in State-of-the-art
Secure Facilities
No special equipment or
procedures required in the 3rd party
manufacturing sites
13
Public Cloud Examples
SENSOR CONTROL CONNECT SECURE CLOUD
14
AWS クラウドプラットフォーム
◆Just In Time
◆Zero Touch
15
Announced August 2016
⚫ AWS IoT announces Just In Time
Registration (JIIR), an industry first
⚫ Microchip and AWS IoT team up to
provide industry’s first JITR secure
hardware solution
16
Mic
rochip
お客様が発行した証明書
お客様のAWS IoTアカウント
1. お客様はAWS IoTアカウントを作成し、証明書チェーンを用意
2. お客様はSigner証明書をAWSアカウントに登録
3. デバイス証明書はMicrochip社のセキュアな工場で署名された後、セキュリティデバイスに書き込み
4. デバイス証明書は自動的にAWSへ転送され、AWS IoT JITRによる初回TLS接続で登録
5. JITRで成功したデバイスは、次回から登録不要
信頼の基点
デバイス証明書
JITR (Just In Time Registration)を使ってアップロードされたデバイス証明書
お客様
AWS IoTのユースケース
Signer証明書
17
IoT
Device
#NN
TLS Authentication(Zero Touch)
IoT OEM AWS Account
Customer Specific
Production
Signers
TLS Mutual Authentication with AWS IoT
IoT Device Certificate is registered in AWS
customer account.
TLS authentication completes successfully
Device #NN
18
Microchip Trust Platform
19
Trust Platformの概要
CryptoAuthenticationファミリ向けTrust Platformの提供を開始
• セキュアな設定(Provision)サービス
• ユースケースのサンプルコード
• 使いやすい開発ツール(無償)
20Microchip Confidential
Trust
& GO
Trust
FLEXTrust
Custom
Device entirely Pre-
provisioned
- TLS Trust & Go (,AWS,
Google,TLS)
- LoRaWAN Trust & Go
- Accessories / Disposable
(future products)
Orders through Microchip-
Direct
MoQ – 10 units
Best solution for Mass Market
Based on ATECC608A
Offers flexibility to add
customer specific keys for
- Secure Boot
- IP Protection
- Accessory Authentication
- Custom Certificate Chain
Based on Trust & Go
ATECC608A configuration
Orders through Microchip-
Direct
MoQ – 2K units
Full customization of
- Device configuration
- Cryptographic Assets
Based on ATECC608A or
ATSHA204A blank devices
MoQ – 4k units / Orders
through Microchip-Direct
Best solution for opportunities
with custom requirements that
can’t be addressed with Trust
& Go and Trust Flex
Custom
High
volume
High volume provisioning process available to any customer already using TrustFlex or TrustCustom
above the high volume MoQ:
Customer specific part number
Orders through Baan
High Volume MoQ
uDFN: 21ku
SO8: 32ku
Yearly customer demand: 100ku minimum
ATECC608A Solutions
21Microchip Confidential
Trust
& GO
ATECC608A Trust & Go
Device entirely Pre-provisioned
- TLS Trust & Go ( AWS,
Google,TLS)
- LoRaWAN Trust & Go
- Accessories / Disposable
(future products)
Orders through Microchip-
Direct
MoQ – 10 units
Best solution for Mass Market
Based on ATECC608A
⚫ IoT Ready – ATECC608A-TNGTLS
⚫ Device is pre-provisioned with ⚫ Private/Public Key Pairs
⚫ Certificates
⚫ Works well for IoT applications connecting to ⚫ AWS (Summer 2019 with their CA-less service)
⚫ Any other Cloud that can authenticate device with its Device Certificate
⚫ LoRaWAN – ATECC608A-TNGLORA
⚫ Device is pre-provisioned with ⚫ Network key
⚫ Application Key
⚫ Bundled with one year of TTI Join Server service
⚫ Re-keying feature available
22Microchip Confidential
ATECC608A Trust FLEX
What if customer likes Trust&Go, but their use case requires more?
TrustFlex allows to overlay Trust and Go functionality with any
combination of the following use cases
⚫ Custom PKI chain
⚫ Simple Secure Boot
⚫ Secure Boot with Public Key rotation
⚫ Host of an Accessory Authentication use case
⚫ Firmware IP Protection
⚫ All these use cases require some customer’s information:⚫ Secure boot public key
⚫ Secure boot master public key
⚫ Accessory / IP protection Master secret
⚫ PKI chain
Trust
FLEX
Offers flexibility to add
customer specific keys for
- Secure Boot
- IP Protection
- Accessory Authentication
- Custom Certificate Chain
Based on Trust & Go
ATECC608A configuration
Orders through Microchip-
Direct
MoQ – 2K units
23
TrustFLEXの概要
microchip.com/TrustFLEX
Trust&GOがお客様のユースケースに適合しない場合のソリューション
TrustFLEXにより、以下のユースケースの組み合わせが可能
✓設定済みデバイスポリシーのみで開始✓一般的に使われる以下の全てのユースケースに対応
✓カスタム証明書認証✓ JWT認証✓セキュアブート(鍵の構成証明を使用)
✓ OTA検証✓ FW IP保護✓メッセージ暗号化✓鍵のローテーション✓ I/O保護鍵✓ホストアクセサリ認証
24
Trust Platformは3種類
設定済み YES YES NO
設定済み YES YES (柔軟に対応) NO
最小注文数量(MOQ) 10個 2000個 4000個
開発期間 非常に短期 短期 カスタマイズに応じる
複雑さ 非常に簡潔 簡潔 カスタマイズに応じる
セキュア鍵ストレージ JILで「高」評価 JILで「高」評価 JILで「高」評価
JIL: Joint Interpretation Library作業部会
Trust&GO TrustFLEX TrustCUSTOM
25
TrustCUSTOMの概要
利点
✓ 小量生産品のカスタマイズが可能
✓ 新しいツールによる容易なオンボーディング
✓ JILで「高」評価を得たセキュアな鍵ストレージ
microchip.com/TrustCUSTOM
特長
✓ブランクデバイスから開始✓デバイスを自由にカスタマイズ可能✓低MOQ: 4,000個~✓短所: お客様がMCUファームウェアに関する全責任を負う
26
ハードウェア開発ツール
直接プロトタイピング
PCホストにUSB接続(Python Jupyter Notebook
チュートリアルを使用)
実装済みSAMD21とデバッガを使用
UDFNとSOIC
XPROソケットボードと同機能
MikroBUSオスコネクタ
UDFN8ソケット
SOIC8ソケット
Xplain PROフォームファクタ
DM320118
AT88CKSCKTUDFN
DT100104
Secure UDFN click
Trust&GO、TrustFLEX、TrustCUSTOM向けATECC608Aを実装済み
MikroBUSオス/メスコネクタ
CryptoAuthenticationソケットキット
Trust Platform USBキット ATECC608A Trust Platformボード
27
AWS IoT
FreeRTOS
mBed TLS
WINC1500
SAMG55 Cortex® M4
ATECC608-TNGTLS
ATECC608A-
TFLXTLS
AWS IoT
a:FreeRTOS
mBed TLS
Ethernet
PIC32MZEF MIPS
ATECC608-TNGTLS
ATECC608A-
TFLXTLS
AWS IoT
Greengrass
HSI (Linux)
OpenSSL via
PKCS#11
Linux Cortex® A5
ATECC608-TNGTLS
ATECC608A-TFLXTLS
AWS IoT開発向けの評価用ボード
AWS IoT
a:FreeRTOS
mBed TLS
Ethernet
SAME70 Cortex® M7
ATECC608-TNGTLS
ATECC608A-
TFLXTLS
AWS IoT
Bare metal
Microchip TLS
WINC1500
SAMD21 Cortex®
M0+
ATECC608-TNGTLS
ATECC608A-
TFLXTLS
AWS IoT
Greengrass
HSI (Linux)
OpenSSL via
PKCS#11
Linux Raspberry Pi
ATECC608-TNGTLS
ATECC608A-TFLXTLS
28
CryptoAuthenticationファミリ向けMicrochip Trust Platform:
お客様に最適なアプローチ
29
ご静聴ありがとうございました
microchip.com/TrustPlatform