Wallet core should support this, supporting both legacy and new version.
The base fee is determined by the network, no need for user input or estimation.
Optional tip (inclusion fee) is an option for the user.
Max fee is also a setting (user-supplied or fixed?).
A proposed way to support both schemes by extending ethreum SigningInput with new fields max_inclusion_fee_per_gas and max_fee_per_gas:
Discriminator: If gas_price > 0, legacy fee scheme is used; if gas_price == 0 new EIP1559 scheme is used.
Legacy pre-EIP1559 scheme: gas_price and gas_limit are used as before, new fields are disregarded.
EIP1559: new fields max_inclusion_fee_per_gas and max_fee_per_gas are used (maxInclusionFeePerGas, maxFeePerGas, gas_limit is used, `gas_price' is disregarded (must be 0).
Note: EIP-2718 is a prerequisite, as EIP1559-compliant transaction is a new EIP-2718 type.
Fee structure in Ethereum is planned to be changed. https://github.com/ethereum/EIPs/blob/master/EIPS/eip-1559.md
Wallet core should support this, supporting both legacy and new version. The base fee is determined by the network, no need for user input or estimation. Optional tip (inclusion fee) is an option for the user. Max fee is also a setting (user-supplied or fixed?).
A proposed way to support both schemes by extending ethreum
SigningInput
with new fieldsmax_inclusion_fee_per_gas
andmax_fee_per_gas
:Discriminator: If
gas_price > 0
, legacy fee scheme is used; ifgas_price == 0
new EIP1559 scheme is used.Legacy pre-EIP1559 scheme:
gas_price
andgas_limit
are used as before, new fields are disregarded.EIP1559: new fields
max_inclusion_fee_per_gas
andmax_fee_per_gas
are used (maxInclusionFeePerGas, maxFeePerGas,gas_limit
is used, `gas_price' is disregarded (must be 0).Note: EIP-2718 is a prerequisite, as EIP1559-compliant transaction is a new EIP-2718 type.