Введение
Я пытаюсь использовать cng's rsa на w7 и w10. Прямо сейчас я импортирую ключи, используя CryptDecodeObjectEx
, потому что они у меня в PEM, а cng использует другой формат.
Оба windows являются 64-битными, и я использую один и тот же exe-файл с тем же кодом.
Проблема
Мой вызов CryptDecodeObjectEx
выводит "ERROR_FILE_NOT_FOUND", что в соответствии с документами Microsoft означает:
Не удалось найти функцию декодирования для указанного dwCertEncodingType и lpszStructType.
Мой тип dwCertEncodingType: X509_ASN_ENCODING
Мой тип lpszStructType: CNG_RSA_PRIVATE_KEY_BLOB
Та же проблема при попытке использования клавиш publi c.
Что Я попробовал
Я на 100% уверен, что код правильный, потому что он работает без ошибок на w10, и я также проверил его на разных компьютерах w10.
Я не нашел ничего в документации о совместимости проблемы с w7 или любой функцией, которая была добавлена после w7.
Я провел много исследований, не нашел ничего актуального.
Вопросы
- Может ли это быть связано с отсутствующим обновлением? Если да, то как я могу это проверить?
- Может ли это быть связано с разницей в dll? Если да, то как я могу это проверить?
- Кто-нибудь знает, как это исправить?
Заранее спасибо.