Traffic Analysis Midway story Padding story How much anonimity? Provides secret communication Provides secret servers Does NOT stop you from filing out forms Does NOT encrpt the "last link" for non-Tor services Encrypts DNS SOMETIMES!!!! You gotta fix this You gotta fix this Tor Only works on TCP connections Works best for long-term connections Uses the same route for the next minute or so -- OR -- Tor makes a new circuit every 10 minutes Any given connection is never rerouted Who uses Tor Anyone who whats to be anonymous Us Navy Police Freaks NGOs in the third world Corporations No one knows How big is Tor 300 servers pushing 40 MB/sec Why does Google think you have a virus? Lgeal Stuff http://tor.eff.org/eff/tor-legal-faq.html.en How it works There are public directory servers Each knows the server list with public keys A client downloads the whole list Always write in 512 Byte chunks IRC?? Two sizes of packets? Establishing a new connection Alice contacts Bob Offers bob a secret password encrypted with Bob's public key Bob acks after decoding Alice asks Bob to forward to carol Offers a secret password encrypted with Carol's public key Bob chooses a symetric key, encodes it with Carol's public key, and makes a link with Carol. Carol acks Alices original message after decoding. Last hop is different .. no encryption no nothing Last hop sends a hash of all messages back to the original client Each server has exit policies that it tells clients Hidden services Goals Hide service Let service be found Prevent smearing Bob generates a long term public key for the service Bob choses introduction points, makes circuits to them, and tells then to wait for connections Alice makes a connection to any introduction point Directories Must be well known Every router sends a crypt signed message to every dir server Every dir server coordinates world view Clients download from multiple dir servers, all crypt signed http://tor.eff.org/cvs/tor/doc/design-paper/tor-design.html#subsec:circuits Problems An attacker can cause heavy CPU load by initing many connection (lots of crypt) An attacker can just flood the net with data to move around You send once, each router duplicates your work An attacker can cause you to seem evil (spam, kiddie porn) Why does running a server help clients' hide.