Что означает код HRESULT 0x8009200B (CRYPT_E_NO_KEY_PROPERTY)?

 
Предыдущий Следующий
CRYPT_E_UNEXPECTED_MSG_TYPE CRYPT_E_NO_DECRYPT_CERT

CRYPT_E_NO_KEY_PROPERTY

Что означает результат

CRYPT_E_NO_KEY_PROPERTY: CryptoAPI нашёл сертификат или другой объект, но у него отсутствует требуемое key property, связывающее объект с private key/provider information. Это не то же самое, что полностью отсутствующий сертификат.

Что проверить

  • Запишите API и property ID, которую запрашивает вызывающий код.
  • Проверьте наличие CERT_KEY_PROV_INFO_PROP_ID или другого ожидаемого key-related property у конкретного certificate context.
  • Убедитесь, что сертификат импортирован вместе с private key и что key находится в доступном user/machine store/provider.
  • Если используется CNG key, проверьте корректность provider/key name и связь сертификата с NCRYPT_KEY_HANDLE.

Диагностика и исправление

Восстановите требуемую привязку сертификата к private key/provider либо выберите сертификат, у которого она существует. Проверка DER/chain сама по себе отсутствующее key property не создаёт.

Ссылки по этому результату


Нужно найти другой код? Найти другой код состояния или ошибки.