ethereum/pm

Proposal to include EIP-3198 in London

Closed this issue · 2 comments

During AllCoreDevs 107, EIP-1559 was accepted into London. EIP-3198 is a "companion EIP" to 1559, which exposes the BASE FEE as an opcode in the EVM.

Some reasons why the BASEFEE opcode is useful:

  • It allows fraud proof systems or other systems that require someone to "ping" them to set a reward based on what the current basefee actually is, avoiding both the risk of overpayment and the risk that because the reward is too low during a period of unexpected congestion no one submits a proof
  • It allows fraud proof systems to delay the challenge period if the BASEFEE is high (as that might signify an attempted DoS attack)
  • It allows for trustless gasprice derivatives, helping users manage transaction fee risk

Some responses to possible concerns:

  1. BASEFEE is not a form of "gas observability" and does not have the same risks. The issue with gas observability is that if the EVM's internal execution is aware of the current remaining quantity of gas, gas cost changes could break contracts. But gas price is not the same as quantity of gas; making gas price accessible to the EVM does not impose any risks in the case that future gas costs are changed in the future.
  2. The trustless gasprice derivatives are not harmful in the same way that gastoken is, because (i) they do not waste 5000 gas per storage slot, and (ii) they can only be cashed out by selling them and buying gas space on the open market, so they do not enable more than the gaslimit worth of gas to be used in a single block (and so do not add variance risk).

We agreed to move this to the Aleut devnet on ACD109, so closing this issue.