+ All Categories
Home > Documents > Social Networking with Frientegrity - USENIX · Online social networks are centralized" Social...

Social Networking with Frientegrity - USENIX · Online social networks are centralized" Social...

Date post: 24-Jun-2020
Category:
Upload: others
View: 0 times
Download: 0 times
Share this document with a friend
27
Social Networking with Frientegrity: Privacy and Integrity with an Untrusted Provider Social Networking with Frientegrity — Ariel J. Feldman — Usenix Security 8/10/12 1 Joint work with: Aaron Blankstein, Michael J. Freedman, and Edward W. Felten Ariel J. Feldman Princeton UPenn
Transcript
Page 1: Social Networking with Frientegrity - USENIX · Online social networks are centralized" Social Networking with Frientegrity — Ariel J. Feldman — Usenix Security 8/10/12" 2" Pro:

Social Networking with Frientegrity:Privacy and Integrity with an Untrusted Provider"

Social Networking with Frientegrity — Ariel J. Feldman — Usenix Security 8/10/12" 1"

Joint work with:"Aaron Blankstein, Michael J. Freedman, and Edward W. Felten"

Ariel J. Feldman"Princeton" UPenn"

Page 2: Social Networking with Frientegrity - USENIX · Online social networks are centralized" Social Networking with Frientegrity — Ariel J. Feldman — Usenix Security 8/10/12" 2" Pro:

Online social networks are centralized"

Social Networking with Frientegrity — Ariel J. Feldman — Usenix Security 8/10/12" 2"

Pro: Availability, reliability, global accessibility, convenience"

Con: 3rd party involved in every social interaction"Must trust provider for

confidentiality & integrity"

Page 3: Social Networking with Frientegrity - USENIX · Online social networks are centralized" Social Networking with Frientegrity — Ariel J. Feldman — Usenix Security 8/10/12" 2" Pro:

Google Transparency Report Jan. – Jun. 2011"

Threats to confidentiality"•  Theft by attackers"

•  Accidental leaks"

•  Privacy policy changes"

•  Government pressure"

Social Networking with Frientegrity — Ariel J. Feldman — Usenix Security 8/10/12" 3"

PC World. Dec. 6, 2011"

WSJ. Feb. 22, 2012"

EFF. Apr. 28, 2010"

Ars Technica. Mar. 11, 2011"

Page 4: Social Networking with Frientegrity - USENIX · Online social networks are centralized" Social Networking with Frientegrity — Ariel J. Feldman — Usenix Security 8/10/12" 2" Pro:

Threats to integrity"

Social Networking with Frientegrity — Ariel J. Feldman — Usenix Security 8/10/12" 4"

Simple: Corrupting messages"

Complex: Server equivocation"

Server"

Alice"

1" 2" 3"

Bob"

1" 3" 2"

Equivocation in the wild:"

http://songshinan.blog.caixin.com/archives/22322 (translated by Google)"

(e.g to disguise censorship)"

Page 5: Social Networking with Frientegrity - USENIX · Online social networks are centralized" Social Networking with Frientegrity — Ariel J. Feldman — Usenix Security 8/10/12" 2" Pro:

Limits of prior work"

Social Networking with Frientegrity — Ariel J. Feldman — Usenix Security 8/10/12" 5"

1.  Cryptographic"

2.  Decentralized"

Run your own server"

OR"Trust a provider"

Don’t protect integrity"

(sacrifice availability, convenience, etc.)   (who you may not know either)  

Page 6: Social Networking with Frientegrity - USENIX · Online social networks are centralized" Social Networking with Frientegrity — Ariel J. Feldman — Usenix Security 8/10/12" 2" Pro:

Frientegrity’s approach"

Social Networking with Frientegrity — Ariel J. Feldman — Usenix Security 8/10/12" 6"

Client" Client"

Server"Server"

Provider"

Client"

Benefit from a centralized provider"

Support common features"(e.g. walls, feeds, friends, FoFs, followers)"

Assume untrusted provider"

Server"Server"

Page 7: Social Networking with Frientegrity - USENIX · Online social networks are centralized" Social Networking with Frientegrity — Ariel J. Feldman — Usenix Security 8/10/12" 2" Pro:

Enforce confidentiality"

Social Networking with Frientegrity — Ariel J. Feldman — Usenix Security 8/10/12" 7"

Client" Client"

Server"Server"

Provider"

Client"

Provider only observes encrypted data"(Need dynamic access control and key distribution)"

State"Encrypted"state"

Page 8: Social Networking with Frientegrity - USENIX · Online social networks are centralized" Social Networking with Frientegrity — Ariel J. Feldman — Usenix Security 8/10/12" 2" Pro:

Verify integrity"

Social Networking with Frientegrity — Ariel J. Feldman — Usenix Security 8/10/12" 8"

Client" Client"

Server"Server"

Provider"

Client"

Clients verify that the provider:"•  Hasn’t corrupted individual updates"

•  Hasn’t equivocated"

•  Enforced access control on writes"

Page 9: Social Networking with Frientegrity - USENIX · Online social networks are centralized" Social Networking with Frientegrity — Ariel J. Feldman — Usenix Security 8/10/12" 2" Pro:

Scalability challenges"

Social Networking with Frientegrity — Ariel J. Feldman — Usenix Security 8/10/12" 9"

Long histories; only want tail"

Many objects (walls, comment threads, photos, etc.)"

Many friends and FoFs"

Don’t verify whole history each time"

Support sharding"

O(log n) “(un)friending”"

Page 10: Social Networking with Frientegrity - USENIX · Online social networks are centralized" Social Networking with Frientegrity — Ariel J. Feldman — Usenix Security 8/10/12" 2" Pro:

Server 1"

Frientegrity overview"

Social Networking with Frientegrity — Ariel J. Feldman — Usenix Security 8/10/12" 10"

Server 2"

Bob’s profile"

Server n"

Bob"

Read Alice’s wall"

Verify & decrypt"

Alice’s wall"

Alice’s photo album"

Alice’s ACL"

Comment thread"

Alice’s profile"

Optionally entangled"

Checked for equivocation"

3.  Proof of ACL enforcement"4.  Decryption keys"

1.  Latest updates"2.  Proof of no equivocation"

Page 11: Social Networking with Frientegrity - USENIX · Online social networks are centralized" Social Networking with Frientegrity — Ariel J. Feldman — Usenix Security 8/10/12" 2" Pro:

Detecting equivocation"

Social Networking with Frientegrity — Ariel J. Feldman — Usenix Security 8/10/12" 11"

•  Honest server: linearizability"•  Malicious server: Alice and Bob

detect equivocation after exchanging 2 messages"

•  Compare histories"

Provider can still fork the clients, but can’t unfork"

Server"

Alice"

1" 2" 3"

Bob"

1" 3" 2"

Enforce fork* consistency [LM07]"

Page 12: Social Networking with Frientegrity - USENIX · Online social networks are centralized" Social Networking with Frientegrity — Ariel J. Feldman — Usenix Security 8/10/12" 2" Pro:

Comparing histories"

Social Networking with Frientegrity — Ariel J. Feldman — Usenix Security 8/10/12" 12"

op0" op1" op2" op3" op4" op5" op6" op7"

hn= H(hn-1 || opn)"

Hash chains are O(n)"(and must download the whole history)"

Previously: use a hash chain"

Page 13: Social Networking with Frientegrity - USENIX · Online social networks are centralized" Social Networking with Frientegrity — Ariel J. Feldman — Usenix Security 8/10/12" 2" Pro:

Objects in Frientegrity"

Social Networking with Frientegrity — Ariel J. Feldman — Usenix Security 8/10/12" 13"

op0" op1" op2" op3" op4" op5" op6" op7" op8" op9" op10" op11" op12" op13" op14" op15"

History tree [CW09]"

hroot commits to entire history "

Let C15 be a server-signed commitment to

hroot up to op15 "

hi = H(hleftChild(i) || hrightChild(i))"

Page 14: Social Networking with Frientegrity - USENIX · Online social networks are centralized" Social Networking with Frientegrity — Ariel J. Feldman — Usenix Security 8/10/12" 2" Pro:

Objects (cont.)"

Social Networking with Frientegrity — Ariel J. Feldman — Usenix Security 8/10/12" 14"

op0" op1" op8" op9" op14" op15"

C15"Is C8 consistent

with C15?"

Page 15: Social Networking with Frientegrity - USENIX · Online social networks are centralized" Social Networking with Frientegrity — Ariel J. Feldman — Usenix Security 8/10/12" 2" Pro:

Verifying an object"

Social Networking with Frientegrity — Ariel J. Feldman — Usenix Security 8/10/12" 15"

op0" op1" op2" op3" op4" op5" op6" op7" op8" op9" op10" op11" op12" op13" op14" op15"

C11"

Is C11 consistent with C15?"

C8"C4"C0"

Alice’s ops"Bob’s ops"

Charlie’s ops"

Clients collaborate to verify the history"

Page 16: Social Networking with Frientegrity - USENIX · Online social networks are centralized" Social Networking with Frientegrity — Ariel J. Feldman — Usenix Security 8/10/12" 2" Pro:

Tolerating malicious users"

Social Networking with Frientegrity — Ariel J. Feldman — Usenix Security 8/10/12" 16"

op0" op1" op8" op9" op10" op11" op12" op13" op14" op15"

C11"

Alice’s ops"Bob’s ops"

Charlie’s ops"

Bob’s ops"

C9"

Tolerate up to f malicious users"

op15"

C11"

Page 17: Social Networking with Frientegrity - USENIX · Online social networks are centralized" Social Networking with Frientegrity — Ariel J. Feldman — Usenix Security 8/10/12" 2" Pro:

Server"

Access control"

Social Networking with Frientegrity — Ariel J. Feldman — Usenix Security 8/10/12" 17"

Bob"Verify & decrypt"

Alice’s wall"

Alice’s photo album"

Alice’s ACL"

Comment thread"

Prove ACL enforcement"

Efficient key distribution"

O(log n) “(un)friending”"

Page 18: Social Networking with Frientegrity - USENIX · Online social networks are centralized" Social Networking with Frientegrity — Ariel J. Feldman — Usenix Security 8/10/12" 2" Pro:

Server"

Proving ACL enforcement"

Social Networking with Frientegrity — Ariel J. Feldman — Usenix Security 8/10/12" 18"

Bob"Verify & decrypt"

Alice’s wall"

Alice’s photo album"

Alice’s ACL"

Comment thread"

Alice   Charlie  

Bob  

Emma  

Sean  

David  

hi = H(hleftChild(i) || hrightChild(i))"hroot signed by Alice "

Persistent authenticated

dictionary "[AGT01]"

Page 19: Social Networking with Frientegrity - USENIX · Online social networks are centralized" Social Networking with Frientegrity — Ariel J. Feldman — Usenix Security 8/10/12" 2" Pro:

Server"

Efficient key distribution"

Social Networking with Frientegrity — Ariel J. Feldman — Usenix Security 8/10/12" 19"

Bob"Verify & decrypt"

Alice’s wall"

Alice’s photo album"

Alice’s ACL"

Comment thread"

Alice   Charlie  

Bob  

Emma  

Sean  

David  

Key graph"[WGL98]"

k0 = kalice_friend"Ek3(k1) || Ek4(k1)"

David, k0  

Bob, k1   Sean, k2  

Alice, k3   Charlie, k4   Emma, k5  

Echarlie_pk(k4)"

Page 20: Social Networking with Frientegrity - USENIX · Online social networks are centralized" Social Networking with Frientegrity — Ariel J. Feldman — Usenix Security 8/10/12" 2" Pro:

Server"

Adding a friend"

Social Networking with Frientegrity — Ariel J. Feldman — Usenix Security 8/10/12" 20"

Bob"Verify & decrypt"

Alice’s wall"

Alice’s photo album"

Alice’s ACL"

Comment thread"David, k0  

Bob, k1   Sean, k2  

Alice, k3   Charlie, k4   Emma, k5  

Ek5(k2) || Ek6(k2)"

Ezack_pk(k6)"

Zack, k6  

Page 21: Social Networking with Frientegrity - USENIX · Online social networks are centralized" Social Networking with Frientegrity — Ariel J. Feldman — Usenix Security 8/10/12" 2" Pro:

Server"

Removing a friend"

Social Networking with Frientegrity — Ariel J. Feldman — Usenix Security 8/10/12" 21"

Bob"Verify & decrypt"

Alice’s wall"

Alice’s photo album"

Alice’s ACL"

Comment thread"David, k0  

Bob, k1   Sean, k2  

Alice, k3   Charlie, k4   Emma, k5   Zack, k6  

Bob, k1’  

David, k0’  

k0’ = kalice_friend’"

Page 22: Social Networking with Frientegrity - USENIX · Online social networks are centralized" Social Networking with Frientegrity — Ariel J. Feldman — Usenix Security 8/10/12" 2" Pro:

Efficient enough in practice?"

Social Networking with Frientegrity — Ariel J. Feldman — Usenix Security 8/10/12" 22"

Setup"•  Java client & server"•  Simulate basic Facebook features (each user has wall & ACL)"•  2048-bit RSA sign & verify batched via spliced signatures [CW10]"

•  Experiments on LAN (8-core 2.4 GHz Intel Xeon E5620s, Gigabit network)"

Measurements"•  Latency of reads & writes to objects"•  Latency of ACL changes"•  Throughput (in paper)"•  Effect of tolerating malicious users "

Page 23: Social Networking with Frientegrity - USENIX · Online social networks are centralized" Social Networking with Frientegrity — Ariel J. Feldman — Usenix Security 8/10/12" 2" Pro:

0 5K 10K 15K 20K 25KObject History Size

0

2

4

6

8

10

12

14

Res

pons

eLa

tenc

y(m

s)

WriteRead

Object read & write latency"

Social Networking with Frientegrity — Ariel J. Feldman — Usenix Security 8/10/12" 23"

Frientegrity"(collaborative verification)"

Hash chain"

Constant cost of signatures dominates"

0 500 1000 1500Object History Size

0

200

400

600

800

1000

Res

pons

eLa

tenc

y(m

s)

ReadWrite

Page 24: Social Networking with Frientegrity - USENIX · Online social networks are centralized" Social Networking with Frientegrity — Ariel J. Feldman — Usenix Security 8/10/12" 2" Pro:

Latency of ACL changes"

Social Networking with Frientegrity — Ariel J. Feldman — Usenix Security 8/10/12" 24"

0 200 400 600 800 1000ACL Size

0

5

10

15

20

25

30

35

Res

pons

eLa

tenc

y(m

s)

Add User Revoke User

Page 25: Social Networking with Frientegrity - USENIX · Online social networks are centralized" Social Networking with Frientegrity — Ariel J. Feldman — Usenix Security 8/10/12" 2" Pro:

0 10 20 30 40 50f +1

10

100

1000

Res

pons

eLa

tenc

y(m

s)

PowerUniform

Tolerating malicious users"

Social Networking with Frientegrity — Ariel J. Feldman — Usenix Security 8/10/12" 25"

• 50 writers"• 5000 operations"

Page 26: Social Networking with Frientegrity - USENIX · Online social networks are centralized" Social Networking with Frientegrity — Ariel J. Feldman — Usenix Security 8/10/12" 2" Pro:

Summary"

Social Networking with Frientegrity — Ariel J. Feldman — Usenix Security 8/10/12" 26"

Both confidentiality & integrity need protection"

Benefit from centralization, but provider is untrusted"

Clients collaborate to defend against equivocation"

Scalable, verifiable access control & key distribution"

Page 27: Social Networking with Frientegrity - USENIX · Online social networks are centralized" Social Networking with Frientegrity — Ariel J. Feldman — Usenix Security 8/10/12" 2" Pro:

Social Networking with Frientegrity — Ariel J. Feldman — Usenix Security 8/10/12" 27"

Thank you!Questions?"

""

http://arifeldman.com"[email protected]"


Recommended