加密HTTP POST数据

时间:2010-10-12 05:28:56

标签: http post https

我有一个HTTP POST字符串,我从客户端cpp程序运行Apache运行的服务器。以下是将从客户端触发的POST字符串:

"POST %s HTTP/1.0\r\n" 
"Host: %s\r\n"
"Content-type: multipart/form-data\r\n"
"Content-length: %d\r\n\r\n"
"Content-Disposition: %s; filename: %s\n"

如果有人可以帮助我理解如何加密Content-Disposition:字段中的数据,那将是很好的。 另外,我注意到即使我把一些与POST字符串权限无关的东西,例如:"POST %s HTTPGarbage/1.0\r\n",转移仍然发生,如果我也被告知这种行为,那将是很好的。

谢谢,
萨扬

1 个答案:

答案 0 :(得分:4)

如果您使用HTTPS(实质上是HTTP over SSL / TLS),则从建立SSL / TLS连接的那一刻开始加密所有HTTP流量(假设您使用的是相应的密码套件),即在任何HTTP通信之前。在某些情况下(如果您还使用客户端证书身份验证),只有服务器证书(可能显示主机名)可见,并且可能是客户端证书。 URL和所有HTTP头(和内容)将以这种方式使用SSL / TLS进行保护。

如果您不使用浏览器作为客户端,则可以使用现有的SSL / TLS库,例如NSS(Mozilla)或OpenSSL。确保正确配置证书信任和主机名验证。