.net SslStream、BEAST和TLS 1.1

.net SslStream、BEAST和TLS 1.1,.net,security,ssl,beast,.net,Security,Ssl,Beast,随着最近出现的(利用SSL/TLS1.0中的漏洞,其中有效负载的初始字节始终相同),我查看了,看看它是否支持TLS 1.1、TLS 1.2等。它只支持SSL 2和3(两者都早于TLS)以及TLS 1.0 鉴于SslProtocol仅宣传对TLS 1.0及以下版本的支持,是否可以将SslStream用于TLS 1.1及以上版本?看起来更新已经就绪 从.NET4.5开始,(因此)现在支持TLS1.1和TLS1.2 这些协议在4.6中默认启用。对于4.5,您需要在SslStream对象中使用重载的au

随着最近出现的(利用SSL/TLS1.0中的漏洞,其中有效负载的初始字节始终相同),我查看了,看看它是否支持TLS 1.1、TLS 1.2等。它只支持SSL 2和3(两者都早于TLS)以及TLS 1.0


鉴于
SslProtocol
仅宣传对TLS 1.0及以下版本的支持,是否可以将
SslStream
用于TLS 1.1及以上版本?

看起来更新已经就绪

从.NET4.5开始,(因此)现在支持TLS1.1和TLS1.2

这些协议在4.6中默认启用。对于4.5,您需要在
SslStream
对象中使用重载的
authenticatesClient
调用来激活它们:

sslStream.AuthenticateAsClient(hostname, null, SslProtocols.Tls12 | SslProtocols.Tls11, true);

看起来更新已经就绪

从.NET4.5开始,(因此)现在支持TLS1.1和TLS1.2

这些协议在4.6中默认启用。对于4.5,您需要在
SslStream
对象中使用重载的
authenticatesClient
调用来激活它们:

sslStream.AuthenticateAsClient(hostname, null, SslProtocols.Tls12 | SslProtocols.Tls11, true);

AFAIK在客户机中对TLS 1.1+的支持有限/没有,因此没有服务器愿意支持它,因为到目前为止TLS 1.0已经“足够好”。在更好的协议得到支持之前,解决此漏洞的实用方法是在客户端或服务器上选择非CBC密码套件,如RC4。请参阅关于服务器端的信息。不知道如何在客户端更喜欢某个密码。@Yoshi,你能回答一下吗,我似乎不会得到更多的密码,你的密码也很好。AFAIK客户端对TLS 1.1+的支持有限/没有,因此没有服务器愿意支持它,因为到目前为止TLS 1.0已经“足够好”。在更好的协议得到支持之前,解决此漏洞的实用方法是在客户端或服务器上选择非CBC密码套件,如RC4。请参阅关于服务器端的信息。不知道如何更喜欢客户端的某个密码。@Yoshi你能回答一下吗,看起来我不会得到更多了,你的很好。