读取PBOC电子现金指令流

该指令流仅适用于T=0协议卡片.

 

终端对IC卡的响应:

60 须要额外的工作等待时间,说明IC卡端数据还未处理好.

61 发送GET RESPONSE命令取应答数据

6C 加上取字节数,命令重发

 

按照其类型,文件可能通过文件名称和SFI进行查询.

卡中的不论什么ADF(应用定义文件)或DDF(文件夹定义文件)可通过其DF(专用文件)名查询,ADF的DF名相应其AID,每一个DF名在给定的卡中是唯一的.

SFI(短文件标识符)用于选择AEF(应用基本文件).对给定应用中的不论什么AEF,能够通过SFI(5位代码,取值范围1~30)查询.

 

S1: 读取ATR

<=3B 6D 00 00 80 65 08 49 04 86 53 00 00 00 00 00 00

ATR数据解析


字符



说明


TS


3B


正向约定,首先发送的是字符的最低有效位


T0


6D


TB1和TC1存在,D表示历史字节的存在个数


TB1


00


不使用VPP


TC1


00


指明所需额外保护的时间量


历史字节


80 65 08 49 04 86 53 00 00 00 00 00 00

S2:选择支付系统”1PAY.SYS.DDF01”,读取FCI(文件控制信息)

=>00 A4 04 00 0E

<=A4(INS)

=>31 50 41 59 2E 53 59 53 2E 44 44 46 30 31         //”1PAY.SYS.DDF01”

<=61 28

=>00 C0 00 00 28

<=C0

<=6F 26           // FCI模板

  84 0E 31 50 41 59 2E 53 59 53 2E 44 44 46 3031                // DF名

  A5 14           //FCI专用数据

88 01 01 5F 2D 02 7A 68 9F11 01 01 BF 0C 05 9F 4D 02 0B 0A            //目标基本文件的SFI

<=90 00

命令解析


命令


00 A4 04 00 Lc


SELECT, 04表示通过文件名称选择,Lc命令数据域中存在的字节数


00 C0 00 00 Le


GET RESPONSE, Le表示响应的期望数据的最大长度

数据解析

SELECTDDF的响应报文(FCI)


标志



数据


6F


FCI模板


84


DF名


A5


FCI专用数据


88目标基本文件的SFI

S3: 依据卡片返回的FCI控制信息88,读取01文件的第一条记录,查找AID

=>00 B2 01 0C 00             //  Care: high_5bits_SFI + low_3bits_0x04 = 0x01<< 3 + 0x01= 0x0c

<=6C 27

=>00 B2 01 0C 27

<=B2

<=70 25                    // 结构数据对象标识

61 23            // 应用模板

4F 08 A0 00 00 03 33 01 0101            //ADF名称(AID)

50 0A 50 42 4F 43 20 44 4542 49 54            // 应用标签

9F 12 0A 50 42 4F 43 20 4445 42 49 54     // 应用优先名称

<=90 00

命令解析


命令


00 B2 01 0C 00


READ RECORD,用于读取记录文件的内容

数据解析

ADF文件夹入口地址格式


标志


长度



70


var.


结构对象数据标示


61


Var.


应用模板


4F


5-16


ADF名称(AID)


50


1-16


应用标签


9F12


1-16


应用优先名称

S4: 通过AID选择应用

=>00 A4 04 00 08

<=A4

=>A0 00 00 03 33 01 01 01

<=61 47

=>00 C0 00 00 47

<=C0

<=6F 45

84 08 A0 00 00 03 33 01 0101            // ADF名称(AID)

A5 39

50 0A 50 42 4F 43 20 44 4542 49 54            // 应用标签

87 01 01

9F 38 09 9F 7A 01 9F 02 065F 2A 02

5F 2D 02 7A 68

9F 11 01 01

9F 12 0A 50 42 4F 43 20 4445 42 49 54     // 应用优先名称

BF 0C 05 9F 4D 02 0B 0A

<=90 00

S5: 读取电子现金剩余金额

=>80 CA 9F 79 00

<=6C 09

=>80 CA 9F 79 09

<=CA

<=9F 79 06 00 00 00 00 00 00

<=90 00

命令解析


命令


说明


80 CA 9F 79 00


GET DATA,9F 79读取电子现金剩余金额

数据解析

9F 79 06 00 00 00 00 00 00,返回6字节的剩余金额数据,採用BCD编码,最后一个字节表示小数点后两位.

时间: 2024-10-08 00:32:44

读取PBOC电子现金指令流的相关文章

电子钱包和电子现金的区别

对于普通的用户来说,电子钱包和电子现金(下面分别简称EP和EC)是几乎没有区别的, 为什么这么说呢. 因为EP和EC都是为了做小额支付而生的. 我们拿着一张IC卡去超市的POS机上消费,或是坐公交消费,只需轻轻一刷,你不必关心这张卡是基于EP的应用还是基于EC的应用.(因此只要求我们对电子现金略做了解即可) 但是, 如果你是金融电子这个行业里的人,尤其是对于开发人员, 不知道EP和EC的区别真的要补习一下功课了. EP:electronic Purse,电子钱包 EC:electronic Ca

电子现金与电子钱包的区别

1.对普通用户而言,电子钱包和电子现金几乎没有区别,EP和EC都是为了小额支付而生的,就我们拿着一张IC卡去超市的POS机上消费,或者做公交,只需要轻轻一刷就可以了,用户不必关心也不想关心卡里面是基于EP的应用还是EC的应用. 2.站在智能卡行业的开发者角度来说,区别如下: 首先,我们从应用的角度来看两者的区别: EP本身是独立于借贷记的一种应用,无论是应用层的通信协议,还是相关的交易流程,与借贷记应用都有很大的差别. 它的出现是为了满足小额支付的需要,可以说是PBOC专门为小额支付的推广制定的

金融系列12《双币电子现金方案》

在PBOC 2.0规范中,电子现金只能设置一个币种,并对应着一整套的交易参数和风险管理参数.双币种电子现金是根据现有的电子现金交易流程和安全机制,在卡片中增 加第二币种及相关参数.交易时根据终端的交易货币代码,选择对应的一整套数据进行操作.因此,对于终端来说,交易流程上无特殊处理要求. 受清算通道和监管政策的影响,目前只允许境外机构发行双币种电子现金卡,且要求第一币种为当地币种,第二币种为人民币.考虑到现有的双币电子现金方案和终 端加载汇率方案已经可以满足境内外电子现金产品跨境支付的所有需求,发

EMVTag系列11——电子现金发卡行授权码

按照银联个人化模板的建议,如卡片支持非接触快速支付应用(qPBOC),则推荐将电子现金授权码(9F74)作为qPBOC 应用AFL列表中的最后一条记录,且最后一条记录仅包含该数据元. 原因是:在某些情况下,卡片在送出所有记录后,终端仍有可能由于未完整接收最后一条记录而使脱机数据认证失败.将一条短记录作为AFL列表的最后一条记录,可降低终端在读取最后一条记录时因数据过长而未完整读取的概率. ? 9F74    电子现金发卡行授权码 L: 6 卡片上用于标识批准电子现金交易的代码. 电子现金发卡行授

比特币:一种点对点的电子现金系统

摘要: 本文提出了一种完全通过点对点技术实现的电子现金系统,它使得在线支付能够直接由一方发起并支付给另外一方,中间不需要通过任何的金融机构.虽然数字签名部分解决了这个问题,但是如果仍然需要第三方的支持才能防止双重支付的话,那么这种系统也就失去了存在的价值.我们在此提出一种解决方案,使现金系统在点对点的环境下运行,并防止双重支付问题.该网络通过随机散列对全部交易加上时间戳,将它们合并入一个不断延伸的基于随机散列的工作量证明的链条作为交易记录,除非重新完成全部的工作量证明,形成的交易记录将不可更改.

基于PBOC电子钱包的圈存过程详解

基于pboc的电子钱包的圈存过程,供智能卡行业的开发人员参考 一. 圈存 首先终端和卡片有一个共同的密钥叫做圈存密钥:LoadKey   (Load即圈存的意思,unLoad,是圈提的意思) 假设LoadKey = 11223344556677888877665544332211 (密钥一般都是16字节的,圈存即往IC卡里存钱的意思) 在满足安全条件的情况下: 第一步:终端向卡片发送圈存初始化命令: Apdu:  80        50   00  01   0B         01   

基于PBOC电子钱包的消费过程详解

智能卡金融行业应用电子钱包的消费交易流程,开发人员可参考 首先终端和卡片有一个共同的密钥叫做消费密钥:PurchKey (针对每种特定的交易,比如,圈存,消费,都有特定的密钥与之对应) 假设PurchKey = 11223344556677888877665544332211   (应用密钥一般都是16字节,写在ADF下的Key文件中) 在满足安全条件的情况下: 第一步:终端向卡片发送消费初始化命令: Apdu:     80    50    01    02   0B         01 

PBOC

http://blog.sina.com.cn/s/blog_64cc82620100rcgu.html 最近在做一个基于PBOC电子现金卡的终端应用, 项目还没有完成, 但电子现金部分的处理模块已完成,剩下的基本是UI和调试的事情了. 想把对PBOC电子现金理解整理成一篇文章. 电子现金的概念是在PBOC规范的第十三部分<<基于借记/贷记应用的小额支付规范 >>里提出的. 可以这样理解,电子现金是PBOC里的一个应用,它基于借贷记. 这个应用被提出的目的就是实现我们经常听说的一个

解惑:NFC手机如何轻松读取银行卡信息?

自支付宝钱包8.0推出了NFC新功能,只要将支持NFC功能的手机靠近公交卡.银行卡等带有芯片的IC卡上,可迅速读取卡内余额.卡的信息,还可以给卡进行充值,非常贴心实用. 但是很多网友表示担忧,要是别人用手机紧贴着我的银行卡,那么信息不就轻易泄露了,这样会威胁我的资金安全吗?并有不少伪专家宣称,NFC手机有可能成为黑客的"提款机",可以实现转账操作,风险很大,网友表示很担心.真实情况是什么样的呢?让我从专业的角度,给大家道出内幕. NFC(近场通信,NearFieldCommunicat