Scalable Anonymous Group Communication in the Anytrust Model David Wolinsky 1, Henry Corrigan-Gibbs 1, Bryan Ford 1, and Aaron Johnson 2 1 Yale University,

Slides:



Advertisements
Similar presentations
The Diffie-Hellman Algorithm
Advertisements

Conscript Your Friends into Larger Anonymity Sets with JavaScript ACM Workshop on Privacy in the Electronic Society 4 November 2013 Henry Corrigan-Gibbs.
By Md Emran Mazumder Ottawa University Student no:
Secure Multiparty Computations on Bitcoin
CIS 725 Key Exchange Protocols. Alice ( PB Bob (M, PR Alice (hash(M))) PB Alice Confidentiality, Integrity and Authenication PR Bob M, hash(M) M, PR Alice.
CS470, A.SelcukCryptographic Authentication1 Cryptographic Authentication Protocols CS 470 Introduction to Applied Cryptography Instructor: Ali Aydin Selcuk.
Dissent in Numbers: Making Strong Anonymity Scale David Wolinsky 1, Henry Corrigan-Gibbs 1, Bryan Ford 1, and Aaron Johnson 2 1 Yale University, 2 US Naval.
CSC 774 Advanced Network Security
1 Dissent: Accountable, Anonymous Communication Joan Feigenbaum Joint work with Bryan Ford, Henry Corrigan-Gibbs, Yixuan.
Spring 2000CS 4611 Security Outline Encryption Algorithms Authentication Protocols Message Integrity Protocols Key Distribution Firewalls.
Internet and Intranet Protocols and Applications Lecture 9a: Secure Sockets Layer (SSL) March, 2004 Arthur Goldberg Computer Science Department New York.
1 Lecture 17: SSL/TLS history, architecture basic handshake session initiation/resumption key computation negotiating cipher suites application: SET.
1 Network Security Outline Encryption Algorithms Authentication Protocols Message Integrity Protocols Key Distribution Firewalls.
CS555Topic 241 Cryptography CS 555 Topic 24: Secure Function Evaluation.
By: Mr Hashem Alaidaros MIS 326 Lecture 6 Title: E-Business Security.
1 Supplement III: Security Controls What security services should network systems provide? Confidentiality Access Control Integrity Non-repudiation Authentication.
Introduction to Modern Cryptography, Lecture 12 Secure Multi-Party Computation.
Lect. 18: Cryptographic Protocols. 2 1.Cryptographic Protocols 2.Special Signatures 3.Secret Sharing and Threshold Cryptography 4.Zero-knowledge Proofs.
Security and Privacy Issues in Wireless Communication By: Michael Glus, MSEE EEL
Proactively Accountable Anonymous Messaging in Verdict Henry Corrigan-Gibbs, David Isaac Wolinsky, and Bryan Ford Department of Computer Science Yale University.
Authentication attacks, causes and solutions Analyzing man in the middle and dictionary attacks against SSL/TLS and password based authentication systems.
1 Analyzing Anonymity Protocols 1.Analyzing onion-routing security 1.Anonymity Analysis of Onion Routing in the Universally Composable Framework in Provable.
Hang with Your Buddies to Resist Intersection Attacks David Wolinsky, Ewa Syta, Bryan Ford Yale University.
Introduction to Modern Cryptography, Lecture 13 Money Related Issues ($$$) and Odds and Ends.
CSCI283 Fall 2005 GWU All slides from Bishop’s slide set Public Key Infrastructure (PKI)
 Authorization via symmetric crypto  Key exchange o Using asymmetric crypto o Using symmetric crypto with KDC  KDC shares a key with every participant.
Dissent: Accountable Anonymous Group Messaging Henry Corrigan-Gibbs and Bryan Ford Department of Computer Science Yale University 17 th ACM Conference.
Dr Alejandra Flores-Mosri Message Authentication Internet Management & Security 06 Learning outcomes At the end of this session, you should be able to:
Spring 2002CS 4611 Security Outline Encryption Algorithms Authentication Protocols Message Integrity Protocols Key Distribution Firewalls.
Cryptographic Techniques Instructor: Jerry Gao Ph.D. San Jose State University URL: May,
Secure communications Week 10 – Lecture 2. To summarise yesterday Security is a system issue Technology and security specialists are part of the system.
Symmetric Key Distribution Protocol with Hybrid Crypto Systems Tony Nguyen.
ITIS 6200/8200. time-stamping services Difficult to verify the creation date and accurate contents of a digital file Required properties of time-stamping.
Electronic Voting Schemes and Other stuff. Requirements Only eligible voters can vote (once only) No one can tell how voter voted Publish who voted (?)
CMSC 414 Computer and Network Security Lecture 19 Jonathan Katz.
More on AuthenticationCS-4513 D-term More on Authentication CS-4513 Distributed Computing Systems (Slides include materials from Operating System.
EECC694 - Shaaban #1 lec #16 Spring Properties of Secure Network Communication Secrecy: Only the sender and intended receiver should be able.
Spring 2003CS 4611 Security Outline Encryption Algorithms Authentication Protocols Message Integrity Protocols Key Distribution Firewalls.
K-Anonymous Message Transmission Luis von Ahn Andrew Bortz Nick Hopper The Aladdin Center Carnegie Mellon University.
1 CS 194: Distributed Systems Security Scott Shenker and Ion Stoica Computer Science Division Department of Electrical Engineering and Computer Sciences.
CRYPTOGRAPHIC DATA INTEGRITY ALGORITHMS
Alexander Potapov.  Authentication definition  Protocol architectures  Cryptographic properties  Freshness  Types of attack on protocols  Two-way.
Russ Housley IETF Chair Founder, Vigil Security, LLC 8 June 2009 NIST Key Management Workshop Key Management in Internet Security Protocols.
CSCI 6962: Server-side Design and Programming
Chapter 31 Network Security
CS5204 – Fall Cryptographic Security Presenter: Hamid Al-Hamadi October 13, 2009.
Digital Cash By Gaurav Shetty. Agenda Introduction. Introduction. Working. Working. Desired Properties. Desired Properties. Protocols for Digital Cash.
CSE 486/586, Spring 2012 CSE 486/586 Distributed Systems Case Study: TOR Anonymity Network Bahadir Ismail Aydin Computer Sciences and Engineering University.
SSL and https for Secure Web Communication CSCI 5857: Encoding and Encryption.
Freenet: A Distributed Anonymous Information Storage and Retrieval System Presenter: Chris Grier ECE 598nb Spring 2006.
Protecting Internet Communications: Encryption  Encryption: Process of transforming plain text or data into cipher text that cannot be read by anyone.
E-Commerce Security Professor: Morteza Anvari Student: Xiaoli Li Student ID: March 10, 2001.
4 th lecture.  Message to be encrypted: HELLO  Key: XMCKL H E L L O message 7 (H) 4 (E) 11 (L) 11 (L) 14 (O) message + 23 (X) 12 (M) 2 (C) 10 (K) 11.
Chapter 31 Cryptography And Network Security Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
Security protocols  Authentication protocols (this lecture)  Electronic voting protocols  Fair exchange protocols  Digital cash protocols.
Class 8 Introduction to Anonymity CIS 755: Advanced Computer Security Spring 2015 Eugene Vasserman
Encryption No. 1  Seattle Pacific University Encryption: Protecting Your Data While in Transit Kevin Bolding Electrical Engineering Seattle Pacific University.
1 Needham-Schroeder A --> S: A,B, N A S --> A: {N A,B,K AB,{K AB,A} KBS } KAS A --> B:{K AB,A} KBS B --> A:{N B } KAB A --> B:{N B -1} KAB.
Software Security Seminar - 1 Chapter 4. Intermediate Protocols 발표자 : 이장원 Applied Cryptography.
Private key
Innovations in P2P Communications David A. Bryan College of William and Mary April 11, 2006 Advisor: Bruce B. Lowekamp.
DC-Networks – The Protocol. 2 DC-Networks - The Protocol toc Introduction Time Excluding bad clients Key Exchange Demonstration Some Attacks On-demand.
Security Outline Encryption Algorithms Authentication Protocols
Advanced Computer Networks
---On the ‘Vuvuzela’ Scheme
Message Digest Cryptographic checksum One-way function Relevance
SSH: SECURE LOGIN CONNECTIONS OVER THE INTERNET
Blockchains and Auditing
Dissent: Accountable, Anonymous Communication
Presentation transcript:

Scalable Anonymous Group Communication in the Anytrust Model David Wolinsky 1, Henry Corrigan-Gibbs 1, Bryan Ford 1, and Aaron Johnson 2 1 Yale University, 2 US Naval Research Laboratory

Motivation for Anonymity Support democracy – freedom of speech Arab Spring Publicly traceable communication opposing the government could result in imprisonment (or worse…) Publicly shared, untraceable communication amongst a very large group might result in a significantly lighter punishment, such as a fine or loss of Internet connectivity Discuss sensitive topics without fear of reprisal Solution: Anonymous Network Communication!

Anonymity System Goals Sender anonymity – a message cannot be traced back to the submitting member Integrity – messages are received unmodified Accountability – misbehaving members will be third- party verifiably identified Scalability Support 100s to 1,000s of active participants within a single anonymity set “short” delays – time between message transmission and reception should be on the order of seconds Churn should have limited impact

Organization Motivation and Goals Existing Approaches Trust Models D3 = Anytrust(Dissent) + ε Analysis Future Work / Parallel Projects

Organization Motivation and Goals Existing Approaches Trust Models D3 = Anytrust(Dissent) + ε Analysis Future Work / Parallel Projects

Existing Systems – Tor “Onion Routing” Anonymous Client Anonymous Client Anonymizing Relays Public Server

DC-net Alice’s Secret 1 1 Alice+Bob's Random Bit Alice+Carol's Random Bit 0 Bob+Carol's Random Bit =1

The Dissent Model Data Key Alice Key Bob Key Carol Shuffle Key Carol Key Alice Key Bob DC-net {Data}Key Carol {Data}Key Bob {Data}Key Alice Alice BobCarol

Organization Motivation and Goals Existing Approaches Trust Models D3 = Anytrust(Dissent) + ε Analysis Future Work / Parallel Projects

Traditional Flat Topology Crystal Anna Ben Amy Bob Alice Christine Brett Anonymity set size: 8 (Honest participants) Anonymity set size: 4 (Honest participants)

Client/Server Topology Alice BobCarol Server 1 Server 0 Server 2 Crystal Anna Ben Alex Barry Amy Christine Brett

Client/Server Trust Models Trust all servers Unrealistic in the real world Trust no servers – SUNDR Ideal but complicated due to lack of knowledge and message time constraints Trust at least one server – Anytrust With one honest server, anonymity set is equal to the set of all honest members (clients) No need to know which server to trust

Anytrust Alice BobCarol Server 2 Crystal Anna Ben Alex Barry Amy Christine Brett Server 1 Server 0 Anonymity set size: 11 (Honest participants) Anonymity set size remains equal to honest participants as long as there is one honest server.

Organization Motivation and Goals Existing Approaches Trust Models D3 = Anytrust(Dissent) + ε Analysis Future Work / Parallel Projects

D3 DC-net Alice BobCarol Server 1 Server 0 Server 2 Secret A0 Secret A1 Secret A2 Secret C1 Secret B2 Secret B0 Secret B1 Secret C2 Secret C0

D3 DC-net Slot cleartext = RND(seed, (seed, (accusation, (nonce, next msg length, msg), signature))) Ciphertext C,0 = RNG(Secret C0, length) Ciphertext C = Ciphertext C,0 XOR Ciphertext C,1 XOR Ciphertext C,1 XOR (0, …, 0, Slot cleartext, 0, …, 0) Alice BobCarol Server 1 Server 0 Server 2 Ciphertext C Ciphertext A Ciphertext B

D3 DC-net ClientList 0 = (Alice) Ciphertext 0 = Ciphertext A XOR Ciphertext A,0 Ciphertext B,0 XOR Ciphertext C,0 Commit 0 = Hash(Ciphertext 0 ) Cleartext = Ciphertext 0 XOR Ciphertext 1 XOR Ciphertext 2 Signature 0 = {Cleartext} Key0 Server 1 Server 0 Server 2 ClientList 0 ClientList 1 ClientList 2 Commit 0 Commit 1 Commit 2 Ciphertext 0 Ciphertext 1 Ciphertext 2 Signature 0 Signature 1 Signature 2

D3 DC-net Alice BobCarol Server 1 Server 0 Server 2 Cleartext

D3 DC-net Accountability In D3 DC-net, a malicious bit flip resulting in a 0 -> 1 in the cleartext can be used to generate an accusation In a DC-net, client requests accusation shuffle In shuffle, client specifies the bit Servers share client messages and their bits Servers validate the bits to find a mismatch To resolve, the mismatch a server must release shared secret incriminating the client or the server

D3 Shuffle

D3 Shuffle Accountability Two approaches: Cut-and-choose and NI-ZKP Cut-and-choose Each server performs several encryptions and permutations Releases the output of each encryption-permutation round Servers use a distributed RNG to determine which round secrets to release Anyone (namely, servers) can verify proper behavior for the rounds for the secrets that were released NI-ZKP Each server produces a NI-ZKP transcript and transmits with their shuffle output The final server distributes out the resulting message and the set of NI-ZKP Transmits to clients who can also verify the NI-ZKP

D3 Client Connectivity Shuffle Clients submit public key Disconnect Connect at a later time to retrieve set of anonymized public keys DC-net Clients can join any time, only need to learn the nonce Servers quickly adjust Ciphertext to client online state

Organization Motivation and Goals Existing Approaches Introduction to Dissent Trust Models D3 = Anytrust(Dissent) + ε Analysis Future Work / Parallel Projects

Analytical Comparison FeatureDissentD3 ShuffleCommO(N) serial stepsO(1) AnonO(K), K = honest members O(K), K = honest members, assuming 1 honest server DC-netCommO(N 2 ) messages O(N 2 ) shared secrets O(N) messages O(N) shared secrets AnonO(K), K = honest members O(K), K = honest members, assuming 1 honest server

PlanetLab Experiences 10 servers running at Yale 100+ clients running on PlanetLab PlanetLab bad behavior Random socket disconnects (half-open TCP sockets) Large data segments stall connection Slow processing of ciphertext ( 60 s) Evaluation over a long period (hours to days) Protocol restarts for new joins and after 10 mins for disconnecting clients Shuffle (s)DC-net (s)Participation Dissent / / % D / / % +/- 3.8

Organization Motivation and Goals Existing Approaches Introduction to Dissent Trust Models D3 = Anytrust(Dissent) + ε Analysis Future Work / Parallel Projects

Integration with Social Networks

Future Work in Dissent Accountability is online, requires additional steps after the protocol has completed Practical use in real environments – Such as using WIFI enabled smart phones Anonymity boxes – isolated environments running within a virtual machine isolating the user’s private information from the anonymity network Prevent single identity Sybil attacks by limiting members of a group to a single running client instance

Anonymity System Goals Sender anonymity – a message cannot be traced back to the submitting member Integrity – messages are received unmodified Accountability – misbehaving members will be third- party verifiably identified Scalablility Support 100s to 1,000s of active participants within a single anonymity set “short” delays – time between message transmission and reception should be on the order of seconds Churn should have limited impact

D3 Features Sender anonymity – a message cannot be traced back to the submitting member Integrity – messages are received unmodified Accountability – misbehaving members will be third- party verifiably identified Scalablility Support 100s* of active participants within a single anonymity set “short” delays – time between message transmission and reception should be on the order of seconds Churn should have limited impact

Finished! Thanks, questions?

Extra slides

Existing Approaches MethodWeakness Mix-Nets, TorTraffic analysis attacks Group / Ring Signatures Traffic analysis attacks Voting ProtocolsFixed-length messages DC NetsAnonymous DoS attacks DissentIntolerant to churn / long delays between msgs HerbivoreSmall anonymity set, traffic analysis attacks

Dining Cryptographers Network Alice, Bob, and Carol join an anonymous blog All of them are subscribers One of them is the author (Bob) Members have shared secrets Protocol: Alice’s perspective (sub.) Generate Ciphertext AB = RNG(Secret AB, Length) Generate Ciphertext AC = RNG(Secret AC, Length) Ciphertext A = Ciphertext AB XOR Ciphertext AC Protocol: Bob’s perspective (author) Generate: Ciphertext B <= Ciphertext AB XOR Ciphertext BC Set Ciphertext B <= Ciphertext B XOR blog All members exchange ciphertexts reproducing blog Accumulate Ciphertext A, Ciphertext B, and Ciphertext C Blob <= Ciphertext A XOR Ciphertext B XOR Ciphertext C

D3 DC-net Accountability In D3 DC-net, a malicious bit flip which has resulted in a 0 -> 1 in the cleartext can be used to generate an accusation In a DC-net, client requests accusation shuffle In shuffle, client specifies the bit Servers share The bit matched to each client The original client ciphertexts for that round Each server can then validate The server sent out the correct bit The client sent out the correct bit For a mismatch, either the client or server can release the shared secret with a NI-ZKP to verify the secert Members can regenerate the ciphertext Bit in ciphertext will match honest client or honest server

Dissent – A Practical DC-net A group of members want to participate in an anonymous message round, exchange messages anonymously, or receive a message Each member first participates in a fixed length shuffle to exchange anonymous RNG seeds and anonymous signing keys The shuffle’s final permutation reveals the seeds and keys assigning the owner the index within that permutation The seeds are then used to construct DC-net messages with slot ownership verified by the signature of the key owner A misbehavior results in a shuffle, where the owner of the slot reveals verifiable proof of disruption and the identity of the disruptor

D3 – Dissent V3 D3 = Anytrust(Dissent) = Anytrust(Shuffle) + Anytrust(DC-net) D3 Shuffle Any member (client) can transmit a ciphertext The working subset (servers) performs the shuffle Moves O(N) serial communication steps to O(1) for fixed set of servers D3 DC-net Each client shares a secret with each server used to generate ciphertexts A client connects with one server and transmits their XOR collection of ciphertexts Each server shares with every other server the set of clients who have submitted messages Each server generates a matching ciphertext and commits to it via exchanges with other servers Each server then shares their accumulated ciphertexts The servers each sign the cleartext messages and shares it with other servers The servers distribute the cleartext messages along with the signatures

D3 – DC-net Client actions: Share a secret via Diffie-Hellman with each server In each round, generate a ciphertext for each server Submit the composite ciphertext to a single server Server actions: Wait up to a specified time period for client ciphertexts Notify all servers of clients who submitted a ciphertext Each server generates a ciphertext to match the online client set Servers commit with each other before releasing ciphertext Each server signs the final cleartext After accumulating the signatures, the server pushes the cleartext and signatures to the clients

D3 Shuffle DC-net only requires keys No need for inner encryption of shuffle data (no anonymity lost if shuffle is compromised) Shuffle still requires go / no-go, we need a verifiable shuffle Neff proposed a key shuffle to prevent voting fraud! Based upon El Gamal (DSA) keys Private key x mod q Public key y = g x mod p Each server encrypts the set of keys and the generator (g) and permutes their order Public key: y’ = (g x ) s Generator: g’ = g s After k servers Public keys become y k = g k x Each participant can easily locate their key, but no one else can

On the Wire Client’s (Carol’s): Slot cleartext = RND(seed, (seed, (accusation, (nonce, next msg length, msg), signature))) Ciphertext C = Ciphertext C,0 XOR Ciphertext C,1 XOR Ciphertext C,1 XOR (0, …, 0, Slot cleartext, 0, …, 0) Cleartext = Cleartext, Signature 0, Signature 1, Signature 2 Server 0 ’s: Client list: (Alice) Ciphertext 0 = Ciphertext A XOR Ciphertext A,0 XOR Ciphertext B,0 XOR Ciphertext C,0 Commit 0 = Hash(Ciphertext 0 ) Cleartext = Ciphertext 0 XOR Ciphertext 1 XOR Ciphertext 2 Signature = {Cleartext} Key0

The Dissent Model