NymIP: Anonymity At The IP Layer
Eloquence writes: "NymIP is a new project that aims to set a standard for Internet anonymity at the IP level. It was started by Zero Knowledge Systems, but is now led by Harvard's Scott Bradner, an IETF member. Some of the biggest players in the field participate in the project, which will be introduced at the 49th IETF Meeting that starts today." Comments especially sought from anyone who attends that meeting.
... they know they are doing something they shouldn't be doing. If no one was breaking the rules, then there'd be no problem. By that logic, when you shut your doors when going to toilet, you have something to hide, you must be doing something wrong. Why not let the well meaning authorities have cameras in your bathroom and your bedroom if you have nothing to hide? Why not let whole neighborhood watch you on the monitors as well? You are not breaking any rules, so why not?
You may know TCP/IP fairly well, but you don't know cryptography very well. It is possible for two parties to agree on a common random value without exchanging that value. This is the basic idea put forth in the Diffie-Hellman Key Exchange. Once you have a random number known to the two parties trying to communicate and no one else, you can use that number as an address to route the packets through the network. I don't know if this is what the research group has in mind but it is a possibility. Yes, there are some problems with this system, in particular the initial key exchange is not anonymous, but this makes it much harder to trace the actually data transfer.
The other thing too keep in mind is this: no matter what protocol you're using over the Internet, you can find out where the packets are coming from and going to. This includes ssh (Secure Shell), tunneling, normal TCP/UDP connections and even spoofed packets. This is done by running sniffers on each interface on a router (starting with the target that's being DoSed or whatever) and seeing which interface these packets came in on. You find out what that interface is connected to and start sniffing there. Repeat this process enough times, and you'll find out the source and destination of any packet.
In theory this will work, but once you cross an administrative domain, i.e. from one ISP's network to another ISP's network, you will find that they are so willing to co-operate. Read Cliff Stoll's Cuckoo's Egg for a real world example. It took him over two years to track someone, not because of technical problems, but because of adminstrative problems.
A company I used to work for had three different operating units with three different data centers in one building. To set up sniffers on the networks took two weeks of meeting and getting sign-off from data-center managers, since the managers didn't want their networks touched unless it was to fix a production problem in their network.
The Economics of Website Security
So I guess its up to the guy I shoot in the head to duck the bullet then?
IP addresses allow remote servers and third parties to invade your privacy by linking your actions to that address. Even if you get a different address regularly it still is a way of linking actions within a certain timespan (typically a dailup session or a dhcp timeout). Also handing out your address to everyone makes you a target for hacking and DoS.
So trying to allow the user to control wether this privacy sensitive informartion is given away or obscured is a good thing.
However if you start looking at how you implement this you run into a number of interesting issues.
- we are talking about some form of address translation here.
- For certain applications this requires application-level awareness of the translation here. Please note that I am not calling it NAT, you simply rewrite the from address not alter anything in the packet. (Oh yeah, all of this breaks IP sec... So you need a seceure tunneling protocol to get to the translator.)
- You will need an organisation that will provide this for you. This could be your ISP, it could be someone else.
- At any rate you need to have a contract with those guys stating that they will keep the mapping between your real IP address and your apparent address very private and change it regularly, sometimes even for each packet you send out. (oops, you'd have to be able to select this behaviour per application, it breaks some of of the applications we have now that assume you stay on the same address during a session...)
- Yet the authoraties will soon catch up and governments will demand that this information will be made available for legal interception purposes. In some countries the government is already prepared for this because they stated that every telecommunication service shall be interceptable. This is not necessarily a bad thing. It is just something to keep in mind, you are not anonymous to everyone.
- In order to make yourself not immediately a suspect to legal investigation just by using it once. you'd have to use nymity all the time . It is a common misconception that only crooks require privacy. Everyone has the need for privacy! Wether it is about your bank transactions, religion, illnesses all people have things they'd like others not to know (or at least control to whom they communicate it).
If we would introduce nymity boxes we seem to have lost the transparency of the Internet. I'd not like to see this as unraveling of the Internet. I'd like to see this as a different kind of IP deployment. You could tunnel this over the Internet or have a new kind of network for it.Is this necessarily a bad thing? No! As long as the applications remain transparent this can work. Yet it requires some thought.
While you are breaking the Internet-model anyway you may just as well go all the way and include:
- QoS, the kind where you can reserve a path end-to-end (this implies authentication and billing per second)
- access control, so your wireless 3rd generation terminal does not suffer a DoS attack because someone burns up the bandwidth on its wireless link or your mobile phone gets hacked so someone can access your bank-account.
I know, this sounds like heresey at first, but after a while I could see the appeal of a world in which you can have privacy, QoS and access control . Especially if this not replaces the Internet but offers you more choice.Now let's see when Scott Bradner is going to have a BoF session on this.
I agree completely that we need to make privacy, security, and anonymity standard practices--to do otherwise draws attention to those of us who do use these tools consistently.
I also relish the thought of some three letter agency expending millions of CPU hours on my correspondence, only to find picayune (love that word--thanks) stuff :).
CEE5210S The signal SIGHUP was received.
Modern remailers, such as Type I and Type II remailers, as well as nym remailers (which allow for anonymous bi-directional traffic, without reply blocks being in the clear, and with the ability to chain the replies thru N Type I or Type II remailers) which have been in use for years, solve all of the problems that brought penet.
You can have absolute privacy and absolute anonymity now. Just visit http://mixmaster.shinn.net or any of the other remailers websites for instructions. Heck, if you want ease of use, you can install ZKS' freedom software and abstract away all the work (at a little cost to security). Privacy is not that hard to do, and its really frustrating that people on slashdot have bought into the myth that privacy is not something you can have in this day and age. That is absolute bunk.
Python
Python
The overview isn't much on gory details, so I'm speaking from a somewhat limited viewpoint here. Hopefully someone else will know more about this and be able to flesh it out a little more into reality.
This can only work if they intend to create what amounts to proxy-based co-operative subnets, which allocate, use, and discard IP addresses for sets of users. With a large enough number of users per group, it would tend to mask out individual users.
The problem as I see it is that you'd still have to have some identifying information, or there's no way to form a socket. Even if the identifying information is one of the sockets within a certain group, the accessed server will still log the connection as coming from a user within that group.
The group can't be infinitely large because that would be too much strain on the proxy routers. But they can't be too small, either, because information could be inferred from the time of the connection, etc.
And it doesn't stop people from tying together a username, biographical information, and the proxy-router pool of users the accesses are coming from. Then again, the article says it's 'controlled nymity', but it's a long way from paying in cash for a pr0n mag.
--sjd;
this is a sig.
Now no one can trace my mad fr1st postering sk1llz!!
B0mb-0mb hax0ring instructions are as follows:
Oh crap... forgot to czeck "Post Anonymously"
end communication
Comment removed based on user account deletion
Anonymous political speech is what it's all about. You need to be able to say things without dying for your cause... so much pain comes to those who speak out (ask Ken Sare We-wa (sp)).
Before you get into a tizzy, for 99% of us, the most intriguing thing we do online is buy things, and this is already tracked through our credit card numbers, so issues of IP tracing are irrelevant.
Unfortuntely, you have no privacy, deal with it.
Since my wife is one of the persons on the list of people actually working on this, I may add a few words to it. Marit has a publications list online.
How does it work? Well, have a look at project anonymity and unobservability on the Internet. A MIX network is like a system of remailers, just for IP packets. There are several kinds of attacks against a MIX network ("nix the MIX") and they are categorized and discussed in that paper.
Specifically, the problem of cooperating MIX network node operators is being discussed. Have a look at the properties of ideal MIXes: It is sufficient for the MIX network to have a single trustworthy node in your path in order to protect your anonymity (section 1.2 of that paper).
Marit has a paper on anonymity terminology online, too (txt version of that paper). Have a look at it in order to get your vocabulary. Additionally, there is a web page on identity management on her server. This relates P3P and anonymity/pseudonymity.
© Copyright 2000 Kristian Köhntopp
All rights reserved.
This looks like a good cause, but the first thing I noticed is there aren't any technical details to be found, from links on the page referenced, or even in the mailing list archives.
The other thing that makes me wonder is "how can this thing actually work?".
I know TCP/IP fairly well, and this doesn't make sense to me. I want to establish a TCP connection to another host (packets are going both ways), so how can I stay anonymous when the remote host needs to send packets back to me? It has to go from router A, to router B, etc and then back to my computer.
The only way around this issue is if a proxy is used, and I don't think this will work because someone has to provide massive amounts of bandwidth for these anonymous connections, and whoever is in control (or can gain control) of the proxy server would see everything.
The other thing too keep in mind is this: no matter what protocol you're using over the Internet, you can find out where the packets are coming from and going to. This includes ssh (Secure Shell), tunneling, normal TCP/UDP connections and even spoofed packets. This is done by running sniffers on each interface on a router (starting with the target that's being DoSed or whatever) and seeing which interface these packets came in on. You find out what that interface is connected to and start sniffing there. Repeat this process enough times, and you'll find out the source and destination of any packet.
To get IP traffic the sender needs to know what IP you are at, if they can get your IP they can log it. Proxies can disguise this, but you still need to trust the person running the proxy.
Running an anonymiser is a great way to conduct man in the middle attacks, particularly since you know anyone using an anonymiser is doing something they don't want people to find out about.
--
enterfornone - logging in for a change
I'm going to respond to this on the presumption that you aren't a troll -- while you have a valid point, it's also an easy one to use while looking for flames. That said...
You operate on the presumption that that which is wrong and that which is illegal are one and the same. I (A US citizen) have done (and exported) work on crypto software (before the laws were relaxed), which made my actions illegal under munitions export laws. Does that mean I shouldn't have done it? Personally, I don't think so.
Basically, I think that individuals should be able to defy the law. Every revolution, every protest, every major stride in human rights -- all of these involved broken laws. Do you really think humanity would be better served by an unevadable law enforcement?
Personally, I don't.
I see your point, but I think your analogy is flawed.
While pedestrians can't put on a "Generic Pedestrian Mask," neither are all of their actions logged. Some of your actions are logged--video cameras will log that you walked into a store, credit card purchases create a paper trail as well--but you can avoid most of them (pay cash) and the ones that you can't avoid (security cameras) don't tie your action explicitly to your identity. They may have an image on tape of you walking into 7-11 to buy your copy of Juggs Magazine, but they don't know who that image represents without extensive research.
Furthermore, people don't just go for anonymity because they're doing something they shouldn't be doing. If you think you might have HIV, and you're looking at HIV information sites in a panic trying to figure out what to do and whether you're going to die, you have every moral AND LEGAL right to anonymity.
Also, it's not just concern about governmental monitoring that motivates people to go anonymous. I would argue that some cracker who wants to extort money from you is just as big a concern, as is the private investigator hired by your ex-spouse to dig up dirt on you.
And I don't buy the statement that "government organizations have better things to do than worry about what some joe schmoe is reading about." Plenty of non-paranoid types will agree that the government does a hell of a lot of grab-bag signal interception and analysis, i.e. Echelon.
Monkeytreats
It is interesting to note the tradition anonymity has in American Politics. Tracts like Paine's Common Sense were originally published anonymously. And after the revolution, highly influential papers like those in the Anti-Federalist Papers were penned under names like "Centinel" and "Federal Farmer".
Anonymity can serve as a check on the power of government (not to mention the wraith of the masses). There is a compromise, of course. If one can speak anonymously, one is safe to publish lies and slander. And it's rapidly coming to mean that you can publish hard-core kiddy porn and nuclear weapon schematics too.
Oh, well. Nobody said freedom was perfect. The alternative is to place your trust in your government, and hope no utterance you make ever comes to be regarded as seditious.
Me? Well, I guess it's enough to note that my real name isn't "Skald" :-)
"The best we can hope for concerning the people at large is that they be properly armed." - Alexander Hamilton