Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
35 changes: 18 additions & 17 deletions configs/mainnet.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -22,11 +22,11 @@ TERMINAL_BLOCK_HASH_ACTIVATION_EPOCH: 18446744073709551615

# Genesis
# ---------------------------------------------------------------
# 2**14 (= 16,384)
# 2**14 (= 16,384) validators
MIN_GENESIS_ACTIVE_VALIDATOR_COUNT: 16384
# Dec 1, 2020, 12pm UTC
MIN_GENESIS_TIME: 1606824000
# Mainnet initial fork version, recommend altering for testnets
# Initial fork version for mainnet
GENESIS_FORK_VERSION: 0x00000000
# 7 * 24 * 3,600 (= 604,800) seconds, 7 days
GENESIS_DELAY: 604800
Expand Down Expand Up @@ -69,15 +69,15 @@ EIP7805_FORK_EPOCH: 18446744073709551615
# ---------------------------------------------------------------
# 12 seconds (*deprecated*)
SECONDS_PER_SLOT: 12
# 12000 milliseconds, 12 seconds
# 12000 milliseconds
SLOT_DURATION_MS: 12000
# 14 (estimate from Eth1 mainnet)
SECONDS_PER_ETH1_BLOCK: 14
# 2**8 (= 256) epochs, ~27 hours
# 2**8 (= 256) epochs
MIN_VALIDATOR_WITHDRAWABILITY_DELAY: 256
# 2**8 (= 256) epochs, ~27 hours
# 2**8 (= 256) epochs
SHARD_COMMITTEE_PERIOD: 256
# 2**11 (= 2,048) Eth1 blocks, ~8 hours
# 2**11 (= 2,048) Eth1 blocks
ETH1_FOLLOW_DISTANCE: 2048
# 1667 basis points, ~17% of SLOT_DURATION_MS
PROPOSER_REORG_CUTOFF_BPS: 1667
Expand All @@ -92,7 +92,7 @@ SYNC_MESSAGE_DUE_BPS: 3333
# 6667 basis points, ~67% of SLOT_DURATION_MS
CONTRIBUTION_DUE_BPS: 6667

# EIP-7732
# EIP7732
# 2500 basis points, 25% of SLOT_DURATION_MS
ATTESTATION_DUE_BPS_EIP7732: 2500
# 5000 basis points, 50% of SLOT_DURATION_MS
Expand All @@ -104,7 +104,7 @@ CONTRIBUTION_DUE_BPS_EIP7732: 5000
# 7500 basis points, 75% of SLOT_DURATION_MS
PAYLOAD_ATTESTATION_DUE_BPS: 7500

# EIP-7805
# EIP7805
# 7500 basis points, 75% of SLOT_DURATION_MS
VIEW_FREEZE_CUTOFF_BPS: 7500
# 6667 basis points, ~67% of SLOT_DURATION_MS
Expand Down Expand Up @@ -161,12 +161,13 @@ MAX_PAYLOAD_SIZE: 10485760
MAX_REQUEST_BLOCKS: 1024
# 2**8 (= 256) epochs
EPOCHS_PER_SUBNET_SUBSCRIPTION: 256
# `MIN_VALIDATOR_WITHDRAWABILITY_DELAY + CHURN_LIMIT_QUOTIENT // 2` (= 33,024) epochs, ~5 months
# MIN_VALIDATOR_WITHDRAWABILITY_DELAY + CHURN_LIMIT_QUOTIENT // 2 (= 33,024) epochs
MIN_EPOCHS_FOR_BLOCK_REQUESTS: 33024
# 5s
# 5 seconds
TTFB_TIMEOUT: 5
# 10s
# 10 seconds
RESP_TIMEOUT: 10
# 2**5 (= 32) slots
ATTESTATION_PROPAGATION_SLOT_RANGE: 32
# 500ms
MAXIMUM_GOSSIP_CLOCK_DISPARITY: 500
Expand All @@ -184,7 +185,7 @@ ATTESTATION_SUBNET_PREFIX_BITS: 6
# Deneb
# 2**7 (= 128) blocks
MAX_REQUEST_BLOCKS_DENEB: 128
# 2**12 (= 4,096) epochs, ~18 days
# 2**12 (= 4,096) epochs
MIN_EPOCHS_FOR_BLOB_SIDECARS_REQUESTS: 4096
# 6 subnets
BLOB_SIDECAR_SUBNET_COUNT: 6
Expand Down Expand Up @@ -216,13 +217,13 @@ CUSTODY_REQUIREMENT: 4
VALIDATOR_CUSTODY_REQUIREMENT: 8
# 2**5 * 10**9 (= 32,000,000,000) Gwei
BALANCE_PER_ADDITIONAL_CUSTODY_GROUP: 32000000000
# 2**12 (= 4,096) epochs, ~18 days
# 2**12 (= 4,096) epochs
MIN_EPOCHS_FOR_DATA_COLUMN_SIDECARS_REQUESTS: 4096

# EIP7441
# 2**8 (= 256) epochs, ~27 hours
# 2**8 (= 256) epochs
EPOCHS_PER_SHUFFLING_PHASE: 256
# 2**1 (= 2) epochs, 12.8 minutes
# 2**1 (= 2) epochs
PROPOSER_SELECTION_GAP: 2

# EIP7732
Expand All @@ -232,9 +233,9 @@ MAX_REQUEST_PAYLOADS: 128
PROPOSER_SCORE_BOOST_EIP7732: 20

# EIP7805
# 2**4 (= 16)
# 2**4 (= 16) inclusion lists
MAX_REQUEST_INCLUSION_LIST: 16
# 2**13 (= 8192)
# 2**13 (= 8,192) bytes
MAX_BYTES_PER_INCLUSION_LIST: 8192

# Blob Scheduling
Expand Down
47 changes: 24 additions & 23 deletions configs/minimal.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -19,11 +19,11 @@ TERMINAL_BLOCK_HASH_ACTIVATION_EPOCH: 18446744073709551615

# Genesis
# ---------------------------------------------------------------
# [customized] 2**6 (= 64)
# [customized] 2**6 (= 64) validators
MIN_GENESIS_ACTIVE_VALIDATOR_COUNT: 64
# Jan 3, 2020
# [customized] Jan 3, 2020, 12am UTC
MIN_GENESIS_TIME: 1578009600
# [customized]
# [customized] Initial fork version for minimal
GENESIS_FORK_VERSION: 0x00000001
# [customized] 5 * 60 (= 300) seconds
GENESIS_DELAY: 300
Expand Down Expand Up @@ -65,15 +65,15 @@ EIP7805_FORK_EPOCH: 18446744073709551615
# ---------------------------------------------------------------
# [customized] 6 seconds (*deprecated*)
SECONDS_PER_SLOT: 6
# [customized] 6000 milliseconds, 6 seconds
# [customized] 6000 milliseconds
SLOT_DURATION_MS: 6000
# 14 (estimate from Eth1 mainnet)
SECONDS_PER_ETH1_BLOCK: 14
# 2**8 (= 256) epochs, ~27 hours
# 2**8 (= 256) epochs
MIN_VALIDATOR_WITHDRAWABILITY_DELAY: 256
# [customized] 2**6 (= 64) epochs, ~7 hours
# [customized] 2**6 (= 64) epochs
SHARD_COMMITTEE_PERIOD: 64
# [customized] 2**4 (= 16) Eth1 blocks, ~4 minutes
# [customized] 2**4 (= 16) Eth1 blocks
ETH1_FOLLOW_DISTANCE: 16
# 1667 basis points, ~17% of SLOT_DURATION_MS
PROPOSER_REORG_CUTOFF_BPS: 1667
Expand All @@ -88,7 +88,7 @@ SYNC_MESSAGE_DUE_BPS: 3333
# 6667 basis points, ~67% of SLOT_DURATION_MS
CONTRIBUTION_DUE_BPS: 6667

# EIP-7732
# EIP7732
# 2500 basis points, 25% of SLOT_DURATION_MS
ATTESTATION_DUE_BPS_EIP7732: 2500
# 5000 basis points, 50% of SLOT_DURATION_MS
Expand All @@ -100,7 +100,7 @@ CONTRIBUTION_DUE_BPS_EIP7732: 5000
# 7500 basis points, 75% of SLOT_DURATION_MS
PAYLOAD_ATTESTATION_DUE_BPS: 7500

# EIP-7805
# EIP7805
# 7500 basis points, 75% of SLOT_DURATION_MS
VIEW_FREEZE_CUTOFF_BPS: 7500
# 6667 basis points, ~67% of SLOT_DURATION_MS
Expand Down Expand Up @@ -152,18 +152,19 @@ DEPOSIT_CONTRACT_ADDRESS: 0x1234567890123456789012345678901234567890

# Networking
# ---------------------------------------------------------------
# `10 * 2**20` (= 10485760, 10 MiB)
# 10 * 2**20 (= 10,485,760) bytes, 10 MiB
MAX_PAYLOAD_SIZE: 10485760
# `2**10` (= 1024)
# 2**10 (= 1,024) blocks
MAX_REQUEST_BLOCKS: 1024
# `2**8` (= 256)
# 2**8 (= 256) epochs
EPOCHS_PER_SUBNET_SUBSCRIPTION: 256
# [customized] `MIN_VALIDATOR_WITHDRAWABILITY_DELAY + CHURN_LIMIT_QUOTIENT // 2` (= 272) epochs
# [customized] MIN_VALIDATOR_WITHDRAWABILITY_DELAY + CHURN_LIMIT_QUOTIENT // 2 (= 272) epochs
MIN_EPOCHS_FOR_BLOCK_REQUESTS: 272
# 5s
# 5 seconds
TTFB_TIMEOUT: 5
# 10s
# 10 seconds
RESP_TIMEOUT: 10
# 2**5 (= 32) slots
ATTESTATION_PROPAGATION_SLOT_RANGE: 32
# 500ms
MAXIMUM_GOSSIP_CLOCK_DISPARITY: 500
Expand All @@ -175,17 +176,17 @@ SUBNETS_PER_NODE: 2
ATTESTATION_SUBNET_COUNT: 64
# 0 bits
ATTESTATION_SUBNET_EXTRA_BITS: 0
# ceillog2(ATTESTATION_SUBNET_COUNT) + ATTESTATION_SUBNET_EXTRA_BITS
# ceillog2(ATTESTATION_SUBNET_COUNT) + ATTESTATION_SUBNET_EXTRA_BITS (= 6 + 0) bits
ATTESTATION_SUBNET_PREFIX_BITS: 6

# Deneb
# 2**7 (= 128) blocks
MAX_REQUEST_BLOCKS_DENEB: 128
# 2**12 (= 4096) epochs, ~18 days
# 2**12 (= 4,096) epochs
MIN_EPOCHS_FOR_BLOB_SIDECARS_REQUESTS: 4096
# 6 subnets
BLOB_SIDECAR_SUBNET_COUNT: 6
## 6 blobs
# 6 blobs
MAX_BLOBS_PER_BLOCK: 6
# MAX_REQUEST_BLOCKS_DENEB * MAX_BLOBS_PER_BLOCK (= 128 * 6) sidecars
MAX_REQUEST_BLOB_SIDECARS: 768
Expand Down Expand Up @@ -213,13 +214,13 @@ CUSTODY_REQUIREMENT: 4
VALIDATOR_CUSTODY_REQUIREMENT: 8
# 2**5 * 10**9 (= 32,000,000,000) Gwei
BALANCE_PER_ADDITIONAL_CUSTODY_GROUP: 32000000000
# 2**12 (= 4,096) epochs, ~18 days
# 2**12 (= 4,096) epochs
MIN_EPOCHS_FOR_DATA_COLUMN_SIDECARS_REQUESTS: 4096

# EIP7441
# [customized] 2**2 (= 4) epochs, 25.6 minutes
# [customized] 2**2 (= 4) epochs
EPOCHS_PER_SHUFFLING_PHASE: 4
# [customized] 2**0 (= 1) epochs, 6.4 minutes
# [customized] 2**0 (= 1) epochs
PROPOSER_SELECTION_GAP: 1

# EIP7732
Expand All @@ -229,9 +230,9 @@ MAX_REQUEST_PAYLOADS: 128
PROPOSER_SCORE_BOOST_EIP7732: 20

# EIP7805
# 2**4 (= 16)
# 2**4 (= 16) inclusion lists
MAX_REQUEST_INCLUSION_LIST: 16
# 2**13 (= 8192)
# 2**13 (= 8,192) bytes
MAX_BYTES_PER_INCLUSION_LIST: 8192

# Blob Scheduling
Expand Down
2 changes: 1 addition & 1 deletion presets/mainnet/deneb.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

# Execution
# ---------------------------------------------------------------
# 2**12 (= 4,096) blob commitments
# 2**12 (= 4,096) commitments
MAX_BLOB_COMMITMENTS_PER_BLOCK: 4096

# Networking
Expand Down
12 changes: 6 additions & 6 deletions presets/mainnet/eip7441.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,15 +2,15 @@

# Misc
# ---------------------------------------------------------------
# 2**2 (= 4)
# 2**2 (= 4) blinders
CURDLEPROOFS_N_BLINDERS: 4
# 2**14 (= 16,384)
# 2**14 (= 16,384) trackers
CANDIDATE_TRACKERS_COUNT: 16384
# 2**13 (= 8,192)
# 2**13 (= 8,192) trackers
PROPOSER_TRACKERS_COUNT: 8192
# 2**7 - CURDLEPROOFS_N_BLINDERS (= 124)
# 2**7 - CURDLEPROOFS_N_BLINDERS (= 124) validators
VALIDATORS_PER_SHUFFLE: 124
# 2**15 (= 32,768)
# 2**15 (= 32,768) bytes
MAX_SHUFFLE_PROOF_SIZE: 32768
# 2**10 (= 1,024)
# 2**10 (= 1,024) bytes
MAX_OPENING_PROOF_SIZE: 1024
4 changes: 2 additions & 2 deletions presets/mainnet/eip7732.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,9 @@

# Execution
# ---------------------------------------------------------------
# 2**9 (= 512)
# 2**9 (= 512) validators
PTC_SIZE: 512
# 2**2 (= 4)
# 2**2 (= 4) attestations
MAX_PAYLOAD_ATTESTATIONS: 4
# floorlog2(get_generalized_index(BeaconBlockBody, 'blob_kzg_commitments')) + 1 + ceillog2(MAX_BLOB_COMMITMENTS_PER_BLOCK) (= 9 + 1 + 12 = 22)
KZG_COMMITMENT_INCLUSION_PROOF_DEPTH_EIP7732: 22
2 changes: 1 addition & 1 deletion presets/mainnet/eip7805.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,5 +2,5 @@

# Inclusion list committee
# ---------------------------------------------------------------
# 2**4 (= 16)
# 2**4 (= 16) validators
INCLUSION_LIST_COMMITTEE_SIZE: 16
10 changes: 5 additions & 5 deletions presets/mainnet/fulu.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,16 +2,16 @@

# Networking
# ---------------------------------------------------------------
# floorlog2(get_generalized_index(BeaconBlockBody, 'blob_kzg_commitments') (= 4)
# floorlog2(get_generalized_index(BeaconBlockBody, 'blob_kzg_commitments')) (= 4)
KZG_COMMITMENTS_INCLUSION_PROOF_DEPTH: 4

# Blob
# ---------------------------------------------------------------
# 2**6 (= 64)
# 2**6 (= 64) field elements
FIELD_ELEMENTS_PER_CELL: 64
# 2**1 * FIELD_ELEMENTS_PER_BLOB (= 8,192)
# 2**1 * FIELD_ELEMENTS_PER_BLOB (= 8,192) field elements
FIELD_ELEMENTS_PER_EXT_BLOB: 8192
# FIELD_ELEMENTS_PER_EXT_BLOB // FIELD_ELEMENTS_PER_CELL (= 128)
# FIELD_ELEMENTS_PER_EXT_BLOB // FIELD_ELEMENTS_PER_CELL (= 128) cells
CELLS_PER_EXT_BLOB: 128
# CELLS_PER_EXT_BLOB (= 128)
# CELLS_PER_EXT_BLOB (= 128) columns
NUMBER_OF_COLUMNS: 128
20 changes: 10 additions & 10 deletions presets/mainnet/phase0.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -28,28 +28,28 @@ EFFECTIVE_BALANCE_INCREMENT: 1000000000

# Time parameters
# ---------------------------------------------------------------
# 2**0 (= 1) slots, 12 seconds
# 2**0 (= 1) slots
MIN_ATTESTATION_INCLUSION_DELAY: 1
# 2**5 (= 32) slots, 6.4 minutes
# 2**5 (= 32) slots
SLOTS_PER_EPOCH: 32
# 2**0 (= 1) epochs, 6.4 minutes
# 2**0 (= 1) epochs
MIN_SEED_LOOKAHEAD: 1
# 2**2 (= 4) epochs, 25.6 minutes
# 2**2 (= 4) epochs
MAX_SEED_LOOKAHEAD: 4
# 2**6 (= 64) epochs, ~6.8 hours
# 2**6 (= 64) epochs
EPOCHS_PER_ETH1_VOTING_PERIOD: 64
# 2**13 (= 8,192) slots, ~27 hours
# 2**13 (= 8,192) slots
SLOTS_PER_HISTORICAL_ROOT: 8192
# 2**2 (= 4) epochs, 25.6 minutes
# 2**2 (= 4) epochs
MIN_EPOCHS_TO_INACTIVITY_PENALTY: 4

# State list lengths
# ---------------------------------------------------------------
# 2**16 (= 65,536) epochs, ~0.8 years
# 2**16 (= 65,536) epochs
EPOCHS_PER_HISTORICAL_VECTOR: 65536
# 2**13 (= 8,192) epochs, ~36 days
# 2**13 (= 8,192) epochs
EPOCHS_PER_SLASHINGS_VECTOR: 8192
# 2**24 (= 16,777,216) historical roots, ~52,262 years
# 2**24 (= 16,777,216) historical roots
HISTORICAL_ROOTS_LIMIT: 16777216
# 2**40 (= 1,099,511,627,776) validator spots
VALIDATOR_REGISTRY_LIMIT: 1099511627776
Expand Down
2 changes: 1 addition & 1 deletion presets/minimal/deneb.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

# Execution
# ---------------------------------------------------------------
# [customized] 2**5 (= 32) blob commitments
# [customized] 2**5 (= 32) commitments
MAX_BLOB_COMMITMENTS_PER_BLOCK: 32

# Networking
Expand Down
10 changes: 5 additions & 5 deletions presets/minimal/eip6800.yaml
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
# Minimal preset - EIP6800

# Execution
# Misc
# ---------------------------------------------------------------
# `uint64(2**16)` (= 65,536)
# 2**16 (= 65,536) stems
MAX_STEMS: 65536
# `uint64(33)`
# 33 commitments
MAX_COMMITMENTS_PER_STEM: 33
# `uint64(2**8)` (= 256)
# 2**8 (= 256)
VERKLE_WIDTH: 256
# `uint64(2**3)` (= 8)
# 2**3 (= 8)
IPA_PROOF_DEPTH: 8
12 changes: 6 additions & 6 deletions presets/minimal/eip7441.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,15 +2,15 @@

# Misc
# ---------------------------------------------------------------
# [customized]
# 2**2 (= 4) blinders
CURDLEPROOFS_N_BLINDERS: 4
# [customized]
# [customized] 2**5 (= 32) trackers
CANDIDATE_TRACKERS_COUNT: 32
# [customized]
# [customized] 2**4 (= 16) trackers
PROPOSER_TRACKERS_COUNT: 16
# [customized]
# [customized] 2**3 - CURDLEPROOFS_N_BLINDERS (= 4) validators
VALIDATORS_PER_SHUFFLE: 4
# `uint64(2**15)` TODO: will be replaced by a fix format once there's a serialized format
# 2**15 (= 32,768) bytes
MAX_SHUFFLE_PROOF_SIZE: 32768
# `uint64(2**10)` TODO: will be replaced by a fix format once there's a serialized format
# 2**10 (= 1,024) bytes
MAX_OPENING_PROOF_SIZE: 1024
Loading