From 95593b1ea98020b78d6174e54bbdeb424565ce7d Mon Sep 17 00:00:00 2001 From: Nicolas Sarlin Date: Mon, 27 Oct 2025 11:25:40 +0100 Subject: [PATCH] fix(zk): missing compressed proof version --- tfhe-zk-pok/src/backward_compatibility/pke_v2.rs | 3 ++- tfhe-zk-pok/src/proofs/pke_v2/mod.rs | 10 +++++++--- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/tfhe-zk-pok/src/backward_compatibility/pke_v2.rs b/tfhe-zk-pok/src/backward_compatibility/pke_v2.rs index 6432f951d..65ab02294 100644 --- a/tfhe-zk-pok/src/backward_compatibility/pke_v2.rs +++ b/tfhe-zk-pok/src/backward_compatibility/pke_v2.rs @@ -278,7 +278,8 @@ where G::G2: Compressible, { V0(CompressedProofV0), - V1(CompressedProof), + V1(CompressedProofV1), + V2(CompressedProof), } #[derive(VersionsDispatch)] diff --git a/tfhe-zk-pok/src/proofs/pke_v2/mod.rs b/tfhe-zk-pok/src/proofs/pke_v2/mod.rs index 7e269b253..47f8b9a37 100644 --- a/tfhe-zk-pok/src/proofs/pke_v2/mod.rs +++ b/tfhe-zk-pok/src/proofs/pke_v2/mod.rs @@ -2095,6 +2095,7 @@ mod tests { use super::*; use rand::rngs::StdRng; use rand::{thread_rng, Rng, SeedableRng}; + use tfhe_versionable::Unversionize; type Curve = curve_api::Bls12_446; @@ -3148,9 +3149,12 @@ mod tests { &seed.to_le_bytes(), ); - let compressed_proof = bincode::serialize(&proof.compress()).unwrap(); - let proof = - Proof::uncompress(bincode::deserialize(&compressed_proof).unwrap()).unwrap(); + let compressed_proof = bincode::serialize(&proof.compress().versionize()).unwrap(); + let proof = Proof::uncompress( + CompressedProof::unversionize(bincode::deserialize(&compressed_proof).unwrap()) + .unwrap(), + ) + .unwrap(); verify(&proof, (&public_param, &public_commit), &testcase.metadata).unwrap() }