Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Eth RPC 1559 support for private transactions #839

Open
3 of 8 tasks
siladu opened this issue Jul 11, 2023 · 4 comments
Open
3 of 8 tasks

Eth RPC 1559 support for private transactions #839

siladu opened this issue Jul 11, 2023 · 4 comments
Labels
TeamCerberus Under active development by TeamCerberus @Consensys

Comments

@siladu
Copy link
Contributor

siladu commented Jul 11, 2023

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

Draft PR already underway: #838 #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

  • Add additional fields to EthSendTransactionJsonParameters for maxFeePerGas and maxPriorityFeePerGas
  • Update EeaPrivateTransaction and BesuPrivateTransaction to create 1559 transactions and be used in the encoding
  • Update web3j PrivateTransactionDecoder to work for 1559
  • Integration/Acceptance tests:
    • eea_sendTransaction
      • EeaPrivateTransactionTest
      • 1559 version of SigningEeaSendTransactionIntegrationTest.signSendTransaction for EeaPrivateTransaction
      • 1559 version of SigningEeaSendTransactionIntegrationTest.signSendTransactionWithPrivacyGroupId for BesuPrivateTransaction
@siladu siladu added the TeamCerberus Under active development by TeamCerberus @Consensys label Jul 11, 2023
@jframe
Copy link
Contributor

jframe commented Jul 16, 2023

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

@siladu
Copy link
Contributor Author

siladu commented Sep 22, 2023

Web3j issue has been filed for this hyperledger-web3j/web3j#1966

@NickSneo
Copy link

PR for Web3j private 1559 transaction - hyperledger-web3j/web3j#1980

@siladu siladu removed the blocked label Mar 15, 2024
@siladu
Copy link
Contributor Author

siladu commented Mar 15, 2024

hyperledger-web3j/web3j#1980 merged, no longer blocked.

Latest PR is #950

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
TeamCerberus Under active development by TeamCerberus @Consensys
Projects
None yet
Development

No branches or pull requests

3 participants