Technology Transfer from Security Research Projects A Personal - - PowerPoint PPT Presentation

technology transfer from security research projects
SMART_READER_LITE
LIVE PREVIEW

Technology Transfer from Security Research Projects A Personal - - PowerPoint PPT Presentation

Technology Transfer from Security Research Projects A Personal Perspective N. Asokan Aalto University & University of Helsinki http://asokan.org/asokan/research Five examples Optimistic Fair Exchange Generic Authentication


slide-1
SLIDE 1

Technology Transfer from Security Research Projects

A Personal Perspective

  • N. Asokan

Aalto University & University of Helsinki http://asokan.org/asokan/research

slide-2
SLIDE 2

2

Five examples

  • Optimistic Fair Exchange
  • Generic Authentication Architecture
  • Channel Binding in Protocol Composition
  • Secure Device Pairing
  • On-board Credentials
slide-3
SLIDE 3

3

Five examples

  • Optimistic Fair Exchange
  • Generic Authentication Architecture
  • Channel Binding in Protocol Composition
  • Secure Device Pairing
  • On-board Credentials
slide-4
SLIDE 4

4

How can two mutually distrusting parties exchange digital “items” on the Internet? Existing solutions:

Fair Exchange

A-item A-exp B-item B-exp B-item A-item

Gradual Exchange protocols Trusted Third Party protocols

slide-5
SLIDE 5

5

Fair Exchange: design choices

  • Common case: both want to complete the exchange

– design protocol that is efficient for the common case – but allows recovery in case of exceptions

  • Requirements

– Effectiveness – Fairness – Timeliness – (Non-invasive)

slide-6
SLIDE 6

6

Optimistic Fair Exchange

A-item A-exp B-item A-item A- permit B-item B-exp B- permit A- permit B- permit

? Resolve Alice Bob http://www.semper.org/ generate generate

slide-7
SLIDE 7

7

Optimistic Fair Exchange: Recovery

B-item B-exp B- permit B- permit

Resolve

if A-item matches B-exp

  • extract B-item from B-permit
  • store A-item

A-item B-item

Alice extract

slide-8
SLIDE 8

8

Optimistic Fair Exchange

A-item A-exp B-item A-item A- permit B-item B-exp B- permit A- permit B- permit

? ? ? Abort Resolve Resolve Alice Bob http://www.semper.org/ generate generate

slide-9
SLIDE 9

9

Optimistic Fair Exchange: Recovery

B-item B-exp B- permit A- permit

Abort

If not resolved, issue abort token

A- permit B- permit

Resolve

If not aborted, and if A-item matches B-exp

  • extract B-item from B-permit
  • store A-item

A-item B-item

Resolve for Bob is similar Alice Alice extract

slide-10
SLIDE 10

10

Verifiable Encryption

Analogy - jewelry in a glass box: can see but can’t touch

desc

True/False

verifyEnc recover

secret secret secret

slide-11
SLIDE 11

11

Verifiable Encryption of discrete logs

Prover Verifier Setting: secret = s  G1, desc d = gs (in G2)

s0 R G1, v ← gs0 s1 ← s0 – s Ei ← Enc(ri, si), i={0,1}

v, E0, E1

b R {0,1}

b rb, sb

(db . gsb = v?) && (Enc(rb, sb) = Eb?)

Verifier TTP

E b

s 𝑐 ← Dec(E b)

s b

s ← sb + s b

verifyEnc recover Repeat n times (cut-and-choose)

slide-12
SLIDE 12

12

From Verifiable Encryptions to Permits

A-item A-exp A- permit

= Verifiable Encryption of +

A-exp

= desc. of

B-item

[ASW00] “Optimistic Fair Exchange of Digital Signatures”, JSAC 18(4): 593-610 (2000)

slide-13
SLIDE 13

13

Optimistic Fair Exchange: the aftermath

  • Someone has to run the Third Party

– Wants to monetize every transaction!

slide-14
SLIDE 14

14

Verifiable Encryption of discrete logs

Prover Verifier Setting: secret = s  G1, desc d = gs (in G2)

s0 R G1, v ← gs0 s1 ← s0 – s Ei ← Enc(ri, si), i={0,1}

v, E0, E1

b R {0,1}

b rb, sb

(db . gsb = v?) && (Enc(rb, sb) = Eb?)

Verifier TTP

E b

s 𝑐 ← Dec(E b)

s b

s ← sb + s b

verifyEnc recover Repeat n times (cut-and-choose)

slide-15
SLIDE 15

15

Verifiable Encryption of discrete logs

Prover Verifier Setting: secret = s  G1, desc d = gs (in G2)

s1 ← s0 – s

v, E0,Cert s1

(d . gs1 = v?) && verify(Cert)

Verifier TTP

E0

s0 ← Dec(E0)

s0

s ← s0 + s1

verifyEnc recover Repeat n times (cut-and-choose) Pre-paid coupons bought from the TTP to be used for every optimistic transaction!

s0 R G1, v ← gs0 E0 ← Enc(r0, s0) Cert ← SigTTP(v, E0)

slide-16
SLIDE 16

16

Optimistic Fair Exchange: the aftermath

  • Someone has to run the Third Party

– Wants to monetize every transaction!

  • 15 years on, current status:

– Reputation systems – In-line TTP (e.g., E-bay escrow service)

slide-17
SLIDE 17

17

Continuing “impact” in research circles!

slide-18
SLIDE 18

18

Optimistic Fair Exchange: the aftermath

  • Someone has to run the Third Party

– Wants to monetize every transaction!

  • 15 years on, current status:

– Reputation systems – In-line TTP (e.g., E-bay escrow service)

  • Impact in academia vs. real world impact
  • Biggest impact of SEMPER?

http://logging.apache.org/log4j/2.x/

slide-19
SLIDE 19

19

Optimistic Fair Exchange: lessons learned

  • Don’t just guess security requirements; Ask stakeholders
  • Desiderata for deployment and research can be different

– “the more (independent) parties you require for your scheme, the less likely it will be deployed”

  • Capturing researcher interest (Tech transfer) Impact

– MANETs anyone?

  • “90-10 rule” applies to deploying security

– “Good enough beats perfect”

Skip to summary

→ /

slide-20
SLIDE 20

20

Five examples

  • Optimistic Fair Exchange
  • Generic Authentication Architecture
  • Channel Binding in Protocol Composition
  • Secure Device Pairing
  • On-board Credentials
slide-21
SLIDE 21

21

Generic Authentication Architecture

Can we bootstrap a general-purpose global-scale authentication and authorization infrastructure from the existing cellular security infrastructure?

  • Need was evident:

– “Global PKIs will not happen”

  • Ad-hoc bootstrapping already in use

– e.g., Coke vending machine accepting payments via SMS, 1997

  • Idea: Bootstrap short-lived certificates from “local PKIs”
slide-22
SLIDE 22

22

CA

Bootstrapping a “local PKI”

Global Cellular Authentication/authorization Infrastructure

Home Security Server Serving Network

K IK, CK Authentication & Key Agreement (AKA) K IK, CK PKD/SKD

SP RA

CertD

slide-23
SLIDE 23

23

3GPP “Generic Authentication Architecture”

Two layer architecture

  • Generic Bootstrapping

Architecture (GBA)

  • Specialized Application

Servers

  • E.g., for “subscriber

certificates”

Bootstrapping Server Application Server HSS Bootstrapping client Application client Bootstrapping Protocol Application Protocol Credential Fetching Protocol Key distribution Protocol User Equipment (UE)

[HLGNA08] “Cellular Authentication for Mobile and Internet Services”, Wiley, 2008 Relevant 3GPP documents: E.g., [33.919], [33.220]

slide-24
SLIDE 24

24

GAA: the aftermath

  • Standardized in 3GPP

– Variants: GBA and GBA_U (implemented in the smartcard, UICC) – GBA implemented for some services – none of which has taken off (e.g., Mobile TV), so far

  • Today’s solutions:

– Bootstrapping: Facebook, Google, …

  • Some mobile carriers even deployed PKI-enabled SIM cards

– Roaming: iPass, Shibboleth, …

  • Variants of the idea had more success

– E.g., EAP SIM

slide-25
SLIDE 25

25

GAA: lessons learned

  • (Standardization) Politics can suffocate a good idea
  • “90-10 rule” applies to deploying security

Skip to summary

slide-26
SLIDE 26

26

Five examples

  • Optimistic Fair Exchange
  • Generic Authentication Architecture
  • Channel Binding in Protocol Composition
  • Secure Device Pairing
  • On-board Credentials
slide-27
SLIDE 27

27

Channel Binding in protocol composition

Composing two secure authentication protocols carelessly can lead to a man-in-the-middle vulnerability

  • Protocol composition can ease deployment
  • Examples:

– Server auth. using TLS + user auth. with password – Authentication for VPN access using legacy credentials – Bootstrapping a “local PKI”

slide-28
SLIDE 28

28

3G AKA

Provides mutual authentication

Home Security Server Serving Network K Latest SQN: SQNU K Latest SQN: SQNH

Rand K SQNH XRES AUTN IK CK Rand K AUTN RES SQN IK CK STOP if SQN  SQNU STOP if RES  XRES IMSI IMSI Rand, AUTN, XRES, IK, CK RAND, AUTN RES

slide-29
SLIDE 29

29

Bootstrapping certificate enrollment

Home Security Server Serving Network RA

STOP if SQN  SQNU STOP if RES  XRES IMSI IMSI Rand, AUTN, XRES, IK, CK RAND, AUTN RES

  • 1. Set up a (server-authenticated) TLS channel
  • 2. Run AKA

Cert Request Cert Response

  • 3. Do certificate enrollment via the

(mutually) authenticated TLS channel

slide-30
SLIDE 30

30

Bootstrapping certificate enrollment

Home Security Server Serving Network RA

STOP if SQN  SQNU STOP if RES  XRES IMSI IMSI Rand, AUTN, XRES, IK, CK RAND, AUTN RES

  • 1. Set up a (server-authenticated) TLS channel
  • 2. Run AKA

Cert Request Cert Response

  • 3. Do certificate enrollment via the

(mutually) authenticated TLS channel

MitM

IMSI RAND, AUTN RES

[ANN03] “Man-in-the-middle in Tunnelled Authentication Protocols”, Security Protocols, 2003

Channel binding: Use of cryptographic binding to compose two authenticated channels

slide-31
SLIDE 31

31

Channel binding: the aftermath

  • Fiery reception at Security Protocols workshop!

– “But you are using the worst rackets in industry as a justification for what you’re doing. There are all sorts of people just generating garbage protocols, a couple of which you have already mentioned here. We’re trying to reverse their work, whereas you’re trying to advocate we use all these garbage protocols.”

– For an entertaining read, see transcript of discussion during my talk at SPW ’03!

  • Impact in IETF

– Closing down of ipsra working group; channel binding in IKEv2 – Continued attention: e.g., RFC 6813

slide-32
SLIDE 32

32

Channel Binding: lessons learned

  • Negative results are useful for security practitioners
  • Standardization can make a good idea see light of day
  • (Tech transfer) Impact Capturing researcher interest

Skip to summary

→ /

slide-33
SLIDE 33

33

Five examples

  • Optimistic Fair Exchange
  • Generic Authentication Architecture
  • Channel Binding in Protocol Composition
  • Secure Device Pairing
  • On-board Credentials
slide-34
SLIDE 34

34

Secure Device Pairing

How can the process of pairing two devices be made easy to use without compromising security or adding to cost?

slide-35
SLIDE 35

35

Secure Device Pairing: ca. 2005

slide-36
SLIDE 36

36

Naïve usability measures damage security

slide-37
SLIDE 37

37

Naïve security erodes usability

Car kits

– Allow hands-free phone usage in cars – Retrieve/use session keys from phone SIM – require higher level of security

  • users must enter 16-character

passcodes

More secure = Harder to use?

Cost: Calls to Customer Support

slide-38
SLIDE 38

38

Asymmetric crypto Key transport via OOB channel Unauthenticated Authenticated Symmetric crypto only Unauthenticated Authenticated Key establishment Key agreement

Short keys vulnerable to passive attackers Secure against passive attackers

Key establishment for secure pairing ~2005

slide-39
SLIDE 39

39

Authentication by comparing short strings

vA and vB are short strings (e.g., 4 digits),

User approves acceptance if vA and vB match A man-in-the-middle can easily defeat this protocol

  • k/not-ok
  • k/not-ok

A B

vA← H(A, B,PKA|PK’B) vB← H(A, B,PK’A|PKB) vA vB PKA PKB

slide-40
SLIDE 40

41

MitM in comparing short strings

PKC1

C

PKA

A B

PKC2 PKB

Pick PKC2 by trial-and-error: H(A, B,PKA|PKC2) = v’B v’B ← H(A, B,PK’A|PKB) PKC1 v’A ← H(A, B,PKA|PK’B) PKC2

  • k
  • k

v’A v’B

v’B ← H(A, B,PKC1|PKB)

Guess a value SKC2/PKC2 until H(A, B, PKA|PKC2) = v’B If v’B is n digits, attacker needs at most 10n guesses; Each guess costs one hash calculation A typical modern PC can calculate 100000 MACs in 1 second

slide-41
SLIDE 41

43

Authentication by comparing short strings

User approves acceptance if vA and vB match 2-l (“unconditional”) security against man-in-the-middle (l is the length of vA and vB) h() is a hiding commitment; in practice SHA-256

[LAN05] MANA IV, IACR report; [LN06] CANS ‘06

  • k/not-ok
  • k/not-ok

A

key agreement: exchange PKA, PKB

B

hA RB RA Calculate commitment hA← h(A, RA)

vA← H(A,B,PKA|PK’B,RA,R’B)

Verify commitment h’A≟ h(A, R’A) Abort on mismatch

vB← H(A,B,PK’A|PKB,R’A,RB)

vA vB Choose long random RA Choose long random RB

Send commitments Open commitments

slide-42
SLIDE 42

44

Key establishment for secure pairing ~2008

Unauthenticated Diffie-Hellman Authenticated Diffie-Hellman short-string comparison short PIN Out-of-band channel WiFi Protected Setup “Push-button”  NFC Bluetooth 2.1 “Just-works”   NFC Wireless USB  USB Cable

[AN10] “Security associations for wireless devices” (Overview, book chapter) [SVA09] “Standards for security associations in personal networks: a comparative analysis” IJSN 4(1/2):87-100 (survey of standards)

slide-43
SLIDE 43

45

Secure Pairing: the aftermath

  • Widely deployed (Bluetooth SSP, WiFi Protected Setup)
  • Improving usability/security  fundamental protocol

changes

[UKA07] “Usability Analysis of Secure Pairing Methods”, USEC ‘07

slide-44
SLIDE 44

46

Secure Device Pairing: lessons learned

  • Address pain points - builds credibility with stakeholders
  • Don’t just guess security requirements; Ask stakeholders
  • Desiderata for deployment and research can be different
  • Standardization can make a good idea see light of day

Skip to summary

slide-45
SLIDE 45

47

Five examples

  • Optimistic Fair Exchange
  • Generic Authentication Architecture
  • Channel Binding in Protocol Composition
  • Secure Device Pairing
  • On-board Credentials
slide-46
SLIDE 46

48

On-board Credentials

Can we safely open up widely deployed secure hardware

  • n mobile devices for use by app developers?
slide-47
SLIDE 47

49

Authentication on the Internet

Username/password rules the Internet

  • Cheap, easy-to-deploy, portable
  • Annoying, vulnerable (phishing, dictionary attacks, password-

stealing trojans…) Attempts to improve usability and security

  • Password-managers
  • Single Sign-On
  • Better protocols
slide-48
SLIDE 48

50

Hardware tokens

Deployed for specific-services

– More secure, sometimes more intuitive – More expensive, usually no trusted path to user, – Single-purpose or issuer-controlled

SW-only credentials HW credentials

slide-49
SLIDE 49

51

Trusted hardware is widely deployed

  • Trusted Execution Environments on

smartphones have available for a decade

– Introduced for manufacturer and operator needs – Not accessible for app developers

[EKA14] “The Untapped Potential of Trusted Execution Environments on Mobile Devices”, IEEE S&P Magazine, Jul-Aug 2014

slide-50
SLIDE 50

52

? ?

Secure yet inexpensive

On-board Credentials

credential platform that leverages existing mobile TEEs A An open

slide-51
SLIDE 51

53

Centralized provisioning (smart cards)

Central authority Service provider Service user device Service provider Service provider Service user device Service provider Service provider Service provider

Open provisioning (On-board Credentials)

Centralized vs. open provisioning

slide-52
SLIDE 52

54

On-board Credentials (ObC) architecture

Mobile device Driver App Mobile OS Rich execution environment (REE) App Mobile device hardware with TEE support ObC Interpreter ObC scheduler

Trusted app dynamic state Trusted app persistent store I/O data Interpreted code Interpreter state Loaded trusted app

ObC API

Provisioning, execution, sealing

Trusted execution environment (TEE)

Device key & Device cert

slide-53
SLIDE 53

55

ObC Provisioning (1/2)

Basic Idea: the notion of a family of credential secrets and credential programs endorsed to use them

Family secrets Family programs

FK

Principle of same-origin policy

slide-54
SLIDE 54

56

  • 1. Certified device key + user authentication

PK User device Service provider

  • 2. Provision new family

Enc(PK, FK)

establish new security domain (family)

  • 4. Provision trusted applications

AuthEnc(FK, hash(app)) + app

  • 3. Provision new secrets

AuthEnc(FK, secret)

Certified device key PK Pick new ‘family key’ FK Encrypt family key Enc(PK, FK) Authorize trusted applications AuthEnc(FK, hash(app)) install trusted apps, grant access to secrets Encrypt and authenticate secrets AuthEnc(FK, secret) install secrets, associate them to family

  • Ekberg. Securing Software Architectures for Trusted Processor
  • Environments. Dissertation, Aalto University 2013.
  • Kostiainen. On-board Credentials: An Open Credential Platform for

Mobile Devices. Dissertation, Aalto University 2012. [KEAR09] “On-board Credentials with Open Provisioning”. ASIACCS 2009.

Open provisioning model

slide-55
SLIDE 55

57

ObC: the aftermath

  • Initial prototypes ca. 2008

– RSA SecurID, SoftSIM

  • (Silently) deployed in recent Lumia devices

– Used for, e.g., MirrorLink attestation

  • Stumbling blocks:

– “who takes liability?” “avoid stepping on toes”

  • Related recent standardization

– Global Platform device committee – Open provisioning is elusive

TEE entry

App Mobile OS REE App Trusted OS

Trusted app Trusted app

TEE Device hardware

[GP12] “A New Model: The Consumer-Centric Model and How It Applies to the Mobile Ecosystem”

slide-56
SLIDE 56

58

ObC: Lessons Learned

  • Address pain points - builds credibility with stakeholders
  • Politics can suffocate a good idea
  • Standardization can make a good idea see light of day
slide-57
SLIDE 57

59

Lessons Learned

  • How to choose the “right” problems?

– Don’t just guess security requirements; Ask stakeholders – Desiderata for deployment and research can be different – “90-10 rule” applies to deploying security

  • How to identify “good” results?

– Negative results are useful for security practitioners – Capturing researcher interest (Tech transfer) Impact – (Tech transfer) Impact Capturing researcher interest

  • How to find paths to deployment?

– Address pain points - builds credibility with stakeholders – (Standardization) Politics can suffocate a good idea – Standardization can make a good idea see light of day

http://asokan.org/asokan/research

→ / → /