Latest update.
This commit is contained in:
@@ -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
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2015-2018 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 2015-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
|
||||
@@ -76,6 +76,11 @@ struct evp_pkey_asn1_method_st {
|
||||
EVP_KEYMGMT *to_keymgmt, OPENSSL_CTX *libctx,
|
||||
const char *propq);
|
||||
OSSL_CALLBACK *import_from;
|
||||
|
||||
int (*priv_decode_with_libctx) (EVP_PKEY *pk,
|
||||
const PKCS8_PRIV_KEY_INFO *p8inf,
|
||||
OPENSSL_CTX *libctx,
|
||||
const char *propq);
|
||||
} /* EVP_PKEY_ASN1_METHOD */ ;
|
||||
|
||||
DEFINE_STACK_OF_CONST(EVP_PKEY_ASN1_METHOD)
|
||||
|
||||
+14
-2
@@ -9,19 +9,25 @@
|
||||
|
||||
#define declare_dh_bn(x) \
|
||||
extern const BIGNUM _bignum_dh##x##_p; \
|
||||
extern const BIGNUM _bignum_dh##x##_q; \
|
||||
extern const BIGNUM _bignum_dh##x##_g; \
|
||||
extern const BIGNUM _bignum_dh##x##_q;
|
||||
|
||||
declare_dh_bn(1024_160)
|
||||
declare_dh_bn(2048_224)
|
||||
declare_dh_bn(2048_256)
|
||||
|
||||
extern const BIGNUM _bignum_const_2;
|
||||
|
||||
extern const BIGNUM _bignum_ffdhe2048_p;
|
||||
extern const BIGNUM _bignum_ffdhe3072_p;
|
||||
extern const BIGNUM _bignum_ffdhe4096_p;
|
||||
extern const BIGNUM _bignum_ffdhe6144_p;
|
||||
extern const BIGNUM _bignum_ffdhe8192_p;
|
||||
extern const BIGNUM _bignum_const_2;
|
||||
extern const BIGNUM _bignum_ffdhe2048_q;
|
||||
extern const BIGNUM _bignum_ffdhe3072_q;
|
||||
extern const BIGNUM _bignum_ffdhe4096_q;
|
||||
extern const BIGNUM _bignum_ffdhe6144_q;
|
||||
extern const BIGNUM _bignum_ffdhe8192_q;
|
||||
|
||||
extern const BIGNUM _bignum_modp_1536_p;
|
||||
extern const BIGNUM _bignum_modp_2048_p;
|
||||
@@ -29,3 +35,9 @@ extern const BIGNUM _bignum_modp_3072_p;
|
||||
extern const BIGNUM _bignum_modp_4096_p;
|
||||
extern const BIGNUM _bignum_modp_6144_p;
|
||||
extern const BIGNUM _bignum_modp_8192_p;
|
||||
extern const BIGNUM _bignum_modp_1536_q;
|
||||
extern const BIGNUM _bignum_modp_2048_q;
|
||||
extern const BIGNUM _bignum_modp_3072_q;
|
||||
extern const BIGNUM _bignum_modp_4096_q;
|
||||
extern const BIGNUM _bignum_modp_6144_q;
|
||||
extern const BIGNUM _bignum_modp_8192_q;
|
||||
+8
-3
@@ -11,15 +11,20 @@
|
||||
#include <openssl/dh.h>
|
||||
#include "internal/ffc.h"
|
||||
|
||||
DH *dh_new_with_ctx(OPENSSL_CTX *libctx);
|
||||
DH *dh_new_by_nid_with_libctx(OPENSSL_CTX *libctx, int nid);
|
||||
DH *dh_new_with_libctx(OPENSSL_CTX *libctx);
|
||||
|
||||
int dh_generate_ffc_parameters(DH *dh, int bits,
|
||||
int qbits, int gindex, BN_GENCB *cb);
|
||||
int dh_generate_ffc_parameters(DH *dh, int type, int pbits,
|
||||
int qbits, EVP_MD *md, BN_GENCB *cb);
|
||||
int dh_generate_public_key(BN_CTX *ctx, DH *dh, const BIGNUM *priv_key,
|
||||
BIGNUM *pub_key);
|
||||
int dh_get_named_group_uid_from_size(int pbits);
|
||||
const char *dh_gen_type_id2name(int id);
|
||||
void dh_cache_named_group(DH *dh);
|
||||
|
||||
FFC_PARAMS *dh_get0_params(DH *dh);
|
||||
int dh_get0_nid(const DH *dh);
|
||||
int dh_ffc_params_fromdata(DH *dh, const OSSL_PARAM params[]);
|
||||
int dh_key_fromdata(DH *dh, const OSSL_PARAM params[]);
|
||||
|
||||
int dh_check_pub_key_partial(const DH *dh, const BIGNUM *pub_key, int *ret);
|
||||
|
||||
@@ -11,20 +11,20 @@
|
||||
#include <openssl/dsa.h>
|
||||
#include "internal/ffc.h"
|
||||
|
||||
#define DSA_PARAMGEN_TYPE_FIPS_186_4 0 /* Use FIPS186-4 standard */
|
||||
#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 */
|
||||
|
||||
DSA *dsa_new_with_ctx(OPENSSL_CTX *libctx);
|
||||
|
||||
int dsa_generate_ffc_parameters(DSA *dsa, int type,
|
||||
int pbits, int qbits, int gindex,
|
||||
BN_GENCB *cb);
|
||||
int pbits, int qbits, EVP_MD *md, BN_GENCB *cb);
|
||||
|
||||
int dsa_sign_int(int type, const unsigned char *dgst,
|
||||
int dlen, unsigned char *sig, unsigned int *siglen, DSA *dsa);
|
||||
const unsigned char *dsa_algorithmidentifier_encoding(int md_nid, size_t *len);
|
||||
|
||||
FFC_PARAMS *dsa_get0_params(DSA *dsa);
|
||||
int dsa_ffc_params_fromdata(DSA *dsa, const OSSL_PARAM params[]);
|
||||
int dsa_key_fromdata(DSA *dsa, const OSSL_PARAM params[]);
|
||||
|
||||
int dsa_generate_public_key(BN_CTX *ctx, const DSA *dsa, const BIGNUM *priv_key,
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2018 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 2018-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
|
||||
|
||||
@@ -72,6 +72,7 @@ struct ecx_key_st {
|
||||
|
||||
typedef struct ecx_key_st ECX_KEY;
|
||||
|
||||
size_t ecx_key_length(ECX_KEY_TYPE type);
|
||||
ECX_KEY *ecx_key_new(ECX_KEY_TYPE type, int haspubkey);
|
||||
unsigned char *ecx_key_allocate_privkey(ECX_KEY *key);
|
||||
void ecx_key_free(ECX_KEY *key);
|
||||
@@ -82,6 +83,8 @@ int X25519(uint8_t out_shared_key[32], const uint8_t private_key[32],
|
||||
void X25519_public_from_private(uint8_t out_public_value[32],
|
||||
const uint8_t private_key[32]);
|
||||
|
||||
int ED25519_public_from_private(OPENSSL_CTX *ctx, uint8_t out_public_key[32],
|
||||
const uint8_t private_key[32]);
|
||||
int ED25519_sign(uint8_t *out_sig, const uint8_t *message, size_t message_len,
|
||||
const uint8_t public_key[32], const uint8_t private_key[32],
|
||||
OPENSSL_CTX *libctx, const char *propq);
|
||||
@@ -89,6 +92,8 @@ int ED25519_verify(const uint8_t *message, size_t message_len,
|
||||
const uint8_t signature[64], const uint8_t public_key[32],
|
||||
OPENSSL_CTX *libctx, const char *propq);
|
||||
|
||||
int ED448_public_from_private(OPENSSL_CTX *ctx, uint8_t out_public_key[57],
|
||||
const uint8_t private_key[57]);
|
||||
int ED448_sign(OPENSSL_CTX *ctx, uint8_t *out_sig, const uint8_t *message,
|
||||
size_t message_len, const uint8_t public_key[57],
|
||||
const uint8_t private_key[57], const uint8_t *context,
|
||||
@@ -103,13 +108,6 @@ int X448(uint8_t out_shared_key[56], const uint8_t private_key[56],
|
||||
void X448_public_from_private(uint8_t out_public_value[56],
|
||||
const uint8_t private_key[56]);
|
||||
|
||||
int s390x_x25519_mul(unsigned char u_dst[32],
|
||||
const unsigned char u_src[32],
|
||||
const unsigned char d_src[32]);
|
||||
int s390x_x448_mul(unsigned char u_dst[56],
|
||||
const unsigned char u_src[56],
|
||||
const unsigned char d_src[56]);
|
||||
|
||||
/* Backend support */
|
||||
int ecx_key_fromdata(ECX_KEY *ecx, const OSSL_PARAM params[],
|
||||
int include_private);
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2015-2018 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 2015-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
|
||||
@@ -655,7 +655,9 @@ int evp_keymgmt_util_match(EVP_PKEY *pk1, EVP_PKEY *pk2, int selection);
|
||||
int evp_keymgmt_util_copy(EVP_PKEY *to, EVP_PKEY *from, int selection);
|
||||
void *evp_keymgmt_util_gen(EVP_PKEY *target, EVP_KEYMGMT *keymgmt,
|
||||
void *genctx, OSSL_CALLBACK *cb, void *cbarg);
|
||||
|
||||
int evp_keymgmt_util_get_deflt_digest_name(EVP_KEYMGMT *keymgmt,
|
||||
void *keydata,
|
||||
char *mdname, size_t mdname_sz);
|
||||
|
||||
/*
|
||||
* KEYMGMT provider interface functions
|
||||
@@ -736,4 +738,7 @@ const EVP_MD *evp_get_digestbyname_ex(OPENSSL_CTX *libctx, const char *name);
|
||||
*/
|
||||
int evp_pkey_ctx_set_params_strict(EVP_PKEY_CTX *ctx, OSSL_PARAM *params);
|
||||
int evp_pkey_ctx_get_params_strict(EVP_PKEY_CTX *ctx, OSSL_PARAM *params);
|
||||
|
||||
EVP_PKEY *evp_pkcs82pkey_int(const PKCS8_PRIV_KEY_INFO *p8, OPENSSL_CTX *libctx,
|
||||
const char *propq);
|
||||
#endif /* !defined(FIPS_MODE) */
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2010-2019 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 2010-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
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2016-2018 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 2016-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
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2016-2019 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 2016-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
|
||||
@@ -20,7 +20,8 @@
|
||||
* as usual with OSSLSTORE_load() and OSSLSTORE_eof().
|
||||
*/
|
||||
OSSL_STORE_CTX *ossl_store_attach_pem_bio(BIO *bp, const UI_METHOD *ui_method,
|
||||
void *ui_data);
|
||||
void *ui_data, OPENSSL_CTX *libctx,
|
||||
const char *propq);
|
||||
int ossl_store_detach_pem_bio(OSSL_STORE_CTX *ctx);
|
||||
|
||||
void ossl_store_cleanup_int(void);
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2015-2018 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 2015-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
|
||||
@@ -297,3 +297,7 @@ int x509_set1_time(ASN1_TIME **ptm, const ASN1_TIME *tm);
|
||||
int x509_print_ex_brief(BIO *bio, X509 *cert, unsigned long neg_cflags);
|
||||
|
||||
void x509_init_sig_info(X509 *x);
|
||||
|
||||
|
||||
int x509_check_issued_int(X509 *issuer, X509 *subject, OPENSSL_CTX *libctx,
|
||||
const char *propq);
|
||||
Reference in New Issue
Block a user