Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

It depends on what the chain is storing and whether there is value in archiving the full history.

There are really two parts to the Blockchain:

1. Header, which includes the hash of the contents and other metadata like the previous node in the chain, etc.

2. Contents, which is what the miner chose to validate when the block was mined. In Bitcoin, this includes a set of transactions (a step from a graph of inputs and outputs).

The contents could potentially be pruned by only keeping track of unspent transaction outputs, but this removes the ability to validating the headers (ie. hashing all the transactions to check if the header metadata matches) except for the fact that there are other headers on top of it.

The set of blockchain headers will continue to grow, unless there is a new genesis block—this is like a forced snapshot of the current state of the relevant content of the network. In Bitcoin, it would include all the current unspent transaction inputs.

There are several blockchain technologies like Mastercoin which attempt to completely decouple the notion of a content specification from the blockchain headers themselves. That means you could conceivably send all kinds of garbage that would get happily signed by the miner but the contents would be ignored by any client that is not interested in it.

(Disclaimer: This is written off the top of my head and I gotta run, so it may be somewhat inaccurate.)



Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: