eHast wrote:OSS has a lot to do with it. If you have closed source you can use obscurity for this purpose. Although obscurity is never a substitute for security (or authenticity in this case) it's a hell of a lot easier to do.
And yet it is very often that a closed source client is hacked before the open source one. It's kind of funny, actually, but I supose it might have something to do with the different methods of attacking each.
My point is that I have never seen or heard of a protocol which could do this.
This is because the problem really has nothing to do with the protocol.
Nobody really actually hacks the protocol to do unforseen things. All of these uncooperative clients implement the protocol well enugh. They just use the same, unhacked protocol to do different things.
The key is to change the system behind the protocol, not really the protocol itself. Discovering/hacking the protocol will let unapproved clients communicate with the network, but that is completely seperate from actually abusing the other clients.
The solution is simply to adjust the system so that people have reason to share and are held more accountable for their actions. There is currently no reason for a person to actually share, and that's the whole basis of the problem. There is only reason for people to claim that they're sharing.