EIP-7805 -- Networking¶
This document contains the consensus-layer networking specification for EIP-7805.
Modifications in EIP-7805¶
Configuration¶
Name | Value | Unit | Duration |
---|---|---|---|
ATTESTATION_DEADLINE |
SECONDS_PER_SLOT // 3 |
seconds | 4 seconds |
Name | Value | Description |
---|---|---|
MAX_REQUEST_INCLUSION_LIST |
2**4 (= 16) |
Maximum number of inclusion list in a single request |
MAX_BYTES_PER_INCLUSION_LIST |
2**13 (= 8192) |
Maximum size of the inclusion list's transactions in bytes |
The gossip domain: gossipsub¶
Topics and messages¶
The new topics along with the type of the data
field of a gossipsub message are given in this table:
Name | Message Type |
---|---|
inclusion_list |
SignedInclusionList |
Global topics¶
EIP-7805 introduces a new global topic for inclusion lists.
inclusion_list
¶
This topic is used to propagate signed inclusion list as SignedInclusionList
.
The following validations MUST pass before forwarding the inclusion_list
on the network, assuming the alias message = signed_inclusion_list.message
:
- [REJECT] The size of
message.transactions
is within upperboundMAX_BYTES_PER_INCLUSION_LIST
. - [REJECT] The slot
message.slot
is equal to the previous or current slot. - [IGNORE] The slot
message.slot
is equal to the current slot, or it is equal to the previous slot and the current time is less thanATTESTATION_DEADLINE
seconds into the slot. - [IGNORE] The
inclusion_list_committee
for slotmessage.slot
on the current branch corresponds tomessage.inclusion_list_committee_root
, as determined byhash_tree_root(inclusion_list_committee) == message.inclusion_list_committee_root
. - [REJECT] The validator index
message.validator_index
is within theinclusion_list_committee
corresponding tomessage.inclusion_list_committee_root
. - [REJECT] The transactions
message.transactions
length is within upperboundMAX_TRANSACTIONS_PER_INCLUSION_LIST
. - [IGNORE] The
message
is either the first or second valid message received from the validator with indexmessage.validator_index
. - [REJECT] The signature of
inclusion_list.signature
is valid with respect to the validator index.
The Req/Resp domain¶
Messages¶
InclusionListByCommitteeIndices v1¶
Protocol ID: /eth2/beacon_chain/req/inclusion_list_by_committee_indices/1/
The <context-bytes>
field is calculated as context = compute_fork_digest(fork_version, genesis_validators_root)
:
fork_version |
Chunk SSZ type |
---|---|
EIP7805_FORK_VERSION |
EIP-7805.SignedInclusionList |
Request Content:
Response Content: