diff options
author | Patrick Steuer <patrick.steuer@de.ibm.com> | 2019-09-19 15:31:27 +0200 |
---|---|---|
committer | Patrick Steuer <patrick.steuer@de.ibm.com> | 2019-09-25 15:53:53 +0200 |
commit | 19bd1fa1ef17ff0ac071402cb6b002f1c29e37b9 (patch) | |
tree | 721bd78ca88377bc1246e656d3c2d9f30ac46021 /crypto/include | |
parent | 2281be2ed4a7df462677661d30b13826ae6b3e26 (diff) |
s390x assembly pack: accelerate X25519, X448, Ed25519 and Ed448
using PCC and KDSA instructions.
Signed-off-by: Patrick Steuer <patrick.steuer@de.ibm.com>
Reviewed-by: Richard Levitte <levitte@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/10004)
Diffstat (limited to 'crypto/include')
-rw-r--r-- | crypto/include/internal/evp_int.h | 37 |
1 files changed, 19 insertions, 18 deletions
diff --git a/crypto/include/internal/evp_int.h b/crypto/include/internal/evp_int.h index f1fb67207f..b9dc95164c 100644 --- a/crypto/include/internal/evp_int.h +++ b/crypto/include/internal/evp_int.h @@ -109,24 +109,24 @@ DEFINE_STACK_OF_CONST(EVP_PKEY_METHOD) void evp_pkey_set_cb_translate(BN_GENCB *cb, EVP_PKEY_CTX *ctx); -extern const EVP_PKEY_METHOD cmac_pkey_meth; -extern const EVP_PKEY_METHOD dh_pkey_meth; -extern const EVP_PKEY_METHOD dhx_pkey_meth; -extern const EVP_PKEY_METHOD dsa_pkey_meth; -extern const EVP_PKEY_METHOD ec_pkey_meth; -extern const EVP_PKEY_METHOD sm2_pkey_meth; -extern const EVP_PKEY_METHOD ecx25519_pkey_meth; -extern const EVP_PKEY_METHOD ecx448_pkey_meth; -extern const EVP_PKEY_METHOD ed25519_pkey_meth; -extern const EVP_PKEY_METHOD ed448_pkey_meth; -extern const EVP_PKEY_METHOD hmac_pkey_meth; -extern const EVP_PKEY_METHOD rsa_pkey_meth; -extern const EVP_PKEY_METHOD rsa_pss_pkey_meth; -extern const EVP_PKEY_METHOD scrypt_pkey_meth; -extern const EVP_PKEY_METHOD tls1_prf_pkey_meth; -extern const EVP_PKEY_METHOD hkdf_pkey_meth; -extern const EVP_PKEY_METHOD poly1305_pkey_meth; -extern const EVP_PKEY_METHOD siphash_pkey_meth; +const EVP_PKEY_METHOD *cmac_pkey_method(void); +const EVP_PKEY_METHOD *dh_pkey_method(void); +const EVP_PKEY_METHOD *dhx_pkey_method(void); +const EVP_PKEY_METHOD *dsa_pkey_method(void); +const EVP_PKEY_METHOD *ec_pkey_method(void); +const EVP_PKEY_METHOD *sm2_pkey_method(void); +const EVP_PKEY_METHOD *ecx25519_pkey_method(void); +const EVP_PKEY_METHOD *ecx448_pkey_method(void); +const EVP_PKEY_METHOD *ed25519_pkey_method(void); +const EVP_PKEY_METHOD *ed448_pkey_method(void); +const EVP_PKEY_METHOD *hmac_pkey_method(void); +const EVP_PKEY_METHOD *rsa_pkey_method(void); +const EVP_PKEY_METHOD *rsa_pss_pkey_method(void); +const EVP_PKEY_METHOD *scrypt_pkey_method(void); +const EVP_PKEY_METHOD *tls1_prf_pkey_method(void); +const EVP_PKEY_METHOD *hkdf_pkey_method(void); +const EVP_PKEY_METHOD *poly1305_pkey_method(void); +const EVP_PKEY_METHOD *siphash_pkey_method(void); struct evp_mac_st { OSSL_PROVIDER *prov; @@ -493,6 +493,7 @@ const EVP_CIPHER *EVP_##cname##_ecb(void) { return &cname##_ecb; } #define X25519_KEYLEN 32 #define X448_KEYLEN 56 +#define ED25519_KEYLEN 32 #define ED448_KEYLEN 57 #define MAX_KEYLEN ED448_KEYLEN |