FPAKE: Fuzzy Password- Authen6cated Key Exchange Sophia - - PowerPoint PPT Presentation

fpake fuzzy password authen6cated key exchange
SMART_READER_LITE
LIVE PREVIEW

FPAKE: Fuzzy Password- Authen6cated Key Exchange Sophia - - PowerPoint PPT Presentation

FPAKE: Fuzzy Password- Authen6cated Key Exchange Sophia Yakoubov joint work with Pierre-Alain Dupont, Julia Hesse, David Pointcheval, Leonid Reyzin 1


slide-1
SLIDE 1

FPAKE: ¡Fuzzy ¡Password-­‑ Authen6cated ¡Key ¡Exchange ¡ ¡

Sophia ¡Yakoubov ¡

joint ¡work ¡with ¡

Pierre-­‑Alain ¡Dupont, ¡Julia ¡Hesse, ¡ David ¡Pointcheval, ¡Leonid ¡Reyzin ¡

1 ¡

slide-2
SLIDE 2

Mo6va6on ¡

p@$$w0rd12 ¡ p@$$w0rd12 ¡

  • Want: ¡secure ¡communica6on ¡
  • Over ¡insecure, ¡

unauthen6cated ¡channel ¡

  • Shared ¡secret: ¡password ¡
  • The ¡password ¡is… ¡

– Low-­‑entropy ¡

2 ¡

slide-3
SLIDE 3

Mo6va6on ¡

p@$$w0rd12 ¡ p@$$w@rd12 ¡

  • Want: ¡secure ¡communica6on ¡
  • Over ¡insecure, ¡

unauthen6cated ¡channel ¡

  • Shared ¡secret: ¡password ¡
  • The ¡password ¡is… ¡

– Low-­‑entropy ¡ – Possibly ¡noisy ¡

3 ¡

slide-4
SLIDE 4
  • Goal: ¡Agree ¡on ¡high-­‑entropy ¡

cryptographic ¡key ¡

  • Man-­‑in-­‑the-­‑middle ¡security: ¡

Nothing ¡leaks ¡about… ¡

– Password ¡ – Key ¡

4 ¡

p@$$w0rd12 ¡ p@$$w@rd12 ¡

Mo6va6on ¡

slide-5
SLIDE 5

Applica6ons ¡

  • Mistyped ¡passwords ¡

e.g. ¡[Cha[erjee-­‑Athalye-­‑Akhawe-­‑Juels-­‑Ristenpart-­‑16] ¡

5 ¡

p@$$w0rd12 ¡ p@$$w@rd12 ¡

slide-6
SLIDE 6

Applica6ons: ¡ Not ¡Just ¡Passwords! ¡

  • Mistyped ¡passwords ¡
  • Biometric ¡authen6ca6on ¡

Bob ¡has ¡a ¡ resource ¡Alice ¡is ¡ trying ¡to ¡access ¡

6 ¡

slide-7
SLIDE 7

Applica6ons: ¡ Not ¡Just ¡Passwords! ¡

7 ¡

“radia6on ¡s6nks ¡ has ¡3 ¡potholes” ¡ “radiator ¡springs ¡ has ¡4 ¡potholes” ¡

  • Mistyped ¡passwords ¡
  • Biometric ¡authen6ca6on ¡
  • Loca6on-­‑based ¡authen6ca6on ¡

e.g. ¡[Han-­‑Harishankar-­‑Wang-­‑Chung-­‑Tague-­‑17] ¡

slide-8
SLIDE 8

Related ¡Work ¡

do ¡the ¡passwords ¡ have ¡noise? ¡ are ¡the ¡passwords ¡low-­‑entropy? ¡

8 ¡

low-­‑entropy: ¡can ¡hit ¡correct ¡password ¡by ¡brute-­‑force ¡enumera6on ¡

slide-9
SLIDE 9

Related ¡Work ¡

Low-­‑entropy ¡password ¡ High-­‑entropy ¡password ¡ ¡ Exact ¡match ¡ ¡

¡

Fuzzy ¡match ¡ ¡ ¡

9 ¡

do ¡the ¡passwords ¡ have ¡noise? ¡ are ¡the ¡passwords ¡low-­‑entropy? ¡

slide-10
SLIDE 10

Related ¡Work ¡

Low-­‑entropy ¡password ¡ High-­‑entropy ¡password ¡ ¡ Exact ¡match ¡ ¡

¡

privacy ¡amplifica6on ¡[Maurer-­‑97, ¡…] ¡ Fuzzy ¡match ¡ ¡ ¡

10 ¡

slide-11
SLIDE 11

Related ¡Work ¡

Low-­‑entropy ¡password ¡ (no ¡leakage ¡allowed) ¡ High-­‑entropy ¡password ¡ (some ¡leakage ¡ok) ¡ Exact ¡match ¡ ¡

¡

privacy ¡amplifica6on ¡[Maurer-­‑97, ¡…] ¡ Fuzzy ¡match ¡ ¡ ¡

11 ¡

slide-12
SLIDE 12

Related ¡Work ¡

Low-­‑entropy ¡password ¡ ¡ (no ¡leakage ¡allowed) ¡ High-­‑entropy ¡password ¡ (some ¡leakage ¡ok) ¡ Exact ¡match ¡ PAKE ¡[Bellare-­‑Pointcheval-­‑Rogaway-­‑00, ¡

Boyko-­‑MacKenzie-­‑Patel-­‑00, ¡…] ¡

privacy ¡amplifica6on ¡[Maurer-­‑97, ¡…] ¡ Fuzzy ¡match ¡ ¡ ¡

Secure ¡against ¡off-­‑line ¡dic6onary ¡ a[acks ¡against ¡the ¡password ¡

12 ¡

slide-13
SLIDE 13

Related ¡Work ¡

Low-­‑entropy ¡password ¡ (no ¡leakage ¡allowed) ¡ High-­‑entropy ¡password ¡ (some ¡leakage ¡ok) ¡ Exact ¡match ¡ PAKE ¡[Bellare-­‑Pointcheval-­‑Rogaway-­‑00, ¡

Boyko-­‑MacKenzie-­‑Patel-­‑00, ¡…] ¡

privacy ¡amplifica6on ¡[Maurer-­‑97, ¡…] ¡ Fuzzy ¡match ¡ informa6on ¡reconcilia6on ¡ ¡

[Renner-­‑Wolf-­‑04, ¡…] ¡

robust ¡fuzzy ¡extractors ¡

[Boyen-­‑Dodis-­‑Katz-­‑Ostrovsky-­‑Smith-­‑05, ¡…] ¡

13 ¡

slide-14
SLIDE 14

Related ¡Work ¡

Low-­‑entropy ¡password ¡ (no ¡leakage ¡allowed) ¡ High-­‑entropy ¡password ¡ (some ¡leakage ¡ok) ¡ Exact ¡match ¡ PAKE ¡[Bellare-­‑Pointcheval-­‑Rogaway-­‑00, ¡

Boyko-­‑MacKenzie-­‑Patel-­‑00, ¡…] ¡

privacy ¡amplifica6on ¡[Maurer-­‑97, ¡…] ¡ Fuzzy ¡match ¡ generic ¡mul6-­‑party ¡computa6on ¡ without ¡authen6cated ¡channels ¡

[Barak-­‑Canej-­‑Lindell-­‑Pass-­‑Rabin-­‑05] ¡

informa6on ¡reconcilia6on ¡ ¡

[Renner-­‑Wolf-­‑04, ¡…] ¡

robust ¡fuzzy ¡extractors ¡

[Boyen-­‑Dodis-­‑Katz-­‑Ostrovsky-­‑Smith-­‑05, ¡…] ¡

14 ¡

slide-15
SLIDE 15

Fuzzy ¡PAKE ¡

Low-­‑entropy ¡password ¡ (no ¡leakage ¡allowed) ¡ High-­‑entropy ¡password ¡ (some ¡leakage ¡ok) ¡ Exact ¡match ¡ PAKE ¡[Bellare-­‑Pointcheval-­‑Rogaway-­‑00, ¡

Boyko-­‑MacKenzie-­‑Patel-­‑00, ¡…] ¡

privacy ¡amplifica6on ¡[Maurer-­‑97, ¡…] ¡ Fuzzy ¡match ¡ This ¡paper ¡-­‑ ¡Fuzzy ¡PAKE ¡ informa6on ¡reconcilia6on ¡ ¡

[Renner-­‑Wolf-­‑04, ¡…] ¡

robust ¡fuzzy ¡extractors ¡

[Boyen-­‑Dodis-­‑Katz-­‑Ostrovsky-­‑Smith-­‑05, ¡…] ¡

15 ¡

Our ¡ContribuAons ¡

  • Security ¡defini6on ¡
  • Two ¡efficient ¡construc6ons ¡
  • f ¡Fuzzy ¡Password ¡Authen6cated ¡Key ¡Exchange ¡

¡

slide-16
SLIDE 16

Fuzzy ¡PAKE ¡

Low-­‑entropy ¡password ¡ (no ¡leakage ¡allowed) ¡ High-­‑entropy ¡password ¡ (some ¡leakage ¡ok) ¡ Exact ¡match ¡ PAKE ¡[Bellare-­‑Pointcheval-­‑Rogaway-­‑00, ¡

Boyko-­‑MacKenzie-­‑Patel-­‑00, ¡…] ¡

privacy ¡amplifica6on ¡[Maurer-­‑97, ¡…] ¡ Fuzzy ¡match ¡ This ¡paper ¡-­‑ ¡Fuzzy ¡PAKE ¡ informa6on ¡reconcilia6on ¡ ¡

[Renner-­‑Wolf-­‑04, ¡…] ¡

robust ¡fuzzy ¡extractors ¡

[Boyen-­‑Dodis-­‑Katz-­‑Ostrovsky-­‑Smith-­‑05, ¡…] ¡

16 ¡

Our ¡ContribuAons ¡

  • Security ¡defini6on ¡
  • Two ¡efficient ¡construc6ons ¡
  • f ¡Fuzzy ¡Password ¡Authen6cated ¡Key ¡Exchange ¡

¡

slide-17
SLIDE 17

FPAKE ¡ ¡ Defini6on ¡

high-­‑entropy ¡key ¡k ¡ high-­‑entropy ¡key ¡k ¡ I ¡learned ¡nothing ¡ about ¡the ¡key ¡or ¡ the ¡passwords ¡

17 ¡

p@$$w@rd12 ¡ p@$$w0rd12 ¡ If ¡the ¡passwords ¡are ¡“similar ¡enough” ¡ ¡ the ¡par6es ¡agree ¡on ¡a ¡key ¡

slide-18
SLIDE 18

FPAKE ¡ ¡ Defini6on ¡

I ¡learned ¡nothing ¡ about ¡Bob’s ¡ password ¡ “can ¡we ¡fix ¡it?” ¡ “curiouser” ¡ If ¡the ¡passwords ¡are ¡not ¡“similar ¡enough” ¡ the ¡par6es ¡do ¡not ¡agree ¡on ¡a ¡key ¡

18 ¡

I ¡learned ¡nothing ¡ about ¡Alice’s ¡ password ¡

slide-19
SLIDE 19

FPAKE ¡ ¡ Defini6on ¡

  • Defini6onal ¡Goals: ¡

– Composability ¡(essen6al ¡for ¡key ¡agreement!) ¡ – Security ¡against ¡offline ¡dic6onary ¡a[acks ¡by: ¡

  • Malicious ¡par6cipant ¡
  • Man ¡in ¡the ¡Middle ¡
  • Approach: ¡Generalize ¡UC ¡func6onality ¡for ¡PAKE ¡ ¡

[Canej-­‑Halevi-­‑Katz-­‑Lindell-­‑MacKenzie-­‑05] ¡

I ¡learned ¡nothing ¡ about ¡Bob’s ¡ password ¡ “can ¡we ¡fix ¡it?” ¡ “curiouser” ¡ If ¡the ¡passwords ¡are ¡not ¡“similar ¡enough” ¡ the ¡par6es ¡do ¡not ¡agree ¡on ¡a ¡key ¡

19 ¡

I ¡learned ¡nothing ¡ about ¡Alice’s ¡ password ¡

slide-20
SLIDE 20

Fuzzy ¡PAKE ¡

Low-­‑entropy ¡password ¡ (no ¡leakage ¡allowed) ¡ High-­‑entropy ¡password ¡ (some ¡leakage ¡ok) ¡ Exact ¡match ¡ PAKE ¡[Bellare-­‑Pointcheval-­‑Rogaway-­‑00, ¡

Boyko-­‑MacKenzie-­‑Patel-­‑00, ¡…] ¡

privacy ¡amplifica6on ¡[Maurer-­‑97, ¡…] ¡ Fuzzy ¡match ¡ This ¡paper ¡-­‑ ¡Fuzzy ¡PAKE ¡ informa6on ¡reconcilia6on ¡ ¡

[Renner-­‑Wolf-­‑04, ¡…] ¡

robust ¡fuzzy ¡extractors ¡

[Boyen-­‑Dodis-­‑Katz-­‑Ostrovsky-­‑Smith-­‑05, ¡…] ¡

20 ¡

Our ¡ContribuAons ¡

  • UC ¡security ¡defini6on ¡
  • Two ¡efficient ¡construc6ons ¡
  • f ¡Fuzzy ¡Password ¡Authen6cated ¡Key ¡Exchange ¡

¡

slide-21
SLIDE 21

Construc6ons ¡

  • Using ¡PAKE ¡+ ¡Robust ¡Secret ¡Sharing ¡(RSS) ¡
  • Using ¡Yao’s ¡Garbled ¡Circuits ¡(YGC) ¡

– Not ¡generic ¡2PC ¡-­‑ ¡specialized, ¡secure ¡variant ¡of ¡ dual ¡execu6on! ¡

n ¡= ¡number ¡of ¡password ¡characters ¡

21 ¡

FPAKE ¡construcAon ¡ PAKE/RSS ¡ Yao’s ¡Garbled ¡Circuits ¡ NoAon ¡of ¡similarity ¡ Hamming ¡ Any ¡ # ¡rounds ¡ 2 ¡ 5 ¡ # ¡exponenAaAons ¡ 2n ¡+ ¡constant ¡ 3n ¡+ ¡constant ¡

slide-22
SLIDE 22

Construc6ons ¡

  • Using ¡PAKE ¡+ ¡Robust ¡Secret ¡Sharing ¡(RSS) ¡
  • Using ¡Yao’s ¡Garbled ¡Circuits ¡(YGC) ¡

– Not ¡generic ¡2PC ¡-­‑ ¡specialized, ¡secure ¡variant ¡of ¡ dual ¡execu6on! ¡

n ¡= ¡number ¡of ¡password ¡characters ¡

22 ¡

FPAKE ¡construcAon ¡ PAKE/RSS ¡ Yao’s ¡Garbled ¡Circuits ¡ NoAon ¡of ¡similarity ¡ Hamming ¡(same-­‑length ¡passwords) ¡ Any ¡ # ¡rounds ¡ 2 ¡ 5 ¡ # ¡exponenAaAons ¡ 2n ¡+ ¡constant ¡ 3n ¡+ ¡constant ¡

slide-23
SLIDE 23

Fuzzy ¡PAKE ¡from ¡PAKE/RSS ¡ ¡

C ¡= ¡Enc(key=pwA, ¡msg=K) ¡ K ¡= ¡Dec(key=pwB, ¡C) ¡

  • Problem: ¡ciphertext ¡enables ¡offline ¡dic6onary ¡a[ack! ¡
  • SoluAon: ¡ ¡

1. expand ¡each ¡character ¡using ¡PAKE! ¡ 2. magical ¡encrypAon ¡using ¡resul6ng ¡character ¡keys ¡

Pick ¡a ¡random ¡session ¡key ¡K ¡ pwA= ¡ ¡ “magical ¡encryp6on” ¡

  • f ¡K ¡that ¡tolerates ¡

errors ¡in ¡the ¡ encryp6on ¡key ¡pwA ¡

23 ¡

p@$$w0rd12 ¡ pwB= ¡ ¡ p@$$w@rd12 ¡

slide-24
SLIDE 24

Fuzzy ¡PAKE ¡from ¡PAKE/RSS: ¡ ¡ the ¡Expansion ¡Step ¡

p ¡ p ¡ A1 ¡ B1 ¡

PAKE ¡ ¡ protocol ¡

24 ¡

@ ¡ @ ¡ A2 ¡ B2 ¡

PAKE ¡ ¡ protocol ¡

… ¡ 2 ¡ 2 ¡ A10 ¡ B10 ¡

PAKE ¡ ¡ protocol ¡

B1 ¡B2 ¡B3 ¡B4 ¡ B5 ¡B6 ¡B7 ¡B8 ¡B9 ¡B10 ¡ A2 ¡A3 ¡A4 ¡A5 ¡A6 ¡A7 ¡A8 ¡A9 ¡A10 ¡ A1 ¡

A= ¡ B= ¡ pwA= ¡ ¡ p@$$w0rd12 ¡ pwB= ¡ ¡ p@$$w@rd12 ¡ @ ¡ 0 ¡ A6 ¡ B6 ¡

PAKE ¡ ¡ protocol ¡

… ¡

slide-25
SLIDE 25

Fuzzy ¡PAKE ¡from ¡PAKE/RSS: ¡ ¡ the ¡Expansion ¡Step ¡

B1 ¡B2 ¡B3 ¡B4 ¡ B5 ¡B6 ¡B7 ¡B8 ¡B9 ¡B10 ¡

  • It ¡is ¡important ¡to ¡hide ¡whether ¡agreement ¡

happened! ¡

  • Otherwise, ¡loca6ons ¡of ¡matching ¡characters ¡will ¡leak ¡
  • New ¡UC ¡definiAon: ¡implicit-­‑only ¡PAKE ¡

– no ¡key ¡confirma6on: ¡par6cipants ¡do ¡not ¡know ¡ whether ¡agreement ¡was ¡successful ¡ – “EKE2” ¡[Bellare-­‑Pointcheval-­‑Rogaway-­‑00] ¡is ¡implicit-­‑only ¡ ¡

¡

A2 ¡A3 ¡A4 ¡A5 ¡A6 ¡A7 ¡A8 ¡A9 ¡A10 ¡ A1 ¡

A= ¡ B= ¡

25 ¡

pwA= ¡ ¡ p@$$w0rd12 ¡ pwB= ¡ ¡ p@$$w@rd12 ¡

slide-26
SLIDE 26

Fuzzy ¡PAKE ¡from ¡PAKE/RSS ¡ ¡

C ¡= ¡Enc(key=pwA, ¡msg=K) ¡ K ¡= ¡Dec(key=pwB, ¡C) ¡ Pick ¡a ¡random ¡session ¡key ¡K ¡

B1 ¡B2 ¡B3 ¡B4 ¡ B5 ¡B6 ¡B7 ¡B8 ¡B9 ¡B10 ¡ A2 ¡A3 ¡A4 ¡A5 ¡A6 ¡A7 ¡A8 ¡A9 ¡A10 ¡ A1 ¡

A= ¡ B= ¡

26 ¡

pwA= ¡ ¡ p@$$w0rd12 ¡ pwB= ¡ ¡ p@$$w@rd12 ¡ “magical ¡encryp6on” ¡

  • f ¡K ¡that ¡tolerates ¡

errors ¡in ¡the ¡ encryp6on ¡key ¡pwA ¡

slide-27
SLIDE 27

Fuzzy ¡PAKE ¡from ¡PAKE/RSS ¡ ¡

Pick ¡a ¡random ¡session ¡key ¡K ¡ C ¡= ¡Enc(key=A, ¡msg=K) ¡ K ¡= ¡Dec(key=B, ¡C) ¡

A2 ¡A3 ¡A4 ¡A5 ¡A6 ¡A7 ¡A8 ¡A9 ¡A10 ¡ A1 ¡ B1 ¡B2 ¡B3 ¡B4 ¡ B5 ¡B6 ¡B7 ¡B8 ¡B9 ¡B10 ¡

A= ¡ B= ¡

27 ¡

pwA= ¡ ¡ p@$$w0rd12 ¡ pwB= ¡ ¡ p@$$w@rd12 ¡ “magical ¡encryp6on” ¡

  • f ¡K ¡that ¡tolerates ¡

errors ¡in ¡the ¡ encryp6on ¡key ¡A ¡

slide-28
SLIDE 28

Fuzzy ¡PAKE ¡from ¡PAKE/RSS ¡ ¡

Pick ¡a ¡random ¡session ¡key ¡K ¡ C ¡= ¡Enc(key=A, ¡msg=K) ¡ K ¡= ¡Dec(key=B, ¡C) ¡

A2 ¡A3 ¡A4 ¡A5 ¡A6 ¡A7 ¡A8 ¡A9 ¡A10 ¡ A1 ¡ B1 ¡B2 ¡B3 ¡B4 ¡ B5 ¡B6 ¡B7 ¡B8 ¡B9 ¡B10 ¡

A= ¡ B= ¡

28 ¡

Similar ¡to ¡Code-­‑Offset ¡[Juels-­‑Watenberg-­‑02] ¡ pwA= ¡ ¡ p@$$w0rd12 ¡ pwB= ¡ ¡ p@$$w@rd12 ¡ Robust ¡Secret ¡Sharing ¡

  • f ¡K ¡

+ ¡ One ¡Time ¡Pad ¡

slide-29
SLIDE 29

Construc6ons ¡

  • Using ¡PAKE ¡+ ¡Robust ¡Secret ¡Sharing ¡(RSS) ¡
  • Using ¡Yao’s ¡Garbled ¡Circuits ¡(YGC) ¡

– Not ¡generic ¡2PC ¡-­‑ ¡specialized, ¡secure ¡variant ¡of ¡ dual ¡execu6on! ¡

n ¡= ¡number ¡of ¡password ¡characters ¡

29 ¡

FPAKE ¡construcAon ¡ PAKE/Secret ¡Sharing ¡ Yao’s ¡Garbled ¡Circuits ¡ NoAon ¡of ¡similarity ¡ Hamming ¡ Any ¡ # ¡rounds ¡ 2 ¡ 5 ¡ # ¡exponenAaAons ¡ 2n ¡+ ¡constant ¡ 3n ¡+ ¡constant ¡

slide-30
SLIDE 30

Yao’s ¡Garbled ¡Circuits ¡ for ¡FPAKE ¡

garbler ¡ evaluator ¡

30 ¡

  • utput ¡
slide-31
SLIDE 31

Yao’s ¡Garbled ¡Circuits ¡ for ¡FPAKE ¡

garbler ¡ evaluator ¡ pwG ¡= ¡p@$$w0rd12 ¡ pwE ¡= ¡p@$$w@rd12 ¡ Circuit ¡determining ¡ whether ¡pwG ¡and ¡pwE ¡ are ¡“close ¡enough”; ¡

  • utputs ¡session ¡key ¡if ¡yes ¡

31 ¡

  • utput ¡
slide-32
SLIDE 32

Yao’s ¡Garbled ¡Circuits ¡ for ¡FPAKE ¡

garbler ¡ evaluator ¡ Circuit ¡determining ¡ whether ¡pwG ¡and ¡pwE ¡ are ¡“close ¡enough”; ¡

  • utputs ¡session ¡key ¡if ¡yes ¡

semi-­‑honest ¡ malicious ¡ Yao’s ¡Garbled ¡Circuits ¡are ¡an ¡asymmetric ¡2PC ¡protocol: ¡they ¡are ¡secure ¡against ¡a ¡ malicious ¡evaluator, ¡but ¡only ¡against ¡a ¡semi-­‑honest ¡garbler ¡

32 ¡

  • utput ¡

pwG ¡= ¡p@$$w0rd12 ¡ pwE ¡= ¡p@$$w@rd12 ¡

slide-33
SLIDE 33

Yao’s ¡Garbled ¡Circuits ¡ for ¡FPAKE ¡

garbler ¡ evaluator ¡ Circuit ¡that ¡always ¡ ¡

  • utputs ¡the ¡same ¡key! ¡

semi-­‑honest ¡ malicious ¡ Yao’s ¡Garbled ¡Circuits ¡are ¡an ¡asymmetric ¡2PC ¡protocol: ¡they ¡are ¡secure ¡against ¡a ¡ malicious ¡evaluator, ¡but ¡only ¡against ¡a ¡semi-­‑honest ¡garbler ¡

33 ¡

  • utput ¡

pwG ¡= ¡p@$$w0rd12 ¡ pwE ¡= ¡p@$$w@rd12 ¡

slide-34
SLIDE 34

From ¡Semi-­‑Honest ¡to ¡Malicious ¡

34 ¡

Correctness ¡ Privacy ¡ ComputaAon ¡ Overhead ¡

slide-35
SLIDE 35

From ¡Semi-­‑Honest ¡to ¡Malicious ¡

TransformaAon ¡ Correctness ¡ Privacy ¡ ComputaAon ¡ Overhead ¡ None ¡ Commit-­‑and-­‑Prove ¡ Cut-­‑and-­‑Choose ¡ Gate-­‑wise ¡ ¡ Cut-­‑and-­‑Choose ¡ (including ¡pre-­‑ processing) ¡ … ¡

35 ¡

slide-36
SLIDE 36

From ¡Semi-­‑Honest ¡to ¡Malicious ¡

TransformaAon ¡ Correctness ¡ Privacy ¡ ComputaAon ¡ Overhead ¡ None ¡ Commit-­‑and-­‑Prove ¡ Cut-­‑and-­‑Choose ¡ Gate-­‑wise ¡ ¡ Cut-­‑and-­‑Choose ¡ (including ¡pre-­‑ processing) ¡ … ¡ Dual ¡ExecuAon ¡ [Mohassel-­‑Franklin-­‑06, ¡ Huang-­‑Katz-­‑Evans-­‑12] ¡ 1 ¡bit ¡leakage ¡ Only ¡2x! ¡ 1 ¡bit ¡of ¡leakage ¡about ¡a ¡low-­‑entropy ¡password ¡can ¡be ¡crucial! ¡

36 ¡

We ¡modify ¡dual ¡execu6on ¡specifically ¡for ¡Fuzzy ¡PAKE ¡to ¡avoid ¡leakage ¡when ¡it ¡ma[ers ¡

slide-37
SLIDE 37

AY ¡ AN ¡ circuit ¡that ¡

  • utputs ¡yes/no ¡ ¡

37 ¡

Dual ¡Execu6on ¡for ¡FPAKE ¡

Alice’s ¡ “closeness” ¡ ¡ circuit ¡ AY ¡ circuit ¡that ¡

  • utputs ¡a ¡ ¡

yes/no ¡key ¡ pwG ¡= ¡p@$$w0rd12 ¡ pwE ¡= ¡p@$$w@rd12 ¡

slide-38
SLIDE 38

Dual ¡Execu6on ¡for ¡FPAKE ¡

AY ¡ AN ¡ AY ¡ BY ¡ BY ¡ BN ¡ AY ¡ BY ¡ AY ¡ BY ¡

⊕ ⊕

Bob’s ¡ “closeness” ¡ circuit ¡ Alice’s ¡ “closeness” ¡ ¡ circuit ¡

38 ¡

session ¡key ¡k ¡ session ¡key ¡k ¡ pwG ¡= ¡p@$$w0rd12 ¡ pwE ¡= ¡p@$$w@rd12 ¡

slide-39
SLIDE 39

Dual ¡Execu6on ¡for ¡FPAKE ¡

AY ¡ AN ¡ AN ¡ BN ¡ BY ¡ BN ¡ AY ¡ BN ¡ AN ¡ BY ¡

⊕ ⊕

Bob’s ¡ “closeness” ¡ circuit ¡ Alice’s ¡ “closeness” ¡ ¡ circuit ¡

39 ¡

session ¡key ¡k’ ¡ session ¡key ¡k ¡ pwG ¡= ¡“curiouser” ¡ pwE ¡= ¡“can ¡we ¡fix ¡it” ¡

slide-40
SLIDE 40

Dual ¡Execu6on ¡for ¡FPAKE ¡

AY ¡ AN ¡ AY ¡ BN ¡ BY ¡ BN ¡ AY ¡ BN ¡ AY ¡ BY ¡

⊕ ⊕

Bob’s ¡ “closeness” ¡ circuit ¡ Alice’s ¡ “closeness” ¡ ¡ circuit ¡

40 ¡

session ¡key ¡k’ ¡ session ¡key ¡k ¡ pwG ¡= ¡“curiouser” ¡ pwE ¡= ¡“can ¡we ¡fix ¡it” ¡

slide-41
SLIDE 41

Dual ¡Execu6on ¡for ¡FPAKE ¡

AY ¡ AN ¡ BN ¡ BY ¡ BN ¡ AY ¡ BN ¡ BY ¡

⊕ ⊕

Bob’s ¡ “closeness” ¡ circuit ¡ Alice’s ¡ “closeness” ¡ ¡ circuit ¡

41 ¡

No ¡clue ¡about ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡! ¡ session ¡key ¡k’ ¡ session ¡key ¡k ¡ pwG ¡= ¡“curiouser” ¡ pwE ¡= ¡“can ¡we ¡fix ¡it” ¡ AY ¡ AY ¡

slide-42
SLIDE 42

Dual ¡Execu6on: ¡ ¡ Privacy-­‑Correctness ¡Tradeoff ¡ for ¡Boolean ¡Func6ons ¡

This ¡is ¡the ¡perfect ¡tradeoff ¡for ¡fuzzy ¡PAKE! ¡

  • Only ¡care ¡about ¡security ¡against ¡adversary ¡who ¡doesn’t ¡know ¡

a ¡close-­‑enough ¡password ¡– ¡the ¡“no” ¡case ¡

Our ¡FPAKE ¡ Dual ¡ ExecuAon ¡ Correct ¡output ¡

  • Comp. ¡output ¡

Privacy ¡ “yes” ¡ “yes” ¡or ¡“no” ¡ 1-­‑bit ¡leakage ¡ “no” ¡ “no” ¡ yes ¡ [MF’06, ¡ HKE’12] ¡ Dual ¡ ExecuAon ¡ Correct ¡output ¡

  • Comp. ¡output ¡

Privacy ¡ “yes” ¡ “yes” ¡or ¡“chea6ng” ¡ 1-­‑bit ¡leakage ¡ “no” ¡ “no” ¡or ¡“chea6ng” ¡ 1-­‑bit ¡leakage ¡

42 ¡

slide-43
SLIDE 43

Conclusion ¡

Low-­‑entropy ¡password ¡ High-­‑entropy ¡password ¡ Exact ¡match ¡ PAKE ¡ privacy ¡amplifica6on ¡ Fuzzy ¡match ¡ This ¡paper ¡-­‑ ¡Fuzzy ¡PAKE ¡ informa6on ¡reconcilia6on, ¡ robust ¡fuzzy ¡extractors ¡

43 ¡

Our ¡ContribuAons ¡

  • UC ¡security ¡defini6on ¡of ¡Fuzzy ¡PAKE ¡
  • Two ¡efficient ¡construc6ons: ¡
  • PAKE ¡+ ¡Robust ¡Secret ¡Sharing ¡(more ¡efficient) ¡
  • Yao’s ¡Garbled ¡Circuits ¡(more ¡general) ¡