java ca 验证失败_HTTPS和SSL3_GET_SERVER_CERTIFICATE:证书验证失败,CA正常

卷曲:SSL证书问题,验证CA证书是否正常2006年4月07日使用Curl打开安全URL时可能会出现以下错误:SSL证书问题,验证CA证书是否正常我将解释为什么错误以及你应该怎么做呢 . 摆脱错误的最简单方法是在脚本中添加以下两行 . 该解决方案存在安全风险 . //警告:这可以防止卷曲检测到“中间人”攻击

curl_setopt($ ch,CURLOPT_SSL_VERIFYHOST,0);

curl_setopt($ ch,CURLOPT_SSL_VERIFYPEER,0);

让我们看看这两个参数是做什么的 . 引用手册 . CURLOPT_SSL_VERIFYHOST:1检查SSL对等证书中是否存在公用名 . 2检查是否存在公用名,并验证它是否与提供的主机名匹配 . CURLOPT_SSL_VERIFYPEER:FALSE停止CURL验证对等方的证书 . 可以使用CURLOPT_CAINFO选项指定要验证的备用证书,也可以使用CURLOPT_CAPATH选项指定证书目录 . 如果禁用CURLOPT_SSL_VERIFYPEER,则CURLOPT_SSL_VERIFYHOST也可能需要为TRUE或FALSE(默认为2) . 将CURLOPT_SSL_VERIFYHOST设置为2(这是默认值)将保证呈现给您的证书具有与您用于访问远程资源的URN匹配的“公用名” . 这是一个 Health 的检查,但它不能保证您的程序没有被解除 . 输入“中间人”您的程序可能会误导与另一台服务器交谈 . 这可以通过几种机制来实现,比如dns或arp中毒(这是另一天的故事) . 入侵者还可以使用您的程序所期望的相同“通用名称”对证书进行自签名 . 通信仍然会被加密,但你会将你的秘密泄露给冒名顶替者 . 这种攻击被称为“中间人”击败'中间人'嗯,我们需要验证呈现给我们的证书是否真实 . 我们通过将它与我们合理*信任的证书进行比较来做到这一点 . 如果远程资源受到Verisign,GeoTrust等主要CA之一颁发的证书的保护,您可以安全地与Mozilla的CA证书包进行比较,您可以从http://curl.haxx.se/docs/caextract获取该证书包 . .html将文件cacert.pem保存在服务器的某个位置,并在脚本中设置以下选项 . curl_setopt($ ch,CURLOPT_SSL_VERIFYPEER,TRUE);

curl_setopt($ ch,CURLOPT_CAINFO,“pathto / cacert.pem”);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值