Я пытаюсь приобрести поставщик хранилища ключей смарт-карт Microsoft, используя:
CryptAcquireContext(&hProv, contName ,L"Microsoft Smart Card Key Storage Provider", PROV_RSA_FULL , flags);
но это не с ошибкой: NTE_KEYSET_NOT_DEF (0x80090019)
если я использую:
CryptAcquireContext(&hProv, contName ,L" Microsoft Base Smart Card Crypto Provider", PROV_RSA_FULL , flags);
оно работает.
Но, насколько мне известно, поставщик базовой смарт-карты является поставщиком до введения CNG.
Итак, какое имя провайдера подходит для использования CNG KSP для смарт-карт?
Спасибо за вашу помощь!
Проблема в том, что вы не используете CryptAcquireContext для поставщиков CNG. Чтобы открыть провайдера CNG, используйте NCryptOpenStorageProvider.
Других решений пока нет …