Block Reward Contract
The Block Reward contract manages block reward payouts to validators. Block rewards are issued as native Energy Web tokens that are minted by the engine.
Two entities are rewarded by each created block:
Interaction graph for the block reward contract
Block authors are rewarded each time they seal a block. The amount issued to block authors decreases over time, as depicted by the Discreet S Curve.
Fig. 2.: Discrete inverse S curve use for block rewards. Calculated for a 5 second step size, 10 million ethers total payout over 10 years
A portion of block rewards goes to the Community Fund. Unlike the amount awarded to block authors, the amount that goes to the Community Fund remains constant over time.
The amount is chosen to add up to roughly 37.9 million tokens over a 10 year period. The community fund can change its own address and set a payout address too.
With 5 second step size: Payout-per-block = 600900558100000000 wei
Visual representation of the community reward distribution is depicted below in Fig. 3.
Fig. 3.: Community reward distribution.
Returns the token amount that was minted totally in wei
Return the token amount that was totally minted for the community fund in wei
Returns the total token amount that was minted for a certain address for the community so far in wei
Return how much was minted for an account so far in wei
Returns how much was minted in certain block in wei
Returns how much was minted for a certain account in a certain block in wei
Returns the constant payout for the community per block in wei
Returns community fund address
Returns an address' payout address
Sets payout address for sender
Resets payout address for sender
Returns blockreward amount for a certain block number
Returns true if blockreward period has ended (based on blocknumber), false otherwise. The blockreward period right now ends after 10 years. After that no blockrewards or community fund payouts are minted.