Lines Matching refs:group
60 ECPoint_mul(const ECGroup *group, const mp_int *k, const mp_int *px, in ECPoint_mul() argument
66 ARGCHK((k != NULL) && (group != NULL), MP_BADARG); in ECPoint_mul()
70 if (mp_cmp(k, &group->order) > 0) { in ECPoint_mul()
72 MP_CHECKOK(mp_mod(k, &group->order, &kt)); in ECPoint_mul()
81 if (group->base_point_mul) { in ECPoint_mul()
82 MP_CHECKOK(group->base_point_mul(&kt, rx, ry, group)); in ECPoint_mul()
84 MP_CHECKOK(group-> in ECPoint_mul()
85 point_mul(&kt, &group->genx, &group->geny, rx, ry, in ECPoint_mul()
86 group)); in ECPoint_mul()
89 if (group->meth->field_enc) { in ECPoint_mul()
90 MP_CHECKOK(group->meth->field_enc(px, rx, group->meth)); in ECPoint_mul()
91 MP_CHECKOK(group->meth->field_enc(py, ry, group->meth)); in ECPoint_mul()
92 MP_CHECKOK(group->point_mul(&kt, rx, ry, rx, ry, group)); in ECPoint_mul()
94 MP_CHECKOK(group->point_mul(&kt, px, py, rx, ry, group)); in ECPoint_mul()
97 if (group->meth->field_dec) { in ECPoint_mul()
98 MP_CHECKOK(group->meth->field_dec(rx, rx, group->meth)); in ECPoint_mul()
99 MP_CHECKOK(group->meth->field_dec(ry, ry, group->meth)); in ECPoint_mul()
116 const ECGroup *group) in ec_pts_mul_basic() argument
121 ARGCHK(group != NULL, MP_BADARG); in ec_pts_mul_basic()
128 return ECPoint_mul(group, k2, px, py, rx, ry); in ec_pts_mul_basic()
130 return ECPoint_mul(group, k1, NULL, NULL, rx, ry); in ec_pts_mul_basic()
138 MP_CHECKOK(ECPoint_mul(group, k1, NULL, NULL, &sx, &sy)); in ec_pts_mul_basic()
139 MP_CHECKOK(ECPoint_mul(group, k2, px, py, rx, ry)); in ec_pts_mul_basic()
141 if (group->meth->field_enc) { in ec_pts_mul_basic()
142 MP_CHECKOK(group->meth->field_enc(&sx, &sx, group->meth)); in ec_pts_mul_basic()
143 MP_CHECKOK(group->meth->field_enc(&sy, &sy, group->meth)); in ec_pts_mul_basic()
144 MP_CHECKOK(group->meth->field_enc(rx, rx, group->meth)); in ec_pts_mul_basic()
145 MP_CHECKOK(group->meth->field_enc(ry, ry, group->meth)); in ec_pts_mul_basic()
148 MP_CHECKOK(group->point_add(&sx, &sy, rx, ry, rx, ry, group)); in ec_pts_mul_basic()
150 if (group->meth->field_dec) { in ec_pts_mul_basic()
151 MP_CHECKOK(group->meth->field_dec(rx, rx, group->meth)); in ec_pts_mul_basic()
152 MP_CHECKOK(group->meth->field_dec(ry, ry, group->meth)); in ec_pts_mul_basic()
171 const ECGroup *group) in ec_pts_mul_simul_w2() argument
179 ARGCHK(group != NULL, MP_BADARG); in ec_pts_mul_simul_w2()
186 return ECPoint_mul(group, k2, px, py, rx, ry); in ec_pts_mul_simul_w2()
188 return ECPoint_mul(group, k1, NULL, NULL, rx, ry); in ec_pts_mul_simul_w2()
212 if (group->meth->field_enc) { in ec_pts_mul_simul_w2()
213 MP_CHECKOK(group->meth-> in ec_pts_mul_simul_w2()
214 field_enc(px, &precomp[1][0][0], group->meth)); in ec_pts_mul_simul_w2()
215 MP_CHECKOK(group->meth-> in ec_pts_mul_simul_w2()
216 field_enc(py, &precomp[1][0][1], group->meth)); in ec_pts_mul_simul_w2()
221 MP_CHECKOK(mp_copy(&group->genx, &precomp[0][1][0])); in ec_pts_mul_simul_w2()
222 MP_CHECKOK(mp_copy(&group->geny, &precomp[0][1][1])); in ec_pts_mul_simul_w2()
226 MP_CHECKOK(mp_copy(&group->genx, &precomp[1][0][0])); in ec_pts_mul_simul_w2()
227 MP_CHECKOK(mp_copy(&group->geny, &precomp[1][0][1])); in ec_pts_mul_simul_w2()
228 if (group->meth->field_enc) { in ec_pts_mul_simul_w2()
229 MP_CHECKOK(group->meth-> in ec_pts_mul_simul_w2()
230 field_enc(px, &precomp[0][1][0], group->meth)); in ec_pts_mul_simul_w2()
231 MP_CHECKOK(group->meth-> in ec_pts_mul_simul_w2()
232 field_enc(py, &precomp[0][1][1], group->meth)); in ec_pts_mul_simul_w2()
241 MP_CHECKOK(group-> in ec_pts_mul_simul_w2()
243 &precomp[2][0][0], &precomp[2][0][1], group)); in ec_pts_mul_simul_w2()
244 MP_CHECKOK(group-> in ec_pts_mul_simul_w2()
247 &precomp[3][0][0], &precomp[3][0][1], group)); in ec_pts_mul_simul_w2()
250 MP_CHECKOK(group-> in ec_pts_mul_simul_w2()
253 &precomp[i][1][0], &precomp[i][1][1], group)); in ec_pts_mul_simul_w2()
256 MP_CHECKOK(group-> in ec_pts_mul_simul_w2()
258 &precomp[0][2][0], &precomp[0][2][1], group)); in ec_pts_mul_simul_w2()
260 MP_CHECKOK(group-> in ec_pts_mul_simul_w2()
263 &precomp[i][2][0], &precomp[i][2][1], group)); in ec_pts_mul_simul_w2()
266 MP_CHECKOK(group-> in ec_pts_mul_simul_w2()
269 &precomp[0][3][0], &precomp[0][3][1], group)); in ec_pts_mul_simul_w2()
271 MP_CHECKOK(group-> in ec_pts_mul_simul_w2()
274 &precomp[i][3][0], &precomp[i][3][1], group)); in ec_pts_mul_simul_w2()
291 MP_CHECKOK(group->point_dbl(rx, ry, rx, ry, group)); in ec_pts_mul_simul_w2()
292 MP_CHECKOK(group->point_dbl(rx, ry, rx, ry, group)); in ec_pts_mul_simul_w2()
294 MP_CHECKOK(group-> in ec_pts_mul_simul_w2()
296 &precomp[ai][bi][1], rx, ry, group)); in ec_pts_mul_simul_w2()
299 if (group->meth->field_dec) { in ec_pts_mul_simul_w2()
300 MP_CHECKOK(group->meth->field_dec(rx, rx, group->meth)); in ec_pts_mul_simul_w2()
301 MP_CHECKOK(group->meth->field_dec(ry, ry, group->meth)); in ec_pts_mul_simul_w2()
319 ECPoints_mul(const ECGroup *group, const mp_int *k1, const mp_int *k2, in ECPoints_mul() argument
329 ARGCHK(group != NULL, MP_BADARG); in ECPoints_mul()
333 if (mp_cmp(k1, &group->order) >= 0) { in ECPoints_mul()
335 MP_CHECKOK(mp_mod(k1, &group->order, &k1t)); in ECPoints_mul()
344 if (mp_cmp(k2, &group->order) >= 0) { in ECPoints_mul()
346 MP_CHECKOK(mp_mod(k2, &group->order, &k2t)); in ECPoints_mul()
356 if (group->points_mul) { in ECPoints_mul()
357 res = group->points_mul(k1p, k2p, px, py, rx, ry, group); in ECPoints_mul()
359 res = ec_pts_mul_simul_w2(k1p, k2p, px, py, rx, ry, group); in ECPoints_mul()