[Bitcoin-development] New P2P commands for diagnostics, SPV clients
mike at plan99.net
Thu Jun 14 11:52:29 UTC 2012
> filterinit(false positive rate, number of elements): initialize
> filterload(data): input a serialized bloom filter table metadata and data.
Why not combine these two?
> 'filterload' and 'filteradd' enable special behavior changes for
> 'mempool' and existing P2P commands, whereby only transactions
> matching the bloom filter will be announced to the connection, and
> only matching transactions will be sent inside serialized blocks.
Need to specify the format of how these arrive. It means that when a
new block is found instead of inv<->getdata<->block we'd see something
like inv<->getdata<->merkleblock where a "merkleblock" structure is a
header + list of transactions + list of merkle branches linking them
to the root. I think CMerkleTx already knows how to serialize this,
but it redundantly includes the block hash which would not be
necessary for a merkleblock message.
More information about the bitcoin-dev