Diffie-Hellman/Math: introduced the proposed changes by Alexander Kurpiers

addmod and submod are moved to the end of the math descriptor, in order
to be able to run existing software against a new version of ltc without need
to rebuild the software.
This commit is contained in:
Steffen Jaeckel 2011-01-18 21:16:11 +01:00
parent 6fecec107d
commit edf11c62c0
4 changed files with 30 additions and 27 deletions

View File

@ -258,24 +258,6 @@ typedef struct {
*/
int (*lcm)(void *a, void *b, void *c);
/** Modular addition
@param a The first source
@param b The second source
@param c The modulus
@param d The destination (a + b mod c)
@return CRYPT_OK on success
*/
int (*addmod)(void *a, void *b, void *c, void *d);
/** Modular substraction
@param a The first source
@param b The second source
@param c The modulus
@param d The destination (a - b mod c)
@return CRYPT_OK on success
*/
int (*submod)(void *a, void *b, void *c, void *d);
/** Modular multiplication
@param a The first source
@param b The second source
@ -429,6 +411,26 @@ typedef struct {
int (*rsa_me)(const unsigned char *in, unsigned long inlen,
unsigned char *out, unsigned long *outlen, int which,
rsa_key *key);
/* ---- basic math continued ---- */
/** Modular addition
@param a The first source
@param b The second source
@param c The modulus
@param d The destination (a + b mod c)
@return CRYPT_OK on success
*/
int (*addmod)(void *a, void *b, void *c, void *d);
/** Modular substraction
@param a The first source
@param b The second source
@param c The modulus
@param d The destination (a - b mod c)
@return CRYPT_OK on success
*/
int (*submod)(void *a, void *b, void *c, void *d);
} ltc_math_descriptor;
extern ltc_math_descriptor ltc_mp;

View File

@ -449,8 +449,6 @@ const ltc_math_descriptor gmp_desc = {
&gcd,
&lcm,
&addmod,
&submod,
&mulmod,
&sqrmod,
&invmod,
@ -489,8 +487,10 @@ const ltc_math_descriptor gmp_desc = {
&rsa_make_key,
&rsa_exptmod,
#else
NULL, NULL
NULL, NULL,
#endif
&addmod,
&submod,
};

View File

@ -451,8 +451,6 @@ const ltc_math_descriptor ltm_desc = {
&gcd,
&lcm,
&addmod,
&submod,
&mulmod,
&sqrmod,
&invmod,
@ -491,8 +489,11 @@ const ltc_math_descriptor ltm_desc = {
&rsa_make_key,
&rsa_exptmod,
#else
NULL, NULL
NULL, NULL,
#endif
&addmod,
&submod,
};

View File

@ -739,8 +739,6 @@ const ltc_math_descriptor tfm_desc = {
&gcd,
&lcm,
&addmod,
&submod,
&mulmod,
&sqrmod,
&invmod,
@ -784,8 +782,10 @@ const ltc_math_descriptor tfm_desc = {
&rsa_make_key,
&rsa_exptmod,
#else
NULL, NULL
NULL, NULL,
#endif
&addmod,
&submod,
};