导读 由于需要定位一个问题,在服务器上tcpdump抓取https数据包,然后下载到本地打开wireshark分析。然后我们下载域名私钥配置到wireshark,发现数据包居然无法解密。是wireshark配置密钥的方法不对?但谷歌了好多文章都是说这样配置的。由于对HTTPS认识不够深,一时不知道如何入手解决。没办法,只能先了解tls这个协议了,于是查看了TLS1.2的RFC文档,终于勉强解答了这个疑惑。
TLS握手整个过程

在解决这个问题之前,先整体了解一下TLS的握手全过程。省略了不常见的过程。如图:
为什么Wireshark无法解密HTTPS数据为什么Wireshark无法解密HTTPS数据
下面按顺序介绍各握手步骤。