Note: this may be wrong, but hopefully it's a start
blocks_dossed 51
fee 406236221416.0 ## 406 GWEI
total_paid 1.0941377978739001e+20 ## 100 ETH
"""
# check if the base fee is correct
if INITIAL_FORK_BLOCK_NUMBER == block.number:
expected_base_fee_per_gas = INITIAL_BASE_FEE
elif parent_gas_used == parent_gas_target:
expected_base_fee_per_gas = parent_base_fee_per_gas
elif parent_gas_used > parent_gas_target:
gas_used_delta = parent_gas_used - parent_gas_target
base_fee_per_gas_delta = max(parent_base_fee_per_gas * gas_used_delta // parent_gas_target // BASE_FEE_MAX_CHANGE_DENOMINATOR, 1)
expected_base_fee_per_gas = parent_base_fee_per_gas + base_fee_per_gas_delta
else:
"""
INITIAL_BASE_FEE = 1000000000 ## 1 gwei
ELASTICITY_MULTIPLIER = 2
BASE_FEE_MAX_CHANGE_DENOMINATOR = 8
GAS_TARGET = 15e6
GAS_USED = 30e6
GAS_LIMIT = 30e6
MINUTES_TO_DOS = 10
SECONDS_PER_BLOCK = 12
BLOCKS_TO_DOS = MINUTES_TO_DOS * 60 / SECONDS_PER_BLOCK
def main():
blocks_dossed = 0
fee = INITIAL_BASE_FEE
total_paid = 0
while (blocks_dossed <= BLOCKS_TO_DOS):
gas_used_delta = GAS_USED - GAS_TARGET
base_fee_per_gas_delta = max(fee * gas_used_delta // GAS_TARGET // BASE_FEE_MAX_CHANGE_DENOMINATOR, 1)
expected_base_fee_per_gas = fee + base_fee_per_gas_delta
fee = expected_base_fee_per_gas
total_paid += fee * GAS_USED
blocks_dossed += 1
print("blocks_dossed", blocks_dossed)
print("fee", fee)
print("total_paid", total_paid)
main()
The statement you're making assumes the fact that all blocks would be built by you because you'd be winning the MEV-Boost auction.
The reality of what you're saying is that you'd be turning the MEV-Boost auction into a blind auction, where your strategy is to bid X ETH per block.
This is logically equivalent to PGA auctions, which is how Ethereum used to work before EIP1559, so we have proof of the fact that in those scenarios people would just raise their Gas Fee until the DOS is avoided.
The assumption that because you can overpay once or a few times to DOS a block, that that would translate to a network DOS is simply unfounded as you'd have to ignore the facts that:
Block space in Ethereum is elastic only up to 30MLN Gas, but demand is not driven by blockspace but the underlying value of the network activity. You're asserting that people would just sit back and let you run the network for minutes on end, instead of just PGAing to get the value they want, which is a leap of faith level assumption I disagree with.
PS: Send this to EF they will pay you a $250k bounty if you're right