rejoined diffie hellman code from ltc 1.05, thanks to Alexander Kurpiers

This commit is contained in:
Steffen Jaeckel
2011-01-18 20:06:03 +01:00
parent 5039e6520f
commit 6fecec107d
14 changed files with 1594 additions and 1 deletions
+24
View File
@@ -305,6 +305,28 @@ static int lcm(void *a, void *b, void *c)
return CRYPT_OK;
}
static int addmod(void *a, void *b, void *c, void *d)
{
LTC_ARGCHK(a != NULL);
LTC_ARGCHK(b != NULL);
LTC_ARGCHK(c != NULL);
LTC_ARGCHK(d != NULL);
mpz_add(d, a, b);
mpz_mod(d, d, c);
return CRYPT_OK;
}
static int submod(void *a, void *b, void *c, void *d)
{
LTC_ARGCHK(a != NULL);
LTC_ARGCHK(b != NULL);
LTC_ARGCHK(c != NULL);
LTC_ARGCHK(d != NULL);
mpz_sub(d, a, b);
mpz_mod(d, d, c);
return CRYPT_OK;
}
static int mulmod(void *a, void *b, void *c, void *d)
{
LTC_ARGCHK(a != NULL);
@@ -427,6 +449,8 @@ const ltc_math_descriptor gmp_desc = {
&gcd,
&lcm,
&addmod,
&submod,
&mulmod,
&sqrmod,
&invmod,
+20
View File
@@ -308,6 +308,24 @@ static int lcm(void *a, void *b, void *c)
return mpi_to_ltc_error(mp_lcm(a, b, c));
}
static int addmod(void *a, void *b, void *c, void *d)
{
LTC_ARGCHK(a != NULL);
LTC_ARGCHK(b != NULL);
LTC_ARGCHK(c != NULL);
LTC_ARGCHK(d != NULL);
return mpi_to_ltc_error(mp_addmod(a,b,c,d));
}
static int submod(void *a, void *b, void *c, void *d)
{
LTC_ARGCHK(a != NULL);
LTC_ARGCHK(b != NULL);
LTC_ARGCHK(c != NULL);
LTC_ARGCHK(d != NULL);
return mpi_to_ltc_error(mp_submod(a,b,c,d));
}
static int mulmod(void *a, void *b, void *c, void *d)
{
LTC_ARGCHK(a != NULL);
@@ -433,6 +451,8 @@ const ltc_math_descriptor ltm_desc = {
&gcd,
&lcm,
&addmod,
&submod,
&mulmod,
&sqrmod,
&invmod,
+20
View File
@@ -319,6 +319,24 @@ static int lcm(void *a, void *b, void *c)
return CRYPT_OK;
}
static int addmod(void *a, void *b, void *c, void *d)
{
LTC_ARGCHK(a != NULL);
LTC_ARGCHK(b != NULL);
LTC_ARGCHK(c != NULL);
LTC_ARGCHK(d != NULL);
return tfm_to_ltc_error(fp_addmod(a,b,c,d));
}
static int submod(void *a, void *b, void *c, void *d)
{
LTC_ARGCHK(a != NULL);
LTC_ARGCHK(b != NULL);
LTC_ARGCHK(c != NULL);
LTC_ARGCHK(d != NULL);
return tfm_to_ltc_error(fp_submod(a,b,c,d));
}
static int mulmod(void *a, void *b, void *c, void *d)
{
LTC_ARGCHK(a != NULL);
@@ -721,6 +739,8 @@ const ltc_math_descriptor tfm_desc = {
&gcd,
&lcm,
&addmod,
&submod,
&mulmod,
&sqrmod,
&invmod,