anonymous communications

38
1 Anonymous Communications CSE 5473: Network Security Lecture due to Prof. Dong Xuan Some material from Prof. Joan Feigenbaum

Upload: megan-kirk

Post on 01-Jan-2016

33 views

Category:

Documents


0 download

DESCRIPTION

Anonymous Communications. CSE 5473: Network Security Lecture due to Prof. Dong Xuan Some material from Prof. Joan Feigenbaum. Outline. Overview and Concepts Anonymous Schemes Onion Routing Crowd Hordes Incomparable Public Keys. Motivation. Is Internet communication private? - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Anonymous Communications

1

Anonymous Communications

CSE 5473: Network Security

Lecture due to Prof. Dong XuanSome material from Prof. Joan Feigenbaum

Page 2: Anonymous Communications

2

OutlineOutline

Overview and Concepts

Anonymous Schemes Onion Routing Crowd Hordes Incomparable Public Keys

Page 3: Anonymous Communications

3

Motivation

Is Internet communication private?

No! ... Why? Routing information is completely ‘open’

(visible) to the network and its users.• e.g. IP Source, IP destination addresses.

Traffic Analysis can result in loss of privacy throwing up patterns showing communication propensities of internet users.

Page 4: Anonymous Communications

4

Motivation...

Do we need private communication?

Yes…

Existence of inter-company collaboration may be confidential

E-mail users may not wish to reveal who they are

communicating with, to the rest of the world

Anonymity may also be desirable: anonymous e-cash is not

very anonymous if delivered with a return address

Web based shopping or browsing of public databases should

not require revealing one’s identity

Page 5: Anonymous Communications

5

Anonymity Properties

Types of Anonymity• Sender Anonymity• Receiver Anonymity• Unlinkability of sender and receiver

Model of the Attacker• Eavesdropper• Collaboration of parties

Anonymity Degree

Page 6: Anonymous Communications

6

Concept: Mix Networks

First outlined by Chaum in 1981

Provide anonymous communication High latency Message-based (“message-oriented”) One-way or two-way

Page 7: Anonymous Communications

7

Mix Networks

Users Mixes Destinations

Page 8: Anonymous Communications

8

Mix Networks

1. User selects a sequence of mixes and a destination.

2. Onion-encrypt the message.

M1

M2

M3

u d

Protocol Onion Encrypt1. Proceed in reverse order

of the user’s path.

2. Encrypt (message, next hop) with the public

key of the mix.

{{{,d}M3,M3}M2

,M2}M1

Adversary

Users Mixes Destinations

Page 9: Anonymous Communications

9

Mix Networks

1. User selects a sequence of mixes and a destination.

2. Onion-encrypt the message.

3. Send the message, removing a layer of encryption at each mix.

M1

M2

M3

u d

Protocol Onion Encrypt1. Proceed in reverse order

of the user’s path.

2. Encrypt (message, next hop) with the public

key of the mix.

{{{,d}M3,M3}M2

,M2}M1

Adversary

Users Mixes Destinations

Page 10: Anonymous Communications

10

Mix Networks

1. User selects a sequence of mixes and a destination.

2. Onion-encrypt the message.

3. Send the message, removing a layer of encryption at each mix.

M1

M2

M3

u d

Protocol Onion Encrypt1. Proceed in reverse order

of the user’s path.

2. Encrypt (message, next hop) with the public

key of the mix.

{{,d}M3,M3}M2

Adversary

Users Mixes Destinations

Page 11: Anonymous Communications

11

Mix Networks

1. User selects a sequence of mixes and a destination.

2. Onion-encrypt the message.

3. Send the message, removing a layer of encryption at each mix.

M1

M2

M3

u d

Protocol Onion Encrypt1. Proceed in reverse order

of the user’s path.

2. Encrypt (message, next hop) with the public

key of the mix.

{,d}M3

Adversary

Users Mixes Destinations

Page 12: Anonymous Communications

12

Mix Networks

1. User selects a sequence of mixes and a destination.

2. Onion-encrypt the message.

3. Send the message, removing a layer of encryption at each mix.

M1

M2

M3

u d

Protocol Onion Encrypt1. Proceed in reverse order

of the user’s path.

2. Encrypt (message, next hop) with the public

key of the mix.

Adversary

Users Mixes Destinations

Page 13: Anonymous Communications

13

Mix Networks

u d

Adversary

Anonymity?

1. No one mix knows both source and destination.

2. Adversary cannot follow multiple messages through the same mix.

3. More users provides more anonymity.

v e

w f

Users Mixes Destinations

Page 14: Anonymous Communications

14

How Onion Routing Works

User u running client Internet destination d

Routers running servers

u d

1 2

3

45

Page 15: Anonymous Communications

15

How Onion Routing Works

1. u creates 3-hop circuit through routers (u.a.r.).

2. u opens a stream in the circuit to d.

u d

1 2

3

45

Page 16: Anonymous Communications

16

How Onion Routing Works

1. u creates 3-hop circuit through routers (u.a.r.).

2. u opens a stream in the circuit to d.

3. Data are exchanged.

{{{}3}4}1

u d

1 2

3

45

Page 17: Anonymous Communications

17

How Onion Routing Works

1. u creates 3-hop circuit through routers (u.a.r.).

2. u opens a stream in the circuit to d.

3. Data are exchanged.

{{}3}4

u d

1 2

3

45

Page 18: Anonymous Communications

18

How Onion Routing Works

1. u creates 3-hop circuit through routers (u.a.r.).

2. u opens a stream in the circuit to d.

3. Data are exchanged.

{}3

u d

1 2

3

45

Page 19: Anonymous Communications

19

How Onion Routing Works

1. u creates 3-hop circuit through routers (u.a.r.).

2. u opens a stream in the circuit to d.

3. Data are exchanged.

u d

1 2

3

45

Page 20: Anonymous Communications

20

How Onion Routing Works

1. u creates 3-hop circuit through routers (u.a.r.).

2. u opens a stream in the circuit to d.

3. Data are exchanged.

’u d

1 2

3

45

Page 21: Anonymous Communications

21

How Onion Routing Works

1. u creates 3-hop circuit through routers (u.a.r.).

2. u opens a stream in the circuit to d.

3. Data are exchanged.

{’}3

u d

1 2

3

45

Page 22: Anonymous Communications

22

How Onion Routing Works

1. u creates 3-hop circuit through routers (u.a.r.).

2. u opens a stream in the circuit to d.

3. Data are exchanged.

{{’}3}4u d

1 2

3

45

Page 23: Anonymous Communications

23

How Onion Routing Works

1. u creates 3-hop circuit through routers (u.a.r.).

2. u opens a stream in the circuit to d.

3. Data are exchanged.

{{{’}3}4}1

u d

1 2

3

45

Page 24: Anonymous Communications

24

How Onion Routing Works

1. u creates 3-hop circuit through routers (u.a.r.).

2. u opens a stream in the circuit to d.

3. Data are exchanged.

4. Stream is closed.

u d

1 2

3

45

Page 25: Anonymous Communications

25

How Onion Routing Works

1. u creates 3-hop circuit through routers (u.a.r.).

2. u opens a stream in the circuit to d.

3. Data are exchanged.

4. Stream is closed.

5. Circuit is changed every few minutes.

u d

1 2

3

45

Page 26: Anonymous Communications

26

Onion Routing

Provides An infrastructure for Private Communication over a

Public Network

Anonymity of endpoints of communication

Bi-directional and near real-time communication

Resistance to eavesdropping from• Network• Outside Observers of the network

Can be substituted for sockets

Page 27: Anonymous Communications

28

Protocol Operation Establish Anonymous connection through a series of ORs (Onion

Router) instead of a direct socket connection to the destination.

“Initiator” makes a socket connection to an Application Specific Proxy on first OR.

Onion Proxy defines the route

Constructs a layered structure (Onion) and sends it through the network to establish the Virtual Circuit (same as ATM Virtual Circuit Establishment with VPI/VCI).

Onion passes through the entire path to the responder proxy => all involved ORs are initialized with relevant information to encrypt/ decrypt forward/backward data.

Now, initiator’s proxy starts sending data through the anonymous connection.

Page 28: Anonymous Communications

29

Protocol Operation (contd...) Each layer of the onion defines a next hop in the route.

An OR, on receiving an onion peels off its layer chooses new values for incoming/outgoing VCIs. identifies next hop sends the embedded onion to that next hop OR.

Each Onion Layer also contains Keys Keys are used for crypting data sent forward/backward. When the onion bounces along, they are stored at each

intermediate hop (i.e., OR).

Last OR forwards data to Responder’s Proxy that Sits on the firewall of the responder’s sensitive site. Passes data between ORN and the responder.

Page 29: Anonymous Communications

31

The Onion (contd...) What happens to the onion at each hop?

It shrinks in size

Compromised nodes can infer route information from this monotonically diminishing size.

So, a random bit string is appended to the end of the payload before forwarding.

Even ‘constant’ size onion might be traced unless all onions have the same size, so the size of the onion is (universally) standardized (fixed).

Page 30: Anonymous Communications

33

Reply Onion How to reply anonymously?

Send a reply onion embedded as payload in the forward onion

Responder proxy sends this Reply Onion on the reverse path till the Initiator’s Proxy

VC set-up by Forward Onion, so data path is already established.

The Reply Onion is Exactly the same as the Forward onion except that the

innermost payload has• Enough information to enable the initiator’s proxy to

reach the initiator • All cryptographic function/key pairs that are to crypt data

along the Virtual Circuit Processing it is same as processing a Forward Onion Usable only once

• So multiple reply onions need to be sent if multiple replies are required.

Page 31: Anonymous Communications

34

Crowd

jondo

blender

Request admittance

Information to enablejondo to participate

“blending into a crowd”i.e. hiding one’s actions within the actions of many others

How does it work?

Page 32: Anonymous Communications

35

Crowd (contd...)

CrowdGeographically diverse group

Request from browser

Page 33: Anonymous Communications

Crowd (features)

Data may be in the clear: no protection wrt global eavesdropper

No attempt to pad to avoid flow analysis, no attempt to prevent sender-receiver unlinkability

Used for web transactions: browser uses local johndo as proxy for itself, blender sends data of remote johndo’s to this johndo

Paths are selected randomly and hop-by-hop (not a priori circuit selection as in tor)

36

Page 34: Anonymous Communications

37

Hordes

Take advantage of multicast communication Destination address is a multicast group

address, which provides receiver anonymity.

It is difficult to determine the membership of a multicast group.

Even if some group memberships are discovered, anonymity can still be provided.

Page 35: Anonymous Communications

38

Hordes (contd...)

Simple protocol Join a multicast group. Initiator sends request using group address.

• can use either crowds or onion routing for forward path

Server sends reply to the group address. Initiator receives the reply. Non-initiators just ignore the reply.

Page 36: Anonymous Communications

39

Incomparable Public Keys

Take advantage of a novel public key scheme Traditional scheme: one private key, one

public key The new scheme: one private key, but

multiple public keys Feature: one cannot tell whether two public

keys map to the same or different private keys

Page 37: Anonymous Communications

40

Incomparable Public Keys (contd…)

Plus multicast to provide encryption and anonymity Join a multicast group. Initiator sends request using group address

with a public key. Server sends reply, encrypted with the

public key, to the group address. Initiator receives the reply and decrypt it. Non-initiators just ignore the reply. Initiator sends request to the same/another

server using another public key

Page 38: Anonymous Communications

41

Conclusion

What are anonymous communications? Why?

Four representative schemes Onion Routing Crowd Hordes Incomparable Public Keys