Path: blob/main/crypto/openssl/providers/implementations/include/prov/implementations.h
48534 views
/*1* Copyright 2019-2025 The OpenSSL Project Authors. All Rights Reserved.2*3* Licensed under the Apache License 2.0 (the "License"). You may not use4* this file except in compliance with the License. You can obtain a copy5* in the file LICENSE in the source distribution or at6* https://www.openssl.org/source/license.html7*/89#include <openssl/core.h>10#include <openssl/types.h>1112/* Digests */13extern const OSSL_DISPATCH ossl_sha1_functions[];14extern const OSSL_DISPATCH ossl_sha224_functions[];15extern const OSSL_DISPATCH ossl_sha256_functions[];16extern const OSSL_DISPATCH ossl_sha256_192_functions[];17extern const OSSL_DISPATCH ossl_sha384_functions[];18extern const OSSL_DISPATCH ossl_sha512_functions[];19extern const OSSL_DISPATCH ossl_sha512_224_functions[];20extern const OSSL_DISPATCH ossl_sha512_256_functions[];21extern const OSSL_DISPATCH ossl_sha3_224_functions[];22extern const OSSL_DISPATCH ossl_sha3_256_functions[];23extern const OSSL_DISPATCH ossl_sha3_384_functions[];24extern const OSSL_DISPATCH ossl_sha3_512_functions[];25extern const OSSL_DISPATCH ossl_keccak_224_functions[];26extern const OSSL_DISPATCH ossl_keccak_256_functions[];27extern const OSSL_DISPATCH ossl_keccak_384_functions[];28extern const OSSL_DISPATCH ossl_keccak_512_functions[];29extern const OSSL_DISPATCH ossl_keccak_kmac_128_functions[];30extern const OSSL_DISPATCH ossl_keccak_kmac_256_functions[];31extern const OSSL_DISPATCH ossl_shake_128_functions[];32extern const OSSL_DISPATCH ossl_shake_256_functions[];33extern const OSSL_DISPATCH ossl_blake2s256_functions[];34extern const OSSL_DISPATCH ossl_blake2b512_functions[];35extern const OSSL_DISPATCH ossl_md5_functions[];36extern const OSSL_DISPATCH ossl_md5_sha1_functions[];37extern const OSSL_DISPATCH ossl_sm3_functions[];38extern const OSSL_DISPATCH ossl_md2_functions[];39extern const OSSL_DISPATCH ossl_md4_functions[];40extern const OSSL_DISPATCH ossl_mdc2_functions[];41extern const OSSL_DISPATCH ossl_wp_functions[];42extern const OSSL_DISPATCH ossl_ripemd160_functions[];43extern const OSSL_DISPATCH ossl_nullmd_functions[];4445/* Ciphers */46extern const OSSL_DISPATCH ossl_null_functions[];47extern const OSSL_DISPATCH ossl_aes256ecb_functions[];48extern const OSSL_DISPATCH ossl_aes192ecb_functions[];49extern const OSSL_DISPATCH ossl_aes128ecb_functions[];50extern const OSSL_DISPATCH ossl_aes256cbc_functions[];51extern const OSSL_DISPATCH ossl_aes192cbc_functions[];52extern const OSSL_DISPATCH ossl_aes128cbc_functions[];53extern const OSSL_DISPATCH ossl_aes256cbc_cts_functions[];54extern const OSSL_DISPATCH ossl_aes192cbc_cts_functions[];55extern const OSSL_DISPATCH ossl_aes128cbc_cts_functions[];56extern const OSSL_DISPATCH ossl_aes256ofb_functions[];57extern const OSSL_DISPATCH ossl_aes192ofb_functions[];58extern const OSSL_DISPATCH ossl_aes128ofb_functions[];59extern const OSSL_DISPATCH ossl_aes256cfb_functions[];60extern const OSSL_DISPATCH ossl_aes192cfb_functions[];61extern const OSSL_DISPATCH ossl_aes128cfb_functions[];62extern const OSSL_DISPATCH ossl_aes256cfb1_functions[];63extern const OSSL_DISPATCH ossl_aes192cfb1_functions[];64extern const OSSL_DISPATCH ossl_aes128cfb1_functions[];65extern const OSSL_DISPATCH ossl_aes256cfb8_functions[];66extern const OSSL_DISPATCH ossl_aes192cfb8_functions[];67extern const OSSL_DISPATCH ossl_aes128cfb8_functions[];68extern const OSSL_DISPATCH ossl_aes256ctr_functions[];69extern const OSSL_DISPATCH ossl_aes192ctr_functions[];70extern const OSSL_DISPATCH ossl_aes128ctr_functions[];71extern const OSSL_DISPATCH ossl_aes256xts_functions[];72extern const OSSL_DISPATCH ossl_aes128xts_functions[];73#ifndef OPENSSL_NO_OCB74extern const OSSL_DISPATCH ossl_aes256ocb_functions[];75extern const OSSL_DISPATCH ossl_aes192ocb_functions[];76extern const OSSL_DISPATCH ossl_aes128ocb_functions[];77#endif /* OPENSSL_NO_OCB */78extern const OSSL_DISPATCH ossl_aes256gcm_functions[];79extern const OSSL_DISPATCH ossl_aes192gcm_functions[];80extern const OSSL_DISPATCH ossl_aes128gcm_functions[];81extern const OSSL_DISPATCH ossl_aes256ccm_functions[];82extern const OSSL_DISPATCH ossl_aes192ccm_functions[];83extern const OSSL_DISPATCH ossl_aes128ccm_functions[];84extern const OSSL_DISPATCH ossl_aes256wrap_functions[];85extern const OSSL_DISPATCH ossl_aes192wrap_functions[];86extern const OSSL_DISPATCH ossl_aes128wrap_functions[];87extern const OSSL_DISPATCH ossl_aes256wrappad_functions[];88extern const OSSL_DISPATCH ossl_aes192wrappad_functions[];89extern const OSSL_DISPATCH ossl_aes128wrappad_functions[];90extern const OSSL_DISPATCH ossl_aes256wrapinv_functions[];91extern const OSSL_DISPATCH ossl_aes192wrapinv_functions[];92extern const OSSL_DISPATCH ossl_aes128wrapinv_functions[];93extern const OSSL_DISPATCH ossl_aes256wrappadinv_functions[];94extern const OSSL_DISPATCH ossl_aes192wrappadinv_functions[];95extern const OSSL_DISPATCH ossl_aes128wrappadinv_functions[];96extern const OSSL_DISPATCH ossl_aes256cbc_hmac_sha1_functions[];97extern const OSSL_DISPATCH ossl_aes128cbc_hmac_sha1_functions[];98extern const OSSL_DISPATCH ossl_aes256cbc_hmac_sha256_functions[];99extern const OSSL_DISPATCH ossl_aes128cbc_hmac_sha256_functions[];100101#ifndef OPENSSL_NO_ARIA102extern const OSSL_DISPATCH ossl_aria256gcm_functions[];103extern const OSSL_DISPATCH ossl_aria192gcm_functions[];104extern const OSSL_DISPATCH ossl_aria128gcm_functions[];105extern const OSSL_DISPATCH ossl_aria256ccm_functions[];106extern const OSSL_DISPATCH ossl_aria192ccm_functions[];107extern const OSSL_DISPATCH ossl_aria128ccm_functions[];108extern const OSSL_DISPATCH ossl_aria256ecb_functions[];109extern const OSSL_DISPATCH ossl_aria192ecb_functions[];110extern const OSSL_DISPATCH ossl_aria128ecb_functions[];111extern const OSSL_DISPATCH ossl_aria256cbc_functions[];112extern const OSSL_DISPATCH ossl_aria192cbc_functions[];113extern const OSSL_DISPATCH ossl_aria128cbc_functions[];114extern const OSSL_DISPATCH ossl_aria256ofb_functions[];115extern const OSSL_DISPATCH ossl_aria192ofb_functions[];116extern const OSSL_DISPATCH ossl_aria128ofb_functions[];117extern const OSSL_DISPATCH ossl_aria256cfb_functions[];118extern const OSSL_DISPATCH ossl_aria192cfb_functions[];119extern const OSSL_DISPATCH ossl_aria128cfb_functions[];120extern const OSSL_DISPATCH ossl_aria256cfb1_functions[];121extern const OSSL_DISPATCH ossl_aria192cfb1_functions[];122extern const OSSL_DISPATCH ossl_aria128cfb1_functions[];123extern const OSSL_DISPATCH ossl_aria256cfb8_functions[];124extern const OSSL_DISPATCH ossl_aria192cfb8_functions[];125extern const OSSL_DISPATCH ossl_aria128cfb8_functions[];126extern const OSSL_DISPATCH ossl_aria256ctr_functions[];127extern const OSSL_DISPATCH ossl_aria192ctr_functions[];128extern const OSSL_DISPATCH ossl_aria128ctr_functions[];129#endif /* OPENSSL_NO_ARIA */130#ifndef OPENSSL_NO_CAMELLIA131extern const OSSL_DISPATCH ossl_camellia256ecb_functions[];132extern const OSSL_DISPATCH ossl_camellia192ecb_functions[];133extern const OSSL_DISPATCH ossl_camellia128ecb_functions[];134extern const OSSL_DISPATCH ossl_camellia256cbc_functions[];135extern const OSSL_DISPATCH ossl_camellia192cbc_functions[];136extern const OSSL_DISPATCH ossl_camellia128cbc_functions[];137extern const OSSL_DISPATCH ossl_camellia256cbc_cts_functions[];138extern const OSSL_DISPATCH ossl_camellia192cbc_cts_functions[];139extern const OSSL_DISPATCH ossl_camellia128cbc_cts_functions[];140extern const OSSL_DISPATCH ossl_camellia256ofb_functions[];141extern const OSSL_DISPATCH ossl_camellia192ofb_functions[];142extern const OSSL_DISPATCH ossl_camellia128ofb_functions[];143extern const OSSL_DISPATCH ossl_camellia256cfb_functions[];144extern const OSSL_DISPATCH ossl_camellia192cfb_functions[];145extern const OSSL_DISPATCH ossl_camellia128cfb_functions[];146extern const OSSL_DISPATCH ossl_camellia256cfb1_functions[];147extern const OSSL_DISPATCH ossl_camellia192cfb1_functions[];148extern const OSSL_DISPATCH ossl_camellia128cfb1_functions[];149extern const OSSL_DISPATCH ossl_camellia256cfb8_functions[];150extern const OSSL_DISPATCH ossl_camellia192cfb8_functions[];151extern const OSSL_DISPATCH ossl_camellia128cfb8_functions[];152extern const OSSL_DISPATCH ossl_camellia256ctr_functions[];153extern const OSSL_DISPATCH ossl_camellia192ctr_functions[];154extern const OSSL_DISPATCH ossl_camellia128ctr_functions[];155#endif /* OPENSSL_NO_CAMELLIA */156#ifndef OPENSSL_NO_BF157extern const OSSL_DISPATCH ossl_blowfish128ecb_functions[];158extern const OSSL_DISPATCH ossl_blowfish128cbc_functions[];159extern const OSSL_DISPATCH ossl_blowfish128ofb64_functions[];160extern const OSSL_DISPATCH ossl_blowfish128cfb64_functions[];161#endif /* OPENSSL_NO_BF */162#ifndef OPENSSL_NO_IDEA163extern const OSSL_DISPATCH ossl_idea128ecb_functions[];164extern const OSSL_DISPATCH ossl_idea128cbc_functions[];165extern const OSSL_DISPATCH ossl_idea128ofb64_functions[];166extern const OSSL_DISPATCH ossl_idea128cfb64_functions[];167#endif /* OPENSSL_NO_IDEA */168#ifndef OPENSSL_NO_CAST169extern const OSSL_DISPATCH ossl_cast5128ecb_functions[];170extern const OSSL_DISPATCH ossl_cast5128cbc_functions[];171extern const OSSL_DISPATCH ossl_cast5128ofb64_functions[];172extern const OSSL_DISPATCH ossl_cast5128cfb64_functions[];173#endif /* OPENSSL_NO_CAST */174#ifndef OPENSSL_NO_SEED175extern const OSSL_DISPATCH ossl_seed128ecb_functions[];176extern const OSSL_DISPATCH ossl_seed128cbc_functions[];177extern const OSSL_DISPATCH ossl_seed128ofb128_functions[];178extern const OSSL_DISPATCH ossl_seed128cfb128_functions[];179#endif /* OPENSSL_NO_SEED */180#ifndef OPENSSL_NO_SM4181extern const OSSL_DISPATCH ossl_sm4128gcm_functions[];182extern const OSSL_DISPATCH ossl_sm4128ccm_functions[];183extern const OSSL_DISPATCH ossl_sm4128ecb_functions[];184extern const OSSL_DISPATCH ossl_sm4128cbc_functions[];185extern const OSSL_DISPATCH ossl_sm4128ctr_functions[];186extern const OSSL_DISPATCH ossl_sm4128ofb128_functions[];187extern const OSSL_DISPATCH ossl_sm4128cfb128_functions[];188extern const OSSL_DISPATCH ossl_sm4128xts_functions[];189#endif /* OPENSSL_NO_SM4 */190#ifndef OPENSSL_NO_RC5191extern const OSSL_DISPATCH ossl_rc5128ecb_functions[];192extern const OSSL_DISPATCH ossl_rc5128cbc_functions[];193extern const OSSL_DISPATCH ossl_rc5128ofb64_functions[];194extern const OSSL_DISPATCH ossl_rc5128cfb64_functions[];195#endif /* OPENSSL_NO_RC5 */196#ifndef OPENSSL_NO_RC2197extern const OSSL_DISPATCH ossl_rc2128ecb_functions[];198extern const OSSL_DISPATCH ossl_rc2128cbc_functions[];199extern const OSSL_DISPATCH ossl_rc240cbc_functions[];200extern const OSSL_DISPATCH ossl_rc264cbc_functions[];201extern const OSSL_DISPATCH ossl_rc2128cfb128_functions[];202extern const OSSL_DISPATCH ossl_rc2128ofb128_functions[];203#endif /* OPENSSL_NO_RC2 */204#ifndef OPENSSL_NO_DES205extern const OSSL_DISPATCH ossl_tdes_ede3_ecb_functions[];206extern const OSSL_DISPATCH ossl_tdes_ede3_cbc_functions[];207# ifndef FIPS_MODULE208extern const OSSL_DISPATCH ossl_tdes_ede3_ofb_functions[];209extern const OSSL_DISPATCH ossl_tdes_ede3_cfb_functions[];210extern const OSSL_DISPATCH ossl_tdes_ede3_cfb8_functions[];211extern const OSSL_DISPATCH ossl_tdes_ede3_cfb1_functions[];212213extern const OSSL_DISPATCH ossl_tdes_ede2_ecb_functions[];214extern const OSSL_DISPATCH ossl_tdes_ede2_cbc_functions[];215extern const OSSL_DISPATCH ossl_tdes_ede2_ofb_functions[];216extern const OSSL_DISPATCH ossl_tdes_ede2_cfb_functions[];217218extern const OSSL_DISPATCH ossl_tdes_desx_cbc_functions[];219extern const OSSL_DISPATCH ossl_tdes_wrap_cbc_functions[];220221extern const OSSL_DISPATCH ossl_des_ecb_functions[];222extern const OSSL_DISPATCH ossl_des_cbc_functions[];223extern const OSSL_DISPATCH ossl_des_ofb64_functions[];224extern const OSSL_DISPATCH ossl_des_cfb64_functions[];225extern const OSSL_DISPATCH ossl_des_cfb1_functions[];226extern const OSSL_DISPATCH ossl_des_cfb8_functions[];227# endif /* FIPS_MODULE */228#endif /* OPENSSL_NO_DES */229230#ifndef OPENSSL_NO_RC4231extern const OSSL_DISPATCH ossl_rc440_functions[];232extern const OSSL_DISPATCH ossl_rc4128_functions[];233# ifndef OPENSSL_NO_MD5234extern const OSSL_DISPATCH ossl_rc4_hmac_ossl_md5_functions[];235# endif /* OPENSSL_NO_MD5 */236#endif /* OPENSSL_NO_RC4 */237#ifndef OPENSSL_NO_CHACHA238extern const OSSL_DISPATCH ossl_chacha20_functions[];239# ifndef OPENSSL_NO_POLY1305240extern const OSSL_DISPATCH ossl_chacha20_ossl_poly1305_functions[];241# endif /* OPENSSL_NO_POLY1305 */242#endif /* OPENSSL_NO_CHACHA */243244245#ifndef OPENSSL_NO_SIV246extern const OSSL_DISPATCH ossl_aes128siv_functions[];247extern const OSSL_DISPATCH ossl_aes192siv_functions[];248extern const OSSL_DISPATCH ossl_aes256siv_functions[];249extern const OSSL_DISPATCH ossl_aes128gcm_siv_functions[];250extern const OSSL_DISPATCH ossl_aes192gcm_siv_functions[];251extern const OSSL_DISPATCH ossl_aes256gcm_siv_functions[];252#endif /* OPENSSL_NO_SIV */253254/* MACs */255extern const OSSL_DISPATCH ossl_blake2bmac_functions[];256extern const OSSL_DISPATCH ossl_blake2smac_functions[];257extern const OSSL_DISPATCH ossl_cmac_functions[];258extern const OSSL_DISPATCH ossl_gmac_functions[];259extern const OSSL_DISPATCH ossl_hmac_functions[];260#ifdef FIPS_MODULE261extern const OSSL_DISPATCH ossl_hmac_internal_functions[];262extern const OSSL_DISPATCH ossl_kmac128_internal_functions[];263extern const OSSL_DISPATCH ossl_kmac256_internal_functions[];264#endif265extern const OSSL_DISPATCH ossl_kmac128_functions[];266extern const OSSL_DISPATCH ossl_kmac256_functions[];267extern const OSSL_DISPATCH ossl_siphash_functions[];268extern const OSSL_DISPATCH ossl_poly1305_functions[];269270/* KDFs / PRFs */271extern const OSSL_DISPATCH ossl_kdf_pbkdf1_functions[];272extern const OSSL_DISPATCH ossl_kdf_pbkdf2_functions[];273extern const OSSL_DISPATCH ossl_kdf_pvk_functions[];274extern const OSSL_DISPATCH ossl_kdf_pkcs12_functions[];275#ifndef OPENSSL_NO_SCRYPT276extern const OSSL_DISPATCH ossl_kdf_scrypt_functions[];277#endif278extern const OSSL_DISPATCH ossl_kdf_tls1_prf_functions[];279extern const OSSL_DISPATCH ossl_kdf_hkdf_functions[];280extern const OSSL_DISPATCH ossl_kdf_tls1_3_kdf_functions[];281extern const OSSL_DISPATCH ossl_kdf_sshkdf_functions[];282extern const OSSL_DISPATCH ossl_kdf_sskdf_functions[];283extern const OSSL_DISPATCH ossl_kdf_x963_kdf_functions[];284extern const OSSL_DISPATCH ossl_kdf_kbkdf_functions[];285extern const OSSL_DISPATCH ossl_kdf_x942_kdf_functions[];286extern const OSSL_DISPATCH ossl_kdf_krb5kdf_functions[];287extern const OSSL_DISPATCH ossl_kdf_hmac_drbg_functions[];288#ifndef OPENSSL_NO_ARGON2289extern const OSSL_DISPATCH ossl_kdf_argon2i_functions[];290extern const OSSL_DISPATCH ossl_kdf_argon2d_functions[];291extern const OSSL_DISPATCH ossl_kdf_argon2id_functions[];292#endif293294/* RNGs */295extern const OSSL_DISPATCH ossl_test_rng_functions[];296extern const OSSL_DISPATCH ossl_seed_src_functions[];297extern const OSSL_DISPATCH ossl_jitter_functions[];298extern const OSSL_DISPATCH ossl_crng_test_functions[];299extern const OSSL_DISPATCH ossl_drbg_hash_functions[];300extern const OSSL_DISPATCH ossl_drbg_ossl_hmac_functions[];301extern const OSSL_DISPATCH ossl_drbg_ctr_functions[];302extern const OSSL_DISPATCH crngt_functions[];303304/* Key management */305extern const OSSL_DISPATCH ossl_dh_keymgmt_functions[];306extern const OSSL_DISPATCH ossl_dhx_keymgmt_functions[];307extern const OSSL_DISPATCH ossl_dsa_keymgmt_functions[];308extern const OSSL_DISPATCH ossl_rsa_keymgmt_functions[];309extern const OSSL_DISPATCH ossl_rsapss_keymgmt_functions[];310extern const OSSL_DISPATCH ossl_kdf_keymgmt_functions[];311extern const OSSL_DISPATCH ossl_mac_legacy_keymgmt_functions[];312extern const OSSL_DISPATCH ossl_cmac_legacy_keymgmt_functions[];313#ifndef OPENSSL_NO_EC314extern const OSSL_DISPATCH ossl_ec_keymgmt_functions[];315# ifndef OPENSSL_NO_ECX316extern const OSSL_DISPATCH ossl_x25519_keymgmt_functions[];317extern const OSSL_DISPATCH ossl_x448_keymgmt_functions[];318extern const OSSL_DISPATCH ossl_ed25519_keymgmt_functions[];319extern const OSSL_DISPATCH ossl_ed448_keymgmt_functions[];320# endif321# ifndef OPENSSL_NO_SM2322extern const OSSL_DISPATCH ossl_sm2_keymgmt_functions[];323# endif324#endif325extern const OSSL_DISPATCH ossl_ml_dsa_44_keymgmt_functions[];326extern const OSSL_DISPATCH ossl_ml_dsa_65_keymgmt_functions[];327extern const OSSL_DISPATCH ossl_ml_dsa_87_keymgmt_functions[];328#ifndef OPENSSL_NO_ML_KEM329extern const OSSL_DISPATCH ossl_ml_kem_512_keymgmt_functions[];330extern const OSSL_DISPATCH ossl_ml_kem_768_keymgmt_functions[];331extern const OSSL_DISPATCH ossl_ml_kem_1024_keymgmt_functions[];332# ifndef OPENSSL_NO_EC333# ifndef OPENSSL_NO_ECX334extern const OSSL_DISPATCH ossl_mlx_x25519_kem_kmgmt_functions[];335extern const OSSL_DISPATCH ossl_mlx_x448_kem_kmgmt_functions[];336# endif337extern const OSSL_DISPATCH ossl_mlx_p256_kem_kmgmt_functions[];338extern const OSSL_DISPATCH ossl_mlx_p384_kem_kmgmt_functions[];339# endif340#endif341#ifndef OPENSSL_NO_SLH_DSA342extern const OSSL_DISPATCH ossl_slh_dsa_sha2_128s_keymgmt_functions[];343extern const OSSL_DISPATCH ossl_slh_dsa_sha2_128f_keymgmt_functions[];344extern const OSSL_DISPATCH ossl_slh_dsa_sha2_192s_keymgmt_functions[];345extern const OSSL_DISPATCH ossl_slh_dsa_sha2_192f_keymgmt_functions[];346extern const OSSL_DISPATCH ossl_slh_dsa_sha2_256s_keymgmt_functions[];347extern const OSSL_DISPATCH ossl_slh_dsa_sha2_256f_keymgmt_functions[];348extern const OSSL_DISPATCH ossl_slh_dsa_shake_128s_keymgmt_functions[];349extern const OSSL_DISPATCH ossl_slh_dsa_shake_128f_keymgmt_functions[];350extern const OSSL_DISPATCH ossl_slh_dsa_shake_192s_keymgmt_functions[];351extern const OSSL_DISPATCH ossl_slh_dsa_shake_192f_keymgmt_functions[];352extern const OSSL_DISPATCH ossl_slh_dsa_shake_256s_keymgmt_functions[];353extern const OSSL_DISPATCH ossl_slh_dsa_shake_256f_keymgmt_functions[];354#endif /* OPENSSL_NO_SLH_DSA */355356/* Key Exchange */357extern const OSSL_DISPATCH ossl_dh_keyexch_functions[];358#ifndef OPENSSL_NO_EC359extern const OSSL_DISPATCH ossl_ecdh_keyexch_functions[];360# ifndef OPENSSL_NO_ECX361extern const OSSL_DISPATCH ossl_x25519_keyexch_functions[];362extern const OSSL_DISPATCH ossl_x448_keyexch_functions[];363# endif364#endif365extern const OSSL_DISPATCH ossl_kdf_tls1_prf_keyexch_functions[];366extern const OSSL_DISPATCH ossl_kdf_hkdf_keyexch_functions[];367extern const OSSL_DISPATCH ossl_kdf_scrypt_keyexch_functions[];368369/* Signature */370extern const OSSL_DISPATCH ossl_dsa_signature_functions[];371extern const OSSL_DISPATCH ossl_dsa_sha1_signature_functions[];372extern const OSSL_DISPATCH ossl_dsa_sha224_signature_functions[];373extern const OSSL_DISPATCH ossl_dsa_sha256_signature_functions[];374extern const OSSL_DISPATCH ossl_dsa_sha384_signature_functions[];375extern const OSSL_DISPATCH ossl_dsa_sha512_signature_functions[];376extern const OSSL_DISPATCH ossl_dsa_sha3_224_signature_functions[];377extern const OSSL_DISPATCH ossl_dsa_sha3_256_signature_functions[];378extern const OSSL_DISPATCH ossl_dsa_sha3_384_signature_functions[];379extern const OSSL_DISPATCH ossl_dsa_sha3_512_signature_functions[];380extern const OSSL_DISPATCH ossl_rsa_signature_functions[];381#ifndef OPENSSL_NO_MD5382extern const OSSL_DISPATCH ossl_rsa_md5_signature_functions[];383#endif384#ifndef OPENSSL_NO_RMD160385extern const OSSL_DISPATCH ossl_rsa_ripemd160_signature_functions[];386#endif387extern const OSSL_DISPATCH ossl_rsa_sha1_signature_functions[];388extern const OSSL_DISPATCH ossl_rsa_sha224_signature_functions[];389extern const OSSL_DISPATCH ossl_rsa_sha256_signature_functions[];390extern const OSSL_DISPATCH ossl_rsa_sha384_signature_functions[];391extern const OSSL_DISPATCH ossl_rsa_sha512_signature_functions[];392extern const OSSL_DISPATCH ossl_rsa_sha512_224_signature_functions[];393extern const OSSL_DISPATCH ossl_rsa_sha512_256_signature_functions[];394extern const OSSL_DISPATCH ossl_rsa_sha3_224_signature_functions[];395extern const OSSL_DISPATCH ossl_rsa_sha3_256_signature_functions[];396extern const OSSL_DISPATCH ossl_rsa_sha3_384_signature_functions[];397extern const OSSL_DISPATCH ossl_rsa_sha3_512_signature_functions[];398#ifndef OPENSSL_NO_SM3399extern const OSSL_DISPATCH ossl_rsa_sm3_signature_functions[];400#endif401extern const OSSL_DISPATCH ossl_ed25519_signature_functions[];402extern const OSSL_DISPATCH ossl_ed25519ph_signature_functions[];403extern const OSSL_DISPATCH ossl_ed25519ctx_signature_functions[];404extern const OSSL_DISPATCH ossl_ed448_signature_functions[];405extern const OSSL_DISPATCH ossl_ed448ph_signature_functions[];406extern const OSSL_DISPATCH ossl_ecdsa_signature_functions[];407extern const OSSL_DISPATCH ossl_ecdsa_sha1_signature_functions[];408extern const OSSL_DISPATCH ossl_ecdsa_sha224_signature_functions[];409extern const OSSL_DISPATCH ossl_ecdsa_sha256_signature_functions[];410extern const OSSL_DISPATCH ossl_ecdsa_sha384_signature_functions[];411extern const OSSL_DISPATCH ossl_ecdsa_sha512_signature_functions[];412extern const OSSL_DISPATCH ossl_ecdsa_sha3_224_signature_functions[];413extern const OSSL_DISPATCH ossl_ecdsa_sha3_256_signature_functions[];414extern const OSSL_DISPATCH ossl_ecdsa_sha3_384_signature_functions[];415extern const OSSL_DISPATCH ossl_ecdsa_sha3_512_signature_functions[];416extern const OSSL_DISPATCH ossl_mac_legacy_hmac_signature_functions[];417extern const OSSL_DISPATCH ossl_mac_legacy_siphash_signature_functions[];418extern const OSSL_DISPATCH ossl_mac_legacy_poly1305_signature_functions[];419extern const OSSL_DISPATCH ossl_mac_legacy_cmac_signature_functions[];420extern const OSSL_DISPATCH ossl_sm2_signature_functions[];421extern const OSSL_DISPATCH ossl_ml_dsa_44_signature_functions[];422extern const OSSL_DISPATCH ossl_ml_dsa_65_signature_functions[];423extern const OSSL_DISPATCH ossl_ml_dsa_87_signature_functions[];424#ifndef OPENSSL_NO_SLH_DSA425extern const OSSL_DISPATCH ossl_slh_dsa_sha2_128s_signature_functions[];426extern const OSSL_DISPATCH ossl_slh_dsa_sha2_128f_signature_functions[];427extern const OSSL_DISPATCH ossl_slh_dsa_sha2_192s_signature_functions[];428extern const OSSL_DISPATCH ossl_slh_dsa_sha2_192f_signature_functions[];429extern const OSSL_DISPATCH ossl_slh_dsa_sha2_256s_signature_functions[];430extern const OSSL_DISPATCH ossl_slh_dsa_sha2_256f_signature_functions[];431extern const OSSL_DISPATCH ossl_slh_dsa_shake_128s_signature_functions[];432extern const OSSL_DISPATCH ossl_slh_dsa_shake_128f_signature_functions[];433extern const OSSL_DISPATCH ossl_slh_dsa_shake_192s_signature_functions[];434extern const OSSL_DISPATCH ossl_slh_dsa_shake_192f_signature_functions[];435extern const OSSL_DISPATCH ossl_slh_dsa_shake_256s_signature_functions[];436extern const OSSL_DISPATCH ossl_slh_dsa_shake_256f_signature_functions[];437#endif /* OPENSSL_NO_SLH_DSA */438439/* Asym Cipher */440extern const OSSL_DISPATCH ossl_rsa_asym_cipher_functions[];441#ifndef OPENSSL_NO_SM2442extern const OSSL_DISPATCH ossl_sm2_asym_cipher_functions[];443#endif444445/* Asym Key encapsulation */446extern const OSSL_DISPATCH ossl_rsa_asym_kem_functions[];447#ifndef OPENSSL_NO_EC448extern const OSSL_DISPATCH ossl_ec_asym_kem_functions[];449# ifndef OPENSSL_NO_ECX450extern const OSSL_DISPATCH ossl_ecx_asym_kem_functions[];451# endif452#endif453#ifndef OPENSSL_NO_ML_KEM454extern const OSSL_DISPATCH ossl_ml_kem_asym_kem_functions[];455# ifndef OPENSSL_NO_EC456extern const OSSL_DISPATCH ossl_mlx_kem_asym_kem_functions[];457# endif458#endif459460/* Encoders */461extern const OSSL_DISPATCH ossl_rsa_to_PKCS1_der_encoder_functions[];462extern const OSSL_DISPATCH ossl_rsa_to_PKCS1_pem_encoder_functions[];463extern const OSSL_DISPATCH ossl_rsa_to_EncryptedPrivateKeyInfo_der_encoder_functions[];464extern const OSSL_DISPATCH ossl_rsa_to_EncryptedPrivateKeyInfo_pem_encoder_functions[];465extern const OSSL_DISPATCH ossl_rsa_to_PrivateKeyInfo_der_encoder_functions[];466extern const OSSL_DISPATCH ossl_rsa_to_PrivateKeyInfo_pem_encoder_functions[];467extern const OSSL_DISPATCH ossl_rsa_to_RSA_der_encoder_functions[];468extern const OSSL_DISPATCH ossl_rsa_to_RSA_pem_encoder_functions[];469extern const OSSL_DISPATCH ossl_rsa_to_SubjectPublicKeyInfo_der_encoder_functions[];470extern const OSSL_DISPATCH ossl_rsa_to_SubjectPublicKeyInfo_pem_encoder_functions[];471extern const OSSL_DISPATCH ossl_rsa_to_msblob_encoder_functions[];472extern const OSSL_DISPATCH ossl_rsa_to_pvk_encoder_functions[];473extern const OSSL_DISPATCH ossl_rsa_to_text_encoder_functions[];474extern const OSSL_DISPATCH ossl_rsa_to_type_specific_keypair_der_encoder_functions[];475extern const OSSL_DISPATCH ossl_rsa_to_type_specific_keypair_pem_encoder_functions[];476477extern const OSSL_DISPATCH ossl_rsapss_to_PKCS1_der_encoder_functions[];478extern const OSSL_DISPATCH ossl_rsapss_to_PKCS1_pem_encoder_functions[];479extern const OSSL_DISPATCH ossl_rsapss_to_EncryptedPrivateKeyInfo_der_encoder_functions[];480extern const OSSL_DISPATCH ossl_rsapss_to_EncryptedPrivateKeyInfo_pem_encoder_functions[];481extern const OSSL_DISPATCH ossl_rsapss_to_PrivateKeyInfo_der_encoder_functions[];482extern const OSSL_DISPATCH ossl_rsapss_to_PrivateKeyInfo_pem_encoder_functions[];483extern const OSSL_DISPATCH ossl_rsapss_to_SubjectPublicKeyInfo_der_encoder_functions[];484extern const OSSL_DISPATCH ossl_rsapss_to_SubjectPublicKeyInfo_pem_encoder_functions[];485extern const OSSL_DISPATCH ossl_rsapss_to_text_encoder_functions[];486487extern const OSSL_DISPATCH ossl_dh_to_DH_der_encoder_functions[];488extern const OSSL_DISPATCH ossl_dh_to_DH_pem_encoder_functions[];489extern const OSSL_DISPATCH ossl_dh_to_PKCS3_der_encoder_functions[];490extern const OSSL_DISPATCH ossl_dh_to_PKCS3_pem_encoder_functions[];491extern const OSSL_DISPATCH ossl_dh_to_EncryptedPrivateKeyInfo_der_encoder_functions[];492extern const OSSL_DISPATCH ossl_dh_to_EncryptedPrivateKeyInfo_pem_encoder_functions[];493extern const OSSL_DISPATCH ossl_dh_to_PrivateKeyInfo_der_encoder_functions[];494extern const OSSL_DISPATCH ossl_dh_to_PrivateKeyInfo_pem_encoder_functions[];495extern const OSSL_DISPATCH ossl_dh_to_SubjectPublicKeyInfo_der_encoder_functions[];496extern const OSSL_DISPATCH ossl_dh_to_SubjectPublicKeyInfo_pem_encoder_functions[];497extern const OSSL_DISPATCH ossl_dh_to_type_specific_params_der_encoder_functions[];498extern const OSSL_DISPATCH ossl_dh_to_type_specific_params_pem_encoder_functions[];499extern const OSSL_DISPATCH ossl_dh_to_text_encoder_functions[];500501extern const OSSL_DISPATCH ossl_dhx_to_DHX_der_encoder_functions[];502extern const OSSL_DISPATCH ossl_dhx_to_DHX_pem_encoder_functions[];503extern const OSSL_DISPATCH ossl_dhx_to_EncryptedPrivateKeyInfo_der_encoder_functions[];504extern const OSSL_DISPATCH ossl_dhx_to_EncryptedPrivateKeyInfo_pem_encoder_functions[];505extern const OSSL_DISPATCH ossl_dhx_to_PrivateKeyInfo_der_encoder_functions[];506extern const OSSL_DISPATCH ossl_dhx_to_PrivateKeyInfo_pem_encoder_functions[];507extern const OSSL_DISPATCH ossl_dhx_to_SubjectPublicKeyInfo_der_encoder_functions[];508extern const OSSL_DISPATCH ossl_dhx_to_SubjectPublicKeyInfo_pem_encoder_functions[];509extern const OSSL_DISPATCH ossl_dhx_to_X9_42_der_encoder_functions[];510extern const OSSL_DISPATCH ossl_dhx_to_X9_42_pem_encoder_functions[];511extern const OSSL_DISPATCH ossl_dhx_to_type_specific_params_der_encoder_functions[];512extern const OSSL_DISPATCH ossl_dhx_to_type_specific_params_pem_encoder_functions[];513extern const OSSL_DISPATCH ossl_dhx_to_text_encoder_functions[];514515extern const OSSL_DISPATCH ossl_dsa_to_DSA_der_encoder_functions[];516extern const OSSL_DISPATCH ossl_dsa_to_DSA_pem_encoder_functions[];517extern const OSSL_DISPATCH ossl_dsa_to_EncryptedPrivateKeyInfo_der_encoder_functions[];518extern const OSSL_DISPATCH ossl_dsa_to_EncryptedPrivateKeyInfo_pem_encoder_functions[];519extern const OSSL_DISPATCH ossl_dsa_to_PrivateKeyInfo_der_encoder_functions[];520extern const OSSL_DISPATCH ossl_dsa_to_PrivateKeyInfo_pem_encoder_functions[];521extern const OSSL_DISPATCH ossl_dsa_to_SubjectPublicKeyInfo_der_encoder_functions[];522extern const OSSL_DISPATCH ossl_dsa_to_SubjectPublicKeyInfo_pem_encoder_functions[];523extern const OSSL_DISPATCH ossl_dsa_to_type_specific_pem_encoder_functions[];524extern const OSSL_DISPATCH ossl_dsa_to_type_specific_der_encoder_functions[];525extern const OSSL_DISPATCH ossl_dsa_to_msblob_encoder_functions[];526extern const OSSL_DISPATCH ossl_dsa_to_pvk_encoder_functions[];527extern const OSSL_DISPATCH ossl_dsa_to_text_encoder_functions[];528529extern const OSSL_DISPATCH ossl_ec_to_EC_der_encoder_functions[];530extern const OSSL_DISPATCH ossl_ec_to_EC_pem_encoder_functions[];531extern const OSSL_DISPATCH ossl_ec_to_blob_encoder_functions[];532extern const OSSL_DISPATCH ossl_ec_to_EncryptedPrivateKeyInfo_der_encoder_functions[];533extern const OSSL_DISPATCH ossl_ec_to_EncryptedPrivateKeyInfo_pem_encoder_functions[];534extern const OSSL_DISPATCH ossl_ec_to_PrivateKeyInfo_der_encoder_functions[];535extern const OSSL_DISPATCH ossl_ec_to_PrivateKeyInfo_pem_encoder_functions[];536extern const OSSL_DISPATCH ossl_ec_to_SubjectPublicKeyInfo_der_encoder_functions[];537extern const OSSL_DISPATCH ossl_ec_to_SubjectPublicKeyInfo_pem_encoder_functions[];538extern const OSSL_DISPATCH ossl_ec_to_X9_62_der_encoder_functions[];539extern const OSSL_DISPATCH ossl_ec_to_X9_62_pem_encoder_functions[];540extern const OSSL_DISPATCH ossl_ec_to_type_specific_no_pub_pem_encoder_functions[];541extern const OSSL_DISPATCH ossl_ec_to_type_specific_no_pub_der_encoder_functions[];542extern const OSSL_DISPATCH ossl_ec_to_text_encoder_functions[];543544#ifndef OPENSSL_NO_SM2545extern const OSSL_DISPATCH ossl_sm2_to_SM2_der_encoder_functions[];546extern const OSSL_DISPATCH ossl_sm2_to_SM2_pem_encoder_functions[];547extern const OSSL_DISPATCH ossl_sm2_to_blob_encoder_functions[];548extern const OSSL_DISPATCH ossl_sm2_to_EncryptedPrivateKeyInfo_der_encoder_functions[];549extern const OSSL_DISPATCH ossl_sm2_to_EncryptedPrivateKeyInfo_pem_encoder_functions[];550extern const OSSL_DISPATCH ossl_sm2_to_PrivateKeyInfo_der_encoder_functions[];551extern const OSSL_DISPATCH ossl_sm2_to_PrivateKeyInfo_pem_encoder_functions[];552extern const OSSL_DISPATCH ossl_sm2_to_SubjectPublicKeyInfo_der_encoder_functions[];553extern const OSSL_DISPATCH ossl_sm2_to_SubjectPublicKeyInfo_pem_encoder_functions[];554extern const OSSL_DISPATCH ossl_sm2_to_type_specific_no_pub_pem_encoder_functions[];555extern const OSSL_DISPATCH ossl_sm2_to_type_specific_no_pub_der_encoder_functions[];556extern const OSSL_DISPATCH ossl_sm2_to_text_encoder_functions[];557#endif558559extern const OSSL_DISPATCH ossl_ed25519_to_EncryptedPrivateKeyInfo_der_encoder_functions[];560extern const OSSL_DISPATCH ossl_ed25519_to_EncryptedPrivateKeyInfo_pem_encoder_functions[];561extern const OSSL_DISPATCH ossl_ed25519_to_PrivateKeyInfo_der_encoder_functions[];562extern const OSSL_DISPATCH ossl_ed25519_to_PrivateKeyInfo_pem_encoder_functions[];563extern const OSSL_DISPATCH ossl_ed25519_to_SubjectPublicKeyInfo_der_encoder_functions[];564extern const OSSL_DISPATCH ossl_ed25519_to_SubjectPublicKeyInfo_pem_encoder_functions[];565extern const OSSL_DISPATCH ossl_ed25519_to_OSSL_current_der_encoder_functions[];566extern const OSSL_DISPATCH ossl_ed25519_to_text_encoder_functions[];567568extern const OSSL_DISPATCH ossl_ed448_to_EncryptedPrivateKeyInfo_der_encoder_functions[];569extern const OSSL_DISPATCH ossl_ed448_to_EncryptedPrivateKeyInfo_pem_encoder_functions[];570extern const OSSL_DISPATCH ossl_ed448_to_PrivateKeyInfo_der_encoder_functions[];571extern const OSSL_DISPATCH ossl_ed448_to_PrivateKeyInfo_pem_encoder_functions[];572extern const OSSL_DISPATCH ossl_ed448_to_SubjectPublicKeyInfo_der_encoder_functions[];573extern const OSSL_DISPATCH ossl_ed448_to_SubjectPublicKeyInfo_pem_encoder_functions[];574extern const OSSL_DISPATCH ossl_ed448_to_OSSL_current_der_encoder_functions[];575extern const OSSL_DISPATCH ossl_ed448_to_text_encoder_functions[];576577extern const OSSL_DISPATCH ossl_x25519_to_EncryptedPrivateKeyInfo_der_encoder_functions[];578extern const OSSL_DISPATCH ossl_x25519_to_EncryptedPrivateKeyInfo_pem_encoder_functions[];579extern const OSSL_DISPATCH ossl_x25519_to_PrivateKeyInfo_der_encoder_functions[];580extern const OSSL_DISPATCH ossl_x25519_to_PrivateKeyInfo_pem_encoder_functions[];581extern const OSSL_DISPATCH ossl_x25519_to_SubjectPublicKeyInfo_der_encoder_functions[];582extern const OSSL_DISPATCH ossl_x25519_to_SubjectPublicKeyInfo_pem_encoder_functions[];583extern const OSSL_DISPATCH ossl_x25519_to_OSSL_current_der_encoder_functions[];584extern const OSSL_DISPATCH ossl_x25519_to_text_encoder_functions[];585586extern const OSSL_DISPATCH ossl_x448_to_EncryptedPrivateKeyInfo_der_encoder_functions[];587extern const OSSL_DISPATCH ossl_x448_to_EncryptedPrivateKeyInfo_pem_encoder_functions[];588extern const OSSL_DISPATCH ossl_x448_to_PrivateKeyInfo_der_encoder_functions[];589extern const OSSL_DISPATCH ossl_x448_to_PrivateKeyInfo_pem_encoder_functions[];590extern const OSSL_DISPATCH ossl_x448_to_SubjectPublicKeyInfo_der_encoder_functions[];591extern const OSSL_DISPATCH ossl_x448_to_SubjectPublicKeyInfo_pem_encoder_functions[];592extern const OSSL_DISPATCH ossl_x448_to_OSSL_current_der_encoder_functions[];593extern const OSSL_DISPATCH ossl_x448_to_text_encoder_functions[];594595extern const OSSL_DISPATCH ossl_ml_dsa_44_to_EncryptedPrivateKeyInfo_der_encoder_functions[];596extern const OSSL_DISPATCH ossl_ml_dsa_44_to_EncryptedPrivateKeyInfo_pem_encoder_functions[];597extern const OSSL_DISPATCH ossl_ml_dsa_44_to_PrivateKeyInfo_der_encoder_functions[];598extern const OSSL_DISPATCH ossl_ml_dsa_44_to_PrivateKeyInfo_pem_encoder_functions[];599extern const OSSL_DISPATCH ossl_ml_dsa_44_to_SubjectPublicKeyInfo_der_encoder_functions[];600extern const OSSL_DISPATCH ossl_ml_dsa_44_to_SubjectPublicKeyInfo_pem_encoder_functions[];601extern const OSSL_DISPATCH ossl_ml_dsa_44_to_OSSL_current_der_encoder_functions[];602extern const OSSL_DISPATCH ossl_ml_dsa_44_to_text_encoder_functions[];603604extern const OSSL_DISPATCH ossl_ml_dsa_65_to_EncryptedPrivateKeyInfo_der_encoder_functions[];605extern const OSSL_DISPATCH ossl_ml_dsa_65_to_EncryptedPrivateKeyInfo_pem_encoder_functions[];606extern const OSSL_DISPATCH ossl_ml_dsa_65_to_PrivateKeyInfo_der_encoder_functions[];607extern const OSSL_DISPATCH ossl_ml_dsa_65_to_PrivateKeyInfo_pem_encoder_functions[];608extern const OSSL_DISPATCH ossl_ml_dsa_65_to_SubjectPublicKeyInfo_der_encoder_functions[];609extern const OSSL_DISPATCH ossl_ml_dsa_65_to_SubjectPublicKeyInfo_pem_encoder_functions[];610extern const OSSL_DISPATCH ossl_ml_dsa_65_to_OSSL_current_der_encoder_functions[];611extern const OSSL_DISPATCH ossl_ml_dsa_65_to_text_encoder_functions[];612613extern const OSSL_DISPATCH ossl_ml_dsa_87_to_EncryptedPrivateKeyInfo_der_encoder_functions[];614extern const OSSL_DISPATCH ossl_ml_dsa_87_to_EncryptedPrivateKeyInfo_pem_encoder_functions[];615extern const OSSL_DISPATCH ossl_ml_dsa_87_to_PrivateKeyInfo_der_encoder_functions[];616extern const OSSL_DISPATCH ossl_ml_dsa_87_to_PrivateKeyInfo_pem_encoder_functions[];617extern const OSSL_DISPATCH ossl_ml_dsa_87_to_SubjectPublicKeyInfo_der_encoder_functions[];618extern const OSSL_DISPATCH ossl_ml_dsa_87_to_SubjectPublicKeyInfo_pem_encoder_functions[];619extern const OSSL_DISPATCH ossl_ml_dsa_87_to_OSSL_current_der_encoder_functions[];620extern const OSSL_DISPATCH ossl_ml_dsa_87_to_text_encoder_functions[];621622extern const OSSL_DISPATCH ossl_slh_dsa_sha2_128s_to_EncryptedPrivateKeyInfo_der_encoder_functions[];623extern const OSSL_DISPATCH ossl_slh_dsa_sha2_128f_to_EncryptedPrivateKeyInfo_der_encoder_functions[];624extern const OSSL_DISPATCH ossl_slh_dsa_sha2_192s_to_EncryptedPrivateKeyInfo_der_encoder_functions[];625extern const OSSL_DISPATCH ossl_slh_dsa_sha2_192f_to_EncryptedPrivateKeyInfo_der_encoder_functions[];626extern const OSSL_DISPATCH ossl_slh_dsa_sha2_256s_to_EncryptedPrivateKeyInfo_der_encoder_functions[];627extern const OSSL_DISPATCH ossl_slh_dsa_sha2_256f_to_EncryptedPrivateKeyInfo_der_encoder_functions[];628extern const OSSL_DISPATCH ossl_slh_dsa_shake_128s_to_EncryptedPrivateKeyInfo_der_encoder_functions[];629extern const OSSL_DISPATCH ossl_slh_dsa_shake_128f_to_EncryptedPrivateKeyInfo_der_encoder_functions[];630extern const OSSL_DISPATCH ossl_slh_dsa_shake_192s_to_EncryptedPrivateKeyInfo_der_encoder_functions[];631extern const OSSL_DISPATCH ossl_slh_dsa_shake_192f_to_EncryptedPrivateKeyInfo_der_encoder_functions[];632extern const OSSL_DISPATCH ossl_slh_dsa_shake_256s_to_EncryptedPrivateKeyInfo_der_encoder_functions[];633extern const OSSL_DISPATCH ossl_slh_dsa_shake_256f_to_EncryptedPrivateKeyInfo_der_encoder_functions[];634extern const OSSL_DISPATCH ossl_slh_dsa_sha2_128s_to_EncryptedPrivateKeyInfo_pem_encoder_functions[];635extern const OSSL_DISPATCH ossl_slh_dsa_sha2_128f_to_EncryptedPrivateKeyInfo_pem_encoder_functions[];636extern const OSSL_DISPATCH ossl_slh_dsa_sha2_192s_to_EncryptedPrivateKeyInfo_pem_encoder_functions[];637extern const OSSL_DISPATCH ossl_slh_dsa_sha2_192f_to_EncryptedPrivateKeyInfo_pem_encoder_functions[];638extern const OSSL_DISPATCH ossl_slh_dsa_sha2_256s_to_EncryptedPrivateKeyInfo_pem_encoder_functions[];639extern const OSSL_DISPATCH ossl_slh_dsa_sha2_256f_to_EncryptedPrivateKeyInfo_pem_encoder_functions[];640extern const OSSL_DISPATCH ossl_slh_dsa_shake_128s_to_EncryptedPrivateKeyInfo_pem_encoder_functions[];641extern const OSSL_DISPATCH ossl_slh_dsa_shake_128f_to_EncryptedPrivateKeyInfo_pem_encoder_functions[];642extern const OSSL_DISPATCH ossl_slh_dsa_shake_192s_to_EncryptedPrivateKeyInfo_pem_encoder_functions[];643extern const OSSL_DISPATCH ossl_slh_dsa_shake_192f_to_EncryptedPrivateKeyInfo_pem_encoder_functions[];644extern const OSSL_DISPATCH ossl_slh_dsa_shake_256s_to_EncryptedPrivateKeyInfo_pem_encoder_functions[];645extern const OSSL_DISPATCH ossl_slh_dsa_shake_256f_to_EncryptedPrivateKeyInfo_pem_encoder_functions[];646647extern const OSSL_DISPATCH ossl_slh_dsa_sha2_128s_to_PrivateKeyInfo_der_encoder_functions[];648extern const OSSL_DISPATCH ossl_slh_dsa_sha2_128f_to_PrivateKeyInfo_der_encoder_functions[];649extern const OSSL_DISPATCH ossl_slh_dsa_sha2_192s_to_PrivateKeyInfo_der_encoder_functions[];650extern const OSSL_DISPATCH ossl_slh_dsa_sha2_192f_to_PrivateKeyInfo_der_encoder_functions[];651extern const OSSL_DISPATCH ossl_slh_dsa_sha2_256s_to_PrivateKeyInfo_der_encoder_functions[];652extern const OSSL_DISPATCH ossl_slh_dsa_sha2_256f_to_PrivateKeyInfo_der_encoder_functions[];653extern const OSSL_DISPATCH ossl_slh_dsa_shake_128s_to_PrivateKeyInfo_der_encoder_functions[];654extern const OSSL_DISPATCH ossl_slh_dsa_shake_128f_to_PrivateKeyInfo_der_encoder_functions[];655extern const OSSL_DISPATCH ossl_slh_dsa_shake_192s_to_PrivateKeyInfo_der_encoder_functions[];656extern const OSSL_DISPATCH ossl_slh_dsa_shake_192f_to_PrivateKeyInfo_der_encoder_functions[];657extern const OSSL_DISPATCH ossl_slh_dsa_shake_256s_to_PrivateKeyInfo_der_encoder_functions[];658extern const OSSL_DISPATCH ossl_slh_dsa_shake_256f_to_PrivateKeyInfo_der_encoder_functions[];659extern const OSSL_DISPATCH ossl_slh_dsa_sha2_128s_to_PrivateKeyInfo_pem_encoder_functions[];660extern const OSSL_DISPATCH ossl_slh_dsa_sha2_128f_to_PrivateKeyInfo_pem_encoder_functions[];661extern const OSSL_DISPATCH ossl_slh_dsa_sha2_192s_to_PrivateKeyInfo_pem_encoder_functions[];662extern const OSSL_DISPATCH ossl_slh_dsa_sha2_192f_to_PrivateKeyInfo_pem_encoder_functions[];663extern const OSSL_DISPATCH ossl_slh_dsa_sha2_256s_to_PrivateKeyInfo_pem_encoder_functions[];664extern const OSSL_DISPATCH ossl_slh_dsa_sha2_256f_to_PrivateKeyInfo_pem_encoder_functions[];665extern const OSSL_DISPATCH ossl_slh_dsa_shake_128s_to_PrivateKeyInfo_pem_encoder_functions[];666extern const OSSL_DISPATCH ossl_slh_dsa_shake_128f_to_PrivateKeyInfo_pem_encoder_functions[];667extern const OSSL_DISPATCH ossl_slh_dsa_shake_192s_to_PrivateKeyInfo_pem_encoder_functions[];668extern const OSSL_DISPATCH ossl_slh_dsa_shake_192f_to_PrivateKeyInfo_pem_encoder_functions[];669extern const OSSL_DISPATCH ossl_slh_dsa_shake_256s_to_PrivateKeyInfo_pem_encoder_functions[];670extern const OSSL_DISPATCH ossl_slh_dsa_shake_256f_to_PrivateKeyInfo_pem_encoder_functions[];671672extern const OSSL_DISPATCH ossl_slh_dsa_sha2_128s_to_SubjectPublicKeyInfo_der_encoder_functions[];673extern const OSSL_DISPATCH ossl_slh_dsa_sha2_128f_to_SubjectPublicKeyInfo_der_encoder_functions[];674extern const OSSL_DISPATCH ossl_slh_dsa_sha2_192s_to_SubjectPublicKeyInfo_der_encoder_functions[];675extern const OSSL_DISPATCH ossl_slh_dsa_sha2_192f_to_SubjectPublicKeyInfo_der_encoder_functions[];676extern const OSSL_DISPATCH ossl_slh_dsa_sha2_256s_to_SubjectPublicKeyInfo_der_encoder_functions[];677extern const OSSL_DISPATCH ossl_slh_dsa_sha2_256f_to_SubjectPublicKeyInfo_der_encoder_functions[];678extern const OSSL_DISPATCH ossl_slh_dsa_shake_128s_to_SubjectPublicKeyInfo_der_encoder_functions[];679extern const OSSL_DISPATCH ossl_slh_dsa_shake_128f_to_SubjectPublicKeyInfo_der_encoder_functions[];680extern const OSSL_DISPATCH ossl_slh_dsa_shake_192s_to_SubjectPublicKeyInfo_der_encoder_functions[];681extern const OSSL_DISPATCH ossl_slh_dsa_shake_192f_to_SubjectPublicKeyInfo_der_encoder_functions[];682extern const OSSL_DISPATCH ossl_slh_dsa_shake_256s_to_SubjectPublicKeyInfo_der_encoder_functions[];683extern const OSSL_DISPATCH ossl_slh_dsa_shake_256f_to_SubjectPublicKeyInfo_der_encoder_functions[];684extern const OSSL_DISPATCH ossl_slh_dsa_sha2_128s_to_SubjectPublicKeyInfo_pem_encoder_functions[];685extern const OSSL_DISPATCH ossl_slh_dsa_sha2_128f_to_SubjectPublicKeyInfo_pem_encoder_functions[];686extern const OSSL_DISPATCH ossl_slh_dsa_sha2_192s_to_SubjectPublicKeyInfo_pem_encoder_functions[];687extern const OSSL_DISPATCH ossl_slh_dsa_sha2_192f_to_SubjectPublicKeyInfo_pem_encoder_functions[];688extern const OSSL_DISPATCH ossl_slh_dsa_sha2_256s_to_SubjectPublicKeyInfo_pem_encoder_functions[];689extern const OSSL_DISPATCH ossl_slh_dsa_sha2_256f_to_SubjectPublicKeyInfo_pem_encoder_functions[];690extern const OSSL_DISPATCH ossl_slh_dsa_shake_128s_to_SubjectPublicKeyInfo_pem_encoder_functions[];691extern const OSSL_DISPATCH ossl_slh_dsa_shake_128f_to_SubjectPublicKeyInfo_pem_encoder_functions[];692extern const OSSL_DISPATCH ossl_slh_dsa_shake_192s_to_SubjectPublicKeyInfo_pem_encoder_functions[];693extern const OSSL_DISPATCH ossl_slh_dsa_shake_192f_to_SubjectPublicKeyInfo_pem_encoder_functions[];694extern const OSSL_DISPATCH ossl_slh_dsa_shake_256s_to_SubjectPublicKeyInfo_pem_encoder_functions[];695extern const OSSL_DISPATCH ossl_slh_dsa_shake_256f_to_SubjectPublicKeyInfo_pem_encoder_functions[];696697extern const OSSL_DISPATCH ossl_slh_dsa_sha2_128s_to_OSSL_current_der_encoder_functions[];698extern const OSSL_DISPATCH ossl_slh_dsa_sha2_128f_to_OSSL_current_der_encoder_functions[];699extern const OSSL_DISPATCH ossl_slh_dsa_sha2_192s_to_OSSL_current_der_encoder_functions[];700extern const OSSL_DISPATCH ossl_slh_dsa_sha2_192f_to_OSSL_current_der_encoder_functions[];701extern const OSSL_DISPATCH ossl_slh_dsa_sha2_256s_to_OSSL_current_der_encoder_functions[];702extern const OSSL_DISPATCH ossl_slh_dsa_sha2_256f_to_OSSL_current_der_encoder_functions[];703extern const OSSL_DISPATCH ossl_slh_dsa_shake_128s_to_OSSL_current_der_encoder_functions[];704extern const OSSL_DISPATCH ossl_slh_dsa_shake_128f_to_OSSL_current_der_encoder_functions[];705extern const OSSL_DISPATCH ossl_slh_dsa_shake_192s_to_OSSL_current_der_encoder_functions[];706extern const OSSL_DISPATCH ossl_slh_dsa_shake_192f_to_OSSL_current_der_encoder_functions[];707extern const OSSL_DISPATCH ossl_slh_dsa_shake_256s_to_OSSL_current_der_encoder_functions[];708extern const OSSL_DISPATCH ossl_slh_dsa_shake_256f_to_OSSL_current_der_encoder_functions[];709710extern const OSSL_DISPATCH ossl_slh_dsa_sha2_128s_to_text_encoder_functions[];711extern const OSSL_DISPATCH ossl_slh_dsa_sha2_128f_to_text_encoder_functions[];712extern const OSSL_DISPATCH ossl_slh_dsa_sha2_192s_to_text_encoder_functions[];713extern const OSSL_DISPATCH ossl_slh_dsa_sha2_192f_to_text_encoder_functions[];714extern const OSSL_DISPATCH ossl_slh_dsa_sha2_256s_to_text_encoder_functions[];715extern const OSSL_DISPATCH ossl_slh_dsa_sha2_256f_to_text_encoder_functions[];716extern const OSSL_DISPATCH ossl_slh_dsa_shake_128s_to_text_encoder_functions[];717extern const OSSL_DISPATCH ossl_slh_dsa_shake_128f_to_text_encoder_functions[];718extern const OSSL_DISPATCH ossl_slh_dsa_shake_192s_to_text_encoder_functions[];719extern const OSSL_DISPATCH ossl_slh_dsa_shake_192f_to_text_encoder_functions[];720extern const OSSL_DISPATCH ossl_slh_dsa_shake_256s_to_text_encoder_functions[];721extern const OSSL_DISPATCH ossl_slh_dsa_shake_256f_to_text_encoder_functions[];722723/* Decoders */724extern const OSSL_DISPATCH ossl_PrivateKeyInfo_der_to_dh_decoder_functions[];725extern const OSSL_DISPATCH ossl_SubjectPublicKeyInfo_der_to_dh_decoder_functions[];726extern const OSSL_DISPATCH ossl_type_specific_params_der_to_dh_decoder_functions[];727extern const OSSL_DISPATCH ossl_DH_der_to_dh_decoder_functions[];728729extern const OSSL_DISPATCH ossl_PrivateKeyInfo_der_to_dhx_decoder_functions[];730extern const OSSL_DISPATCH ossl_SubjectPublicKeyInfo_der_to_dhx_decoder_functions[];731extern const OSSL_DISPATCH ossl_type_specific_params_der_to_dhx_decoder_functions[];732extern const OSSL_DISPATCH ossl_DHX_der_to_dhx_decoder_functions[];733734extern const OSSL_DISPATCH ossl_PrivateKeyInfo_der_to_dsa_decoder_functions[];735extern const OSSL_DISPATCH ossl_SubjectPublicKeyInfo_der_to_dsa_decoder_functions[];736extern const OSSL_DISPATCH ossl_type_specific_der_to_dsa_decoder_functions[];737extern const OSSL_DISPATCH ossl_DSA_der_to_dsa_decoder_functions[];738extern const OSSL_DISPATCH ossl_msblob_to_dsa_decoder_functions[];739extern const OSSL_DISPATCH ossl_pvk_to_dsa_decoder_functions[];740741extern const OSSL_DISPATCH ossl_PrivateKeyInfo_der_to_ec_decoder_functions[];742extern const OSSL_DISPATCH ossl_SubjectPublicKeyInfo_der_to_ec_decoder_functions[];743extern const OSSL_DISPATCH ossl_type_specific_no_pub_der_to_ec_decoder_functions[];744extern const OSSL_DISPATCH ossl_EC_der_to_ec_decoder_functions[];745746extern const OSSL_DISPATCH ossl_PrivateKeyInfo_der_to_x25519_decoder_functions[];747extern const OSSL_DISPATCH ossl_SubjectPublicKeyInfo_der_to_x25519_decoder_functions[];748749extern const OSSL_DISPATCH ossl_PrivateKeyInfo_der_to_x448_decoder_functions[];750extern const OSSL_DISPATCH ossl_SubjectPublicKeyInfo_der_to_x448_decoder_functions[];751752extern const OSSL_DISPATCH ossl_PrivateKeyInfo_der_to_ed25519_decoder_functions[];753extern const OSSL_DISPATCH ossl_SubjectPublicKeyInfo_der_to_ed25519_decoder_functions[];754755extern const OSSL_DISPATCH ossl_PrivateKeyInfo_der_to_ed448_decoder_functions[];756extern const OSSL_DISPATCH ossl_SubjectPublicKeyInfo_der_to_ed448_decoder_functions[];757758#ifndef OPENSSL_NO_ML_KEM759extern const OSSL_DISPATCH ossl_PrivateKeyInfo_der_to_ml_kem_512_decoder_functions[];760extern const OSSL_DISPATCH ossl_SubjectPublicKeyInfo_der_to_ml_kem_512_decoder_functions[];761extern const OSSL_DISPATCH ossl_ml_kem_512_to_EncryptedPrivateKeyInfo_der_encoder_functions[];762extern const OSSL_DISPATCH ossl_ml_kem_512_to_EncryptedPrivateKeyInfo_pem_encoder_functions[];763extern const OSSL_DISPATCH ossl_ml_kem_512_to_PrivateKeyInfo_der_encoder_functions[];764extern const OSSL_DISPATCH ossl_ml_kem_512_to_PrivateKeyInfo_pem_encoder_functions[];765extern const OSSL_DISPATCH ossl_ml_kem_512_to_SubjectPublicKeyInfo_der_encoder_functions[];766extern const OSSL_DISPATCH ossl_ml_kem_512_to_SubjectPublicKeyInfo_pem_encoder_functions[];767extern const OSSL_DISPATCH ossl_ml_kem_512_to_text_encoder_functions[];768769extern const OSSL_DISPATCH ossl_PrivateKeyInfo_der_to_ml_kem_768_decoder_functions[];770extern const OSSL_DISPATCH ossl_SubjectPublicKeyInfo_der_to_ml_kem_768_decoder_functions[];771extern const OSSL_DISPATCH ossl_ml_kem_768_to_EncryptedPrivateKeyInfo_der_encoder_functions[];772extern const OSSL_DISPATCH ossl_ml_kem_768_to_EncryptedPrivateKeyInfo_pem_encoder_functions[];773extern const OSSL_DISPATCH ossl_ml_kem_768_to_PrivateKeyInfo_der_encoder_functions[];774extern const OSSL_DISPATCH ossl_ml_kem_768_to_PrivateKeyInfo_pem_encoder_functions[];775extern const OSSL_DISPATCH ossl_ml_kem_768_to_SubjectPublicKeyInfo_der_encoder_functions[];776extern const OSSL_DISPATCH ossl_ml_kem_768_to_SubjectPublicKeyInfo_pem_encoder_functions[];777extern const OSSL_DISPATCH ossl_ml_kem_768_to_text_encoder_functions[];778779extern const OSSL_DISPATCH ossl_PrivateKeyInfo_der_to_ml_kem_1024_decoder_functions[];780extern const OSSL_DISPATCH ossl_SubjectPublicKeyInfo_der_to_ml_kem_1024_decoder_functions[];781extern const OSSL_DISPATCH ossl_ml_kem_1024_to_EncryptedPrivateKeyInfo_der_encoder_functions[];782extern const OSSL_DISPATCH ossl_ml_kem_1024_to_EncryptedPrivateKeyInfo_pem_encoder_functions[];783extern const OSSL_DISPATCH ossl_ml_kem_1024_to_PrivateKeyInfo_der_encoder_functions[];784extern const OSSL_DISPATCH ossl_ml_kem_1024_to_PrivateKeyInfo_pem_encoder_functions[];785extern const OSSL_DISPATCH ossl_ml_kem_1024_to_SubjectPublicKeyInfo_der_encoder_functions[];786extern const OSSL_DISPATCH ossl_ml_kem_1024_to_SubjectPublicKeyInfo_pem_encoder_functions[];787extern const OSSL_DISPATCH ossl_ml_kem_1024_to_text_encoder_functions[];788#endif789790#ifndef OPENSSL_NO_SM2791extern const OSSL_DISPATCH ossl_PrivateKeyInfo_der_to_sm2_decoder_functions[];792extern const OSSL_DISPATCH ossl_SubjectPublicKeyInfo_der_to_sm2_decoder_functions[];793extern const OSSL_DISPATCH ossl_type_specific_no_pub_der_to_sm2_decoder_functions[];794#endif795796extern const OSSL_DISPATCH ossl_PrivateKeyInfo_der_to_slh_dsa_sha2_128s_decoder_functions[];797extern const OSSL_DISPATCH ossl_PrivateKeyInfo_der_to_slh_dsa_sha2_128f_decoder_functions[];798extern const OSSL_DISPATCH ossl_PrivateKeyInfo_der_to_slh_dsa_sha2_192s_decoder_functions[];799extern const OSSL_DISPATCH ossl_PrivateKeyInfo_der_to_slh_dsa_sha2_192f_decoder_functions[];800extern const OSSL_DISPATCH ossl_PrivateKeyInfo_der_to_slh_dsa_sha2_256s_decoder_functions[];801extern const OSSL_DISPATCH ossl_PrivateKeyInfo_der_to_slh_dsa_sha2_256f_decoder_functions[];802extern const OSSL_DISPATCH ossl_PrivateKeyInfo_der_to_slh_dsa_shake_128s_decoder_functions[];803extern const OSSL_DISPATCH ossl_PrivateKeyInfo_der_to_slh_dsa_shake_128f_decoder_functions[];804extern const OSSL_DISPATCH ossl_PrivateKeyInfo_der_to_slh_dsa_shake_192s_decoder_functions[];805extern const OSSL_DISPATCH ossl_PrivateKeyInfo_der_to_slh_dsa_shake_192f_decoder_functions[];806extern const OSSL_DISPATCH ossl_PrivateKeyInfo_der_to_slh_dsa_shake_256s_decoder_functions[];807extern const OSSL_DISPATCH ossl_PrivateKeyInfo_der_to_slh_dsa_shake_256f_decoder_functions[];808extern const OSSL_DISPATCH ossl_SubjectPublicKeyInfo_der_to_slh_dsa_sha2_128s_decoder_functions[];809extern const OSSL_DISPATCH ossl_SubjectPublicKeyInfo_der_to_slh_dsa_sha2_128f_decoder_functions[];810extern const OSSL_DISPATCH ossl_SubjectPublicKeyInfo_der_to_slh_dsa_sha2_192s_decoder_functions[];811extern const OSSL_DISPATCH ossl_SubjectPublicKeyInfo_der_to_slh_dsa_sha2_192f_decoder_functions[];812extern const OSSL_DISPATCH ossl_SubjectPublicKeyInfo_der_to_slh_dsa_sha2_256s_decoder_functions[];813extern const OSSL_DISPATCH ossl_SubjectPublicKeyInfo_der_to_slh_dsa_sha2_256f_decoder_functions[];814extern const OSSL_DISPATCH ossl_SubjectPublicKeyInfo_der_to_slh_dsa_shake_128s_decoder_functions[];815extern const OSSL_DISPATCH ossl_SubjectPublicKeyInfo_der_to_slh_dsa_shake_128f_decoder_functions[];816extern const OSSL_DISPATCH ossl_SubjectPublicKeyInfo_der_to_slh_dsa_shake_192s_decoder_functions[];817extern const OSSL_DISPATCH ossl_SubjectPublicKeyInfo_der_to_slh_dsa_shake_192f_decoder_functions[];818extern const OSSL_DISPATCH ossl_SubjectPublicKeyInfo_der_to_slh_dsa_shake_256s_decoder_functions[];819extern const OSSL_DISPATCH ossl_SubjectPublicKeyInfo_der_to_slh_dsa_shake_256f_decoder_functions[];820821extern const OSSL_DISPATCH ossl_PrivateKeyInfo_der_to_rsa_decoder_functions[];822extern const OSSL_DISPATCH ossl_SubjectPublicKeyInfo_der_to_rsa_decoder_functions[];823extern const OSSL_DISPATCH ossl_type_specific_keypair_der_to_rsa_decoder_functions[];824extern const OSSL_DISPATCH ossl_RSA_der_to_rsa_decoder_functions[];825extern const OSSL_DISPATCH ossl_msblob_to_rsa_decoder_functions[];826extern const OSSL_DISPATCH ossl_pvk_to_rsa_decoder_functions[];827828extern const OSSL_DISPATCH ossl_PrivateKeyInfo_der_to_rsapss_decoder_functions[];829extern const OSSL_DISPATCH ossl_SubjectPublicKeyInfo_der_to_rsapss_decoder_functions[];830831extern const OSSL_DISPATCH ossl_EncryptedPrivateKeyInfo_der_to_der_decoder_functions[];832extern const OSSL_DISPATCH ossl_SubjectPublicKeyInfo_der_to_der_decoder_functions[];833extern const OSSL_DISPATCH ossl_pem_to_der_decoder_functions[];834835extern const OSSL_DISPATCH ossl_file_store_functions[];836extern const OSSL_DISPATCH ossl_winstore_store_functions[];837838extern const OSSL_DISPATCH ossl_PrivateKeyInfo_der_to_ml_dsa_44_decoder_functions[];839extern const OSSL_DISPATCH ossl_SubjectPublicKeyInfo_der_to_ml_dsa_44_decoder_functions[];840841extern const OSSL_DISPATCH ossl_PrivateKeyInfo_der_to_ml_dsa_65_decoder_functions[];842extern const OSSL_DISPATCH ossl_SubjectPublicKeyInfo_der_to_ml_dsa_65_decoder_functions[];843844extern const OSSL_DISPATCH ossl_PrivateKeyInfo_der_to_ml_dsa_87_decoder_functions[];845extern const OSSL_DISPATCH ossl_SubjectPublicKeyInfo_der_to_ml_dsa_87_decoder_functions[];846847extern const OSSL_DISPATCH ossl_generic_skeymgmt_functions[];848extern const OSSL_DISPATCH ossl_aes_skeymgmt_functions[];849850851