Отсутствует приватный ключ сертификата клиента
-
18-09-2019 - |
Вопрос
может кто-нибудь сказать мне, почему у меня нет cert.PrivateKey (=null) после того, как я создал экземпляр X509Certificate2 из HttpClientCertificate во время вызова веб-метода.вот так:
Сертификат X509Certificate2 = новый X509Certificate2(Context.Request.ClientCertificate.Certificate, «тест»);
HttpClientCertificate имеет закрытый ключ, когда я проверяю его с помощью отладчика, но X509Certificate2 (переменная сертификата) — нет!
...более того, я даже не получаю CryptographicException, когда указываю неверный пароль.
Может кто-нибудь прояснить меня?
Заранее действительно большое спасибо!
Добрые пожелания, Крис
Решение
Используемый вами конструктор (данные/пароль) предназначен для получения сертификата из файла PKCS#12 (файл PFX).Свойство сертификата ClientCertificate «Получает строку, содержащую двоичный поток всего содержимого сертификата в формате ASN.1».
ClientCertificate предназначен для предоставления вам сертификата, используемого при установлении сеанса SSL с сервером.Я не ожидаю, что он раскроет закрытый ключ так, как вы пытаетесь.