summaryrefslogtreecommitdiff
path: root/rsa.c
diff options
context:
space:
mode:
Diffstat (limited to 'rsa.c')
-rw-r--r--rsa.c11
1 files changed, 7 insertions, 4 deletions
diff --git a/rsa.c b/rsa.c
index 113ee7fc4..66561a421 100644
--- a/rsa.c
+++ b/rsa.c
@@ -60,7 +60,7 @@
60 */ 60 */
61 61
62#include "includes.h" 62#include "includes.h"
63RCSID("$OpenBSD: rsa.c,v 1.23 2001/06/27 05:42:24 markus Exp $"); 63RCSID("$OpenBSD: rsa.c,v 1.24 2001/12/27 18:22:16 markus Exp $");
64 64
65#include "rsa.h" 65#include "rsa.h"
66#include "log.h" 66#include "log.h"
@@ -120,14 +120,17 @@ rsa_private_decrypt(BIGNUM *out, BIGNUM *in, RSA *key)
120 return len; 120 return len;
121} 121}
122 122
123/* calculate p-1 and q-1 */
123void 124void
124rsa_generate_additional_parameters(RSA *rsa) 125rsa_generate_additional_parameters(RSA *rsa)
125{ 126{
126 BIGNUM *aux; 127 BIGNUM *aux;
127 BN_CTX *ctx; 128 BN_CTX *ctx;
128 /* Generate additional parameters */ 129
129 aux = BN_new(); 130 if ((aux = BN_new()) == NULL)
130 ctx = BN_CTX_new(); 131 fatal("rsa_generate_additional_parameters: BN_new failed");
132 if ((ctx = BN_CTX_new()) == NULL)
133 fatal("rsa_generate_additional_parameters: BN_CTX_new failed");
131 134
132 BN_sub(aux, rsa->q, BN_value_one()); 135 BN_sub(aux, rsa->q, BN_value_one());
133 BN_mod(rsa->dmq1, rsa->d, aux, ctx); 136 BN_mod(rsa->dmq1, rsa->d, aux, ctx);