practical and provably secure onion routing · 2012-07-16 · practical and provably secure onion...

109
Michael Backes Saarland University MPI-SWS Aniket Kate MPI-SWS Ian Goldberg University of Waterloo Esfandiar Mohammadi Saarland University Practical and Provably Secure Onion Routing [IEEE CSF '12]

Upload: others

Post on 07-Jun-2020

25 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

Michael BackesSaarland University

MPI-SWS

Aniket KateMPI-SWS

Ian GoldbergUniversity of Waterloo

Esfandiar MohammadiSaarland University

Practical and Provably Secure Onion Routing[IEEE CSF '12]

Page 2: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

Practical and Provably Secure OR - Esfandiar Mohammadi

Anonymous Web Browsing

2

GoogleAliceAIDS

Page 3: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

Practical and Provably Secure OR - Esfandiar Mohammadi

Anonymous Web Browsing

2

GoogleAliceAIDS

AIDS

Insurance

Page 4: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

Practical and Provably Secure OR - Esfandiar Mohammadi

Anonymous Web Browsing

2

GoogleAliceAIDS

AIDS

Insurance

We should talk.

Page 5: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

What happened now?

Practical and Provably Secure OR - Esfandiar Mohammadi

Anonymous Web Browsing

2

GoogleAliceAIDS

AIDS

Insurance

We should talk.

Page 6: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

What happened now?

Next time I anonymize my search via Tor.

Practical and Provably Secure OR - Esfandiar Mohammadi

Anonymous Web Browsing

2

GoogleAliceAIDS

AIDS

Insurance

We should talk.

Page 7: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

Practical and Provably Secure OR - Esfandiar Mohammadi

Anonymous Web Browsing

2

anonymizing

Tor

Page 8: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

• established system for anonymous web browsing• But: analyzing Tor is challenging

Practical and Provably Secure OR - Esfandiar Mohammadi

Anonymous Web Browsing: Tor

3

anonymizing

Tor

Page 9: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

Practical and Provably Secure OR - Esfandiar Mohammadi

Tor: An Onion Routing Network

4

Page 10: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

Anonymity against a malicious server

Practical and Provably Secure OR - Esfandiar Mohammadi

Tor: An Onion Routing Network

4

Page 11: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

Anonymity against a malicious server

Phase 1: Establish Circuit

Practical and Provably Secure OR - Esfandiar Mohammadi

Tor: An Onion Routing Network

4

Page 12: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

Anonymity against a malicious server

Phase 1: Establish Circuit

k1

Practical and Provably Secure OR - Esfandiar Mohammadi

Tor: An Onion Routing Network

4

1cid

Page 13: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

2cid

Anonymity against a malicious server

Phase 1: Establish Circuit

k2

k1

Practical and Provably Secure OR - Esfandiar Mohammadi

Tor: An Onion Routing Network

4

1cid

Page 14: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

2cid

Anonymity against a malicious server

Phase 1: Establish Circuit

k3

k2

k1

Practical and Provably Secure OR - Esfandiar Mohammadi

Tor: An Onion Routing Network

4

1cid3cid

Page 15: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

2cid

Anonymity against a malicious server

Phase 1: Establish Circuit

k4

k3

k2

k1

Practical and Provably Secure OR - Esfandiar Mohammadi

Tor: An Onion Routing Network

4

1cid3cid

4cid

Page 16: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

2cid

Anonymity against a malicious server

Phase 2: Send message

k4

k3

k2

k1

Practical and Provably Secure OR - Esfandiar Mohammadi

Tor: An Onion Routing Network

4

E(k1,E(k2,E(k3,E(k4, m))))

1cid3cid

4cid

cid ||1

Page 17: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

2cid

Anonymity against a malicious server

k4

k3

k2

k1

Practical and Provably Secure OR - Esfandiar Mohammadi

Tor: An Onion Routing Network

4

E(k1,E(k2,E(k3,E(k4, m))))

1cid3cid

4cid

cid ||1

Page 18: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

2cid

Anonymity against a malicious server

k4

k3

k2

k1

Practical and Provably Secure OR - Esfandiar Mohammadi

Tor: An Onion Routing Network

4

E(k2,E(k3,E(k4, m)))

1cid3cid

4cid

cid ||2

Page 19: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

2cid

Anonymity against a malicious server

E(k3,E(k4, m))

k4

k3

k2

k1

Practical and Provably Secure OR - Esfandiar Mohammadi

Tor: An Onion Routing Network

4

1cid3cid

4cid

cid ||3

Page 20: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

2cid

Anonymity against a malicious server

E(k4, m)

k4

k3

k2

k1

Practical and Provably Secure OR - Esfandiar Mohammadi

Tor: An Onion Routing Network

4

1cid3cid

4cid

cid ||4

Page 21: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

2cid

Anonymity against a malicious server

m

k4

k3

k2

k1

Practical and Provably Secure OR - Esfandiar Mohammadi

Tor: An Onion Routing Network

4

m

1cid3cid

4cid

Page 22: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

Practical and Provably Secure OR - Esfandiar Mohammadi

Tor: An Onion Routing Network

5

m

k4

k3

k2

k1

Anonymity against a malicious server

6

m

Page 23: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

Practical and Provably Secure OR - Esfandiar Mohammadi

Tor: An Onion Routing Network

5

m

k4

k3

k2

k1

• analyzing tor is difficult

• typical approach– abstract OR as a black-box

6

Page 24: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

Practical and Provably Secure OR - Esfandiar Mohammadi

Tor: An Onion Routing Network

5

m

k4

k3

k2

k1

• analyzing tor is difficult

• typical approach– abstract OR as a black-box

6

But does such a black-box abstraction capture all attacks?

Page 25: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

Practical and Provably Secure OR - Esfandiar Mohammadi

Our Contribution

• We introduce a comprehensive black-box for onion routing

– We bridge the gap between a known black-box abstraction and the onion routing (OR) protocol

• Our result even holds in the presence of universal composability (UC)

• We apply our result by introducing a definition for forward secrecy– We make a first step towards proving forward secrecy

6

Page 26: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

Practical and Provably Secure OR - Esfandiar Mohammadi

Our Contribution

• We introduce a comprehensive black-box for onion routing

– We bridge the gap between a known black-box abstraction and the onion routing (OR) protocol

• Our result even holds in the presence of universal composability (UC)

• We apply our result by introducing a definition for forward secrecy– We make a first step towards proving forward secrecy

6

Page 27: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

Practical and Provably Secure OR - Esfandiar Mohammadi

Our Contribution

• We introduce a comprehensive black-box for onion routing

– We bridge the gap between a known black-box abstraction and the onion routing (OR) protocol

• Our result even holds in the presence of universal composability (UC)

• We apply our result by introducing a definition for forward secrecy– We make a first step towards proving forward secrecy

6

UC ➡ Timing attacks are not covered

Page 28: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

Practical and Provably Secure OR - Esfandiar Mohammadi

Outline

• Recall UC

• Discussing our Black-Box

• Challenges with the current Tor protocol

• Main Result & Applications

7

Page 29: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

Practical and Provably Secure OR - Esfandiar Mohammadi

Universal Composability

8

callingprotocol

protocol P

protocol P

callingprotocol

Attacker models:• Compromised protocol parties• Compromised network links

Page 30: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

Practical and Provably Secure OR - Esfandiar Mohammadi

Universal Composability

9

callingprotocol

callingprotocol

Trusted Party(black-box)

computing the result of Pmodelling honest parties

Page 31: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

Practical and Provably Secure OR - Esfandiar Mohammadi

Universal Composability

10

callingprotocol

callingprotocol

Trusted Party(black-box)

computing the result of Pmodelling honest parties

Page 32: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

Practical and Provably Secure OR - Esfandiar Mohammadi

Universal Composability

10

callingprotocol

callingprotocol

Trusted Party(black-box)

computing the result of Pmodelling honest parties

callingprotocol

protocol P

protocol P

callingprotocol

Comparing two worlds

Page 33: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

Practical and Provably Secure OR - Esfandiar Mohammadi

Universal Composability

11

callingprotocol

callingprotocol

Trusted Party(black-box)

computing the result of Pmodelling honest parties

callingprotocol

protocol P

protocol P

callingprotocol

∀ ∃

Page 34: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

callingprotocol

callingprotocol

Practical and Provably Secure OR - Esfandiar Mohammadi

Universal Composability

12

callingprotocol

protocol P

callingprotocol

protocol P

∀ ∃

Trusted Party(black-box)

computing the result of Pmodelling honest parties

Page 35: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

Practical and Provably Secure OR - Esfandiar Mohammadi

Universal Composability

13

Trusted Party(black-box)

computing the result of Pmodelling honest parties

protocol P

protocol P

∃∀ ∀

Page 36: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

Practical and Provably Secure OR - Esfandiar Mohammadi

Universal Composability

13

Trusted Party(black-box)

computing the result of Pmodelling honest parties

protocol P

protocol P

∃∀ ∀

Page 37: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

b*b x := (U,S)(1-b)*b x := (-,S)b*(1-b) x := (U,-)(1-b)*(1-b) x := (-,-)

Suser with probability

xattacker

b : fraction of compromised nodes

Practical and Provably Secure OR - Esfandiar Mohammadi

An elegant black-box for OR

14

by Feigenbaum, Johnson, and Syverson (to appear in TISSec)

Page 38: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

b*b x := (U,S)(1-b)*b x := (-,S)b*(1-b) x := (U,-)(1-b)*(1-b) x := (-,-)

Suser with probability

xattacker

b : fraction of compromised nodes Why is this not sufficient?

Practical and Provably Secure OR - Esfandiar Mohammadi

An elegant black-box for OR

14

by Feigenbaum, Johnson, and Syverson (to appear in TISSec)

Page 39: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

• abstraction is sound if no circuit is reused

b*b x := (U,S)(1-b)*b x := (-,S)b*(1-b) x := (U,-)(1-b)*(1-b) x := (-,-)

Suser with probability

xattacker

b : fraction of compromised nodes Why is this not sufficient?

Practical and Provably Secure OR - Esfandiar Mohammadi

An elegant black-box for OR

14

by Feigenbaum, Johnson, and Syverson (to appear in TISSec)

Page 40: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

Practical and Provably Secure OR - Esfandiar Mohammadi

How does the simulation work?

15

Page 41: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

Practical and Provably Secure OR - Esfandiar Mohammadi

The simulator

16

(-,S)

S

Establish a fresh circuit CSend 0 to S over C

SC

b : fraction of compromised nodes

with probabilityb*b x := (U,S)(1-b)*b x := (-,S)b*(1-b) x := (U,-)(1-b)*(1-b) x := (-,-)

Page 42: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

1

Practical and Provably Secure OR - Esfandiar Mohammadi

Reusing Circuits

17

Page 43: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

m1

Practical and Provably Secure OR - Esfandiar Mohammadi

Reusing Circuits

17

Page 44: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

2

m1

Practical and Provably Secure OR - Esfandiar Mohammadi

Reusing Circuits

17

This circuit has been reused.

Page 45: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

m2m1

Practical and Provably Secure OR - Esfandiar Mohammadi

Reusing Circuits

17

This circuit has been reused.

Page 46: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

Practical and Provably Secure OR - Esfandiar Mohammadi

Reusing Circuits

18

m12m

This circuit has been reused.

Page 47: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

Practical and Provably Secure OR - Esfandiar Mohammadi

Reusing Circuits

18

m12m

This circuit has been reused.

Page 48: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

If h = - draw a fresh handle helse check whether h is valid

b*b x := (h,U,S,m)(1-b)*b x := (h,-,S,m)b*(1-b) x := (h,U,-)(1-b)*(1-b) x := (h,-,-)

Practical and Provably Secure OR - Esfandiar Mohammadi

Reusing Circuits (Overapproximation)

19

(S, m, h)user

with probabilityx

attacker

b : fraction of compromised nodesm 1m 2

This circuit has

been reused

Page 49: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

Practical and Provably Secure OR - Esfandiar Mohammadi

The simulator

20

(h,-,S,m)

(S,m,h)

If h is not known establish a circuit Celse look up CSend m to S over C

SC

If h = - draw a fresh handle helse check whether h is valid

b*b x := (h,U,S,m)(1-b)*b x := (h,-,S,m)b*(1-b) x := (h,U,-)(1-b)*(1-b) x := (h,-,-)

with probability

b : fraction of compromised nodes

Page 50: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

Practical and Provably Secure OR - Esfandiar Mohammadi

The simulator

20

(h,-,S,m)

(S,m,h)

If h is not known establish a circuit Celse look up CSend m to S over C

SC

If h = - draw a fresh handle helse check whether h is valid

b*b x := (h,U,S,m)(1-b)*b x := (h,-,S,m)b*(1-b) x := (h,U,-)(1-b)*(1-b) x := (h,-,-)

with probability

b : fraction of compromised nodes

Drawback: we leak the reusage of a circuit via h

Page 51: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

draw a random circuitdraw a handle (h,P,Q) for every ciphertext between P,Qleak these handles

Practical and Provably Secure OR - Esfandiar Mohammadi

Reusing Circuits (tighter)

21

user

attacker

S m 1m 2

This circuit has

been reused

Page 52: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

Practical and Provably Secure OR - Esfandiar Mohammadi

A different Corruption Scenario

22

This circuit has been reused

Page 53: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

Practical and Provably Secure OR - Esfandiar Mohammadi

The simulator

23

(m,S)

Page 54: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

Practical and Provably Secure OR - Esfandiar Mohammadi

The simulator

23

(h,P1,P2,P3)

(m,S)

Black-box

Page 55: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

E(k2,E(k3, 0l))

Practical and Provably Secure OR - Esfandiar Mohammadi

The simulator

23

(h,P1,P2,P3)

(m,S)

Black-box

Page 56: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

E(k2,E(k3, 0l))

Practical and Provably Secure OR - Esfandiar Mohammadi

The simulator

23

(h,P1,P2,P3)

(m,S)

Black-box

Page 57: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

E(k3, 0l)

Practical and Provably Secure OR - Esfandiar Mohammadi

The simulator

23

(h,P1,P2,P3)

(m,S)

Black-box

Page 58: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

E(k3, 0l)

Practical and Provably Secure OR - Esfandiar Mohammadi

The simulator

23

(h,P1,P2,P3)

(m,S)

Black-box

h

Page 59: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

Practical and Provably Secure OR - Esfandiar Mohammadi

The simulator

23

(h,P1,P2,P3)

(m,S)

Black-box

h

Page 60: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

Practical and Provably Secure OR - Esfandiar Mohammadi

The simulator

23

(h,P1,P2,P3)

(m,P3,P4,S)

(m,S)

Black-box

h

Page 61: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

E(k4, m))

Practical and Provably Secure OR - Esfandiar Mohammadi

The simulator

23

(h,P1,P2,P3)

(m,P3,P4,S)

(m,S)

Black-box

h

Page 62: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

E(k4, m))

Practical and Provably Secure OR - Esfandiar Mohammadi

The simulator

23

(h,P1,P2,P3)

(m,P3,P4,S)

(m,S)

Black-box

h

Page 63: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

Practical and Provably Secure OR - Esfandiar Mohammadi

The simulator

23

(h,P1,P2,P3)

(m,P3,P4,S)

(m,S)

Black-box

h

m

Page 64: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

Practical and Provably Secure OR - Esfandiar Mohammadi

Our Black-Box

• Allows reusing circuits– Performs circuit construction– Maintains circuits

– Draws a fresh handle for every ciphertext

24

Page 65: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

Practical and Provably Secure OR - Esfandiar Mohammadi

Are we done?

25

Page 66: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

• How to prove circuit creation secure?– Goldberg, Stebila, and Ustaoglu introduced an efficient &

secure one-way AKE [DCC].– Perfectly suited for our proof.

Practical and Provably Secure OR - Esfandiar Mohammadi

Are we done?

25

Page 67: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

• How to prove circuit creation secure?– Goldberg, Stebila, and Ustaoglu introduced an efficient &

secure one-way AKE [DCC].– Perfectly suited for our proof.

• For non-malleable encryption schemes that's it.

Practical and Provably Secure OR - Esfandiar Mohammadi

Are we done?

25

Page 68: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

• How to prove circuit creation secure?– Goldberg, Stebila, and Ustaoglu introduced an efficient &

secure one-way AKE [DCC].– Perfectly suited for our proof.

• For non-malleable encryption schemes that's it.

• But Tor uses the malleable detCTR scheme:

Practical and Provably Secure OR - Esfandiar Mohammadi

Are we done?

25

Page 69: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

• How to prove circuit creation secure?– Goldberg, Stebila, and Ustaoglu introduced an efficient &

secure one-way AKE [DCC].– Perfectly suited for our proof.

• For non-malleable encryption schemes that's it.

• But Tor uses the malleable detCTR scheme:

Practical and Provably Secure OR - Esfandiar Mohammadi

Are we done?

25

E(k, m)⊕ c = E(k, m⊕ c)

Page 70: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

E(k1,E(k2,E(k3,E(k4, m))))

Practical and Provably Secure OR - Esfandiar Mohammadi

A Problem with Malleability

26

Page 71: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

E(k1,E(k2,E(k3,E(k4, m))))

Practical and Provably Secure OR - Esfandiar Mohammadi

A Problem with Malleability

26

Page 72: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

E(k2,E(k3,E(k4, m)))

⊕c

Practical and Provably Secure OR - Esfandiar Mohammadi

A Problem with Malleability

26

Page 73: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

⊕c

Practical and Provably Secure OR - Esfandiar Mohammadi

A Problem with Malleability

26

E(k2,E(k3,E(k4, m)))⊕ c

Page 74: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

⊕c

Practical and Provably Secure OR - Esfandiar Mohammadi

A Problem with Malleability

26

E(k2,E(k3,E(k4, m⊕ c)))

Page 75: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

⊕c

Practical and Provably Secure OR - Esfandiar Mohammadi

A Problem with Malleability

26

E(k3,E(k4, m⊕ c))

Page 76: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

E(k4, m⊕ c)

⊕c

Practical and Provably Secure OR - Esfandiar Mohammadi

A Problem with Malleability

26

Page 77: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

m⊕ c

⊕c

Practical and Provably Secure OR - Esfandiar Mohammadi

A Problem with Malleability

26

m⊕ c

Page 78: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

Practical and Provably Secure OR - Esfandiar Mohammadi

Recall what we have to prove

27

Trusted Party(black-box)

computing the result of Pmodelling honest parties

protocol P

protocol P

∃∀ ∀

Page 79: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

Practical and Provably Secure OR - Esfandiar Mohammadi

A Problem with Malleability

28

(m,S)

Page 80: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

Practical and Provably Secure OR - Esfandiar Mohammadi

A Problem with Malleability

28

(h,P1,P2,P3)

(m,S)

Black-box

Page 81: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

E(k2,E(k3, 0l))

Practical and Provably Secure OR - Esfandiar Mohammadi

A Problem with Malleability

28

(h,P1,P2,P3)

(m,S)

Black-box

Page 82: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

E(k2,E(k3, 0l))

Practical and Provably Secure OR - Esfandiar Mohammadi

A Problem with Malleability

28

(h,P1,P2,P3)

(m,S)

Black-box

Page 83: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

Practical and Provably Secure OR - Esfandiar Mohammadi

A Problem with Malleability

28

(h,P1,P2,P3)

(m,S)

Black-boxE(k2,E(k3, 0l))⊕ c

Page 84: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

E(k2,E(k3, 0l ⊕ c))

Practical and Provably Secure OR - Esfandiar Mohammadi

A Problem with Malleability

28

(h,P1,P2,P3)

(m,S)

Black-box

Page 85: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

E(k3, 0l ⊕ c)

Practical and Provably Secure OR - Esfandiar Mohammadi

A Problem with Malleability

28

(h,P1,P2,P3)

(m,S)

Black-box

Page 86: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

E(k3, 0l ⊕ c)

Practical and Provably Secure OR - Esfandiar Mohammadi

A Problem with Malleability

28

(h,P1,P2,P3)

(m,S)

Black-box

h

Page 87: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

Practical and Provably Secure OR - Esfandiar Mohammadi

A Problem with Malleability

28

(h,P1,P2,P3)

(m,P3,P4,S)

(m,S)

Black-box

h

Page 88: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

E(k4, m))

Practical and Provably Secure OR - Esfandiar Mohammadi

A Problem with Malleability

28

(h,P1,P2,P3)

(m,P3,P4,S)

(m,S)

Black-box

h

Page 89: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

E(k4, m))

Practical and Provably Secure OR - Esfandiar Mohammadi

A Problem with Malleability

28

(h,P1,P2,P3)

(m,P3,P4,S)

(m,S)

Black-box

h

Page 90: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

m �=m⊕ c

Practical and Provably Secure OR - Esfandiar Mohammadi

A Problem with Malleability

28

(h,P1,P2,P3)

(m,P3,P4,S)

(m,S)

Black-box

h

Page 91: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

Practical and Provably Secure OR - Esfandiar Mohammadi

Predictable Malleability

• It turns out:We can predict the changes in the plaintext.

• There is a poly-time S and T s.t.

S(w,w') = T and T(m) = D(k,w')

• Generalized: Predictable Malleabilityfor stateful encryption schemes (details in the paper)

➡ Remedy: black-box additionally allows the simulator to send a transformation T

29

Page 92: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

Practical and Provably Secure OR - Esfandiar Mohammadi

A Problem with Malleability

30

(m,S)

Page 93: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

Practical and Provably Secure OR - Esfandiar Mohammadi

A Problem with Malleability

30

(h,P1,P2,P3)

(m,S)

Black-box

Page 94: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

E(k2,E(k3, 0l))

Practical and Provably Secure OR - Esfandiar Mohammadi

A Problem with Malleability

30

(h,P1,P2,P3)

(m,S)

Black-box

Page 95: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

E(k2,E(k3, 0l))

Practical and Provably Secure OR - Esfandiar Mohammadi

A Problem with Malleability

30

(h,P1,P2,P3)

(m,S)

Black-box

Page 96: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

Practical and Provably Secure OR - Esfandiar Mohammadi

A Problem with Malleability

30

(h,P1,P2,P3)

(m,S)

Black-boxE(k2,E(k3, 0l))⊕ c

Page 97: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

E(k2,E(k3, 0l ⊕ c))

Practical and Provably Secure OR - Esfandiar Mohammadi

A Problem with Malleability

30

(h,P1,P2,P3)

(m,S)

Black-box

Page 98: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

E(k3, 0l ⊕ c)

Practical and Provably Secure OR - Esfandiar Mohammadi

A Problem with Malleability

30

(h,P1,P2,P3)

(m,S)

Black-box

Page 99: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

E(k3, 0l ⊕ c)

T(m) := m⊕ c

Practical and Provably Secure OR - Esfandiar Mohammadi

A Problem with Malleability

30

(h,P1,P2,P3)

(m,S)

Black-box

(h, T)

Page 100: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

T(m) := m⊕ c

Practical and Provably Secure OR - Esfandiar Mohammadi

A Problem with Malleability

30

(h,P1,P2,P3)

(T(m),P3,P4,S)

(m,S)

Black-box

(h, T)

Page 101: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

T(m) := m⊕ c

Practical and Provably Secure OR - Esfandiar Mohammadi

A Problem with Malleability

30

(h,P1,P2,P3)

(T(m),P3,P4,S)

(m,S)

Black-box

(h, T)

Page 102: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

T(m) := m⊕ c

E(k4, m⊕ c)

Practical and Provably Secure OR - Esfandiar Mohammadi

A Problem with Malleability

30

(h,P1,P2,P3)

(T(m),P3,P4,S)

(m,S)

Black-box

(h, T)

Page 103: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

T(m) := m⊕ c

Practical and Provably Secure OR - Esfandiar Mohammadi

A Problem with Malleability

30

(h,P1,P2,P3)

(T(m),P3,P4,S)

(m,S)

Black-box

(h, T)

m⊕ c

Page 104: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

Practical and Provably Secure OR - Esfandiar Mohammadi

Our main result

• The Tor protocol – allowing to reuse circuits– with a strengthened integrity check

– with secure one-way AKE– against (partially) global active attackers

(details in the paper)

• realizes our black-box

31

Page 105: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

Practical and Provably Secure OR - Esfandiar Mohammadi

Applications of this result

• For the OR anonymity analysis of Feigenbaum, Johnson, and Syverson– we show the exact conditions under which their result

applies.

• We did a first step towards proving forward secrecy

32

Page 106: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

Practical and Provably Secure OR - Esfandiar Mohammadi

Future Work

• Incorporate timing attacks into the analysis

• Is a black-box leaking the reusage of a circuit useful?• Implications of removing the TLS link between routers

– the circuit ids are leaked to a network attacker

• Predictable malleability might be a useful notion for simulation-based proofs– e.g., for protocols that use efficient but malleable stream

ciphers

33

Page 107: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

If h = - then draw a fresh handle h

b*b x := (h,U,S,m)(1-b)*b x := (h,-,S,m)b*(1-b) x := (h,U,-)(1-b)*(1-b) x := (h,-,-)

Practical and Provably Secure OR - Esfandiar Mohammadi

Recall the elegant Overapproximation

34

(S, m, h)user

with probabilityx

attacker

m 1m 2

I know this routeb : fraction of compromised nodes

Page 108: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

Practical and Provably Secure OR - Esfandiar Mohammadi

Future Work

• Incorporate timing attacks into the analysis

• Is a black-box leaking the reusage of a circuit useful?• Implications of removing the TLS link between routers

– the circuit ids are leaked to a network attacker

• Predictable malleability might be a useful notion for simulation-based proofs– e.g., for protocols that use efficient but malleable stream

ciphers

35

Page 109: Practical and Provably Secure Onion Routing · 2012-07-16 · Practical and Provably Secure Onion Routing [IEEE CSF '12] Practical and Provably Secure OR - Esfandiar Mohammadi Anonymous

Thank you!

Questions?

Practical and Provably Secure OR - Esfandiar Mohammadi