1 / 25
文档名称:

通讯协议设计.docx

格式:docx   大小:161KB   页数:25页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

通讯协议设计.docx

上传人:baba 2022/5/11 文件大小:161 KB

下载得到文件列表

通讯协议设计.docx

相关文档

文档介绍

文档介绍:1 / 25
通信接口协议
2011年6月
修订限制页
修订号
修订日期
修订内容简述
修订人
版本号
过某阀值(该重发次数阀值默认为3次,参数可通过协议进行调整)时,则协议通信的发起方须要保存未胜利传输的数据内容及状态,并每间隔肯定时间(该重发次数阀值默认为600秒,参数可通过协议进行调整)重新发送数据。
通信密钥
通信密钥由长度16字节的字符组成,各机具出厂时密钥统一设置为 “0000000000000000”(16个字符“0”),共享平台在设备开通时通过应用协议下发新的通信密钥给各机具,机具依据平台安排的通信密钥进行平安通信。
8 / 25
2 协议包格式
协议分层说明
依据TCP/IP的分层模型,EMAP协议属于应用层的协议,基于TCP/UDP的传送方式,机具设备开通时,通过配置确定通信方式。
如用以太网举例,数据在进入协议栈时的分别会加上各层的首部信息,最终作为一帧数据发送出去,如图2-1:
图2-1 数据流协议包结构
包格式
EMAP协议的数据分为三部分,分别为EMAP首部和EMAP属性和EMAP校验。
图2-2 共享平台EMAP包格式示意图
LEN=业务代码+EMAP属性
EMAP首部(固定大小6字节),用于描述这个包的宏观信息,包括后续数据长度(4字节长度)和业务类型代码(2字节长度)。
EMAP属性 (Attribute):属性是一个包的业务数据部分,紧随着包头之后。
EMAP校验:通过MAC算法计算出的校验字(4个字节),紧随着包属性之后。
9 / 25
校验字MAC码计算方法
参与 MAC 计算的数据为包内校验字前面的全部数据。
MAC 计算流程:
1. 取 系统安排给各厂家接入前置机的MAC密钥(16个字节)
2. 依据MAC密钥对计算数据进行 3DES CBC MAC 计算,随机因子 8字节全0
3. 取计算结果的前 4 字节为MAC。
详细计算步骤如下:
第一步:将一个 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’的字节。假如填补之后的数据块长度等于8字节,则跳至第五步。假如填补之后的数据块长度仍小于8字节,则在数据块后填补16进制’0x00’的字节至数据块长度为8字节。
第五步:MAC的产生是通过上述方法产生的数据块组,由MAC密钥进行加密运算,MAC的算法如图2-3描述。
第六步:最终值的左4字节为MAC。
10 / 25
图2-3 共享平台MAC算法示意图

业务应用类

发送报文
序号
数据内容
说明
1
后续数据长度
4 字节,HEX,高位在前
2
业务类型代码
2 字节,固定值:0xf001
3
客户代码
4字节,BCD,高位在前
4
终端机编号
4 字节,HEX,高位在前
5
卡片依次号
4 字节,BCD,高位在前
6
电子钱包交易序号
2 字节,HEX,高位在前
7
终端交易序号
4 字节,HEX,高位在前
8
交易前卡片金额
4 字节,HEX,低位在前
9
交易金额
4字节,HEX,低位在前
10
交易日期
7字节,BCD,YYYYMMDDHHMISS
11
应用类型标识
1 字节,固定值:0x08
12
交易类型
1字节,固定值:0x01表示金额消费清单,0x02计次消费, 0x03最低消费扣款,0x04 水控消费清单, 0x87表示补贴清单,0x88表示充值清单,0x89充多扣款,0x90 OTA。
13
PSAM 终端编号
6 字节,HEX,高位在前
14
卡种标识
2字节,HEX,高位在前
0x0001表示M1卡,0x0002表示CPU卡
11 / 25
15
地区代码
2字节,HEX,高