Private Anonymous Messaging With Friends
-
Upload
ruchith -
Category
Technology
-
view
523 -
download
1
Transcript of Private Anonymous Messaging With Friends
![Page 1: Private Anonymous Messaging With Friends](https://reader037.fdocuments.net/reader037/viewer/2022110310/559251801a28abc93c8b45c2/html5/thumbnails/1.jpg)
Private Anonymous MessagingWith Friends!
Ruchith Fernando
Purdue University
April 26, 2011
Ruchith Fernando CS 626 : Project Presentation
![Page 2: Private Anonymous Messaging With Friends](https://reader037.fdocuments.net/reader037/viewer/2022110310/559251801a28abc93c8b45c2/html5/thumbnails/2.jpg)
Problem
A user wants to send a message to all his current contacts
Even if they are offline!
Only trusts his/her immediate contacts
A contact can re-distribute messages on requests
Ruchith Fernando CS 626 : Project Presentation
![Page 3: Private Anonymous Messaging With Friends](https://reader037.fdocuments.net/reader037/viewer/2022110310/559251801a28abc93c8b45c2/html5/thumbnails/3.jpg)
Problem
Ruchith Fernando CS 626 : Project Presentation
![Page 4: Private Anonymous Messaging With Friends](https://reader037.fdocuments.net/reader037/viewer/2022110310/559251801a28abc93c8b45c2/html5/thumbnails/4.jpg)
Problem
Ruchith Fernando CS 626 : Project Presentation
![Page 5: Private Anonymous Messaging With Friends](https://reader037.fdocuments.net/reader037/viewer/2022110310/559251801a28abc93c8b45c2/html5/thumbnails/5.jpg)
Proposed Solution
Modify HIBE (Hierarchical Identity Based Encryption withConstant Size Ciphertext, Boneh et.al)
Each contact is issued a private key (only private channel forkey exchange)
Contacts generate anonymous public keys using their privatekeys
Broadcast update request to be processed by other contacts
Re-key mechanism with public data (no private channelrequirement)
Ruchith Fernando CS 626 : Project Presentation
![Page 6: Private Anonymous Messaging With Friends](https://reader037.fdocuments.net/reader037/viewer/2022110310/559251801a28abc93c8b45c2/html5/thumbnails/6.jpg)
Hierarchical Identity Based Encryption
Identities:
Alice: I1Bob: I1, I21Charlie: I1, I22
e : G×G→ G1, |G| = p
params = (g , g1, g2, g3, h1, h2), g1 = gα, α ∈ Zp
mk = g2α
Ruchith Fernando CS 626 : Project Presentation
![Page 7: Private Anonymous Messaging With Friends](https://reader037.fdocuments.net/reader037/viewer/2022110310/559251801a28abc93c8b45c2/html5/thumbnails/7.jpg)
Hierarchical Identity Based Encryption
Alice :
Kpriv alice = KeyGen(I1, params,mk)Kpubalice = I1
Bob :
Kpriv bob = KeyGen(I1, I2, params,Kpriv alice)Kpubbob = I1, I21
To encrypt for BobCT = Encrypt(msg , I1, I21 , params)
Ruchith Fernando CS 626 : Project Presentation
![Page 8: Private Anonymous Messaging With Friends](https://reader037.fdocuments.net/reader037/viewer/2022110310/559251801a28abc93c8b45c2/html5/thumbnails/8.jpg)
Changes to HIBE
Update Encrypt() to work with h1I1h2
I21 = ID
To encrypt for BobCT = Encrypt ′(msg , ID, params)
On re-key update α and only generate minimum public datafor existing contacts.
Ruchith Fernando CS 626 : Project Presentation
![Page 9: Private Anonymous Messaging With Friends](https://reader037.fdocuments.net/reader037/viewer/2022110310/559251801a28abc93c8b45c2/html5/thumbnails/9.jpg)
Usage : Encryption
Contact: First level identity (Ir1) and private key
A contact issues him/herself a second level identity with arandom Ir2Broadcsts a request for data (<user, IDr >) whereIDr = h1
Ir1h2Ir2
Any other contact of the user can respond to the request, byencrypting with paramsuser :CT = Encrypt ′(msg , IDr , paramsuser )
Ruchith Fernando CS 626 : Project Presentation
![Page 10: Private Anonymous Messaging With Friends](https://reader037.fdocuments.net/reader037/viewer/2022110310/559251801a28abc93c8b45c2/html5/thumbnails/10.jpg)
Usage : Revocation
If the user removes a contact
Re-key : Parameters
Generate a new master key : α′ ∈ Zp, g2α′
paramsuser update : Only g1 = gα′
Re-key : Contact private key
Kpriv = (g2α′ · (h1I1 · g3)
r, g r , h2
r , h3r ) = (C1,C2,C3)
Only C1 need to be published along with I1Indexed by blinded IDcontact
Ruchith Fernando CS 626 : Project Presentation
![Page 11: Private Anonymous Messaging With Friends](https://reader037.fdocuments.net/reader037/viewer/2022110310/559251801a28abc93c8b45c2/html5/thumbnails/11.jpg)
Implementation
http://code.google.com/p/anon-encrypt/
Using Java Pairing Based Cryptography Library (JPBC)1
Implemented as a library
Demo application
1http://gas.dia.unisa.it/projects/jpbc/Ruchith Fernando CS 626 : Project Presentation
![Page 12: Private Anonymous Messaging With Friends](https://reader037.fdocuments.net/reader037/viewer/2022110310/559251801a28abc93c8b45c2/html5/thumbnails/12.jpg)
Demonstration
DEMO!,
Ruchith Fernando CS 626 : Project Presentation