《通信接口协议》由会员分享,可在线阅读,更多相关《通信接口协议(24页珍藏版)》请在金锄头文库上搜索。
1、通信接口协议2011年6月修订控制页修订号修订日期修订内容简述修订人版本号目录 24 / 241.概述51.1 编写目的51.2 缩略语51.3 参考资料51.4 共享平台机具接口定义51.5通信密钥62 协议包格式72.1 协议分层说明72.2 包格式72.3 校验字MAC码计算方法83.接口报文格式93.1 业务应用类93.1.1消费流水上传93.1.2身份识别流水上传103.1.3黑名单下发113.1.4身份识别白名单下发123.1.5客户代码下发133.2 设备管理类133.2.1 通信参数下发133.2.2 应用密钥下发143.2.3时间同步下发153.2.4心跳信号上传163.2.
2、5 开机密钥下发163.3 门禁业务控制类183.3.1下发节假日时段和星期节假日信息183.3.2下发门设置信息(策略)193.3.3 启动/停止实时上传203.3.4 远程强制控制门的开关213.3.5 门禁锁状态查询223.3.6 开门密码设置223.3.7 多卡开门设置233.3.8 协迫开门密码设置243.4 考勤业务控制类243.4.1下发设设备工作模式243.5 脱机消费业务控制类263.5.1下发补贴名单263.5.2下发充值/存款名单273.5.3下发消费类别参数283.5.4下发消费策略283.5.5 限制策略下发303.6水控业务控制类323.6.1 水控消费模式下发32
3、4.M1卡空间规划33校验位Luhn算法345.对于CPU卡消费应用空间增加充值流水号记录文件35附表1.协议业务类型代码表361. 概述1.1 编写目的本协议主要是用来规范 共享平台与机具和或前置机之间数据通信的通信机制和通信数据格式,以便共享平台统一高效地接入各类业务和型号的机具。1.2 缩略语缩略语英文全称中文含义EMAPe-surfing tong machine Application Protocol 共享平台机具应用协议AIDApplication Identifier应用标识RFIDRadio Frequency Identification射频识别(U)SIM(Univers
4、al)Subscriber Identity Module用户标识模块TACTransaction Authenticate Code交易认证码PSAMPurchase Security Authenticate Model消费安全认证模块SOAPSimple Object Access Protocol简单对象访问协议1.3 参考资料中国电信翼支付产品(基础版)业务规范(试行)中国电信翼支付业务账户管理办法(试行)中国电信融合支付平台技术规范(试行)中国电信融合支付平台技术规范省平台功能分册中国电信融合支付平台技术规范社区平台( 系统)1.4 共享平台机具接口定义 共享平台的接口如图1-1所
5、示。 共享平台通过该接口(B1)与前端用户侧的机具、前置机、 应用系统进行交互,实现共享平台对机具设备管理、控制以及业务数据采集的功能。图1-1 共享平台通信前置系统与机具的接口示意图EMAP协议是采用TCP/IP和UDP通信方式,基于TCP通信采用短连接的方式, 共享平台作为IP服务端监听各厂家前置机,采用统一端口号接收消费流水数据和身份识别类流水数据,该端口号默认值为10001,可根据实际情况进行更改,地址更改后需要即时通知到各机具。各厂家前置机作为IP服务端监听 共享平台信息,采用独立的端口号接收 共享平台发布的信息,该监听端口号默认值为10001,在设备开能前可根据实际情况进行更改。为
6、保证平台对所有机具的在线监管,当机具没有进行数据通信的时间间隔超过某阀值(该时间间隔阀值默认为60秒,参数可通过协议进行调整)时,机具必须发送心跳信号,服务端收到该心跳信号后,回信应答。当发送方发送协议数据等待应答响应的时间超过某阀值(该时间阀值默认为6秒,参数可通过协议进行调整)时,发送方需要重发该协议包,当重发次数超过某阀值(该重发次数阀值默认为3次,参数可通过协议进行调整)时,则协议通信的发起方需要保存未成功传输的数据内容及状态,并每间隔一定时间(该重发次数阀值默认为600秒,参数可通过协议进行调整)重新发送数据。1.5 通信密钥通信密钥由长度16字节的字符组成,各机具出厂时密钥统一设置
7、为 “0000000000000000”(16个字符“0”),共享平台在设备开通时通过应用协议下发新的通信密钥给各机具,机具按照平台分配的通信密钥进行安全通信。2 协议包格式2.1 协议分层说明根据TCP/IP的分层模型,EMAP协议属于应用层的协议,基于TCP/UDP的传送方式,机具设备开通时,通过配置确定通信方式。如用以太网举例,数据在进入协议栈时的分别会加上各层的首部信息,最后作为一帧数据发送出去,如图2-1:图2-1 数据流协议包结构2.2 包格式EMAP协议的数据分为三部分,分别为EMAP首部和EMAP属性和EMAP校验。图2-2 共享平台EMAP包格式示意图LEN=业务代码+EMA
8、P属性EMAP首部(固定大小6字节),用于描述这个包的宏观信息,包括后续数据长度(4字节长度)和业务类型代码(2字节长度)。 EMAP属性 (Attribute):属性是一个包的业务数据部分,紧随着包头之后。EMAP校验:通过MAC算法计算出的校验字(4个字节),紧随着包属性之后。2.3 校验字MAC码计算方法参加 MAC 计算的数据为包内校验字前面的所有数据。 MAC 计算流程: 1. 取 系统分配给各厂家接入前置机的MAC密钥(16个字节) 2. 根据MAC密钥对计算数据进行 3DES CBC MAC 计算,随机因子 8字节全0 3. 取计算结果的前 4 字节为MAC。 具体计算步骤如下:
9、 第一步:将一个 8 个字节长的初始值(Initial Vector)设定为16进制的0x 00 00 00 00 00 00 00 00。 第二步:将所有的输入数据按指定顺序连接成一个数据块。 第三步:将连接成的数据块分割为 8 字节长的数据块组,标识为 D1,D2,D3,D4等等。分割到最后,余下的字节组成一个长度小于等于8字节的最后一块数据块。第四步:如果最后一个数据块长度为8字节,则在此数据块后附加一个8字节长的数据块,附加的数据块为:16进制的0x 80 00 00 00 00 00 00 00。如果最后一个数据块长度小于8字节,则该数据块的最后填补一个值为16进制0x80的字节。如
10、果填补之后的数据块长度等于8字节,则跳至第五步。如果填补之后的数据块长度仍小于8字节,则在数据块后填补16进制0x00的字节至数据块长度为8字节。 第五步:MAC的产生是通过上述方法产生的数据块组,由MAC密钥进行加密运算,MAC的算法如图2-3描述。 第六步:最终值的左4字节为MAC。图2-3 共享平台MAC算法示意图3.接口报文格式3.1 业务应用类3.1.1消费流水上传l 发送报文序号数据内容说明1后续数据长度4 字节,HEX,高位在前2业务类型代码2 字节,固定值:0xf0013客户代码4字节,BCD,高位在前4终端机编号4 字节,HEX,高位在前5卡片顺序号4 字节,BCD,高位在前
11、6电子钱包交易序号2 字节,HEX,高位在前7终端交易序号4 字节,HEX,高位在前8交易前卡片金额4 字节,HEX,低位在前9交易金额4字节,HEX,低位在前10交易日期7字节,BCD,YYYYMMDDHHMISS11应用类型标识1 字节,固定值:0x0812交易类型1字节,固定值:0x01表示金额消费清单,0x02计次消费, 0x03最低消费扣款,0x04 水控消费清单, 0x87表示补贴清单,0x88表示充值清单,0x89充多扣款,0x90 OTA。13PSAM 终端编号6 字节,HEX,高位在前14卡种标识 2字节,HEX,高位在前0x0001表示M1卡,0x0002表示CPU卡15地
12、区代码2字节,HEX,高位在前16TAC值 4字节,HEX,高位在前17交易结果标志1 字节,HEX,0x01 表示灰记录,0x02 表示异常记录,0x99 表示正常记录18校验字4字节,HEX ,MAC注1、 终端交易序号:当上传补贴和充值清单时,终端交易序号回填下发时的流水号;当上传消费清单时终端交易序号为机具终端交易序号2、 卡片顺序号:是指用户卡在系统内的唯一编号,该编号对每张用户卡的每个应用是唯一的(同一用户换卡后,会生成一新的顺序号并通过发卡程序写到新的用户卡上),系统通过该编码实现系统内业务数据逻辑关联处理。l 接收报文序号数据内容说明1后续数据长度4字节,HEX,高位在前2业务
13、类型代码2字节,固定值:0xf0013客户代码4 字节,BCD,高位在前4终端机编号4 字节,HEX,高位在前5终端交易序号4字节,HEX,高位在前6结果标志2 字节,HEX,高位在前 0x0000成功 0x0001重复数据 0x0002TAC错误 0x0003终端机不存在 0x0004后台故障(请重传) 0x0005其他错误7异常原因变长,ASCII 码,其中结果标志为0x0000 不填8校验字4 字节,HEX,MAC3.1.2身份识别流水上传l 发送报文序号数据内容说明1后续数据长度4字节,HEX,高位在前 0x000000222业务类型代码2字节,固定值:0xf0023客户4 字节,BC
14、D,高位在前4终端机编号4 字节,HEX,高位在前5终端交易序号4字节,HEX,高位在前6卡片顺序号4 字节,BCD,高位在前7卡片物理序列号4字节,HEX,高位在前8交易日期7 字节,BCD,YYYYMMDDHHMISS9交易结果标志1字节,HEX,0x01 非法卡刷卡记录,0x02协迫开门,0x03 表示正常卡但是刷卡没在开门时间,0x99 表示正常卡刷卡记录10校验字4 字节,HEX,MACl 接收报文序号数据内容说明1后续数据长度4字节,HEX,高位在前2业务类型代码2字节,固定值:0xf0023客户代码4 字节,BCD,高位在前4终端机编号4 字节,HEX,高位在前5终端交易序号4字节,HEX,高位在前