├── .gitignore ├── LICENSE ├── README.md ├── circuits ├── README.md ├── aliascheck.circom ├── aliascheck.go ├── babyjub.circom ├── babyjub.go ├── binsub.circom ├── binsub.go ├── binsum.circom ├── binsum.go ├── bitify.circom ├── bitify.go ├── bitify_test.go ├── comparators.circom ├── comparators.go ├── comparators_test.go ├── compconstant.circom ├── compconstant.go ├── compconstant_test.go ├── eddsa.circom ├── eddsamimc.circom ├── eddsamimc.go ├── eddsamimc_test.go ├── eddsamimcsponge.circom ├── eddsaposeidon.circom ├── eddsaposeidon.go ├── eddsaposeidon_test.go ├── escalarmul.circom ├── escalarmulany.circom ├── escalarmulfix.circom ├── escalarmulw4table.circom ├── escalarmulw4table.go ├── gates.circom ├── gates.go ├── gates_test.go ├── mimc.circom ├── mimc.go ├── mimc_test.go ├── mimcsponge.circom ├── mimcsponge.go ├── montgomery.circom ├── montgomery.go ├── multiplexer.circom ├── multiplexer.go ├── mux1.circom ├── mux1.go ├── mux2.circom ├── mux2.go ├── mux3.circom ├── mux3.go ├── mux4.circom ├── mux4.go ├── pedersen.circom ├── pedersen.go ├── pedersen_old.circom ├── pedersen_test.go ├── pointbits.circom ├── pointbits.go ├── poseidon.circom ├── poseidon.go ├── poseidon_constants.circom ├── poseidon_constants.go ├── poseidon_constants_old.circom ├── poseidon_constants_test.go ├── poseidon_old.circom ├── poseidon_test.go ├── sign.circom ├── sign.go ├── smt │ ├── README.md │ ├── mstverifier.go │ ├── mstverifier_test.go │ ├── mstverifiersm.go │ ├── smthash_mimc.circom │ ├── smthash_poseidon.circom │ ├── smthash_poseidon.go │ ├── smthash_poseidon_test.go │ ├── smtlevins.circom │ ├── smtlevins.go │ ├── smtprocessor.circom │ ├── smtprocessor.go │ ├── smtprocessor_test.go │ ├── smtprocessorlevel.circom │ ├── smtprocessorlevel.go │ ├── smtprocessorsm.circom │ ├── smtprocessorsm.go │ ├── smtverifier.circom │ ├── smtverifierlevel.circom │ ├── smtverifierlevel.go │ └── smtverifiersm.circom ├── switcher.circom ├── switcher.go └── utils.go ├── go.mod ├── go.sum └── utils ├── mimc7 └── mimc7.go └── poseidon └── poseidon.go /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/.gitignore -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/README.md -------------------------------------------------------------------------------- /circuits/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/README.md -------------------------------------------------------------------------------- /circuits/aliascheck.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/aliascheck.circom -------------------------------------------------------------------------------- /circuits/aliascheck.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/aliascheck.go -------------------------------------------------------------------------------- /circuits/babyjub.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/babyjub.circom -------------------------------------------------------------------------------- /circuits/babyjub.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/babyjub.go -------------------------------------------------------------------------------- /circuits/binsub.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/binsub.circom -------------------------------------------------------------------------------- /circuits/binsub.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/binsub.go -------------------------------------------------------------------------------- /circuits/binsum.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/binsum.circom -------------------------------------------------------------------------------- /circuits/binsum.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/binsum.go -------------------------------------------------------------------------------- /circuits/bitify.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/bitify.circom -------------------------------------------------------------------------------- /circuits/bitify.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/bitify.go -------------------------------------------------------------------------------- /circuits/bitify_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/bitify_test.go -------------------------------------------------------------------------------- /circuits/comparators.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/comparators.circom -------------------------------------------------------------------------------- /circuits/comparators.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/comparators.go -------------------------------------------------------------------------------- /circuits/comparators_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/comparators_test.go -------------------------------------------------------------------------------- /circuits/compconstant.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/compconstant.circom -------------------------------------------------------------------------------- /circuits/compconstant.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/compconstant.go -------------------------------------------------------------------------------- /circuits/compconstant_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/compconstant_test.go -------------------------------------------------------------------------------- /circuits/eddsa.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/eddsa.circom -------------------------------------------------------------------------------- /circuits/eddsamimc.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/eddsamimc.circom -------------------------------------------------------------------------------- /circuits/eddsamimc.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/eddsamimc.go -------------------------------------------------------------------------------- /circuits/eddsamimc_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/eddsamimc_test.go -------------------------------------------------------------------------------- /circuits/eddsamimcsponge.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/eddsamimcsponge.circom -------------------------------------------------------------------------------- /circuits/eddsaposeidon.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/eddsaposeidon.circom -------------------------------------------------------------------------------- /circuits/eddsaposeidon.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/eddsaposeidon.go -------------------------------------------------------------------------------- /circuits/eddsaposeidon_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/eddsaposeidon_test.go -------------------------------------------------------------------------------- /circuits/escalarmul.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/escalarmul.circom -------------------------------------------------------------------------------- /circuits/escalarmulany.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/escalarmulany.circom -------------------------------------------------------------------------------- /circuits/escalarmulfix.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/escalarmulfix.circom -------------------------------------------------------------------------------- /circuits/escalarmulw4table.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/escalarmulw4table.circom -------------------------------------------------------------------------------- /circuits/escalarmulw4table.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/escalarmulw4table.go -------------------------------------------------------------------------------- /circuits/gates.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/gates.circom -------------------------------------------------------------------------------- /circuits/gates.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/gates.go -------------------------------------------------------------------------------- /circuits/gates_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/gates_test.go -------------------------------------------------------------------------------- /circuits/mimc.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/mimc.circom -------------------------------------------------------------------------------- /circuits/mimc.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/mimc.go -------------------------------------------------------------------------------- /circuits/mimc_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/mimc_test.go -------------------------------------------------------------------------------- /circuits/mimcsponge.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/mimcsponge.circom -------------------------------------------------------------------------------- /circuits/mimcsponge.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/mimcsponge.go -------------------------------------------------------------------------------- /circuits/montgomery.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/montgomery.circom -------------------------------------------------------------------------------- /circuits/montgomery.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/montgomery.go -------------------------------------------------------------------------------- /circuits/multiplexer.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/multiplexer.circom -------------------------------------------------------------------------------- /circuits/multiplexer.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/multiplexer.go -------------------------------------------------------------------------------- /circuits/mux1.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/mux1.circom -------------------------------------------------------------------------------- /circuits/mux1.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/mux1.go -------------------------------------------------------------------------------- /circuits/mux2.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/mux2.circom -------------------------------------------------------------------------------- /circuits/mux2.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/mux2.go -------------------------------------------------------------------------------- /circuits/mux3.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/mux3.circom -------------------------------------------------------------------------------- /circuits/mux3.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/mux3.go -------------------------------------------------------------------------------- /circuits/mux4.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/mux4.circom -------------------------------------------------------------------------------- /circuits/mux4.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/mux4.go -------------------------------------------------------------------------------- /circuits/pedersen.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/pedersen.circom -------------------------------------------------------------------------------- /circuits/pedersen.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/pedersen.go -------------------------------------------------------------------------------- /circuits/pedersen_old.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/pedersen_old.circom -------------------------------------------------------------------------------- /circuits/pedersen_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/pedersen_test.go -------------------------------------------------------------------------------- /circuits/pointbits.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/pointbits.circom -------------------------------------------------------------------------------- /circuits/pointbits.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/pointbits.go -------------------------------------------------------------------------------- /circuits/poseidon.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/poseidon.circom -------------------------------------------------------------------------------- /circuits/poseidon.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/poseidon.go -------------------------------------------------------------------------------- /circuits/poseidon_constants.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/poseidon_constants.circom -------------------------------------------------------------------------------- /circuits/poseidon_constants.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/poseidon_constants.go -------------------------------------------------------------------------------- /circuits/poseidon_constants_old.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/poseidon_constants_old.circom -------------------------------------------------------------------------------- /circuits/poseidon_constants_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/poseidon_constants_test.go -------------------------------------------------------------------------------- /circuits/poseidon_old.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/poseidon_old.circom -------------------------------------------------------------------------------- /circuits/poseidon_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/poseidon_test.go -------------------------------------------------------------------------------- /circuits/sign.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/sign.circom -------------------------------------------------------------------------------- /circuits/sign.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/sign.go -------------------------------------------------------------------------------- /circuits/smt/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/smt/README.md -------------------------------------------------------------------------------- /circuits/smt/mstverifier.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/smt/mstverifier.go -------------------------------------------------------------------------------- /circuits/smt/mstverifier_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/smt/mstverifier_test.go -------------------------------------------------------------------------------- /circuits/smt/mstverifiersm.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/smt/mstverifiersm.go -------------------------------------------------------------------------------- /circuits/smt/smthash_mimc.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/smt/smthash_mimc.circom -------------------------------------------------------------------------------- /circuits/smt/smthash_poseidon.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/smt/smthash_poseidon.circom -------------------------------------------------------------------------------- /circuits/smt/smthash_poseidon.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/smt/smthash_poseidon.go -------------------------------------------------------------------------------- /circuits/smt/smthash_poseidon_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/smt/smthash_poseidon_test.go -------------------------------------------------------------------------------- /circuits/smt/smtlevins.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/smt/smtlevins.circom -------------------------------------------------------------------------------- /circuits/smt/smtlevins.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/smt/smtlevins.go -------------------------------------------------------------------------------- /circuits/smt/smtprocessor.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/smt/smtprocessor.circom -------------------------------------------------------------------------------- /circuits/smt/smtprocessor.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/smt/smtprocessor.go -------------------------------------------------------------------------------- /circuits/smt/smtprocessor_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/smt/smtprocessor_test.go -------------------------------------------------------------------------------- /circuits/smt/smtprocessorlevel.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/smt/smtprocessorlevel.circom -------------------------------------------------------------------------------- /circuits/smt/smtprocessorlevel.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/smt/smtprocessorlevel.go -------------------------------------------------------------------------------- /circuits/smt/smtprocessorsm.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/smt/smtprocessorsm.circom -------------------------------------------------------------------------------- /circuits/smt/smtprocessorsm.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/smt/smtprocessorsm.go -------------------------------------------------------------------------------- /circuits/smt/smtverifier.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/smt/smtverifier.circom -------------------------------------------------------------------------------- /circuits/smt/smtverifierlevel.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/smt/smtverifierlevel.circom -------------------------------------------------------------------------------- /circuits/smt/smtverifierlevel.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/smt/smtverifierlevel.go -------------------------------------------------------------------------------- /circuits/smt/smtverifiersm.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/smt/smtverifiersm.circom -------------------------------------------------------------------------------- /circuits/switcher.circom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/switcher.circom -------------------------------------------------------------------------------- /circuits/switcher.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/switcher.go -------------------------------------------------------------------------------- /circuits/utils.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/circuits/utils.go -------------------------------------------------------------------------------- /go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/go.mod -------------------------------------------------------------------------------- /go.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/go.sum -------------------------------------------------------------------------------- /utils/mimc7/mimc7.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/utils/mimc7/mimc7.go -------------------------------------------------------------------------------- /utils/poseidon/poseidon.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/liyue201/gnark-circomlib/HEAD/utils/poseidon/poseidon.go --------------------------------------------------------------------------------