Skip to content

Merge upstream into non id constant#60

Closed
ConstanceBeguier wants to merge 4 commits into
mainfrom
merge_upstream_into_non_id_constant
Closed

Merge upstream into non id constant#60
ConstanceBeguier wants to merge 4 commits into
mainfrom
merge_upstream_into_non_id_constant

Conversation

@ConstanceBeguier

Copy link
Copy Markdown

No description provided.

This PR adds `NonIdentityPoint::new_from_constant` to enable creating non-identity points that are properly pinned to constants, which is required by the Orchard ZSA circuit ([Orchard PR](QED-it/orchard#246)).

More precisely, in the Orchard ZSA circuit, `q_init_zec` / `q_init_zsa` must be constrained to fixed constants, as they define the initial point `Q` of the Sinsemilla hash. If constructed via `NonIdentityPoint::new`, they remain unconstrained witnesses, allowing a prover to inject an arbitrary on-curve point and break commitment soundness.
…#57)

Add tests for `NonIdentityPoint::new_from_constant` and `Point::new_from_constant`.
…hecks (#58)

This PR introduces a circuit version flag in MyEccCircuit to preserve backward compatibility with the existing serialized circuit fixtures.
@ConstanceBeguier ConstanceBeguier marked this pull request as draft June 9, 2026 08:39
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.

1 participant