Cancun Upgrade The JIB Chain Cancun-Deneb (Dencun) Upgrade
Summary : The JIB Chain Cancun-Deneb (Dencun) Upgrade, set to launch on March 12, 2024, heralds a transformative chapter for the JBC network. It's not merely a hard fork; it's a symphony of innovation orchestrated to elevate JBC's scalability, security, and user-friendliness to unparalleled heights. Central to this upgrade are Ethereum Improvement Proposals (EIPs), with EIP-4844 shining as the beacon of progress with its groundbreaking proto-danksharding.
Through these meticulously crafted changes, the upgrade promises a landscape of enhanced network efficiency and diminished transaction fees, setting the stage for a flourishing ecosystem on JBC. Drawing from the triumphs of predecessors like the Shanghai upgrade, this evolution is poised to deliver a resilient foundation for decentralized applications, promising a delightful user journey through the beatific realm of JBC's potential.
genesis.json
Copy {
"config" : {
"chainId" : 8899 ,
"homesteadBlock" : 0 ,
"eip150Block" : 0 ,
"eip150Hash" : "0x0000000000000000000000000000000000000000000000000000000000000000" ,
"eip155Block" : 0 ,
"eip158Block" : 0 ,
"byzantiumBlock" : 0 ,
"constantinopleBlock" : 0 ,
"petersburgBlock" : 0 ,
"istanbulBlock" : 0 ,
"muirGlacierBlock" : 0 ,
"berlinBlock" : 0 ,
"londonBlock" : 0 ,
"arrowGlacierBlock" : 0 ,
"grayGlacierBlock" : 0 ,
"mergeForkBlock" : 2200641 ,
"terminalTotalDifficulty" : 512048629250937967 ,
"terminalTotalDifficultyPassed" : true ,
"shanghaiTime" : 1701158251 ,
"cancunTime" : 1710220283 ,
"ethash" : {}
} ,
"nonce" : "0x0" ,
"gasLimit" : "8000000" ,
"difficulty" : "0x40000" ,
"mixHash" : "0x0000000000000000000000000000000000000000000000000000000000000000" ,
"coinbase" : "0x0000000000000000000000000000000000000000" ,
"alloc" : {
"4Fbd49c841c2f891b8e04B887B9C5035BE7c7209" : {
"balance" : "1000000000000000000000000001"
}
} ,
"number" : "0x0" ,
"gasUsed" : "0x0" ,
"parentHash" : "0x0000000000000000000000000000000000000000000000000000000000000000" ,
"baseFeePergas" : "0x2540BE400"
}
On genesis.json file add line 22 to schedule upgrade time for execution layer.
Copy "cancunTime": 1710220283
Tue Mar 12 2024 12:11:23 GMT+0700 (Indochina Time)
Config.yml
Copy # Extends the mainnet preset
PRESET_BASE : 'mainnet'
CONFIG_NAME : 'jibchain' # needs to exist because of Prysm. Otherwise it conflicts with mainnet genesis
# Genesis
# ---------------------------------------------------------------
# `2**14` (= 16,384)
MIN_GENESIS_ACTIVE_VALIDATOR_COUNT : 1
# Friday, April 22, 2022 9:00:00 AM +UTC
MIN_GENESIS_TIME : 1701158551
GENESIS_FORK_VERSION : 0x10008899
GENESIS_DELAY : 100
# Forking
# ---------------------------------------------------------------
# Some forks are disabled for now:
# - These may be re-assigned to another fork-version later
# - Temporarily set to max uint64 value: 2**64 - 1
# Altair
ALTAIR_FORK_VERSION : 0x20008899
ALTAIR_FORK_EPOCH : 1
# Merge
BELLATRIX_FORK_VERSION : 0x30008899
BELLATRIX_FORK_EPOCH : 1
TERMINAL_TOTAL_DIFFICULTY : 512048629250937967
TERMINAL_BLOCK_HASH : 0x0000000000000000000000000000000000000000000000000000000000000000
TERMINAL_BLOCK_HASH_ACTIVATION_EPOCH : 18446744073709551615
# Capella
CAPELLA_FORK_VERSION : 0x40008899
CAPELLA_FORK_EPOCH : 1
# Sharding
SHARDING_FORK_VERSION : 0x70008899
SHARDING_FORK_EPOCH : 18446744073709551615
# Deneb
DENEB_FORK_VERSION : 0x08008899
DENEB_FORK_EPOCH : 23598
# Time parameters
# ---------------------------------------------------------------
# 12 seconds
SECONDS_PER_SLOT : 12
# 14 (estimate from Eth1 mainnet)
SECONDS_PER_ETH1_BLOCK : 14
# 2**8 (= 256) epochs ~27 hours
MIN_VALIDATOR_WITHDRAWABILITY_DELAY : 256
# 2**8 (= 256) epochs ~27 hours
SHARD_COMMITTEE_PERIOD : 256
# 2**11 (= 2,048) Eth1 blocks ~8 hours
ETH1_FOLLOW_DISTANCE : 2048
# Validator cycle
# ---------------------------------------------------------------
# 2**2 (= 4)
INACTIVITY_SCORE_BIAS : 4
# 2**4 (= 16)
INACTIVITY_SCORE_RECOVERY_RATE : 16
# 2**4 * 10**9 (= 16,000,000,000) Gwei
EJECTION_BALANCE : 16000000000
# 2**2 (= 4)
MIN_PER_EPOCH_CHURN_LIMIT : 4
# 2**16 (= 65,536)
CHURN_LIMIT_QUOTIENT : 65536
# [New in Deneb:EIP7514] 2**3 (= 8)
MAX_PER_EPOCH_ACTIVATION_CHURN_LIMIT : 8
# Fork choice
# ---------------------------------------------------------------
# 40%
PROPOSER_SCORE_BOOST : 40
# Deposit contract
# ---------------------------------------------------------------
DEPOSIT_CHAIN_ID : 8899
DEPOSIT_NETWORK_ID : 8899
DEPOSIT_CONTRACT_ADDRESS : 0xe9364471539cD35D1911f844914c7DaBf7aeE92D
# Networking
# ---------------------------------------------------------------
# `10 * 2**20` (= 10485760, 10 MiB)
GOSSIP_MAX_SIZE : 10485760
# `2**10` (= 1024)
MAX_REQUEST_BLOCKS : 1024
# `2**8` (= 256)
EPOCHS_PER_SUBNET_SUBSCRIPTION : 256
# `MIN_VALIDATOR_WITHDRAWABILITY_DELAY + CHURN_LIMIT_QUOTIENT // 2` (= 33024, ~5 months)
MIN_EPOCHS_FOR_BLOCK_REQUESTS : 33024
# `10 * 2**20` (=10485760, 10 MiB)
MAX_CHUNK_SIZE : 10485760
# 5s
TTFB_TIMEOUT : 5
# 10s
RESP_TIMEOUT : 10
ATTESTATION_PROPAGATION_SLOT_RANGE : 32
# 500ms
MAXIMUM_GOSSIP_CLOCK_DISPARITY : 500
MESSAGE_DOMAIN_INVALID_SNAPPY : 0x00000000
MESSAGE_DOMAIN_VALID_SNAPPY : 0x01000000
# 2 subnets per node
SUBNETS_PER_NODE : 2
# 2**8 (= 64)
ATTESTATION_SUBNET_COUNT : 64
ATTESTATION_SUBNET_EXTRA_BITS : 0
# ceillog2(ATTESTATION_SUBNET_COUNT) + ATTESTATION_SUBNET_EXTRA_BITS
ATTESTATION_SUBNET_PREFIX_BITS : 6
# Deneb
# `2**7` (=128)
MAX_REQUEST_BLOCKS_DENEB : 128
# MAX_REQUEST_BLOCKS_DENEB * MAX_BLOBS_PER_BLOCK
MAX_REQUEST_BLOB_SIDECARS : 768
# `2**12` (= 4096 epochs, ~18 days)
MIN_EPOCHS_FOR_BLOB_SIDECARS_REQUESTS : 4096
# `6`
BLOB_SIDECAR_SUBNET_COUNT : 6
Add DENEB FORK
Copy DENEB_FORK_VERSION: 0x08008899
DENEB_FORK_EPOCH: 23598
Add Validator cycle and PROPOSER_SCORE_BOOST config
Copy # [New in Deneb:EIP7514] 2**3 (= 8)
MAX_PER_EPOCH_ACTIVATION_CHURN_LIMIT: 8
# Fork choice
# ---------------------------------------------------------------
# 40%
PROPOSER_SCORE_BOOST: 40
Add networking config
Copy # Networking
# ---------------------------------------------------------------
# `10 * 2**20` (= 10485760, 10 MiB)
GOSSIP_MAX_SIZE: 10485760
# `2**10` (= 1024)
MAX_REQUEST_BLOCKS: 1024
# `2**8` (= 256)
EPOCHS_PER_SUBNET_SUBSCRIPTION: 256
# `MIN_VALIDATOR_WITHDRAWABILITY_DELAY + CHURN_LIMIT_QUOTIENT // 2` (= 33024, ~5 months)
MIN_EPOCHS_FOR_BLOCK_REQUESTS: 33024
# `10 * 2**20` (=10485760, 10 MiB)
MAX_CHUNK_SIZE: 10485760
# 5s
TTFB_TIMEOUT: 5
# 10s
RESP_TIMEOUT: 10
ATTESTATION_PROPAGATION_SLOT_RANGE: 32
# 500ms
MAXIMUM_GOSSIP_CLOCK_DISPARITY: 500
MESSAGE_DOMAIN_INVALID_SNAPPY: 0x00000000
MESSAGE_DOMAIN_VALID_SNAPPY: 0x01000000
# 2 subnets per node
SUBNETS_PER_NODE: 2
# 2**8 (= 64)
ATTESTATION_SUBNET_COUNT: 64
ATTESTATION_SUBNET_EXTRA_BITS: 0
# ceillog2(ATTESTATION_SUBNET_COUNT) + ATTESTATION_SUBNET_EXTRA_BITS
ATTESTATION_SUBNET_PREFIX_BITS: 6
# Deneb
# `2**7` (=128)
MAX_REQUEST_BLOCKS_DENEB: 128
# MAX_REQUEST_BLOCKS_DENEB * MAX_BLOBS_PER_BLOCK
MAX_REQUEST_BLOB_SIDECARS: 768
# `2**12` (= 4096 epochs, ~18 days)
MIN_EPOCHS_FOR_BLOB_SIDECARS_REQUESTS: 4096
# `6`
BLOB_SIDECAR_SUBNET_COUNT: 6
Last updated 2 months ago