This proposal would be for an improvement on Gas Abstraction proposal, and embed it within layer 0/1.
If a transaction that don’t uses msg.sender
and uses gas.price == 0
, the signature verification is just bloating and the result of it is never effectely used to a state change.
To improve this, EVM would support a new type of call, which considers gas.price == 0
and msg.sender
is not available (throws if called, would also fails to compile).
The gas abstraction contract would then be able to pay the ERC20 gas directly to block.coinbase
, as the block don’t uses any ETH (as gas.price is zero) and don’t reads msg.sender
it could be valid with no risk to consensus.
Ethereum Block Validators (PoS) would be able to test if those transactions are valid, and insert them in the block transactions which pay ERC20 they accept.
I would like feedback from devs to see if this makes sense and if (and how) I should continue with this EIP.