grapevine-sonobe/circom/node_modules/circomlib/test/circuits/escalarmul_test.circom
circom/node_modules/circomlib/test/circuits/escalarmul_test.circomRaw
1pragma circom 2.0.0;
2
3include "../../circuits/escalarmul.circom";
4include "../../circuits/bitify.circom";
5
6
7template Main() {
8 signal input in;
9 signal output out[2];
10
11 var base[2] = [5299619240641551281634865583518297030282874472190772894086521144482721001553,
12 16950150798460657717958625567821834550301663161624707787222815936182638968203];
13
14
15 component n2b = Num2Bits(253);
16 component escalarMul = EscalarMul(253, base);
17
18 escalarMul.inp[0] <== 0;
19 escalarMul.inp[1] <== 1;
20
21 var i;
22
23 in ==> n2b.in;
24
25 for (i=0; i<253; i++) {
26 n2b.out[i] ==> escalarMul.in[i];
27 }
28
29 escalarMul.out[0] ==> out[0];
30 escalarMul.out[1] ==> out[1];
31}
32
33component main = Main();