Протокол IGRP

       

Базовая транзакция статусного запроса



Рисунок .32. Базовая транзакция статусного запроса

Блок ссылок транзакции

Торговая роль, делающая информационный запрос, должна использовать Id-компонент (смотри раздел 3.3.1), где атрибуты IotpTransId и TransTimeStamp имеют те же значения, что и в Id-компоненте исходной транзакции, объекта запроса. Атрибут IotpTransID в этом компоненте выполняет роль ключа при запросе записей, которые ведет торговая роль. Значение ID-атрибута Id-компонента должно быть отличным от любых других в исходной транзакции (смотри раздел 3.4.1).

Если требуются текущие статусные данные, компонент MsgId, и конкретный ID-атрибут для компонента MsgId должен отличаться от любых других в сообщениях, посланных торговой роли. Блок информационного запроса (смотри раздел 8.12) содержит следующие компоненты:

  • один компонент типа информационного запроса (смотри раздел 7.18). Он идентифицирует, относится ли запрос к предложению, платежу или доставке.
  • нуль или один компонент платежной схемы (смотри раздел 7.10). Это нужно для инкапсуляции специфических платежных сообщений.

Блок подписи (информационный запрос)

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

Если присутствует блок подписи информационного запроса (смотри раздел 8.12), то он содержит следующие компоненты:

  • один компонент Signature (смотри раздел 7.19)
  • один или более компонентов сертификата, если таковые нужны.


Блоки информационного отклика должны формироваться, только если транзакция авторизована. Цифровые подписи информационного запроса ставятся только в том случае, если получатель ожидает получение подписанных запросов. В данной версии IOTP это требует предварительного согласования. Это означает, что:

  • Покупатели вряд ли будут генерировать запросы, снабженные подписью, но если они это сделают, это не будет считаться ошибкой;
  • другие торговые роли могут согласовать применение цифровых подписей, если это требуется.
    Например, Кассир может потребовать, чтобы информационный запрос был подписан Продавцом.
С другой стороны, если исходная транзакция, к которой относится запрос, реализована через безопасный канал (напр., [SSL]), тогда разумно предположить, что, если отправитель информационного запроса знает Id-компонент исходного сообщения (включая, например, временную метку), то запрос является подлинным. Блок отклика INQUIRY (смотри раздел 8.13) содержит следующие компоненты:

  • один компонент Status (смотри раздел 7.16). Этот компонент содержит статусную информацию о запрашиваемой транзакции,
  • нуль или один компонент платежной схемы. Этот компонент содержит инкапсулированные платежные сообщения, специфические для выбранной схемы оплаты.
Блок SIGNATURE (отклик информационного запроса)

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

Если блок подписи информационного отклика присутствует (смотри раздел 8.13), он содержит следующие компоненты:

  • один компонент Signature (смотри раздел 7.19)
  • один или более компонентов Certificate, если они нужны.
Цифровые подписи информационного отклика могут использоваться, только если получатель ожидает прихода подписанных откликов. В данной версии IOTP tэто предполагает предварительное согласование применение цифровых подписей. Это означает, что:

  • Покупатели вряд ли будут формировать отклики с подписями, хотя, если они это сделают, это не будет ошибкой;
  • другие торговые роли могут договориться о том, что подпись необходима. Например, продавец может потребовать присылки подписанного информационного отклика от кассира.
9.2.2. Базовая транзакция Ping

Целью базовой транзакции IOTP Ping является проверка коннективности между торговыми ролями, принимающими участие в транзакции. Это позволяет приложению IOTP сделать следующее:

  • определить, работает ли приложение IOTP другой торговой роли;
  • проконтролировать, могут ли торговые роли работать с цифровыми подписями.
Например, эта транзакция может быть использована продавцом, чтобы определить, функционирует ли кассир или агент доставки, прежде чем запускать транзакцию, требующую участия этих торговых ролей.



Торговыми блоками, используемыми транзакцией Ping, являются:

  • блок запроса Ping (смотри раздел 8.14),
  • блок отклика Ping (смотри раздел 8.15) и
  • блок Signature (смотри раздел 8.16).
Сообщения PING

На Рисунок .33 отображен обмен сообщениями прибазовой транзакции Ping.

1. Приложение IOTP первой торговой роли решает проверить, находится ли в рабочем состоянии соответствующее приложение партнера. Оно генерирует блок запроса Ping, опционный блок подписи и шлет их другой торговой роли.
1 a 2 Запрос PING. IotpMsg: блоки Trans Ref; подписи (опционный); запроса Ping
2. Вторая торговая роль, которая получает блок запроса Ping, генерирует блок отклика Ping и посылает его отправителю исходного запроса Ping, с блоком подписи, если это требуется.
1 ? 2 Отклик PING. IotpMsg: блоки Trans Ref; подписи (опционный); отклика Ping
3. Первая торговая роль проверяет блок отклика Ping и выполняет необходимые действия, если это требуется


Содержание раздела