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

Eip1559 private txs #950

Draft
wants to merge 28 commits into
base: master
Choose a base branch
from
Draft

Conversation

jframe
Copy link
Contributor

@jframe jframe commented Nov 29, 2023

PR Description

Builds on existing PR #838. This merges in the latest changes from main and removes changes that are no longer needed due to standard EIP-1559 transactions.

note: Blocked on changes to PrivateTransactionDecoder for 1559 in this PR hyperledger-web3j/web3j#1980

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

Fixed Issue(s)

Documentation

  • I thought about documentation and added the doc-change-required label to this PR if updates are required.

Changelog

  • I thought about adding a changelog entry, and added one if I deemed necessary.

Testing

  • I thought about testing these changes in a realistic/non-local environment.

gfukushima and others added 28 commits June 27, 2023 10:44
Signed-off-by: Gabriel Fukushima <[email protected]>
Signed-off-by: Gabriel Fukushima <[email protected]>
Signed-off-by: Gabriel Fukushima <[email protected]>
Signed-off-by: Gabriel Fukushima <[email protected]>
Signed-off-by: Gabriel Fukushima <[email protected]>
Signed-off-by: Gabriel Fukushima <[email protected]>
Signed-off-by: Gabriel Fukushima <[email protected]>
Signed-off-by: Gabriel Fukushima <[email protected]>
# Conflicts:
#	CHANGELOG.md
#	acceptance-tests/src/test/java/tech/pegasys/web3signer/dsl/signer/SignerConfigurationBuilder.java
#	core/src/integrationTest/java/tech/pegasys/web3signer/core/jsonrpcproxy/IntegrationTestBase.java
#	core/src/main/java/tech/pegasys/web3signer/core/Eth1Runner.java
#	core/src/main/java/tech/pegasys/web3signer/core/service/jsonrpc/EthSendTransactionJsonParameters.java
#	core/src/main/java/tech/pegasys/web3signer/core/service/jsonrpc/handlers/internalresponse/EthSignTransactionResultProvider.java
#	core/src/main/java/tech/pegasys/web3signer/core/service/jsonrpc/handlers/sendtransaction/NonceProvider.java
#	core/src/main/java/tech/pegasys/web3signer/core/service/jsonrpc/handlers/sendtransaction/transaction/EthTransaction.java
#	core/src/main/java/tech/pegasys/web3signer/core/service/jsonrpc/handlers/sendtransaction/transaction/Transaction.java
#	core/src/main/java/tech/pegasys/web3signer/core/service/jsonrpc/handlers/signing/ChainIdProvider.java
#	core/src/main/java/tech/pegasys/web3signer/core/service/jsonrpc/handlers/signing/ConfigurationChainId.java
#	core/src/main/java/tech/pegasys/web3signer/core/service/jsonrpc/handlers/signing/TransactionSerializer.java
#	core/src/test/java/tech/pegasys/web3signer/core/service/jsonrpc/EthSignTransactionResultProviderTest.java
#	core/src/test/java/tech/pegasys/web3signer/core/service/jsonrpc/handlers/transaction/EthTransactionTest.java
Signed-off-by: Gabriel Fukushima <[email protected]>
Signed-off-by: Gabriel Fukushima <[email protected]>
Signed-off-by: Gabriel Fukushima <[email protected]>
Signed-off-by: Gabriel Fukushima <[email protected]>
Signed-off-by: Gabriel Fukushima <[email protected]>
Signed-off-by: Gabriel Fukushima <[email protected]>
Signed-off-by: Gabriel Fukushima <[email protected]>
Signed-off-by: Gabriel Fukushima <[email protected]>
Signed-off-by: Gabriel Fukushima <[email protected]>
Signed-off-by: Gabriel Fukushima <[email protected]>
Wire in chainId to EthTransaction and PrivateTransaction variants.
Create eip1559 variant of RawTransaction and RawPrivateTransaction but don't do anything with it yet.
Remove rlpEncode(final long chainId) method override

This is to make the upcoming changes to the serialize method easier
@@ -92,6 +97,62 @@ public void rlpEncodesTransaction() {
assertThat(trimLeadingZeroes(decodedSignatureData.getS())).isEqualTo(new byte[] {3});
}

@Disabled("TODO SLD")
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

enable!

@non-fungible-nelson
Copy link
Contributor

Time box ~2 days

@siladu
Copy link
Contributor

siladu commented Mar 15, 2024

hyperledger-web3j/web3j#1980 merged, this is no longer blocked

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants