Альтернатива для использования CURLOPT_SSL_VERIFYHOST, 2

Я использую класс XML auth.net, написанный Джоном Конде, http://www.johnconde.net/blog/tutorial-integrate-authorize-net-xml-api-universal-php-class/ . В нем есть две линии.

curl_setopt($this->ch, CURLOPT_SSL_VERIFYHOST, 2); curl_setopt($this->ch, CURLOPT_CAINFO, dirname(__FILE__) . '/ssl/cert.pem'); 

Могу ли я заменить это на

 curl_easy_setopt(curl,CURLOPT_SSL_VERIFYPEER, 0); curl_easy_setopt(curl,CURLOPT_CAINFO, NULL); curl_easy_setopt(curl,CURLOPT_CAPATH, NULL); 

Возможно, я не смогу получить файл .pem или информацию, которую мне нужно создать. Будет ли эта альтернатива быть столь же безопасной?

Related of "Альтернатива для использования CURLOPT_SSL_VERIFYHOST, 2"

Будет ли эта альтернатива быть столь же безопасной?

Нет, отключение CURLOPT_SSL_VERIFYHOST или CURLOPT_SSL_VERIFYPEER позволит допускать атаки MITM (см. Этот ответ ).

Возможно, я не смогу получить файл .pem или информацию, которую мне нужно создать.

Информация, которую вам нужно создать, в конечном счете – это вызов от вас, выбор того центра сертификации, которому вы хотите доверять. Браузеры и ОС стремятся сделать предварительный отбор для вас. Curl поставляется с удобным сценарием и комплектом CA с использованием выбора CA CA (этот выбор обновляется раз в то время). Некоторые дистрибутивы Linux также предоставляют файл пакета CA по умолчанию, который вы можете использовать.