c# – 将私钥与.net中的X509Certificate2类相关联
发布时间:2020-12-15 03:52:12 所属栏目:百科 来源:网络整理
导读:我正在开发一些创建X509证书和公钥/私钥对的代码.公钥被添加到证书中,并将其发送到签署CA的CA. 然后通过System.Security.Cryptography.X509Certificates.X509Certificate2类访问返回的证书.现在我想使用此证书来启动与其他客户端的安全连接.所以我使用SslStr
我正在开发一些创建X509证书和公钥/私钥对的代码.公钥被添加到证书中,并将其发送到签署CA的CA.
然后通过System.Security.Cryptography.X509Certificates.X509Certificate2类访问返回的证书.现在我想使用此证书来启动与其他客户端的安全连接.所以我使用SslStream类.要启动SSL握手我用这个方法: server.AssociatedSslStream.AuthenticateAsServer( MyCertificate,// Client Certificate true,// Require Certificate from connecting Peer SslProtocols.Tls,// Use TLS 1.0 false // check Certificate revocation ); 该方法要求私钥与证书相关联.当然,CA返回的证书不包含私钥.但它是作为.key文件存储在硬盘上. X509Certificate2类有一个名为PrivateKey的属性,我猜会将一个私钥与证书相关联,但是我找不到一种设置此属性的方法. 有没有什么办法可以将私钥与.net X509类关联? 解决方法
您可以自己保存复制粘贴所有代码的麻烦,并将密码存储在pfx / pkcs#12文件中的证书旁边:
openssl pkcs12 -export -in my.cer -inkey my.key -out mycert.pfx 你必须提供一个密码,你必须传递给X509Certificate2的构造函数: X509Certificate2 cert = new X509Certificate2("mycert.pfx","password"); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |