OpenCoverage

fe25519.c

Absolute File Name:/home/opencoverage/opencoverage/guest-scripts/openssh/src/fe25519.c
Switch to Source codePreprocessed file
LineSourceCount
1-
2-
3-
4-
5-
6static crypto_uint32 equal(crypto_uint32 a,crypto_uint32 b)-
7{-
8 crypto_uint32 x = a ^ b;-
9 x -= 1;-
10 x >>= 31;-
11 return
executed 3085058 times by 3 tests: return x;
Executed by:
  • ssh-keygen
  • test_kex
  • test_sshkey
x;
executed 3085058 times by 3 tests: return x;
Executed by:
  • ssh-keygen
  • test_kex
  • test_sshkey
3085058
12}-
13-
14static crypto_uint32 ge(crypto_uint32 a,crypto_uint32 b)-
15{-
16 unsigned int x = a;-
17 x -= (unsigned int) b;-
18 x >>= 31;-
19 x ^= 1;-
20 return
executed 99518 times by 3 tests: return x;
Executed by:
  • ssh-keygen
  • test_kex
  • test_sshkey
x;
executed 99518 times by 3 tests: return x;
Executed by:
  • ssh-keygen
  • test_kex
  • test_sshkey
99518
21}-
22-
23static crypto_uint32 times19(crypto_uint32 a)-
24{-
25 return
executed 276105388 times by 3 tests: return (a << 4) + (a << 1) + a;
Executed by:
  • ssh-keygen
  • test_kex
  • test_sshkey
(a << 4) + (a << 1) + a;
executed 276105388 times by 3 tests: return (a << 4) + (a << 1) + a;
Executed by:
  • ssh-keygen
  • test_kex
  • test_sshkey
276105388
26}-
27-
28static crypto_uint32 times38(crypto_uint32 a)-
29{-
30 return
executed 1513853504 times by 3 tests: return (a << 5) + (a << 2) + (a << 1);
Executed by:
  • ssh-keygen
  • test_kex
  • test_sshkey
(a << 5) + (a << 2) + (a << 1);
executed 1513853504 times by 3 tests: return (a << 5) + (a << 2) + (a << 1);
Executed by:
  • ssh-keygen
  • test_kex
  • test_sshkey
1513853504
31}-
32-
33static void reduce_add_sub(crypto_sign_ed25519_ref_fe25519 *r)-
34{-
35 crypto_uint32 t;-
36 int i,rep;-
37-
38 for(rep=0;rep<4
rep<4Description
TRUEevaluated 178437420 times by 3 tests
Evaluated by:
  • ssh-keygen
  • test_kex
  • test_sshkey
FALSEevaluated 44609355 times by 3 tests
Evaluated by:
  • ssh-keygen
  • test_kex
  • test_sshkey
;rep++)
44609355-178437420
39 {-
40 t = r->v[31] >> 7;-
41 r->v[31] &= 127;-
42 t = times19(t);-
43 r->v[0] += t;-
44 for(i=0;i<31
i<31Description
TRUEevaluated 1236592724 times by 3 tests
Evaluated by:
  • ssh-keygen
  • test_kex
  • test_sshkey
FALSEevaluated 178437420 times by 3 tests
Evaluated by:
  • ssh-keygen
  • test_kex
  • test_sshkey
;i++)
178437420-1236592724
45 {-
46 t = r->v[i] >> 8;-
47 r->v[i+1] += t;-
48 r->v[i] &= 255;-
49 }
executed 1236592724 times by 3 tests: end of block
Executed by:
  • ssh-keygen
  • test_kex
  • test_sshkey
1236592724
50 }
executed 178437420 times by 3 tests: end of block
Executed by:
  • ssh-keygen
  • test_kex
  • test_sshkey
178437420
51}
executed 44609355 times by 3 tests: end of block
Executed by:
  • ssh-keygen
  • test_kex
  • test_sshkey
44609355
52-
53static void reduce_mul(crypto_sign_ed25519_ref_fe25519 *r)-
54{-
55 crypto_uint32 t;-
56 int i,rep;-
57-
58 for(rep=0;rep<2
rep<2Description
TRUEevaluated 97667968 times by 3 tests
Evaluated by:
  • ssh-keygen
  • test_kex
  • test_sshkey
FALSEevaluated 48833984 times by 3 tests
Evaluated by:
  • ssh-keygen
  • test_kex
  • test_sshkey
;rep++)
48833984-97667968
59 {-
60 t = r->v[31] >> 7;-
61 r->v[31] &= 127;-
62 t = times19(t);-
63 r->v[0] += t;-
64 for(i=0;i<31
i<31Description
TRUEevaluated 2147483647 times by 3 tests
Evaluated by:
  • ssh-keygen
  • test_kex
  • test_sshkey
FALSEevaluated 97667968 times by 3 tests
Evaluated by:
  • ssh-keygen
  • test_kex
  • test_sshkey
;i++)
97667968-Inf
65 {-
66 t = r->v[i] >> 8;-
67 r->v[i+1] += t;-
68 r->v[i] &= 255;-
69 }
executed 2147483647 times by 3 tests: end of block
Executed by:
  • ssh-keygen
  • test_kex
  • test_sshkey
Inf
70 }
executed 97667968 times by 3 tests: end of block
Executed by:
  • ssh-keygen
  • test_kex
  • test_sshkey
97667968
71}
executed 48833984 times by 3 tests: end of block
Executed by:
  • ssh-keygen
  • test_kex
  • test_sshkey
48833984
72-
73-
74void crypto_sign_ed25519_ref_fe25519_freeze(crypto_sign_ed25519_ref_fe25519 *r)-
75{-
76 int i;-
77 crypto_uint32 m = equal(r->v[31],127);-
78 for(i=30;i>0
i>0Description
TRUEevaluated 2985540 times by 3 tests
Evaluated by:
  • ssh-keygen
  • test_kex
  • test_sshkey
FALSEevaluated 99518 times by 3 tests
Evaluated by:
  • ssh-keygen
  • test_kex
  • test_sshkey
;i--)
99518-2985540
79 m &= equal(r->v[i],255);
executed 2985540 times by 3 tests: m &= equal(r->v[i],255);
Executed by:
  • ssh-keygen
  • test_kex
  • test_sshkey
2985540
80 m &= ge(r->v[0],237);-
81-
82 m = -m;-
83-
84 r->v[31] -= m&127;-
85 for(i=30;i>0
i>0Description
TRUEevaluated 2985540 times by 3 tests
Evaluated by:
  • ssh-keygen
  • test_kex
  • test_sshkey
FALSEevaluated 99518 times by 3 tests
Evaluated by:
  • ssh-keygen
  • test_kex
  • test_sshkey
;i--)
99518-2985540
86 r->v[i] -= m&255;
executed 2985540 times by 3 tests: r->v[i] -= m&255;
Executed by:
  • ssh-keygen
  • test_kex
  • test_sshkey
2985540
87 r->v[0] -= m&237;-
88}
executed 99518 times by 3 tests: end of block
Executed by:
  • ssh-keygen
  • test_kex
  • test_sshkey
99518
89-
90void crypto_sign_ed25519_ref_fe25519_unpack(crypto_sign_ed25519_ref_fe25519 *r, const unsigned char x[32])-
91{-
92 int i;-
93 for(i=0;i<32
i<32Description
TRUEevaluated 460768 times by 2 tests
Evaluated by:
  • test_kex
  • test_sshkey
FALSEevaluated 14399 times by 2 tests
Evaluated by:
  • test_kex
  • test_sshkey
;i++) r->v[i] = x[i];
executed 460768 times by 2 tests: r->v[i] = x[i];
Executed by:
  • test_kex
  • test_sshkey
14399-460768
94 r->v[31] &= 127;-
95}
executed 14399 times by 2 tests: end of block
Executed by:
  • test_kex
  • test_sshkey
14399
96-
97-
98void crypto_sign_ed25519_ref_fe25519_pack(unsigned char r[32], const crypto_sign_ed25519_ref_fe25519 *x)-
99{-
100 int i;-
101 crypto_sign_ed25519_ref_fe25519 y = *x;-
102 crypto_sign_ed25519_ref_fe25519_freeze(&y);-
103 for(i=0;i<32
i<32Description
TRUEevaluated 448000 times by 3 tests
Evaluated by:
  • ssh-keygen
  • test_kex
  • test_sshkey
FALSEevaluated 14000 times by 3 tests
Evaluated by:
  • ssh-keygen
  • test_kex
  • test_sshkey
;i++)
14000-448000
104 r[i] = y.v[i];
executed 448000 times by 3 tests: r[i] = y.v[i];
Executed by:
  • ssh-keygen
  • test_kex
  • test_sshkey
448000
105}
executed 14000 times by 3 tests: end of block
Executed by:
  • ssh-keygen
  • test_kex
  • test_sshkey
14000
106-
107int crypto_sign_ed25519_ref_fe25519_iszero(const crypto_sign_ed25519_ref_fe25519 *x)-
108{-
109 int i;-
110 int r;-
111 crypto_sign_ed25519_ref_fe25519 t = *x;-
112 crypto_sign_ed25519_ref_fe25519_freeze(&t);-
113 r = equal(t.v[0],0);-
114 for(i=1;i<32
i<32Description
TRUEnever evaluated
FALSEnever evaluated
;i++)
0
115 r &= equal(t.v[i],0);
never executed: r &= equal(t.v[i],0);
0
116 return
never executed: return r;
r;
never executed: return r;
0
117}-
118-
119int crypto_sign_ed25519_ref_fe25519_iseq_vartime(const crypto_sign_ed25519_ref_fe25519 *x, const crypto_sign_ed25519_ref_fe25519 *y)-
120{-
121 int i;-
122 crypto_sign_ed25519_ref_fe25519 t1 = *x;-
123 crypto_sign_ed25519_ref_fe25519 t2 = *y;-
124 crypto_sign_ed25519_ref_fe25519_freeze(&t1);-
125 crypto_sign_ed25519_ref_fe25519_freeze(&t2);-
126 for(i=0;i<32
i<32Description
TRUEevaluated 467079 times by 2 tests
Evaluated by:
  • test_kex
  • test_sshkey
FALSEevaluated 14138 times by 2 tests
Evaluated by:
  • test_kex
  • test_sshkey
;i++)
14138-467079
127 if(t1.v[i] != t2.v[i]
t1.v[i] != t2.v[i]Description
TRUEevaluated 14660 times by 2 tests
Evaluated by:
  • test_kex
  • test_sshkey
FALSEevaluated 452419 times by 2 tests
Evaluated by:
  • test_kex
  • test_sshkey
) return
executed 14660 times by 2 tests: return 0;
Executed by:
  • test_kex
  • test_sshkey
0;
executed 14660 times by 2 tests: return 0;
Executed by:
  • test_kex
  • test_sshkey
14660-452419
128 return
executed 14138 times by 2 tests: return 1;
Executed by:
  • test_kex
  • test_sshkey
1;
executed 14138 times by 2 tests: return 1;
Executed by:
  • test_kex
  • test_sshkey
14138
129}-
130-
131void crypto_sign_ed25519_ref_fe25519_cmov(crypto_sign_ed25519_ref_fe25519 *r, const crypto_sign_ed25519_ref_fe25519 *x, unsigned char b)-
132{-
133 int i;-
134 crypto_uint32 mask = b;-
135 mask = -mask;-
136 for(i=0;i<32
i<32Description
TRUEevaluated 1909440 times by 3 tests
Evaluated by:
  • ssh-keygen
  • test_kex
  • test_sshkey
FALSEevaluated 59670 times by 3 tests
Evaluated by:
  • ssh-keygen
  • test_kex
  • test_sshkey
;i++) r->v[i] ^= mask & (x->v[i] ^ r->v[i]);
executed 1909440 times by 3 tests: r->v[i] ^= mask & (x->v[i] ^ r->v[i]);
Executed by:
  • ssh-keygen
  • test_kex
  • test_sshkey
59670-1909440
137}
executed 59670 times by 3 tests: end of block
Executed by:
  • ssh-keygen
  • test_kex
  • test_sshkey
59670
138-
139unsigned char crypto_sign_ed25519_ref_fe25519_getparity(const crypto_sign_ed25519_ref_fe25519 *x)-
140{-
141 crypto_sign_ed25519_ref_fe25519 t = *x;-
142 crypto_sign_ed25519_ref_fe25519_freeze(&t);-
143 return
executed 27922 times by 3 tests: return t.v[0] & 1;
Executed by:
  • ssh-keygen
  • test_kex
  • test_sshkey
t.v[0] & 1;
executed 27922 times by 3 tests: return t.v[0] & 1;
Executed by:
  • ssh-keygen
  • test_kex
  • test_sshkey
27922
144}-
145-
146void crypto_sign_ed25519_ref_fe25519_setone(crypto_sign_ed25519_ref_fe25519 *r)-
147{-
148 int i;-
149 r->v[0] = 1;-
150 for(i=1;i<32
i<32Description
TRUEevaluated 1311951 times by 3 tests
Evaluated by:
  • ssh-keygen
  • test_kex
  • test_sshkey
FALSEevaluated 42321 times by 3 tests
Evaluated by:
  • ssh-keygen
  • test_kex
  • test_sshkey
;i++) r->v[i]=0;
executed 1311951 times by 3 tests: r->v[i]=0;
Executed by:
  • ssh-keygen
  • test_kex
  • test_sshkey
42321-1311951
151}
executed 42321 times by 3 tests: end of block
Executed by:
  • ssh-keygen
  • test_kex
  • test_sshkey
42321
152-
153void crypto_sign_ed25519_ref_fe25519_setzero(crypto_sign_ed25519_ref_fe25519 *r)-
154{-
155 int i;-
156 for(i=0;i<32
i<32Description
TRUEevaluated 114713952 times by 3 tests
Evaluated by:
  • ssh-keygen
  • test_kex
  • test_sshkey
FALSEevaluated 3584811 times by 3 tests
Evaluated by:
  • ssh-keygen
  • test_kex
  • test_sshkey
;i++) r->v[i]=0;
executed 114713952 times by 3 tests: r->v[i]=0;
Executed by:
  • ssh-keygen
  • test_kex
  • test_sshkey
3584811-114713952
157}
executed 3584811 times by 3 tests: end of block
Executed by:
  • ssh-keygen
  • test_kex
  • test_sshkey
3584811
158-
159void crypto_sign_ed25519_ref_fe25519_neg(crypto_sign_ed25519_ref_fe25519 *r, const crypto_sign_ed25519_ref_fe25519 *x)-
160{-
161 crypto_sign_ed25519_ref_fe25519 t;-
162 int i;-
163 for(i=0;i<32
i<32Description
TRUEevaluated 113822944 times by 3 tests
Evaluated by:
  • ssh-keygen
  • test_kex
  • test_sshkey
FALSEevaluated 3556967 times by 3 tests
Evaluated by:
  • ssh-keygen
  • test_kex
  • test_sshkey
;i++) t.v[i]=x->v[i];
executed 113822944 times by 3 tests: t.v[i]=x->v[i];
Executed by:
  • ssh-keygen
  • test_kex
  • test_sshkey
3556967-113822944
164 crypto_sign_ed25519_ref_fe25519_setzero(r);-
165 crypto_sign_ed25519_ref_fe25519_sub(r, r, &t);-
166}
executed 3556967 times by 3 tests: end of block
Executed by:
  • ssh-keygen
  • test_kex
  • test_sshkey
3556967
167-
168void crypto_sign_ed25519_ref_fe25519_add(crypto_sign_ed25519_ref_fe25519 *r, const crypto_sign_ed25519_ref_fe25519 *x, const crypto_sign_ed25519_ref_fe25519 *y)-
169{-
170 int i;-
171 for(i=0;i<32
i<32Description
TRUEevaluated 628788128 times by 3 tests
Evaluated by:
  • ssh-keygen
  • test_kex
  • test_sshkey
FALSEevaluated 19649629 times by 3 tests
Evaluated by:
  • ssh-keygen
  • test_kex
  • test_sshkey
;i++) r->v[i] = x->v[i] + y->v[i];
executed 628788128 times by 3 tests: r->v[i] = x->v[i] + y->v[i];
Executed by:
  • ssh-keygen
  • test_kex
  • test_sshkey
19649629-628788128
172 reduce_add_sub(r);-
173}
executed 19649629 times by 3 tests: end of block
Executed by:
  • ssh-keygen
  • test_kex
  • test_sshkey
19649629
174-
175void crypto_sign_ed25519_ref_fe25519_sub(crypto_sign_ed25519_ref_fe25519 *r, const crypto_sign_ed25519_ref_fe25519 *x, const crypto_sign_ed25519_ref_fe25519 *y)-
176{-
177 int i;-
178 crypto_uint32 t[32];-
179 t[0] = x->v[0] + 0x1da;-
180 t[31] = x->v[31] + 0xfe;-
181 for(i=1;i<31
i<31Description
TRUEevaluated 748791780 times by 3 tests
Evaluated by:
  • ssh-keygen
  • test_kex
  • test_sshkey
FALSEevaluated 24959726 times by 3 tests
Evaluated by:
  • ssh-keygen
  • test_kex
  • test_sshkey
;i++) t[i] = x->v[i] + 0x1fe;
executed 748791780 times by 3 tests: t[i] = x->v[i] + 0x1fe;
Executed by:
  • ssh-keygen
  • test_kex
  • test_sshkey
24959726-748791780
182 for(i=0;i<32
i<32Description
TRUEevaluated 798711232 times by 3 tests
Evaluated by:
  • ssh-keygen
  • test_kex
  • test_sshkey
FALSEevaluated 24959726 times by 3 tests
Evaluated by:
  • ssh-keygen
  • test_kex
  • test_sshkey
;i++) r->v[i] = t[i] - y->v[i];
executed 798711232 times by 3 tests: r->v[i] = t[i] - y->v[i];
Executed by:
  • ssh-keygen
  • test_kex
  • test_sshkey
24959726-798711232
183 reduce_add_sub(r);-
184}
executed 24959726 times by 3 tests: end of block
Executed by:
  • ssh-keygen
  • test_kex
  • test_sshkey
24959726
185-
186void crypto_sign_ed25519_ref_fe25519_mul(crypto_sign_ed25519_ref_fe25519 *r, const crypto_sign_ed25519_ref_fe25519 *x, const crypto_sign_ed25519_ref_fe25519 *y)-
187{-
188 int i,j;-
189 crypto_uint32 t[63];-
190 for(i=0;i<63
i<63Description
TRUEevaluated 2147483647 times by 3 tests
Evaluated by:
  • ssh-keygen
  • test_kex
  • test_sshkey
FALSEevaluated 48833984 times by 3 tests
Evaluated by:
  • ssh-keygen
  • test_kex
  • test_sshkey
;i++)t[i] = 0;
executed 2147483647 times by 3 tests: t[i] = 0;
Executed by:
  • ssh-keygen
  • test_kex
  • test_sshkey
48833984-Inf
191-
192 for(i=0;i<32
i<32Description
TRUEevaluated 1562687488 times by 3 tests
Evaluated by:
  • ssh-keygen
  • test_kex
  • test_sshkey
FALSEevaluated 48833984 times by 3 tests
Evaluated by:
  • ssh-keygen
  • test_kex
  • test_sshkey
;i++)
48833984-1562687488
193 for(j=0;j<32
j<32Description
TRUEevaluated 2147483647 times by 3 tests
Evaluated by:
  • ssh-keygen
  • test_kex
  • test_sshkey
FALSEevaluated 1562687488 times by 3 tests
Evaluated by:
  • ssh-keygen
  • test_kex
  • test_sshkey
;j++)
1562687488-Inf
194 t[i+j] += x->v[i] * y->v[j];
executed 2147483647 times by 3 tests: t[i+j] += x->v[i] * y->v[j];
Executed by:
  • ssh-keygen
  • test_kex
  • test_sshkey
Inf
195-
196 for(i=32;i<63
i<63Description
TRUEevaluated 1513853504 times by 3 tests
Evaluated by:
  • ssh-keygen
  • test_kex
  • test_sshkey
FALSEevaluated 48833984 times by 3 tests
Evaluated by:
  • ssh-keygen
  • test_kex
  • test_sshkey
;i++)
48833984-1513853504
197 r->v[i-32] = t[i-32] + times38(t[i]);
executed 1513853504 times by 3 tests: r->v[i-32] = t[i-32] + times38(t[i]);
Executed by:
  • ssh-keygen
  • test_kex
  • test_sshkey
1513853504
198 r->v[31] = t[31];-
199-
200 reduce_mul(r);-
201}
executed 48833984 times by 3 tests: end of block
Executed by:
  • ssh-keygen
  • test_kex
  • test_sshkey
48833984
202-
203void crypto_sign_ed25519_ref_fe25519_square(crypto_sign_ed25519_ref_fe25519 *r, const crypto_sign_ed25519_ref_fe25519 *x)-
204{-
205 crypto_sign_ed25519_ref_fe25519_mul(r, x, x);-
206}
executed 21442584 times by 3 tests: end of block
Executed by:
  • ssh-keygen
  • test_kex
  • test_sshkey
21442584
207-
208void crypto_sign_ed25519_ref_fe25519_invert(crypto_sign_ed25519_ref_fe25519 *r, const crypto_sign_ed25519_ref_fe25519 *x)-
209{-
210 crypto_sign_ed25519_ref_fe25519 z2;-
211 crypto_sign_ed25519_ref_fe25519 z9;-
212 crypto_sign_ed25519_ref_fe25519 z11;-
213 crypto_sign_ed25519_ref_fe25519 z2_5_0;-
214 crypto_sign_ed25519_ref_fe25519 z2_10_0;-
215 crypto_sign_ed25519_ref_fe25519 z2_20_0;-
216 crypto_sign_ed25519_ref_fe25519 z2_50_0;-
217 crypto_sign_ed25519_ref_fe25519 z2_100_0;-
218 crypto_sign_ed25519_ref_fe25519 t0;-
219 crypto_sign_ed25519_ref_fe25519 t1;-
220 int i;-
221-
222 crypto_sign_ed25519_ref_fe25519_square(&z2,x);-
223 crypto_sign_ed25519_ref_fe25519_square(&t1,&z2);-
224 crypto_sign_ed25519_ref_fe25519_square(&t0,&t1);-
225 crypto_sign_ed25519_ref_fe25519_mul(&z9,&t0,x);-
226 crypto_sign_ed25519_ref_fe25519_mul(&z11,&z9,&z2);-
227 crypto_sign_ed25519_ref_fe25519_square(&t0,&z11);-
228 crypto_sign_ed25519_ref_fe25519_mul(&z2_5_0,&t0,&z9);-
229-
230 crypto_sign_ed25519_ref_fe25519_square(&t0,&z2_5_0);-
231 crypto_sign_ed25519_ref_fe25519_square(&t1,&t0);-
232 crypto_sign_ed25519_ref_fe25519_square(&t0,&t1);-
233 crypto_sign_ed25519_ref_fe25519_square(&t1,&t0);-
234 crypto_sign_ed25519_ref_fe25519_square(&t0,&t1);-
235 crypto_sign_ed25519_ref_fe25519_mul(&z2_10_0,&t0,&z2_5_0);-
236-
237 crypto_sign_ed25519_ref_fe25519_square(&t0,&z2_10_0);-
238 crypto_sign_ed25519_ref_fe25519_square(&t1,&t0);-
239 for (i = 2;i < 10
i < 10Description
TRUEevaluated 56000 times by 3 tests
Evaluated by:
  • ssh-keygen
  • test_kex
  • test_sshkey
FALSEevaluated 14000 times by 3 tests
Evaluated by:
  • ssh-keygen
  • test_kex
  • test_sshkey
;i += 2) { crypto_sign_ed25519_ref_fe25519_square(&t0,&t1); crypto_sign_ed25519_ref_fe25519_square(&t1,&t0); }
executed 56000 times by 3 tests: end of block
Executed by:
  • ssh-keygen
  • test_kex
  • test_sshkey
14000-56000
240 crypto_sign_ed25519_ref_fe25519_mul(&z2_20_0,&t1,&z2_10_0);-
241-
242 crypto_sign_ed25519_ref_fe25519_square(&t0,&z2_20_0);-
243 crypto_sign_ed25519_ref_fe25519_square(&t1,&t0);-
244 for (i = 2;i < 20
i < 20Description
TRUEevaluated 126000 times by 3 tests
Evaluated by:
  • ssh-keygen
  • test_kex
  • test_sshkey
FALSEevaluated 14000 times by 3 tests
Evaluated by:
  • ssh-keygen
  • test_kex
  • test_sshkey
;i += 2) { crypto_sign_ed25519_ref_fe25519_square(&t0,&t1); crypto_sign_ed25519_ref_fe25519_square(&t1,&t0); }
executed 126000 times by 3 tests: end of block
Executed by:
  • ssh-keygen
  • test_kex
  • test_sshkey
14000-126000
245 crypto_sign_ed25519_ref_fe25519_mul(&t0,&t1,&z2_20_0);-
246-
247 crypto_sign_ed25519_ref_fe25519_square(&t1,&t0);-
248 crypto_sign_ed25519_ref_fe25519_square(&t0,&t1);-
249 for (i = 2;i < 10
i < 10Description
TRUEevaluated 56000 times by 3 tests
Evaluated by:
  • ssh-keygen
  • test_kex
  • test_sshkey
FALSEevaluated 14000 times by 3 tests
Evaluated by:
  • ssh-keygen
  • test_kex
  • test_sshkey
;i += 2) { crypto_sign_ed25519_ref_fe25519_square(&t1,&t0); crypto_sign_ed25519_ref_fe25519_square(&t0,&t1); }
executed 56000 times by 3 tests: end of block
Executed by:
  • ssh-keygen
  • test_kex
  • test_sshkey
14000-56000
250 crypto_sign_ed25519_ref_fe25519_mul(&z2_50_0,&t0,&z2_10_0);-
251-
252 crypto_sign_ed25519_ref_fe25519_square(&t0,&z2_50_0);-
253 crypto_sign_ed25519_ref_fe25519_square(&t1,&t0);-
254 for (i = 2;i < 50
i < 50Description
TRUEevaluated 336000 times by 3 tests
Evaluated by:
  • ssh-keygen
  • test_kex
  • test_sshkey
FALSEevaluated 14000 times by 3 tests
Evaluated by:
  • ssh-keygen
  • test_kex
  • test_sshkey
;i += 2) { crypto_sign_ed25519_ref_fe25519_square(&t0,&t1); crypto_sign_ed25519_ref_fe25519_square(&t1,&t0); }
executed 336000 times by 3 tests: end of block
Executed by:
  • ssh-keygen
  • test_kex
  • test_sshkey
14000-336000
255 crypto_sign_ed25519_ref_fe25519_mul(&z2_100_0,&t1,&z2_50_0);-
256-
257 crypto_sign_ed25519_ref_fe25519_square(&t1,&z2_100_0);-
258 crypto_sign_ed25519_ref_fe25519_square(&t0,&t1);-
259 for (i = 2;i < 100
i < 100Description
TRUEevaluated 686000 times by 3 tests
Evaluated by:
  • ssh-keygen
  • test_kex
  • test_sshkey
FALSEevaluated 14000 times by 3 tests
Evaluated by:
  • ssh-keygen
  • test_kex
  • test_sshkey
;i += 2) { crypto_sign_ed25519_ref_fe25519_square(&t1,&t0); crypto_sign_ed25519_ref_fe25519_square(&t0,&t1); }
executed 686000 times by 3 tests: end of block
Executed by:
  • ssh-keygen
  • test_kex
  • test_sshkey
14000-686000
260 crypto_sign_ed25519_ref_fe25519_mul(&t1,&t0,&z2_100_0);-
261-
262 crypto_sign_ed25519_ref_fe25519_square(&t0,&t1);-
263 crypto_sign_ed25519_ref_fe25519_square(&t1,&t0);-
264 for (i = 2;i < 50
i < 50Description
TRUEevaluated 336000 times by 3 tests
Evaluated by:
  • ssh-keygen
  • test_kex
  • test_sshkey
FALSEevaluated 14000 times by 3 tests
Evaluated by:
  • ssh-keygen
  • test_kex
  • test_sshkey
;i += 2) { crypto_sign_ed25519_ref_fe25519_square(&t0,&t1); crypto_sign_ed25519_ref_fe25519_square(&t1,&t0); }
executed 336000 times by 3 tests: end of block
Executed by:
  • ssh-keygen
  • test_kex
  • test_sshkey
14000-336000
265 crypto_sign_ed25519_ref_fe25519_mul(&t0,&t1,&z2_50_0);-
266-
267 crypto_sign_ed25519_ref_fe25519_square(&t1,&t0);-
268 crypto_sign_ed25519_ref_fe25519_square(&t0,&t1);-
269 crypto_sign_ed25519_ref_fe25519_square(&t1,&t0);-
270 crypto_sign_ed25519_ref_fe25519_square(&t0,&t1);-
271 crypto_sign_ed25519_ref_fe25519_square(&t1,&t0);-
272 crypto_sign_ed25519_ref_fe25519_mul(r,&t1,&z11);-
273}
executed 14000 times by 3 tests: end of block
Executed by:
  • ssh-keygen
  • test_kex
  • test_sshkey
14000
274-
275void crypto_sign_ed25519_ref_fe25519_pow2523(crypto_sign_ed25519_ref_fe25519 *r, const crypto_sign_ed25519_ref_fe25519 *x)-
276{-
277 crypto_sign_ed25519_ref_fe25519 z2;-
278 crypto_sign_ed25519_ref_fe25519 z9;-
279 crypto_sign_ed25519_ref_fe25519 z11;-
280 crypto_sign_ed25519_ref_fe25519 z2_5_0;-
281 crypto_sign_ed25519_ref_fe25519 z2_10_0;-
282 crypto_sign_ed25519_ref_fe25519 z2_20_0;-
283 crypto_sign_ed25519_ref_fe25519 z2_50_0;-
284 crypto_sign_ed25519_ref_fe25519 z2_100_0;-
285 crypto_sign_ed25519_ref_fe25519 t;-
286 int i;-
287-
288 crypto_sign_ed25519_ref_fe25519_square(&z2,x);-
289 crypto_sign_ed25519_ref_fe25519_square(&t,&z2);-
290 crypto_sign_ed25519_ref_fe25519_square(&t,&t);-
291 crypto_sign_ed25519_ref_fe25519_mul(&z9,&t,x);-
292 crypto_sign_ed25519_ref_fe25519_mul(&z11,&z9,&z2);-
293 crypto_sign_ed25519_ref_fe25519_square(&t,&z11);-
294 crypto_sign_ed25519_ref_fe25519_mul(&z2_5_0,&t,&z9);-
295-
296 crypto_sign_ed25519_ref_fe25519_square(&t,&z2_5_0);-
297 for (i = 1;i < 5
i < 5Description
TRUEevaluated 57596 times by 2 tests
Evaluated by:
  • test_kex
  • test_sshkey
FALSEevaluated 14399 times by 2 tests
Evaluated by:
  • test_kex
  • test_sshkey
;i++) { crypto_sign_ed25519_ref_fe25519_square(&t,&t); }
executed 57596 times by 2 tests: end of block
Executed by:
  • test_kex
  • test_sshkey
14399-57596
298 crypto_sign_ed25519_ref_fe25519_mul(&z2_10_0,&t,&z2_5_0);-
299-
300 crypto_sign_ed25519_ref_fe25519_square(&t,&z2_10_0);-
301 for (i = 1;i < 10
i < 10Description
TRUEevaluated 129591 times by 2 tests
Evaluated by:
  • test_kex
  • test_sshkey
FALSEevaluated 14399 times by 2 tests
Evaluated by:
  • test_kex
  • test_sshkey
;i++) { crypto_sign_ed25519_ref_fe25519_square(&t,&t); }
executed 129591 times by 2 tests: end of block
Executed by:
  • test_kex
  • test_sshkey
14399-129591
302 crypto_sign_ed25519_ref_fe25519_mul(&z2_20_0,&t,&z2_10_0);-
303-
304 crypto_sign_ed25519_ref_fe25519_square(&t,&z2_20_0);-
305 for (i = 1;i < 20
i < 20Description
TRUEevaluated 273581 times by 2 tests
Evaluated by:
  • test_kex
  • test_sshkey
FALSEevaluated 14399 times by 2 tests
Evaluated by:
  • test_kex
  • test_sshkey
;i++) { crypto_sign_ed25519_ref_fe25519_square(&t,&t); }
executed 273581 times by 2 tests: end of block
Executed by:
  • test_kex
  • test_sshkey
14399-273581
306 crypto_sign_ed25519_ref_fe25519_mul(&t,&t,&z2_20_0);-
307-
308 crypto_sign_ed25519_ref_fe25519_square(&t,&t);-
309 for (i = 1;i < 10
i < 10Description
TRUEevaluated 129591 times by 2 tests
Evaluated by:
  • test_kex
  • test_sshkey
FALSEevaluated 14399 times by 2 tests
Evaluated by:
  • test_kex
  • test_sshkey
;i++) { crypto_sign_ed25519_ref_fe25519_square(&t,&t); }
executed 129591 times by 2 tests: end of block
Executed by:
  • test_kex
  • test_sshkey
14399-129591
310 crypto_sign_ed25519_ref_fe25519_mul(&z2_50_0,&t,&z2_10_0);-
311-
312 crypto_sign_ed25519_ref_fe25519_square(&t,&z2_50_0);-
313 for (i = 1;i < 50
i < 50Description
TRUEevaluated 705551 times by 2 tests
Evaluated by:
  • test_kex
  • test_sshkey
FALSEevaluated 14399 times by 2 tests
Evaluated by:
  • test_kex
  • test_sshkey
;i++) { crypto_sign_ed25519_ref_fe25519_square(&t,&t); }
executed 705551 times by 2 tests: end of block
Executed by:
  • test_kex
  • test_sshkey
14399-705551
314 crypto_sign_ed25519_ref_fe25519_mul(&z2_100_0,&t,&z2_50_0);-
315-
316 crypto_sign_ed25519_ref_fe25519_square(&t,&z2_100_0);-
317 for (i = 1;i < 100
i < 100Description
TRUEevaluated 1425501 times by 2 tests
Evaluated by:
  • test_kex
  • test_sshkey
FALSEevaluated 14399 times by 2 tests
Evaluated by:
  • test_kex
  • test_sshkey
;i++) { crypto_sign_ed25519_ref_fe25519_square(&t,&t); }
executed 1425501 times by 2 tests: end of block
Executed by:
  • test_kex
  • test_sshkey
14399-1425501
318 crypto_sign_ed25519_ref_fe25519_mul(&t,&t,&z2_100_0);-
319-
320 crypto_sign_ed25519_ref_fe25519_square(&t,&t);-
321 for (i = 1;i < 50
i < 50Description
TRUEevaluated 705551 times by 2 tests
Evaluated by:
  • test_kex
  • test_sshkey
FALSEevaluated 14399 times by 2 tests
Evaluated by:
  • test_kex
  • test_sshkey
;i++) { crypto_sign_ed25519_ref_fe25519_square(&t,&t); }
executed 705551 times by 2 tests: end of block
Executed by:
  • test_kex
  • test_sshkey
14399-705551
322 crypto_sign_ed25519_ref_fe25519_mul(&t,&t,&z2_50_0);-
323-
324 crypto_sign_ed25519_ref_fe25519_square(&t,&t);-
325 crypto_sign_ed25519_ref_fe25519_square(&t,&t);-
326 crypto_sign_ed25519_ref_fe25519_mul(r,&t,x);-
327}
executed 14399 times by 2 tests: end of block
Executed by:
  • test_kex
  • test_sshkey
14399
Switch to Source codePreprocessed file

Generated by Squish Coco 4.2.2