TLS握手是否意味着采用HTTPS?能否为HTTP执行TLS握手?
TLS握手与HTTP/HTTPS的关系
初始请求是否为HTTPS?
是的,执行你描述的完整TLS握手流程,就意味着客户端发起的是HTTPS连接。因为HTTPS的本质就是HTTP + TLS/SSL,TLS握手是HTTPS建立安全连接的前置步骤——客户端发起连接请求时就会启动TLS握手,只有握手完成、会话密钥生成后,后续的HTTP请求才会通过加密通道传输。
直白点说:不做TLS握手的是明文HTTP,完成TLS握手的就是HTTPS,二者的核心区别就在于这层加密通道的建立。
能否为HTTP执行TLS握手?
不能直接给标准HTTP执行TLS握手。HTTP本身是明文协议,设计上就没有集成TLS握手的流程。如果要给HTTP流量加上TLS加密,本质上就变成了HTTPS——这不是“为HTTP执行TLS握手”,而是把HTTP流量放到TLS加密通道里传输,也就是HTTPS的定义。
倒是有一种少见的HTTP Upgrade方式:客户端先发起普通HTTP请求,通过Upgrade: TLS请求头尝试升级到TLS连接,但这种方式现在几乎没人用,而且升级完成后,后续通信还是遵循HTTPS的模式,并非继续使用明文HTTP。
内容的提问来源于stack exchange,提问作者Yellowjacket
相关产品推荐
相关产品推荐

