Протоколы Internet

Рыба и морепродукты оптом рыба мелким оптом в Москве.          

Формирование продавцом отклика PInitRes осуществляется


/p> Формирование продавцом отклика PInitRes осуществляется следующим образом.





























Шаг



Действие



1



Сформировать структуру данных PInitRes следующим образом:

  • Сгенерировать TransID согласно следующей процедуре:


  • Скопировать LID-C, XID и Language из записи транзакции


  • Если запись транзакции содержит LID-M, скопировать его


  • Занести текущую дату в TransIDs.PReqDate


  • Скопировать RRPID из записи транзакции


  • Скопировать Chall-C из записи транзакции


  • Сформировать новый Chall-M


  • Если оттиск для текущего BrandCRLIdentifier не получен или устарел, занести новый BrandCRLIdentifier


  • На основе информации из PInitReq (BrandID, BIN и сертификат владельца карты) выбрать расчетный центр. Записать в PEThumb оттиск сертификата выбранного расчетного центра.


  • Скопировать оттиски из PInitReq, если он имеется. Это позволяет владельцу карты проверить, что продавцу корректно доставлены все посланные оттиски.


  • Опционно: добавить любые PIRqExtensions




  • 2



    Ввести Compose SignedData. Если оттиск для Cert-PE не получен в PInitReq, включить в подпись Cert-PE.



    3



    Вставить все эти данные в цифровой конверт и послать владельцу карты



    Информационная структура PInitRes представлена ниже в таблице 4.6.2.56.



    Таблица 4.6.2.56

    . Структура PInitRes

































































    PInitRes



    S(M, PInitResData)



    PInitResData



    {TransIDs, RRPID, Chall-C, Chall-M, [BrandCRLIdentifier], PEThumb, [Thumbs], [PIRsExtensions]}



    TransIDs



    Смотри описание структуры TransID выше



    RRPID



    Идентификатор пары запрос/отклик



    Chall-C



    Копируется из сообщения PInitReq



    Chall-M



    Вызов продавца, служащий для проверки новизны подписи владельца карты



    BrandCRLIdentifier



    Список текущих CRL для всех СА в рамках заданной платежной системы.



    PEThumb



    Оттиск сертификата ключевого обмена расчетного центра.



    Thumbs



    Копируется из PInitReq



    PIRsExtensions



    Запрос инициализации покупки незашифрован, по этой причине эти расширения не должны содержать конфиденциальных данных.



    При получении владельцем карты сообщения PInitRes он обрабатывает его следующим образом.





































































































    Шаг



    Действие



    1



    Извлечь PInitRes из входного сообщения



    2



    Вызвать Receive SignedData



    3



    Проверить TransID следующим образом:

  • Осуществить поиск транзакции с использованием LID-C. Если поиск безуспешен:


  • Послать сообщения Error с ErrorCode равным unknownLID


  • Остановить обработку PInitRes


  • Если LID-M был послан во время инициализационного процесса SET, сравнить LID-M с LID-M в записи транзакции. Если они неэквивалентны, то:


  • Послать сообщение Error с ErrorCode равным unknownLID


  • Остановить обработку PInitRes


  • с) Если LID-M не был послан и имеется LID-M, то:

  • Послать сообщение Error с ErrorCode равным unknownLID


  • Остановить обработку PInitRes




  • 4



    Сравнить RRPID со значением из записи транзакции. Если они отличаются, то:

  • Послать сообщение Error с ErrorCode равным unknownRRPID


  • Остановить обработку PInitRes




  • 5



    Сравнить Сhall-C со значением из записи транзакции. Если они отличаются, то:

  • Послать сообщение Error с ErrorCode равным challengeMismatch.


  • Остановить обработку PInitRes




  • 6



    В опционном варианте управления со стороны владельца карты из сертификата продавца извлекается его имя и отображается для пользователя. Если владелец карты одобряет кандидатуру, процесс продолжается, в противном случае обработка PInitRes прерывается.



    7



    Занести данные, включая TransID и Chall-M, в запись транзакции



    8



    Обработать BrandCRLIdentifier, если он присутствует.



    9



    Использовать PEThumb для идентификации сертификата шифрования (Cert-PE), чтобы использовать в PReq при шифровании данных для расчетного центра.



    10



    Проверить, что сертификат платежной системы продавца и сертификат расчетного центра (Cert-PE) согласуются с платежной системой владельца карты, указанной в PInitReq. Если согласия нет, владелец карты оповещается об этом, а обработка PInitReq прерывается.



    11



    Если поле Thumbs присутствует, сравнить его значение с тем, что прислано в PInitReq. Если значения совпадают, перейти к исполнению пункта 14, в противном случае:

  • Послать сообщение Error с ErrorCode равным thumbsMismatch


  • Остановить обработку PInitRes




  • 12



    Если поле Thumbs отсутствует, проверить, что Thumbs не было послано в PInitReq. Если Thumbs было послано в PInitReq, то:

  • Послать сообщение Error с ErrorCode равным thumbsMismatch


  • Остановить обработку PInitRes




  • 13



    Если PIRsExtensions существуют, их необходимо обработать. Если они не распознаны, а флаг критичности (criticality) равен TRUE, сформировать сообщение Error, в противном случае расширения следует игнорировать.



    14



    Проверить Cert-PE (идентифицированный в PEThumb) для неподписанных транзакций. Если индикатор в Cert-PE не допускает неподписанных транзакций, а владелец карты не имеет сертификата, информировать его о том, что транзакция не может быть продолжена и прервать обработку.



    15



    Владелец карты может теперь продолжить процедуру посылкой запроса покупки.

    <

    Содержание  Назад  Вперед







    Forekc.ru
    Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий