Universal Device Pairing using an Auxiliary Device

advertisement
Universal Device Pairing using an
Auxiliary Device
Nitesh Saxena, Md. Borhan Uddin and Jonathan Voris
Polytechnic Institute of New York University
SOUPS July 24, 2008
The "Pairing" Problem
How to bootstrap secure communication between two
wireless devices when they have
 No prior association
 No common trusted third party
Examples
o Pairing a Bluetooth cell phone with a headset
o Pairing a WLAN laptop with an access point
2
Main Solution Idea
 Utilize an Out-Of-Band (OOB) channel between the
devices
o Created with human perceptible (audio, visual, tactile) output
o The OOB channel is physically authenticatable
 Place a minimal burden on device users
o Usability is of extreme importance
3
Security Model
 Devices are connected by two channel types:
o An insecure, high bandwidth wireless channel
o An authenticable, (typically) low bandwidth OOB channel
 Adversary has complete control over the wireless
channel
o Can eavesdrop on, delay, drop, replay, reorder, and
modify messages
 Adversary has a limited control over the OOB
channel
o Can not modify messages, but can eavesdrop on, delay,
drop, replay, and reorder messages
4
Prior Work
 Seeing-is-Believing by McCune et al. [Oakland’05]
o Based on protocol by Balfanz et al. [NDSS’02]
pkA
pkB
A
H(pkA)
Insecure Channel
B
Authenticated Channel
H(pkB)

Secure with:
o
A weakly CR H()
o
An 80 bit permanent key
o
A 48 bit ephemeral key
5
SAS Protocol
 Short Authenticated Strings (SAS) pairing protocol
by Pasini-Vaudenay [PKC’06]
pkA,H(RA,pad)
Wireless Channel
Unidirectional OOB Channel
pkB,RB
A
An adversary can not succeed with
RA,pad
SAS A  RB  H R A ( pkB )
B

SASB  RB  H R A ( pkB )
Accept (pkB,B) if
SASB  RB  H R A ( pkB )
a probability greater than 2-k
k=15 offers reasonable security in
practice
Accept (pkB,A) if
SAS A  RB  H R ( pkB )
A
6
Drawbacks of Prior Research
 Geared for specific pairing scenarios
 None are universally applicable
o Require hardware and interfaces not common across all
devices
 User doesn’t know what method to use with what pair
of devices  confusion!
 We believe: universality would immensely improve
security as well as usability
7
A Universal Pairing Method (1)
Prasad-Saxena [ACNS’08]
 Use existing SAS protocols
 The strings transmitted by both devices over OOB
channel are
o the same, if everything is fine
o different, if there is an attack or fault
 Both devices encode these strings using a pattern of
o Synchronized beeping/blinking
o The user acts as a reader and verifies if the two patterns
are the same or not
8
A Universal Pairing Method (2)
 Usability?
o Previous work has shown that human users are capable of
efficiently performing
 Blink-Blink
 Beep-Blink
 However, in practice users will commit mistakes
o Due to a slight distraction, for example
 Motivation for this paper: can we do better?
9
The Proposed Scheme
 Automate the prior scheme based on manual
comparison
 Utilize an Auxiliary Third Device (ATD) to perform the
comparison
Device1
Success/Failure
or
Device2
ATD
10
Manual vs Automated
or
Device1
Device2
Manual Pairing using Blink-Blink or Audio-Blink
or
Device1
Device2
Success/Failure
ATD
Automated Pairing using Blink-Blink or Audio-Blink
11
Role of the User
 When performing automated pairing, a user is
responsible for
o Pressing a button on one device to start pairing
o Adjusting the ATD’s inputs to focus on the devices being
paired
o Pressing a button to activate the ATD’s receivers
o Pressing a button on one device to start SAS transmission
o Accepting or rejecting the pairing session based on the
ATD’s output
 Users do not have to remember what steps to take
o The ATD will provide instructions
12
ATD Requirements
 In the Blink-Blink setup, the ATD requires a camera
as a receiver
 For the Audio-Blink setup, the ATD requires a
camera and a microphone as receivers
 Both require a screen or speaker to output the pairing
outcome
 Today’s camera phones are suitable ATDs
 The ATD does not connect over the wireless channel
with the devices being paired
 The ATD does not need to trusted with any
cryptographic secret
13
Implementation
 For testing, a laptop computer was used as an ATD
o 2.0 megapixel, 30 FPS webcam
 Devices being paired were simulated using a desktop
computer
o Visual output interface: LEDs connected via a parallel port
o Audio output interface: Desktop speakers
14
Experimental Setup
ATD’s receivers:
Camera and
microphone
Overall setup
Speaker used to
simulate an
audio output
interface
Laptop used
as an ATD
LEDs used to simulate visual output interfaces
15
Encoding Method
 A ‘1’ SAS bit is expressed by activating the output
interface for a given signal interval
 A ‘0’ SAS bit is represented by disabling the output
interface for the duration of the signal interval
Optimal intervals determined experimentally
o Dependant on the ATD’s processing speed
 Which output interfaces are used depends on which
pairing scheme is in use
 In our experiments, we used a 15-bit SAS
16
Visual Data Processing/Decoding
 Visual data was encoded using blinking LEDs
o Signal interval: 250 ms
 The ATD used saturation and luminance
measurements to detect LEDs and capture their
encoded SAS data
 Overall transmission time: 4.5 seconds to transmit
and capture 18 frames
o 15 data frames
o 3 control frames: All-OFF, All-ON, SYNC
17
Audio Data Processing/Decoding
 Audio data was encoded as spoken English words
using the Microsoft Speech API (SAPI) 5.0 Text-ToSpeech engine
o Signal interval: 400 ms
 The ATD captured the audio data via a microphone
and decoded it using the SAPI Speech Recognition
engine
 Overall transmission time: 7.2 seconds
18
Usability Testing
 Schemes tested with 20 subjects
 The same tests were performed with the manual and
automated setup
 Each subject was presented 24 test cases
o 20 reliability tests for the Blink-Blink and Audio-Blink
schemes
o 4 tests for the robustness of the ATD
 Test goals:
o Determine if the ATD could be used to reliably pair devices
o Determine which scheme:
 Demonstrated the least amount of errors
 Safe errors or false positives, and
 Fatal errors or false negatives
 Users qualitatively preferred
19
Usability Testing Results
Results of Automated Comparison Tests
Combination
Average Timing
(seconds)
Safe Error Rate
(%)
Fatal Error Rate
(%)
Blink-Blink
13.079 (sd=3.524)
1.43
0.00
Audio-Blink
15.261 (sd= 3.387)
7.14
0.00
Results of Manual Comparison Tests
Combination
Average Timing
(seconds)
Safe Error Rate
(%)
Fatal Error Rate
(%)
Blink-Blink
20.983 (sd=3.107)
2.00
2.00
Beep-Blink
13.583 (sd=2.659)
1.00
20.00
 80% of the subjects (16 out of 20) preferred the automated scheme
 20% of the subjects (4 out of 20) preferred the manual scheme.
20
Discussion (1)
 Results indicate that the use of an ATD makes the
pairing process safer and less burdensome
o No fatal errors
o Reduced safe error rate
 The higher safe error rate of Audio-Blink is attributable
to the ATD picking up background noise
o The ATD’s audio robustness is expected to improve when
implemented on a smartphone as opposed to the current
proof-of-concept
o Users of this scheme must be sure of the origin of the SAS
audio to guard against attacks
21
Discussion (2)
 Whether the ATD is a help or hindrance in terms of
speed is dependant on its decoding rate for a
particular setup
o Blink-Blink: Automated is faster than manual due to the fast
visual decoding process
o Audio-Blink: Automated is slower than manual due to the
relatively slower audio decoding process
22
Conclusion
 Both the manual and automated schemes are
universally applicable to any pairing scenario
 Use of an ATD is not mandatory, but test results show
it increases usability when available
 An ATD can handle SAS data that is longer than what
a human user can
23
Thank you!
24
Download