peerDAS: Replace cKZG by goKZG #14804
Draft
+393
−193
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Benchmark command:
Blob count: 12 (Fulu)
In bold: Currently used
Sequential: The 12 blobs are processed one by one.
Parallel: There is 1 go-routine per blob. All blobs are processed in parallel.
Benchmark with
go-eth-kzg v1.1.0 - gnark-crypto v0.12.1
:Benchmark with go-eth-kzg v1.1.1-0.20250121235631-6bfeee5d5578 - gnark-crypto v0.14.1:
Benchmark with go-eth-kzg v1.1.1-0.20250123135450-8462d4150358 - gnark-crypto v0.14.1:
*: Data columns are directly sent by batch in the cKZG function called in
VerifyDataColumnSidecarKZGProofs
.DataColumnSidecars is the Prysm implementation of get_data_column_sidecars.
Internal KZG call:
ComputeCellsAndKZGProofs
VerifyDataColumnsSidecarKZGProofs takes a list of data column sidecars as an input, and verifies the provided KZG Proofs.
Internal KZG call:
VerifyCellKZGProofBatch
.RecoverCellsAndProofs recovers the cells and proofs from the data column sidecars.
Internal KZG call:
RecoverCellsAndComputeKZGProofs
.