diff options
author | Richard Levitte <levitte@openssl.org> | 2019-10-27 15:28:29 +0100 |
---|---|---|
committer | Richard Levitte <levitte@openssl.org> | 2020-03-12 10:44:02 +0100 |
commit | 2972af109e10c5ce30e548190e3eee28327d6043 (patch) | |
tree | 192073525906c87871dc161511a5701491abc06f /include | |
parent | 6292475573367434f91f7526301388d50c6d0d67 (diff) |
PROV: Add RSA functionality for key generation
This includes added support in legacy controls
Reviewed-by: Shane Lontis <shane.lontis@oracle.com>
(Merged from https://github.com/openssl/openssl/pull/10289)
Diffstat (limited to 'include')
-rw-r--r-- | include/openssl/core_names.h | 2 | ||||
-rw-r--r-- | include/openssl/rsa.h | 16 |
2 files changed, 5 insertions, 13 deletions
diff --git a/include/openssl/core_names.h b/include/openssl/core_names.h index e2639ec1fc..1f67475a9a 100644 --- a/include/openssl/core_names.h +++ b/include/openssl/core_names.h @@ -221,7 +221,7 @@ extern "C" { #define OSSL_PKEY_PARAM_RSA_EXPONENT "rsa-exponent" #define OSSL_PKEY_PARAM_RSA_COEFFICIENT "rsa-coefficient" /* Key generation parameters */ -#define OSSL_PKEY_PARAM_RSA_BITS "bits" +#define OSSL_PKEY_PARAM_RSA_BITS OSSL_PKEY_PARAM_BITS #define OSSL_PKEY_PARAM_RSA_PRIMES "primes" /* Key Exchange parameters */ diff --git a/include/openssl/rsa.h b/include/openssl/rsa.h index 1f0687df24..49040bf7e6 100644 --- a/include/openssl/rsa.h +++ b/include/openssl/rsa.h @@ -111,6 +111,10 @@ int EVP_PKEY_CTX_get_rsa_padding(EVP_PKEY_CTX *ctx, int *pad_mode); int EVP_PKEY_CTX_set_rsa_pss_saltlen(EVP_PKEY_CTX *ctx, int saltlen); int EVP_PKEY_CTX_get_rsa_pss_saltlen(EVP_PKEY_CTX *ctx, int *saltlen); +int EVP_PKEY_CTX_set_rsa_keygen_bits(EVP_PKEY_CTX *ctx, int bits); +int EVP_PKEY_CTX_set_rsa_keygen_pubexp(EVP_PKEY_CTX *ctx, BIGNUM *pubexp); +int EVP_PKEY_CTX_set_rsa_keygen_primes(EVP_PKEY_CTX *ctx, int primes); + /* Salt length matches digest */ # define RSA_PSS_SALTLEN_DIGEST -1 /* Verify only: auto detect salt length */ @@ -124,18 +128,6 @@ int EVP_PKEY_CTX_get_rsa_pss_saltlen(EVP_PKEY_CTX *ctx, int *saltlen); EVP_PKEY_CTX_ctrl(ctx, EVP_PKEY_RSA_PSS, EVP_PKEY_OP_KEYGEN, \ EVP_PKEY_CTRL_RSA_PSS_SALTLEN, len, NULL) -# define EVP_PKEY_CTX_set_rsa_keygen_bits(ctx, bits) \ - RSA_pkey_ctx_ctrl(ctx, EVP_PKEY_OP_KEYGEN, \ - EVP_PKEY_CTRL_RSA_KEYGEN_BITS, bits, NULL) - -# define EVP_PKEY_CTX_set_rsa_keygen_pubexp(ctx, pubexp) \ - RSA_pkey_ctx_ctrl(ctx, EVP_PKEY_OP_KEYGEN, \ - EVP_PKEY_CTRL_RSA_KEYGEN_PUBEXP, 0, pubexp) - -# define EVP_PKEY_CTX_set_rsa_keygen_primes(ctx, primes) \ - RSA_pkey_ctx_ctrl(ctx, EVP_PKEY_OP_KEYGEN, \ - EVP_PKEY_CTRL_RSA_KEYGEN_PRIMES, primes, NULL) - int EVP_PKEY_CTX_set_rsa_mgf1_md(EVP_PKEY_CTX *ctx, const EVP_MD *md); int EVP_PKEY_CTX_set_rsa_mgf1_md_name(EVP_PKEY_CTX *ctx, const char *mdname, const char *mdprops); |