26
1 Do I Know You? Efficient, Privacy-Preserving Protocols for Finding Common Friends Marcin Nagy, Aalto University (joint work with Emiliano De Cristofaro, Alexandra Dmitrienko, N. Asokan, Ahmad-Reza Sadeghi) 12 th December 2013

Do I Know Y ou? Efficient, Privacy-Preserving Protocols for Finding Common Friends

  • Upload
    taniel

  • View
    40

  • Download
    0

Embed Size (px)

DESCRIPTION

Do I Know Y ou? Efficient, Privacy-Preserving Protocols for Finding Common Friends. Marcin Nagy, Aalto University (joint work with Emiliano De Cristofaro , Alexandra Dmitrienko , N. Asokan , Ahmad-Reza Sadeghi ). 12 th December 2013. Problem. - PowerPoint PPT Presentation

Citation preview

Page 1: Do I Know  Y ou? Efficient, Privacy-Preserving Protocols for Finding Common Friends

1

Do I Know You?Efficient, Privacy-Preserving Protocols for Finding Common Friends

Marcin Nagy, Aalto University (joint work with Emiliano De Cristofaro, Alexandra Dmitrienko, N. Asokan, Ahmad-Reza Sadeghi)

12th December 2013

Page 2: Do I Know  Y ou? Efficient, Privacy-Preserving Protocols for Finding Common Friends

Problem

How can you find if you have common friends with someone (nearby)?

… in a privacy-preserving way

2

Page 3: Do I Know  Y ou? Efficient, Privacy-Preserving Protocols for Finding Common Friends

Applications

• Intuitive means for specifying access control– Ride sharing– Tethering Internet access– ...

• Information– Friend radar

• ...

3

Page 4: Do I Know  Y ou? Efficient, Privacy-Preserving Protocols for Finding Common Friends

Requirements

• privacy: – no more info. to participants than about common friends

– no additional info. to anybody else (e.g., FourSquare)

• authenticity: – no false claims of friendship

• efficiency: – applicable for mobile usage

– minimize expensive crypto operations

4

Page 5: Do I Know  Y ou? Efficient, Privacy-Preserving Protocols for Finding Common Friends

Outline

• Current approaches

• Our approach: using Bloom Filters

• “Common Friends” framework

5

Page 6: Do I Know  Y ou? Efficient, Privacy-Preserving Protocols for Finding Common Friends

Outline

• Current approaches

• Our approach: using Bloom Filters

• “Common Friends” framework

• Using bloom Filters• “Common Friends” framework

6

Page 7: Do I Know  Y ou? Efficient, Privacy-Preserving Protocols for Finding Common Friends

Using a trusted server

• FourSquare, Tencent, ...

I am at <x,y>I am at <x,y>

7

Bob Angela

Page 8: Do I Know  Y ou? Efficient, Privacy-Preserving Protocols for Finding Common Friends

Using a trusted server• FourSquare, Tencent, …

User Location

Angela (x,y)

Bob (x,y)

... ...

Who is near me?

“Angela”

Privacy

Authenticity

Efficiency

8

Angela Bob

Page 9: Do I Know  Y ou? Efficient, Privacy-Preserving Protocols for Finding Common Friends

Private Set Intersection Protocols

PSI

Input set SI

I R

Input set SR

SI SR

PSI-CA

Input set SI

I R

Input set SR

|SI SR|

Secure in the honest-but-curious modelO(|SI|+|SR|) modular exponentiations

9

[De Cristofaro et al, FC’10, Asiacrypt ’10, CANS’12]

Initiator

Initiator

Responder

Responder

Page 10: Do I Know  Y ou? Efficient, Privacy-Preserving Protocols for Finding Common Friends

PSI

Finding Common Friends using PSI naively

Friend ID

Anna

Carol

...

Friend ID

Carol

David

...

“Carol”

Privacy ?

Authenticity

Efficiency

10

Bob Angela

Page 11: Do I Know  Y ou? Efficient, Privacy-Preserving Protocols for Finding Common Friends

Finding Common Friends using PSI with capabilities1. Distribute (short-lived) bearer capability to friends

2. Private Set Intersection on capability sets to find common friends

PSI

Social Network

User Capability

Angela xx

Bob xx

... ...

Privacy

Authenticity

Efficiency

[PeerShare, Nagy et. al., NordSec 2013 ] 11

Page 12: Do I Know  Y ou? Efficient, Privacy-Preserving Protocols for Finding Common Friends

Other approaches• Authorized PSI

– Input from one side (R), authorized by a trusted (off-line) CA– O(n) modular exponentiations in the size of the input sets

• Private discovery of common social contacts– Friendship certificates exchanged ahead of time– O(n) modular exponentiations in the size of the input sets

Privacy

Authenticity

Efficiency

12

[De Cristofaro et. al., ACNS’11]

[De Cristofaro et. al., Asiacrypt’10]

Page 13: Do I Know  Y ou? Efficient, Privacy-Preserving Protocols for Finding Common Friends

Outline

framework

13

• Current approaches

• Our approach: using Bloom Filters

• “Common Friends” framework

• Using bloom Filters• “Common Friends” framework

Page 14: Do I Know  Y ou? Efficient, Privacy-Preserving Protocols for Finding Common Friends

Can we build a faster “PSI”?

• Why are classic PSIs slow? • Designed to work even when input sets are enumerable

– i.e., elements are predictable• Naive hash-each-element approach fast, but insecure for

enumerable input sets• However, bearer capabilities are random

– Hash-each-element approach is safe– Still O(n) communication complexity

• Idea: use a Bloom Filter to represent input set

14

Page 15: Do I Know  Y ou? Efficient, Privacy-Preserving Protocols for Finding Common Friends

What is Bloom Filter?

Efficient data structure used for testing if an element is in the input set

15

Inserting

Testing

Source: Wikipedia

Page 16: Do I Know  Y ou? Efficient, Privacy-Preserving Protocols for Finding Common Friends

insert elements into BF

check each elements for presence in BF BF

BFPSI Protocol

16

Privacy

Authenticity

Efficiency

Not a replacement for PSI in general!

Initiator I Responder R

Channel binding

Secure channel establishment

False positives removale.g., challenge-response

Man-in-the-middle

False positives

Insecure channel

Challenges

Page 17: Do I Know  Y ou? Efficient, Privacy-Preserving Protocols for Finding Common Friends

cset,rrand,ckey

irand,rset

)rinsert(.BF:Rr jIIj

160R }1,0{ckey

IBF

Initiator I Responder RInputs:SKI,PKI,RI

Inputs:SKR,PKR,RR

SKI, PKI SKR, PKR

PKR, KIR PKI, KIR

DH-KeyExchange

Rkk

RIkR

R)c,ID(

PKPKcR

s.t.

)rcontains(.BF

RrX

I

R s.t.

160R }1,0{rrand

160R }1,0{irand

)rrand,irand(rkey KDF

)rrand,irand(rkey KDF

Ijj

RIjI

R)c,ID(

PKPKcR

s.t.

Channel binding

Challenge/response to remove false positives

Secure channel

Bloom Filter

Page 18: Do I Know  Y ou? Efficient, Privacy-Preserving Protocols for Finding Common Friends

Beyond honest-but-curious model

Capability grants authority to anyone who possesses it

How to defend against capability loss/theft?• Use “friendship certificates”

– distributed the same way as capabilities are– still O(1) exponentiations in size of the input set

18

Page 19: Do I Know  Y ou? Efficient, Privacy-Preserving Protocols for Finding Common Friends

Comparison: execution time

average of 30 runs19

Page 20: Do I Know  Y ou? Efficient, Privacy-Preserving Protocols for Finding Common Friends

Comparison: power consumption

PSI-CA (5 runs)BFPSI (5 runs)

20

Page 21: Do I Know  Y ou? Efficient, Privacy-Preserving Protocols for Finding Common Friends

Outline

• Current approaches• Using bloom Filters

21

• Current approaches

• Using Bloom Filters

• “Common Friends” framework

• Using bloom Filters

skip to summary

Page 22: Do I Know  Y ou? Efficient, Privacy-Preserving Protocols for Finding Common Friends

22

Common Friends Service

App

Set up channel

PKIIReq

accepted/rejectedStartResponder(IReq)

RResRRes StartInitiator(RRes)

IResIRes

Process(IRes)

GetPublicKey

ResultContainer

M ProcessContainer(M)

ResultContainerM

ProcessContainer(M)

getResult getResultResult, KIR

Responder device Initiator device

Result, KIR

Initialize PSI state machine indicated by type

Initialize PSI state machine indicated by type

ResultContainerOptional(possibly repeated

many times)

Inputs:SKR,PKR,RR

Common Friends Service

App

Inputs:SKI,PKI,RI

Page 23: Do I Know  Y ou? Efficient, Privacy-Preserving Protocols for Finding Common Friends

“Common Friends” Framework• Abstract interface

– PSI schemes can be plugged in (currently PSI-CA and BFPSI)

• Used in:

• Easily re-usable by other apps• Source code available on request

TetheringApp nearbyPeople

23

Page 24: Do I Know  Y ou? Efficient, Privacy-Preserving Protocols for Finding Common Friends

Next steps

• Bloom Filter based PSI-CA?• Finding other common attributes?• ...

24

Page 25: Do I Know  Y ou? Efficient, Privacy-Preserving Protocols for Finding Common Friends

Summary• A new, fast “PSI” based on bearer capabilities• Privacy and Authenticity guaranteed• False positives removed• Massive performance gain: O(1) vs. O(n)• A re-usable framework• An example of leveraging social networks to

improve security/privacy/usability

25

Page 26: Do I Know  Y ou? Efficient, Privacy-Preserving Protocols for Finding Common Friends

Thank you!

Questions?

26