今天对建行的ISO8583进行学习,这个银联的接口规范学习认知
中国建设银行间连POS终端规范
1.1 银行卡 bank card
商业银行等金融机构及邮政储汇机构向社会发行的,具有消费信用、转账结算、存取现金等全部或部分功能的信用支付工具。
1.2 磁条卡 magnetic stripe card
物理特性符合GB/T 14916标准,磁条记录符合GB/T 15120 、GB/T 15694-1、ISO 7812-2、GB/T17552标准的银行卡片。
1.3 销售点终端 point of sale;POS
能够接受磁条卡信息,具有通讯功能,并接受柜员的指令而完成金融交易信息和有关信息交换的设备。
1.4 POS中心 POS center
接受、处理或转发POS的交易请求信息,并向POS回送交易结果信息的机构。
1.5 特约商户 merchant
与收单行签有商户协议,受理银行卡的零售商、个人、公司或其他组织。
1.6 持卡人 card holder
卡的合法持有人,即与卡对应的银行账户相联系的客户。
1.7 发卡行 issuer
发行银行卡,维护与卡关联的账户,并与持卡人在这两方面具有协议关系的机构。
1.8 收单行 acquirer
与商户签有协议或为持卡人提供服务,直接或间接凭交易单据(包括电子单据或纸单据)参加交换的清算会员单位。
1.9 参考号 reference number
POS中心为交易分配的流水号,在响应报文中下传给POS终端作为对账参考号,并用于事后查证。
1.10 交易批次号 batch number
POS从签到起至结算、签退为止的交易为一批次,交易批次号标识一批交易。
POS中心为每个POS的每个批次分配一个批次号,在签到响应报文中下传给POS终端,POS终端对账平或批上送结束后POS中心和POS终端的批次号各自加1。
1.11 主账号 primary account number
标识发卡机构和持卡人信息的数字代码。它由发卡机构标识代码、个人账户标识和校验位组成,是银行卡金融交易的主要账号,在银行卡金融交易中等同于卡号。
1.12 交易处理码 processing code
标识交易类型的代码。
1.13 POS流水号 trace number
POS为每一笔交易产生的顺序编号。POS每上送一次交易此号码增加1。 POS流水号为6位数字,值从1至999999循环使用。
在自动冲正时,POS中心依据POS流水号作为确定被冲正交易的要素之一。
POS流水号也作为交易凭证号,在进行撤销等交易时,输入原交易凭证号作为确定原交易的要素之一,并且必须上送原交易的凭证号。
1.14 服务点输入方式码 point of service entry mode
POS输入有刷卡或手工方式,按业务要求输入有关数据。
1.15 授权码 authorization number
授权标识应答码,简称“授权码”。是发卡行返回或CUPS代授权时返回的授权序号。
1.16 响应码 response number
也称为应答码,是接收方接收到请求或通知后,返回给发送方表示处理结果的代码。
1.17 个人标识码 personal identification number; PIN
即个人密码,是在联机交易中识别持卡人身份合法性的数据信息,在计算机和网络系统中任何环节都不允许PIN以明文的方式出现。
在上送报文格式中,如果22域指明有PIN输入,则52域必须出现。客户的个人标识码(PIN)必须加密后存放在52 域中。
1.18 报文鉴别码 messang authentication code;MAC
MAC是用来完成消息来源正确性鉴别,防止数据被篡改或非法用户窃入的数据。
1.19 安全控制信息 security control related information
与安全相关的控制信息,用于标识密文的类型。
1.20 密钥加密密钥 key encryption key; KEK
POS终端工作时对工作密钥进行加密的密钥,由银行人员设置并直接保存在系统硬件中,只能使用,不能读取,该密钥必须与加密算法放在同一加密芯片里。
1.21 工作密钥 working key;WK
也称为数据密钥,通常指PIN加密密钥和MAC计算的密钥。工作密钥必须经常更新。在联机更新的报文中对工作密钥必须用密钥加密密钥(KEK)加密,形成密文后进行传输。
1.22 EMV Europay MasterCard VISA
EMV是EUROPAY、MASTERCARD、VISA三个国际信用卡公司的首字母缩略词,这三个公司联合制定的IC卡借记/贷记应用标准,简称为EMV标准。
1.23 集成电路卡 integrated circuit card
内部封装一个或多个集成电路用于执行处理和存储功能的卡片。
1.24 支付系统环境 payment system environment;PSE
当符合本标准的支付系统应用被选择,或者用于支付系统应用目的的目录定义文件(DDF)被选择后,IC卡中所确立的逻辑条件。
1.25 应用标识 application identifier;AID
由注册的应用提供商标识(RID)以及专用应用标识符扩展(PIX)组成。
1.26 应用标签 application label
根据ISO/IEC 7816-5标准中与应用标识(AID)相关联的名称,用于应用选择。应用标签在应用数据文件(ADF)的文件控制信息(FCI)中可选(推荐要求),在ADF目录入口中必须存在。
1.27 应用首选名称 application preferred name
与应用标识(AID)相关联的应用名称。如果应用首选名称存在且终端支持发卡行代码表索引指示的语言,则应用选择过程中显示给持卡人的应用名称应采用应用首选名称,而不是应用标签。
1.28 应用选择指示符 application selection indicator;ASI
指示应用选择时终端上的应用标识(AID)与卡片中的应用标识(AID)是完全匹配(长度和内容都必须一样)还是部分匹配(卡片AID的前面部分与终端AID相同,长度可以更长)。终端支持的应用列表中的每个应用标识(AID)仅有一个应用选择指示符。
1.29 脚本 script
发卡行向终端发送的命令或命令序列,目的是向IC卡连续输入命令。
1.30 应用认证密文 application authentication cryptogram;AAC
在EMV应用交易流程中,由IC卡生成的表示拒绝交易的应用密文。
1.31 授权响应密文 authorization response cryptogram;ARPC
由发卡行生成并在联机授权报文中返回给终端的应用密文,用于IC卡验证联机授权响应是否来自真正的发卡行。
1.32 授权请求密文 authorization request cryptogram;ARQC
IC卡为联机处理交易生成的应用密文,发卡行在联机卡片认证过程中通过验证ARQC来认证当前交易中卡片的有效性。
1.33 数据对象列表 data object list;DOL
在EMV应用交易流程中,终端能够根据卡片的要求建立可变的数据元列表,并通过相关命令发送给卡片。在EMV交易流程使用的DOL包括:通过取处理选项(GET PROCESS OPTIONS)命令使用的PDOL;通过生成应用密文(GENERATE AC)命令使用的CDOL1和CDOL2;用来产生TC哈什值的TDOL和通过内部认证(INTERNAL AUTHENTICATE)命令使用的DDOL。
1.34 fallback
在某些情况下,IC卡有可能无法在支持芯片卡的终端上使用,比如IC卡本身坏了,或终端上的读写器发生了故障。在这种情况下,支付系统允许使用卡上的磁条来进行交易。
1.35 终端行为代码 terminal action code;TAC
在EMV应用交易流程中,终端行为代码(缺省、拒绝、联机)反映了收单行根据TVR的内容选择的动作。
1.36 交易证书 transaction certificate;TC
在EMV应用交易流程中,由IC卡生成表示批准交易的交易证书。
1.37 终端校验结果 terminal verification results;TVR
在EMV应用交易流程中,用于标识终端执行脱机数据认证、处理限制、持卡人验证、终端风险管理、发卡行认证、发卡行脚本处理等各步骤的结果,终端和卡片将参考TVR的值对当前交易作出脱机拒绝、联机交易或脱机批准的决定。
1.38 交易验证码 transaction authorization crypogram;TAC
用于验证交易的合法性。
1.39 EP electronic purse
PBOC 电子钱包缩写。
1.40 PSAM卡
支付系统安全控制模块,用于PBOC电子钱包卡的安全控制。
1.1 POS终端联机交易密钥管理
1.1.1 二级密钥体系
POS终端密钥分为二级:密钥加密密钥(KEK)和工作密钥(WK)。
1.1.1.1 密钥加密密钥(KEK)
用于对工作密钥(WK)进行加密保护,每台POS终端与POS中心共享唯一的KEK。
KEK必须要有安全保护措施,只能写入并参与运算,不能被读取。
KEK至少应有三个,以便当KEK泄密时,POS中心与POS终端及时、方便地更换。POS中心与POS终端通过参数下载的方式约定使用哪个KEK。
1.1.1.2 工作密钥(WK)
分为用于对个人标识码(PIN)加密的PIK以及进行报文鉴别(MAC)的MAK。
由POS前置机的加密机产生,在POS终端每次签到时从POS中心利用KEK加密后下载,并由KEK加密存储。
POS终端工作密钥在下载时必须以密文传送,严禁明文传送。
1.1.2 POS终端MAC的算法
从报文消息类型(MTI)到63域之间的部分构成MAC ELEMEMENT BLOCK (MAB),采用ECB算法,加密结果为64位的MAC,详细算法见附录B。
1.1.3 PIN加密
PIN加密采用ANSI X9.8 Format(带主账号信息)。
加密算法采用单倍长密钥算法或双倍长密钥算法。POS终端对以上两种加密算法都应支持。
具体的方法见附录A。
1.2 IC卡脱机明文PIN加密
如果IC读卡器和密码键盘集成在一起,且明文PIN直接从集成的密码键盘传到读卡器,本标准不要求对脱机明文PIN加密。
如果IC卡读卡器和密码键盘是分离的两个设备(例如通过RS232串行通讯线连接或以无线方式连接),或者明文PIN不是直接从密码键盘传到读卡器,则本标准要求密码键盘应该按ISO9564-1(或相当的被支付系统批准的其它方式)中要求用保密密钥对交易PIN加密, IC卡读卡器随后对脱机PIN解密,再以明文方式传递给卡片。
本标准暂不规定POS终端在此过程中使用何种加密方法,但其安全性应不低于以下推荐的脱机明文PIN加密方式:
密码键盘可以采用X9.8的方式加密PIN,其中密码键盘存有一组主密钥,该主密钥可由终端随机生成并保存在终端和密码键盘中,而终端在计算时,产生一个临时PIN KEY,由密码键盘按照X9.8的方式计算加密结果PINBLOCK,终端收到加密结果后,可解密获得明文。
本标准不允许将联机交易中使用的KEK、PIK、MAK直接用于IC卡脱机明文PIN加密。
1.3 POS终端EMV IC卡公共密钥管理
本节规定了对POS终端管理认证中心公钥(CA公钥)的要求。这些要求包括以下阶段:
a) 将认证中心公钥导入终端;
b) 认证中心公钥在终端中存储;
c) 认证中心公钥在终端中使用;
d) 从终端中撤回认证中心公钥。
1.3.1 认证中心公钥的导入
POS终端应提供本地下载、远程下载等方式支持认证中心公钥的导入,同时应遵循以下原则:
a) POS终端必须能够验证收到的认证中心公钥及相关数据的正确性。
b) POS终端必须能够验证收到的认证中心公钥及相关数据的合法性。
c) POS终端必须能向POS中心或下载人员提供相应信息,确认新的认证中心公钥是否已经真正地、正确地导入终端。
d) POS终端在应能通过屏幕显示或打印的方式,提供系统管理员确认终端当前使用的认证中心公钥的相关信息,信息应包括认证中心公钥所属支付组织的名称或简称、认证中心公钥的索引号、认证中心公钥的有效期等。
e) POS终端应能通过本地设置、远程下载等方式实现对特定认证中心公钥的有效期的更改,但必须先验证POS操作人员或POS中心的合法性。
1.3.2 认证中心公钥的存放
支持静态和/或动态数据认证的POS终端必须对每个支付组织的借记/贷记应用提供6个认证中心公钥的支持。
每一个认证中心公钥由5个字节的标识支付系统的RID和1个字节的认证中心公钥索引号唯一标识,索引号是由支付系统分配给某个特定的认证中心公钥,且对于每个RID唯一。
表2详细说明了每一个认证中心公钥在终端中有用的数据元的最小集。
RID和认证中心公钥索引一起唯一标识了一个认证中心公钥,并将它和正确的支付系统联系起来。
认证中心公钥算法标识标识了和相应的认证中心公钥一起使用的数字签名算法。在目前来说,唯一被接受的值为16进制的‘01’,指明在EMV规范第二册附录A2.1和B2.1中指明的数字签名方案中使用RSA算法。哈什算法标识指定了在数字签名方案中用来生成哈什结果的哈什算法。在目前来说唯一被接受的值为16进制的‘01’,指明使用SHA-1算法。
认证中心公钥校验值采用SHA-1算法,用来保证接收到的认证中心公钥及其相关数据没有错误。终端可以用该数据元重新验证存放的认证中心公钥及其相关数据的完整性。
对存储的认证中心公钥的完整性的验证应该定期进行。
表1 存储在终端中的认证中心公钥相关数据元的最小集
名称 |
长度 |
描述 |
格式 |
注册的应用提供者标识(RID) |
5 |
指定认证中心公钥和哪个支付系统相关 |
b |
认证中心公钥索引 |
1 |
和RID一起指定认证中心公钥 |
b |
认证中心哈什算法标识 |
1 |
标识用来在数字签名方案中产生哈什结果的哈什算法 |
b |
认证中心公钥算法标识 |
1 |
标识使用在认证中心公钥上的数字签名算法 |
b |
认证中心公钥模 |
变长 最大为248 |
认证中心公钥模部分的值 |
b |
认证中心公钥指数 |
1或3 |
认证中心公钥指数部分的值,等于3或216+1 |
b |
认证中心公钥校验值 ( 只有当被用来验证认证中心公钥的完整性时才需要。) |
20 |
用SHA-1算法对认证中心公钥所有部分(RID, 认证中心公钥索引,认证中心公钥模,认证中心公钥指数)的连接计算得到的校验值。 |
b |
1.3.3 认证中心公钥的使用
交易中对认证中心公钥的使用必须遵循《中国集成电路(IC)卡借记/贷记规范》。
1.3.4 认证中心公钥的撤回
POS终端应支持本地设置、远程参数下载等方式实现对认证中心公钥的撤回,同时应遵循以下原则:
a) POS终端必须能够验证对认证中心公钥的撤回操作或从POS中心收到的撤回通告的正确性。
b) POS终端必须能够验证对认证中心公钥的撤回操作或从POS中心收到的撤回通告的合法性。
c) POS终端必须能向POS中心或操作人员提供相应信息,确认特定的认证中心公钥已经真正地、正确地从终端撤回。
d) POS终端应确保已被撤回的认证中心公钥不会再被用作此后的任何交易。
建议POS终端能够定期触发检查认证中心公钥是否已超出有效期,并实现对已到期公钥的自动撤回。
1.3.5 PSAM卡的使用
对电子钱包脱机消费,应使用PSAM卡。PSAM卡应符合中国人民银行相应规范。
1.4 交易一致性检查
对于从后端返回的交易响应报文,终端机具应校验后端返回的第4域(如果存在)、第11域、41域、42域是否和请求上送的保持一致,同时应校验第64域的合法性。
2 POS终端管理功能
入网POS终端的管理功能分为三个层次:系统管理、操作人员管理和应用管理。