Forum Webscript.Ru
Программирование => PHP => Тема начата: grisha от 08 Сентября 2006, 14:00:10
-
привет есть такой вопрос
хочу организовать оплату на веб мани .....
скачал с сайта скрипты там есть так же программка которая подписывает отсылаемые данные и таким образом подтверждает их достоверность
ъописание програмулины...
....Процесс подписи довольно прост. В качестве входного потока модуль (реально это обычный запускаемый файл) получает строку вида PlanStr\\004\\r\\n. Обработав входную строку, в выходной поток модуль выдает подпись...."
вопрос как это реализовать на пхп!?
-
На webmoney.ru вместе с описанием этой самой программулины есть вообще-то пример на php.
http://www.webmoney.ru/pfdevelhttp1.shtml
-
да я скачал все примеры запустил они генерируют подпись но сервер возвращает что подпись не верная ... из за чего это может быть?
-
Какой интерфейс?
Изначально вопрос был, как реализовать подпись. С этим справился?
-
да с подписями справился всё проверяет вроде отправляет на те интерфесы для которых у меня нет персонального аттестата выдаёт что интерфейс не доступен....
но курл по прежнему не работает с сертификатом ... т.е. в примере пришлось раскоментировать строку после которой всё заработало
function _HttpsReq($addr)
{
$ch = curl_init("https://w3s.webmoney.ru".$addr);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
# Если корневой WebMoney CA сертификат не инсталлирован в SSL, то укажем путь к нему:
curl_setopt($ch, CURLOPT_CAINFO, "WebMoneyCA.cer");
curl_setopt($ch, CURLOPT_CAPATH, "Z:\\home\\webmoney\\www");
# Внимание! Не используйте curl_setopt($ch,CURLOPT_SSL_VERIFYPEER, FALSE)!
#я её раскоментировал т.е. отключил проверку сертификатов :)
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
# Это дает возможность осуществить атаку с подменой DNS.
$result=curl_exec($ch);
curl_close($ch);
return $result;
}
ВООБЩЕМ БЕЗ проверки СЕРТИФИКАТА РАботает вот интересно как бы запустить с сертификатом.... пробовал разные варианты с разными опциями и путь относилтелный и полный и с CURLOPT_CAPATH
и без --- глухо .... говорят на веб мани самоподписаный сертификат и новые курлы более строго к этому относятся вот и не пускают,
вообщем ваше мнение ??? хватит этого или всёже добивать сертификаты?
щас тестирую на денвере хостер спит гад не хочет инсталировать WMSigner
-
А если
curl_setopt( $ch, CURLOPT_CAINFO, \'/home/webmoney/www/WebMoneyCA.cer\' );
?
Хотя вообще странно...
Как не работает? Соединение не получается?
-
да соединение не проходит
$result=curl_exec($ch); возвращает фалсе.....
команды
$succeeded = curl_errno($ch);
$txt=curl_error($ch);
возвращают
60
error setting certificate verify locations: CAfile: WebMoneyCA.cer CApath: Z:\\home\\webmoney\\www
собственно...
-
grisha, а если на хостинг залить сертификат и указать к нему путь от корня, работает?
Я собрал всю систему оплаты WM на хостинге (мастерхост) были проблемы только с запуском процессов (генерация подписи), но с сертификатами преблем нет, курл все схватывает отлично.
-
да разобрался там везде надо ставить полный путь и в скрипте и в файле вмсиджнер.ини то файла ключей
а проверку сертификатов я отключил с ней почему то не работает