EMV交易中的SDA/DDA/CDA——CDA部分

CDA在接触和非接当中的规则略有不同,本篇以接触的Gen 1stAC中的CDA验证来说明

1.CDA的计算

1.1.CDA 的GPO部分处理

与DDA一致(参看EMV交易中的SDA/DDA/CDA——DDA部分)

 

1.2.CDA 的读应用记录的处理

大体与CDA 一致(参看EMV交易中的SDA/DDA/CDA——DDA部分)

只有个别几个需要单独处理的tag值

8c——CDOL1

8d——CDOL2

 

1.3.CDA 校验流程

a.根据CDOL1来拼组Gen 1st数据,并且在Gen 1stAC 的第二字节(ins字节)需要|0x10,表示申请CDA)

note:如果存在随机数,一定要单独记录下来, 因为CDA解密后的校验需要用到

 

b.从Gen 1st中分离出tlvs,并单独提取9F4B

c.还原ISSUR公钥(参看EMV交易中的SDA/DDA/CDA——DDA部分

d.还原ICC公钥(参看EMV交易中的SDA/DDA/CDA——DDA部分

e.对9F4B数据进行ICC公钥解密

然后按照以下规则进行校验

1)先得到解密数据

2)对解密数据进行hash校验

重点是要用到 a步骤记录的随机数,否则校验会失败

3)对其中的 ICC Dynamic Data 做二次校验

其中数据是按照以下方式组织的

校验的流程如下:

其中需要特别注意,TLV数据均需要重新组织,否则在 Gen 1st返回数据里面

可能会包含 无用数据 0x00,这种情况下,直接套用 Gen 1st返回数据,会导致hash失败

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值