]> git.ipfire.org Git - thirdparty/openssl.git/commit
Implement functionality for direct use of composite signature algorithms
authorRichard Levitte <levitte@openssl.org>
Thu, 18 Jan 2024 14:27:34 +0000 (15:27 +0100)
committerRichard Levitte <levitte@openssl.org>
Wed, 21 Aug 2024 06:21:06 +0000 (08:21 +0200)
commite675aabb8747d0f2da5691945f1a429558ebc34d
treee7a7b724b7cb8bf437ace58d5803873833830ff4
parent1985ba60bba272d5780c498461f2b1171f10aa21
Implement functionality for direct use of composite signature algorithms

The following API groups are extended with a new init function, as well
as an update and final function, to allow the use of explicitly fetched
signature implementations for any composite signature algorithm, like
"sha1WithRSAEncryption":

- EVP_PKEY_sign
- EVP_PKEY_verify
- EVP_PKEY_verify_recover

To support this, providers are required to add a few new functions, not
the least one that declares what key types an signature implementation
supports.

While at this, the validity check in evp_signature_from_algorithm() is
also refactored; the SIGNATURE provider functionality is too complex for
counters.  It's better, or at least more readable, to check function
combinations.

Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/23416)
12 files changed:
crypto/err/openssl.txt
crypto/evp/evp_err.c
crypto/evp/evp_local.h
crypto/evp/signature.c
doc/man3/EVP_PKEY_sign.pod
doc/man3/EVP_PKEY_verify.pod
doc/man3/EVP_PKEY_verify_recover.pod
include/openssl/core_dispatch.h
include/openssl/evp.h
include/openssl/evperr.h
util/libcrypto.num
util/perl/OpenSSL/paramnames.pm