2015-08-06 5 views
1

В настоящее время я работаю с финансовым учреждением, которое получает транзакцию через POS-машину. POS-машина от компании injenico. Я получаю сообщение HEXA от POS.Преобразование сообщения ISO 8583 Hexa в строку

005B600002000002003020058020C010042100000000000200000000160021000200374520176553390700D20026011539608150000F31303030303030323130303030303030303030303030310000000000000000006303030303036.

Как это можно преобразовать в сообщение 8583. Если я делаю нормальное преобразование, он дает строку:

`"‡\0S`\0\0\0\00 € À\0!\0\0\0\0\0\0\0\0\0\0!\0\07E eS9\a\0Ò\0&9`P\010000002100000000000001\0000006"` 

Я думаю, что это зашифрованная строка.

Может ли кто-нибудь дать мне представление об конверсии этого?

+0

См https://en.m.wikipedia.org/wiki/ISO_8583. – lhf

ответ

0

Ingenico - всего лишь производитель снаряжения, вы должны выяснить, кто написал программное обеспечение для этого POS. Я гость, что это вариация ISO 8583 v1 (1987).

005B6000020000 Maybe some header for packet 
0200    MTID 
3020058020C01004 BITMAP (3, 4, 11, 22, 24, 25, 35, 41, 42, 52, 62) 
210000   F03 Processing code in BCD  
000000020000  F04 Amount in BCD 
000016   F11 STAN in BCD 
0021    F22 Point of service entry mode in BCD 
0002    F24 ? 
00    F25 POS condition code in BCD 
374520176553390700D20026011539608150000F F35 Track2 in BCD 
3130303030303032313030303030303030303030303031 F41 and F42 in ASCII 
0000000000000000 F52 Pinblock (empty) 
006303030303036. F62 Some private data 
+0

Привет, Томас, Спасибо за ваш ответ. Я поговорил с поставщиком оборудования о коде, они сказали, что он кодируется, и я не должен его расшифровывать. Мы меняем наш план на реализацию и пропускаем эту часть. Но я буду лично работать над этим в будущем. Еще раз спасибо -Zobayer – user2773797

+0

Каков стандартный формат сообщений HPDH? –

1

Это iso8583-1987, как финансовое сообщение, очень похож на Hypercom POS Data Handler (HPDH) сообщения.

Первые два байта представляют собой шестнадцатеричное значение размера сообщения, а затем 5 байтов заголовка TPDU, а затем iso 8583. Ниже приведено объяснение данных, так как оно определено в спецификации HPDH.

FYI:

  • не использовать реальные данные карты, когда вы делитесь дампы общественности, это небезопасно.

  • , когда вы пытались очистить блок PIN в DE052 (я думаю), вы потеряли один шестнадцатеричный символ, из-за которого длина DE062 была сдвинута. Он равен в примере синтаксического анализа.

    msg: # Hypercom POS Data Handler (HPDH) Message 
    TPDU: # Transport Protocol Data Unit 
        S01: "60" # ID // Transactions 
        S02: "0002" # Address, Destination 
        S03: "0000" # Address, Originator 
    MTI: "0200" # Message Type ID. // Financial Transaction Request 
    DE000: "3020058020C01004" # Primary bitmap // 3.4.11.22.24.25.35.41.42.52.62. 
    BM0: # Fields at Primary Bitmap 
        DE003: # PC 
        S01: "21" # Transaction Code. // Payment/Deposit 
        S02: "00" # Account, from. // Default 
        S03: "00" # Account, to. // Default 
        DE004: "000000020000" # Amount, transaction. // 20000 
        DE011: "000016" # STAN. // 16 
        DE022: # POS entry mode 
        PAD: "0" 
        S01: "02" # PAN entry mode // MS 
        S02: "1" # PIN entry capability // PIN 
        DE024: "0002" # Network International Identifier (NII) 
        DE025: "00" # POS condition code // Normal presentment 
        DE035: # Track 2 Data 
        len: "37" 
        val: "452017******0700D****6011539608150000F" # Track 2. 
        DE041: "10000002" # CATI. 
        DE042: "100000000000001" # CAIC. 
        DE052: "0000000000000000" # PIN block, encoded. 
        DE062: # Private data 
        len: "0006" 
        val: 
        v01: "000006" # Invoice/ECR reference number 
    
+0

как разобрать это сообщение с помощью java? –

 Смежные вопросы

  • Нет связанных вопросов^_^