From c5a9c816426719b5375b28d5c9c1cca1e2e660d5 Mon Sep 17 00:00:00 2001 From: Rostyslav Tyshko Date: Sun, 16 Mar 2025 11:05:08 -0400 Subject: [PATCH] crypto dn added --- sc_core/src/cryptography.rs | 11 +++++++++++ sc_core/src/lib.rs | 1 + 2 files changed, 12 insertions(+) create mode 100644 sc_core/src/cryptography.rs diff --git a/sc_core/src/cryptography.rs b/sc_core/src/cryptography.rs new file mode 100644 index 0000000..419df6f --- /dev/null +++ b/sc_core/src/cryptography.rs @@ -0,0 +1,11 @@ +use light_poseidon::{Poseidon, PoseidonBytesHasher, parameters::bn254_x5}; +use ark_bn254::Fr; +use ark_ff::{BigInteger, PrimeField}; + +fn poseidon_hash(inputs: &[&[u8]]) -> anyhow::Result<[u8; 32]> { + let mut poseidon = Poseidon::::new_circom(2).unwrap(); + + let hash = poseidon.hash_bytes_be(inputs)?; + + Ok(hash) +} diff --git a/sc_core/src/lib.rs b/sc_core/src/lib.rs index 7a67a54..fae3f4c 100644 --- a/sc_core/src/lib.rs +++ b/sc_core/src/lib.rs @@ -1,3 +1,4 @@ pub mod proofs_circuits; pub mod transaction_payloads_tools; pub mod utxo_manipulator; +pub mod cryptography;