1

我使用 Caddy(用 GO 编写的网络服务器),允许使用 TLS 1.0-TLS 1.2,并且 GO 仅支持会话恢复的票证选项(TLS 会话数据存储在客户端)。

现在我不太确定应该何时恢复 TLS。不管票证的生命周期(我认为默认情况下是一周)和会话票证加密密钥(每 10 小时轮换一次,Caddy “记住”最后 4 个) - 所以这些都不是问题。

据我了解,只要票证仍然有效且浏览器尚未重新启动,就应该恢复会话,这意味着即使我更改了 IP 地址,TLS 票证仍然可以工作。但对我来说不是这样。当我访问网络服务器(同时使用 Chrome 和 Firefox)时,我得到一个 TLS 票证,该票证在浏览该网络服务器的整个过程中仍然有效,但是当我更改我的 IP 地址(通过代理或更改 WIFI)时,该票证在服务器上不被接受侧,并进行了完整的 TLS 握手,其中我得到了一张新票。

所以我的主要问题是:TLS 会话恢复是否仅在 TCP 会话中有效,并且每当启动新的 TCP 会话时,以前的 TLS 票证就会失效?

4

1 回答 1

0

... TLS 会话恢复是否仅在 TCP 会话中起作用

鉴于 TCP 连接中几乎总是只有一次 TLS 握手,这没有多大意义。

只要客户端发送会话票据并且服务器具有从票据中提取信息所需的秘密,使用票据恢复会话就可以工作。但是,服务器可能会实施其他限制,例如在票证中编码客户端 IP 并检查它是否仍然相同。

于 2020-02-05T10:29:02.807 回答