Платежный шлюз, использующий cURL с SSL? - PullRequest
1 голос
/ 16 июля 2009

Я обрабатываю кредитные карты, используя платежный шлюз. Чтобы разместить данные на своих серверах, я использую cURL в PHP. У меня есть сертификат SSL, выданный для моего домена, чтобы обеспечить шифрование всех данных POST Поскольку сертификат SSL уже установлен, нужно ли мне использовать параметры SSL для cURL? Если да, какой из параметров мне нужно установить, учитывая мои настройки?

Я безуспешно попробовал следующий код:

$ch = curl_init(); 

curl_setopt($ch, CURLOPT_URL,"https://secure.paymentgateway.com/blah.php");
curl_setopt ($ch, CURLOPT_USERAGENT, "Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)"); 

curl_setopt($ch, CURLOPT_VERBOSE, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_CAINFO,  getcwd().'/cert/ca.crt');
curl_setopt($ch, CURLOPT_SSLCERT, getcwd().'/cert/mycert.pem');
curl_setopt($ch, CURLOPT_SSLCERTPASSWD, 'password');

curl_setopt($ch, CURLOPT_POST, $count);

curl_setopt($ch,CURLOPT_POSTFIELDS,"variables...");                                                                 

$output = curl_exec($ch);
echo $output;
curl_close($ch);

1 Ответ

1 голос
/ 16 июля 2009

Ну, вы уже отключили проверку (которую я не рекомендую: curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);). Это открывает вас для атак "Человек посередине".

Вот простое руководство, которое может вам помочь:

http://developer.paypal -portal.com / PDN / доска / сообщение? Board.id = фп & message.id = 12754 # M12754

...