• Ethereum 2.0 Phase 0 -- The Beacon Chain
  • Table of contents
  • Introduction
  • Notation
  • Terminology
  • Constants
  • Misc
  • Deposit contract
  • Initial values
  • Time parameters
  • State list lengths
  • Reward and penalty quotients
  • Status flags
  • Max operations per block
  • Signature domains
  • Data structures
  • Beacon chain operations
  • Proposer slashings
  • ProposerSlashing
  • Attester slashings
  • AttesterSlashing
  • SlashableAttestation
  • Attestations
  • Attestation
  • AttestationData
  • AttestationDataAndCustodyBit
  • Deposits
  • Deposit
  • DepositData
  • DepositInput
  • Exits
  • Exit
  • Beacon chain blocks
  • BeaconBlock
  • BeaconBlockBody
  • ProposalSignedData
  • Beacon chain state
  • BeaconState
  • Validator
  • Crosslink
  • PendingAttestation
  • Fork
  • Eth1Data
  • Eth1DataVote
  • Custom Types
  • Helper functions
  • hash
  • hash_tree_root
  • slot_to_epoch
  • get_current_epoch
  • get_epoch_start_slot
  • is_active_validator
  • get_active_validator_indices
  • shuffle
  • split
  • get_epoch_committee_count
  • get_shuffling
  • get_previous_epoch_committee_count
  • get_current_epoch_committee_count
  • get_next_epoch_committee_count
  • get_crosslink_committees_at_slot
  • get_block_root
  • get_randao_mix
  • get_active_index_root
  • generate_seed
  • get_beacon_proposer_index
  • merkle_root
  • get_attestation_participants
  • is_power_of_two
  • int_to_bytes1, int_to_bytes2, ...
  • get_effective_balance
  • get_fork_version
  • get_domain
  • get_bitfield_bit
  • verify_bitfield
  • verify_slashable_attestation
  • is_double_vote
  • is_surround_vote
  • integer_squareroot
  • get_entry_exit_effect_epoch
  • bls_verify
  • bls_verify_multiple
  • bls_aggregate_pubkeys
  • validate_proof_of_possession
  • process_deposit
  • Routines for updating validator status
  • activate_validator
  • initiate_validator_exit
  • exit_validator
  • penalize_validator
  • prepare_validator_for_withdrawal
  • Ethereum 1.0 deposit contract
  • Deposit arguments
  • Withdrawal credentials
  • Deposit logs
  • ChainStart log
  • Vyper code
  • On startup
  • Beacon chain processing
  • Beacon chain fork choice rule
  • Beacon chain state transition function
  • Per-slot processing
  • Slot
  • Block roots
  • Per-block processing
  • Slot
  • Proposer signature
  • RANDAO
  • Eth1 data
  • Operations
  • Proposer slashings
  • Attester slashings
  • Attestations
  • Deposits
  • Exits
  • Per-epoch processing
  • Helpers
  • Eth1 data
  • Justification
  • Crosslinks
  • Rewards and penalties
  • Justification and finalization
  • Attestation inclusion
  • Crosslinks
  • Ejections
  • Validator registry and shuffling seed data
  • Final updates
  • State root verification
  • References
  • Normative
  • Informative
  • Copyright