Skip to main content
Version: 2.0.0

B


A B C D E F G H I J K L M N O P Q R S T U V W X Y Z


Blake2b

A function used within the Casper platform to create cryptographic hashes. More information can be found here.

Block

Used in two contexts:

  1. A data structure containing a collection of transactions. Blocks form the primary structure of the blockchain.
  2. A message that is exchanged between nodes containing the data structure as explained in (1).

Each block has a globally unique ID, achieved by hashing the contents of the block.

Each block points to its parent. An exception is the first block, which has no parent.

Block creation

Block creation means computing the transaction results and collecting the results into a block. We follow a process called execution after consensus.

The block proposal happens first, and the proposed proto block contains a set of transactions that have not been executed yet.

Only after consensus on a proto block has been reached, the transactions are executed. The resulting new global state root hash is put into an actual block, together with the executed transactions.

Note that only validators can create valid blocks.

Block finality

A block is "finalized" if validators with more than two-thirds of the total network weight agree on adding it to the blockchain.

For an observer to see a conflicting block as finalized, several validators whose total weight exceeds one-third of the total network weight would have to collude and show different information in a way that would ultimately be detected and punished (see eviction).

Block gossiping

Block gossiping occurs when a message containing a block is sent to one or more nodes on the network. In other words, block gossiping is sending a block validated by the current node but created by another node. The terms block gossiping and block passing are interchangeable.

Block height

Block height is an identifier for a given block based on the number of blocks completed prior to that block.

Block passing

See block gossiping.

Block processing

Block processing consists of running the transactions in a block received from another node to determine updates to the global state. Note that this is an essential part of validating blocks.

Block proposal

Sending a (newly) created block to the other nodes on the network for potential inclusion in the blockchain. Note that this term applies to NEW blocks only.

Block validation

The process of determining the validity of a block obtained from another node on the network.

Blockchain

Blockchain is a P2P network where the collection of nodes (validators) concurrently updates a decentralized, shared database. They do this collectively, building an ever-growing chain of transactions. For performance reasons, transactions are bundled in blocks. According to a particular cooperation protocol (consensus protocol), the collection of nodes connected via a P2P network cooperate to maintain this shared database as a single source of truth. The database's current state is called the global state and has a sizeable map-like collection.

Block store

The layer of the node software responsible for storing blocks. This layer is persisted and can be used to allow a node to recover its state after a crash.

Bond

The amount of money (in crypto-currency) that is allocated by a node in order to participate in consensus (and to be a validator).

Bonding

Depositing money in the auction contract and try to become a staker. The bonding request is a transaction that transfers tokens to the auction contract. In the next booking block, a new set of validators is determined, with weights according to their deposits. This new set becomes active in the era(s) using that booking block.

Booking block

The booking block for an era is the block that determines the era's validator set. In it, the auction contract selects the highest bidders to be the future era's validators. There is a configurable delay, the auction_delay, which is the number of eras between the booking block and the era to which it applies. The booking block is always a switch block, so the booking block for era N + auction_delay + 1 is the last block of era N.