arnaucube
arnaucube/arboPublic Self-hosted repository
arbo/testvectors/circom/test/circuits/smt-proof-verifier_test.circom
testvectors/circom/test/circuits/smt-proof-verifier_test.circomRaw
 1include "../../node_modules/circomlib/circuits/comparators.circom";
 2include "../../node_modules/circomlib/circuits/poseidon.circom";
 3include "../../node_modules/circomlib/circuits/smt/smtverifier.circom";
 4
 5template SMTVerifierTest(nLevels) {
 6	signal input key;
 7	signal input value;
 8	signal input fnc;
 9	signal private input oldKey;
10	signal private input oldValue;
11	signal private input isOld0;
12	signal private input siblings[nLevels];
13	signal input root;
14
15	component smtV = SMTVerifier(nLevels);
16	smtV.enabled <== 1;
17	smtV.fnc <== fnc;
18	smtV.root <== root;
19	for (var i=0; i<nLevels; i++) {
20		smtV.siblings[i] <== siblings[i];
21	}
22	smtV.oldKey <== oldKey;
23	smtV.oldValue <== oldValue;
24	smtV.isOld0 <== isOld0;
25	smtV.key <== key;
26	smtV.value <== value;
27}