Consensys / web3signer

Web3Signer is an open-source signing service capable of signing on multiple platforms (Ethereum1 and 2, Filecoin) using private keys stored in an external vault, or encrypted on a disk.
https://docs.web3signer.consensys.net/
Apache License 2.0
187 stars 70 forks source link

Eth RPC 1559 support for private transactions #839

Open siladu opened 1 year ago

siladu commented 1 year ago

Following #769, this issue is to support 1559 in private transactions via eea_sendTransaction.

Draft PR already underway: ~https://github.com/Consensys/web3signer/pull/838~ https://github.com/Consensys/web3signer/pull/950

A web3j bug was found which prevented EIP-1559 from being decoded which is why this issue was split out: https://github.com/web3j/web3j/blob/2ad9a8b4b9411de13c6d09e8392a51213d8160f0/eea/src/main/java/org/web3j/protocol/eea/crypto/PrivateTransactionDecoder.java#L35-L39 Although the delegation to TransactionDecoder.decode() covers the 1559 decoding routine, the RlpDecoder.decode() method higher up relies on the all important stripping of the first byte happening before it is called... final byte[] encodedTx = Arrays.copyOfRange(transaction, 1, transaction.length);

Tasks

jframe commented 1 year ago

Blocked on changes in web3j to support encoding of EIP-1559 private transactions

siladu commented 11 months ago

Web3j issue has been filed for this https://github.com/web3j/web3j/issues/1966

NickSneo commented 9 months ago

PR for Web3j private 1559 transaction - https://github.com/web3j/web3j/pull/1980

siladu commented 5 months ago

https://github.com/web3j/web3j/pull/1980 merged, no longer blocked.

Latest PR is https://github.com/Consensys/web3signer/pull/950