Main Block
Main blocks contain a copy of the transaction list, the receipt list, and the recent states. Though this approach is considered to be inefficient due to the necessity to store all receipts and states, it ensures storage of all the aspects and peculiarities of the blockchain work. To address these gaps, it is planned to improve storing methods in the upcoming releases.
The main block contains:
Timestamp
High
Hash
Previous block hash
Transactions
Transfer transactions
Reward transactions
Delegate transactions
Vote transactions
States
Delegate states
Account states
Receipts
Transactions Merkle Root
States Merkle Root
Receipts Merkle Root
Signature
Public key
Block validation algorithm depends on the role of a node. The basic block validation process and participation of each node can be viewed in the table below.
Check if the previous block referenced exists and is valid
+
+
+
Check that the block is produced by the correct active delegate
+
+
+
Check that the timestamp of the block is in the correct time slot
+
+
+
Recalculate each transaction hash
+
+
Check each transaction sign
+
+
Smart Contract execution
+
Check transactions Merkle root
+
+
+
Reproduce each receipt
+
Check receipts Merkle root
+
+
+
Reproduce each state
+
Check states Merkle root
+
+
+
Recalculate block hash
+
+
Check block signature
+
+
+
Last updated