From eee7cc13979a875ddb8fad1b293d4baf3bb03436 Mon Sep 17 00:00:00 2001 From: Oleksandr Pravdyvyi Date: Wed, 16 Jul 2025 08:10:49 +0300 Subject: [PATCH] fix: comments fix --- sc_core/src/proofs_circuits.rs | 35 ++++++++++++---------------------- 1 file changed, 12 insertions(+), 23 deletions(-) diff --git a/sc_core/src/proofs_circuits.rs b/sc_core/src/proofs_circuits.rs index 03eea96..86b5886 100644 --- a/sc_core/src/proofs_circuits.rs +++ b/sc_core/src/proofs_circuits.rs @@ -3,7 +3,6 @@ use common::merkle_tree_public::merkle_tree::UTXOCommitmentsMerkleTree; use rand::{thread_rng, RngCore}; use secp256k1_zkp::{CommitmentSecrets, Generator, PedersenCommitment, Tag, Tweak, SECP256K1}; use sha2::{Digest, Sha256}; -use std::collections::HashSet; use utxo::utxo_core::UTXO; use crate::{cryptography::poseidon_hash, public_context::PublicSCContext}; @@ -26,7 +25,7 @@ pub fn generate_nullifiers(input_utxo: &UTXO, npk: &[u8]) -> Vec { /// /// uses the input_utxo /// -/// returns commitment here comminment is a hash(bincode(input_utxo)) +/// returns commitment here commitment is a hash(bincode(input_utxo)) pub fn generate_commitment(input_utxo: &UTXO) -> Vec { let serialized = bincode::serialize(input_utxo).unwrap(); // Serialize UTXO. hash(&serialized) @@ -50,7 +49,7 @@ pub fn generate_commitments(input_utxos: &[UTXO]) -> Vec> { /// Validate inclusion proof for in_commitments /// /// ToDo: Solve it in more scalable way -pub fn validate_in_commitments_proof( +pub fn validate_in_commitments_tree( in_commitment: &Vec, commitment_tree: &UTXOCommitmentsMerkleTree, ) -> bool { @@ -59,14 +58,6 @@ pub fn validate_in_commitments_proof( commitment_tree.get_proof(alighned_hash).is_some() } -/// Validate that `nullifier` has not been present in set items before -pub fn validate_nullifier_not_present_in_set_items( - nullifier: [u8; 32], - nullifiers_set: &HashSet<[u8; 32]>, -) -> bool { - !nullifiers_set.contains(&nullifier) -} - /// Check, that input utxos balances is equal to out utxo balances pub fn check_balances_private(in_utxos: &[UTXO], out_utxos: &[UTXO]) -> bool { let in_sum = in_utxos.iter().fold(0, |prev, utxo| prev + utxo.amount); @@ -99,17 +90,16 @@ pub fn private_circuit( } for in_commitment in in_commitments { - assert!(validate_in_commitments_proof( + assert!(validate_in_commitments_tree( &in_commitment, &public_context.commitments_tree, )); } for nullifier in in_nullifiers.iter() { - assert!(validate_nullifier_not_present_in_set_items( - nullifier.clone().try_into().unwrap(), - &public_context.nullifiers_set, - )); + let nullifier: [u8; 32] = nullifier.clone().try_into().unwrap(); + + assert!(!public_context.nullifiers_set.contains(&nullifier)); } (in_nullifiers, generate_commitments(&output_utxos)) @@ -149,17 +139,16 @@ pub fn deshielded_circuit( } for in_commitment in in_commitments { - assert!(validate_in_commitments_proof( + assert!(validate_in_commitments_tree( &in_commitment, &public_context.commitments_tree, )); } for nullifier in in_nullifiers.iter() { - assert!(validate_nullifier_not_present_in_set_items( - nullifier.clone().try_into().unwrap(), - &public_context.nullifiers_set, - )); + let nullifier: [u8; 32] = nullifier.clone().try_into().unwrap(); + + assert!(!public_context.nullifiers_set.contains(&nullifier)); } in_nullifiers @@ -241,7 +230,7 @@ pub fn verify_commitment( /// Validate inclusion proof for pedersen_commitment /// /// ToDo: Solve it in more scalable way -pub fn validate_in_commitments_proof_se( +pub fn validate_in_commitments_tree_se( pedersen_commitment: &PedersenCommitment, commitment_tree: &UTXOCommitmentsMerkleTree, ) -> bool { @@ -291,7 +280,7 @@ pub fn shielded_circuit( let nullifier = generate_nullifiers_se(&pedersen_commitment, &key_ser); - assert!(validate_in_commitments_proof_se( + assert!(validate_in_commitments_tree_se( &pedersen_commitment, &public_context.commitments_tree, ));