diff options
author | tb <> | 2024-03-02 10:20:27 +0000 |
---|---|---|
committer | tb <> | 2024-03-02 10:20:27 +0000 |
commit | b4541fab5e606187b51e789c26e6065cfc57ded0 (patch) | |
tree | fbf01f5453b712e42063e482a28304a6a55892cd /src | |
parent | fdfad9e1701882b4e72b41155a9c8e4ef338ddbf (diff) | |
download | openbsd-b4541fab5e606187b51e789c26e6065cfc57ded0.tar.gz openbsd-b4541fab5e606187b51e789c26e6065cfc57ded0.tar.bz2 openbsd-b4541fab5e606187b51e789c26e6065cfc57ded0.zip |
Remove more PBE stuff from the public API
This is still needed internally for CMS and its predecessors. This
removal will enable disentangling some of its innards.
ok jsing
Diffstat (limited to 'src')
-rw-r--r-- | src/lib/libcrypto/Symbols.list | 7 | ||||
-rw-r--r-- | src/lib/libcrypto/evp/evp.h | 7 | ||||
-rw-r--r-- | src/lib/libcrypto/evp/evp_local.h | 5 | ||||
-rw-r--r-- | src/lib/libcrypto/evp/evp_pbe.c | 8 | ||||
-rw-r--r-- | src/lib/libcrypto/pkcs12/p12_add.c | 3 | ||||
-rw-r--r-- | src/lib/libcrypto/x509/x509.h | 16 | ||||
-rw-r--r-- | src/lib/libcrypto/x509/x509_local.h | 13 |
7 files changed, 24 insertions, 35 deletions
diff --git a/src/lib/libcrypto/Symbols.list b/src/lib/libcrypto/Symbols.list index 7a27d6d1a3..de97306613 100644 --- a/src/lib/libcrypto/Symbols.list +++ b/src/lib/libcrypto/Symbols.list | |||
@@ -1952,15 +1952,8 @@ PKCS12_unpack_p7data | |||
1952 | PKCS12_unpack_p7encdata | 1952 | PKCS12_unpack_p7encdata |
1953 | PKCS12_verify_mac | 1953 | PKCS12_verify_mac |
1954 | PKCS1_MGF1 | 1954 | PKCS1_MGF1 |
1955 | PKCS5_PBE_keyivgen | ||
1956 | PKCS5_PBKDF2_HMAC | 1955 | PKCS5_PBKDF2_HMAC |
1957 | PKCS5_PBKDF2_HMAC_SHA1 | 1956 | PKCS5_PBKDF2_HMAC_SHA1 |
1958 | PKCS5_pbe2_set | ||
1959 | PKCS5_pbe2_set_iv | ||
1960 | PKCS5_pbe_set | ||
1961 | PKCS5_pbe_set0_algor | ||
1962 | PKCS5_pbkdf2_set | ||
1963 | PKCS5_v2_PBE_keyivgen | ||
1964 | PKCS7_ATTR_SIGN_it | 1957 | PKCS7_ATTR_SIGN_it |
1965 | PKCS7_ATTR_VERIFY_it | 1958 | PKCS7_ATTR_VERIFY_it |
1966 | PKCS7_DIGEST_free | 1959 | PKCS7_DIGEST_free |
diff --git a/src/lib/libcrypto/evp/evp.h b/src/lib/libcrypto/evp/evp.h index 28b095ffd4..9e203b086d 100644 --- a/src/lib/libcrypto/evp/evp.h +++ b/src/lib/libcrypto/evp/evp.h | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: evp.h,v 1.130 2024/03/02 10:13:13 tb Exp $ */ | 1 | /* $OpenBSD: evp.h,v 1.131 2024/03/02 10:20:27 tb Exp $ */ |
2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) | 2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) |
3 | * All rights reserved. | 3 | * All rights reserved. |
4 | * | 4 | * |
@@ -870,17 +870,12 @@ int EVP_PKEY_get_default_digest_nid(EVP_PKEY *pkey, int *pnid); | |||
870 | int EVP_CIPHER_type(const EVP_CIPHER *ctx); | 870 | int EVP_CIPHER_type(const EVP_CIPHER *ctx); |
871 | 871 | ||
872 | /* PKCS5 password based encryption */ | 872 | /* PKCS5 password based encryption */ |
873 | int PKCS5_PBE_keyivgen(EVP_CIPHER_CTX *ctx, const char *pass, int passlen, | ||
874 | ASN1_TYPE *param, const EVP_CIPHER *cipher, const EVP_MD *md, int en_de); | ||
875 | int PKCS5_PBKDF2_HMAC_SHA1(const char *pass, int passlen, | 873 | int PKCS5_PBKDF2_HMAC_SHA1(const char *pass, int passlen, |
876 | const unsigned char *salt, int saltlen, int iter, int keylen, | 874 | const unsigned char *salt, int saltlen, int iter, int keylen, |
877 | unsigned char *out); | 875 | unsigned char *out); |
878 | int PKCS5_PBKDF2_HMAC(const char *pass, int passlen, const unsigned char *salt, | 876 | int PKCS5_PBKDF2_HMAC(const char *pass, int passlen, const unsigned char *salt, |
879 | int saltlen, int iter, const EVP_MD *digest, int keylen, | 877 | int saltlen, int iter, const EVP_MD *digest, int keylen, |
880 | unsigned char *out); | 878 | unsigned char *out); |
881 | int PKCS5_v2_PBE_keyivgen(EVP_CIPHER_CTX *ctx, const char *pass, int passlen, | ||
882 | ASN1_TYPE *param, const EVP_CIPHER *cipher, const EVP_MD *md, | ||
883 | int en_de); | ||
884 | 879 | ||
885 | #define ASN1_PKEY_ALIAS 0x1 | 880 | #define ASN1_PKEY_ALIAS 0x1 |
886 | #define ASN1_PKEY_DYNAMIC 0x2 | 881 | #define ASN1_PKEY_DYNAMIC 0x2 |
diff --git a/src/lib/libcrypto/evp/evp_local.h b/src/lib/libcrypto/evp/evp_local.h index bce6a87a1e..dad2cec81e 100644 --- a/src/lib/libcrypto/evp/evp_local.h +++ b/src/lib/libcrypto/evp/evp_local.h | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: evp_local.h,v 1.18 2024/03/02 10:08:29 tb Exp $ */ | 1 | /* $OpenBSD: evp_local.h,v 1.19 2024/03/02 10:20:27 tb Exp $ */ |
2 | /* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL | 2 | /* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL |
3 | * project 2000. | 3 | * project 2000. |
4 | */ | 4 | */ |
@@ -340,9 +340,6 @@ struct evp_pkey_method_st { | |||
340 | 340 | ||
341 | void evp_pkey_set_cb_translate(BN_GENCB *cb, EVP_PKEY_CTX *ctx); | 341 | void evp_pkey_set_cb_translate(BN_GENCB *cb, EVP_PKEY_CTX *ctx); |
342 | 342 | ||
343 | int PKCS5_v2_PBKDF2_keyivgen(EVP_CIPHER_CTX *ctx, const char *pass, int passlen, | ||
344 | ASN1_TYPE *param, const EVP_CIPHER *c, const EVP_MD *md, int en_de); | ||
345 | |||
346 | /* EVP_AEAD represents a specific AEAD algorithm. */ | 343 | /* EVP_AEAD represents a specific AEAD algorithm. */ |
347 | struct evp_aead_st { | 344 | struct evp_aead_st { |
348 | unsigned char key_len; | 345 | unsigned char key_len; |
diff --git a/src/lib/libcrypto/evp/evp_pbe.c b/src/lib/libcrypto/evp/evp_pbe.c index a9f5b8fb12..532c924a9e 100644 --- a/src/lib/libcrypto/evp/evp_pbe.c +++ b/src/lib/libcrypto/evp/evp_pbe.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: evp_pbe.c,v 1.45 2024/03/02 10:17:37 tb Exp $ */ | 1 | /* $OpenBSD: evp_pbe.c,v 1.46 2024/03/02 10:20:27 tb Exp $ */ |
2 | /* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL | 2 | /* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL |
3 | * project 1999. | 3 | * project 1999. |
4 | */ | 4 | */ |
@@ -73,9 +73,15 @@ | |||
73 | #include "x509_local.h" | 73 | #include "x509_local.h" |
74 | 74 | ||
75 | /* Password based encryption (PBE) functions */ | 75 | /* Password based encryption (PBE) functions */ |
76 | int PKCS5_PBE_keyivgen(EVP_CIPHER_CTX *ctx, const char *pass, int passlen, | ||
77 | ASN1_TYPE *param, const EVP_CIPHER *cipher, const EVP_MD *md, int en_de); | ||
78 | int PKCS5_v2_PBKDF2_keyivgen(EVP_CIPHER_CTX *ctx, const char *pass, int passlen, | ||
79 | ASN1_TYPE *param, const EVP_CIPHER *c, const EVP_MD *md, int en_de); | ||
76 | int PKCS12_PBE_keyivgen(EVP_CIPHER_CTX *ctx, const char *pass, int passlen, | 80 | int PKCS12_PBE_keyivgen(EVP_CIPHER_CTX *ctx, const char *pass, int passlen, |
77 | ASN1_TYPE *param, const EVP_CIPHER *cipher, const EVP_MD *md_type, | 81 | ASN1_TYPE *param, const EVP_CIPHER *cipher, const EVP_MD *md_type, |
78 | int en_de); | 82 | int en_de); |
83 | int PKCS5_v2_PBE_keyivgen(EVP_CIPHER_CTX *ctx, const char *pass, int passlen, | ||
84 | ASN1_TYPE *param, const EVP_CIPHER *c, const EVP_MD *md, int en_de); | ||
79 | 85 | ||
80 | static const struct pbe_config { | 86 | static const struct pbe_config { |
81 | int pbe_nid; | 87 | int pbe_nid; |
diff --git a/src/lib/libcrypto/pkcs12/p12_add.c b/src/lib/libcrypto/pkcs12/p12_add.c index dd72c99985..f6f42c558c 100644 --- a/src/lib/libcrypto/pkcs12/p12_add.c +++ b/src/lib/libcrypto/pkcs12/p12_add.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: p12_add.c,v 1.24 2024/03/02 10:15:16 tb Exp $ */ | 1 | /* $OpenBSD: p12_add.c,v 1.25 2024/03/02 10:20:27 tb Exp $ */ |
2 | /* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL | 2 | /* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL |
3 | * project 1999. | 3 | * project 1999. |
4 | */ | 4 | */ |
@@ -62,6 +62,7 @@ | |||
62 | #include <openssl/pkcs12.h> | 62 | #include <openssl/pkcs12.h> |
63 | 63 | ||
64 | #include "pkcs12_local.h" | 64 | #include "pkcs12_local.h" |
65 | #include "x509_local.h" | ||
65 | 66 | ||
66 | /* Pack an object into an OCTET STRING and turn into a safebag */ | 67 | /* Pack an object into an OCTET STRING and turn into a safebag */ |
67 | 68 | ||
diff --git a/src/lib/libcrypto/x509/x509.h b/src/lib/libcrypto/x509/x509.h index bd8497d9c4..66752f34e9 100644 --- a/src/lib/libcrypto/x509/x509.h +++ b/src/lib/libcrypto/x509/x509.h | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: x509.h,v 1.104 2024/03/02 10:17:37 tb Exp $ */ | 1 | /* $OpenBSD: x509.h,v 1.105 2024/03/02 10:20:27 tb Exp $ */ |
2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) | 2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) |
3 | * All rights reserved. | 3 | * All rights reserved. |
4 | * | 4 | * |
@@ -1018,20 +1018,6 @@ X509 *X509_find_by_subject(STACK_OF(X509) *sk,X509_NAME *name); | |||
1018 | 1018 | ||
1019 | extern const ASN1_ITEM PBEPARAM_it; | 1019 | extern const ASN1_ITEM PBEPARAM_it; |
1020 | 1020 | ||
1021 | int PKCS5_pbe_set0_algor(X509_ALGOR *algor, int alg, int iter, | ||
1022 | const unsigned char *salt, int saltlen); | ||
1023 | |||
1024 | X509_ALGOR *PKCS5_pbe_set(int alg, int iter, | ||
1025 | const unsigned char *salt, int saltlen); | ||
1026 | X509_ALGOR *PKCS5_pbe2_set(const EVP_CIPHER *cipher, int iter, | ||
1027 | unsigned char *salt, int saltlen); | ||
1028 | X509_ALGOR *PKCS5_pbe2_set_iv(const EVP_CIPHER *cipher, int iter, | ||
1029 | unsigned char *salt, int saltlen, | ||
1030 | unsigned char *aiv, int prf_nid); | ||
1031 | |||
1032 | X509_ALGOR *PKCS5_pbkdf2_set(int iter, unsigned char *salt, int saltlen, | ||
1033 | int prf_nid, int keylen); | ||
1034 | |||
1035 | /* PKCS#8 utilities */ | 1021 | /* PKCS#8 utilities */ |
1036 | 1022 | ||
1037 | PKCS8_PRIV_KEY_INFO *PKCS8_PRIV_KEY_INFO_new(void); | 1023 | PKCS8_PRIV_KEY_INFO *PKCS8_PRIV_KEY_INFO_new(void); |
diff --git a/src/lib/libcrypto/x509/x509_local.h b/src/lib/libcrypto/x509/x509_local.h index 1e813797e1..4ac99da2bd 100644 --- a/src/lib/libcrypto/x509/x509_local.h +++ b/src/lib/libcrypto/x509/x509_local.h | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: x509_local.h,v 1.19 2024/03/02 10:17:37 tb Exp $ */ | 1 | /* $OpenBSD: x509_local.h,v 1.20 2024/03/02 10:20:27 tb Exp $ */ |
2 | /* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL | 2 | /* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL |
3 | * project 2013. | 3 | * project 2013. |
4 | */ | 4 | */ |
@@ -391,6 +391,17 @@ PBKDF2PARAM *d2i_PBKDF2PARAM(PBKDF2PARAM **a, const unsigned char **in, long len | |||
391 | int i2d_PBKDF2PARAM(PBKDF2PARAM *a, unsigned char **out); | 391 | int i2d_PBKDF2PARAM(PBKDF2PARAM *a, unsigned char **out); |
392 | extern const ASN1_ITEM PBKDF2PARAM_it; | 392 | extern const ASN1_ITEM PBKDF2PARAM_it; |
393 | 393 | ||
394 | int PKCS5_pbe_set0_algor(X509_ALGOR *algor, int alg, int iter, | ||
395 | const unsigned char *salt, int saltlen); | ||
396 | X509_ALGOR *PKCS5_pbe2_set(const EVP_CIPHER *cipher, int iter, | ||
397 | unsigned char *salt, int saltlen); | ||
398 | X509_ALGOR *PKCS5_pbe2_set_iv(const EVP_CIPHER *cipher, int iter, | ||
399 | unsigned char *salt, int saltlen, unsigned char *aiv, int prf_nid); | ||
400 | X509_ALGOR *PKCS5_pbe_set(int alg, int iter, const unsigned char *salt, | ||
401 | int saltlen); | ||
402 | X509_ALGOR *PKCS5_pbkdf2_set(int iter, unsigned char *salt, int saltlen, | ||
403 | int prf_nid, int keylen); | ||
404 | |||
394 | __END_HIDDEN_DECLS | 405 | __END_HIDDEN_DECLS |
395 | 406 | ||
396 | #endif /* !HEADER_X509_LOCAL_H */ | 407 | #endif /* !HEADER_X509_LOCAL_H */ |