1 / 36

Anonymous IM

Department of Computer Science. Group Project Presentation. Anonymous IM. Group Members. Ioannis Gyftakis Michail - Georgios Leivadas Chris Mantas Angelos Sakellaropoulos. Benefits of anonymous communication. Circumvent censorship of dissidents (eg. from oppressive government).

umika
Download Presentation

Anonymous IM

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Department of Computer Science Group Project Presentation Anonymous IM Group Members • Ioannis Gyftakis • Michail - Georgios Leivadas • Chris Mantas • Angelos Sakellaropoulos

  2. Benefits of anonymous communication • Circumvent censorship of dissidents (eg. from oppressive government) • Corporate "whistleblowing" of activities that are illegal or harmful to society • Confidential business negotiations • Anonymous participation in elections / polls etc. • Law enforcement • (secret agents in drug cartels - sting operations and honeypots) • Assure anonymity in sensitive conversations • (psychological support "hotline")

  3. The Anonymity problem I am talking to Alice but I don’t know who she really is or what is her IP I am talking to Bob but I don’t know who he really is or what is his IP Bob Live video Alice Inst. messaging Mail Scalable design Who is Bob and who is Alice? Are they talking to each other? Preserve forward secrecy Eve/ Mallory

  4. The Anonymity problem In the context of instant messaging the ultimate goals of anonymity is to protect: • The mapping between the application level user ID and the IP address (physical location) • The inability to confirm that two items of interest (e.g. IP addresses, user IDs), participate in a conversation with each other • The fact that a user participates in an active conversation at a given time

  5. The team's tasks prioritized

  6. Threat model • Local Eavesdropper Initiator LAN • Intermediate (possibly collaborating) compromised nodes • Malicious responder Responder Initiator 07/30

  7. Background - General B B B A E B C E B E D

  8. Background General - Onion Routing Alice R2 R4 R1 R3 Bob {M}pk(B) {B,k4}pk(R4),{ }k4 {R4,k3}pk(R3),{ }k3 {R3,k2}pk(R2),{ }k2 {R2,k1}pk(R1),{ }k1

  9. Background – Related work I2P CONNECT Tunel Bob Alice Inbound Gateway Inbound Participant Outbound Participant Outbound Gateway Establishing a Connection Network Database

  10. Background – Related work Mix rings 2 Mixnet Tunel 3 4 Initiator 1

  11. Related Work - Timeline Mixnets Mix Rings Invisible Mix Rings Mixnets with Restricted Routes Mix Cascades AnonIM • Unlike MixNets users not free to choose which route to take. • Forced to route their messages through a predefined sequence of mixes. • Enhancement of Mix Rings • Hybrid P2P system that introduces Cluster Escape and Random Extend mechanisms into Mix Rings • Highlights that a middle ground exists between free mix networks, and extremely restrictive mix cascades. • The theory is based on the properties of Expander Graphs Tarzan • All peers are potential originators of traffic • All peers are potentional relays • Tries to make nodes to be in diverse subnets • Uses DHT, Gossip Protocol later • Generic protocol not strictly coupled to a specific app. Invincible Internet Project Tor instead of IP Onion Routing Tor • ISP design level • Uses mailboxes and polling mechanisms for tackling DoS attacks 1981 1997 2002 2003 2004 2006 2011 2012

  12. Simulator • Real data from Rocketfuel project (got them from running many traceroutes) • We plan to run our (semi)final version of our implementation on PlanetLab • Latency • Throughput • Fault Tolerance 09/30

  13. Evaluation

  14. Bootup • Alice registers herself with the directory service. • H(IP)  IP , Alice’s Pkey • Pkey is NOT for Instant messages

  15. Bootup • The directory service (only) stores her for other nodes to use her as a relay • A once-per user policy is enforced • Either the directory service is trusted or each user also has some kind of certificate • You probably need to trust someone…

  16. Looking up random Nodes

  17. Looking up random Nodes (2) And so on …

  18. Ring Establishment Messages • Alice sends messageM1 to I1 • I1decrypts M1 with its PK • Inside M1, the message M2 is included • M1establishes a rule on I1 • Whatever I give you from now on, try and decrypt with SK1 • See if there is something for you in the message and forward rest to I2 • Else forward to I2

  19. Ring Establishment

  20. Alice has built herself a (blue) ring

  21. Entry Point • In node “In” a rule is established: • Forward any outside messages in the ring

  22. Cover Traffic • Inside the ring • Outbound • Inbound (hopefully)

  23. How will Bob find Alice? • Alice and Bob share a secret:RAB (agreed offline) • Bob will use H(Alice, RAB) to lookup Alice • Alice needs a way to inform Bob of her in-proxy, “In” • Enter The Rendezvous Service

  24. The Big Picture Lookup H( Bob, RAB ) Lookup H( Alice, RAB )

  25. Development Approach - Tailored Feature Driven Development Method Process 1: Overall Model Entry requirements Exit criteria Project manager • Class diagrams with model shape • Informal features list Roles have been finalized Development manager Development manager is responsible for the above to be correct Software engineer Proceed to next process System architect Task 2 Develop small group using pair programming technique Task1 • Study Documents (Research) • Domain Walkthrough Task 3 Informal features list

  26. Development Approach - Tailored Feature Driven Development Method Process 2: Build feature list Process 3: Plan by feature Entry requirements Entry requirements Successfully completed process #1 The features-list has already been created Task 1 Task 1 • Determine the development sequence • Assign workload on a feature set • Identify features, form feature sets Task 2 Task 2 • Prioritize features, divide complex features ( simulator , implementation) • Prioritize features, divide complex features Exit criteria Exit criteria Feature sets with completion dates Development managers assigned to feature sets • Identify features, form feature sets A detailed development plan

  27. Development Approach - Tailored Feature Driven Development Method Process 4: Design by feature Process 5: Build by feature Entry requirements Entry requirements Successfully completed process 3 Successfully completed process 4 For every feature Task 1 Task 1a Task 1b Task 2 Implement classes & methods Refine the object model Design Inspection Study the reference documents Task 2 Code refactoring Task 3 Unit Test Done in pairs Exit criteria Exit criteria • Supporting documentation • A to-do list for the next process (optional) • The pair team must complete the development of one or more features

  28. Team Structure Development manager Project manager Ioannis Angelos Members are assigned a role in a rotational fashion • Phase 1 • Phase 2 • Phase 3 Michail-Georgios Chris Software engineer System architect

  29. Team Structure

  30. Features List Simulator’s feature set Implementation’s feature set Simulate point-to-point & end-to-end latencies (possibly based on “Rocketfuel”) Directory service Rendezvous service Ring establishment (complex feature) Simulate creating & resetting anonymizing 'onion rings' Messages among participants of the ring Incoming & outgoing traffic Simulate end-to-end message reception End-to-end message reception Recovery from a failure node Simulate node failure & ring recovery End user interface

  31. Gantt chart Phase 1 - Groundwork Phase 2 - Core Design Phase 3 - Simulation Phase 4 - Implementation & Testing These phases start together Phase 5 - Evaluation & Optimization Phase 6 - Final Documentation

  32. Resources Gantt chart John Angelos Chris Michail - Georgios

  33. Detailed Gantt chart

  34. Risk Management

  35. Collaboration Tools • Source code management system (SCM) • Online repository • Code backup • Version control • Wikispaces - url: anonim-ncs.wikispaces.com • Google groups - mailing lists • Skype conferences

More Related