#include <windows.h>
#include <ncrypt.h>
#include <iostream>
#pragma comment(lib, "ncrypt.lib")

int wmain() {
    const wchar_t* providerName = L"ILLUSTRATIVE_MOBILE_ID_QUANTUMSAFE_KSP";
    NCRYPT_PROV_HANDLE provider = 0;
    SECURITY_STATUS s = NCryptOpenStorageProvider(&provider, providerName, 0);
    if (s != ERROR_SUCCESS) { std::wcerr << L"Open provider failed: " << s << L"\n"; return 1; }
    std::wcout << L"Provider opened. Use the signed release manifest for key creation/signing parameters.\n";
    NCryptFreeObject(provider);
    return 0;
}
