What is the Problem?
If the BASE_FEE that is included in the transaction is burned, then the miners would not have any incentive to include transactions in mined blocks. This would clearly be an existential problem for the Ethereum blockchain, however the creators of EIP-1559 have thought of this and therefore they have implemented a miner’s tip system, where users can submit tips to miners alongside the BASE_FEE in order to get their transaction included.
This miner’s fee is the problem. If the point of EIP-1559 was to improve UX, then having one fee-bidding system replace another fee-bidding system is underwhelming. Users would still have to bid to get their transactions included even alongside the BASE_FEE, so from a UX standpoint, this EIP is less effective than it could be.
The Proposed Solution
We should get rid of the miner’s fee bidding system entirely. Instead of having to include tips alongside the BASE_FEE, a MINER_TIP should, similarly to the BASE_FEE, be calculated based on supply and demand mechanics once per block. I would propose that this MINER_TIP be a value that is a percentage of the BASE_FEE, with the percentage being a function of the total hashing power of the network under PoW and, or the total ETH staked after PoS.
I propose that this percentage, similarly to ETH staking rewards in ETH 2.0, could be MINER_TIP = MINER_TIP_PERCENTAGE*BASE_FEE, where MINER_TIP_PERCENTAGE = min(1, a/sqrt(b*TOTAL_TERA_HASHING_POWER)). a and b would be some constants.
The following graph represents how MINER_TIP_PERCENTAGE would look for different TH/s of hashing power using the previous equation with a = b = 1.
The entire equation could be changed if need.
For ease of explanation, I would define TOTAL_TX_COST just in this post
TOTAL_TX_COST = BASE_FEE + MINER_TIP
If there are more transactions, BASE_FEE would automatically increase until blocks are only 50% filled just as before. Given that MINER_TIP is a percentage of BASE_FEE that is constant in the short term (i.e. hashing power stays constant), it would always move alongside BASE_FEE in the short term. Vice versa for when the number of transactions temporarily decrease. Therefore the TOTAL_TX_COST stabilizes in the short run.
In the long-run, the total hashing power can also change. Starting from an equilibrium, if the MINER_TIP decreases, miners/stakers will earn less fees per block, some miners/stakers will quit the network and total hashing power will decrease. Consequently, the percentage of the TOTAL_TX_COST that consists of the MINER_TIP increases, resulting in higher fees going to miners/stakers until the hashing power of network stabilizes. Therefore the TOTAL_TX_COST stabilizes in the long run as well.
Counterpoint:
But under EIP-1559, the miner-tip will usually be stable at around, say, 1 gwei, and only BASE_FEE will change
For new users, I believe the added complexity of paying a tip in addition to paying a base transaction fee is unnecessary. It would be a lot simpler from a UX perspective if they only had to worry about one number.
Conclusion
The advantages:
- Anyone transacting would have to pay TOTAL_TX_COST, which would be known beforehand, completely eliminating the need for a bidding system.
- Assuming an effective function to determine MINER_TIP, Miners/stakers would be reliably compensated for their work and would always have a direct incentive to include transactions in blocks.
- The deflationary policy of Ethereum (a likely outcome of EIP-1559) will not change.
The disadvantages:
- If the MINER_TIPfunction is not appropriate, it could lead to either the overpayment of miners or, if the tip is too low, a network security risk due to low hashing power/ETH staking.
- If the network reaches maximum gas capacity, we will have no way of prioritizing transactions in the short-term by bidding miner tips up unlike in the current EIP-1559 proposal, and we will have to rely on the adjustment of BASE_FEE. Perhaps a modification to my proposed system can alleviate this.
Contact
If anyone is interested in drafting an EIP proposal with me, please reach out to my EthResearch account or my Twitter @kristofgazso
