[BitTorrent] Back to Merkle Hash Trees...

Elliott Mitchell ehem at m5p.com
Sun Feb 6 16:27:22 EST 2005

>From: Olaf van der Spek <OvdSpek at LIACS.NL>
> Elliott Mitchell wrote:
> >>From: Olaf van der Spek <OvdSpek at LIACS.NL>
> >>Elliott Mitchell wrote:
> > Imagine you're handed a 16K block of data and a hash value. You're unsure
> > whether this is internal nodes or a leaf (or even whether it is valid at
> How can you be unsure about that?

Easily. Notably different protocol design than you're thinking. Crucially
it never makes sense to transfer one hash at a time. If you transfer
one hash at a time you've generated thousands of extra protocol messages.
Given this you're likely to transfer blocks of hashes, at which point
blocks of hashes will likely be of similar size to payload blocks.

> It should be clear from the protocol.

Which is another reason I dislike THEX. The type is a protocol issue, not
a standards issue. You might settle on markers similar THEX, at which
point you've got to try both markers to distinguish the types.

> If not, an internal node is 21 or 41 bytes (IIRC), so your 16 kbyte 
> block would not be an internal node.

And a payload block can't be of this size? (notably the EOF)

You're still assuming transfer of one hash at a time, which is worthless
as you end up bloating the protocol overhead horrendously.

(\___(\___(\______          --=> 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 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