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