Extracting a Secret Key from a Wireless Channel Suhas Mathur suhas@winlab.rutgers.edu W. Trappe, N. Mandayam (WINLAB) Chunxuan Ye, Alex Reznik (InterDigital) Suhas Mathur (WINLAB) Secret bits from the channel 12/10/08 1 / 28
Introduction Suhas Mathur (WINLAB) Secret bits from the channel 12/10/08 2 / 28
Alice & Bob have never met. Alice Bob Suhas Mathur (WINLAB) Secret bits from the channel 12/10/08 3 / 28
Alice & Bob have never met. They’d like to exchange a secret message. Alice Bob Suhas Mathur (WINLAB) Secret bits from the channel 12/10/08 3 / 28
Alice & Bob have never met. They’d like to exchange a secret message. Alice Bob Eve Suhas Mathur (WINLAB) Secret bits from the channel 12/10/08 3 / 28
Alice & Bob have never met. They’d like to exchange a secret message. But they don’t share a secret key. Alice Bob Eve Suhas Mathur (WINLAB) Secret bits from the channel 12/10/08 3 / 28
? Alice Bob Eve Suhas Mathur (WINLAB) Secret bits from the channel 12/10/08 4 / 28
← − Diffie Hellman key exchange! − → Alice Bob Eve Suhas Mathur (WINLAB) Secret bits from the channel 12/10/08 5 / 28
← − Diffie Hellman key exchange! − → Alice Bob Eve Computational Secrecy (Computationally bounded Eve) k = key, Y = Eve’s obervations It ’should be computationally infeasible’ to compute k from Y . Suhas Mathur (WINLAB) Secret bits from the channel 12/10/08 5 / 28
Alice Bob Eve Unconditional secrecy (Computationally unbounded Eve) H ( k | Y ) = H ( k ). Y is useless to the attacker in computing any useful information about k . Suhas Mathur (WINLAB) Secret bits from the channel 12/10/08 6 / 28
RANDOMLY VARYING CHANNEL BETWEEN ALICE AND BOB Alice Bob Eve Unconditional secrecy (Computationally unbounded Eve) H ( k | Y ) = H ( k ). Y is useless to the attacker in computing any useful information about k . Suhas Mathur (WINLAB) Secret bits from the channel 12/10/08 6 / 28
[Maurer ’93] and [Ahlswede & Csiszar ’93] showed correlated random variables can be used to derive keys by public discussion Suhas Mathur (WINLAB) Secret bits from the channel 12/10/08 7 / 28
[Maurer ’93] and [Ahlswede & Csiszar ’93] showed correlated random variables can be used to derive keys by public discussion ↓ Quantum Key Distribution Suhas Mathur (WINLAB) Secret bits from the channel 12/10/08 7 / 28
[Maurer ’93] and [Ahlswede & Csiszar ’93] showed correlated random variables can be used to derive keys by public discussion ↓ Quantum Key Distribution Everyday wireless channels can enable this! Suhas Mathur (WINLAB) Secret bits from the channel 12/10/08 7 / 28
Summary of fading wireless channels Suhas Mathur (WINLAB) Secret bits from the channel 12/10/08 8 / 28
Summary of fading wireless channels Fading is a multiplicative distortion h ( t ) due to the channel that is Random Time varying Reciprocal (Alice → Bob ≡ Alice ← Bob) Suhas Mathur (WINLAB) Secret bits from the channel 12/10/08 8 / 28
Summary of fading wireless channels Fading is a multiplicative distortion h ( t ) due to the channel that is Random Time varying Reciprocal (Alice → Bob ≡ Alice ← Bob) 2 1.5 h(t) 1 0.5 0 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 Suhas Mathur (WINLAB) Secret bits from the channel 12/10/08 8 / 28
Summary of fading wireless channels Fading is a multiplicative distortion h ( t ) due to the channel that is Random Time varying Reciprocal (Alice → Bob ≡ Alice ← Bob) 2 1.5 h(t) 1 0.5 0 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 The fading parameter h ( t ) decorrelates in space and time Space: Over distances of ∼ λ/ 2 (= 6 cm @ 2.4 Ghz) Time: Over one coherence time T c ∝ 1 f d ( f d ≈ 10 Hz @ 1 m/s) Suhas Mathur (WINLAB) Secret bits from the channel 12/10/08 8 / 28
So how do Alice and Bob actually obtain identical secret bits? Suhas Mathur (WINLAB) Secret bits from the channel 12/10/08 9 / 28
First, they probe the channel many times Alice Bob Suhas Mathur (WINLAB) Secret bits from the channel 12/10/08 10 / 28
First, they probe the channel many times Y 1 h ( t ) − → Alice Bob Suhas Mathur (WINLAB) Secret bits from the channel 12/10/08 10 / 28
First, they probe the channel many times X 1 Y 1 h ( t ) − → ← − Alice Bob Suhas Mathur (WINLAB) Secret bits from the channel 12/10/08 10 / 28
First, they probe the channel many times X 1 Y 1 h ( t ) − → Y 2 ← − Alice Bob − → Suhas Mathur (WINLAB) Secret bits from the channel 12/10/08 10 / 28
First, they probe the channel many times X 1 Y 1 h ( t ) − → X 2 Y 2 ← − Alice Bob − → ← − Suhas Mathur (WINLAB) Secret bits from the channel 12/10/08 10 / 28
First, they probe the channel many times X 1 Y 1 h ( t ) − → X 2 Y 2 . . ← − . . . . Alice Bob − → X n Y n ← − X n = { X 1 , . . . X n } Y n = { Y 1 , . . . Y n } Suhas Mathur (WINLAB) Secret bits from the channel 12/10/08 10 / 28
First, they probe the channel many times X 1 Y 1 h ( t ) − → X 2 Y 2 . . ← − . . . . Alice Bob − → X n Y n ← − X n = { X 1 , . . . X n } Y n = { Y 1 , . . . Y n } Alice 1.6 1.4 1.2 1 0.8 Bob 0.6 0.4 0.2 5 10 15 20 25 Suhas Mathur (WINLAB) Secret bits from the channel 12/10/08 10 / 28
First, they probe the channel many times X 1 Y 1 h ( t ) − → X 2 Y 2 . . ← − . . . . Alice Bob − → X n Y n ← − X n = { X 1 , . . . X n } Y n = { Y 1 , . . . Y n } Alice 1.6 1.4 1.2 1 0.8 Bob 0.6 0.4 0.2 5 10 15 20 25 Eve overhears Z n , which is uncorrelated with X n and Y n Suhas Mathur (WINLAB) Secret bits from the channel 12/10/08 10 / 28
Then they each locally compute thresholds One-bit quantizer Thresholds = ⇒ � 1 = median + α · SD q + if x > q + Q ( x ) = 0 if x < q − q − = median − α · SD q + q − Suhas Mathur (WINLAB) Secret bits from the channel 12/10/08 11 / 28
Then they each locally compute thresholds One-bit quantizer Thresholds = ⇒ � 1 = median + α · SD q + if x > q + Q ( x ) = 0 if x < q − q − = median − α · SD Positive Excursion q + q − Negative Excursion m = Min # of points to be considered an excursion Suhas Mathur (WINLAB) Secret bits from the channel 12/10/08 12 / 28
Positive Negative Excursions Excursion q + q − 10 20 30 40 50 60 X n Y n Suhas Mathur (WINLAB) Secret bits from the channel 12/10/08 13 / 28
Positive Negative Excursions Excursion q + q − 10 20 30 40 50 60 X n Y n Find locations of excursions in X n of size ≥ m . e.g. { 6 , 27 , 42 , 52 , 64 , 98 , . . . } Send a random subset to Bob L = { 6 , 42 , 52 , 98 , . . . } Suhas Mathur (WINLAB) Secret bits from the channel 12/10/08 13 / 28
Positive Negative Excursions Excursion q + q − 10 20 30 40 50 60 X n Y n Find locations of excursions in X n of size ≥ m . e.g. { 6 , 27 , 42 , 52 , 64 , 98 , . . . } Send a random subset to Bob L = { 6 , 42 , 52 , 98 , . . . } Suhas Mathur (WINLAB) Secret bits from the channel 12/10/08 13 / 28
Positive Negative Excursions Excursion q + q − 10 20 30 40 50 60 X n Y n L Find locations of excursions in X n of size − → L ⊆ L where Y n has Find those indices ˜ ≥ m . e.g. { 6 , 27 , 42 , 52 , 64 , 98 , . . . } excursions. ˜ L = { 6 , 52 , . . . } Send a random subset to Bob L = { 6 , 42 , 52 , 98 , . . . } Suhas Mathur (WINLAB) Secret bits from the channel 12/10/08 13 / 28
Positive Negative Excursions Excursion q + q − 10 20 30 40 50 60 X n Y n L Find locations of excursions in X n of size − → L ⊆ L where Y n has Find those indices ˜ ≥ m . e.g. { 6 , 27 , 42 , 52 , 64 , 98 , . . . } excursions. ˜ L = { 6 , 52 , . . . } Send a random subset to Bob L = { 6 , 42 , 52 , 98 , . . . } If | ˜ L | / | L | < 1 2 + ǫ for some 0 < ǫ < 1 2 , declare attack & abort. Suhas Mathur (WINLAB) Secret bits from the channel 12/10/08 13 / 28
Positive Negative Excursions Excursion q + q − 10 20 30 40 50 60 X n Y n L Find locations of excursions in X n of size − → L ⊆ L where Y n has Find those indices ˜ ≥ m . e.g. { 6 , 27 , 42 , 52 , 64 , 98 , . . . } excursions. ˜ L = { 6 , 52 , . . . } Send a random subset to Bob L = { 6 , 42 , 52 , 98 , . . . } If | ˜ L | / | L | < 1 2 + ǫ for some 0 < ǫ < 1 2 , declare attack & abort. ELSE Suhas Mathur (WINLAB) Secret bits from the channel 12/10/08 13 / 28
Positive Negative Excursions Excursion q + q − 10 20 30 40 50 60 X n Y n L Find locations of excursions in X n of size − → L ⊆ L where Y n has Find those indices ˜ ≥ m . e.g. { 6 , 27 , 42 , 52 , 64 , 98 , . . . } excursions. ˜ L = { 6 , 52 , . . . } Send a random subset to Bob L = { 6 , 42 , 52 , 98 , . . . } If | ˜ L | / | L | < 1 2 + ǫ for some 0 < ǫ < 1 2 , declare attack & abort. ELSE Quantize Y n at indices in ˜ L { 1011010.. } First N bits = for MAC. Remaining bits = secret key. Suhas Mathur (WINLAB) Secret bits from the channel 12/10/08 13 / 28
Recommend
More recommend