Skip to content
Snippets Groups Projects
Commit 346cfb55 authored by Niels Möller's avatar Niels Möller
Browse files

Comment fixes.

parent 88a8a9e0
No related branches found
No related tags found
No related merge requests found
...@@ -72,9 +72,9 @@ ecc_add_ehh (const struct ecc_curve *ecc, ...@@ -72,9 +72,9 @@ ecc_add_ehh (const struct ecc_curve *ecc,
E = b*C*D 2 mul A, B, C, D, E E = b*C*D 2 mul A, B, C, D, E
F = B - E A, B, C, D, E, F F = B - E A, B, C, D, E, F
G = B + E A, C, D, F, G G = B + E A, C, D, F, G
x3 = a*f*[(x1+y1)(x2+y2) - c - d] 3 mul A, C, D, G x3 = A*F*[(x1+y1)(x2+y2) - C - D] 3 mul A, C, D, G
y3 = a*g*(d-c) 2 mul F, G y3 = A*G*(D-C) 2 mul F, G
z3 = f*g mul z3 = F*G mul
*/ */
#define A scratch #define A scratch
#define B (scratch + ecc->size) #define B (scratch + ecc->size)
......
...@@ -74,7 +74,10 @@ ecc_eh_to_a (const struct ecc_curve *ecc, ...@@ -74,7 +74,10 @@ ecc_eh_to_a (const struct ecc_curve *ecc,
ecc_modp_sub (ecc, izp, wp, vp); ecc_modp_sub (ecc, izp, wp, vp);
/* FIXME: For the infinity point, this subtraction gives zero (mod /* FIXME: For the infinity point, this subtraction gives zero (mod
p), and the inversion below fails and returns something else. */ p), which isn't invertible. For curve25519, the desired output is
x = 0, which we get if the modular inversion function returns 0
in this case. Need to check that modular inversion really returns
0. */
ecc_modp_mul (ecc, izp + ecc->size, izp, up); ecc_modp_mul (ecc, izp + ecc->size, izp, up);
/* Needs 3*size scratch */ /* Needs 3*size scratch */
ecc_modp_inv (ecc, izp, izp + ecc->size, izp + 2*ecc->size); ecc_modp_inv (ecc, izp, izp + ecc->size, izp + 2*ecc->size);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment