TransWikia.com

mining requires access to the entire blockchain?

Ethereum Asked by fluency03 on August 26, 2021

I am reading the white paper and confused by two sentences bellow:

In the Section of Mining Centralization:

… miners are required to fetch random data from the state, compute some randomly selected transactions from the last N blocks in the blockchain, … This has two important benefits. … Second, mining requires access to the entire blockchain, forcing miners to store the entire blockchain and at least be capable of verifying every transaction. This removes the need for centralized mining pools;

However, in the Section of Scalability:

Ethereum is likely to suffer a similar growth pattern, …, but ameliorated by the fact that Ethereum full nodes need to store just the state instead of the entire blockchain history.

So, my questions are:

  1. Who needs to store entire blockchain history? And Who only needs the state?
  2. What is this so called state?
  3. Is by saying a miner implying that it is a full node? If so, why it is saying “mining requires access to the entire blockchain” but “full nodes need to store just the state instead of the entire blockchain history“?

One Answer

The Ethereum World State is a mapping that contains for each account its balance, the account nonce and for smart contracts the bytecode and the storage.

Miners create new blocks and only need access to the World State. They do not need access to old blocks, but they need new blocks to keep the World State updated.

There are not many applications that require full nodes, perhaps a block explorer is the more visible application. But full nodes are essential for new nodes joining the network, so they can download and verify blocks ensuring the integrity of the network.

A current issue that affects new nodes is the time required for the initial sync of the World State. This issue is being researched for future improvements.

There's the alternative of "light" nodes that store a minimum amount of data and rely on full nodes to serve more complex. This works quite well for most use cases but introduce a high latencies to retrieve that that can be bad for miners.

The better solution for miners is to group several of them into pools, so you only need a single "full" node.

Answered by Ismael on August 26, 2021

Add your own answers!

Ask a Question

Get help from others!

© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP