我试图建立使用Ssl3加密的tcp连接。
基本上我只是创建TCP连接,而不是在此基础上创建SSLStream:
var ss = new SslStream(poolItem.SecureConnection, false, remoteCertificateValidationCallback);
ss.ReadTimeout = ss.WriteTimeout = timeout;
ss.AuthenticateAsClient(host);
var pp = ss.SslProtocol;
我的问题是默认情况下SslStream使用TLS。我希望它是Ssl3。
在HttpWebRequest中,您可以使用以下代码来更改协议:
ServicePointManager.SecurityProtocol = SecurityProtocolType.Ssl3;
我检查了它,它并没有影响SslStream。
如何将SslStream的协议更改为Ssl3?
答案 0 :(得分:1)
您只需使用AuthenticateAsClient
重载,即可指定应允许的协议:
AuthenticateAsClient
(host, new X509CertificateCollection(), SslProtocols.Ssl3, false);