+ All Categories
Home > Documents > Virtualized Reconfigurable Resources and Their Secured ... · Internal Bus EC Key Processor Command...

Virtualized Reconfigurable Resources and Their Secured ... · Internal Bus EC Key Processor Command...

Date post: 02-Apr-2019
Category:
Upload: lamcong
View: 226 times
Download: 0 times
Share this document with a friend
49
Fakultät Informatik, Institut für Technische Informatik, Professur für VLSI-Entwurfssysteme, Diagnostik und Architektur Virtualized Reconfigurable Resources and Their Secured Provision in an Untrusted Cloud Environment Verteidigung der Diplomarbeit Paul R. Genßler – [email protected] Dresden, 29. November 2017
Transcript
Page 1: Virtualized Reconfigurable Resources and Their Secured ... · Internal Bus EC Key Processor Command Decoder Key Store symmetric keys symmetric nonces MAC keys Configuration Filter

Fakultät Informatik, Institut für Technische Informatik, Professur für VLSI-Entwurfssysteme, Diagnostik und Architektur

Virtualized Reconfigurable Resourcesand Their Secured Provision in anUntrusted Cloud EnvironmentVerteidigung der Diplomarbeit

Paul R. Genßler – [email protected]

Dresden, 29. November 2017

Page 2: Virtualized Reconfigurable Resources and Their Secured ... · Internal Bus EC Key Processor Command Decoder Key Store symmetric keys symmetric nonces MAC keys Configuration Filter

1. Motivation und Literatur

2. Design

3. Implementierung

4. Ergebnisse

5. Zusammenfassung und Ausblick

P. Genßler, 29. November 2017 Verteidigung der Diplomarbeit 2/40

Page 3: Virtualized Reconfigurable Resources and Their Secured ... · Internal Bus EC Key Processor Command Decoder Key Store symmetric keys symmetric nonces MAC keys Configuration Filter

1 Motivation und Literatur

Virtualized Reconfigurable Resources

• Flexibel konfigurierbare Hardware• Beschleunigung von Anwendungen• FPGAs in der Cloud

– Microsoft Catapult, Amazon EC2 F1 Instances– Virtualisierung nötig

Chen u. a. Virtualisierung mit OpenStack1

Asiatici u. a. Virtualisierter Speicher als HW/SW Schnittstelle2

Knodel u.a. Flexible Partitionierung mit Service Modellen3

1Chen u. a., 2014: “Enabling FPGAs in the cloud”2Asiatici u. a., 2016: “Designing a virtual runtime for FPGA accelerators in the cloud”3Knodel u.a., 2017: “Virtualizing Reconfigurable Hardware to Provide Scalability in Cloud Architectures”

P. Genßler, 29. November 2017 Verteidigung der Diplomarbeit 4/40

Page 4: Virtualized Reconfigurable Resources and Their Secured ... · Internal Bus EC Key Processor Command Decoder Key Store symmetric keys symmetric nonces MAC keys Configuration Filter

1 Motivation und Literatur

Secured Provision

• 58 %: Verlust der Herrschaft über die Daten4

• Kein Schutz des geistigen Eigentums

• Vielschichtige UmgebungViele Einfallstore

• Sichere Übertragung– TLS– Devic u. a. 20105

FPGA vendor

Chipfoundry

EDAtools

IPvendor

IaaS provider

PaaS provider

client

4Heidkamp u. a., 2016: Cloud-Monitor 20165Devic u. a., 2010: “Secure protocol implementation for remote bitstream update preventing replay

attacks on FPGA”P. Genßler, 29. November 2017 Verteidigung der Diplomarbeit 5/40

Page 5: Virtualized Reconfigurable Resources and Their Secured ... · Internal Bus EC Key Processor Command Decoder Key Store symmetric keys symmetric nonces MAC keys Configuration Filter

1 Motivation und Literatur

Cloud Environment

Cloudanbieter (IaaS, PaaS Provider)• Ressourcenverwalter

• Flexibilität, Skalierbarkeit, schnelle Bereitstellung

• Geringer CPU Overhead

Mittelständisches Unternehmen• Auslagerung der Datenverarbeitung in die Cloud

• Hoher Durchsatz, viel Speicher

• Sensible Daten keine Public Cloud

• Sicherer, authentifizierbarer Endpunkt

P. Genßler, 29. November 2017 Verteidigung der Diplomarbeit 6/40

Page 6: Virtualized Reconfigurable Resources and Their Secured ... · Internal Bus EC Key Processor Command Decoder Key Store symmetric keys symmetric nonces MAC keys Configuration Filter

1 Motivation und Literatur

Sicherheitskonzepte

• Trusted Platform Model (TPM)

• Homomorphe Verschlüsselung

• FPGA Sicherheitskonzept vorhanden

• Einbeziehung einer Trusted Authority– Kepa u. a. 20086

– Eguro u. a. 20127

FPGA vendor

Chipfoundry

EDAtools

IPvendor

IaaS provider

PaaS provider

client

TA

6Kepa u. a., 2008: “Serecon: A secure dynamic partial reconfiguration controller”7Eguro u. a., 2012: “FPGAs for trusted cloud computing”

P. Genßler, 29. November 2017 Verteidigung der Diplomarbeit 7/40

Page 7: Virtualized Reconfigurable Resources and Their Secured ... · Internal Bus EC Key Processor Command Decoder Key Store symmetric keys symmetric nonces MAC keys Configuration Filter

1 Motivation und Literatur

Ziele der Arbeit

• Literaturstudium relevanter kryptographischer Verfahren und bisherigerArbeit zur Authentifizierung eines Bitstreams

• Konzeptionierung eines Host/FPGA-Hypervisors zur Ver- undEntschlüsselung partieller Bitstreams

• Prototypische Umsetzung des Konzepts auf Basis des RC2F

• Auswertung der Ergebnisse

P. Genßler, 29. November 2017 Verteidigung der Diplomarbeit 8/40

Page 8: Virtualized Reconfigurable Resources and Their Secured ... · Internal Bus EC Key Processor Command Decoder Key Store symmetric keys symmetric nonces MAC keys Configuration Filter

1. Motivation und Literatur

2. Design

3. Implementierung

4. Ergebnisse

5. Zusammenfassung und Ausblick

P. Genßler, 29. November 2017 Verteidigung der Diplomarbeit 10/40

Page 9: Virtualized Reconfigurable Resources and Their Secured ... · Internal Bus EC Key Processor Command Decoder Key Store symmetric keys symmetric nonces MAC keys Configuration Filter

2 Design

Gefahrenmodell

Level 5 Außerhalb des Rechenzentrums

Level 4 Virtueller Zugang zum Host

Level 3 Physischer Zugriff auf die Platine

Level 2 Benachbarte rekonfigurierbare Region

Level 1 Physischer Zugang direkt zum Chip

Level 0 Zugriff vor und während der Fertigung

P. Genßler, 29. November 2017 Verteidigung der Diplomarbeit 11/40

Page 10: Virtualized Reconfigurable Resources and Their Secured ... · Internal Bus EC Key Processor Command Decoder Key Store symmetric keys symmetric nonces MAC keys Configuration Filter

2 Design

Anforderungsanalyse

• Virtualisierung in vFPGAs

• Sicherer Transfer von Konfigurationen

• Kein Zugriff durch Cloud Provider

• Keine Trusted Authority nötig

SecFPGA

FPGA vendor

Chipfoundry EDA tools IP vendor

IaaS provider

PaaS provider

client

P. Genßler, 29. November 2017 Verteidigung der Diplomarbeit 12/40

Page 11: Virtualized Reconfigurable Resources and Their Secured ... · Internal Bus EC Key Processor Command Decoder Key Store symmetric keys symmetric nonces MAC keys Configuration Filter

2 Design

SecFPGA Aufbau

Accelerator board

SecFPGA

endpoints &crossbar

hand-shake

PRE

keystore key gen

chip

on-board memory

external high speed interfaces

vFPGA 0

vFPGA 1

vFPGA 2

reco

nfigu

rabl

ech

ipar

eaEE

EE

EE

...

...

...

P. Genßler, 29. November 2017 Verteidigung der Diplomarbeit 13/40

Page 12: Virtualized Reconfigurable Resources and Their Secured ... · Internal Bus EC Key Processor Command Decoder Key Store symmetric keys symmetric nonces MAC keys Configuration Filter

2 Design

Erste Bereitstellung

Vendor

SecFPGA n

SecFPGA nin node X

cloud

manufacture SecFPGA n

generate public/private key pairsend public key

sign and store certificateinto non-volatile storage

deliver SecFPGA n

install SecFPGA n

regenerate key pair

P. Genßler, 29. November 2017 Verteidigung der Diplomarbeit 14/40

Page 13: Virtualized Reconfigurable Resources and Their Secured ... · Internal Bus EC Key Processor Command Decoder Key Store symmetric keys symmetric nonces MAC keys Configuration Filter

2 Design

TLS Protokoll

• Standard für sichere Kommunikation im Internet

• SSL 1.0 - 3.0, TLS 1.0 - 1.2

• TLS 1.3 in Entwurfsphase

• Viele Verschiedene Algorithmen (Cipher Suites)

TLS ECDHE ECDSA WITH AES 128 GCM SHA256

key exchange

bulk encryption with authentication

handshake hash

P. Genßler, 29. November 2017 Verteidigung der Diplomarbeit 15/40

Page 14: Virtualized Reconfigurable Resources and Their Secured ... · Internal Bus EC Key Processor Command Decoder Key Store symmetric keys symmetric nonces MAC keys Configuration Filter

2 Design

SecFPGA-Hypervisor Handshake

clientSecFPGA nin node X

vFPGA m inSecFPGA n

vFPGA requestclient key share (CKS)

reset requested vFPGA m

derive sym-keys with ECDHE(CKS, SPK)session key share (SKS)

|certificate & |“verify”hash|DPRK & “final” hash|sym

derive sym-keys with ECDHE(CPK, SKS)verify transaction

|client’s “final” hash & bitstream|sym decrypt, verify and program bitstream

P. Genßler, 29. November 2017 Verteidigung der Diplomarbeit 16/40

Page 15: Virtualized Reconfigurable Resources and Their Secured ... · Internal Bus EC Key Processor Command Decoder Key Store symmetric keys symmetric nonces MAC keys Configuration Filter

2 Design

Partielle Rekonfiguration

• 6 nutzbare Regionen

• Beeinflussung eines anderen Clients

• Format der Konfigurationsdateibasiert auf Frames

• 5 Adressbereiche

• Analyse in Hardware

• Filter für unerlaubte Bereiche

P. Genßler, 29. November 2017 Verteidigung der Diplomarbeit 17/40

Page 16: Virtualized Reconfigurable Resources and Their Secured ... · Internal Bus EC Key Processor Command Decoder Key Store symmetric keys symmetric nonces MAC keys Configuration Filter

1. Motivation und Literatur

2. Design

3. Implementierung

4. Ergebnisse

5. Zusammenfassung und Ausblick

P. Genßler, 29. November 2017 Verteidigung der Diplomarbeit 19/40

Page 17: Virtualized Reconfigurable Resources and Their Secured ... · Internal Bus EC Key Processor Command Decoder Key Store symmetric keys symmetric nonces MAC keys Configuration Filter

PCIe Core RC2F Core

Reconfig Area 0: vFPGA v0 Reconfig Area 3: vFPGA v3

PCI-Express Endpoint

8

RC2F Control - gcs RC2FClocking

||||||||||

832 32

vControlucs

User Container u0read

||||||||||

832 32

vControlucs

User Container u3read

||||||||||

write

||||||||||

write

Ethernet

Eth Core PCIe Core RC2F Virtualization Layer

Reconfig Area 0: vFPGA v0 Reconfig Area 3: vFPGA v3

PCI-Express Endpoint

8

RC2F Control Global Config Space Clocking

||||||

3232 32

accelerator design u0

out

||||||

3232 32

accelerator design u3

out

||||||

in

||||||

in

vControlUser ConfigVirtual State

vControlUser ConfigVirtual State

Memory Core

Memory Controller/Virtualization

ICAP bitstream

32

Ethernet

Eth Core

FPGA Cloud Acceleration Board

DDR3 RAM

Knodel u. a. 2016 “RC3E: Reconfigurable Accelerators in Data Centres and their Provision by Adapted Service Models”

P. Genßler, 29. November 2017 Verteidigung der Diplomarbeit 20/40

Page 18: Virtualized Reconfigurable Resources and Their Secured ... · Internal Bus EC Key Processor Command Decoder Key Store symmetric keys symmetric nonces MAC keys Configuration Filter

3 Implementierung

Integration des SecFPGA-Hypervisors

Internal BusEC Key

Processor

CommandDecoder

Key Storesymmetric keys

symmetric noncesMAC keys

ConfigurationFilter

Encryption

Decryption

RC2F System Bus RC2F vFPGA Bus

system

client client

config

SecFPGA-Hypervisor

P. Genßler, 29. November 2017 Verteidigung der Diplomarbeit 21/40

Page 19: Virtualized Reconfigurable Resources and Their Secured ... · Internal Bus EC Key Processor Command Decoder Key Store symmetric keys symmetric nonces MAC keys Configuration Filter

3 Implementierung

CMD Decoder - Blockschaltbild

• Sichere Übertragung der vFPGA Bitstreams• Enge Kopplung mit dem EC Key Processor

CMD Decoder

AES-CTR

Certificate

SHA-3

SM

Buffer

keys

sig

SKS

RC2F system

to Filter

hash

CKS

P. Genßler, 29. November 2017 Verteidigung der Diplomarbeit 22/40

Page 20: Virtualized Reconfigurable Resources and Their Secured ... · Internal Bus EC Key Processor Command Decoder Key Store symmetric keys symmetric nonces MAC keys Configuration Filter

3 Implementierung

EC Key Processor - Blockschaltbild

• Elliptische Kurven Kryptographie: 233-bit Binärkurve sept233r1• Enge Kopplung mit dem CMD Decoder

Vorberechnungen

x1 = ECM(k)

k−1 = k2233−2 mod x233 + x74 + 1

Handshake Berechnungen

r = x1 mod n

s = k−1(m + r * private key) mod n

ECMSHA-3

TRNG

Key Gen ECDSA

hash

CKS

SKS

sig

keys

P. Genßler, 29. November 2017 Verteidigung der Diplomarbeit 23/40

Page 21: Virtualized Reconfigurable Resources and Their Secured ... · Internal Bus EC Key Processor Command Decoder Key Store symmetric keys symmetric nonces MAC keys Configuration Filter

3 Implementierung

Configuration Filter

• Schutz des SecFPGAs und anderer vFPGAs• Filter basierend auf Frameadressen

Configuration Filter

analyzer

frame counter

loadinc f#

101-wordcounter

1

00x2000 0000

range checker

A..B C..D E..F G..H I..K

or&

orvalid

bitstream

slot

to RC2FConfig Bus

P. Genßler, 29. November 2017 Verteidigung der Diplomarbeit 25/40

Page 22: Virtualized Reconfigurable Resources and Their Secured ... · Internal Bus EC Key Processor Command Decoder Key Store symmetric keys symmetric nonces MAC keys Configuration Filter

1. Motivation und Literatur

2. Design

3. Implementierung

4. Ergebnisse

5. Zusammenfassung und Ausblick

P. Genßler, 29. November 2017 Verteidigung der Diplomarbeit 27/40

Page 23: Virtualized Reconfigurable Resources and Their Secured ... · Internal Bus EC Key Processor Command Decoder Key Store symmetric keys symmetric nonces MAC keys Configuration Filter

4 Ergebnisse

Vorberechnungen

k−1 = k2233−2 mod x233 + x74 + 1

x1 = ECM(k)

0.0 6.75 11.8. . .

1435.85precomputation time in µs

TRNG

ECM

ECDSA

subm

odul

e . . .

P. Genßler, 29. November 2017 Verteidigung der Diplomarbeit 28/40

Page 24: Virtualized Reconfigurable Resources and Their Secured ... · Internal Bus EC Key Processor Command Decoder Key Store symmetric keys symmetric nonces MAC keys Configuration Filter

4 Ergebnisse

TLS Handshake

5.66 15.84 20.49computation time for a TLS handshake in µs

ECDHE

Key Derivation

AES

SHA-3

ECDSA

subm

odul

e

P. Genßler, 29. November 2017 Verteidigung der Diplomarbeit 29/40

Page 25: Virtualized Reconfigurable Resources and Their Secured ... · Internal Bus EC Key Processor Command Decoder Key Store symmetric keys symmetric nonces MAC keys Configuration Filter

4 Ergebnisse

Latenzzeit

0 25 50 75 100 125 150time in ns

System to vFPGA

Sys to vFPGA w/ AES

vFPGA to System

vFGPA to Sys w/ AES

100 ns

100 ns

FIFO AES CTR Sync

P. Genßler, 29. November 2017 Verteidigung der Diplomarbeit 30/40

Page 26: Virtualized Reconfigurable Resources and Their Secured ... · Internal Bus EC Key Processor Command Decoder Key Store symmetric keys symmetric nonces MAC keys Configuration Filter

4 Ergebnisse

Ressourcen - SecFPGA-Hypervisor

EC Key ProcessorCMD Decoder

Key StoreAES De-/Encryption

Cross Clock0

10000

20000

30000

LUTs

&R

egis

ters

LUTs Registers BRAMs

0

50

100

150

BR

AM

s

P. Genßler, 29. November 2017 Verteidigung der Diplomarbeit 31/40

Page 27: Virtualized Reconfigurable Resources and Their Secured ... · Internal Bus EC Key Processor Command Decoder Key Store symmetric keys symmetric nonces MAC keys Configuration Filter

4 Ergebnisse

Ressourcen - EC Key Processor

ECM ECDSA Key Derivation TRNG Synchronization0

5000

10000

15000

20000

LUTs

&R

egis

ters

LUTs Registers BRAMs

0

BR

AM

s

P. Genßler, 29. November 2017 Verteidigung der Diplomarbeit 32/40

Page 28: Virtualized Reconfigurable Resources and Their Secured ... · Internal Bus EC Key Processor Command Decoder Key Store symmetric keys symmetric nonces MAC keys Configuration Filter

4 Ergebnisse

Ressource - CMD Decoder

AES SHA-3 Certificate Buffer0

2000

4000

LUTs

&R

egis

ters

LUTs Registers BRAMs

0

20

40

60

80

BR

AM

s

P. Genßler, 29. November 2017 Verteidigung der Diplomarbeit 33/40

Page 29: Virtualized Reconfigurable Resources and Their Secured ... · Internal Bus EC Key Processor Command Decoder Key Store symmetric keys symmetric nonces MAC keys Configuration Filter

4 Ergebnisse

Herausforderung der sicheren FPGA-Virtualisierung

• Strikte Trennung von statischer SecFPGA-Hypervisor Infrastruktur undvFPGAs

• Eingebettete Sicherheits-Features

• Separate Taktnetze für jeden vFPGA

• vFPGA Konfigurationen ohne geteilte Adressbereiche

P. Genßler, 29. November 2017 Verteidigung der Diplomarbeit 34/40

Page 30: Virtualized Reconfigurable Resources and Their Secured ... · Internal Bus EC Key Processor Command Decoder Key Store symmetric keys symmetric nonces MAC keys Configuration Filter

4 Ergebnisse

Sicherheitsanalyse

Level 5 Außerhalb des Rechenzentrums X

Level 4 Virtueller Zugang zum Host X

Level 3 Physischer Zugriff auf die Platine X

Level 2 Benachbarte rekonfigurierbare Region X

Level 1 Physischer Zugang direkt zum Chip X

Level 0 Zugriff vor und während der Fertigung ?

P. Genßler, 29. November 2017 Verteidigung der Diplomarbeit 35/40

Page 31: Virtualized Reconfigurable Resources and Their Secured ... · Internal Bus EC Key Processor Command Decoder Key Store symmetric keys symmetric nonces MAC keys Configuration Filter

1. Motivation und Literatur

2. Design

3. Implementierung

4. Ergebnisse

5. Zusammenfassung und Ausblick

P. Genßler, 29. November 2017 Verteidigung der Diplomarbeit 37/40

Page 32: Virtualized Reconfigurable Resources and Their Secured ... · Internal Bus EC Key Processor Command Decoder Key Store symmetric keys symmetric nonces MAC keys Configuration Filter

5 Zusammenfassung und Ausblick

Zusammenfassung und Ausblick

Zusammenfassung• Design des SecFPGAs bietet sehr hohes Sicherheitslevel

• Cloud Charakteristik durch Einsatz teilweise rekonfigurierbarer Hardware

• Nutzung etablierter Algorithmen und Protokolle

• Implementation eines Prototyps und Auswertung des Mehraufwands

Ausblick• Flexible Bandbreiten

• Direkte Kommunikation über andere Schnittstellen

• Verifizierung einer Verbindung durch einen SecFPGAP. Genßler, 29. November 2017 Verteidigung der Diplomarbeit 38/40

Page 33: Virtualized Reconfigurable Resources and Their Secured ... · Internal Bus EC Key Processor Command Decoder Key Store symmetric keys symmetric nonces MAC keys Configuration Filter

7 Literatur

Quellen

Hsing, Homer (2013). OpenCores - SHA3 Core. URL: https://opencores.org/project,sha3 (besucht am 08. 09. 2017).

Hsing, Homer (2015). OpenCores - Tiny AES. URL: https://opencores.org/project,tiny_aes (besucht am 06. 09. 2017).

Mukhopadhyay, Debdeep u. a. (2008). Elliptic Curve Crypto Processor for FPGA Plat-forms. URL: http://cse.iitkgp.ac.in/~debdeep/osscrypto/eccpweb/index.html (besucht am 27. 08. 2017).

P. Genßler, 29. November 2017 Verteidigung der Diplomarbeit 39/40

Page 34: Virtualized Reconfigurable Resources and Their Secured ... · Internal Bus EC Key Processor Command Decoder Key Store symmetric keys symmetric nonces MAC keys Configuration Filter

Fakultät Informatik, Institut für Technische Informatik, Professur für VLSI-Entwurfssysteme, Diagnostik und Architektur

Virtualized Reconfigurable Resourcesand Their Secured Provision in anUntrusted Cloud EnvironmentVerteidigung der Diplomarbeit

Paul R. Genßler – [email protected]

Dresden, 29. November 2017

Page 35: Virtualized Reconfigurable Resources and Their Secured ... · Internal Bus EC Key Processor Command Decoder Key Store symmetric keys symmetric nonces MAC keys Configuration Filter

9 Sicherheit

Asymmetrische Verschlüsselung

Alice Bob

• RSA, ECIES

• Privater Schlüssel: Entschlüsselung

• Öffentlicher Schlüssel: Verschlüsselung

• Basiert auf mathematischen Problemen ohne effiziente Lösung

• Schlüsselgrößen: 2048 Bit (RSA), 256 Bit (ECIES)

P. Genßler, 29. November 2017 Verteidigung der Diplomarbeit 2/40

Page 36: Virtualized Reconfigurable Resources and Their Secured ... · Internal Bus EC Key Processor Command Decoder Key Store symmetric keys symmetric nonces MAC keys Configuration Filter

9 Sicherheit

Digitale Signatur

Alice Bob?= Sig Sig

• RSA, ECDSA

• Öffentlicher Schlüssel: Verifizierung

• Privater Schlüssel: Signierung

• Basiert auf gleichen Prinzipien wie asymmetrische Verschlüsselung

• Schlüsselgrößen: 2048 Bit (RSA), 256 Bit (ECDSA)

P. Genßler, 29. November 2017 Verteidigung der Diplomarbeit 3/40

Page 37: Virtualized Reconfigurable Resources and Their Secured ... · Internal Bus EC Key Processor Command Decoder Key Store symmetric keys symmetric nonces MAC keys Configuration Filter

9 Sicherheit

Symmetrische Verschlüsselung

Alice Bob

• AES, DES, KASUMI• RC5, Chacha20• Gleicher Schlüssel zum Ver- und Entschlüsseln• Konfusion und Diffusion 8

• Schlüsselgrößen: 128 - 256 Bit8Shannon, 1945: “A Mathematical Theory of Cryptography”

P. Genßler, 29. November 2017 Verteidigung der Diplomarbeit 4/40

Page 38: Virtualized Reconfigurable Resources and Their Secured ... · Internal Bus EC Key Processor Command Decoder Key Store symmetric keys symmetric nonces MAC keys Configuration Filter

9 Sicherheit

Hashfunktionen

h( ) = 0x4914D65BC6140743C5B6719A79746DB116

• MD5, SHA1, SHA224, SHA256, SHA3-512

• Gleichverteilte Abbildung beliebig langer Daten auf Hash fester Länge

• Gleiche Eingabe erzeugt gleiche Ausgabe

• Konfusion und Diffusion

• Kollisionsresistenz

• Rekonstruktion der Eingabe praktisch unmöglich

P. Genßler, 29. November 2017 Verteidigung der Diplomarbeit 5/40

Page 39: Virtualized Reconfigurable Resources and Their Secured ... · Internal Bus EC Key Processor Command Decoder Key Store symmetric keys symmetric nonces MAC keys Configuration Filter

Alice Bob

+

=

+

=

+

=

+

=

secret color

secret color

common secret

common paintpublicly shared

public transport

mixture separationis expensive

P. Genßler, 29. November 2017 Verteidigung der Diplomarbeit 6/40

Page 40: Virtualized Reconfigurable Resources and Their Secured ... · Internal Bus EC Key Processor Command Decoder Key Store symmetric keys symmetric nonces MAC keys Configuration Filter

App Command Decoder EC Key Processor Key Store Configuration Filter. . . . . .

SecFPGA-HypervisorClient Insecure Channel

cmd 0x00client key share (CKS)

clear requested vFPGAs

cmd 0x80session key share (SKS)

client key share (CKS)calculate shared secretderive TLS-keys

update TLS keysfor requested slots

provide key and nonce

encrypt certificate

“verify” hash of transaction

sign hash “verify”ECDSA siganture of hash

encrypt signature

cmd 0x81encrypted certificate and signature

compute “final” hashencrypt hash

cmd 0x82encrypted hash of whole handshake

update SecFPGA_write_nonceverify certificate, handshake

cmd 0x01encrypted vFPGA bitstream

decrypted vFPGA bitstreamenable requested ranges

filtered framesto RC2F config

update client_write_nonce

Page 41: Virtualized Reconfigurable Resources and Their Secured ... · Internal Bus EC Key Processor Command Decoder Key Store symmetric keys symmetric nonces MAC keys Configuration Filter

AES-128CTR mode

round robin through

all client interfaces

AES-128CTR mode

round robin through

all client interfaces

FIFO150 MHz

300 MHz

64 bit

128 bit

128 x 128 bit

Standard FIFO

FIFO300 MHz

100 MHz

128 bit

64 bit

128 x 128 bit

Standard FIFO

FIFO150 MHz

300 MHz

64 bit

128 bit

128 x 128 bit

Standard FIFO

FIFO300 MHz

100 MHz

128 bit

64 bit

128 x 128 bit

Standard FIFO

Key Store

RC2F System BusRC2F read clientnRC2F write clientnRC2F read clientn-1 RC2F write clientn+1

RC2F vFPGA Bus

vFPGA readn vFPGA writen vFPGA readn-1vFPGA writen+1

rd_en empty data64

full wr_en data

128

rd_en empty data

128

full wr_en data64

fullwr_endata

64

rd_enemptydata

128

fullwr_endata

128

rd_enemptydata

64

client keys

nonces6 x 128

6 x 128

0

from RC2F SystemBus client channel

5

. ..

0

5

to RC2F vFPGAbus client channel

. . .0 from RC2F vFPGA

bus client channel5. .

.

0

to RC2F SystemBus client channel

5 . . .

Page 42: Virtualized Reconfigurable Resources and Their Secured ... · Internal Bus EC Key Processor Command Decoder Key Store symmetric keys symmetric nonces MAC keys Configuration Filter

11 Ergebnisse

TLS - Vorberechnungen

Step Depends On Module Action Start Time (µs) Duration (µs)

1 – TRNG Generate 1st integer 0,00 0,052 1 ECDSA Invert 1st integer 0,05 1429,103 1 ECM Curve point 1st integer 0,05 6,70

4 – TRNG Generate 2nd integer 6,75 0,055 4 ECM Curve point 2nd integer 11,80 5,00

P. Genßler, 29. November 2017 Verteidigung der Diplomarbeit 11/40

Page 43: Virtualized Reconfigurable Resources and Their Secured ... · Internal Bus EC Key Processor Command Decoder Key Store symmetric keys symmetric nonces MAC keys Configuration Filter

11 Ergebnisse

TLS - Berechnungen

Step Depends On Module Action Start Time (µs) Duration (µs)

1 CKS ECDHE complete key exchange 0,00 5,002 1 ECKP key derivation 5,00 0,663 2 AES encrypt certificate 5,66 1,434 3 SHA-3 compute “verify” hash 7,09 4,015 4 ECDSA sign “verify” hash 11,10 4,406 5 AES encrypt signature 15,50 0,347 6 SHA-3 compute “final” hash 15,84 4,288 7 AES encrypt “final” hash 20,12 0,37

P. Genßler, 29. November 2017 Verteidigung der Diplomarbeit 12/40

Page 44: Virtualized Reconfigurable Resources and Their Secured ... · Internal Bus EC Key Processor Command Decoder Key Store symmetric keys symmetric nonces MAC keys Configuration Filter

11 Ergebnisse

Latencies

Action Source (MHz) Destination (MHz) Stages Latency (ns)

AES 300 300 21 70,00CTR mode 300 300 1 3,33Round-Robin 300 300 2 6,67RC2F vFPGA Bus to AES 100 300 2 26,67a

AES to RC2F System Bus 300 250 2 23,33a

RC2F System Bus to AES 250 300 2 20,67a

AES to RC2F vFPGA Bus 300 100 2 53,33a

RC2F vFPGA to System Busb 100 250 2 30,00a

RC2F System to vFPGA Busb 250 100 2 54,00a

a worst case, Xilinx Inc., 2017: FIFO Generator v13.1 b without AES

P. Genßler, 29. November 2017 Verteidigung der Diplomarbeit 13/40

Page 45: Virtualized Reconfigurable Resources and Their Secured ... · Internal Bus EC Key Processor Command Decoder Key Store symmetric keys symmetric nonces MAC keys Configuration Filter

11 Ergebnisse

Ressourcen - SecFPGA-Hypervisor

Submodule LUTs Registers BRAMs

EC Key Processor 30 766 10,13% 15 158 2,50% 0 0,00%CMD Decoder 7279 2,40% 8714 1,44% 87 8,45%Key Store 269 0,09% 4379 0,72% 0 0,00%Configuration Filter 119 0,04% 99 0,02% 0 0,0 %AES encryption 4612 1,52% 5820 0,96% 86 8,35%AES decryption 4595 1,51% 5820 0,96% 86 8,35%Cross clock FIFOs 1358 0,44% 3000 0,48% 50 4,85%

Overall 48 878 16,10% 42 891 7,06% 309 30,00%

A XC7VX485T is equipped with 303 600 LUTs, 607 200 registers and 1030 BRAMs among others.

P. Genßler, 29. November 2017 Verteidigung der Diplomarbeit 14/40

Page 46: Virtualized Reconfigurable Resources and Their Secured ... · Internal Bus EC Key Processor Command Decoder Key Store symmetric keys symmetric nonces MAC keys Configuration Filter

11 Ergebnisse

Ressourcen - CMD Decoder

Submodule LUTs Registers BRAMs

AES 3011 41,37% 4886 56,07% 86 98,85%Buffer 0 0,00% 0 0,00% 1 1,15%SHA-3 2598 35,69% 2245 25,76% 0 0,00%Certificate 128 1,76% 128 1,47% 0 0,00%

CMD Decoder 7279 100,00% 8714 100,00% 87 100,00%

P. Genßler, 29. November 2017 Verteidigung der Diplomarbeit 15/40

Page 47: Virtualized Reconfigurable Resources and Their Secured ... · Internal Bus EC Key Processor Command Decoder Key Store symmetric keys symmetric nonces MAC keys Configuration Filter

11 Ergebnisse

Ressourcen - EC Key Processor

Submodule LUTs Registers BRAMs

ECM 21 695 70,52% 48 0,32% 0 0,00%ECDSA 5243 17,04% 8510 56,14% 0 0,00%Key derivation 2601 8,45% 2245 14,81% 0 0,00%TRNG 670 2,18% 34 0,22% 0 0,00%Synchronization 319 1,07% 1944 12,82% 0 0,00%

EC Key Processor 30 766 100,00% 15 158 100,00% 0 0,00%

P. Genßler, 29. November 2017 Verteidigung der Diplomarbeit 16/40

Page 48: Virtualized Reconfigurable Resources and Their Secured ... · Internal Bus EC Key Processor Command Decoder Key Store symmetric keys symmetric nonces MAC keys Configuration Filter

11 Ergebnisse

Ressourcen - AES

Submodule LUTs Registers BRAMs

AES-Core 3178 69,16% 3968 68,18% 86 100,00%Arbiter 1417 30,84% 1852 31,82% 0 0,00%

Overall 4595 100,00% 5820 100,00% 86 100,00%

P. Genßler, 29. November 2017 Verteidigung der Diplomarbeit 17/40

Page 49: Virtualized Reconfigurable Resources and Their Secured ... · Internal Bus EC Key Processor Command Decoder Key Store symmetric keys symmetric nonces MAC keys Configuration Filter

11 Ergebnisse

Ressourcen - Literatur

Submodule Reference/ Slices BRAMs DSPOptimization Ref. this Ref. this Ref. this

ECM Sasdrich u. a. 2014 1029 5765 2 0 20 0Hash Garcia u. a. 2014 139 715 0 0 0 0Key derivation reuse 0 714 0 0 0 0AES encryption Zhou u. a. 2009 4628 2334 0 86 0 0AES decryption Zhou u. a. 2009 4628 2052 0 86 0 0TLS encryptiona reuse 0 1226 0 86 0 0

Savings overall 2382 256 -20a De-/Encryption of handshake traffic and bitstream

P. Genßler, 29. November 2017 Verteidigung der Diplomarbeit 18/40


Recommended