Приложение для Магазина Windows: управление сертификатами и потоковая передача через TLS V1.2

Мы хотим использовать API-интерфейсы "Поставщик хранилища ключей криптографического провайдера Microsoft Platform" на устройствах Surface Pro и устройствах Windows Mobile Phone для Windows 8 и 10. Операции, которые нам необходимо поддерживать, - это предоставление новых ключей для KSP (поставщик хранилища ключей) с использованием PKCS12 отформатировал "blob" и использовал один или несколько ключей в KSP в качестве учетных данных клиента во взаимно аутентифицированном обмене TLS 1.2 с сервером.

Нам нужно знать правильные API-интерфейсы, которые будут использоваться в нашем клиенте для импорта ключа сертификата с некоторым именем (псевдонимом), который мы можем использовать для ссылки на него позже - мы предполагаем, что правильные API-интерфейсы для этого - CertificateEnrollmentManager.ImportPfxDataAsyn. Если мы используем этот API, будут ли полученные учетные данные защищены в состоянии покоя модулем Trusted Platform Module (TPM) или существуют другие API, которые мы должны использовать для импорта и использования сертификатов. Мы понимаем, что CertificateEnrollmentManager.ImportPfxDataAsyn будет импортировать сертификат pfx в контейнер приложения. Мы действительно хотим, чтобы наши учетные данные были защищены с помощью TPM.

Нам также необходимо знать соответствующие API-интерфейсы для выбора сертификата / ключей через их понятное имя во время сокетного соединения с сервером по протоколу TLS 1.2. Мы знаем, что в Windows 10 StreamSocket имеет свойство "Control", а сам "Control" имеет свойство "ClientCertificate", которое мы можем использовать для передачи клиентского сертификата для открытия соединения SSL, но в Windows 8.1 свойство Control StreamSocket не не имеет свойства "ClientCertificate". В Windows 8.1 где и какой сертификат будет искать StreamSocket.ConnectAsync?

Любая помощь или комментарий будут высоко оценены.

мистифицировать

0 ответов

Другие вопросы по тегам