X-Git-Url: https://git.distorted.org.uk/u/mdw/putty/blobdiff_plain/c5fbd713231731ca26d4f2fd0791f536b3523ca8..59600f67b6dd739bb31a2cb23e887adef13c3ac8:/sshrsa.c diff --git a/sshrsa.c b/sshrsa.c index d39f8462..bc23c43f 100644 --- a/sshrsa.c +++ b/sshrsa.c @@ -65,7 +65,6 @@ void rsaencrypt(unsigned char *data, int length, struct RSAKey *key) { w = (key->bytes+1)/2; b1 = newbn(w); - b2 = newbn(w); p = data; for (i=1; i<=w; i++) @@ -78,7 +77,7 @@ void rsaencrypt(unsigned char *data, int length, struct RSAKey *key) { b1[1+i/2] |= byte; } - modpow(b1, key->exponent, key->modulus, b2); + b2 = modpow(b1, key->exponent, key->modulus); p = data; for (i=key->bytes; i-- ;) { @@ -96,8 +95,7 @@ void rsaencrypt(unsigned char *data, int length, struct RSAKey *key) { Bignum rsadecrypt(Bignum input, struct RSAKey *key) { Bignum ret; - ret = newbn(key->modulus[0]); - modpow(input, key->private_exponent, key->modulus, ret); + ret = modpow(input, key->private_exponent, key->modulus); return ret; }