当通过HTTPS发送数据时,我知道内容是加密的,但是关于头是否加密,或者头加密了多少,我听到了不同的答案。

有多少HTTPS头是加密的?

包括GET/POST请求url, cookie等。


当前回答

HTTP版本1.1增加了一个特殊的HTTP方法CONNECT——用于创建SSL隧道,包括必要的协议握手和加密设置。 之后的常规请求都包裹在SSL隧道中发送,包括头部和主体。

其他回答

HTTPS (HTTP over SSL)通过SSL隧道发送所有HTTP内容,因此HTTP内容和报头也是加密的。

所有HTTP头都是加密的†。 这就是为什么vhosts上的SSL工作得不太好——你需要一个专用的IP地址,因为Host头是加密的。

†服务器名称识别(SNI)标准意味着如果您使用TLS,主机名可能不会加密。此外,无论你是否使用SNI, TCP和IP头都不会加密。(如果是的话,你的包就不能路由了。)

HTTP版本1.1增加了一个特殊的HTTP方法CONNECT——用于创建SSL隧道,包括必要的协议握手和加密设置。 之后的常规请求都包裹在SSL隧道中发送,包括头部和主体。

是的,头文件是加密的。写在这里。

HTTPS消息中的所有内容都是加密的,包括头和请求/响应负载。

URL也是加密的,你只有IP,端口和SNI,主机名是未加密的。