Lines Matching defs:px

49 /* Checks if point P(px, py) is at infinity.  Uses affine coordinates. */
51 ec_GFp_pt_is_inf_aff(const mp_int *px, const mp_int *py)
54 if ((mp_cmp_z(px) == 0) && (mp_cmp_z(py) == 0)) {
62 /* Sets P(px, py) to be the point at infinity. Uses affine coordinates. */
64 ec_GFp_pt_set_inf_aff(mp_int *px, mp_int *py)
66 mp_zero(px);
76 ec_GFp_pt_add_aff(const mp_int *px, const mp_int *py, const mp_int *qx,
87 MP_CHECKOK(mp_init(&lambda, FLAG(px)));
88 MP_CHECKOK(mp_init(&temp, FLAG(px)));
89 MP_CHECKOK(mp_init(&tempx, FLAG(px)));
90 MP_CHECKOK(mp_init(&tempy, FLAG(px)));
92 if (ec_GFp_pt_is_inf_aff(px, py) == 0) {
100 MP_CHECKOK(mp_copy(px, rx));
105 /* if px != qx, then lambda = (py-qy) / (px-qx) */
106 if (mp_cmp(px, qx) != 0) {
108 MP_CHECKOK(group->meth->field_sub(px, qx, &tempx, group->meth));
137 /* rx = lambda^2 - px - qx */
139 MP_CHECKOK(group->meth->field_sub(&tempx, px, &tempx, group->meth));
162 ec_GFp_pt_sub_aff(const mp_int *px, const mp_int *py, const mp_int *qx,
170 MP_CHECKOK(mp_init(&nqy, FLAG(px)));
173 res = group->point_add(px, py, qx, &nqy, rx, ry, group);
183 ec_GFp_pt_dbl_aff(const mp_int *px, const mp_int *py, mp_int *rx,
186 return ec_GFp_pt_add_aff(px, py, px, py, rx, ry, group);
196 ec_GFp_pt_mul_aff(const mp_int *n, const mp_int *px, const mp_int *py,
224 MP_CHECKOK(mp_copy(px, &qx));
289 ec_GFp_validate_point(const mp_int *px, const mp_int *py, const ECGroup *group)
299 MP_CHECKOK(mp_init(&accl, FLAG(px)));
300 MP_CHECKOK(mp_init(&accr, FLAG(px)));
301 MP_CHECKOK(mp_init(&tmp, FLAG(px)));
302 MP_CHECKOK(mp_init(&pxt, FLAG(px)));
303 MP_CHECKOK(mp_init(&pyt, FLAG(px)));
306 if (ec_GFp_pt_is_inf_aff(px, py) == MP_YES) {
313 if ((MP_SIGN(px) == MP_NEG) || (mp_cmp(px, &group->meth->irr) >= 0) ||
320 group->meth->field_enc(px, &pxt, group->meth);
323 mp_copy(px, &pxt);
343 MP_CHECKOK( ECPoint_mul(group, &group->order, px, py, &pxt, &pyt) );