是否有人知道是否可以使用带有chacha20的密码套件,例如在Windows 10上运行的.NET(v4.6.2)中编写的桌面客户端中使用TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256?
我的情况是我有一个客户端需要通过TLS与服务器通信,其中服务器在嵌入式设备上运行,如果我可以使用chacha20而不是AES,这将在性能方面受益匪浅。
我希望能够使用现有的HttpClient或WebClient类。
答案 0 :(得分:3)
在.NET Framework中,对HTTP(以及扩展TLS)的内置支持由ServicePoint
类处理。您可以通过ServicePointManager
类配置TLS版本等基本参数,但此类不提供任何扩展点来提供自定义算法。
Framework委托Windows执行TLS握手,包括支持的算法。如果Windows支持chacha20,你可能会有更好的机会,但据我所知,它没有。
我现在考虑实现这一目标的唯一方法是提供HttpMessageHandler
的自定义实现,它在裸插槽周围有自己的传输实现。