[Proposal] PBS: Proposer Builder Separation

Bond Pricing

S = single sequencer required stake
B = blocks produced per MAX_PROVER_TIME (historical average)

base_collateral = S + S * floor(B)

The collateral is equal to the sequencers stake, plus an additional stake for each potentially affected block. If blocks are produced slowly, the additional stake will be 0, while if blocks are being produced quickly additional stake may be required for every slot in MAX_PROVER_TIME (e.g. 50, assuming 12s L1 and 10min window).

Additionally, if a proof is missed the collateral requirements multiply by max(floor(sqrt(B)), 2), and then come back down over N blocks. This is to reduce the number of consecutive blocks missed.

This puts a lot of centralizing pressure on builders, and so is compatible with PBS but not Fernet.

5 Likes