我正在开发一些创建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类关联?