CPU卡发卡总结(三)——充值和消费
充值
脱机充值
1、 选择要充值的应用目录。
2、 验证口令密钥。
3、 取得充值密钥(这里使用加密机提供的分散指令,用ATS作为分散因子对00B0密钥进行分散得到充值密钥)。
4、 圈存交易初始化。
5、 生成过程密钥。
6、 用过程密钥计算MAC1与初始化交易返回的MAC1进行比对,若一致,则继续执行。
7、 用过程密钥计算MAC2。
8、 使用圈存指令将MAC2发送给CPU卡,完成充值交易。
联机充值
1、2、3、4步同脱机充值。
将圈存交易初始化返回的数据发送给后台,后台算出过程密钥,并得到MAC1。由后台对MAC1作比较,如果一致,则后台再算出MAC2,返回给前台,前台使用圈存指令将MAC2发送给CPU卡,完成充值交易。
消费
1、 选择要消费的应用目录。
2、 取得消费密钥(这里使用加密机提供的分散指令,用城市代码和ATS作为分散因子对00B1密钥进行分散得到消费密钥)。
3、 消费交易初始化
4、 生成过程密钥
5、 用过程密钥计算MAC1
6、 用消费指令将MAC1发送给CPU卡进行消费交易
7、 得到TAC和MAC2,验证…