0

我目前正在尝试将 SSL 添加到我正在处理的项目中,因此我检查了 MSDN 以获取 SSL 流示例服务器。https://docs.microsoft.com/en-us/dotnet/api/system.net.security.sslstream我已经运行它并且它运行但是当客户端连接时它会抛出这个错误

Unhandled Exception: System.IO.IOException: The authentication or decryption has failed. ---> Mono.Security.Protocol.Tls.TlsException: The client stopped the handshake.
  at Mono.Security.Protocol.Tls.SslServerStream.OnNegotiateHandshakeCallback (IAsyncResult asyncResult) [0x00000] in <filename unknown>:0 
  at Mono.Security.Protocol.Tls.SslStreamBase.AsyncHandshakeCallback (IAsyncResult asyncResult) [0x00000] in <filename unknown>:0 
  --- End of inner exception stack trace ---
  at Mono.Security.Protocol.Tls.SslStreamBase.AsyncHandshakeCallback (IAsyncResult asyncResult) [0x00000] in <filename unknown>:0

发生了什么?另外为什么它只需要证书而不需要私钥文件?SSL 只是不能那样工作。

4

1 回答 1

2

私钥是通过证书对象提供的,请参阅X509Certificate2.PrivateKey。如果您有证书文件和单独的私钥文件,我认为您必须手动加载私钥并将其分配给证书的PrivateKey属性。

于 2012-11-26T01:59:32.343 回答