Интегрированные сети ISDN


Таблица Структура PReq для PReqDualSigned и PreqUnsigned



Таблица 4.6.2.59. Структура PReq для PReqDualSigned и PreqUnsigned

OIData

{TransIDs, RRPID, Chall-C, HOD, ODSalt, [Chall-M], BrandID, BIN, [ODExtOIDs], [OIExtensions]}

TransIDs

Копируется из PInitRes, если имеется

RRPID

ID пары запрос/отклик

Chall-C

Копируется из соответствующего PInitReq (см. табл. 4.6.2.55)

HOD

DD(HODInput)

Связывает OIData с PurchAmt без копирования PurchAmt в OIData, что может привести к проблемам с конфиденциальностью

ODSalt

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

Chall-M

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

BrandID

Выбранная владельцем карты платежная система

BIN

Идентификационный номер банка из номера счета владельца карты (первые 6 цифр)

ODExtOIDs

Список объектных идентификаторов из ODExtensions

OIExtensions

Данные в расширении к OI должны относиться к обработке заказа продавцом. Информация заказа незашифрованна, по этой причине здесь не должно быть конфиденциальной информации.

HODInput

{OD, PurchAmt, PurchAmt, [InstallRecurData], [ODExtensions]}

OD

Описание заказа (Order Description). Обмен этой информацией происходит между владельцем карты и продавцом (не регламентируется SET). Здесь могут содержаться данные о качестве товара, размере, цене, адресе поставки и т.д.

PurchAmt

Число транзакций, как это определено владельцем карты. Значение должно соответствовать PIHead (табл. 4.6.2.40).

ODSalt

Новое значение Nonce, сгенерированное владельцем карты, чтобы препятствовать атакам на HOD.

InstallRecurData

См. табл. 4.6.2.41

ODExtensions

Данные в этом расширении OD должны относиться к обработке заказа продавцом. Эта информация должна быть известна независимо владельцу карты и продавцу.

При получении PReq продавец производит следующие действия.

Шаг

Действие

1

Извлекает PReq из входного сообщения

2

Если получено PReqDualSigned, производит проверку подписи;

    1. Извлекает OIData и HPData из OIDualsigned
    2. Формирует HOIData в виде дайджеста OIData
    3. Формирует PI-TBS в виде объединения HPOData из пункта А и HOIData из пункта В.
    4. Генерирует подпись с помощью оператора SO, используя сертификат владельца карты (параметр s) и PI-TBS из пункта С (параметр t).
    5. Сравнивает подпись из пункта D с PISignature. Если они не тождественны, послает сообщение Error c ErrorCode равным signatureFailure и останавливает обработку PReq.
    6. Переходит к выполнению пункта 4.

3

Если получено PReqUnsigned, проверяет, что сертификат платежной системы (Cert-PE) допускает PReqUnsigned. Если нет, то:

      1. Возвращает сообщение PRes c CompletionCode=signatureDequired (необходима подпись)
      2. Останавливает обработку PReq

4

Производит обработку TransIDs:

Проводит поиск транзакций, базирующихся на XID.

Если запись такой транзакции найдена

Сравнивает LID-C и LID-M с записью. Если соответствия нет:

  1. Возвращает сообщение Error c ErrorCode = unknownLID
  2. Останавливает обработку PReq

В противном случае сверяет Chall-M с записью. Если соответствия нет, то:

  1. Присылает сообщение Error c ErrorCode = challengeMismatch
  2. Останавливает обработку PReq

В противном случае

  1. Формирует новую запись транзакции
  2. Спасает LID-C, PReqDate и Language
  3. Опционно формирует LID-M

5

Проверяет, что BrandID в сертификате владельца карты соответствует BrandID в PInitReq и/или OIData. Если соответствия нет, то:

  1. Присылает сообщение PRes c completionCode = orderRejected (заказ отклонен)
  2. Останавливает обработку PReq

6

Запоминает Chall-C, чтобы вернуть его в последующем PRes

7

Запоминает оставшиеся переменные из сообщения в базе данных

8

Сверяет HOD c сформированным хэшем OD, PurchAmt, ODSalt, InstallRecurData (если имеется) и ODExtensions (если имеется)

9

Начиная с этого момента, продавец может, если захочет, послать PRes владельцу карты, или ждать пока от расчетного центра не будет получено сообщение AuthRes

<


Начало  Назад  Вперед



Книжный магазин