溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

ISO8583報(bào)文手工拆解

發(fā)布時(shí)間:2020-05-23 16:59:16 來源:網(wǎng)絡(luò) 閱讀:4144 作者:Linux_star 欄目:軟件技術(shù)

                     ISO8583報(bào)文手工拆解

  8583報(bào)文大部分情況下用在POS終端與后臺(tái)收單系統(tǒng)的數(shù)據(jù)交換,一般情況下一段完整的報(bào)文由以下幾個(gè)部分組成:

  ——————————————————————————————————

       長度                         報(bào)文頭                    8583數(shù)據(jù)

    ——————————————————————————————————

 長度部分一般兩個(gè)字節(jié),表示報(bào)文的總長度。(“報(bào)文頭”+“數(shù)據(jù)”,部分的長度)

TPDU決定了終端與系統(tǒng)之間的網(wǎng)絡(luò)協(xié)議。TPDU是一個(gè)10位的數(shù)字。

實(shí)際傳輸?shù)膱?bào)文,有些用ASCII碼表示,有些用BCD碼表示。

下面來段簡單的報(bào)文,我給大家詳細(xì)的解析一下(根據(jù)中國銀聯(lián)POS終端規(guī)范)

   ——————————————————————————————————

    005f600003000200302044c020c08810210009000000000001005018998802100006

    377689200010172645673d130820147800000000303130303030313230313130303

    030303130303030303131353626000000000000000011260001100000

   ——————————————————————————————————

<00 5f>

報(bào)文總長度 95字節(jié)

<60 00 03 00 00>

TPDU

<02 00>

這個(gè)是信息類型(MTI),是一個(gè)四位的數(shù)字,這里為&ldquo;0200&rdquo;(請(qǐng)求)

傳輸時(shí)用BCD碼表示即為&ldquo;02h 00h&rdquo;,  每位都有它的意義

第一位:8583 version number

第二位:message class

第三位:message sub-class

第四位:transction originator

下面開始位圖的詳細(xì)解釋:

<30 20 44 c0 20 c0 88 10>

bitmap域, 指示哪些域的存在    位圖包括基本位圖和擴(kuò)展位圖

位圖利用BCD碼分析。把BCD碼的那一位置 &ldquo;1&rdquo;,就表示有哪些域。

解析位圖如下:

0011000000100000010001001100000000100000110000001000100000010000

這個(gè)你就自己數(shù)的看吧。解析出來的域有:3,4,11,18,22,25,26,35,41,42,49,53,60。

接下來就是對(duì)應(yīng)每個(gè)域的屬性,開始對(duì)應(yīng)相應(yīng)的數(shù)據(jù)。

<21 00 09>

field 3, 交易處理碼,n6, 定長, 用3個(gè)字節(jié)的BCD碼表示。

<00 00 00 00 00 01>

field 4, 交易金額, n12, 定長, 用6個(gè)字節(jié)BCD碼表示,這里金額是0.01元

若為人民幣則交易金額的單位是人民幣的分。

<00 50 18>

field 11, 流水號(hào), n6, 定長, 用3字節(jié)的BCD碼表示, 流水號(hào)為&ldquo;005018&rdquo;。

<99 88>

field 18, 商戶類型,n4, 定長,用2字節(jié)的BCD碼表示。 (商戶類型代碼行業(yè)查詢)

<02 1>

field 22, 服務(wù)點(diǎn)輸入方式, n3, 定長, 在服務(wù)終端定義PIN和PAN的輸入方式。

<00>

field 25, 服務(wù)點(diǎn)條件代碼, n2, 定長, 00表示正常交易

<06>

field 26, 服務(wù)點(diǎn)PIN獲取碼,n2,定長,該域描述了服務(wù)點(diǎn)設(shè)備所允許輸入的個(gè)人密碼明文的最大長度。 

<37 76 89 20 00 10 17 26 45 67 3d 13 08 20 14 78 00 00 00 00>

field 35, 二磁道數(shù)據(jù), z..37(LLVAR), 第一個(gè)字節(jié)表示域的長度(37)

后面19個(gè)字節(jié)BCD碼表示磁道數(shù)據(jù),基數(shù)位補(bǔ)0或者跳過。

<30 31 30 30 30 30 31 32>

field 41, 終端號(hào), ans8, 定長,ASCII碼表示;這里終端號(hào)為:&ldquo;01000012&rdquo;。

<30 31 31 30 30 30 30 30 31 30 30 30 30 30 31>

field 42, 商戶號(hào),ans15, 定長, ASCII碼表示;這里的商戶號(hào)為:&ldquo;011000001000001&rdquo;

<31 35 36>

field 49, 貨幣代碼,ans3,定長, ASCII碼表示;人民幣的代碼為:&ldquo;156&rdquo;。

<26 00 00 00 00 00 00 00>

field 53, 安全控制信息,n16, 有安全要求時(shí)必選

<00 11 26 00 01 10 00 00>

field 60,自定義域, an..011(LLLVAR);兩個(gè)字節(jié)表示長度(00 11),左補(bǔ)齊&ldquo;0&rdquo;。

 

ISO8583報(bào)文拆解代碼見下期。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI