Lines Matching defs:px

45 /* Checks if point P(px, py) is at infinity.  Uses affine coordinates. */
47 ec_GF2m_pt_is_inf_aff(const mp_int *px, const mp_int *py)
50 if ((mp_cmp_z(px) == 0) && (mp_cmp_z(py) == 0)) {
58 /* Sets P(px, py) to be the point at infinity. Uses affine coordinates. */
60 ec_GF2m_pt_set_inf_aff(mp_int *px, mp_int *py)
62 mp_zero(px);
70 ec_GF2m_pt_add_aff(const mp_int *px, const mp_int *py, const mp_int *qx,
80 MP_CHECKOK(mp_init(&lambda, FLAG(px)));
81 MP_CHECKOK(mp_init(&tempx, FLAG(px)));
82 MP_CHECKOK(mp_init(&tempy, FLAG(px)));
84 if (ec_GF2m_pt_is_inf_aff(px, py) == 0) {
92 MP_CHECKOK(mp_copy(px, rx));
97 /* if px != qx, then lambda = (py+qy) / (px+qx), tempx = a + lambda^2
98 * + lambda + px + qx */
99 if (mp_cmp(px, qx) != 0) {
101 MP_CHECKOK(group->meth->field_add(px, qx, &tempx, group->meth));
110 field_add(&tempx, px, &tempx, group->meth));
152 ec_GF2m_pt_sub_aff(const mp_int *px, const mp_int *py, const mp_int *qx,
160 MP_CHECKOK(mp_init(&nqy, FLAG(px)));
163 MP_CHECKOK(group->point_add(px, py, qx, &nqy, rx, ry, group));
172 ec_GF2m_pt_dbl_aff(const mp_int *px, const mp_int *py, mp_int *rx,
175 return group->point_add(px, py, px, py, rx, ry, group);
183 ec_GF2m_pt_mul_aff(const mp_int *n, const mp_int *px, const mp_int *py,
211 MP_CHECKOK(mp_copy(px, &qx));
276 ec_GF2m_validate_point(const mp_int *px, const mp_int *py, const ECGroup *group)
286 MP_CHECKOK(mp_init(&accl, FLAG(px)));
287 MP_CHECKOK(mp_init(&accr, FLAG(px)));
288 MP_CHECKOK(mp_init(&tmp, FLAG(px)));
289 MP_CHECKOK(mp_init(&pxt, FLAG(px)));
290 MP_CHECKOK(mp_init(&pyt, FLAG(px)));
293 if (ec_GF2m_pt_is_inf_aff(px, py) == MP_YES) {
300 if ((MP_SIGN(px) == MP_NEG) || (mp_cmp(px, &group->meth->irr) >= 0) ||
307 group->meth->field_enc(px, &pxt, group->meth);
310 mp_copy(px, &pxt);
332 MP_CHECKOK( ECPoint_mul(group, &group->order, px, py, &pxt, &pyt) );