1

What nodes on the Ethereum network stores the entire history?

From what I understand, full nodes are only required to store the current state of the blockchain, while they are not required to store the set of transactions (history).

However, to derive current state, the history must be obtainable.

So, who stores the history and what are such nodes called (if not "full")?

1 Answer 1

3

Full nodes indeed store the entire blockchain, that is the history. They derive from it a database which is the current network state.

Work is being done on light clients that can interact with the network without having the full blockchain, which is necessary for small devices with low storage, bandwidth, etc. See Light client protocol

There a few different options to run a node, such as mine, peer... Some nodes decide to prune the blockchain in order to keep a current valid state without having the full history. They are somehow called full nodes too (no clear definition), but technically aren't full, it also creates some possible attacks.

8
  • Thank you, I just read a presentation that said that full nodes have the option of storing the history - some deletes it after having derived current state.
    – Shuzheng
    Sep 16, 2017 at 13:00
  • I edited the answer to include your concern. Some people call the full nodes as they are able too validate transactions, however there are attacks concerns since they store the last 1000 blocks only. Sep 17, 2017 at 5:49
  • What do you mean by "prune"?
    – Shuzheng
    Sep 17, 2017 at 9:02
  • Pruning is suppressing "unnecessary" blocks. You get a valid state of the blockchain but not the history of how you got there. Sep 17, 2017 at 9:56
  • So they (blocks) are discarded or deleted, after their transactions have been executed locally?
    – Shuzheng
    Sep 17, 2017 at 9:58

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.