确实如此.Net Framework 4.8支持SNI



我正在使用客户端证书通过TLS 1.2向另一家公司进行HTTPS调用。Net Framework 4.8,并且在发送客户端证书之后握手失败。他们的公司支持索赔。Net framework不支持使用此页面作为参考的SNIhttps://www.ssls.com/knowledgebase/what-is-sni-technology/.然而,我的网络捕获表明它确实存在,因为它在客户端hello中包含"server_name"扩展名。。使用SNI扩展的Net框架调用使用python可以成功地进行相同的调用,因此有证据表明它们是正确的,但我在网上找不到任何关于的确切答案。Net框架。我们如何确定问题是他们的网络还是我们框架中缺乏支持?

编辑:此网站表示自4.5起有支持https://developer.awhere.com/api/server-name-indication-sni-support-requirements

。NET Framework并不关心SNI支持,因为。NET对此一无所知。中的网络操作。NET Framewrok是围绕操作系统提供的网络堆栈和低级API构建的。如果您能够安装。NET 4.8,那么你在一个肯定支持SNI的现代客户端上运行你的应用程序。这意味着问题在其他地方,而不是在。NET框架。

我在网上找不到任何关于的确切答案。Net Framework

由于上述原因,您找不到。

简单的答案是否定的,不是,在NetStandard 2.0中也不是
但它适用于netcore-5+

在此之前,虽然它支持客户端连接,但不支持基于netcore-5之前的SNI自定义选择TLS证书。

不过,在此之前,您可以使用StreamsExtended库进行此操作
不过,这不是官方的职责。NET框架,但是是第三方库
所以没有,全部。NET框架根本不支持这一点。

最新更新