Здравствуйте!Имеется следующее: криптопро CSP, сертификат удостоверяющего центра, личный сертификат
Необходимо отправить на сервер post-запрос, содержащий данные в формате XML, подписав его ЭЦП.
Формат PKCS#7, затем всё это кодируется base64 и отправляется. В ответ приходит аналогичный пакет, который нужно
раскодировать, снять ЭЦП, и вытащить данные из xml-ответа. Всё это делается на PHP
Вопрос: как к сформированному xml-запросу прицепить ЭЦП, ну и соответственно снять ЭЦП с ответа, имея вот такие исходные данные?
Скрипт:
PHP:
скопировать код в буфер обмена
<?PHP //Функция отправки xml запроса function PostXML($link, $xml) { curl_setopt($chx, CURLOPT_RETURNTRANSFER , 1 );// Ожидание ответа сервера curl_setopt($chx, CURLOPT_USERAGENT , $_SERVER["HTTP_USER_AGENT"]); //curl_setopt($chx, CURLOPT_NOPROGRESS, 0); return $result; } $reply = '<?xml version="1.0" encoding="windows-1251"?> <Fms> <Request> <Id>2013</Id> <Auth> <MemberCode>###</MemberCode> <User>###</User> <Password>###</Password> </Auth> <Contents> <Surname>###</Surname> <Firstname>###</Firstname> <Middlename>###</Middlename> <DateOfBirth>###</DateOfBirth> </Contents> </Request> </Fms>'; $respons = PostXML('http://URL', $reply);//ответ сервера ?>
|