Я пытаюсь правильно проанализировать сообщение ISO8583 (1987) в Python 3, используя пакет py8583.После некоторых проблем с синтаксическим анализатором я понял, что растровое изображение в сообщении ISO8583, похоже, неправильно отформатировано.
Это растровое изображение ISO8583: P8P1211661684989
Этоэто полное сообщение ISO8583.Он использует данные мусорного теста, поэтому не нужно беспокоиться о конфиденциальной информации.NP0100P8P1211661684989300000000000002004914104019041104009904SHDPf406c431Cashier_01 01301001000200491665D9832B92FD380C
Насколько я понимаю, растровое изображение должно содержать только шестнадцатеричные символы 1-9 / AF, но, как вы можете видеть, оно начинается с "P8P12 ...".
Есть ли что-тоЯ здесь скучаю?Эти сообщения ISO8583 в настоящее время используются в компании уровня предприятия.Кроме того, в то время как некоторые онлайн-парсеры выдают ошибку растрового изображения, я обнаружил, что она, кажется, хорошо разбирает ее (ссылка ниже).Я не могу понять, как он выполняет анализ.
http://www.fintrnmsgtool.com/decode-iso87-bitmap.html (Правка: glhr правильно указал, что этот сайт не позволяетвведите не шестнадцатеричные символы, только скопируйте / вставьте их, так что это, вероятно, больше не имеет отношения к вопросу.)
Hex dump ниже:
0010 08 00 45 00 00 ab 03 b1 00 00 3c 06 fa 89 c0 a8
0020 15 02 40 87 69 e1 81 1c 0b bb b7 b9 78 55 c7 86
0030 4a 2c 50 18 12 24 2f d3 00 00 4e 50 00 00 00 7d
0040 30 31 30 30 50 38 00 01 80 c0 00 50 31 32 31 31
0050 36 36 31 36 38 34 39 38 39 33 30 30 30 30 30 30
0060 30 30 30 30 30 30 30 32 30 30 34 38 31 34 30 39
0070 35 39 31 39 30 34 31 31 30 34 30 30 39 39 30 34
0080 53 48 44 50 66 34 30 36 63 34 33 31 43 61 73 68
0090 69 65 72 5f 30 31 20 20 20 20 20 30 31 33 30 31
00a0 30 30 31 30 30 30 32 30 30 34 38 31 36 36 35 44
00b0 39 38 33 32 42 39 32 46 44 33 38 30 43
Любая помощь от экспертов ISO8583 будетс благодарностью!