Gas Abstraction: Non signed "block validator"-only procedures


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.

Layer 2 gas payment abstraction