一张金融IC卡的交易流程(二)-----基本测试环境及借贷记交易流程(银联,交通部均为此流程)

1.基本测试环境
读卡器:SDI011
密钥:
;3DES算法主密钥,应用密文计算
MdkAc_3DES=2F3D201558865D02A1497F04F820924C

;3DES算法主密钥,MAC计算
MdkMac_3DES=3B0D4AE6EFEA20FB8F5E510264089D5D

;3DES算法主密钥,敏感数据加密计算
MdkDek_3DES=9EB33751912CC792750E0E19A7896BFE


2.借贷记(所有数据均为模拟测试数据,与任何银行和金融机构均没有对应实际业务关系)出于对安全考虑,数据做过修改,请只参考流程和指令即可。

数据初始化成功
-------------------------------------------1 选择应用---------------------------------------------
交易开始

********************************* 选择交易应用 *********************************

ATR: 3B6D000000960755DD8648410100000001
---> 00A404000E 315041592E5359532E4444463031
<--- [6120]
---> 00C0000020 
<--- 6F1E840E 315041592E5359532E4444463031  A50C8801015F2D027A689F110101[9000]
1PAY.SYS.DDF01
---> 00B2010C00 
<--- [6C2A]
---> 00B2010C2A 
<--- 70286126 4F08A000000333010101 500A50424F43204445424954 870101   9F120AD5D0D0D0D2BBBFA8CDA8 [9000]
                    应用AID            PBOC DEBIT(每款产品不同)       招行一卡通(每款产品不同)
---> 00B2020C00 
<--- [6A83]

建立交易应用列表成功

---> 00A4040008 A000000333010101
<--- [614C]
---> 00C000004C 
<--- 6F4A8408 A000000333010101 A53E500A50424F432044454249548701019F38099F7A019F02065F2A025F2D027A689F1101019F120A50424F43204445424954BF0C0A 9F4D020B0A DF4D020C0A[9000]
********************************* 选择交易应用结束 *********************************

-------------------------------------------------------2 应用初始化---------------------------------------------------------------------
********************************* 初始化应用 *********************************
 //获取处理选项GPO:用来启动 IC 卡内的交易
 //根据9F38(PDOL)的值 , 来拼装数据 , 如下:
 //9F7A01:电子现金终端支持指示器 ,00( 不支持电子现金处理 )
 //9F0206:授权金额 ,000000000001
 //5F2A02:货币代码 ,0156
---> 80A800000B 8309 000000000001 00 0156
<--- [6110]
---> 00C0000010 
 //GPO 返回: 80( Tag,接触 )+ 应用交互特征 ( AIP )+ 应用文件定位器 ( AFL )
//7C ( SDA + DDA + 支持持卡人认证 + 支持终端风险管理 + 支持发卡行认证 )+00
 //根据 GPO 返回的 AFL,从卡中读取数据
<--- 800E 7C00 080102001001050118010100[9000]
//08-01 10-02 18-03 20-04 28-05 30-06
发送GPO指令成功
********************************* 初始化应用结束 *********************************

--------------------------------------------------------3 读应用数据--------------------------------------------------------------------
********************************* 读取应用数据 *********************************

Read Record : SFI = 1,RecordNum = 1
---> 00B2010C00 
<--- [6C6A]
---> 00B2010C6A 
<--- 706857138207853600005183859D29112201000087700F9F1F502020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020[9000]
[57] 13 8207853600005183859D29112201000087700F
[9F1F] 50 2020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020
Read Record : SFI = 1,RecordNum = 2
---> 00B2020C00 
<--- [6C3E]
---> 00B2020C3E 
<--- 703C9F61182020202020202020202020202020202020202020202020209F6201005F201A2020202020202020202020202020202020202020202020202020[9000]
[9F61] 18 202020202020202020202020202020202020202020202020
[9F62] 01 00
[5F20] 1A 2020202020202020202020202020202020202020202020202020
Read Record : SFI = 2,RecordNum = 1
---> 00B2011400 
<--- [6C89]
---> 00B2011489 
<--- 7081865F24032911305F25032604255A0A8207853600005183859F9F0702FF009F080200305F280201568E0C000000000000000002031F009F0D05D86004A8009F0E0500109800009F0F05D86804F8008C1B9F02069F03069F1A0295055F2A029A039C019F37049F21039F4E148D1A8A029F02069F03069F1A0295055F2A029A039C019F37049F2103[9000]
[5F24] 03 291130
[5F25] 03 260425
[5A] 0A 8207853600005183859F
[9F07] 02 FF00
[9F08] 02 0030
[5F28] 02 0156
[8E] 0C 000000000000000002031F00
[9F0D] 05 D86004A800
[9F0E] 05 0010980000
[9F0F] 05 D86804F800
[8C] 1B 9F02069F03069F1A0295055F2A029A039C019F37049F21039F4E14
[8D] 1A 8A029F02069F03069F1A0295055F2A029A039C019F37049F2103
Read Record : SFI = 2,RecordNum = 2
---> 00B2021400 
<--- [6CBB]
---> 00B20214BB 
<--- 7081B89F4681B09456DED6E8B209CCFD0B1F60CAF6372623B63096200D72D73E1FCD7F93A68086E58AA291EB30DA3ABAAC0614352D207074485E67208CCB99DDE0E92F13B3D91F3724A61D6CE9A699773E22DFFD51462D8C17E7139D2316A7DB0EA6EA802A86C3FD2104632EF579FCAB9095732B46A3C944AF8031BAB0F1336927AB590207411ABE9E83FDBCC7169E461F429BE6EAD6DB22D3C3567D374A71911CEDFD6C910A414B36BDA9EBDB3F4EC9A054286CA555649F470103[9000]
[9F46] B0 9456DED6E8B209CCFD0B1F60CAF6372623B63096200D72D73E1FCD7F93A68086E58AA291EB30DA3ABAAC0614352D207074485E67208CCB99DDE0E92F13B3D91F3724A61D6CE9A699773E22DFFD51462D8C17E7139D2316A7DB0EA6EA802A86C3FD2104632EF579FCAB9095732B46A3C944AF8031BAB0F1336927AB590207411ABE9E83FDBCC7169E461F429BE6EAD6DB22D3C3567D374A71911CEDFD6C910A414B36BDA9EBDB3F4EC9A054286CA55564
[9F47] 01 03
Read Record : SFI = 2,RecordNum = 3
---> 00B2031400 
<--- [6CCD]
---> 00B20314CD 
<--- 7081CA9381B02D26373016ACABC9E3F017FFF7521A46C49FE666237312BC407FC1EC6DFFA6293D87620F36FAE7E7804BFF4FC32083A24461E5325EC6BADE087330C6DFF7786AE425AECBED3EB30A6189CD350BA7386360328A3AF81762E030D6985F2DFD50024CBBC89CEBAD05655ED7D35181C4BDC0E7BA83DFF8772974F844487EDE8A018223B882E9A109D25BDA679A3A23FAE2EB7A12FC609E59BBC478A7588369ADF992A6560761E8037B2D664396B45F2CA47D9F4A01829F631030313034373930300000000000006000[9000]
[93] B0 2D26373016ACABC9E3F017FFF7521A46C49FE666237312BC407FC1EC6DFFA6293D87620F36FAE7E7804BFF4FC32083A24461E5325EC6BADE087330C6DFF7786AE425AECBED3EB30A6189CD350BA7386360328A3AF81762E030D6985F2DFD50024CBBC89CEBAD05655ED7D35181C4BDC0E7BA83DFF8772974F844487EDE8A018223B882E9A109D25BDA679A3A23FAE2EB7A12FC609E59BBC478A7588369ADF992A6560761E8037B2D664396B45F2CA47D
[9F4A] 01 82
[9F63] 10 30313034373930300000000000006000
Read Record : SFI = 2,RecordNum = 4
---> 00B2041400 
<--- [6C19]
---> 00B2041419 
<--- 70175F300202209F49039F37045F3401019F1401009F230100[9000]
[5F30] 02 0220
[9F49] 03 9F3704
[5F34] 01 01
[9F14] 01 00
[9F23] 01 00
Read Record : SFI = 2,RecordNum = 5
---> 00B2051400 
<--- [6C09]
---> 00B2051409 
<--- 70079F3201038F010B[9000]
[9F32] 01 03
[8F] 01 0B
Read Record : SFI = 3,RecordNum = 1
---> 00B2011C00 
<--- [6CFE]
---> 00B2011CFE 
<--- 7081FB9081F8A9D1D1D285BB6933C50AAC87B5744FA9ED1699B884BFB67490CD9B483FAEA8A1404B052153A3F7C0AB5894CA7804C41404EFD1A33B735B14AA6C65F91B37D22FF5FE64971BEBE8D596B1A08A0321999DC75675F8AE66A1DD301F307E932E0E7A9F197EB8B3E4B6EE5E17B180D3F95E03F078D685A0F1B6613464EFC35CA385C131875790B910AFBBF454099834F74D4082E34BE089D5318FC8BD0FD55520E0494AA1A95013ADBF30C03A6551EA34AF2B91AA5BBBA985889765DFFC3D773CBBD413CCAA8D013B45FAED2FF51237448A0A90AD00D94A2C63A26C0DC44F8C02C5BD962B4E868BF16E4AFDD1E05FE0F16ECD281E5C186CD59472[9000]
[90] F8 A9D1D1D285BB6933C50AAC87B5744FA9ED1699B884BFB67490CD9B483FAEA8A1404B052153A3F7C0AB5894CA7804C41404EFD1A33B735B14AA6C65F91B37D22FF5FE64971BEBE8D596B1A08A0321999DC75675F8AE66A1DD301F307E932E0E7A9F197EB8B3E4B6EE5E17B180D3F95E03F078D685A0F1B6613464EFC35CA385C131875790B910AFBBF454099834F74D4082E34BE089D5318FC8BD0FD55520E0494AA1A95013ADBF30C03A6551EA34AF2B91AA5BBBA985889765DFFC3D773CBBD413CCAA8D013B45FAED2FF51237448A0A90AD00D94A2C63A26C0DC44F8C02C5BD962B4E868BF16E4AFDD1E05FE0F16ECD281E5C186CD59472
// 静态认证数据列表 = DGI 0201 + TagValue ["82"]
静态认证的应用数据 SDA_Value= 5F24032911305F25032604255A0A8207853600005183859F9F0702FF009F080200305F280201568E0C000000000000000002031F009F0D05D86004A8009F0E0500109800009F0F05D86804F8008C1B9F02069F03069F1A0295055F2A029A039C019F37049F21039F4E148D1A8A029F02069F03069F1A0295055F2A029A039C019F37049F2103 + 7C00
********************************* 读取应用数据结束 *********************************

********************************* 分析卡片返回的AIP及终端的9F33决定做脱机数据认证及联机处理 *********************************
-----------------------------------------------------------4 静态数据认证--------------------------------------------------------------------
---------4.1恢复发卡行公钥--------------
脱机数据认证-终端使用RSA/SHA-1/3DES算法
动态数据认证,DDA
CA公钥RID: A000000333 标识银联RID
CA公钥PKI [8F]: 0B     CA公钥索引
CA公钥模: CA_N= CF9FDF46B356378E9AF311B0F981B21A1F22F250FB11F55C958709E3C7241918293483289EAE688A094C02C344E2999F315A72841F489E24B1BA0056CFAB3B479D0E826452375DCDBB67E97EC2AA66F4601D774FEAEF775ACCC621BFEB65FB0053FC5F392AA5E1D4C41A4DE9FFDFDF1327C4BB874F1F63A599EE3902FE95E729FD78D4234DC7E6CF1ABABAA3F6DB29B7F05D1D901D2E76A606A8CBFFFFECBD918FA2D278BDB43B0434F5D45134BE1C2781D157D501FF43E5F1C470967CD57CE53B64D82974C8275937C5D8502A1252A8A5D6088A259B694F98648D9AF2CB0EFD9D943C69F896D49FA39702162ACB5AF29B90BADE005BC157               CA公钥值,此值在终端进行配置,非卡片中数据
CA公钥指数:CA_E= 03
发卡行公钥证书 [90]: CA_I= A9D1D1D285BB6933C50AAC87B5744FA9ED1699B884BFB67490CD9B483FAEA8A1404B052153A3F7C0AB5894CA7804C41404EFD1A33B735B14AA6C65F91B37D22FF5FE64971BEBE8D596B1A08A0321999DC75675F8AE66A1DD301F307E932E0E7A9F197EB8B3E4B6EE5E17B180D3F95E03F078D685A0F1B6613464EFC35CA385C131875790B910AFBBF454099834F74D4082E34BE089D5318FC8BD0FD55520E0494AA1A95013ADBF30C03A6551EA34AF2B91AA5BBBA985889765DFFC3D773CBBD413CCAA8D013B45FAED2FF51237448A0A90AD00D94A2C63A26C0DC44F8C02C5BD962B4E868BF16E4AFDD1E05FE0F16ECD281E5C186CD59472

使用CA公钥对发卡行公钥证书解密后: 
终端恢复发卡行公钥
CA_O = DERSA(CA公钥,CA公钥指数,发卡行公钥证书)
软件中 E是公钥指数(65537或03) N是模 D是私钥指数


CA_O=6A 02820785FF12300030220101B001BB6CCEABE9E67E1376C4867D741CF1BA1588F37F5DCCDDA72A9E22F800615C5D19B5EF6D92822F1EB74E9786F5CB004AF432C1CB020CFEC1FD5812E80754E0D897CC7C13B74C9D2AEEAADCBF6A61E858B051190542B9D79FDA364F3A5B7E1AFBFAD159055C1A2328970E476D6775E239FE5717550B470E2FC5D42AA5F02EBBA71EC3D01C91BB7C660FA225176CE85D0E16A96BA60904CF14C5AC31BAA90340195117C544F0AF70E75A468E523A00440FBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB   97D3B68E372323FF1B487D800D7AABA14D0CEDA3BC
发卡行公钥余项 [92]:不存在
发卡行公钥指数 [9F32]: 03
计算哈希值输入数据: 
// 组织摘要输入信息 + 发卡行公钥余项 ( 如果有 ) + 发卡行公钥指数
 // HashValueInfo = CA _ O . Mid (2, CA _ O . GetLength ()- 42 - 2) + TagValue [_ T ("92")] + TagValue [_ T ("9F32")];
// HashV = SHA 1( HashValueInfo )
02820785FF12300030220101B001 BB6CCEABE9E67E1376C4867D741CF1BA1588F37F5DCCDDA72A9E22F800615C5D19B5EF6D92822F1EB74E9786F5CB004AF432C1CB020CFEC1FD5812E80754E0D897CC7C13B74C9D2AEEAADCBF6A61E858B051190542B9D79FDA364F3A5B7E1AFBFAD159055C1A2328970E476D6775E239FE5717550B470E2FC5D42AA5F02EBBA71EC3D01C91BB7C660FA225176CE85D0E16A96BA60904CF14C5AC31BAA90340195117C544F0AF70E75A468E523A00440F     BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB03
终端计算哈希结果: 97D3B68E372323FF1B487D800D7AABA14D0CEDA3
HashV = SHA1(计算哈希输入数据)

卡恢复哈希数据: 97D3B68E372323FF1B487D800D7AABA14D0CEDA3
终端交易日期 [9A]: 150609
证书有效日期: 3012
-------恢复和验证IC卡公钥(P【8205】*Q【8204】)-----
发卡行公钥模: 
发卡行公钥模 = 发卡行公钥的最左边字节 + 发卡行公钥的余项(如果有)
_ CA _ N = CA _ O . Mid (30, CA _ N . GetLength () - 72) + TagValue [_ T ("92")];
BB6CCEABE9E67E1376C4867D741CF1BA1588F37F5DCCDDA72A9E22F800615C5D19B5EF6D92822F1EB74E9786F5CB004AF432C1CB020CFEC1FD5812E80754E0D897CC7C13B74C9D2AEEAADCBF6A61E858B051190542B9D79FDA364F3A5B7E1AFBFAD159055C1A2328970E476D6775E239FE5717550B470E2FC5D42AA5F02EBBA71EC3D01C91BB7C660FA225176CE85D0E16A96BA60904CF14C5AC31BAA90340195117C544F0AF70E75A468E523A00440F
ICC公钥证书 [9F46]: IC_I= 9456DED6E8B209CCFD0B1F60CAF6372623B63096200D72D73E1FCD7F93A68086E58AA291EB30DA3ABAAC0614352D207074485E67208CCB99DDE0E92F13B3D91F3724A61D6CE9A699773E22DFFD51462D8C17E7139D2316A7DB0EA6EA802A86C3FD2104632EF579FCAB9095732B46A3C944AF8031BAB0F1336927AB590207411ABE9E83FDBCC7169E461F429BE6EAD6DB22D3C3567D374A71911CEDFD6C910A414B36BDA9EBDB3F4EC9A054286CA55564
使用发卡行公钥对ICC公钥证书解密后: 
/恢复 IC 卡公钥证书 ( 唯一 )
IC _ O = DeRSA (_ CA _ N , IC _ E , IC _ I )

IC _ O =
6A 048207853600005183859F123004744501018001C821C3DD994D17E26FB2A817B2403BF2E279682E7003AEFEB6A5AA16911EEA3B511BC2068B0A4A103E6277359CD7B67A5E97E139EFECBAB3DDA69805562C88543DEE38825D3B994A00E52EAE005D44A426C9BA98066B3AB32FEE4A60ED89837289AA3ACB86E891CEC0C491F19D0F4369D39B7D5C7B893078A837702FC60E8B27BBBBBBBBBBBB285D71F611B4D473150EFB22B49044A87E99904ABC
ICC公钥余项 [9F48]:不存在
ICC公钥指数: 03
BB = (' B ', CA _ N . GetLength () - 52);
HashValueInfo = IC _ O . Mid (2, IC _ O . GetLength () -42 - 2) + TagValue [9 F 48] + IC _ E + SDA _ Value
HashV = SHA 1( HashValueInfo );
计算哈希的输入数据: 048207853600005183859F123004744501018001C821C3DD994D17E26FB2A817B2403BF2E279682E7003AEFEB6A5AA16911EEA3B511BC2068B0A4A103E6277359CD7B67A5E97E139EFECBAB3DDA69805562C88543DEE38825D3B994A00E52EAE005D44A426C9BA98066B3AB32FEE4A60ED89837289AA3ACB86E891CEC0C491F19D0F4369D39B7D5C7B893078A837702FC60E8B27BBBBBBBBBBBB035F24032911305F25032604255A0A8207853600005183859F9F0702FF009F080200305F280201568E0C000000000000000002031F009F0D05D86004A8009F0E0500109800009F0F05D86804F8008C1B9F02069F03069F1A0295055F2A029A039C019F37049F21039F4E148D1A8A029F02069F03069F1A0295055F2A029A039C019F37049F21037C00
终端计算哈希结果: 285D71F611B4D473150EFB22B49044A87E99904A
HashV = SHA1(计算哈希输入数据)

卡恢复哈希数据: 285D71F611B4D473150EFB22B49044A87E99904A
证书有效日期: 3012
----------------------动态签名应用数据的生成----------------------------
ICC公钥模:
_ IC _ N ( IC 卡公钥 P * Q ) = IC_O . Mid (42, nIssuer _ n _ Len - 84) + TagValue [9F48]
nIssuer _ n _ Len =发卡行公钥模的长度
_ IC_N= C821C3DD994D17E26FB2A817B2403BF2E279682E7003AEFEB6A5AA16911EEA3B511BC2068B0A4A103E6277359CD7B67A5E97E139EFECBAB3DDA69805562C88543DEE38825D3B994A00E52EAE005D44A426C9BA98066B3AB32FEE4A60ED89837289AA3ACB86E891CEC0C491F19D0F4369D39B7D5C7B893078A837702FC60E8B27
内部认证, + DDOL [9 F49]( 由终端生成的不可预知数 ,9F37,4 个字节的二进制数)
---> 0088000004 5BC15BC1
<--- [6183]
---> 00C0000083 
<--- 808180 896FB62F6F8D6F39566231BEBD94EAD54C58ECDD7012BF0E7CE90B20EBCCFB0BA00B957849856E1F02F8C7CFDEEBF52169D9732C33E58E80192CBF522815E3B3C7C3F289BEA71216B477C76FF6D8E9408085D0F97AA48569C69B47B102674F80AC48C50E866C77DE603D9A03B1EA2A02B372FF2E25E4DEE8FBDC648E5CF1A547[9000]
动态签名结果 [9F4B]: IC_I= 896FB62F6F8D6F39566231BEBD94EAD54C58ECDD7012BF0E7CE90B20EBCCFB0BA00B957849856E1F02F8C7CFDEEBF52169D9732C33E58E80192CBF522815E3B3C7C3F289BEA71216B477C76FF6D8E9408085D0F97AA48569C69B47B102674F80AC48C50E866C77DE603D9A03B1EA2A02B372FF2E25E4DEE8FBDC648E5CF1A547
ICC公钥指数 [9F47]: 03
使用ICC公钥对动态签名结果解密后: 
恢复 IC 卡签名动态数据
_ IC _ O = DeRSA (_ IC _ N , IC _ E , _ IC _ I );

_IC_O= 6A 05012002000100A49ECD258E231BF253432363F261A8834743E63E10BC4BC7F79B4BAEBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBA7CB3EDB482D95AF74D3FF9156F93CE2E89B2033BC
计算哈希值输入数据: 
HashValueInfo = _ IC _ O . Mid (2, _ IC _ O . GetLength () -22 * 2) + TagValue [9F37];
HashV = SHA 1( HashValueInfo ); 
05012002000100A49ECD258E231BF253432363F261A8834743E63E10BC4BC7F79B4BAEBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB5BC15BC1

卡恢复哈希值: A7CB3EDB482D95AF74D3FF9156F93CE2E89B2033

终端计算哈希结果: A7CB3EDB482D95AF74D3FF9156F93CE2E89B2033
动态数据认证DDA成功
********************************* 分析卡片返回的AIP及终端的9F33决定做脱机数据认证及联机处理结束 *********************************

********************************* 处理限制 *********************************

卡应用版本号: 0030----PBOC3.0
终端应用版本号: 008C
应用版本号不一致
应用用途控制检查
处理限制结果可参考TVR,TSI的树示意图

********************************* 处理限制结束 *********************************

********************************* 持卡人认证 *********************************
CVM 代码 02----如果此CVM失败,则持卡人验证失败.联机加密PIN验证
CVM 条件代码 03---如果终端支持这个CVM
持卡人认证--联机PIN验证
持卡人认证--联机PIN输入完毕
********************************* 持卡人认证结束 *********************************

********************************* 终端风险管理 *********************************

主帐号 [5A]: 8207853600005183859F
交易金额 [9F02]: 000000000100
终端最低交易限额 [9F1B]: 0000FFFF
偏置随机选择的最大目标百分比: 50
随机选择的目标百分比: 20
偏置随机选择的阈值: 40
随机数小于或等于交易百分比,终端随机交易选择联机
连续脱机交易下限 [9F14]: 00
连续脱机交易上限 [9F23]: 00
---> 80CA9F1300 
<--- [6C05]
---> 80CA9F1305 
<--- 9F13020000[9000]
---> 80CA9F3600 
<--- [6C05]
---> 80CA9F3605 
<--- 9F36020001[9000]
此次ATC寄存器值 [9F36]: 0001
上次联机ATC寄存器值 [9F13]: 0000
超过连续脱机交易次数下限
超过连续脱机交易次数上限
新卡检查
---> 80CA9F1300 
<--- [6C05]
---> 80CA9F1305 
<--- 9F13020000[9000]
上次联机ATC寄存器值: 0000
//0000为初始值,TVR值置为1
新卡
********************************* 终端风险管理结束 *********************************

********************************* 终端行为分析 *********************************
终端交易属性TTQ [9F66]: B6000000
终端验证结果TVR [95]: 00a8047000
IAC-拒绝 [9F0E]: 0010980000
TAC-拒绝: 0000000000
终端具有联机能力
IAC-联机 [9F0F]: D86804F800
TAC-联机: 0000000000
有TVR和IAC-联机或TAC-联机的任何对应位同时为'1',联机(ARQC)

********************************* 终端行为分析结束 *********************************

********************************* 卡片行为分析 *********************************
------------------------应用密文产生---------------
卡片风险管理数据对象列表1 CDOL1 [8C]: 9F02069F03069F1A0295055F2A029A039C019F37049F21039F4E14
AC _ I = TagToValue ( TagValue [_ T ("8 C ")]);
8C =9F0206(授权金额)+9F0306( 其它金额)+9F1A02( 终端国家代码)+9505( 终端验证结果)+5F2A02(交易货币代码)+9A03(交易日期)+9C01( 交易类型)+9 F3704(不可预知数)+9F2103(交易时间)+9F4E14(商户名称 )
AC_I=  000000000100000000000000015600a80470000156150609005BC15BC11604175A686F755A68655F5A6F6E74696F6E5F536F6674
// 生成应用密文(GENERATE APPLICATION CRYPTOGRAM(AC)):传送交易相关数据到 IC 卡,IC 卡计算并且返回一个密文。
// P 1 : 80( ARQC ), 授权请求密文 ( Authorization Request Cryptogram ) 为联机请求
// 40( TC ), 交易证书 ( Transaction Certificate ) 为核准
// 00( AAC ), 应用认证密文 ( Application Authentication Cryptogram ) 为拒绝
// 一次交易卡片最多处理两个生成应用密文命令,如果收到三个及以上个数,卡片返回 “6985 ”
// 如果在第 1 个 GENEARATE AC 命令中 IC 卡返回 TC 或 AAC,则交易脱机授权批准或拒绝
---> 80AE800034  000000000100000000000000015600a80470000156150609005BC15BC11604175A686F755A68655F5A6F6E74696F6E5F536F6674
<--- [6120]
---> 00C0000020 
// 密文信息数据 + 应用交易计数器 ( ATC , 0001)+ 应用密文 ( AC , F8A82BB1573B653E即ARQC  )+ 发卡行应用数据 (0 X 01+9F79低5字节 + MAC )
<--- 801E  80  0001  F8A82BB1573B653E  07020103A03002010A010000000000  AA30A471 [9000]
卡片风险管理巳执行
********************************* 卡片行为分析结束 *********************************

-----------------------------------------------发卡行认证-------------------------------------------------------
********************************* 联机处理或脱机批准或拒绝检查 *********************************
联机授权
发送联机请求数据至发卡行......
发送报文数据 : 5A0A8207853600005183859F5F3401019F3901059F2608F8A82BB1573B653E9F02060000000001009F03060000000000009F1A020156950500A80470005F2A0201569A031506099C01009F37045BC15BC182027C009F360200019F101307020103A03002010A010000000000AA30A471
// 模拟后台计算 ARPC 授权响应密文 ( Authorization Response Cryptogram )
// ARC = 3030+000000000000 // 授权响应代码 ( ARC ), 定义发卡行对交易联机授权的结果
授权响应码为 00 , 10 或 11 表明发卡行接受交易;
授权响应码为 01 或 02 表明发卡行请求参考;
其它值表明发卡行拒绝,卡片按照终端请求交易拒绝进行处理。
// 脱机批准 Y 1; 脱机拒绝 Z 1; 无法联机,脱机被批准 Y 3; 无法联机,脱机被拒绝 Z 3
// ValueA = Xor ( ARC , ARQC )
// 借记贷记联机验证密钥 UDK (8000. Left (32))
UDK _ AC =2F3D201558865D02A1497F04F820924C
ATC _ = 000000000000+0001+000000000000+ FFFE // 离散因子
// DoDes ( ECB , ENCRYPT , ATC _, UDK _ AC, SKAC );// 计算过程密钥
// DoDes ( ECB , ENCRYPT , ValueA , SKAC , ARPC );// 授权响应密文 ARPC
发卡行响应数据成功,CUP8583报文55域数据: 910A1EBAD851FC4229B53030
发卡行认证主机响应数据
ARPC 91: 1EBAD851FC4229B53030
---> 008200000a 1EBAD851FC4229B53030
<--- [9000]
发卡行认证---外部认证成功
联机授权完成
********************************* 联机处理或脱机批准或拒绝检查结束 *********************************

********************************* 完成交易处理 *********************************
终端验证结果TVR [95]: 00a8047000
IAC-缺省 [9F0D]: D86004A800
TAC-缺省: 0000000000
发卡行认证主机响应数据: 1EBAD851FC4229B53030
发卡行认证主机响应授权响应码 ARC: 3030
授权批准:TC
卡片风险管理数据对象列表2 CDOL2 [8D]: 8A029F02069F03069F1A0295055F2A029A039C019F37049F2103
CDOL2 数据元 3030000000000100000000000000015600a80470000156150609005BC15BC1160417
---> 80AE400022 3030000000000100000000000000015600a80470000156150609005BC15BC1160417
<--- [6120]
---> 00C0000020 
<--- 801E4000017C642EE203F388FC07020103603002010A010000000000AA30A471[9000]
CDI_1 [9F27_1]: 40
********************************* 完成交易处理结束 *********************************
交易成功

卡片交易数据:
[57] 8207853600005183859D29112201000087700F
[5A] 8207853600005183859F
[5F20] 2020202020202020202020202020202020202020202020202020
[5F24] 291130
[5F25] 260425
[5F28] 0156
[5F30] 0220
[5F34] 01
[82] 7C00
[8A] 3030
[8C] 9F02069F03069F1A0295055F2A029A039C019F37049F21039F4E14
[8D] 8A029F02069F03069F1A0295055F2A029A039C019F37049F2103
[8E] 000000000000000002031F00
[8F] 0B
[90] A9D1D1D285BB6933C50AAC87B5744FA9ED1699B884BFB67490CD9B483FAEA8A1404B052153A3F7C0AB5894CA7804C41404EFD1A33B735B14AA6C65F91B37D22FF5FE64971BEBE8D596B1A08A0321999DC75675F8AE66A1DD301F307E932E0E7A9F197EB8B3E4B6EE5E17B180D3F95E03F078D685A0F1B6613464EFC35CA385C131875790B910AFBBF454099834F74D4082E34BE089D5318FC8BD0FD55520E0494AA1A95013ADBF30C03A6551EA34AF2B91AA5BBBA985889765DFFC3D773CBBD413CCAA8D013B45FAED2FF51237448A0A90AD00D94A2C63A26C0DC44F8C02C5BD962B4E868BF16E4AFDD1E05FE0F16ECD281E5C186CD59472
[91] 1EBAD851FC4229B53030
[93] 2D26373016ACABC9E3F017FFF7521A46C49FE666237312BC407FC1EC6DFFA6293D87620F36FAE7E7804BFF4FC32083A24461E5325EC6BADE087330C6DFF7786AE425AECBED3EB30A6189CD350BA7386360328A3AF81762E030D6985F2DFD50024CBBC89CEBAD05655ED7D35181C4BDC0E7BA83DFF8772974F844487EDE8A018223B882E9A109D25BDA679A3A23FAE2EB7A12FC609E59BBC478A7588369ADF992A6560761E8037B2D664396B45F2CA47D
[94] 080102001001050118010100
[9F07] FF00
[9F08] 0030
[9F0D] D86004A800
[9F0E] 0010980000
[9F0F] D86804F800
[9F10] 07020103603002010A010000000000AA30A471
[9F13] 0000
[9F14] 00
[9F1F] 2020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020
[9F23] 00
[9F26] F8A82BB1573B653E
[9F26_1] 7C642EE203F388FC
[9F27] 80
[9F27_1] 40
[9F32] 03
[9F34] 020302
[9F36] 0001
[9F36_1] 0001
[9F38] 9F7A019F02065F2A02
[9F46] 9456DED6E8B209CCFD0B1F60CAF6372623B63096200D72D73E1FCD7F93A68086E58AA291EB30DA3ABAAC0614352D207074485E67208CCB99DDE0E92F13B3D91F3724A61D6CE9A699773E22DFFD51462D8C17E7139D2316A7DB0EA6EA802A86C3FD2104632EF579FCAB9095732B46A3C944AF8031BAB0F1336927AB590207411ABE9E83FDBCC7169E461F429BE6EAD6DB22D3C3567D374A71911CEDFD6C910A414B36BDA9EBDB3F4EC9A054286CA55564
[9F47] 03
[9F49] 9F3704
[9F4A] 82
[9F4B] 896FB62F6F8D6F39566231BEBD94EAD54C58ECDD7012BF0E7CE90B20EBCCFB0BA00B957849856E1F02F8C7CFDEEBF52169D9732C33E58E80192CBF522815E3B3C7C3F289BEA71216B477C76FF6D8E9408085D0F97AA48569C69B47B102674F80AC48C50E866C77DE603D9A03B1EA2A02B372FF2E25E4DEE8FBDC648E5CF1A547
[9F4C] 0001
[9F4D] 0B0A
[9F61] 202020202020202020202020202020202020202020202020
[9F62] 00
[9F63] 30313034373930300000000000006000
[CVR] 03603002
[DF61] 0C0A
[OnLinePin] 1111

[Static_Data_To_Authentiocate] 5F24032911305F25032604255A0A8207853600005183859F9F0702FF009F080200305F280201568E0C000000000000000002031F009F0D05D86004A8009F0E0500109800009F0F05D86804F8008C1B9F02069F03069F1A0295055F2A029A039C019F37049F21039F4E148D1A8A029F02069F03069F1A0295055F2A029A039C019F37049F2103

猜你喜欢

转载自blog.csdn.net/sunhuansheng/article/details/82182416