From e3bb405a057a91ca3851d1e60ab0c225bc34c19f Mon Sep 17 00:00:00 2001 From: allformless <213398294+allformless@users.noreply.github.com> Date: Thu, 11 Sep 2025 09:40:44 +0800 Subject: [PATCH 1/3] BEP-619: Short Block Interval Phase Three: 0.45 Seconds --- BEPs/BEP-619.md | 111 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 111 insertions(+) create mode 100644 BEPs/BEP-619.md diff --git a/BEPs/BEP-619.md b/BEPs/BEP-619.md new file mode 100644 index 00000000..c7d7be21 --- /dev/null +++ b/BEPs/BEP-619.md @@ -0,0 +1,111 @@ +
+ BEP: 619 + Title: Short Block Interval Phase Three: 0.45 Seconds + Status: Draft + Type: Standards + Created: 2025-09-11 + Description: To shorten the block interval from 0.75 seconds to 0.45 seconds. ++ +# BEP-619: Short Block Interval Phase Three: 0.45 Seconds +- [BEP-619: Short Block Interval Phase Three: 0.45 Seconds](#bep-619-short-block-interval-phase-three-045-seconds) + - [1. Summary](#1-summary) + - [2. Abstract](#2-abstract) + - [3. Motivation](#3-motivation) + - [4. Specification](#4-specification) + - [4.1 Parameter Changes](#41-parameter-changes) + - [4.1.1 Change Table](#411-change-table) + - [4.2 Extended Voting Rules for Fast Finality Stability](#42-extended-voting-rules-for-fast-finality-stability) + - [5. Rationale](#5-rationale) + - [5.1 Parameter Changes](#51-parameter-changes) + - [6. Backward Compatibility](#6-backward-compatibility) + - [6.1 MEV](#61-mev) + - [6.2 Quarterly Auto-Burn](#62-quarterly-auto-burn) + - [6.3 Block Finality](#63-block-finality) + - [7. License](#7-license) + +--- + +## 1. Summary + +This proposal shortens the block interval from 0.75 seconds to 0.45 seconds, further improving transaction confirmation speed and enhancing user experience. + +## 2. Abstract + +* **BEP-520** (Phase One): reduced the block interval from 3 seconds to 1.5 seconds. +* **BEP-524** (Phase Two): reduced it further to 0.75 seconds. +* **BEP-619** (Phase Three, this proposal): reduces it to 0.45 seconds. + +## 3. Motivation + +Reducing the block interval is a long-term goal of BNB Smart Chain. A 0.45-second block interval will support time-sensitive applications by providing significantly faster confirmation times. + +## 4. Specification + +The overall design follows BEP-524, with modifications only to the relevant parameters. + +### 4.1 Parameter Changes + +Phases one, two, and three are closely related. For clarity, their parameter changes are consolidated into the following table. + +#### 4.1.1 Change Table + +Many system parameters are tied to the default block interval. When the interval is adjusted, related parameters must also be updated: + +| Parameter | Type | Origin (3s) | Phase One (1.5s) | Phase Two (0.75s) | Phase Three (0.45s) | +| ------------------------------------ | -------- | ---------------------- | ---------------- | ----------------- | ------------------- | +| Epoch | client | 200 | 500 | 1000 | 1000 | +| GasLimit | client | 140M | 100M | 75M | 45M | +| GasLimitBoundDivisor | client | 256 | 1024 | 1024 | 1024 | +| Blob Target | client | 3 | 3 | 3 | 3 | +| Blob Maximum | client | 6 | 6 | 6 | 6 | +| Blob MinBlocksForBlobRequests | client | 524,288 | 1,048,576 (×2) | 2,097,152 (×4) | 3,495,254 (×3/0.45) | +| BSCGovernor.votingPeriod | contract | \$votingPeriod | ×2 | ×4 | ×(3/0.45) | +| BSCGovernor.minPeriodAfterQuorum | contract | \$minPeriodAfterQuorum | ×2 | ×4 | ×(3/0.45) | +| BSCValidatorSet.misdemeanorThreshold | contract | \$misdemeanorThreshold | ×2 | ×4 | ×(3/0.45) | +| BSCValidatorSet.felonyThreshold | contract | \$felonyThreshold | ×2 | ×4 | ×(3/0.45) | +| BSCValidatorSet.felonySlashScope | contract | \$felonySlashScope | ×2 | ×4 | ×(3/0.45) | +| BSCValidatorSet.TurnLength | contract | 4 | 8 | 16 | 16 | + +### 4.2 Extended Voting Rules for Fast Finality Stability + +With a shorter block interval, network fluctuations and node performance issues have a larger impact on stability. To improve finality robustness, the adjustments defined in [BEP-590: Extended Voting Rules for Fast Finality Stability](https://github.com/bnb-chain/BEPs/pull/590/files) will also be applied. + +--- + +## 5. Rationale + +### 5.1 Parameter Changes + +* **GasLimit**: In phases one and two, GasLimit did not decrease proportionally with block interval reductions, due to hardware and software optimizations. In phase three, GasLimit is adjusted proportionally to match the reduced interval. +* **Epoch**: Epoch remains at 1000 blocks, reducing epoch time from 750s to 450s. Validator rotation becomes more frequent but is expected to have no negative impact. This also allows more equitable participation opportunities for candidates within a day. + +--- + +## 6. Backward Compatibility + +### 6.1 MEV + +With a 0.45s block interval, each validator still produces 16 consecutive blocks per turn, reducing total turn time to 7.2s (0.45 × 16). This narrows the collaboration window for searchers, builders, and validators, requiring adjustments to current MEV strategies. + +### 6.2 Quarterly Auto-Burn + +*TBD.* + +### 6.3 Block Finality + +The fast finality mechanism remains unchanged. However, shorter intervals reduce the time available for vote propagation. + +* **With fast finality working correctly**: transaction finality improves from \~1.875s to \~1.125s. +* **If fast finality fails** (natural finality with TurnLength=16, ValidatorSize=21): + + * > 1/2 validator confirmations: 176 blocks (11×16) ≈ 79.2s + * > 2/3 validator confirmations: 240 blocks (15×16) ≈ 108s + +--- + +## 7. License + +This document is licensed under [CC0](https://creativecommons.org/publicdomain/zero/1.0/). + +--- \ No newline at end of file From 05498160e7127012941d1b42fd67aee4167160f4 Mon Sep 17 00:00:00 2001 From: allformless <213398294+allformless@users.noreply.github.com> Date: Fri, 19 Sep 2025 13:47:58 +0800 Subject: [PATCH 2/3] BEP-619: add item in README --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 9b50bb07..f52fc3af 100644 --- a/README.md +++ b/README.md @@ -92,6 +92,7 @@ Here is the list of subjects of BEPs: | [BEP-564](./BEPs/BEP-564.md) | bsc/2 - New Block Fetching Messages | Standards | Candidate | | [BEP-593](./BEPs/BEP-593.md) | Incremental Snapshot | Standards | Draft | | [BEP-594](./BEPs/BEP-594.md) | L2 Fast Withdrawal by TEE | Standards | Draft | +| [BEP-619](./BEPs/BEP-619.md) | Short Block Interval Phase Three: 0.45 Seconds | Draft | # BAPs BAP (BNB Application Proposal) defines standards for application layer interactions on BNB Chain. Unlike BEPs which govern core protocol changes, BAPs focus on establishing conventions and interfaces for how applications communicate and interact with each other within the BNB Chain ecosystem. From 1fc53910d75783679ed296e4e728d9499f65a0e0 Mon Sep 17 00:00:00 2001 From: allformless <213398294+allformless@users.noreply.github.com> Date: Wed, 24 Sep 2025 17:41:25 +0800 Subject: [PATCH 3/3] BEP-619: add FullImmutabilityThreshold and receiveRateLimitPerSecond --- BEPs/BEP-619.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/BEPs/BEP-619.md b/BEPs/BEP-619.md index c7d7be21..8fc51242 100644 --- a/BEPs/BEP-619.md +++ b/BEPs/BEP-619.md @@ -57,6 +57,8 @@ Many system parameters are tied to the default block interval. When the interval | Epoch | client | 200 | 500 | 1000 | 1000 | | GasLimit | client | 140M | 100M | 75M | 45M | | GasLimitBoundDivisor | client | 256 | 1024 | 1024 | 1024 | +| FullImmutabilityThreshold | client | 90,000 | 180,000 | 360,000 | 600,000 | +| receiveRateLimitPerSecond | client | 10 | 20 | 40 | 68 | | Blob Target | client | 3 | 3 | 3 | 3 | | Blob Maximum | client | 6 | 6 | 6 | 6 | | Blob MinBlocksForBlobRequests | client | 524,288 | 1,048,576 (×2) | 2,097,152 (×4) | 3,495,254 (×3/0.45) | @@ -67,6 +69,8 @@ Many system parameters are tied to the default block interval. When the interval | BSCValidatorSet.felonySlashScope | contract | \$felonySlashScope | ×2 | ×4 | ×(3/0.45) | | BSCValidatorSet.TurnLength | contract | 4 | 8 | 16 | 16 | +`receiveRateLimitPerSecond` is the max number of received votes per second from one peer, used to avoid of DDOS attack. + ### 4.2 Extended Voting Rules for Fast Finality Stability With a shorter block interval, network fluctuations and node performance issues have a larger impact on stability. To improve finality robustness, the adjustments defined in [BEP-590: Extended Voting Rules for Fast Finality Stability](https://github.com/bnb-chain/BEPs/pull/590/files) will also be applied.