Blocks¶
This module contains the structure of block storage in the Waves Enterprise blockchain.
Field order number |
Field |
Type |
Field size in bytes |
---|---|---|---|
1 |
Version (0x02 for Genesis block, 0x03 for common block) |
Byte |
1 |
2 |
Timestamp |
Long |
8 |
3 |
Parent block signature |
Bytes |
64 |
4 |
Consensus block length (always 40 bytes) |
Int |
4 |
5 |
Base target |
Long |
8 |
6 |
Generation signature* |
Bytes |
32 |
7 |
Transactions block length (N) |
Int |
4 |
8 |
Transaction #1 bytes |
Bytes |
M1 |
… |
… |
… |
… |
8 + (K - 1) |
Transaction #K bytes |
Bytes |
MK |
9 + (K - 1) |
Generator’s public key |
Bytes |
32 |
10 + (K - 1) |
Block’s signature |
Bytes |
64 |
Generation signature is calculated based on the hash (Blake2b256) of the following fields:
Field order number |
Field |
Type |
Field size in bytes |
---|---|---|---|
1 |
Previous block’s generation signature |
Bytes |
32 |
2 |
Generator’s public key |
Bytes |
32 |
The block signature is calculated based on the following data:
Field order number |
Field |
Type |
Field size in bytes |
---|---|---|---|
1 |
Version (0x02 for Genesis block,, 0x03 for common block) |
Byte |
1 |
2 |
Timestamp |
Long |
8 |
3 |
Parent block signature |
Bytes |
64 |
4 |
Consensus block length (always 40 bytes) |
Int |
4 |
5 |
Base target |
Long |
8 |
6 |
Generation signature* |
Bytes |
32 |
7 |
Transactions block length (N) |
Int |
4 |
8 |
Transaction #1 bytes |
Bytes |
M1 |
… |
… |
… |
… |
8 + (K - 1) |
Transaction #K bytes |
Bytes |
MK |
9 + (K - 1) |
Generator’s public key |
Bytes |
32 |