如果CURLOPT_SSL_VERIFYPEER为false,数据传输是否不再安全?

And*_*lik 11 php ssl curl

我最近遇到了将数据发布到SSL证书已更新的服务器的问题.我做了一些研究,发现当CURLOPT_SSL_VERIFYPEER设置为false时,发布日期成功完成.有人能解释一下CURLOPT_SSL_VERIFYPEER和_VERIFYHOST之间的关系吗?另外,如果我将VERIFYPEER设置为false,我是否不再通过安全连接传输数据?

非常感谢任何人都能给予的帮助.

Mar*_*c B 20

该连接仍将是SSL加密的.您只是不会在使用经验证的正确证书的链接上执行此操作.任何人都可以创建自己的SSL证书,在您的浏览器和Web服务器支持的任何级别上都可以完全接受.

但是,您会得到许多关于无法验证证书真实性的投诉.这是为了防止Joe M. Alicious创建自称为"microsoft.com"的证书并设置自己的Windows Update主机.该证书将说它是microsoft.com,但它不能被认证为实际上是microsoft.com,因为Verisign(或任何人)实际上没有颁发该证书并在其上放置自己的真实性标记(签署证书).

_VERIFYHOST用于检查您要连接的URL的主机名(例如"microsoft.com")是否在SSL证书中列出.如果将此选项设置为false,则将忽略url/cert主机名不匹配(例如,您在testbox.develhost.com上有一个开发框,但正在使用您客户端的真实有效'example.com'证书).

_VERIFYPEER禁用验证整个证书.这允许自签名证书工作.否则,SSL库将禁止证明证书的颁发者无效.

但无论是哪种设置,如果强行通过连接,它都将被ssl加密.