The Blockchain Specification
The blockchain specification, or chainspec
, is a collection of configuration settings describing the network state at genesis and upgrades to basic system functionality (including system contracts and gas costs) occurring after genesis. This page describes each field in the chainspec, based on version 1.5.2 of the Casper node. The chainspec can and should be customized for private networks. The chainspec attributes are divided into categories based on what they are configuring.
protocol
These settings describe the active protocol version.
Attribute | Description | Mainnet Setting |
---|---|---|
version | The Casper node protocol version. | '1.5.2' |
hard_reset | When set to true, clear blocks and deploys back to the switch block (the end of the last era) just before the activation point. Used during the upgrade process to reset the network progress. In most cases, this setting should be true. | true |
activation_point | The protocol version that should become active. If it is a timestamp string, it represents the timestamp for the genesis block. This is the beginning of Era 0. By this time, a sufficient majority (> 50% + F/2 — see the finality_threshold_fraction below) of validator nodes must be running to start the blockchain. This timestamp is also used in seeding the pseudo-random number generator used in the contract runtime for computing the genesis post-state hash. If it is an integer, it represents an era ID, meaning the protocol version becomes active at the start of this era. | 9100 |