OSSL_PROVIDER-DEFAULT(7SSL)

πŸ’– OSSL_PROVIDER-default πŸ’–

okay bestie, welcome to the OSSL_PROVIDER-DEFAULT(7SSL) page β€” yes that's the whole vibe, it's the manual for the OpenSSL default provider, and she is THE main character of the provider world, no cap. let's get into it ✨


πŸ¦‹ NAME πŸ¦‹

OSSL_PROVIDER-default β€” the OpenSSL default provider. that's her. that's the whole name. iconic πŸ’…


🌸 DESCRIPTION 🌸

so here's the tea: the OpenSSL default provider supplies the majority of OpenSSL's diverse algorithm implementations. like, most of them. she's carrying the whole team fr fr.

If an application doesn't specify anything else explicitly (like, in the application itself or via config), then this is the provider that gets used as the fallback β€” on systems that are not operating in FIPS-approved mode. It gets loaded automatically the very first time an algorithm is fetched from a provider, or when a function acting on providers is called, and no other provider has been loaded yet. she just shows up. main character energy 🫢

⚠️ but listen, this part matters: if an attempt to load a provider has already been made (whether successful or not πŸ’€), then the default provider won't be loaded automatically. so if you wanna use the default provider alongside other providers, you have to load it explicitly. Automatic loading of the default provider only happens a maximum of once β€” and if the default provider gets explicitly unloaded, she will not be automatically loaded again. periodt. that's the rule.

πŸ’œ Properties πŸ’œ

the implementations in this provider specifically have this property defined:

"provider=default"

you can use it in a property query string with fetching functions like EVP_MD_fetch(3) or EVP_CIPHER_fetch(3), and also with other functions that take a property query string, like EVP_PKEY_CTX_new_from_name(3). lowkey handy.

It isn't mandatory to query for this property β€” you'd only do it to make sure you get implementations of this provider and none other. 😌

Some implementations may define additional properties. Exact information is listed below πŸ‘‡


πŸ”₯ OPERATIONS AND ALGORITHMS πŸ”₯

The OpenSSL default provider supports these operations and algorithms:

πŸŽ€ Hashing Algorithms / Message Digests πŸŽ€

πŸ¦‹ Symmetric Ciphers πŸ¦‹

πŸ“ Message Authentication Code (MAC) πŸ“

🧚 Key Derivation Function (KDF) 🧚

πŸ’« Key Exchange πŸ’«

πŸ‘‘ Asymmetric Signature πŸ‘‘

🌈 Asymmetric Cipher 🌈

✨ Asymmetric Key Encapsulation ✨

πŸ’… Asymmetric Key Management πŸ’…

🎲 Random Number Generation 🎲

In addition to this provider, the "SEED-SRC" and "JITTER" algorithms are also available in the base provider. πŸ’«

🧸 Asymmetric Key Encoder 🧸

  • RSA
  • RSA-PSS
  • DH
  • DHX
  • DSA
  • EC
  • ED25519
  • ED448
  • X25519
  • X448
  • SM2
  • ML-DSA-44
  • ML-DSA-65
  • ML-DSA-87
  • ML-KEM-512
  • ML-KEM-768
  • ML-KEM-1024
  • SLH-DSA-SHA2-128s
  • SLH-DSA-SHA2-128f
  • SLH-DSA-SHA2-192s
  • SLH-DSA-SHA2-192f
  • SLH-DSA-SHA2-256s
  • SLH-DSA-SHA2-256f
  • SLH-DSA-SHAKE-128s
  • SLH-DSA-SHAKE-128f
  • SLH-DSA-SHAKE-192s
  • SLH-DSA-SHAKE-192f
  • SLH-DSA-SHAKE-256s
  • SLH-DSA-SHAKE-256f
  • LMS β€” private keys are not supported for LMS. 🚫

In addition to this provider, all of these encoding algorithms are also available in the base provider. Some of these algorithms may be used in combination with the FIPS provider.

πŸ¦„ Asymmetric Key Decoder πŸ¦„

  • RSA
  • RSA-PSS
  • DH
  • DHX
  • DSA
  • EC
  • ED25519
  • ED448
  • X25519
  • X448
  • SM2
  • ML-DSA-44
  • ML-DSA-65
  • ML-DSA-87
  • ML-KEM-512
  • ML-KEM-768
  • ML-KEM-1024
  • SLH-DSA-SHA2-128s
  • SLH-DSA-SHA2-128f
  • SLH-DSA-SHA2-192s
  • SLH-DSA-SHA2-192f
  • SLH-DSA-SHA2-256s
  • SLH-DSA-SHA2-256f
  • SLH-DSA-SHAKE-128s
  • SLH-DSA-SHAKE-128f
  • SLH-DSA-SHAKE-192s
  • SLH-DSA-SHAKE-192f
  • SLH-DSA-SHAKE-256s
  • SLH-DSA-SHAKE-256f
  • LMS β€” private keys are not supported for LMS. 🚫

In addition to this provider, all of these decoding algorithms are also available in the base provider. Some of these algorithms may be used in combination with the FIPS provider.

πŸ“¦ Stores πŸ“¦

In addition to this provider, all of these store algorithms are also available in the base provider. slay πŸ’…


πŸ‘€ SEE ALSO πŸ‘€

openssl-core.h(7), openssl-core_dispatch.h(7), provider(7), OSSL_PROVIDER-base(7)


πŸ“œ HISTORY πŸ“œ

  • Support for LMS Public Key (SubjectPublicKeyInfo) encoders and decoders was added in OpenSSL 4.0.
  • The RIPEMD160 digest was added to the default provider in OpenSSL 3.0.7.
  • The HKDF-SHA256, HKDF-SHA384 and HKDF-SHA512 algorithms were added in OpenSSL 3.6.
  • The CSHAKE-128 and CSHAKE-256 algorithms were added in OpenSSL 4.0.
  • All other functionality was added in OpenSSL 3.0.

Copyright 2020-2026 The OpenSSL Project Authors. All Rights Reserved.

Licensed under the Apache License 2.0 (the "License"). You may not use this file except in compliance with the License. You can obtain a copy in the file LICENSE in the source distribution or at <https://www.openssl.org/source/license.html>.


and that's the whole page bestie 🫢 this was OSSL_PROVIDER-DEFAULT(7SSL), version 4.0.3, dated 2026-09-29 β€” go forth and fetch algorithms, you got this πŸ’–βœ¨πŸŽ€

πŸ“¦ where this page comes from