gpt4 book ai didi

ssl - 处理 SSL 客户端到服务器到客户端(中继?)的最佳方式

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

我正在尝试加密从 client1 到 client2 的消息,但它不能通过点对点完成;因为动态 IP 问题。

我决定使用中央服务器,但我不确定服务器是否应该只中继 SSL 握手,以及之后的任何后续加密消息(从客户端 1 到客户端 2)。我想到的另一种选择是让服务器将 client2 的 IP 提供给 client1,并让 client1 发起直接连接,并直接进行 SSL 握手。

或者也许有更好的方法?

这是我制定的 2 个流程:

enter image description here

enter image description here

最佳答案

在两个客户端之间使用直接连接,使用服务器来促进 IP 发现,是可能的最佳选择。 Client1 可以尝试连接到 Client2,如果失败则客户端可以切换角色并让 Client2 尝试连接到 Client1。

如果无法在任一方向建立直接连接(例如两个客户端都在阻止连接的路由器/防火墙后面,并且常用的 NAT 打洞技术无法打开它们),则服务器可以充当中继,类似于网络浏览器在配置为使用代理服务器时仍然可以连接到 HTTPS 服务器的方式。只要服务器按原样依赖 SSL 消息,并且客户端不验证 TCP 数据包的源 IP 地址,它就可以工作。

但是,如果客户端正在验证源地址,那么每个客户端都必须在其自身和服务器之间建立一个单独的 SSL session ,其中客户端 1 将加密数据发送到服务器,服务器解密数据并在发送时重新加密给 Client2,反之亦然。

关于ssl - 处理 SSL 客户端到服务器到客户端(中继?)的最佳方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27832664/

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