diff --git a/src/lib/crypto/OSSLMLDSAPrivateKey.cpp b/src/lib/crypto/OSSLMLDSAPrivateKey.cpp index 1c644b753..88cef2f85 100644 --- a/src/lib/crypto/OSSLMLDSAPrivateKey.cpp +++ b/src/lib/crypto/OSSLMLDSAPrivateKey.cpp @@ -203,7 +203,8 @@ void OSSLMLDSAPrivateKey::createOSSLKey() *p = OSSL_PARAM_construct_end(); - ctx = EVP_PKEY_CTX_new_from_name(NULL, name, NULL); + // Use the default provider for internal ML-DSA key reconstruction. + ctx = EVP_PKEY_CTX_new_from_name(NULL, name, "provider=default"); if (ctx == NULL) { ERROR_MSG("Could not create context"); return; diff --git a/src/lib/crypto/OSSLMLDSAPublicKey.cpp b/src/lib/crypto/OSSLMLDSAPublicKey.cpp index b4b2715ff..52ef5a2ca 100644 --- a/src/lib/crypto/OSSLMLDSAPublicKey.cpp +++ b/src/lib/crypto/OSSLMLDSAPublicKey.cpp @@ -123,7 +123,8 @@ void OSSLMLDSAPublicKey::createOSSLKey() *p = OSSL_PARAM_construct_end(); - ctx = EVP_PKEY_CTX_new_from_name(NULL, name, NULL); + // Use the default provider for internal ML-DSA key reconstruction + ctx = EVP_PKEY_CTX_new_from_name(NULL, name, "provider=default"); if (ctx == NULL) { ERROR_MSG("Could not create context"); return;