]> git.ipfire.org Git - thirdparty/nettle.git/commitdiff
Generalize ECC_J_TO_A_ITCH.
authorNiels Möller <nisse@lysator.liu.se>
Fri, 13 Nov 2020 18:59:36 +0000 (19:59 +0100)
committerNiels Möller <nisse@lysator.liu.se>
Fri, 13 Nov 2020 18:59:36 +0000 (19:59 +0100)
* ecc-internal.h (ECC_J_TO_A_ITCH): Generalize, and take invert
itch as an argument, similarly to ECC_EH_TO_A_ITCH. Updated all
secp and gost curve definitions to use it.

ChangeLog
ecc-gost-gc256b.c
ecc-gost-gc512a.c
ecc-internal.h
ecc-secp192r1.c
ecc-secp224r1.c
ecc-secp256r1.c
ecc-secp384r1.c
ecc-secp521r1.c

index fb4b6ab5e6df7e088fc55d37e7dec4490c85398f..1d4699b1156832df235ef570bc10c0abe373cda7 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2020-11-13  Niels Möller  <nisse@lysator.liu.se>
+
+       * ecc-internal.h (ECC_J_TO_A_ITCH): Generalize, and take invert
+       itch as an argument, similarly to ECC_EH_TO_A_ITCH. Updated all
+       secp and gost curve definitions to use it.
+
 2020-10-21  Niels Möller  <nisse@lysator.liu.se>
 
        * ecc-secp384r1.c (ecc_secp384r1_inv): New function, modular
index 1490d7a8f9fcb6113f743c456a4feeb77f6982d7..988368e99ae962d9df3dd3fc10964ee13dd1410a 100644 (file)
@@ -107,7 +107,7 @@ const struct ecc_curve _nettle_gost_gc256b =
   ECC_DUP_JJ_ITCH (ECC_LIMB_SIZE),
   ECC_MUL_A_ITCH (ECC_LIMB_SIZE),
   ECC_MUL_G_ITCH (ECC_LIMB_SIZE),
-  ECC_J_TO_A_ITCH (ECC_LIMB_SIZE),
+  ECC_J_TO_A_ITCH (ECC_LIMB_SIZE, ECC_MOD_INV_ITCH(ECC_LIMB_SIZE)),
 
   ecc_add_jja,
   ecc_add_jjj,
index 0f6e9b6d81892b5db611616f8bb2c76198969e0b..0b9864efdc366df198fc6f6d5917fef8e100f17d 100644 (file)
@@ -107,7 +107,7 @@ const struct ecc_curve _nettle_gost_gc512a =
   ECC_DUP_JJ_ITCH (ECC_LIMB_SIZE),
   ECC_MUL_A_ITCH (ECC_LIMB_SIZE),
   ECC_MUL_G_ITCH (ECC_LIMB_SIZE),
-  ECC_J_TO_A_ITCH (ECC_LIMB_SIZE),
+  ECC_J_TO_A_ITCH (ECC_LIMB_SIZE, ECC_MOD_INV_ITCH(ECC_LIMB_SIZE)),
 
   ecc_add_jja,
   ecc_add_jjj,
index d26458e1e76bc566d2c4865feaf59496c7f41e63..2b05991471b2821073b19520c1830e9936e0a9ff 100644 (file)
@@ -439,8 +439,7 @@ curve448_eh_to_x (mp_limb_t *xp, const mp_limb_t *p,
 
 /* Current scratch needs: */
 #define ECC_MOD_INV_ITCH(size) (2*(size))
-/* Only valid when using the general ecc_mod_inv ! */
-#define ECC_J_TO_A_ITCH(size) (4*(size))
+#define ECC_J_TO_A_ITCH(size, inv) (2*(size)+(inv))
 #define ECC_EH_TO_A_ITCH(size, inv) (2*(size)+(inv))
 #define ECC_DUP_JJ_ITCH(size) (4*(size))
 #define ECC_DUP_EH_ITCH(size) (3*(size))
index eb46559bbc78a87e3546b2d657396f255d517daa..285278a5951bcef0146fde131c040c850262720c 100644 (file)
@@ -235,7 +235,7 @@ const struct ecc_curve _nettle_secp_192r1 =
   ECC_DUP_JJ_ITCH (ECC_LIMB_SIZE),
   ECC_MUL_A_ITCH (ECC_LIMB_SIZE),
   ECC_MUL_G_ITCH (ECC_LIMB_SIZE),
-  2*ECC_LIMB_SIZE + ECC_SECP192R1_INV_ITCH,
+  ECC_J_TO_A_ITCH(ECC_LIMB_SIZE, ECC_SECP192R1_INV_ITCH),
 
   ecc_add_jja,
   ecc_add_jjj,
index 4b0fd9baf02cda88a36c778b6642d51a39541a42..98260412c030c0433d2c70f304ff69a4de87219a 100644 (file)
@@ -163,7 +163,7 @@ const struct ecc_curve _nettle_secp_224r1 =
   ECC_DUP_JJ_ITCH (ECC_LIMB_SIZE),
   ECC_MUL_A_ITCH (ECC_LIMB_SIZE),
   ECC_MUL_G_ITCH (ECC_LIMB_SIZE),
-  2*ECC_LIMB_SIZE + ECC_SECP224R1_INV_ITCH,
+  ECC_J_TO_A_ITCH(ECC_LIMB_SIZE, ECC_SECP224R1_INV_ITCH),
 
   ecc_add_jja,
   ecc_add_jjj,
index d813da5d1de2e49678d57d6ebf13c776ada0a1d5..9bdd0077e382d8711b13f6f5ef77890dbac943a8 100644 (file)
@@ -345,7 +345,7 @@ const struct ecc_curve _nettle_secp_256r1 =
   ECC_DUP_JJ_ITCH (ECC_LIMB_SIZE),
   ECC_MUL_A_ITCH (ECC_LIMB_SIZE),
   ECC_MUL_G_ITCH (ECC_LIMB_SIZE),
-  2*ECC_LIMB_SIZE + ECC_SECP256R1_INV_ITCH,
+  ECC_J_TO_A_ITCH(ECC_LIMB_SIZE, ECC_SECP256R1_INV_ITCH),
 
   ecc_add_jja,
   ecc_add_jjj,
index c51aa260ee2cb4f85c90f70a737207918fc58e33..fef47036742b45f85f165ee04f1da53652e04908 100644 (file)
@@ -255,7 +255,7 @@ const struct ecc_curve _nettle_secp_384r1 =
   ECC_DUP_JJ_ITCH (ECC_LIMB_SIZE),
   ECC_MUL_A_ITCH (ECC_LIMB_SIZE),
   ECC_MUL_G_ITCH (ECC_LIMB_SIZE),
-  2*ECC_LIMB_SIZE + ECC_SECP384R1_INV_ITCH,
+  ECC_J_TO_A_ITCH(ECC_LIMB_SIZE, ECC_SECP384R1_INV_ITCH),
 
   ecc_add_jja,
   ecc_add_jjj,
index 0d9f88fc3d784c43342735463402a263dac490e4..42b7e1560b6458c0a0b65bf639b4901383dd056e 100644 (file)
@@ -172,7 +172,7 @@ const struct ecc_curve _nettle_secp_521r1 =
   ECC_DUP_JJ_ITCH (ECC_LIMB_SIZE),
   ECC_MUL_A_ITCH (ECC_LIMB_SIZE),
   ECC_MUL_G_ITCH (ECC_LIMB_SIZE),
-  2*ECC_LIMB_SIZE + ECC_SECP521R1_INV_ITCH,
+  ECC_J_TO_A_ITCH(ECC_LIMB_SIZE, ECC_SECP521R1_INV_ITCH),
 
   ecc_add_jja,
   ecc_add_jjj,