├── MPC_LR.c ├── MPC_LR_verfiy.c ├── Makefile ├── bench ├── main.cpp └── rescue_prime_bench_annotation.png ├── include ├── bench │ ├── bench_common.hpp │ ├── bench_hasher.hpp │ ├── bench_permutation.hpp │ └── bench_rescue_prime.hpp ├── ff.hpp ├── ff_avx.hpp ├── ff_avx512.hpp ├── ff_neon.hpp ├── permutation.hpp ├── rescue_prime.hpp └── test │ ├── test_ff.hpp │ ├── test_permutation.hpp │ └── test_rescue_prime.hpp ├── plain_implementations_prng ├── Cargo.toml ├── benches │ ├── mt_bls12.rs │ ├── mt_bn256.rs │ ├── plain_babybear.rs │ ├── plain_bls12.rs │ ├── plain_bn256.rs │ ├── plain_goldilocks.rs │ ├── plain_pallas.rs │ └── plain_vesta.rs └── src │ ├── fields │ ├── babybear.rs │ ├── bls12.rs │ ├── bn256.rs │ ├── goldilocks.rs │ ├── mod.rs │ ├── pallas.rs │ ├── utils.rs │ └── vesta.rs │ ├── gmimc │ ├── gmimc.rs │ ├── gmimc_instance_babybear.rs │ ├── gmimc_instance_bls12.rs │ ├── gmimc_instance_bn256.rs │ ├── gmimc_instance_goldilocks.rs │ ├── gmimc_instance_pallas.rs │ ├── gmimc_instance_vesta.rs │ ├── gmimc_params.rs │ └── mod.rs │ ├── lib.rs │ ├── merkle_tree │ ├── merkle_tree_f2.rs │ ├── merkle_tree_fp.rs │ ├── merkle_tree_orchard.rs │ ├── merkle_tree_sapling.rs │ └── mod.rs │ ├── neptune │ ├── mod.rs │ ├── neptune.rs │ ├── neptune_instances.rs │ └── neptune_params.rs │ ├── poseidon │ ├── mod.rs │ ├── poseidon.rs │ ├── poseidon_instance_babybear.rs │ ├── poseidon_instance_bls12.rs │ ├── poseidon_instance_bn256.rs │ ├── poseidon_instance_goldilocks.rs │ ├── poseidon_instance_pallas.rs │ ├── poseidon_instance_vesta.rs │ └── poseidon_params.rs │ ├── poseidon2 │ ├── mod.rs │ ├── poseidon2.rs │ ├── poseidon2_instance_babybear.rs │ ├── poseidon2_instance_bls12.rs │ ├── poseidon2_instance_bn256.rs │ ├── poseidon2_instance_goldilocks.rs │ ├── poseidon2_instance_pallas.rs │ ├── poseidon2_instance_vesta.rs │ └── poseidon2_params.rs │ └── utils.rs ├── readme.md ├── shared.h ├── shared_elgamal.h └── test └── main.cpp /MPC_LR.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/MPC_LR.c -------------------------------------------------------------------------------- /MPC_LR_verfiy.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/MPC_LR_verfiy.c -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/Makefile -------------------------------------------------------------------------------- /bench/main.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/bench/main.cpp -------------------------------------------------------------------------------- /bench/rescue_prime_bench_annotation.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/bench/rescue_prime_bench_annotation.png -------------------------------------------------------------------------------- /include/bench/bench_common.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/include/bench/bench_common.hpp -------------------------------------------------------------------------------- /include/bench/bench_hasher.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/include/bench/bench_hasher.hpp -------------------------------------------------------------------------------- /include/bench/bench_permutation.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/include/bench/bench_permutation.hpp -------------------------------------------------------------------------------- /include/bench/bench_rescue_prime.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/include/bench/bench_rescue_prime.hpp -------------------------------------------------------------------------------- /include/ff.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/include/ff.hpp -------------------------------------------------------------------------------- /include/ff_avx.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/include/ff_avx.hpp -------------------------------------------------------------------------------- /include/ff_avx512.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/include/ff_avx512.hpp -------------------------------------------------------------------------------- /include/ff_neon.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/include/ff_neon.hpp -------------------------------------------------------------------------------- /include/permutation.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/include/permutation.hpp -------------------------------------------------------------------------------- /include/rescue_prime.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/include/rescue_prime.hpp -------------------------------------------------------------------------------- /include/test/test_ff.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/include/test/test_ff.hpp -------------------------------------------------------------------------------- /include/test/test_permutation.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/include/test/test_permutation.hpp -------------------------------------------------------------------------------- /include/test/test_rescue_prime.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/include/test/test_rescue_prime.hpp -------------------------------------------------------------------------------- /plain_implementations_prng/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/plain_implementations_prng/Cargo.toml -------------------------------------------------------------------------------- /plain_implementations_prng/benches/mt_bls12.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/plain_implementations_prng/benches/mt_bls12.rs -------------------------------------------------------------------------------- /plain_implementations_prng/benches/mt_bn256.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/plain_implementations_prng/benches/mt_bn256.rs -------------------------------------------------------------------------------- /plain_implementations_prng/benches/plain_babybear.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/plain_implementations_prng/benches/plain_babybear.rs -------------------------------------------------------------------------------- /plain_implementations_prng/benches/plain_bls12.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/plain_implementations_prng/benches/plain_bls12.rs -------------------------------------------------------------------------------- /plain_implementations_prng/benches/plain_bn256.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/plain_implementations_prng/benches/plain_bn256.rs -------------------------------------------------------------------------------- /plain_implementations_prng/benches/plain_goldilocks.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/plain_implementations_prng/benches/plain_goldilocks.rs -------------------------------------------------------------------------------- /plain_implementations_prng/benches/plain_pallas.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/plain_implementations_prng/benches/plain_pallas.rs -------------------------------------------------------------------------------- /plain_implementations_prng/benches/plain_vesta.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/plain_implementations_prng/benches/plain_vesta.rs -------------------------------------------------------------------------------- /plain_implementations_prng/src/fields/babybear.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/plain_implementations_prng/src/fields/babybear.rs -------------------------------------------------------------------------------- /plain_implementations_prng/src/fields/bls12.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/plain_implementations_prng/src/fields/bls12.rs -------------------------------------------------------------------------------- /plain_implementations_prng/src/fields/bn256.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/plain_implementations_prng/src/fields/bn256.rs -------------------------------------------------------------------------------- /plain_implementations_prng/src/fields/goldilocks.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/plain_implementations_prng/src/fields/goldilocks.rs -------------------------------------------------------------------------------- /plain_implementations_prng/src/fields/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/plain_implementations_prng/src/fields/mod.rs -------------------------------------------------------------------------------- /plain_implementations_prng/src/fields/pallas.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/plain_implementations_prng/src/fields/pallas.rs -------------------------------------------------------------------------------- /plain_implementations_prng/src/fields/utils.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/plain_implementations_prng/src/fields/utils.rs -------------------------------------------------------------------------------- /plain_implementations_prng/src/fields/vesta.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/plain_implementations_prng/src/fields/vesta.rs -------------------------------------------------------------------------------- /plain_implementations_prng/src/gmimc/gmimc.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/plain_implementations_prng/src/gmimc/gmimc.rs -------------------------------------------------------------------------------- /plain_implementations_prng/src/gmimc/gmimc_instance_babybear.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/plain_implementations_prng/src/gmimc/gmimc_instance_babybear.rs -------------------------------------------------------------------------------- /plain_implementations_prng/src/gmimc/gmimc_instance_bls12.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/plain_implementations_prng/src/gmimc/gmimc_instance_bls12.rs -------------------------------------------------------------------------------- /plain_implementations_prng/src/gmimc/gmimc_instance_bn256.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/plain_implementations_prng/src/gmimc/gmimc_instance_bn256.rs -------------------------------------------------------------------------------- /plain_implementations_prng/src/gmimc/gmimc_instance_goldilocks.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/plain_implementations_prng/src/gmimc/gmimc_instance_goldilocks.rs -------------------------------------------------------------------------------- /plain_implementations_prng/src/gmimc/gmimc_instance_pallas.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/plain_implementations_prng/src/gmimc/gmimc_instance_pallas.rs -------------------------------------------------------------------------------- /plain_implementations_prng/src/gmimc/gmimc_instance_vesta.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/plain_implementations_prng/src/gmimc/gmimc_instance_vesta.rs -------------------------------------------------------------------------------- /plain_implementations_prng/src/gmimc/gmimc_params.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/plain_implementations_prng/src/gmimc/gmimc_params.rs -------------------------------------------------------------------------------- /plain_implementations_prng/src/gmimc/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/plain_implementations_prng/src/gmimc/mod.rs -------------------------------------------------------------------------------- /plain_implementations_prng/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/plain_implementations_prng/src/lib.rs -------------------------------------------------------------------------------- /plain_implementations_prng/src/merkle_tree/merkle_tree_f2.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/plain_implementations_prng/src/merkle_tree/merkle_tree_f2.rs -------------------------------------------------------------------------------- /plain_implementations_prng/src/merkle_tree/merkle_tree_fp.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/plain_implementations_prng/src/merkle_tree/merkle_tree_fp.rs -------------------------------------------------------------------------------- /plain_implementations_prng/src/merkle_tree/merkle_tree_orchard.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/plain_implementations_prng/src/merkle_tree/merkle_tree_orchard.rs -------------------------------------------------------------------------------- /plain_implementations_prng/src/merkle_tree/merkle_tree_sapling.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/plain_implementations_prng/src/merkle_tree/merkle_tree_sapling.rs -------------------------------------------------------------------------------- /plain_implementations_prng/src/merkle_tree/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/plain_implementations_prng/src/merkle_tree/mod.rs -------------------------------------------------------------------------------- /plain_implementations_prng/src/neptune/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/plain_implementations_prng/src/neptune/mod.rs -------------------------------------------------------------------------------- /plain_implementations_prng/src/neptune/neptune.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/plain_implementations_prng/src/neptune/neptune.rs -------------------------------------------------------------------------------- /plain_implementations_prng/src/neptune/neptune_instances.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/plain_implementations_prng/src/neptune/neptune_instances.rs -------------------------------------------------------------------------------- /plain_implementations_prng/src/neptune/neptune_params.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/plain_implementations_prng/src/neptune/neptune_params.rs -------------------------------------------------------------------------------- /plain_implementations_prng/src/poseidon/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/plain_implementations_prng/src/poseidon/mod.rs -------------------------------------------------------------------------------- /plain_implementations_prng/src/poseidon/poseidon.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/plain_implementations_prng/src/poseidon/poseidon.rs -------------------------------------------------------------------------------- /plain_implementations_prng/src/poseidon/poseidon_instance_babybear.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/plain_implementations_prng/src/poseidon/poseidon_instance_babybear.rs -------------------------------------------------------------------------------- /plain_implementations_prng/src/poseidon/poseidon_instance_bls12.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/plain_implementations_prng/src/poseidon/poseidon_instance_bls12.rs -------------------------------------------------------------------------------- /plain_implementations_prng/src/poseidon/poseidon_instance_bn256.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/plain_implementations_prng/src/poseidon/poseidon_instance_bn256.rs -------------------------------------------------------------------------------- /plain_implementations_prng/src/poseidon/poseidon_instance_goldilocks.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/plain_implementations_prng/src/poseidon/poseidon_instance_goldilocks.rs -------------------------------------------------------------------------------- /plain_implementations_prng/src/poseidon/poseidon_instance_pallas.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/plain_implementations_prng/src/poseidon/poseidon_instance_pallas.rs -------------------------------------------------------------------------------- /plain_implementations_prng/src/poseidon/poseidon_instance_vesta.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/plain_implementations_prng/src/poseidon/poseidon_instance_vesta.rs -------------------------------------------------------------------------------- /plain_implementations_prng/src/poseidon/poseidon_params.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/plain_implementations_prng/src/poseidon/poseidon_params.rs -------------------------------------------------------------------------------- /plain_implementations_prng/src/poseidon2/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/plain_implementations_prng/src/poseidon2/mod.rs -------------------------------------------------------------------------------- /plain_implementations_prng/src/poseidon2/poseidon2.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/plain_implementations_prng/src/poseidon2/poseidon2.rs -------------------------------------------------------------------------------- /plain_implementations_prng/src/poseidon2/poseidon2_instance_babybear.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/plain_implementations_prng/src/poseidon2/poseidon2_instance_babybear.rs -------------------------------------------------------------------------------- /plain_implementations_prng/src/poseidon2/poseidon2_instance_bls12.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/plain_implementations_prng/src/poseidon2/poseidon2_instance_bls12.rs -------------------------------------------------------------------------------- /plain_implementations_prng/src/poseidon2/poseidon2_instance_bn256.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/plain_implementations_prng/src/poseidon2/poseidon2_instance_bn256.rs -------------------------------------------------------------------------------- /plain_implementations_prng/src/poseidon2/poseidon2_instance_goldilocks.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/plain_implementations_prng/src/poseidon2/poseidon2_instance_goldilocks.rs -------------------------------------------------------------------------------- /plain_implementations_prng/src/poseidon2/poseidon2_instance_pallas.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/plain_implementations_prng/src/poseidon2/poseidon2_instance_pallas.rs -------------------------------------------------------------------------------- /plain_implementations_prng/src/poseidon2/poseidon2_instance_vesta.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/plain_implementations_prng/src/poseidon2/poseidon2_instance_vesta.rs -------------------------------------------------------------------------------- /plain_implementations_prng/src/poseidon2/poseidon2_params.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/plain_implementations_prng/src/poseidon2/poseidon2_params.rs -------------------------------------------------------------------------------- /plain_implementations_prng/src/utils.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/plain_implementations_prng/src/utils.rs -------------------------------------------------------------------------------- /readme.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/readme.md -------------------------------------------------------------------------------- /shared.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/shared.h -------------------------------------------------------------------------------- /shared_elgamal.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/shared_elgamal.h -------------------------------------------------------------------------------- /test/main.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lidailin0730/CipherNebula/HEAD/test/main.cpp --------------------------------------------------------------------------------