为ssl连接动态生成的证书

为ssl连接动态生成的证书,ssl,c++11,windows-runtime,ssl-certificate,Ssl,C++11,Windows Runtime,Ssl Certificate,我正在使用Windows 8应用程序,无法打包证书,因为它是在运行时生成的。是否可以使用动态生成的证书?如果是这样,我可以在Websocket/StreamSocket级别使用它吗 对示例代码的任何引用都将非常有用(最好是C++)RSA和其他公钥加密方法通常是安全的,但它们确实依赖于公钥的有效性。因此,有许多证书颁发机构颁发列表公钥。当他们这样做时,他们“证明”钥匙确实属于声称拥有者的实体。在运行时发出密钥没有什么意义,因为无法验证密钥是否来自此人。我在回答我自己的问题。Windows 8 me

我正在使用Windows 8应用程序,无法打包证书,因为它是在运行时生成的。是否可以使用动态生成的证书?如果是这样,我可以在Websocket/StreamSocket级别使用它吗


对示例代码的任何引用都将非常有用(最好是C++)

RSA和其他公钥加密方法通常是安全的,但它们确实依赖于公钥的有效性。因此,有许多证书颁发机构颁发列表公钥。当他们这样做时,他们“证明”钥匙确实属于声称拥有者的实体。在运行时发出密钥没有什么意义,因为无法验证密钥是否来自此人。

我在回答我自己的问题。Windows 8 metro api不支持csr中的非对称密钥。请参阅:

我们无法继续,除非他们做出更改,或者地铁的openssl构建可用


更新:在证书交换期间,也无法检索服务器证书的公钥。根据Microsoft员工的上次更新(2012年5月),这不是一项受支持的功能。

您是将其用于客户端身份验证还是…?是的,我需要它用于客户端身份验证。在运行时生成PKI证书实际上没有安全意义。谁会相信他们?他们为什么要这样做?PKI证书应该能够可靠地标识唯一的实体。运行时生成违反了这一点。@EJP,我们已经在客户端安装了我们的产品。因此,我们相信自己的CSR要求!证书不是由CA签署的。它是由客户签署的,用于客户端身份验证。客户让我们的软件运行,并对其进行签名。