我希望通过第三方正向旋转代理服务以编程方式发送包含机密信息的抓取请求,例如智能代理到 HTTPS API。代理是否能够解密我的请求并读取任何信息?
谢谢,迈克
答案1
代理是否能够解密我的请求并读取任何信息?
通常情况下,不是。
当您使用普通正向代理并尝试连接到 https 站点时,您的浏览器会发出CONNECT
-命令,包含主机名和端口号。因此,代理将了解您要连接的主机名和端口。但是,代理的 TCP 流将被加密:
例如,CONNECT 方法可用于访问使用 SSL(HTTPS)的网站。客户端要求 HTTP 代理服务器将 TCP 连接隧道传输到所需目的地。然后,服务器继续代表客户端建立连接。一旦服务器建立了连接,代理服务器将继续代理往返于客户端的 TCP 流。
因此,代理不会获知内容,因为它是加密的。可能能够推断内容,因为它知道主机名和流量大小。但它看不到明文流量。
请注意,对于企业环境中使用的 TLS 碰撞代理,此答案并不正确。
答案2
这取决于代理是在 HTTP 级别还是 TCP 级别工作。
如果是 HTTP 代理,则为了读取 HTTP 请求,代理必须对其进行解码。换句话说,他们能够读取流量,但往返的流量将被加密。
如果它是 TCP 代理,那么 SSL 将在客户端和服务器之间处理,因此如果没有私有证书,代理将无法解码流量。
从表面上看,他们似乎有可能查看流量:
“目前我们仅支持HTTP/S协议,该通信协议采用专有算法加密。”
从:https://smartproxy.com/faq/general#what-protocols-are-supported
看起来这个代理的使用原因与“需要发送敏感数据”并不完全相符 - 它看起来更多是为了抓取网站和社交媒体,这些网站和社交媒体会阻止来自同一 IP 反复访问该网站的请求。