gpt4 book ai didi

c# - 向使用 SocketAsyncEventArgs 构建的服务器添加加密

转载 作者:太空宇宙 更新时间:2023-11-03 12:11:57 28 4
gpt4 key购买 nike

我四处寻找,很惊讶地发现绝对没有可以回答这个问题:

如何在使用 SocketAsyncEventArgs 时实现 SSL/TLS(或类似)加密?我确实读过,理论上可以使用SslStream 和“作弊”,方法是创建一个中间人来协调数据进出流、传入和传出套接字。这一切看起来很荒谬......

我查看了 BouncyCaSTLe,但它们似乎不支持服务器端加密。不可否认,此信息的来源已有近 10 年历史,但我自己的研究一无所获。

我对更改我的服务器架构不感兴趣,所以请不要告诉我“我真的不需要 SocketAsyncEVentArgs 的性能,应该只更改为 TcpListener”。

我对使用 SocketAsyncEventArgs 在客户端和服务器之间实现可靠加密的任何方法都感兴趣。

最佳答案

没有直接的方法将 SAEA 附加到加密。它们不共享 API,因此一切都是桥梁。

如您所知,最简单的方法是 SslStream,但是:这通常与 SocketAsyncEventArgs 不兼容。还有其他选择——例如,我可以想到至少 3 种不同的方法来使用“管道”;但所有这些都是 naked SAEA 的重大架构更改。所以如果SAEA和SslStream的区别太大的话,SAEA和IDuplexPipe的区别就更大了。然而,“管道”是设计以实现高可扩展性能的,所以……也许它会适合您的口味?我最近写了很多关于管道的博客,如果有帮助的话;另外,我有客户端/服务器代码的 github 示例,包括 2.5M+ ops/second redis 类服务器。

关于c# - 向使用 SocketAsyncEventArgs 构建的服务器添加加密,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51756461/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com