Prerequisites and Introduction
This article will solely focus on Blocks in Ethereum Blockchain- definition, attributes (what all comprises a Block) and concepts like Block time. You will get to see a real typical block in Ethereum. You can check more of these blocks in Etherscan. Though most of the blockchain platforms you will come across like EOS, Solana, etc. have the same block structure and attributes.
Ethereum Blocks : Definition
- Simply put, blocks are groups of transactions.
- A block contains the hash of the previous block. This means any block in Ethereum blockchain contains the hashed or encoded data of the previous block. In this manner blocks are chained together in the blockchain (see the figure below).
- This prevents possible frauds and tampers. Tampering data in any of the blocks will change the hash value in all the subsequent blocks, which will be a clear prompt to all the members of the blockchain.
- Blocks in the Ethereum blockchain are created or mined approximately every 15 seconds. Though there are dozens or even hundreds of transactions happening every second.
- Once a block is assembled with all the transactions and put together in the blockchain by a miner, it is propagated to the entire network of nodes in the blockchain. Each node adds the block at the end of their blockchain.
Attributes of a Block in Ethereum
- Timestamp: The time when the block was mined.
- Block Number: It is the length of the blockchain till the block in consideration. Simply put it is the number of blocks created till the block we are considering.
- Base fee per gas: We know that a fee (in Ether) is required to process a transaction. Base fee per gas is the minimum fee per gas required to include a transaction in a block.
- Difficulty: The effort required to mine the block.
- Mix Hash: A unique identifier of the block.
- Parent Hash: The hash of the data or transactions of the previous or the parent block.
- Transactions: The transactions included in the block.
State Root– The entire state of the system: account balances, contract storage, contract code and account nonces are inside.
Nonce– a hash that, when combined with the mixHash, proves that the block has gone through
You can check blocks created in Ethereum blockchain here in Etherscan. A sample block is depicted below.
Block time refers to the average time taken to mine (validate, verify and add the block in the blockchain) a block in a blockchain. In Ethereum it is approximately between 12 to 14 seconds. The expected block time can be calculated after each block is mined. The Ethereum protocol ensures that this is between the average 12 to 14 seconds. If the expected block time is greater than the average block time then the difficulty to mine the block is decreased in the block header. Rather, when the expected block time is lesser than the average block time, the difficulty is increased.
In Ethereum unlike Bitcoin (where the Block time is approx. 10 minutes) the Block time is a variable which is kept as low as possible to give a tremendous user experience.
So we now know a typical Block in Ethereum blockchain. It is very similar to blocks in other blockchain platforms like EOS, Solana, etc. In the next article we will dig deeper into the concept of Ethereum Virtual Machine (EVM).