⚠️ This EIP is not recommended for general use or implementation as it is likely to change.

EIP-3709: Remove Support for Type 1 Transactions Source

AuthorGregory Markou
Discussions-Tohttps://ethereum-magicians.org/t/eip-3709-deprecate-type-1-transactions/6810
StatusDraft
TypeStandards Track
CategoryInterface
Created2021-08-07
Requires 1559

Simple Summary

Deprecates usage of EIP-2718 TransactionType 1 in wallets and providers, upgrading all type 1 transactions to a type 2 transaction.

Abstract

Since both TransactionType 1 and 2 contain access_list, we propose the removal of offering TransactionType 1 from wallets and providers, instead the transaction will be converted to TransactionType 2 to make use of the new gas properties introduced by EIP-1559.

Motivation

EIP-2930 was introduced as the first TransactionType, type 1, with the intention of adding access_list to the TransactionPayload. EIP-1559 introduced the second TransactionType 2, which is represented as rlp([chain_id, nonce, max_priority_fee_per_gas, max_fee_per_gas, gas_limit, destination, amount, data, access_list, signature_y_parity, signature_r, signature_s]). The intention behind EIP-1559 was to enhance the user experience surrounding gas fees, and as we move forward we expect that the majority of the network will begin to using TransactionType 2 instead of the legacy style transactions. TransactionType 1 is a legacy transaction with the addition of access_list meaning that users will not benefit from enhancements made by EIP-1559. TransactionType 2 contains access_list, thus there is no reason to further support TransactionType 1 if the end goal is to push users towards using TransactionType 2 anyway.

Specification

For wallets and providers, if a user submits a transaction for signing with where TransactionType == 0x1, the developer should upgrade the transaction to meet the criteria of transaction of type 2.

The following fields need to be changed, or amended:

  • access_list: Nothing changes and it should remain in the transaction.
  • type: Should change from 0x1 to 0x2.
  • gas_price: Should be removed in favour of max_fee_per_gas & max_priority_fee_per_gas (see EIP-1559 for proper usage).

Rationale

Improve the user experience for submitting transactions, and move away from legacy style transactions.

Security Considerations

There are no known security considerations at this time.

Copyright and related rights waived via CC0.

Citation

Please cite this document as:

Gregory Markou, "EIP-3709: Remove Support for Type 1 Transactions [DRAFT]," Ethereum Improvement Proposals, no. 3709, August 2021. [Online serial]. Available: https://eips.ethereum.org/EIPS/eip-3709.