mp_limb_t *pe;
mp_limb_t *pa;
mp_limb_t *scratch;
- const struct ecc_ref_point g2 =
+ const struct ecc_ref_point g2 =
{ /* In Edwards coordinates:
x = 0x1a1c31f8665368131698fecfd54233fcdc638bb46d25cc61d8bc4bcdbfbb4459,
y = 0x2260cdf3092329c21da25ee8c9a21f5697390f51643851560e5f46ae6af8a3c9
"13b57e011700e8ae050a00945d2ba2f3"
"77659eb28d8d391ebcd70465c72df563"
};
+ const struct ecc_ref_point g4 =
+ {
+ "79ce98b7e0689d7de7d1d074a15b315f"
+ "fe1805dfcd5d2a230fee85e4550013ef",
+ "075af5bf4ebdc75c8fe26873427d275d"
+ "73c0fb13da361077a565539f46de1c30"
+ };
g = xalloc_limbs (ecc_size_j (ecc));
z = xalloc_limbs (ecc_size_j (ecc));
ecc_dup_eh (ecc, pe, z, scratch);
if (!point_zero_p (ecc, pe))
die ("dup of zero point failed.\n");
-
+
ecc_dup_eh (ecc, pe, g, scratch);
- gmp_fprintf (stderr, "g2 (edwards):\n"
- "x = %Nx\n"
- "y = %Nx\n"
- "z = %Nx\n",
- pe, ecc->size,
- pe + ecc->size, ecc->size,
- pe + 2*ecc->size, ecc->size);
ecc_eh_to_a (ecc, 0, pa, pe, scratch);
test_ecc_point (ecc, &g2, pa);
+
+ ecc_dup_eh (ecc, pe, pe, scratch);
+
+ ecc_eh_to_a (ecc, 0, pa, pe, scratch);
+ test_ecc_point (ecc, &g4, pa);
}