MCPcopy Create free account
hub / github.com/Moddable-OpenSource/moddable / test

Function test

examples/crypt/cryptarith/main.js:33–145  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

31const kRepeeat = 1;
32
33function test() {
34 let p = BigInt(ps);
35 //let es = RNG.get(2048/8);
36 //let Ms = RNG.get(2048/8);
37 let e = BigInt(es);
38 let M = BigInt(Ms);
39 let r = BigInt(rs);
40
41 trace("p = " + p.toString(16) + "\n");
42 trace("M = " + M.toString(16) + "\n");
43 trace("e = " + e.toString(16) + "\n");
44
45 let mod = new Modular(p);
46 let mont = new Mont({m: p, method: Mont.SW});
47
48 let x
49 let t1 = Date.now();
50 let n = kRepeeat;
51 while (--n >= 0) {
52 x = mod.mulinv(M);
53 }
54 let t2 = Date.now();
55 trace(x.toString(16) + "\n");
56 trace("mod.mulinv: " + (t2 - t1) + "\n");
57/*
58 t1 = Date.now();
59 n = kRepeeat;
60 while (--n >= 0) {
61 x = mont.mulinv(M);
62 }
63 t2 = Date.now();
64 trace(x.toString(16) + "\n");
65 trace("mont.mulinv: " + (t2 - t1) + "\n");
66
67 t1 = Date.now();
68 n = kRepeeat;
69 while (--n >= 0) {
70 x = mod.exp(M, e);
71 }
72 t2 = Date.now();
73 trace("mod.exp: " + (t2 - t1) + "\n");
74 if (r != x)
75 trace("failed!\n");
76
77 t1 = Date.now();
78 n = kRepeeat;
79 while (--n >= 0) {
80 x = mont.exp(M, e);
81 }
82 t2 = Date.now();
83 trace("mont.exp: " + (t2 - t1) + "\n");
84 if (r != x)
85 trace("failed!\n");
86*/
87 //
88 // ECDSA test vectors from
89 // https://tools.ietf.org/html/rfc6979
90 //

Callers 3

main.jsFile · 0.70
main.jsFile · 0.50
main.jsFile · 0.50

Calls 4

mulinvMethod · 0.95
addMethod · 0.95
mulMethod · 0.95
toStringMethod · 0.45

Tested by

no test coverage detected