QPBOC扩展个人化及交易流程

1 Q扩展部分数据需写入3个DGI中,分别为:A001,8020,9020

1.1  A001扩展应用配置


DGI


长度


值(示例)


A001


7*N


15 01 00 00 FF 00 00

数据按7个字节为一个单元进行组织,每个单元对应一个扩展应用文件的配置信息,解析如下:

1字节扩展应用文件SFI;

1字节文件类型:01表示变长记录文件,

02表示循环记录文件;

1字节读权限:00表示采用Read CAPP Cache指令读

1字节写权限:00表示采用Update CAPP Cache指令更新

1字节单条记录最大长度:限制可以使用记录的最大长度

2字节文件大小配置:对于变长记录文件, 2字节表示预设的文件大小,00 00表示大小不限制;对于循环记录文件,为1字节记录条数和1字节记录大小。

可以根据应用需要使用的扩展应用文件的实际数量和实际SFI,对该DGI的数据域进行调整。每7个字节组成的单元的数量和顺序,决定了后续8020数据域内开通密钥的数量和顺序,必须一一对应。

1.2    8020扩展应用开通子密钥

DGI数据组成及顺序如下,密钥顺序按照A001中定义的文件SFI顺序进行匹配,对应设置为每个文件的开通密钥。


DGI


Len


Value


8020


10*N


0x13文件扩展应用开通保护密钥(16字节)

0x14文件扩展应用开通保护密钥(16字节)

……….

1.3    9020:扩展应用开通密钥校验值

DGI数据组成如下,其中校验值(KCV)由8020中的每条密钥对8字节00加密后取左3字节组成,校验值密钥顺序必须与8020中的密钥顺序一致。


DGI


Len


Value


9020


03*N


0x13文件复合应用开通保护密钥校验值(3字节)

0x14文件复合应用开通保护密钥校验值(3字节)

…….

2  Append Record增加行业应用记录

CPURESET()
00A4040008A000000333010101
80CA9F3605(ATC+9000)
ATC=COPY(ATC,7,4)
ATC=000000000000+ATC
CAPPK1= D5F1FE4A7F8C20FDEC49150BA2E00EDF//应用开通密钥
CAPPK2= D5F1FE4A7F8C20FDEC49150BA2E00EDF//记录修改密钥

//写入0X16变成文件记录  B0:10110 000
ECB_3DES_EN(CAPPK2,CAPPK1,KEY2)
HMD=04E200A81E+KEY2+057007+STRING(0,07) // TLV
3DES_MAC(ATC+HMD+8000000000,CAPPK1,MAC)
HMD+MAC

//写入0X1e循环文件记录
ECB_3DES_EN(CAPPK2,CAPPK1,KEY2)
HMD=04E200F01E+KEY2+057007+STRING(0,07)
3DES_MAC(ATC+HMD+8000000000,CAPPK1,MAC)
HMD+MAC

详见规范14 A.3新增记录( RECORD APPEND命令 )

3  (读取扩展应用数据)命令 DATACAPP READ

CPURESET()
00A4040008A000000333010101
80B400A8020570  //读取0X15变成文件,ID为0570的记录
00B201F400       //读取0X1E循环文件,第一条记录

4    分段扣费交易流程

4.1    DF60=01

2> 应用初始化(必备):
<commad 00A4040008A000000333010101 />
    <return6F608408A000000333010101A554500A50424F432044454249548701019F381B9F66049F02069F03069F1A0295055F2A029A039C019F3704DF60015F2D027A689F1101019F120A50424F43204445424954BF0C0E9F4D020B0ADF4D020C0ADF610102 />

2.1> READ CAPPDATA:
 √  卡片既支持分段扣费功能也支持脱机预授权功能

<commad 80B400b0020570 />  //读取16文件记录
    <return 05700700000000000000 />

<commad80A8000024832227000080000000000100000000000000015600000000000156141020011122334401/>
    <return …9000>

注:必须在GPO完成后,才可更新记录

2.3> UPDATECAPP DATA:   //更新16文件记录
<commad 84DE00b00e057007000000000000001F20E0B0 />
    <return 9000 />

4.2    DF60=01,RMAC方式读

</pre><pre code_snippet_id="491671" snippet_file_name="blog_20141021_2_5217923" name="code" class="cpp">2.1> READ CAPPDATA:
 √  卡片既支持分段扣费功能也支持脱机预授权功能

<commad 80B400b00A05701234567812345678 />
    <return 057007000000000000001C895F11(4字节的RMAC) />

<commad80A8000024832227000080000000000100000000000000015600000000000156141020011122334401/>
    <return …9000 />

2.3> UPDATECAPP DATA:
<commad 84DE00b00e0570070000000000000017B8E975 />
    <return 57C6C544(4字节的RMAC) />

4.3    流程图

5    脱机预授权交易

表示选择或执行脱机预授权交易:DF60的值02

表示选择或执行脱机预授权完成交易: DF60的值03

流程图参看规范13. 脱机预授权交易流程

文/闫鑫原创转载请注明出处http://blog.csdn.net/yxstars/article/details/40350311

时间: 2024-10-06 11:15:04

QPBOC扩展个人化及交易流程的相关文章

金融系列14《QPBOC交易流程》

中国银行金融IC卡qPBOC交易时间(不含终端处理时间)要求:IC卡私钥长度1024位,交易时间 <= 500ms, 1152 <=600 ATR=3B8D800100814D220886601222275000014A CARD=6231200100000000217F Send:00A404000E325041592E5359532E4444463031 --->:6F30840E325041592E5359532E4444463031A51EBF0C1B61194F08A00000

POS终端交易流程

POS终端的操作流程,应符合以下基本要求: a)  提示交易功能选择:  功能键和数字键同时可用. b)  对于需验证操作员或管理员密码的交易,提示输入并进行验证. c)  按照交易要求,提示刷卡或手输卡号: 如不刷卡,可按指定功能键,进入手工输入卡号提示. d)  按照交易要求,选择提示输入有关数据: 包括:交易金额.预授权金额.退货金额.原授权码.原POS流水号.原检索参考号等. e)  按照交易要求,提示持卡人输入密码: 如直接按确认键,则视为无密码. f)  提示处理中 显示处理和通讯状

区块链数字货币虚拟币交易平台_法币交易流程机制

随着区块链技术应用的持续火热,国内各大互联网公司相继涉足区块链应用开发领域.区块链的火爆,也使人们加深了对数字货币的认识,本篇主要介绍常见的虚拟币交易平台中的法币交易流程.1.用户充币操作注册登录平台,进入充币操作界面,填写区块链交易ID并选择钱包,提交充币请求,系统请求区块链验证该笔交易.充币成功的话,系统会自动为充币用户加币:充币不成功则提示用户该笔交易无效.2.用户提币操作用户填写提币数量并选择到账的钱包地址,提交到后台,等待管理员审核,若无异常情况,管理员通过提币申请,为用户实现提币操作

6.3 Fabric交易流程

区块链最主要的特性之一是去中心化,没有了中心机构的集中处理,为了达成数据的一致性,就需要网络中全民参与管理,并以某种方法达成共识,所以区块链的交易流程也就是共识的过程.       在Fabric中,本由一个节点处理的过程,在逻辑上被分解为不同的角色,每个角色承担不同的功能:节点(Peer)分解为背书节点(Endorser peer)和提交节点(Committer peer),为了达到处理的顺序性,提炼出排序(Orderer)角色.       Fabric是应用于联盟链的场景,在处理每一笔交易

区块链支付系统开发的交易流程

区块链支付系统作为区块链又一新领域的应用,解决了传统支付行业的不稳定性以及费用高的问题.目前支付系统能够应用的领域比较广泛,比如现有的金融行业,外贸以及电商游戏行业,都需要支付系统来解决资金流的问题,因此支付系统也就成为了很多行业必不可少的系统.区块链支付系统开发咨询13823115027Q:2731762679但目前传统的第三方第四方支付涉及到了很多问题,国家对这方面监管的相对比较严格,市面上的一些支付系统大多存在不稳定以及收费很高的问题,这些问题相对来说也是阻碍了相关行业的发展.也就在这样的

Hyperledger交易流程

Hyperledger Fabric Network中的角色 在Hyperledger中,由三种类型的角色: Client:应用客户端,用于将终端用户的交易请求发送到区块链网络: Peers:负责维护区块链账本,分为endoring peers和committing peers,其中,endorser为交易做背书(验证交易并对交易签名),committer接收打包好的区块,然后写入区块链中.Peers节点是一个逻辑的概念,endorser和committer可以同时部署在一台物理机上. Orde

架构即未来_现代企业可扩展的Web架构流程和组织(原书第2版)pdf

下载地址:网盘下载 任何一个持续成长的公司最终都需要解决系统.组织和流程的扩展性问题.本书汇聚了作者从eBay.VISA.Salesforce.com到Apple超过30年的丰富经验, 全面阐释了经过验证的信息技术扩展方法,对所需要掌握的产品和服务的平滑扩展做了详尽的论述,并在第1版的基础上更新了扩展的策略.技术和案例. 针对技术和非技术的决策者,马丁?阿伯特和迈克尔?费舍尔详尽地介绍了影响扩展性的各个方面,包括架构.过程.组织和技术.通过阅读本书,你可以学习到以最大化敏捷性和扩展性来优化组织机

PBOC2.0协议中电子存折/电子钱包中圈存交易流程

通过圈存交易,持卡人可将其在银行相应账户上的资金划入电子存折或电子钱包中.这种交易必须在金融终端上联机进行并要求提交个人识别码(PIN)(无论电子存折还是电子钱包应用). 交易流程图如下: 1.1 发出初始化圈存交易 终端发出初始化圈存(INITIALIZE FOR LOAD)命令启动圈存交易. 初始化圈存(INITIALIZE FOR LOAD)命令报文如表1所示: 命令报文中的数据域为: 1.2 处理初始化圈存(INITIALIZE FOR LOAD)命令 收到初始化圈存(INITIALIZ

项目流程管理&amp;&amp;架构总结

1 项目背景 所在业务在早期没有营销费用,买家购买商品的折扣优惠是由卖家提供的,所有订单的最终价格是由卖家和业务方确定的,整个购买流程很简单. 现在此业务收受到公司重视,业务团队能申请到营销费用,业务团队能主动补贴折扣优惠.一件东西进行促销时,用户购买此物品后,由业务方出钱补贴折扣的费用,而卖家不需要考虑优惠折扣.实现这种营销需求需要和第三方的团队合作,例如商家营销团队.账务团队. 2 项目管理 团队协作 项目开始的时候,我方向这2个团体介绍业务背景,提产品需求,开头很顺利:业务边界范围的界定.