1. 程式人生 > >轉:8583報文手動組包——詳細分析每個示範域

轉:8583報文手動組包——詳細分析每個示範域

有效 過程 進制 單獨 tails 清算 stream 詳細分析 上交

8583報文作為一種應用較廣的報文,有它獨特的格式。

網上有關8583報文的說明很多。但涉及到每個域的詳細例子就較少了。這裏列出各個域的詳細例子,供參考。

8583報文:

報文組成:

報文頭【長度(2字節)+TPDU(5字節)+報文版本號(2字節)】+信息類型+位圖+數據 TPDU: 6000100000
報文長度:整體報文長度 -報文頭中的2字節長度。如8583整體報文長度為100,那麽報文長度為98.用兩字節的BCD碼表示(16進制)為0062。
手動組裝的8583報文: 0072600010000001000800203801000404000880000000000110101112240009303030313531000800350004343136310009303030303031303031

分析組包過程: 0072(長度) 6000100000(TPDU) 0100(版本號) 0800(信息類型) 2038010004040008(64位圖) 800000(3域)
000001(11域) 101011(12域) 1224(13域) 0009(24域) 303030313531(38域) 00080035000434313631(46域) 0009303030303031303031(61域) 按順序拼接起來即可。 詳細的分析,在單獨域組包中可以看到。

單獨域組包

2域單獨組包:

格式:變長類型:BCD碼表示最大
十六進制(BCD碼>1001加6):4000000000000000
166333021402021781 計算報文長度:0034 組裝8583報文:00346000100000010000804000000000000000166333021402021781
格式:定長 類型: 十六進制(BCD碼>1001加6):2000000000000000 3域內容:800000 ,按規範轉為:800000 報文長度:0028 組裝8583報文:00286000100000010000802000000000000000800000
格式:定長 類型:壓縮時用
十六進制(BCD碼>1001加6):1000000000000000

4域內容:1.01,按規範轉為:000000000101
格式:MMDDhhmmss

二進制:0000 0010 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000
十六進制(BCD碼>1001加6):0200000000000000 7域內容:0228102030,按規範轉為:0228102030
格式:定長 類型:壓縮時用 十六進制(BCD碼>1001加6):0020000000000000

11域內容:000001,按規範轉為:000001
格式:定長, 類型:壓縮時用

十六進制(BCD碼>1001加6):0010000000000000

12域內容:203012,按規範轉為:203012
格式:定長 類型:壓縮時用 描述:交易在終端上發生的時間。

二進制:0000 0000 0000 1000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000
十六進制(BCD碼>1001加6):0008000000000000 13域內容:0430,按規範轉為:0430
格式:定長 類型:壓縮時用 描述:卡的有效期,月月年年
十六進制(BCD碼>1001加6):0004000000000000

14域內容:0415,按規範轉為:0415
格式:定長 類型:壓縮時用描述:清算日期

十六進制(BCD碼>1001加6):0002000000000000

15域內容:1229,按規範轉為:1229

格式:變長, 類型:BCD碼表示最大描述:受理機構標識碼。該代理機構應是已被批準入網,能為商戶提供收單服務的入網機構。

二進制:0000 0000 0000 0000 0000 0000 0000 0001 0000 0000 0000 0000 0000 0000 0000 0000
十六進制(BCD碼>1001加6):0000000100000000 32域內容:2001,按規範轉為:042001
格式:變長 類型:28個字節的變長 描述:擴展主賬號信息域

二進制:0000 0000 0000 0000 0000 0000 0000 0000 0100 0000 0000 0000 0000 0000 0000 0000
十六進制(BCD碼>1001加6):0000000040000000 34域內容:198809,按規範轉為:06313938383039
格式:變長, 類型:1個字節用右靠描述:寫在卡二磁道的數據。 二進制:0000 0000 0000 0000 0000 0000 0000 0000 0010 0000 0000 0000 0000 0000 0000 0000
十六進制(BCD碼>1001加6):0000000020000000 35域內容:EB5B9DB3618B836C1E334C8EBD8AAFA0C0777471F9F41B19,按規範轉為:24EB5B9DB3618B836C1E334C8EBD8AAFA0C0777471F9F41B19
格式:變長, 類型:2個字節用右靠描述:寫在卡三磁道的數據。
二進制:0000 0000 0000 0000 0000 0000 0000 0000 0001 0000 0000 0000 0000 0000 0000 0000
十六進制(BCD碼>1001加6):0000000010000000 36域內容:EB5B9DB3618B836C1E334C8EBD8AAFA0C0777471F9F41B19,按規範轉為:0024EB5B9DB3618B836C1E334C8EBD8AAFA0C0777471F9F41B19
格式:定長 類型:12個字節的定長 十六進制(BCD碼>1001加6):0000000008000000

37域內容:131313132323333
131313132323333
格式:定長 類型:描述:定義在收單單位中定義一個服務終端的標識碼

二進制:0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 1000 0000 0000 0000 0000 0000
十六進制(BCD碼>1001加6):0000000000800000 41域內容: 格式:定長 類型:描述:在本地和網絡中定義交易單位(商戶)的編碼 二進制:0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0100 0000 0000 0000 0000 0000
十六進制(BCD碼>1001加6):0000000000400000 41域內容:82102453132333435363738
3132333435363738


格式:變長, 類型:最大描述:該域用於處理數據

二進制:0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0100 0000 0000 0000 0000
十六進制(BCD碼>1001加6):0000000000040000 46域內容:0000#trans_type#99,按規範轉為:0006000000023939
格式:定長 類型:8個字節的定長二進制數

描述:用戶在服務終端上交易用於識別用戶合法性的一些數字 二進制:0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0001 0000 0000 0000
十六進制(BCD碼>1001加6):0000000000001000 52域內容:5EF0F6C66C3ED34E,按規範轉為:5EF0F6C66C3ED34E
5EF0F6C66C3ED34E


格式:變長, 類型:128個字節的描述:本域為

十六進制(BCD碼>1001加6):0000000000000200

52域內容:

十六進制(BCD碼>1001加6):0000000000000008 61域內容: 000001001,按規範轉換為:0009303030303031303031

計算報文長度:0038 組裝8583報文:003860001000000100008000000000000000080009303030303031303031

轉載請註明出處
http://blog.csdn.net/pony_maggie/article/details/6568192 作者:小馬

轉:8583報文手動組包——詳細分析每個示範域