Как разобрать сообщение ISO 8583

Как я могу определить, где начинается MTI в сообщении ISO 8583?

00 1F 60 00 05 80 53 08 00 20 20 01 00 00 80 00 00 92 00 00 00 31 07 00 05 31 32 33 34 31 32 33 34

person Emileydis Rodriguez    schedule 28.07.2017    source источник
comment
Укажите, над каким языком программирования вы работаете. что ты уже испробовал?   -  person Rohan    schedule 28.07.2017
comment
@RohanSadale Этот вопрос не относится к конкретному языку.   -  person M.M    schedule 28.07.2017
comment
Я думал о переходе на SU, но не смог найти доказательств, подтверждающих это.   -  person    schedule 28.07.2017


Ответы (3)


В этом сообщении 00 1F - длина, а 60 00 05 80 53 - TPDU. (Они не являются частью ISO8583). 08 00 - это MTI. Следующие 8 байтов - это первичное растровое изображение.

Вы можете купить копию спецификации ISO8583 в ISO. В Википедии есть введение

person M.M    schedule 28.07.2017

Расположение MTI зависит от сети и должно быть объяснено в их технических спецификациях.

Вы можете следить за MTI, ища такие значения, как 0100, 0110, 0220, 0230, 0800 и т. Д. В первых 20 байтах, за которыми обычно следуют от 8 до 16 байтов данных BMP.

ваши данные показывают MTI = 800 с битовой картой = 20 20 01 00 00 80 00 00 Это означает, что присутствуют следующие поля, 3,11,24,41, с DE 3 (код PRoc) = 920000, DE 11 (STAN) = 003107, а остальные делятся между 24 и 41, я не уверен в их размерах

person A.Rashad    schedule 25.08.2017

В этом сообщении используется заголовок длиной 2 байта:

00 1F 

Но некоторые хосты также используют длину заголовка 4 байта для сообщений ISO 8583. Таким образом, вы не можете обобщать это, это зависит от того, что вы договорились с отправляющим Хостом.

person Uwe Köhler    schedule 07.11.2017