## EIP-7251: Increase the MAX_EFFECTIVE_BALANCE
---
## Topics
- Motivation
- Features
- Will pools consolidate?
- Pros / cons
---
## Motivation
Today, an entity with X stake controls X / 32 individual keys voting the same
<img src="https://hackmd.io/_uploads/r16h2Cxsp.jpg" alt="dalle" width="400"/>
---
## Motivation
That entity could have 1 key holding X stake and cast a single unified vote
<img src="https://hackmd.io/_uploads/ryfA2AgiT.jpg" alt="dalle" width="400"/>
---
## Motivation
Same security* from the protocol's POV but much more efficient :)
---
## Motivation
Inneficiency inherited from the old sharding design:
- Ensure high probability of honest majority per shard committee
---
## Motivation
Today in mainnet:
- 900k active indexes
- 33k unique withdrawal credentials
---
## Motivation
Too many active indexes cause:
- Difficults shipping Single Slot Finality (SSF)
- Increases bandwidth and compute costs
---
## Motivation
Why do we want SSF?
- Finality time: ~15 minutes -> 16 seconds
- No re-orgs :)
- Retire LMD GHOST + FFG frankenstein
_Getting there takes time*_
---
## Motivation
Positive side-effects:
- Auto-compounding
---
## Core feature
![download (1)](https://hackmd.io/_uploads/H1fj71-op.png)
---
## Security Considerations
- Fork-choice
- Shuffling selection
- Security of committees
- Churn invariants
---
## Fork-choice
Everything already scaled by effective balance :)
---
## Shuffling selection
Everything already scaled by effective balance :)
---
## Security of committees
Balance-based aggregator VRF lottery
![Screenshot 2024-02-07 at 19.24.18](https://hackmd.io/_uploads/SyAwdybs6.png)
---
## Churn invariants
Balance-based activation and exit churn
```python
class BeaconState(Container):
...
deposit_balance_to_consume: Gwei
pending_balance_deposits: List[PendingBalanceDeposit, MaxPendingBalanceDeposits]
exit_balance_to_consume: Gwei
earliest_exit_epoch: Epoch
```
---
## Churned top-ups
```python
def apply_deposit(...):
state.balances.append(0)
state.pending_balance_deposits.append(
PendingBalanceDeposit(index, amount)
)
```
---
## In-protocol consolidation
![download (2)](https://hackmd.io/_uploads/r1pjQkbsa.png)
---
### In-protocol consolidation
![voluntary exit flow](https://storage.googleapis.com/ethereum-hackmd/upload_c3d0c928e014d16a917c3dcab4315d35.png)
---
### In-protocol consolidation
![voluntary exit timeline](https://storage.googleapis.com/ethereum-hackmd/upload_1662de5a11030a4711ce89d94bb8e5bd.png)
---
### In-protocol consolidation
![consolidation flow](https://storage.googleapis.com/ethereum-hackmd/upload_3ad9cace57ee4a15f6c6a6139912a9d2.png)
---
### In-protocol consolidation
![consolidation slashability & stake](https://storage.googleapis.com/ethereum-hackmd/upload_c58289002c624c12be302c9fa9d57c50.png)
---
### Consolidations and churn limit
A consolidation = exit + activation
Consolidation of stake $C$ --> safety reduction of $2C$
---
### Consolidations and churn limit
<img src="https://hackmd.io/_uploads/SJKxxgWip.png" alt="exit churn" width="600"/>
---
### Consolidations and churn limit
<img src="https://hackmd.io/_uploads/Bklzexbja.png" alt="activation churn" width="600"/>
---
### Time to consolidate
<img src="https://hackmd.io/_uploads/r15ZQxZja.png" alt="time to consolidate" width="600"/>
---
## Custom ceilings
![download (3)](https://hackmd.io/_uploads/SJQ37J-s6.png)
---
## EL triggered partial withdrawals
Execution layer triggered exits & partial withdrawals (EIP-7002 extension)
---
## Slashing risks
![slashing risks](https://hackmd.io/_uploads/r1X9EBzrT.png)
---
## Slashing risks
![slashing risks](https://hackmd.io/_uploads/SJXsn4GST.png)
---
## Slashing risks
Partial solution:
- Set initial slashing penalty to zero
- Rely on the correlation, attestation, and inactivity penalties.
---
## Will pools consolidate?
As of today: they agree to
- No increased slashing risk
- Very low one-time cost
- Long-term cost reduction
---
## Implementation complexity
_mild medium_
- Mostly a state transition change
- Needs re-working committee caches
![Screenshot 2024-02-07 at 18.55.50](https://hackmd.io/_uploads/HkrTZ1Zoa.png)
---
## Is it time critical?
- **Yes**, if SSF requires consolidation
- **Somewhat**, if clients can't handle ↑% ETH staked
---
## Pros
- Initial reduction in validator set
- Future compatibility
- Improved solo staking experience
---
## Cons
- No guaranteed or incentivized consolidation
- Engineering effort
---
Thanks :)
{"title":"EIP-7251: Increase the MAX_EFFECTIVE_BALANCE","description":"Slide 2","contributors":"[{\"id\":\"12d0a06b-0b31-4b69-82eb-e434ac2aa103\",\"add\":5197,\"del\":576}]"}