Interface ProcessableBlockHeader

All Known Subinterfaces:
BlockHeader

public interface ProcessableBlockHeader
The minimum set of data for a BlockHeader, as defined in the Ethereum Yellow Paper.
  • Method Summary

    Modifier and Type
    Method
    Description
    default Optional<? extends org.hyperledger.besu.datatypes.Quantity>
    The base fee of this block.
    org.hyperledger.besu.datatypes.Address
    The 160-bit address to which all fees collected from the successful mining of this block be transferred.
    org.hyperledger.besu.datatypes.Quantity
    A scalar value corresponding to the difficulty level of this block.
    long
    A scalar value equal to the current limit of gas expenditure per block.
    long
    A scalar value equal to the number of ancestor blocks.
    default Optional<Long>
    The slot number of this header (EIP-7843).
    Optional<? extends org.apache.tuweni.bytes.Bytes32>
    The parent beacon block root of this header.
    org.hyperledger.besu.datatypes.Hash
    The Keccak 256-bit hash of the parent block’s header, in its entirety.
    default Optional<org.apache.tuweni.bytes.Bytes32>
    Optional 32 bytes of prevRandao data.
    long
    A scalar value equal to the reasonable output of Unix’s time() at this block’s inception.
  • Method Details

    • getParentHash

      org.hyperledger.besu.datatypes.Hash getParentHash()
      The Keccak 256-bit hash of the parent block’s header, in its entirety.
      Returns:
      The Keccak 256-bit hash of the parent block’s header, in its entirety.
    • getCoinbase

      org.hyperledger.besu.datatypes.Address getCoinbase()
      The 160-bit address to which all fees collected from the successful mining of this block be transferred.

      The name in the yellow paper is beneficiary.

      Returns:
      The 160-bit address to which all fees collected from the successful mining of this block be transferred.
    • getDifficulty

      org.hyperledger.besu.datatypes.Quantity getDifficulty()
      A scalar value corresponding to the difficulty level of this block. This can be calculated from the previous block’s difficulty level and the timestamp.
      Returns:
      A scalar value corresponding to the difficulty level of this block. This can be calculated from the previous block’s difficulty level and the timestamp.
    • getNumber

      long getNumber()
      A scalar value equal to the number of ancestor blocks. The genesis block has a number of zero.
      Returns:
      A scalar value equal to the number of ancestor blocks. The genesis block has a number of zero.
    • getGasLimit

      long getGasLimit()
      A scalar value equal to the current limit of gas expenditure per block.
      Returns:
      A scalar value equal to the current limit of gas expenditure per block.
    • getTimestamp

      long getTimestamp()
      A scalar value equal to the reasonable output of Unix’s time() at this block’s inception.
      Returns:
      A scalar value equal to the reasonable output of Unix’s time() at this block’s inception.
    • getPrevRandao

      default Optional<org.apache.tuweni.bytes.Bytes32> getPrevRandao()
      Optional 32 bytes of prevRandao data.
      Returns:
      Optional prevRandao bytes from this header.
    • getBaseFee

      default Optional<? extends org.hyperledger.besu.datatypes.Quantity> getBaseFee()
      The base fee of this block.
      Returns:
      The base fee of this block.
    • getParentBeaconBlockRoot

      Optional<? extends org.apache.tuweni.bytes.Bytes32> getParentBeaconBlockRoot()
      The parent beacon block root of this header.
      Returns:
      The parent_beacon_block_root of this header.
    • getOptionalSlotNumber

      default Optional<Long> getOptionalSlotNumber()
      The slot number of this header (EIP-7843).
      Returns:
      The slot number of this header.