diff options
author | Shane Lontis <shane.lontis@oracle.com> | 2020-02-16 13:03:46 +1000 |
---|---|---|
committer | Shane Lontis <shane.lontis@oracle.com> | 2020-02-16 13:03:46 +1000 |
commit | 8083fd3a183d4c881d6b15727cbc6cb7faeb3280 (patch) | |
tree | 82e998aa30cc9dc610b4f262df1f7ef73b23edad /include/crypto/dsa.h | |
parent | 98ad3fe82bd3e7e7f929dd1fa4ef3915426002c0 (diff) |
Add FFC param/key validation
Embed libctx in dsa and dh objects and cleanup internal methods to not pass libctx (This makes it consistent with the rsa changes)
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/10910)
Diffstat (limited to 'include/crypto/dsa.h')
-rw-r--r-- | include/crypto/dsa.h | 19 |
1 files changed, 11 insertions, 8 deletions
diff --git a/include/crypto/dsa.h b/include/crypto/dsa.h index 1865fe0f77..1da23a8a7b 100644 --- a/include/crypto/dsa.h +++ b/include/crypto/dsa.h @@ -1,5 +1,5 @@ /* - * Copyright 2019 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2019-2020 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the Apache License 2.0 (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -12,16 +12,19 @@ #define DSA_PARAMGEN_TYPE_FIPS_186_2 1 /* Use legacy FIPS186-2 standard */ #define DSA_PARAMGEN_TYPE_FIPS_186_4 2 /* Use FIPS186-4 standard */ -int dsa_generate_parameters_ctx(OPENSSL_CTX *libctx, DSA *dsa, int bits, - const unsigned char *seed_in, int seed_len, - int *counter_ret, unsigned long *h_ret, - BN_GENCB *cb); +DSA *dsa_new_with_ctx(OPENSSL_CTX *libctx); -int dsa_generate_ffc_parameters(OPENSSL_CTX *libctx, DSA *dsa, int type, +int dsa_generate_ffc_parameters(DSA *dsa, int type, int pbits, int qbits, int gindex, BN_GENCB *cb); -int dsa_sign_int(OPENSSL_CTX *libctx, int type, const unsigned char *dgst, +int dsa_sign_int(int type, const unsigned char *dgst, int dlen, unsigned char *sig, unsigned int *siglen, DSA *dsa); -int dsa_generate_key_ctx(OPENSSL_CTX *libctx, DSA *dsa); const unsigned char *dsa_algorithmidentifier_encoding(int md_nid, size_t *len); +int dsa_generate_public_key(BN_CTX *ctx, const DSA *dsa, const BIGNUM *priv_key, + BIGNUM *pub_key); +int dsa_check_params(const DSA *dsa, int *ret); +int dsa_check_pub_key(const DSA *dsa, const BIGNUM *pub_key, int *ret); +int dsa_check_pub_key_partial(const DSA *dsa, const BIGNUM *pub_key, int *ret); +int dsa_check_priv_key(const DSA *dsa, const BIGNUM *priv_key, int *ret); +int dsa_check_pairwise(const DSA *dsa); |