43
Device(-to-Device) Authentication Nitesh Saxena Nitesh Saxena Polytechnic Institute of NYU

Device(-to-Device) Authentication

  • Upload
    stu

  • View
    109

  • Download
    0

Embed Size (px)

DESCRIPTION

Device(-to-Device) Authentication. Nitesh Saxena Polytechnic Institute of NYU. The Problem: “Pairing”. How to bootstrap secure communication between Alice’s and Bob’s devices when they have no prior context no common trusted CA or TTP. Examples (single user setting) - PowerPoint PPT Presentation

Citation preview

Page 1: Device(-to-Device) Authentication

Device(-to-Device) Authentication

Nitesh SaxenaNitesh SaxenaPolytechnic Institute of NYU

Page 2: Device(-to-Device) Authentication

The Problem: “Pairing”

How to bootstrap secure communication between Alice’s and Bob’s devices when they have no prior context no common trusted CA or TTP

Examples (single user setting)

Pairing a bluetooth cell phone with a headset

Pairing a WiFi laptop with an access point

Pairing two bluetooth cell phones

Page 3: Device(-to-Device) Authentication

PIN-based Bluetooth Pairing

Page 4: Device(-to-Device) Authentication

Authentication

1

2

Page 5: Device(-to-Device) Authentication

(In)Security of PIN-based Pairing

Long believed to be insecure for short PINs Why?

First to demonstrate this insecurity; Shaked and Wool [Mobisys’05]

Page 6: Device(-to-Device) Authentication

Attack Implementation

Coded in C on linux platform Given a piece of code for SAFER algorithm,

implemented the encryption functions E22, E21, E1

Hardware for sniffing: bluetooth packet analyzer with windows software

Log Parser (in perl): reads the sniffer log, and parses it to grab IN_RAND, RAND_A \xor Kinit, RAND_B \xor Kinit, AU_RAND_A, AU_RAND_B, SRES

Page 7: Device(-to-Device) Authentication

Timing Measurements of Attack Theoretically: O(10^L), with decimal digits

Assuming the PINs are chosen uniformly at random Empirically, on a PIII 700MHz machine:

No. of digits in PIN (L)

CPU time (sec)

4 1.294

5 12.915

6 129.657

7 1315.332

Page 8: Device(-to-Device) Authentication

Timing of Attack and User Issues

ASCII PINs: O(90^L), assuming there are 90 ascii characters that can be typed on a mobile phone Assuming random pins

However, in practice the actual space will be quite small Users choose weak PINs; User find it hard to type in ascii characters on

mobile devices Another problem: shoulder surfing (manual or

automated)

Page 9: Device(-to-Device) Authentication

The Problem: “Pairing”

Idea make use of a physical channel between devices with least involvement from Alice and Bob

Authenticated: Audio, Visual, Tactile

Page 10: Device(-to-Device) Authentication

Seeing-is-Believing (McCune et al. [Oakland’05])

Protocol (Balfanz, et al. [NDSS’02])

A B

pkA

pkB

H(pkA)

H(pkB)

Insecure Channel

Rohs, Gfeller [PervComp’04]

Secure if H(.) weak CR

80-bit for permanent 48-bit for ephemeral

Authenticated Channel

Page 11: Device(-to-Device) Authentication

Challenges

OOB channels are low-bandwidth! One of the device might not have a receiver! Neither has a receiver and only one has a

good quality transmitter (Non-)Universality!

Usability Evalutation Protocols might be slow – multiple executions! Multiple devices – scalability!

Page 12: Device(-to-Device) Authentication

Challenges

OOB channels are low-bandwidth! One of the device might not have a One of the device might not have a

receiver!receiver! Neither has a receiver and only one has Neither has a receiver and only one has

a good quality transmittera good quality transmitter (Non-)Universality!(Non-)Universality!

Usability!Usability! Multiple devices -- scalabilityMultiple devices -- scalability

Page 13: Device(-to-Device) Authentication

Protocol: Short Authenticated Strings (SAS)

A B

pkA,cA

pkB,cB

dA

dB

Secure (with prob. 1-2-k )

Insecure Channel

Authenticated Channel

SASA

SASB

cA,dA comm(pkA,RA)

RA ε {0,1}k

RB ε {0,1}k

cB,dB comm(pkB,RB)

SASA = RA RB

SASB = RA RB

Accept (pkB,B) if

SASB = RA RB

Accept (pkB,A) if

SASA = RA RB

Vaudenay [Crypto’05]

RA open(pkA,cA,dA)

RB open(pkB,cB,dB)

Laur et al. [eprint’05]

Pasini-Vaudenay [PKC’06]

Page 14: Device(-to-Device) Authentication

Challenges

OOB channels are low-bandwidth!OOB channels are low-bandwidth! One of the devices might not have a receiver!

e.g., keyboard-desktop; AP-phone Neither has a receiver and only one has a Neither has a receiver and only one has a

good quality transmittergood quality transmitter (Non-)Universality!(Non-)Universality!

UsabilityUsability Protocols might be slow – multiple executions!Protocols might be slow – multiple executions! Multiple devices -- scalabilityMultiple devices -- scalability

Page 15: Device(-to-Device) Authentication

Unidirectional SAS (Saxena et al. [S&P’06])

A B

pkA , H(RA)

pkB, RB

RA

hs(RA,RB;pkA,pkB)Galois MAC

Success/Failure

Secure (with prob. 1-2-15) if 15-bit AU hs()

Blinking-LightsInsecure Channel

Authenticated Channel

User I/O

Muliple Blinking LEDs (Saxena-Uddin [MWNS’08])

Page 16: Device(-to-Device) Authentication

Challenges

OOB channels are low-bandwidth!OOB channels are low-bandwidth! One of the device might not have a One of the device might not have a

receiver!receiver! Neither has a receiver and only one has

a good quality transmitter e.g., AP-laptop/PDA

Usability!Usability! Multiple devices -- scalabilityMultiple devices -- scalability

Page 17: Device(-to-Device) Authentication

A Universal Pairing Method Prasad-Saxena [ACNS’08] Use existing SAS protocols The strings transmitted by both devices over

physical channel should be the same, if everything is fine different, if there is an attack/fault

Both devices encode these strings using a pattern of Synchronized beeping/blinking The user acts as a reader and verifies if the two

patterns are same or not

Page 18: Device(-to-Device) Authentication

Is This Usable?

Our test results are promising Users can verify both good test cases and bad

ones Blink-Blink the easiest

Very low errors (less than 5%) Execution time ~22s

Then, Beep-Blink Very low errors with a learning instance

(less than 5%) Execution time ~15s

Beep-Beep turns out error-prone

Page 19: Device(-to-Device) Authentication

Further Improvement: Auxiliary Device

Saxena et al. [SOUPS’08]

Auxiliary device needs a camera and/or microphone – a smart phone Does not need to be trusted with cryptographic data Does not need to communicate with the devices

A B

S

ucce

ss/F

ailu

re

Page 20: Device(-to-Device) Authentication

Further Improvement: Auxiliary Device

Blink-Blink ~14s (compared to 22s of manual scheme)

Beep-Blink Approximately takes as long as the same as manual scheme No learning needed

In both cases, Fatal errors (non-matching instances decided as matching)

are eliminated Safe errors (matching instances decided as non-matching)

are reduced It was preferred by most users

Page 21: Device(-to-Device) Authentication

Challenges

OOB channels are low-bandwidth!OOB channels are low-bandwidth! One of the device might not have a One of the device might not have a

receiver!receiver! Neither has a receiver and only one has Neither has a receiver and only one has

a good quality transmittera good quality transmitter (Non-)Universality!(Non-)Universality!

Comparative Usability! Multiple devices -- scalabilityMultiple devices -- scalability

Page 22: Device(-to-Device) Authentication

Comparative Usability Study: Summary

Kumar et al. [Percom’09] Manual Comparison or Transfer

Numbers (Uzun et al. [USEC’06]) Spoken/Displayed Phrases

L&C (Goodrich et al. [ICDCS’06]) Images (Random Arts, see http://www.random-art.org/) Synchronized Comparison

Blink-Blink and Beep-Blink BEDA (Soriente et al. [IWSSI’07])

Automated SiB (McCune et al. [S&P’05]) Blinking Lights (Saxena et al. [S&P’06]) Audio Transfer (Soriente et al. [IWSSI’07])

Automated testing framework 20 participants; over a 2 month long period

Surprise: Users don’t like automated methods: handling cameras not easy

Page 23: Device(-to-Device) Authentication

Comparative Usability Study: Time

Page 24: Device(-to-Device) Authentication
Page 25: Device(-to-Device) Authentication

Comparative Usability Study: Ease-of-Use

Page 26: Device(-to-Device) Authentication

Cluster Analysis

Page 27: Device(-to-Device) Authentication

Conclusions from the study Both devices have a display

Numeric Comparison One device does not have a display but an audio interface

L&C Display-Speaker if one has a display and the other has a speaker

Audio Transfer if microphone is available on one, and speaker on the other

Interface constraint device(s) BEDA Vibrate-Button, if possible BEDA LED-Button otherwise

Page 28: Device(-to-Device) Authentication

Challenges

OOB channels are low-bandwidth!OOB channels are low-bandwidth! One of the device might not have a One of the device might not have a

receiver!receiver! Neither has a receiver and only one has Neither has a receiver and only one has

a good quality transmittera good quality transmitter (Non-)Universality!(Non-)Universality!

Usability!Usability! Multiple devices – scalability

Page 29: Device(-to-Device) Authentication

Secure Group Association

Small groups (> 2) of users + devices phones, PDAs, laptops

Common use-cases: Share content as part

of an ad hoc meeting Multiplayer games Multimedia streaming

Two user tasks: Comparison of SAS strings Verification of group size

29

Page 30: Device(-to-Device) Authentication

Usability Evaluation of Group Methods Usability evaluation of FIVE simple

methods geared for small groups (4-6 members)

Three leader-based

&

Two peer-based

30

Page 31: Device(-to-Device) Authentication

Study Goals

How well do users perform the two tasks when multiple devices and users are involved:

Comparison/Transfer of SAS strings?

Counting number of group members?

31

Page 32: Device(-to-Device) Authentication

Leader-Based Methods (1/3)

Leader-VerifySize-VerifySAS (L-VS-VS): Leader announces 5-digit SAS, group members verify the displayed SAS and the group size.

32

1. Enter the group size: 42. Announce the

verification code: 397153. Accept or Reject

1. Group size is: 4,

verification code is: 397152. Accept or Reject

The Verification Code is: 39715

Page 33: Device(-to-Device) Authentication

Leader-Based Methods (2/3)

Leader-VerifySize-CopySAS (L-VS-CS): Leader announces SAS, members enter it to their devices and verify group size.

33

1. Enter the group size: 42. Announce the

verification code: 397153. Accept or Reject

1. Enter verification code: 39715

2. Group Size is: 42. Accept or Reject

The Verification Code is: 39715

Page 34: Device(-to-Device) Authentication

Leader-Based Methods (3/3)

Leader-VerifySize-AudioSAS (L-VS-AS): Leader’s device broadcasts SAS (over audio), other devices record & verify. Users only verify group size.

34

1. Enter the group size: 43. Accept or Reject

1. Group Size is: 42. Accept or Reject

Page 35: Device(-to-Device) Authentication

Peer-Based Methods (1/2)

Peer-VerifySize-VerifySAS (P-VS-VS): Each peer verifies group size and compares SAS with left-hand peer.

35

1. Your code is: 39715Does it match with the code of the person next to you?2. Group size is: 43. Accept or Reject

Wh

at is

you

r co

de?

My

cod

e is

39

71

5

Wh

at is your co

de?

My co

de is 3

97

15

What is your code?

My code is 39715

What is your code?

My code is 39715

Page 36: Device(-to-Device) Authentication

Peer-Based Methods (2/2)

Peer-InputSize-VerifySAS (P-IS-VS): Each peer enters group size and compares SAS with left-hand peer.

36

1. Enter Group Size: 42. Your code is: 39715Does it match with the code of the person next to you?3. Accept or Reject

Wha

t is

your

cod

e?

My

cod

e is

397

15

What is your code?

My cod

e is 39715

What is your code?

My code is 39715

What is your code?

My code is 39715

Page 37: Device(-to-Device) Authentication

Usability Testing Details

64 Participants 7 four-person groups 6 six-person groups

Nokia smart phones communicating over Wi-Fi Test Cases:

Normal Simulated Insertion Attack Simulated Evil-Twin Attack

User Feedback SUS questionnaire (system usability scale) Additional perception of security question

37

Page 38: Device(-to-Device) Authentication

Test Results (Normal Case)

38

Page 39: Device(-to-Device) Authentication

Test Results (Attack Cases)

39

Page 40: Device(-to-Device) Authentication

Combined Usability Metrics

40

Better

• Interesting result: peer based methods performed better in general

Page 41: Device(-to-Device) Authentication

Summary of results

Peer-based methods generally better than Leader-based ones

P-IS-VS has the best overall usability L-VS-CS has the worst L-VS-VS and L-VS-AS are natural choices if

peer-based methods are not suitable L-VS-VS > L-VS-AS

Over-counting unlikely in small groups Entering group size is better than verifying it

41

Page 42: Device(-to-Device) Authentication

Other open questions

Rushing user behavior (Saxena-Uddin [ACNS’09])

Hawthorne effect Security priming More usability tests

Page 43: Device(-to-Device) Authentication

References

Many of them on my publications page