Comment Re:Layers (Score 1) 109
I think the idea here is to be able to say "hello world" to your Tor proxy, and have it communicate with the network such that "n" recipients get the message, but no one knows that you just did that, and definitely don't know what you just said. You don't know who or where those recipients are, you don't know anything about them, other than you're communicating with them.
If you imagine a way where I can tell you I'm on the Tor Chat Net - I don't tell you anything about myself, but instead I generate some sort of identifier that's unique between us - some sort of key that is only useful for the two of us. You do the same for me - now we have two different, linked and unique keys. This key is used to authenticate with the network, along with a password that's unique to each of us. The network then magically connects us together and we can communicate. You can't communicate with anyone except me using they key I generated for us.
The important thing here is that I don't actually know anything about you - I don't know your name, your location or your inside leg measurement or whatever. All I have is a "key" that I communicate with. Let's say we have a mutual friend - even they can't confirm that I'm talking to you, even if I give them everything I have because the keys they use to talk to you are different from the ones I use. Sure, if it turns out that you always sign off saying "ttfn - banana gribble aardark", then we could probably say with some certainty we were talking to the same person, but that's behavioural matching, as opposed to technical matching.
Since I'm very popular, I have a dozen people in my contacts list. I have to authenticate separately to talk to each one, and so I need a way to differentiate between them. Since you've never told me your name, I'm going to just assign the human-readable name " Slashdot Friday" to you. If you ever reveal that you like to be called GeekWithAKnife, or Derrek or whatever, then I could update my nickname for you, but otherwise, all I have is some made-up name that bears no resemblance to reality.
If the NSA get the magic key that you use to talk to me, then they need to authenticate to the network with it to use it. They'd have to rubber-hose your password out of you to be able to do that, but otherwise the key is useless. Assuming they get your password, they can of course impersonate you, and arguably get me to reveal that I live at 123 Fake Street. If they then break in and make a copy of my contacts list, they can't actually be certain that you and I communicate with each other - it's not like they can just match up the keys. They'd have to rubber-hose my password out of me and then authenticate and actually see the communication working between us to be able to prove we're able to talk to each other - all that still doesn't prove we actually have been chatting though (much less what we've been talking about).
This honestly does sound like it's very cool indeed. It opens up a whole world of questions and new challenges to get over though - not least because bot nets will use this to communicate rather than anything more traceable. Making sure you're talking to the person you think you are is going to be the biggest hurdle. Arguably this has always been the case, but until this we've always been able to skip over a lot of the details and go on trust for a large part of that identification step. Not so when it's as anonymous as this would be.
PS. I thought the Snowden leaks showed that the NSA couldn't break Tor per-se. There have been cases of people being identified even though they're using Tor, but not because they were able to trace the communications to them, but rather that they gave themselves away in some other form.