Skip to content

fix: bind evals to transcript [LA - K]#364

Merged
ashpect merged 1 commit into
v1from
ash/audit2
Mar 26, 2026
Merged

fix: bind evals to transcript [LA - K]#364
ashpect merged 1 commit into
v1from
ash/audit2

Conversation

@ashpect
Copy link
Copy Markdown
Collaborator

@ashpect ashpect commented Mar 21, 2026

Problem
Evaluation claims (evals, evals_1, evals_2, public_eval) were sent via prover_hint_ark, which writes to the hints buffer without absorbing into the Fiat-Shamir sponge. The verifier reads them back without affecting challenge generation. A prover could substitute these values without changing subsequent challenges.

Current downstream checks (the WHIR opening verification) happen to reject forged values, but the transcript boundary itself is non-binding for anything sent through the hint channel.

Fix
Replaced all prover_hint_ark calls with prover_message for evaluation claims in both prover and verifier, so the values are absorbed into the sponge and bound to subsequent Fiat-Shamir challenges.

@ashpect ashpect changed the base branch from main to v1 March 21, 2026 20:27
@ashpect ashpect changed the title fix: bind evals to transcript [LA - K] fix: bind evals to transcript [LA - I] Mar 21, 2026
@ashpect ashpect changed the title fix: bind evals to transcript [LA - I] fix: bind evals to transcript [LA - K] Mar 21, 2026
@ashpect ashpect merged commit b3f570f into v1 Mar 26, 2026
dcbuild3r pushed a commit that referenced this pull request May 16, 2026
fix: bind evals to transcript [LA - K]
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.

2 participants