Of course I don't want children to be abused, or hostages to be beheaded. My point was that images of something illegal shouldn't necessarily be illegal.
Two simple extensions to the BitTorrent protocol would eliminate the need for trackers:
Allow peers to download the torrent from one another (new message types 9 and 10: torrent request, torrent reply)
Allow peers to exchange lists of neighbours (new message types 11 and 12: neighbour request, neighbour reply)
With these extentions, you would only need to find a single peer and an info_hash through any P2P search network in order to begin downloading. There would be no need for trackers or torrent websites.
Two clients could still collude by providing good reports for one another, allowing them to leech from a third party.
Trusting clients to report their own upload stats is a bad move, which is why Bram Cohen's implementation doesn't do anything with that information - choking/unchoking is based on the actual download speed from each neighbour, not the reported upload/download ratio.
I'm working on a decentralised, searchable version of BitTorrent called BitTrickle. If you're a Python hacker, please consider lending a hand - it's probably only a day's work for someone who knows the BT source code.
It's possible to spoof the stats that your client reports to the tracker, and it's only a matter of time before leeches cotton on and modify their clients. I think the community aspect you mentioned is probably more important than the technical aspect - the history of file sharing seems to be a small number of prolific sharers hopping between networks to stay ahead of an army of leeches.
The Anarchist's Cookbook is legal to peruse and distribute. Most of the things you can learn from it can be used for shady purposes, but the information is still protected by the first ammendment...
I hate to sound like an extremist (OK I don't really), but why isn't the same true of child porn? Pictures of people being beheaded are legal, even though beheading people isn't. Personally I think people who look at beheading pictures are sick, but I think they have the right to look.
From a hacker's point of view portability is Java's raison d'être, but from Sun's point of view portability is second to profit. Sun could profit by encouraging people to deploy Java software on a variety of platforms, then pulling the rug out from under their feet by restricting Java to Solaris. Investment banks with Java on their servers would have the choice of shutting down operations for six months while they rewrote everything in C#, or meeting Sun's terms. Admittedly this would make customers furious, but it's a "nuclear option" if Sun gets too close to bankruptcy.
You're right, IP addresses would work as the basis of a (short-term) reputation system. Looking at ad hoc networks has made me too quick to dismiss reputation systems out of hand - I'll have to watch that.
You really cannot ban something that is totally beyond your ability to control.
Yes you can, and your friends can sell a lot of guns and helicopters to South American governments as a result. You might even get an excuse to expand your power at home and abroad and a lucrative source of funding for your intelligence services.;-)
how does the original site know who has what slices.
When a peer finishes downloading a piece it sends a "have" message to all its neighbours. The tracker doesn't need to know who has which pieces.
How does the system heal itself when a seeder signs off taking with him some of the pieces.
Peers start by downloading rare pieces of the file to prevent them from disappearing, then switch to downloading random pieces. The person running the tracker usually runs a seed peer as well, so there's at least one copy of each piece.
How to the nodes decide which peers to ask for what and get updated on who has what as more peers sign on.
New peers are discovered by sending periodic requests to the tracker. If a peer times out, the tracker stops giving out its address.
How is the download=upload actually enforced--what stops me from creating some evil bittorrent that only downloads then hands out shit.
The upload/download ratio that's reported to the tracker isn't enforced, but each neighbour can measure your upload/download ratio. Each peer keeps a small number of "unchoked" connections: it uploads to the peers with the best download speeds, plus one randomly-chosen connection (to allow better connections to be discovered). All other connections are "choked" (no upload) but kept alive. If you don't upload then you will spend most of your time choked and get crappy download speeds.
Social pressure might work, but tracking won't - the upload/download ratio reported by the client can't be confirmed by the tracker, so you can hack your client to report any ratio you like.
True, the IP address could be used as a system-wide ID for a reputation system, but how would that prevent leeches from colluding by providing false positive reports about one another? No third party can really contradict A and B if they claim to have uploaded file segments to one another.
If I were a determined BT leech I might look at the protocol and work out how to increase my reported ratio... maybe people are already doing it. Damn open source.;-)
The same trick was used as recently as the mid 90s to play samples through the PC speaker in Alone in the Dark - back when they used to say the PC wasn't a games machine.:-)
Interesting idea, but it's essentially a reputation system, which opens you up to a Sybil attack. For example, a leech could run two clients, one of which provides fake upload reports for the other, increasing the second client's priority. Even if the tracker checks that the reporter and the reportee have different IP addresses, two leeches can provide fake reports for one another.
BitTorrent currently avoids this kind of attack because it has no system-wide notion of identity - each peer measures the actual performance of its neighbours, instead of trying to predict performance based on out-of-date, possibly falsified, second-hand reports.
An improved method
of verifying people's identity would go a long
way toward weeding out the illegal aliens (and
the terrorists that are hiding amongst them).
Name one illegal alien who has ever committed a terrorist act in the US.
"not a matter of IF there will be another
terrorist attack on USA soil, but of WHEN"
True, but statistically irrelevant to your safety. Which of the following has killed more people in the US in the last five years:
a) Terrorism
b) Traffic accidents involving ice cream trucks?
Any sensible administration would abandon the war on terror and launch an immediate and preemptive strike against the global menace that is ice cream.
But if you can't read the number that doesn't mean it is shielded. Maybe passport RFID tags will use a different frequency from commercial tags, for example.
New definition: a storage medium is "Moore proof" if it will degrade beyond the point of readability before computers are fast enough to decrypt the information stored on it.;-)
On the other hand any accidents which do occur are likely to be more serious. I suppose the tipping point is constantly moving due to factors like safer cars, fluctuating price of coffee, fear of accidents after reading Slashdot leading to increased alertness...
Looks like we'll finally get a large-scale demonstration of how well (or how badly) DHTs cope with Zipf-like query distributions.
Of course I don't want children to be abused, or hostages to be beheaded. My point was that images of something illegal shouldn't necessarily be illegal.
Cute but maybe a little tasteless. ;-)
- Allow peers to download the torrent from one another (new message types 9 and 10: torrent request, torrent reply)
- Allow peers to exchange lists of neighbours (new message types 11 and 12: neighbour request, neighbour reply)
With these extentions, you would only need to find a single peer and an info_hash through any P2P search network in order to begin downloading. There would be no need for trackers or torrent websites.Trusting clients to report their own upload stats is a bad move, which is why Bram Cohen's implementation doesn't do anything with that information - choking/unchoking is based on the actual download speed from each neighbour, not the reported upload/download ratio.
I'm working on a decentralised, searchable version of BitTorrent called BitTrickle. If you're a Python hacker, please consider lending a hand - it's probably only a day's work for someone who knows the BT source code.
It's possible to spoof the stats that your client reports to the tracker, and it's only a matter of time before leeches cotton on and modify their clients. I think the community aspect you mentioned is probably more important than the technical aspect - the history of file sharing seems to be a small number of prolific sharers hopping between networks to stay ahead of an army of leeches.
Damn you - I've just finished writing up my ideas for a decentralised version of BitTorrent called BitTrickle!
I hate to sound like an extremist (OK I don't really), but why isn't the same true of child porn? Pictures of people being beheaded are legal, even though beheading people isn't. Personally I think people who look at beheading pictures are sick, but I think they have the right to look.
From a hacker's point of view portability is Java's raison d'être, but from Sun's point of view portability is second to profit. Sun could profit by encouraging people to deploy Java software on a variety of platforms, then pulling the rug out from under their feet by restricting Java to Solaris. Investment banks with Java on their servers would have the choice of shutting down operations for six months while they rewrote everything in C#, or meeting Sun's terms. Admittedly this would make customers furious, but it's a "nuclear option" if Sun gets too close to bankruptcy.
You're right, IP addresses would work as the basis of a (short-term) reputation system. Looking at ad hoc networks has made me too quick to dismiss reputation systems out of hand - I'll have to watch that.
Yes you can, and your friends can sell a lot of guns and helicopters to South American governments as a result. You might even get an excuse to expand your power at home and abroad and a lucrative source of funding for your intelligence services. ;-)
When a peer finishes downloading a piece it sends a "have" message to all its neighbours. The tracker doesn't need to know who has which pieces.
How does the system heal itself when a seeder signs off taking with him some of the pieces.
Peers start by downloading rare pieces of the file to prevent them from disappearing, then switch to downloading random pieces. The person running the tracker usually runs a seed peer as well, so there's at least one copy of each piece.
How to the nodes decide which peers to ask for what and get updated on who has what as more peers sign on.
New peers are discovered by sending periodic requests to the tracker. If a peer times out, the tracker stops giving out its address.
How is the download=upload actually enforced--what stops me from creating some evil bittorrent that only downloads then hands out shit.
The upload/download ratio that's reported to the tracker isn't enforced, but each neighbour can measure your upload/download ratio. Each peer keeps a small number of "unchoked" connections: it uploads to the peers with the best download speeds, plus one randomly-chosen connection (to allow better connections to be discovered). All other connections are "choked" (no upload) but kept alive. If you don't upload then you will spend most of your time choked and get crappy download speeds.
Social pressure might work, but tracking won't - the upload/download ratio reported by the client can't be confirmed by the tracker, so you can hack your client to report any ratio you like.
True, the IP address could be used as a system-wide ID for a reputation system, but how would that prevent leeches from colluding by providing false positive reports about one another? No third party can really contradict A and B if they claim to have uploaded file segments to one another.
I've had a quick look at the protocol and it seems that clients report their own upload/download ratios.
If I were a determined BT leech I might look at the protocol and work out how to increase my reported ratio... maybe people are already doing it. Damn open source. ;-)
The same trick was used as recently as the mid 90s to play samples through the PC speaker in Alone in the Dark - back when they used to say the PC wasn't a games machine. :-)
BitTorrent currently avoids this kind of attack because it has no system-wide notion of identity - each peer measures the actual performance of its neighbours, instead of trying to predict performance based on out-of-date, possibly falsified, second-hand reports.
Name one illegal alien who has ever committed a terrorist act in the US.
"not a matter of IF there will be another terrorist attack on USA soil, but of WHEN"
True, but statistically irrelevant to your safety. Which of the following has killed more people in the US in the last five years:
a) Terrorism
b) Traffic accidents involving ice cream trucks?
Any sensible administration would abandon the war on terror and launch an immediate and preemptive strike against the global menace that is ice cream.
But if you can't read the number that doesn't mean it is shielded. Maybe passport RFID tags will use a different frequency from commercial tags, for example.
Used to be up and coming, now it's down and burning...
New definition: a storage medium is "Moore proof" if it will degrade beyond the point of readability before computers are fast enough to decrypt the information stored on it. ;-)
On the other hand any accidents which do occur are likely to be more serious. I suppose the tipping point is constantly moving due to factors like safer cars, fluctuating price of coffee, fear of accidents after reading Slashdot leading to increased alertness...
I've played C&C Red Alert - there's no way I'm having one of those things in my back garden.