C++ 在使用https协议的情况下,是否可以使用libpcap查看头/数据包中的内容
我使用iptables字符串匹配+libnetfilter_队列库来监视http请求和响应。但后来我意识到,在https协议的情况下,字符串匹配失败,因为iptable在第3层捕获数据包。C++ 在使用https协议的情况下,是否可以使用libpcap查看头/数据包中的内容,c++,linux,network-programming,iptables,libpcap,C++,Linux,Network Programming,Iptables,Libpcap,我使用iptables字符串匹配+libnetfilter_队列库来监视http请求和响应。但后来我意识到,在https协议的情况下,字符串匹配失败,因为iptable在第3层捕获数据包。 现在,我正在使用libpcap重新实现它。因此,在https协议的情况下,是否可以使用libpcap查看头/数据包中的内容?https使用SSL协议在应用层(OSI模型中的最高层)加密信息。因此,答案是否定的,libpcap不会帮助您查看内容。如果有可能的话,它将在一开始就大大违背使用SSL的目的。HTTPS
现在,我正在使用libpcap重新实现它。因此,在https协议的情况下,是否可以使用libpcap查看头/数据包中的内容?https使用SSL协议在应用层(OSI模型中的最高层)加密信息。因此,答案是否定的,libpcap不会帮助您查看内容。如果有可能的话,它将在一开始就大大违背使用SSL的目的。HTTPS使用SSL协议,在应用层(OSI模型中的最高层)加密信息。因此,答案是否定的,libpcap不会帮助您查看内容。如果有可能的话,首先它几乎会破坏使用SSL的目的。否。如果有可能,HTTPS将不安全,这是它存在的唯一原因。否。如果有可能,HTTPS将不安全,这是它存在的唯一原因。如果您正在监视您的机器和另一台机器之间的通信,您可能能够解密SSL通信(毕竟,您机器上的浏览器可以这样做),但这并不容易,但执行此操作的代码有点复杂(我无法帮你弄明白,所以你只能靠自己),而且它可能并不总是能够进行解密
如果您正在监视其他两台机器之间的流量,则需要从这些机器获取密钥(如果您可以在没有这些密钥的情况下进行此操作,那么,正如其他人所指出的,SSL不会非常有用,因为它的全部目的是对其他人隐藏流量).如果您正在监视您的计算机与另一台计算机之间的通信量,您可能能够解密SSL通信量(毕竟,您计算机上的浏览器可以解密),但这并不容易,但执行此操作的代码有点复杂(我无法帮您弄清楚,因此您只能自己解密),并且它可能并不总是能够进行解密
如果您正在监视其他两台机器之间的流量,则需要从这些机器获取密钥(如果您可以在没有这些密钥的情况下进行此操作,那么,正如其他人所指出的,SSL将不会非常有用,因为它的全部目的是对其他人隐藏流量)