capella

package
v0.5.0-alpha.6 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 13, 2023 License: AGPL-3.0 Imports: 9 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type BLSToExecutionChange

type BLSToExecutionChange struct {
	ValidatorIndex     uint64          `json:"validator_index,string"`
	FromBLSPubkey      types.PublicKey `json:"from_bls_pubkey" ssz-size:"48"`
	ToExecutionAddress types.Address   `json:"to_execution_address" ssz-size:"20"`
}

BLSToExecutionChange provides information about a change of withdrawal credentials.

func (*BLSToExecutionChange) GetTree

func (b *BLSToExecutionChange) GetTree() (*ssz.Node, error)

GetTree ssz hashes the BLSToExecutionChange object

func (*BLSToExecutionChange) HashTreeRoot

func (b *BLSToExecutionChange) HashTreeRoot() ([32]byte, error)

HashTreeRoot ssz hashes the BLSToExecutionChange object

func (*BLSToExecutionChange) HashTreeRootWith

func (b *BLSToExecutionChange) HashTreeRootWith(hh ssz.HashWalker) (err error)

HashTreeRootWith ssz hashes the BLSToExecutionChange object with a hasher

func (*BLSToExecutionChange) SizeSSZ

func (b *BLSToExecutionChange) SizeSSZ() (size int)

SizeSSZ returns the ssz encoded size in bytes for the BLSToExecutionChange object

type BeaconBlock

type BeaconBlock struct {
	Slot          uint64           `json:"slot,string"`
	ProposerIndex uint64           `json:"proposer_index,string"`
	ParentRoot    types.Root       `json:"parent_root" ssz-size:"32"`
	StateRoot     types.Root       `json:"state_root" ssz-size:"32"`
	Body          *BeaconBlockBody `json:"body"`
}

BeaconBlock https://github.com/ethereum/beacon-APIs/blob/master/types/bellatrix/block.yaml#L46

type BeaconBlockBody

type BeaconBlockBody struct {
	BLSToExecutionChanges []*SignedBLSToExecutionChange `json:"bls_to_execution_changes" ssz-max:"16"`
	RandaoReveal          types.Signature               `json:"randao_reveal" ssz-size:"96"`
	Eth1Data              *types.Eth1Data               `json:"eth1_data"`
	Graffiti              types.Hash                    `json:"graffiti" ssz-size:"32"`
	ProposerSlashings     []*types.ProposerSlashing     `json:"proposer_slashings" ssz-max:"16"`
	AttesterSlashings     []*types.AttesterSlashing     `json:"attester_slashings" ssz-max:"2"`
	Attestations          []*types.Attestation          `json:"attestations" ssz-max:"128"`
	Deposits              []*types.Deposit              `json:"deposits" ssz-max:"16"`
	VoluntaryExits        []*types.SignedVoluntaryExit  `json:"voluntary_exits" ssz-max:"16"`
	SyncAggregate         *types.SyncAggregate          `json:"sync_aggregate"`
	ExecutionPayload      *ExecutionPayload             `json:"execution_payload"`
}

BeaconBlockBody https://github.com/ethereum/beacon-APIs/blob/master/types/bellatrix/block.yaml#L38

type BlindedBeaconBlock

type BlindedBeaconBlock struct {
	Slot          uint64                  `json:"slot,string"`
	ProposerIndex uint64                  `json:"proposer_index,string"`
	ParentRoot    types.Root              `json:"parent_root" ssz-size:"32"`
	StateRoot     types.Root              `json:"state_root" ssz-size:"32"`
	Body          *BlindedBeaconBlockBody `json:"body"`
}

BlindedBeaconBlock https://github.com/ethereum/beacon-APIs/blob/master/types/bellatrix/block.yaml#L74

func (*BlindedBeaconBlock) GetTree

func (b *BlindedBeaconBlock) GetTree() (*ssz.Node, error)

GetTree ssz hashes the BlindedBeaconBlock object

func (*BlindedBeaconBlock) HashTreeRoot

func (b *BlindedBeaconBlock) HashTreeRoot() ([32]byte, error)

HashTreeRoot ssz hashes the BlindedBeaconBlock object

func (*BlindedBeaconBlock) HashTreeRootWith

func (b *BlindedBeaconBlock) HashTreeRootWith(hh ssz.HashWalker) (err error)

HashTreeRootWith ssz hashes the BlindedBeaconBlock object with a hasher

type BlindedBeaconBlockBody

type BlindedBeaconBlockBody struct {
	forks.BlindedBeaconBlockBody

	ExecutionPayloadHeader *ExecutionPayloadHeader       `json:"execution_payload_header"`
	BLSToExecutionChanges  []*SignedBLSToExecutionChange `json:"bls_to_execution_changes" ssz-max:"16"`
}

func (*BlindedBeaconBlockBody) GetTree

func (b *BlindedBeaconBlockBody) GetTree() (*ssz.Node, error)

GetTree ssz hashes the BlindedBeaconBlockBody object

func (*BlindedBeaconBlockBody) HashTreeRoot

func (b *BlindedBeaconBlockBody) HashTreeRoot() ([32]byte, error)

HashTreeRoot ssz hashes the BlindedBeaconBlockBody object

func (*BlindedBeaconBlockBody) HashTreeRootWith

func (b *BlindedBeaconBlockBody) HashTreeRootWith(hh ssz.HashWalker) (err error)

HashTreeRootWith ssz hashes the BlindedBeaconBlockBody object with a hasher

type BlockBidAndTrace

type BlockBidAndTrace struct {
	Trace   *types.SignedBidTrace
	Bid     GetHeaderResponse
	Payload GetPayloadResponse
}

func (*BlockBidAndTrace) BidValue

func (bbat *BlockBidAndTrace) BidValue() types.U256Str

func (*BlockBidAndTrace) BuilderPubkey added in v0.4.1

func (bbat *BlockBidAndTrace) BuilderPubkey() (pub types.PublicKey)

func (*BlockBidAndTrace) ExecutionHeaderHash added in v0.4.11

func (bbat *BlockBidAndTrace) ExecutionHeaderHash() (types.Hash, error)

func (*BlockBidAndTrace) ExecutionPayload

func (bbat *BlockBidAndTrace) ExecutionPayload() structs.ExecutionPayload

func (*BlockBidAndTrace) Proposer

func (bbat *BlockBidAndTrace) Proposer() types.PublicKey

func (*BlockBidAndTrace) Slot

func (bbat *BlockBidAndTrace) Slot() uint64

func (*BlockBidAndTrace) ToDeliveredTrace

func (bbat *BlockBidAndTrace) ToDeliveredTrace(slot uint64) (dt structs.DeliveredTrace, err error)

type BuilderBid

type BuilderBid struct {
	CapellaHeader *ExecutionPayloadHeader `json:"header"`
	CapellaValue  types.U256Str           `json:"value" ssz-size:"32"`
	CapellaPubkey types.PublicKey         `json:"pubkey" ssz-size:"48"`
}

BuilderBid https://github.com/ethereum/builder-specs/pull/2/files#diff-b37cbf48e8754483e30e7caaadc5defc8c3c6e1aaf3273ee188d787b7c75d993

func (*BuilderBid) GetTree

func (b *BuilderBid) GetTree() (*ssz.Node, error)

GetTree ssz hashes the BuilderBid object

func (*BuilderBid) HashTreeRoot

func (b *BuilderBid) HashTreeRoot() ([32]byte, error)

HashTreeRoot ssz hashes the BuilderBid object

func (*BuilderBid) HashTreeRootWith

func (b *BuilderBid) HashTreeRootWith(hh ssz.HashWalker) (err error)

HashTreeRootWith ssz hashes the BuilderBid object with a hasher

func (*BuilderBid) Header added in v0.5.0

func (*BuilderBid) Pubkey

func (b *BuilderBid) Pubkey() types.PublicKey

func (*BuilderBid) Value

func (b *BuilderBid) Value() types.U256Str

type BuilderBidExtended added in v0.5.0

type BuilderBidExtended struct {
	CapellaBuilderBid BuilderBid      `json:"bid"`
	CapellaProposer   types.PublicKey `json:"proposer"`
	CapellaSlot       uint64          `json:"slot"`
}

func (BuilderBidExtended) BuilderBid added in v0.5.0

func (b BuilderBidExtended) BuilderBid() structs.BuilderBid

func (BuilderBidExtended) Proposer added in v0.5.0

func (b BuilderBidExtended) Proposer() types.PublicKey

func (BuilderBidExtended) Slot added in v0.5.0

func (b BuilderBidExtended) Slot() uint64

type ExecutionPayload

type ExecutionPayload struct {
	bellatrix.ExecutionPayload
	EpWithdrawals structs.Withdrawals `json:"withdrawals" ssz-max:"16"`
}

ExecutionPayload represents an execution layer payload.

type ExecutionPayloadHeader

type ExecutionPayloadHeader struct {
	types.ExecutionPayloadHeader
	WithdrawalsRoot types.Root `json:"withdrawals_root,omitempty" ssz-size:"32"`
}

func PayloadToPayloadHeader

func PayloadToPayloadHeader(p *ExecutionPayload) (*ExecutionPayloadHeader, error)

func (*ExecutionPayloadHeader) GetBlockHash

func (eph *ExecutionPayloadHeader) GetBlockHash() types.Hash

func (*ExecutionPayloadHeader) GetBlockNumber

func (eph *ExecutionPayloadHeader) GetBlockNumber() uint64

func (*ExecutionPayloadHeader) GetParentHash

func (eph *ExecutionPayloadHeader) GetParentHash() types.Hash

func (*ExecutionPayloadHeader) GetTree

func (e *ExecutionPayloadHeader) GetTree() (*ssz.Node, error)

GetTree ssz hashes the ExecutionPayloadHeader object

func (*ExecutionPayloadHeader) HashTreeRoot

func (e *ExecutionPayloadHeader) HashTreeRoot() ([32]byte, error)

HashTreeRoot ssz hashes the ExecutionPayloadHeader object

func (*ExecutionPayloadHeader) HashTreeRootWith

func (e *ExecutionPayloadHeader) HashTreeRootWith(hh ssz.HashWalker) (err error)

HashTreeRootWith ssz hashes the ExecutionPayloadHeader object with a hasher

func (*ExecutionPayloadHeader) MarshalSSZ

func (e *ExecutionPayloadHeader) MarshalSSZ() ([]byte, error)

MarshalSSZ ssz marshals the ExecutionPayloadHeader object

func (*ExecutionPayloadHeader) MarshalSSZTo

func (e *ExecutionPayloadHeader) MarshalSSZTo(buf []byte) (dst []byte, err error)

MarshalSSZTo ssz marshals the ExecutionPayloadHeader object to a target array

func (*ExecutionPayloadHeader) SizeSSZ

func (e *ExecutionPayloadHeader) SizeSSZ() (size int)

SizeSSZ returns the ssz encoded size in bytes for the ExecutionPayloadHeader object

func (*ExecutionPayloadHeader) UnmarshalSSZ

func (e *ExecutionPayloadHeader) UnmarshalSSZ(buf []byte) error

UnmarshalSSZ ssz unmarshals the ExecutionPayloadHeader object

type GetHeaderResponse

type GetHeaderResponse struct {
	CapellaVersion types.VersionString `json:"version"`
	CapellaData    SignedBuilderBid    `json:"data"`
}

GetHeaderResponse is the response payload from the getHeader request: https://github.com/ethereum/builder-specs/pull/2/files#diff-c80f52e38c99b1049252a99215450a29fd248d709ffd834a9480c98a233bf32c

func (*GetHeaderResponse) Data

func (*GetHeaderResponse) Version

func (g *GetHeaderResponse) Version() types.VersionString

type GetPayloadResponse

type GetPayloadResponse struct {
	CapellaVersion types.VersionString `json:"version"`
	CapellaData    ExecutionPayload    `json:"data"`
}

func (*GetPayloadResponse) Data

type SignedBLSToExecutionChange

type SignedBLSToExecutionChange struct {
	Message   *BLSToExecutionChange `json:"message"`
	Signature types.Signature       `json:"signature" ssz-size:"96"`
}

SignedBLSToExecutionChange provides information about a signed BLS to execution change.

func (*SignedBLSToExecutionChange) GetTree

func (s *SignedBLSToExecutionChange) GetTree() (*ssz.Node, error)

GetTree ssz hashes the SignedBLSToExecutionChange object

func (*SignedBLSToExecutionChange) HashTreeRoot

func (s *SignedBLSToExecutionChange) HashTreeRoot() ([32]byte, error)

HashTreeRoot ssz hashes the SignedBLSToExecutionChange object

func (*SignedBLSToExecutionChange) HashTreeRootWith

func (s *SignedBLSToExecutionChange) HashTreeRootWith(hh ssz.HashWalker) (err error)

HashTreeRootWith ssz hashes the SignedBLSToExecutionChange object with a hasher

func (*SignedBLSToExecutionChange) SizeSSZ

func (s *SignedBLSToExecutionChange) SizeSSZ() (size int)

SizeSSZ returns the ssz encoded size in bytes for the SignedBLSToExecutionChange object

type SignedBeaconBlock

type SignedBeaconBlock struct {
	CapellaMessage   *BeaconBlock    `json:"message"`
	CapellaSignature types.Signature `json:"signature" ssz-size:"96"`
}

SignedBeaconBlock https://github.com/ethereum/beacon-APIs/blob/master/types/bellatrix/block.yaml#L55

func (*SignedBeaconBlock) Signature

func (s *SignedBeaconBlock) Signature() types.Signature

type SignedBlindedBeaconBlock

type SignedBlindedBeaconBlock struct {
	SRaw       []byte             `json:"-"`
	SMessage   BlindedBeaconBlock `json:"message"`
	SSignature types.Signature    `json:"signature" ssz-size:"96"`
}

SignedBlindedBeaconBlock https://github.com/ethereum/beacon-APIs/blob/master/types/bellatrix/block.yaml#L83

func (*SignedBlindedBeaconBlock) BlockHash

func (s *SignedBlindedBeaconBlock) BlockHash() types.Hash

func (*SignedBlindedBeaconBlock) BlockNumber

func (s *SignedBlindedBeaconBlock) BlockNumber() uint64

func (*SignedBlindedBeaconBlock) ComputeSigningRoot

func (b *SignedBlindedBeaconBlock) ComputeSigningRoot(d types.Domain) ([32]byte, error)

func (*SignedBlindedBeaconBlock) ExecutionHeaderHash added in v0.4.11

func (s *SignedBlindedBeaconBlock) ExecutionHeaderHash() (types.Hash, error)

func (*SignedBlindedBeaconBlock) Loggable added in v0.4.16

func (b *SignedBlindedBeaconBlock) Loggable() map[string]any

func (*SignedBlindedBeaconBlock) ParentRoot

func (s *SignedBlindedBeaconBlock) ParentRoot() types.Root

func (*SignedBlindedBeaconBlock) ProposerIndex

func (s *SignedBlindedBeaconBlock) ProposerIndex() uint64

func (*SignedBlindedBeaconBlock) Raw added in v0.4.17

func (b *SignedBlindedBeaconBlock) Raw() []byte

func (*SignedBlindedBeaconBlock) Signature

func (s *SignedBlindedBeaconBlock) Signature() types.Signature

func (*SignedBlindedBeaconBlock) Slot

func (s *SignedBlindedBeaconBlock) Slot() uint64

func (*SignedBlindedBeaconBlock) StateRoot

func (s *SignedBlindedBeaconBlock) StateRoot() types.Root

func (*SignedBlindedBeaconBlock) ToBeaconBlock

func (s *SignedBlindedBeaconBlock) ToBeaconBlock(executionPayload structs.ExecutionPayload) (structs.SignedBeaconBlock, error)

func (*SignedBlindedBeaconBlock) ToPayloadKey

func (s *SignedBlindedBeaconBlock) ToPayloadKey(pk types.PublicKey) (payK structs.PayloadKey, err error)

func (*SignedBlindedBeaconBlock) Validate

func (b *SignedBlindedBeaconBlock) Validate() bool

type SignedBuilderBid

type SignedBuilderBid struct {
	CapellaMessage   BuilderBid      `json:"message"`
	CapellaSignature types.Signature `json:"signature" ssz-size:"96"`
}

func (*SignedBuilderBid) GetTree

func (s *SignedBuilderBid) GetTree() (*ssz.Node, error)

GetTree ssz hashes the SignedBuilderBid object

func (*SignedBuilderBid) HashTreeRoot

func (s *SignedBuilderBid) HashTreeRoot() ([32]byte, error)

HashTreeRoot ssz hashes the SignedBuilderBid object

func (*SignedBuilderBid) HashTreeRootWith

func (s *SignedBuilderBid) HashTreeRootWith(hh ssz.HashWalker) (err error)

HashTreeRootWith ssz hashes the SignedBuilderBid object with a hasher

func (*SignedBuilderBid) Signature

func (s *SignedBuilderBid) Signature() types.Signature

func (*SignedBuilderBid) Validate

func (b *SignedBuilderBid) Validate() bool

func (*SignedBuilderBid) Value

func (s *SignedBuilderBid) Value() types.U256Str

type SubmitBlockRequest

type SubmitBlockRequest struct {
	CapellaRaw              []byte           `json:"-"`
	CapellaMessage          types.BidTrace   `json:"message"`
	CapellaExecutionPayload ExecutionPayload `json:"execution_payload"`
	CapellaSignature        types.Signature  `json:"signature" ssz-size:"96"`
}

func (*SubmitBlockRequest) BlockHash

func (b *SubmitBlockRequest) BlockHash() types.Hash

func (*SubmitBlockRequest) BuilderPubkey

func (b *SubmitBlockRequest) BuilderPubkey() types.PublicKey

func (*SubmitBlockRequest) ComputeSigningRoot

func (b *SubmitBlockRequest) ComputeSigningRoot(d types.Domain) ([32]byte, error)

func (*SubmitBlockRequest) NumTx

func (b *SubmitBlockRequest) NumTx() uint64

func (*SubmitBlockRequest) ParentHash added in v0.4.3

func (b *SubmitBlockRequest) ParentHash() types.Hash

func (*SubmitBlockRequest) PreparePayloadContents

func (s *SubmitBlockRequest) PreparePayloadContents(sk *bls.SecretKey, pubkey *types.PublicKey, domain types.Domain) (cbs structs.CompleteBlockstruct, err error)

func (*SubmitBlockRequest) ProposerFeeRecipient

func (b *SubmitBlockRequest) ProposerFeeRecipient() types.Address

func (*SubmitBlockRequest) ProposerPubkey

func (b *SubmitBlockRequest) ProposerPubkey() types.PublicKey

func (*SubmitBlockRequest) Random

func (b *SubmitBlockRequest) Random() types.Hash

func (*SubmitBlockRequest) Raw added in v0.4.17

func (b *SubmitBlockRequest) Raw() []byte

func (*SubmitBlockRequest) Signature

func (b *SubmitBlockRequest) Signature() types.Signature

func (*SubmitBlockRequest) Slot

func (b *SubmitBlockRequest) Slot() uint64

func (*SubmitBlockRequest) Timestamp

func (b *SubmitBlockRequest) Timestamp() uint64

func (*SubmitBlockRequest) ToPayloadKey

func (s *SubmitBlockRequest) ToPayloadKey() structs.PayloadKey

func (*SubmitBlockRequest) TraceBlockHash added in v0.4.3

func (b *SubmitBlockRequest) TraceBlockHash() types.Hash

func (*SubmitBlockRequest) TraceParentHash added in v0.4.3

func (b *SubmitBlockRequest) TraceParentHash() types.Hash

func (*SubmitBlockRequest) Validate

func (b *SubmitBlockRequest) Validate() bool

func (*SubmitBlockRequest) Value

func (b *SubmitBlockRequest) Value() types.U256Str

func (*SubmitBlockRequest) Withdrawals

func (b *SubmitBlockRequest) Withdrawals() structs.Withdrawals

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL