[bittorrent] Why are blocks smaller than pieces?

Thad Ward coderjoe at grnet.com
Mon Sep 10 21:08:53 EDT 2007


It appears that, as of August 17, 2005, we're down to a
collision-finding complexity of 2^63. Yes, this is still rather high for
the time being, but it will continue to go down with time.

I think there are parties that would be interested in disrupting bittorrent
transfers by injecting incorrect data that couldn't be detected by the
bittorrent protocol itself. Over time, doing so may get easier. They
wouldn't have to generate collisions in realtime, just fast enough that
they could bring seeds onto the swarm during the life of the swarm and
send the incorrect data. Getting the blocks of a piece from different
peers makes it harder for these malicious attacks to work, as you would
need to have multiple peers with the same incorrect data and hope to get
lucky enough to have peers download all the blocks from corrupt clients.
Each time you do get lucky, though, you increase the group of corrupt
clients, at least for that piece.

For a good while, though, it probably is easier, in the case of illegal
content anyway, to just get IPs and start suing. And really, this is the
only case I see anyone willing to put in all the time and effort to
corrupt a torrent, anyway...

On Mon, Sep 10, 2007 at 06:53:27PM +1200, Ryan Walklin wrote:
> I don't think that finding SHA1 collisions in 2^69 invalidate its use as a
> simple data verification system, and as long as the only attack remains
> brute-force, surely it's computationally infeasible to generate bad data
> that passes hash checking, regardless of whether the piece comes from a
> single peer or multiple peers.
> 
> On 9/10/07, Olaf van der Spek <olafvdspek at gmail.com> wrote:
> >
> > On 9/10/07, Thad Ward <coderjoe at grnet.com> wrote:
> > > The problem I see with this is that collisions on SHA1 are not that far
> > > off,




More information about the BitTorrent mailing list