MIT Rivals Tor
What is Tor?
Tor is free software for enabling anonymous communication over the internet. It stands for “The Onion Router,” based on the original software project name, which is further based off the type of routing it uses; onion routing. We will get in to that later. It is a web browser that directs your internet traffic through a volunteer network of thousands of relays to conceal a user’s usage and location. Used for many actives, both illegal and legal, it has been the target of state agencies such as the NSA, and British signals intelligence. At the end of the day Tor has been described by The Economist, as being “a dark corner of the web.”
Potato Routing, I Mean Onion Routing
Onion routing was developed in the 90s by the United States Naval Research Laboratory, with the purpose of protecting U.S. Intelligence communications online. Onion routing was further developed by DARPA in 1997. The basis is simple. The communication between relays is encrypted in multiple layers, like an onion. Each of these relays decrypts a layer, and then sends it off to the next relay to decrypt the next layer. Data that a relay sends off, is never the same as the data it received. This network of volunteer anonymous relays is called a mixnet, and is the basis for Tor. This is effective to block out a passive listener, but is less effective to an active adversary, who can infiltrate servers with their own code, or even add their own servers.
Enter Riffle
Riffle is MIT’s answer to Tor. Riffle uses the same method, but adds on other methods as well, such as verifiable shuffle. Along with the onion encryption, verifiable shuffle mixes up the messages. So if a server receives messages in order A,B,C, it might send them off as B,A,C. Each server is individually checked. With verifiable shuffle, you don’t just send the data to one server, you send it to all of them. The servers can then independently check for tampering.
Checking for this tampering is a computationally intensive process, so would slow down the network if it had to be uses for each message. So Riffle adds another method, called authentication encryption. This can verify the authenticity of a message. This is much more efficient, but the send and receive must share a private key. And how do we get that private key… privately? Using the above method, verifiable shuffle. Riffle uses verifiable shuffle to exchange the private key, and then uses authentication encryption for the remainder of a session.
The End Game
The end goal here is to develop a network that is not vulnerable to the recent discoveries of vulnerabilities in the Tor network. You can maintain anonymity if all but one server is compromised, as that server will always know the correct verifiable shuffle order. It’s currently a long way from becoming practical, but it is an interesting concept in the fight for internet privacy.