Distinguishing Users with Capacitive Touch Communication Tam Vu , - - PowerPoint PPT Presentation

distinguishing users with capacitive touch communication
SMART_READER_LITE
LIVE PREVIEW

Distinguishing Users with Capacitive Touch Communication Tam Vu , - - PowerPoint PPT Presentation

ACM MobiCom 2012 Distinguishing Users with Capacitive Touch Communication Tam Vu , Akash Baid, Simon Gao, Marco Gruteser, Richard Howard, Janne Lindqvist, Predrag Spasojevic, Jeffrey Walling WINLAB, Rutgers University


slide-1
SLIDE 1

Tam Vu, Akash Baid, Simon Gao, Marco Gruteser, Richard Howard, Janne Lindqvist, Predrag Spasojevic, Jeffrey Walling

WINLAB, Rutgers University

Distinguishing Users with Capacitive Touch Communication

www.winlab.rutgers.edu/~tamvu ACM MobiCom 2012

slide-2
SLIDE 2

NEWS

If only the phone knows who is interacting with it by itself ...

slide-3
SLIDE 3

Current identification/authentication methods

Users switch from one device to another more often

slide-4
SLIDE 4

Other identification/authentication methods

  • Bluetooth token
  • Accidentally authenticate devices

within the close proximity

  • Biometric based
  • Require additional hardware or space
slide-5
SLIDE 5

Other identification/authentication methods

  • NFC-based methods
  • Require NFC hardware

What could be a more intuitive way of identifying users for today’s off-the-shelf devices ?

slide-6
SLIDE 6

Identifying users through their touches

Capacitive touch sensing is pervasive

Associating user identifier to touches Capacitive Touch Communication (Hardware token + Software decoder)

slide-7
SLIDE 7
  • A wearable hardware token
  • Generates electrical pulses
  • Spoofs the touch screen to create

touch events

  • Software decoder
  • Retrieves originally transmitted

bits from the touch events

  • No modification to hardware or

firmware of off-the-shelf devices

Capacitive Touch Communication

Generates electrical pulses Touch events are registered and decoded

Overview

slide-8
SLIDE 8

Capacitive touch screen background

Creating Artificial Touches

Vsig

S1 S2 S3 Ci

  • Sensors measure the additional capacitance of a human body
  • Array of conducting electrodes behind an insulating glass layer
  • Structure of a touch event registered to the operating system

Timestamp Event Type Pointer ID (X,Y) coordinates Touch Size Touch Amplitude

slide-9
SLIDE 9

Creating Artificial Touches

“Spoof” the touch screen

Vsig

S1 S2 S3 Ci

  • Affecting the capacitance measurement by

injecting signal to create artificial touch events

slide-10
SLIDE 10

Creating Artificial Touches

Experimented with different signal sources

  • Different waveforms
  • Voltages: 1-20Vpeak to peak
  • Frequency: 100Hz to 120KHz

Samsung Galaxy Tab 10.1'

slide-11
SLIDE 11

Creating Artificial Touches

Experimented with different signal sources

10

2

10

3

10

4

10

5

5 10 15 20 25 30 35 40 45

Electrical pulse frequency (Hz) Average number of events per second

41.92 events/s

Touch screen responses to 10 Vp-p square wave signals at frequency from 100Hz to 120KHz

slide-12
SLIDE 12

Encoding bits with touch events

Input bit sequence Transmitter (A hardware token) Channel (Touch screen hardware and firmware) Receiver (Software decoder) Received bit sequence Electrical Pulses Artificial Touch Events

Input

1 1 1

...

bit period

Tx Signal ...

Output

1 1 1

On-Off Keying modulation Threshold-based demodulation

slide-13
SLIDE 13

Encoding bits with touch events

Input bit sequence Transmitter (A hardware token) Channel (Touch screen hardware and firmware) Receiver (Software decoder) Received bit sequence Electrical Pulses Artificial Touch Events

Threshold-based demodulation

  • Unsynchronized
  • Unknown processing delay
  • Highly correlated channel
  • Variable delay between symbols

On-Off Keying modulation

  • Low bandwidth
  • Offline calibration to select thresholds
  • Simultaneously synchronize and demodulate
slide-14
SLIDE 14

Offline Calibration

  • Transmit a known bit sequence.
  • Synchronize Tx and Rx using a sliding window:

– The correct bit synchronization maximizes number of events in all 1s and minimize that of 0s

  • Count the number of events in each bit 0s and 1s

Determine number events for ones and zeros

slide-15
SLIDE 15

Offline Calibration

Determine number events for ones and zeros

1 2 3 4 5 6 7 8 9 10 11 12 13 14 50 100 150 200 250 300 350 400 Number of events in one bit Fequency (times) bit 0 bit 1

Number of events in bit one and bit zero for transmissions at 4 bits/s

  • Offline calibration to select thresholds
  • Simultaneously synchronize and demodulate
slide-16
SLIDE 16

Minimum Distance Demodulation

  • Assumption:

– All possible messages are known

  • Demodulation:

– Try all possible starting points – At each starting point, compute the correlation between the event sequence and all messages – Select the message and starting point that give the highest correlation (decoded message)

Simultaneously synchronize and demodulate

… 1 1 1 1 … Message = 011 1e = 7 0e = 1 Possible Messages = {001, 011, 111} ... .....|||||||||||||||...||.|..|||||||||||||||.......||.. ...

Example

5 7 6

Starting Position

001 011 111

1

11 5 2

2 3

...

Starting Position

001 011 111

1

11 5 2

...

... ... ...

202

18 6 ... ... ... ...

7 7 1

slide-17
SLIDE 17

Evaluation with Function Generator

  • Metrics:

– Detection Rate & False Acceptance Rate

  • Methodology:

– Messages with length of 2-5 bits. – Repeatedly transmitted 5000 times for each message

slide-18
SLIDE 18

Evaluation with Function Generator

4 bits/s 5 bits/s 8 bits/s 10 bits/s 10 20 30 40 50 60 70 80 90 100 Detection Rate (%) 2 bits 3 bits 4 bits 5 bits

  • Bit period gets smaller as the data rate increases
slide-19
SLIDE 19

Evaluation with Function Generator

4 bits/s 5 bits/s 8 bits/s 10 bits/s 1 2 3 4 5 False Acceptance Rate (%) 2 bits 3 bits 4 bits 5 bits

  • Bit period gets smaller as the data rate increases
slide-20
SLIDE 20

Prototype

Building a wearable hardware token

9V E C B TI-MSP430 F2722 Ring Surface 30pF 560 Ω 180 Ω

slide-21
SLIDE 21

Prototype

Building a wearable hardware token

  • The ring generates pulses with longer rise time
  • Contact point is not as good as of the AFG electrode
slide-22
SLIDE 22

Prototype

Building a wearable hardware token

4 bits/s 5 bits/s 20 40 60 80 100 Detection Rate (%) 2 bits 3 bits 4 bits 5 bits

slide-23
SLIDE 23

Prototype

Building a wearable hardware token

4 bits/s 5 bits/s 0.5 1 1.5 2 False Acceptance Rate (%) 2 bits 3 bits 4 bits 5 bits

  • Can be improved with better hardware design
  • Trading data rate for DR and FAR by ECC
slide-24
SLIDE 24

Possible applications

  • Parental control applications

– Sharing devices with your children/spouse – 2-3 bits to be transmitted

  • Weak authentication

– Pincode level (i.e ~13 bit of entropy)

Parental control

slide-25
SLIDE 25

Possible applications

  • Distinguishing different types of tokens

– Board games on touch screens – Different coloring styluses – A few bits to be transmitted

slide-26
SLIDE 26

Possible applications

  • Multi-user games/collaboration

– 1-2 bits to be transmitted

slide-27
SLIDE 27

Transmitting through a finger

  • The electrode in contact with a human finger

Samsung Galaxy Tab 10.1'

  • Detecting the presence of the ring when the user swipe
slide-28
SLIDE 28

Transmitting through a finger

200 400 600 800 1000 1200 1400 1600 20 40 60 80 100 Swipe Duration (ms) Percentage Detection rate False positive rate

  • Ring-presence detection rate

92% 97%

slide-29
SLIDE 29

Conclusion

Capacitive Touch Communication

Parental control Multi-user games Device authentication Vehicular security Home security Medical security Portable SIMCARD Payment Credit Ring Signet Ring

slide-30
SLIDE 30

Thank you !

Demo video is available on YouTube at:

http://tinyurl.com/8nc65ro

www.winlab.rutgers.edu/~tamvu ACM MobiCom 2012