diff options
author | Billy Brumley <bbrumley@gmail.com> | 2020-07-23 19:47:03 +0300 |
---|---|---|
committer | Dmitry Belyavskiy <beldmit@users.noreply.github.com> | 2020-07-23 19:57:43 +0300 |
commit | 259301a5adf2ef51b8f380b27fcead313669206e (patch) | |
tree | e93eba7fe40cfb89340c42449bd86320b053fd3d /ecp_id_tc26_gost_3410_2012_256_paramSetA.c | |
parent | 9242b82902544123f2050c3236f87e94600d4cc0 (diff) | |
download | gost-engine-259301a5adf2ef51b8f380b27fcead313669206e.zip gost-engine-259301a5adf2ef51b8f380b27fcead313669206e.tar.gz gost-engine-259301a5adf2ef51b8f380b27fcead313669206e.tar.bz2 |
Edwards map fix
ECCKiila Changes from
https://gitlab.com/nisec/ecckiila/-/issues/2
https://gitlab.com/nisec/ecckiila/-/commit/7445ecabef77965743e0ae8d39d7433b07820be6
* X3 -> X1
* eliminate a temp variable
X3 = X1 as pointers is the reason this was still passing unit tests.
But that might not hold in future versions of ECCKiila, so fix it now.
Diffstat (limited to 'ecp_id_tc26_gost_3410_2012_256_paramSetA.c')
-rw-r--r-- | ecp_id_tc26_gost_3410_2012_256_paramSetA.c | 32 |
1 files changed, 16 insertions, 16 deletions
diff --git a/ecp_id_tc26_gost_3410_2012_256_paramSetA.c b/ecp_id_tc26_gost_3410_2012_256_paramSetA.c index a3b234f..1528163 100644 --- a/ecp_id_tc26_gost_3410_2012_256_paramSetA.c +++ b/ecp_id_tc26_gost_3410_2012_256_paramSetA.c @@ -3320,10 +3320,10 @@ static void point_add_proj(pt_prj_t *R, const pt_prj_t *Q, const pt_prj_t *P) { */ static void point_edwards2legacy(pt_prj_t *Q, const pt_prj_t *P) { /* temporary variables */ - fe_t t0, t1; + fe_t t0; /* constants */ - const limb_t *T = const_T; const limb_t *S = const_S; + const limb_t *T = const_T; const limb_t *X1 = P->X; const limb_t *Y1 = P->Y; const limb_t *Z1 = P->Z; @@ -3333,13 +3333,13 @@ static void point_edwards2legacy(pt_prj_t *Q, const pt_prj_t *P) { limb_t *Z3 = Q->Z; /* the curve arith formula */ - fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_add(t0, Z1, Y1); - fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_sub(t1, Z1, Y1); - fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(T3, S, t0); + fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_add(T3, Z1, Y1); + fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_sub(t0, Z1, Y1); + fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(T3, S, T3); fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(Y3, Z1, T3); - fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(Z3, X3, t1); - fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(t1, t1, T); - fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_add(t0, T3, t1); + fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(Z3, X1, t0); + fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(t0, t0, T); + fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_add(t0, T3, t0); fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(X3, X1, t0); } @@ -3350,8 +3350,8 @@ static void point_edwards2legacy(pt_prj_t *Q, const pt_prj_t *P) { */ static void point_legacy2edwards(pt_prj_t *Q, const pt_aff_t *P) { /* constants */ - const limb_t *T = const_T; const limb_t *S = const_S; + const limb_t *T = const_T; const limb_t *X1 = P->X; const limb_t *Y1 = P->Y; limb_t *X3 = Q->X; @@ -8462,7 +8462,7 @@ static void point_add_proj(pt_prj_t *R, const pt_prj_t *Q, const pt_prj_t *P) { */ static void point_edwards2legacy(pt_prj_t *Q, const pt_prj_t *P) { /* temporary variables */ - fe_t t0, t1; + fe_t t0; /* constants */ const limb_t *T = const_T; const limb_t *S = const_S; @@ -8475,13 +8475,13 @@ static void point_edwards2legacy(pt_prj_t *Q, const pt_prj_t *P) { limb_t *Z3 = Q->Z; /* the curve arith formula */ - fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_add(t0, Z1, Y1); - fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_sub(t1, Z1, Y1); - fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(T3, S, t0); + fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_add(T3, Z1, Y1); + fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_sub(t0, Z1, Y1); + fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(T3, S, T3); fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(Y3, Z1, T3); - fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(Z3, X3, t1); - fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(t1, t1, T); - fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_add(t0, T3, t1); + fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(Z3, X1, t0); + fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(t0, t0, T); + fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_add(t0, T3, t0); fiat_id_tc26_gost_3410_2012_256_paramSetA_carry_mul(X3, X1, t0); } |