寂井浮廊
打赏我
欢迎您: 
游客
   
登录
  发现BUG请联系jintianhu2000@126.com
常用
加解密算法
常用工具
EMV相关
还珠楼论坛
答题闯关
用户信息
帖子列表
语法介绍
帖子详情
TC、ARQC、AAC及ARPC校验方式
jin.th 发布于2019-07-30 16:50
[评论区]
[我要回复]
[下载md文件]
[下载pdf文件]
仅自己可见
## TC、ARQC、AAC及ARPC校验方式 ### 前提: 1. 获得IC卡AC子密钥,或者获得发卡行AC主密钥 本例: MDKAC = C4D689158AD9FB9D23105B91CE046D0E 2.得到IC卡卡号及卡序列号 本例: PAN = 6210220110002707355 PAN ser = 01 ### 1.TC、ARQC及AAC的计算方式 #### 取IC卡AC子密钥 如果已经获得了IC卡AC子密钥则略过此步。 用发卡行主密钥分散出IC卡AC子密钥。 方法为使用发卡行主密钥,对PAN的后14位(如果PAN不足14位前面补0)加PAN序列号(共8B)并对此取反连接得到的16字节数据,做3DES加密就得到IC卡AC子密钥。 如: 用MDKAC对2011000270735501DFEEFFFD8F8CAAFE 做3DES加密得 B8A15DA5F7043C317D9FD8F8DFE2BD75(UDK) #### 得过程密钥 用IC卡AC子密钥,对交易计数器ATC做3DES加密: 1. 在ATC前补6字节0x00,对ATC取反,并在前补6字节0x00,并连接 如: ATC = 03D3 00000000000003D3000000000000FC2C 2. 用IC卡AC子密钥对如上数据做3DES加密得过程密钥: 如: 用UDK对00000000000003D3000000000000FC2C做3DES加密得4A43440B2D932ACDC4E2776ED562EE43 (过程密钥) #### 校验AAC、TC及ARQC IC卡返回的55域数据为: 待校验的密文: 81 A9 DC 93 10 F8 88 56 授权金额: 000000000000 9F0206 其它金额: 000000000000 9F0306 国家代码: 0156 9F1A02 终端验证: 0000000000 9505 货币代码: 0156 5F2A02 交易日期: 000000 9A03 交易类型: 00 9C01 随机数: 00000444 9F3704 AIP: 7C00 8202 ATC: 03D3 9F3602 CVR: 0380A800 9F1013 连接如上数据得: 00000000000000000000000001560000000000015600000000000004447C0003D30380A800 用过程密钥对如上数据做MAC运算得到了AAC、TC或ARQC: AAC、TC或ARQC = 81A9DC9310F88856 与IC返回的密文比较 相等,校验成功! ### 2.ARPC的计算方式 #### 取授权应答码 授权应答码为服务器返回的两字节数据,本例采用“00” ARC = 0x30 0x30 #### ARPC计算过程 1. 在ARC后补6个字节0x00,并和ARQC做异或运算 如: 3030000000000000异或81A9DC9310F88856 得 B199DC9310F88856 2. 使用过程密钥对异或结果做3DES加密运算就得到ARPC 4A43440B2D932ACDC4E2776ED562EE43 对B199DC9310F88856做3DES加密运算得:84DD63A221F915CA(ARPC) 3. 命令(外部认证) 00 82 00 00 0A +ARPC(8B)+ARC(2B)
评论列表
回帖
浙ICP备17051204号