Skip to content

zk integration#10

Merged
markosg04 merged 7 commits into
feat/zkfrom
zk-integration
Jan 28, 2026
Merged

zk integration#10
markosg04 merged 7 commits into
feat/zkfrom
zk-integration

Conversation

@0xAndoroid
Copy link
Copy Markdown
Collaborator

@0xAndoroid 0xAndoroid commented Jan 28, 2026

Summary

  • Add arkworks CanonicalSerialize/CanonicalDeserialize for ZK proof types
  • Return (proof, y_blinding) from prove API for Jolt integration
  • Use separate URS cache paths for ZK vs non-ZK modes

Changes

  • ark_serde.rs: serialization for Sigma1Proof, Sigma2Proof, ScalarProductProof, setup wrappers
  • evaluation_proof.rs: return y_blinding alongside proof
  • setup.rs: ZK mode uses dory_{n}_zk.urs filename
  • Tests updated for new return type

- Add ArkDoryProof y_com/y_blinding field accessors
- Add ArkGT/ArkG1 serialization for transcript binding
- Fix typo in transcript.rs
- Fix clippy warnings in derive crate
y_blinding was never used by verifier but was being serialized,
leaking the blinding factor. Now returned separately from prove().
Destructure (proof, _) tuple from prove() and create_evaluation_proof()
which now return (DoryProof, Option<F>). Also add #[cfg(feature =
"disk-persistence")] guards to tests using load_setup/save_setup.
ZK mode serializes additional fields (h1_g2_fin) making the URS format
incompatible. Now uses dory_{n}_zk.urs for ZK mode.
@markosg04 markosg04 merged commit 691ce5b into feat/zk Jan 28, 2026
5 checks passed
markosg04 pushed a commit that referenced this pull request Feb 27, 2026
* feat: add ZK support for Jolt integration

- Add ArkDoryProof y_com/y_blinding field accessors
- Add ArkGT/ArkG1 serialization for transcript binding
- Fix typo in transcript.rs
- Fix clippy warnings in derive crate

* fix: remove y_blinding from proof serialization

y_blinding was never used by verifier but was being serialized,
leaking the blinding factor. Now returned separately from prove().

* fix: update tests for new prove/create_evaluation_proof return type

Destructure (proof, _) tuple from prove() and create_evaluation_proof()
which now return (DoryProof, Option<F>). Also add #[cfg(feature =
"disk-persistence")] guards to tests using load_setup/save_setup.

* fix: use separate URS paths for ZK and non-ZK modes

ZK mode serializes additional fields (h1_g2_fin) making the URS format
incompatible. Now uses dory_{n}_zk.urs for ZK mode.

* chore: format code for CI compatibility

* fix: update examples and benches for new prove return type

* style: add empty .rustfmt.toml for CI consistency
markosg04 pushed a commit that referenced this pull request Feb 27, 2026
* feat: add ZK support for Jolt integration

- Add ArkDoryProof y_com/y_blinding field accessors
- Add ArkGT/ArkG1 serialization for transcript binding
- Fix typo in transcript.rs
- Fix clippy warnings in derive crate

* fix: remove y_blinding from proof serialization

y_blinding was never used by verifier but was being serialized,
leaking the blinding factor. Now returned separately from prove().

* fix: update tests for new prove/create_evaluation_proof return type

Destructure (proof, _) tuple from prove() and create_evaluation_proof()
which now return (DoryProof, Option<F>). Also add #[cfg(feature =
"disk-persistence")] guards to tests using load_setup/save_setup.

* fix: use separate URS paths for ZK and non-ZK modes

ZK mode serializes additional fields (h1_g2_fin) making the URS format
incompatible. Now uses dory_{n}_zk.urs for ZK mode.

* chore: format code for CI compatibility

* fix: update examples and benches for new prove return type

* style: add empty .rustfmt.toml for CI consistency
@0xAndoroid 0xAndoroid deleted the zk-integration branch April 29, 2026 20:44
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