Windows应用商店应用:证书管理和streamsocket与TLS V1.2连接

时间:2016-11-08 21:30:14

标签: c# ssl windows-store-apps certificate stream-socket-client

我们希望在Surface Pro设备和Windows Mobile Phone设备上使用“Microsoft平台加密提供商密钥存储提供商”API,用于Windows 8和10.我们需要支持的操作是为KSP(密钥存储提供商)配置新密钥)使用PKCS12格式化的“blob”并使用KSP中的一个或多个密钥作为与服务器的相互认证的TLS 1.2交换中的客户端凭证。

我们需要知道在我们的客户端中使用正确的API来导入证书密钥,其中包含一些我们可以在以后引用它的名称(别名) - 我们假设正确的API是CertificateEnrollmentManager.ImportPfxDataAsyn。如果我们使用此API,那么结果凭证是否​​会受到可信平台模块(TPM)的保护,或者我们必须使用其他API来导入和使用证书。我们知道CertificateEnrollmentManager.ImportPfxDataAsyn会将pfx证书导入应用程序容器。我们真的希望我们的凭据受TPM保护。

我们还需要知道适当的API,以便在使用TLS 1.2协议连接到服务器的套接字期间通过其友好名称选择证书/密钥。 我们知道在Windows 10中,StreamSocket具有“Control”属性,“Control”本身具有“ClientCertificate”属性,我们可以使用该属性传入客户端证书以打开SSL连接,但在Windows 8.1中,StreamSocket的Control属性不存在没有“ClientCertificate”属性。在Windows 8.1中,StreamSocket.ConnectAsync将在哪里找到哪个证书?

任何帮助或评论都将受到高度赞赏。

约什

0 个答案:

没有答案