银联mPOS终端规范
名词解释
参考资料
<银联mPOS受理终端应用规范2.0(04)>
通讯协议(应用层)
- 通讯协议采用=蓝牙协议 + 系统调用;
协议交互

=============================================================================
1. 上位机的一条指令请求可能被分成多个帧进行传输;
2. mPOS的指令应答可能被分成多个帧进行传输;
3. 发送方发送一帧数据,要等待接收数据接收方的ACK,等待超时时间为3秒;如果未收到ACK,则要
进行重传(最大重传次数为3次);
4. 接收方收到一帧后,如果有后续帧,必须在9秒内收到下一帧,9秒内没收到则放弃此次接收.发送方
也是一样,三次发送重复发送帧没有收到ACK,则放弃此次发送.
5. 如果发送方收到的是接收方的NAK,则本次交互结束。
=============================================================================
1. 上位机和mPOS之间单次交互的应答超时时间约定为 10 秒;
2. 上位机和mPOS之间单次交互的帧最大限制为 1024+256 字节;
3. 上位机和mPOS之间单次交互的包的最大限制为3072字节;
4. 打印数据(0x08 0x01)指令包最大可以支持4096字节;
5. 一条指令的完整报文称之为一个“包”。在蓝牙传输时,为了能够支持更大的报文,引入了“帧”
的概念。 一个“包”可以拆分为N个“帧”进行传输;
6.
=============================================================================
协议指令集
- ( 0x01 0x01)获取设备版本
- ( 0x01 0x07)复位操作
- ( 0x01 0x08)读取当前时间
- ( 0x01 0x09)设置当前时间
- ( 0x01 0x0A)读取硬件参数
- ( 0x01 0x0C)固件/应用下载
- ( 0x02 0x02)更新工作密钥
- ( 0x02 0x04)验证 MAC
- ( 0x02 0x07)数据显示确认指令
- ( 0x03 0x04)开启读卡器
- ( 0x03 0x05)读取卡号
- ( 0x03 0x06)读取磁道数据
- ( 0x04 0x04)请求输密
- ( 0x05 0x01)更新公钥
- ( 0x05 0x02)更新 AID
- ( 0x05 0x03)执行 PBOC 标准流程
- ( 0x05 0x06)执行 PBOC 二次授权
- ( 0x05 0x07)读取电子现金脱机交易明细
- ( 0x05 0x08)删除电子现金脱机交易明细
- ( 0x05 0x09)读取脱机交易明细统计信息
- ( 0x05 0x10)流程结束
- ( 0x05 0x0A)获取授权随机数
- ( 0x05 0x0B) 授权脱机模式
- ( 0x05 0x0C) 更新非接业务参数
- ( 0x07 0x01)终端显示
- ( 0x08 0x01)打印数据
- ( 0x08 0x02)脱机交易打印
交易时令

相关函数
延伸阅读
- 分散算法说明
密钥分散算法简称Diversify,是指将一个双倍长的密钥MK,对分散数据进行处理,推导出一个双 倍长的密钥DK。
a) MK对分散因子X( 8字节)进行3DES运算得到DK的左半部分DKA;
b) 对分散因子X取反,得到~X;
c) MK对~X进行3DES运算得到DK的右半部分DKB;
d) DK=DKA+DKB