[BitTorrent] bt2 protocol features

Elliott Mitchell ehem at m5p.com
Sat Jun 5 18:18:06 EDT 2004

> From: Vitenka <vitenka at ntlworld.com>
> > Related thing, how about peers refering to pieces *strictly* by hash?
> > This adds to anonimity by allowing for lack of a better term, better
> > "zombie" clients that simply obey instructions to get such pieces via
> > such and such a tracker. This could be used by a group of peers with a
> > high-bandwidth secondary connection (such as 802.11, or sneakernet), and
> > allowing the clients to get files much more quickly while the "zombie"
> > clients can have full deniability (without knowledge of how to reassemble
> > pieces, they cannot know what they're getting).
> I'm not sure that just a hash with no further information is sufficient 
> to uniquely identify a chunk.
> There are only so many hashes possible - and although it is a large 
> number - if you don't know which piece of a file it is, or which file it 
> is a part of then you are increasing the chances of a bad match quite a lot.
> And since it matches the hash, there'd be no way to know that the data 
> was bad until you had the whole file and it failed to run (or whatever)

True, it is a valid concern; but you have to look at the statistics.

Figure, that maybe, perhaps there might be a petabyte (2^50) of data
floating around in all the torrents out there. The standard piece size
is 2^18 bytes, though the v2 might break it down to 1K (2^10). So we
have 2^32-2^40 pieces out there. SHA1 uses 160 bits of data, in order to
have a 50% chance of _one_ pair of pieces colliding you would need about
2^80th pieces; the chances of getting one colliding pair on the entirety
of the Internet with 2^40th pieces floating around is astronomically

Though a possible problem in a mathematical sense, this is not a possible
problem in an engineering sense. Even using less than half of the hash
value to save bandwidth makes it highly unlikely you'll ever see a
collision (except with a *really* big site), and in this case the peer
can advise you of this and you can revert to the full hash. Also there
are larger hashes that should be allowed for (because cryptographers are
really paranoid, and 160 bits of hash is very worrysome if someone is
deliberately looking for a matching pair; note some pair, not one of
their choosing, just _some_ pair); I'd note that support for
SHA256/SHA512 might be put in place.

(\___(\___(\______          --=> 8-) EHM <=--          ______/)___/)___/)
 \   (    |         EHeM at gremlin.m5p.com PGP 8881EF59         |    )   /
  \_  \   |  _____  -O #include <stddisclaimer.h> O-   _____  |   /  _/
    \___\_|_/82 04 A1 3C C7 B1 37 2A*E3 6E 84 DA 97 4C 40 E6\_|_/___/

------------------------ Yahoo! Groups Sponsor --------------------~--> 
Yahoo! Domains - Claim yours for only $14.70

Yahoo! Groups Links

<*> To visit your group on the web, go to:

<*> To unsubscribe from this group, send an email to:
     BitTorrent-unsubscribe at yahoogroups.com

<*> Your use of Yahoo! Groups is subject to:

More information about the BitTorrent mailing list