Practical Applications of Client-Side Trusted Computing David - - PowerPoint PPT Presentation

practical applications of client side trusted computing
SMART_READER_LITE
LIVE PREVIEW

Practical Applications of Client-Side Trusted Computing David - - PowerPoint PPT Presentation

Practical Applications of Client-Side Trusted Computing David Goltzsche, 2018-04-23 3rd year PhD student at distributed systems group, TU Braunschweig, Germany Research area: trusted execution, distributed systems Advisor: Rdiger Kapitza


slide-1
SLIDE 1

Practical Applications of Client-Side Trusted Computing

David Goltzsche, 2018-04-23

3rd year PhD student at distributed systems group, TU Braunschweig, Germany Research area: trusted execution, distributed systems Advisor: Rüdiger Kapitza

slide-2
SLIDE 2

Overview

Server

Client Client Client 2018-04-23 David Goltzsche Practical Applications of Client-Side Trusted Computing Page 1

slide-3
SLIDE 3

Overview

Server

Client Client Client 2018-04-23 David Goltzsche Practical Applications of Client-Side Trusted Computing Page 1

slide-4
SLIDE 4

Overview

Problem: offloading computations to untrusted clients is limited

Server

Client Client Client 2018-04-23 David Goltzsche Practical Applications of Client-Side Trusted Computing Page 1

slide-5
SLIDE 5

Overview

Problem: offloading computations to untrusted clients is limited Current best practice: avoidance of

  • ffloading or expensive recomputations

Server

Client Client Client

x x x

2018-04-23 David Goltzsche Practical Applications of Client-Side Trusted Computing Page 1

slide-6
SLIDE 6

Overview

Problem: offloading computations to untrusted clients is limited Current best practice: avoidance of

  • ffloading or expensive recomputations

Server

Client Client Client 2018-04-23 David Goltzsche Practical Applications of Client-Side Trusted Computing Page 1

slide-7
SLIDE 7

Overview

Problem: offloading computations to untrusted clients is limited Current best practice: avoidance of

  • ffloading or expensive recomputations

Goal: enable secure offloading using client-side trusted computing

Server

Client Client Client 2018-04-23 David Goltzsche Practical Applications of Client-Side Trusted Computing Page 1

slide-8
SLIDE 8

Overview

Problem: offloading computations to untrusted clients is limited Current best practice: avoidance of

  • ffloading or expensive recomputations

Goal: enable secure offloading using client-side trusted computing Consequence: New paradigm for system design, because changed assumptions

How can existing systems be redesigned? Which entirely new use cases are possible?

Server

Client Client Client 2018-04-23 David Goltzsche Practical Applications of Client-Side Trusted Computing Page 1

slide-9
SLIDE 9

Trusted Execution Environments

How to make clients trusted? Trusted Execution Environments (TEEs)

Data and execution protection Memory encryption Remote attestation

Implementations

Intel SGX: available on commodity hardware Other vendors expected to follow Research: Komodo [Ferraiuolo et al., SOSP’17]

TEE Client TEE

Application Untrusted OS ecalls

  • calls

Untrusted hardware

Enclave

Trusted CPU

2018-04-23 David Goltzsche Practical Applications of Client-Side Trusted Computing Page 2

slide-10
SLIDE 10

Use Cases of Client-Side TEEs

JavaScript in Web Browsers @EuroSec’17

Problem: Recomputation in back-end of web application Solution TrustJS: trusted client-side execution of JS

TEE Browser TEE JS 2018-04-23 David Goltzsche Practical Applications of Client-Side Trusted Computing Page 3

slide-11
SLIDE 11

Use Cases of Client-Side TEEs

JavaScript in Web Browsers @EuroSec’17

Problem: Recomputation in back-end of web application Solution TrustJS: trusted client-side execution of JS

Network Middleboxes @DSN’18

Problem: Client-side offloading not considered so far Solution EndBox: client-side middlebox functions

TEE Browser TEE JS

TEE Client Server TEE Middlebox

2018-04-23 David Goltzsche Practical Applications of Client-Side Trusted Computing Page 3

slide-12
SLIDE 12

Use Cases of Client-Side TEEs

JavaScript in Web Browsers @EuroSec’17

Problem: Recomputation in back-end of web application Solution TrustJS: trusted client-side execution of JS

Network Middleboxes @DSN’18

Problem: Client-side offloading not considered so far Solution EndBox: client-side middlebox functions

Volunteer Computing Systems

Problem: Jobs replicated to other clients to stop cheaters Solution TruVC: trusted volunteer computing

TEE Browser TEE JS

TEE Client Server TEE Middlebox

2018-04-23 David Goltzsche Practical Applications of Client-Side Trusted Computing Page 3