Update blst to fix point-at-infinity issue in g1_lincomb_fast#600
Merged
jtraglia merged 5 commits intoethereum:mainfrom Sep 15, 2025
Merged
Update blst to fix point-at-infinity issue in g1_lincomb_fast#600jtraglia merged 5 commits intoethereum:mainfrom
g1_lincomb_fast#600jtraglia merged 5 commits intoethereum:mainfrom
Conversation
kevaundray
approved these changes
Sep 15, 2025
Member
Author
|
Going to merge now. Not going to wait for a new spec release 😅 |
Contributor
|
LGTM! Thanks! |
This was referenced Sep 18, 2025
Merged
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Reported by Teku & Nimbus. There was an issue with
verify_cell_kzg_proof_batchwhen there were at least 8 cells being verified & one of the cell's commitments was the point-at-infinity. It seems that blst's v0.3.15 support for points at infinity in Pippenger MSM was insufficient. Regarding why the existing reference tests did not catch this... When there are fewer than 8 inputs, ckzg uses the naive linear combination implementation which works as intended. Supranational recently pushed a commit to blst which fixes the issue, but this isn't included in a release yet. See these PRs for reference:verify_cell_kzg_proof_batchbug consensus-specs#4590This PR bumps blst to the latest commit; the submodule & binding dependencies.
A regression test from consensus-specs is included too. The CI check for spec consistency is expected to fail until there's another spec release.