mirror of
https://github.com/openssl/openssl.git
synced 2024-12-15 06:01:37 +08:00
836080a89a
Fixes #6277 Description: Make each of the five EdDSA instances defined in RFC 8032 -- Ed25519, Ed25519ctx, Ed25519ph, Ed448, Ed448ph -- available via the EVP APIs. The desired EdDSA instance is specified via an OSSL_PARAM. All instances, except for Ed25519, allow context strings as input. Context strings are passed via an OSSL_PARAM. For Ed25519ctx, the context string must be nonempty. Ed25519, Ed25519ctx, Ed448 are PureEdDSA instances, which means that the full message (not a digest) must be passed to sign and verify operations. Ed25519ph, Ed448ph are HashEdDSA instances, which means that the input message is hashed before sign and verify. Testing: All 21 test vectors from RFC 8032 have been added to evppkey_ecx.txt (thanks to Shane Lontis for showing how to do that). Those 21 test vectors are exercised by evp_test.c and cover all five instances. Reviewed-by: Hugo Landau <hlandau@openssl.org> Reviewed-by: Shane Lontis <shane.lontis@oracle.com> (Merged from https://github.com/openssl/openssl/pull/19705) |
||
---|---|---|
.. | ||
__DECC_INCLUDE_EPILOGUE.H | ||
__DECC_INCLUDE_PROLOGUE.H | ||
aes_platform.h | ||
aria.h | ||
asn1_dsa.h | ||
asn1.h | ||
asn1err.h | ||
async.h | ||
asyncerr.h | ||
bioerr.h | ||
bn_conf.h.in | ||
bn_dh.h | ||
bn_srp.h | ||
bn.h | ||
bnerr.h | ||
buffererr.h | ||
chacha.h | ||
cmll_platform.h | ||
cmperr.h | ||
cmserr.h | ||
comperr.h | ||
conferr.h | ||
context.h | ||
crmferr.h | ||
cryptlib.h | ||
cryptoerr.h | ||
cterr.h | ||
ctype.h | ||
decoder.h | ||
decodererr.h | ||
des_platform.h | ||
dh.h | ||
dherr.h | ||
dsa.h | ||
dsaerr.h | ||
dso_conf.h.in | ||
ec.h | ||
ecerr.h | ||
ecx.h | ||
encoder.h | ||
encodererr.h | ||
engine.h | ||
engineerr.h | ||
err.h | ||
ess.h | ||
esserr.h | ||
evp.h | ||
evperr.h | ||
httperr.h | ||
lhash.h | ||
md32_common.h | ||
modes.h | ||
objects.h | ||
objectserr.h | ||
ocsperr.h | ||
pem.h | ||
pemerr.h | ||
pkcs7.h | ||
pkcs7err.h | ||
pkcs12err.h | ||
poly1305.h | ||
ppc_arch.h | ||
punycode.h | ||
rand_pool.h | ||
rand.h | ||
randerr.h | ||
riscv_arch.def | ||
riscv_arch.h | ||
rsa.h | ||
rsaerr.h | ||
security_bits.h | ||
sha.h | ||
siphash.h | ||
siv.h | ||
sm2.h | ||
sm2err.h | ||
sm4_platform.h | ||
sm4.h | ||
sparc_arch.h | ||
sparse_array.h | ||
store.h | ||
storeerr.h | ||
tserr.h | ||
types.h | ||
uierr.h | ||
x509.h | ||
x509err.h | ||
x509v3err.h |