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

Add blob txs PooledTransactions representation #3944

Closed
Tracked by #2893
mattsse opened this issue Jul 27, 2023 · 1 comment
Closed
Tracked by #2893

Add blob txs PooledTransactions representation #3944

mattsse opened this issue Jul 27, 2023 · 1 comment
Labels
A-networking Related to networking in general C-enhancement New feature or request E-cancun Related to the Cancun network upgrade S-stale This issue/PR is stale and will close with no further activity

Comments

@mattsse
Copy link
Collaborator

mattsse commented Jul 27, 2023

Describe the feature

See https://eips.ethereum.org/EIPS/eip-4844#networking

rlp([tx_payload_body, blobs, commitments, proofs])

The node MUST validate tx_payload_body and verify the wrapped data against it. To do so, ensure that:

There are an equal number of tx_payload_body.blob_versioned_hashes, blobs, commitments, and proofs.
The KZG commitments hash to the versioned hashes, i.e. kzg_to_versioned_hash(commitments[i]) == tx_payload_body.blob_versioned_hashes[i]
The KZG commitments match the corresponding blobs and proofs. (Note: this can be optimized using blob_kzg_proofs, with a proof for a random evaluation at a point derived from the commitment and blob data for each blob)

This only affects the response of getPooledTransactions

#[derive_arbitrary(rlp, 10)]
#[derive(Clone, Debug, PartialEq, Eq, RlpEncodableWrapper, RlpDecodableWrapper, Default)]
#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))]
pub struct PooledTransactions(
/// The transaction bodies, each of which should correspond to a requested hash.
pub Vec<TransactionSigned>,
);

because blob txs must never be broadcasted

Additional context

No response

@mattsse mattsse added C-enhancement New feature or request S-needs-triage This issue needs to be labelled labels Jul 27, 2023
@mattsse mattsse added A-networking Related to networking in general E-cancun Related to the Cancun network upgrade and removed S-needs-triage This issue needs to be labelled labels Jul 27, 2023
@github-actions
Copy link
Contributor

This issue is stale because it has been open for 14 days with no activity.

@github-actions github-actions bot added the S-stale This issue/PR is stale and will close with no further activity label Aug 11, 2023
@mattsse mattsse closed this as completed Aug 11, 2023
@github-project-automation github-project-automation bot moved this from Todo to Done in Reth Tracker Aug 11, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-networking Related to networking in general C-enhancement New feature or request E-cancun Related to the Cancun network upgrade S-stale This issue/PR is stale and will close with no further activity
Projects
Archived in project
Development

No branches or pull requests

1 participant