Platform

Blocks: Distinctive Characteristics

Each block that is secured to Telcoin Network can be distinguished between and identified based on distinctive characteristics including the author, the block number, and a variety of other attributes.

Distinctive characteristicsDescription
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.