Blocks: Distinctive Characteristics
- Distinctive characteristics | Description
- Author
The validator who proposed the block. | Each block includes the validator who produced the block. - Block Number
The current number of blocks that have been committed to the blockchain. | Each block is assigned a number after it’s added to the blockchain. The genesis block starts at 0, and each block adds +1 to this number. - Transactions
The list of transactions in the block. | Each block stores unique transaction information based on the interactions with the network at that time by accounts. - Parent Hash
The hash of the preceeding block. | The parent hash of a block is required to ensure the block number is correct. Validators ensure they have the parent block before trying to verify the proposed block. - Block Hash
The hash of this block. | The contents of a block are hashed using one-way encryption so other validators can independently verify the contents of a block haven’t changed. - Gas Limit
The maximum amount of gas allowed in the block. | Blocks have a maximum amount of gas to prevent network failure. - Gas Used
The maximum amount of total gas used by all transactions within the block. | The amount of gas used in a block affects the next block’s base fee. - Extra Data
Arbitrary data included with this block. | The field is limited to 8-bytes max. - Base Fee Per Gas
The base fee for transactions within this block. | The base fee is managed by the Telcoin Network’s protocol automatically based on how much of the previous block’s gas limit was used. Validators and end-users have no control over the value. Instead, the base fee is increased or decreased based on network demand. - Withdrawals
A list of withdrawal objects | At some point in the future, validators may wish to withdraw some of the harvested TEL. This field would include that information and remove TEL from the staking contract and into a validator’s wallet. - Prev Randao
The value used to randomly select the validator that proposed this block. | The hash of the block’s parent certificates. This value is subject to change as the protocol matures. - Receipts Root
The hash of the transaction receipts trie. | All transactions executed in the block produce receipts, which are stored in a trie data structure. The final state of the trie is hashed so other validators can independently verify the receipts produced by the block’s transactions. - State Root
The root hash for global state after executing all transactions within a block. | State is also stored in a trie data structure. The hash of this root is included in the block so other validators can independently verify the global state using a one-way hashing function, SHA-256. - Logs Bloom
An optimization for applications to quickly find relevant blocks based on transaction events. | The logs from contracts are added to a bloom filter and included in the block’s header to reduce the amount of space taken on the blockchain. Users who are interested in a particular log can find it by searching these blooms and then replaying a particular block of interest to recreate the log itself. - Timestamp
The moment in time when a block was produced. | The unix timestamp is a valued measured in seconds since January 1, 1970 at UTC. Validators can use this to ensure blocks were created at the correct time.