Pages:
Author

Topic: BIP proposal: Pruned block format - page 2. (Read 1813 times)

hero member
Activity: 836
Merit: 1021
bits of proof
November 21, 2012, 03:50:20 PM
#1


WITHDRAWN

I ask for your feedback on following BIP proposal

MOTIVATION
Block messages pruned of spent output would reduce chain download time (and its size) by an order of magnitude.

PROPOSAL
Admit tx messages in blocks whereby the following special form indicates a pruned subtree of the block Merkle tree:

Blocks in this format would be accepted only in chain-download if trailing the last recent block by a significant margin. See follow up discussion for reasoning. The height pruned blocks are accepted until might be regulated by a global rule of checkpointing e.g.
(floor(current_height/1000)-1)*1000. Clients would imply they are at least 1000 behind the head if receiving pruned blocks.

A block can be pruned of transactions spent until current checkpoint height (not until the current head).



version: 1
tx_in count: 1
tx_in:
       previous_output : hash of the pruned merkle sub-tree
       script length: 0
       (signature script omitted since zero length)
       sequence: 0xFFFFFFFF
tx_out count: 0
lock_time: 0

The node would recognize pruned merkle sub-tree by checking for tx_out == 0 that is otherwise not permitted and use the previous_output hash in its Merkle tree hash computation for tree nodes above this.

NOTE:
An implementation of the proposal is available for test purposes in the bitsofproof node, link below.
Pages:
Jump to: