中国银联银行卡联网联合技术规范V21第4部分数据安全
Q/CUP 001—2004中国银联股份有限公司 发布2012-11-02实施2012-11-02修订中国银联银行卡联网联合技术规范V2.1第4部分 数据安全传输控制规范Technical Specifications on Bankcard Interoperability V2.1Part 4 Specification on Data Secure Transmission ControlQ/CUP 006.4—2012代替Q/CUP 006.4-2011Q/CUP中国银联股份有限公司企业标准1Q/CUP 006.4—2012目 次前言III1 范围围12 密钥钥管理与与控制112.1 安全管管理基本本要求112.2 各层次次密钥简简介22.3 密钥的的产生222.4 密钥的的分发332.5 密钥的的存储332.6 密钥的的销毁333 数据据的加密密处理443.1 PINN的加密密和解密密43.2 联机报报文MAAC的计计算方法法63.3 顺序文文件MAAC的计计算方法法103.4 互联网网支付密密码的加加密和解解密1004 新旧旧密钥切切换1114.1 入网机机构发起起的申请请重置密密钥1114.2 CUPPS发起起的重置置密钥1154.3 新旧密密钥的切切换处理理(同步步)1885 PBBOC借借/贷记标标准ICC卡安全全说明1195.1 PBOOC借/贷记标标准ICC卡的安安全认证证功能1195.2 ARQQC的生生成算法法19参考文献献23I前 言本标准对对中国银银联跨行行交易网网络中安安全传输输数据信信息应达达到的要要求做了了规定。
包包括数据据传输安安全要求求、密钥钥管理方方法和加加密方法法本标准由由中国银银联股份份有限公公司提出出本标准由由中国银银联股份份有限公公司制定定本标准起起草单位位:中国国银联股股份有限限公司、国国内入网网机构本标准主主要起草草人:戚戚跃民、郭郭锐、郑郑澎、徐静雯雯、李洁洁、吴金金坛、王王力斌、苗苗恒轩、万万高峰、陆陆尔东、蒋蒋慧科、杜杜秉一、赵赵伟中国银联联银行卡卡联网联联合技术术规范VV2.11第4部部分 数数据安全全传输控控制规范范1 范围本标准对对中国银银联跨行行交易网网络中安安全传输输数据信信息应达达到的要要求做了了规定,包包括数据据传输安安全要求求、密钥钥管理方方法和加加密方法法本标准适适用于所所有加入入中国银银联银行行卡信息息交换网网络的入入网机构构2 密钥管理理与控制制2.1 安全管理理基本要要求入网机构构必须满满足银联联信息交交换网络络对数据据安全传传输控制制方面的的要求入网机构构在与银银联联网网的接口口建设中中必须提提供严格格的系统统安全保保密机制制,保障障银联银银行卡信信息处理理系统安安全、稳稳定、可可靠地运运行,包包括信息息的存取取控制、应应用系统统操作的的安全、物物理实体体(机房房、设备备、通信信网络、记记录媒体体等)的的安全和和安全管管理制度度等方面面。
2.1.1 管理制度度的基本本要求整个银行行卡网络络的数据据安全保保密,不不仅仅需需要技术术上的支支持,更更需要在在业务上上制定和和贯彻各各机构间间严格的的密钥管管理制度度基本本要求是是:a) 采采用安全全可靠并并且在银银行卡交交换系统统中普遍遍采用的的加密算算法b) 密密钥的存存贮和交交易信息息的加密密/解密密在硬件件加密设设备中进进行c) 遵遵循金融融业数据据安全保保密的国国家标准准和国际际标准d) 加加强对人人员的管管理要求求e) 定定期更换换密钥2.1.2 数据传输输安全控控制的基基本要求求数据传输输安全控控制要求求包括以以下五个个方面::a) 密密钥管理理机制::在技术术上实施施严格和和可靠的的密钥分分配过程程b) 个个人标识识码(PPIN)的的加密及及转换机机制:不不允许 PINN 的明明码在通通信线路路上和人人工可操操作的存存储媒体体上出现现c) 对对交易报报文作来来源正确确性鉴别别的机制制(MAAC)d) 所所有入网网机构采采用硬件件加密装装置e) 点点对点的的数据加加解密网网络机制制2.1.3 硬件加密密机的基基本要求求硬件加密密机的主主要功能能是对PPIN加加密和解解密、验验证报文文来源的的正确性性以及存存储密钥钥。
所有有这些操操作都在在硬件加加密机中中完成,以以保证密密钥和PPIN的的明码只只出现在在加密机机中,防防止泄露露硬件件加密机机应通过过国家商商用密码码委员会会的安全全认证并并被允许许在国内内金融机机构中使使用此此外还必必须满足足以下要要求:a) 支支持单倍倍长(BB64,在在单倍长长密钥算算法中使使用)和和双倍长长(B1128,在在双倍长长密钥算算法中使使用)的的密钥b) 支支持本文文中对PPIN的的规定,验验证、转转换PIIN的密密文c) 支支持本文文中对MMAC的的规定,验验证和产产生MAACd) 能能对密钥钥作验证证e) 受受到非法法攻击时时,加密密机内部部保护的的密钥自自动销毁毁CUPSS与入网网机构主主机均要要求配置置硬件加加密机并并对传输输的数据据进行加加密CUPSS与入网网机构之之间的数数据加密密和解密密以单倍倍长密钥钥算法为为基础2.1.4 数据加密密传输环环境的基基本要求求交易数据据由入网网机构进进入CUUPS前前应已经经过加密密处理,如如PINN加密和和MACC加密入入网机构构从CUUPS中中得到的的交易数数据也应应进行加加密处理理,如PPIN加加密和MMAC加加密。
图1 数据加密密传输环环境网络中CCUPSS的加密密机与各各入网机机构加密密机组成成了一个个点对点点的数据据加解密密网络CCUPSS与各联联网入网网机构分分别约定定数据密密钥2.2 各层次密密钥简介介在数据安安全保密密、传输输机制中中,密钥钥是关键键数据CCUPSS系统与与每个入入网机构构之间约约定的各各层密钥钥都要求求具有唯唯一性各层密钥钥的结构构、生成成方法、加加密解密密对象、存存储地点点、长度度、被保保护方式式等如下下表所示示:表1 各层密钥钥表序号密钥名缩写层原始生成成方法加密解密密对象存储地点点长度保护方式式1主密钥MK1人工输入入成员主密密钥硬件加密密机机外分段段分人保保管192bbit硬件设备备保护2成员主密密钥MMK2人工输入入数据密钥钥硬件加密密机和主主机128bbit//1922bitt从硬件加加密机输输出时用用主密钥钥加密3数据密钥钥(例如如,PIIN密钥钥和MAAC密钥钥)PIK3硬件加密密机产生生PIN主机64biit/1128bbit用成员主主密钥加加密主密钥和和成员主主密钥的的生成方方法及输输入过程程应由相相关的安安全管理理制度规规定2.3 密钥的产产生表2 密钥的产产生序号密钥名产生1主密钥人工产生生2成员主密密钥CUPSS与入网网机构各各产生一一半,在在硬件设设备中合合成3PIN密密钥由硬件设设备随机机数发生生器产生生,并须须经密钥钥有效性性检查4MAC密密钥由硬件设设备随机机数发生生器产生生,并须须经密钥钥有效性性检查2.3.1 数据密钥钥的产生生PIK与与MAKK统称为为数据密密钥,由由硬件加加密机中中的随机机发生器器产生。
密密钥产生生后,硬硬件加密密机将检检查密钥钥的有效效性弱弱密钥和和半弱密密钥将被被剔除CUPSS的加密密机产生生数据密密钥,入入网机构构接收和和储存CCUPSS发来的的数据密密钥当当CUPPS认为为需要时时,可以以主动向向入网机机构发起起重置密密钥报文文当入网机机构需要要新密钥钥的时侯侯,必须须向CUUPS发发出申请请重置密密钥报文文2.3.2 成员主密密钥(MMMK))的产生生MMK由由CUPPS和入入网机构构各自产产生一部部分,分分别输入入到双方方的加密密机中合合成MMMK也可由双双方商定定MMKK的产生生办法2.3.3 主密钥的的产生主密钥用用人工方方式输入入主密密钥由三三部分构构成,分分别由三三个人掌掌管为为了保证证输入的的正确性性,每一一部分的的密钥必必须输入入两次,且且两次输输入必须须一致,否否则输入入失败在在三个人人分别输输入三部部分密钥钥后,加加密机作作奇偶校校验检查查奇偶偶校验正正确时,加加密机产产生主密密钥主主密钥必必须储存存在硬件件加密机机中,受受硬件设设备的保保护一一旦硬件件加密机机受到非非授权的的操作,主主密钥会会自动销销毁2.4 密钥的分分发表3 密钥的分分发序号密钥名密钥的分分发1主密钥自主生成成,不须须分发2成员主密密钥用IC卡卡传递或或人工输输入3PIN密密钥由CUPPS产生生,通过过联机报报文发送送4MAC密密钥由CUPPS产生生,通过过联机报报文发送送2.4.1 数据密钥钥的分发发数据密钥钥由CUUPS产产生,通通过联机机报文的的方式分分发。
具具体分发发方式请请参见本本规范第第6章的的详细描描述2.4.2 成员主密密钥(MMMK)的的分发MMK的的分发有有三个途途径:a) 如如果CUUPS和和入网机机构均使使用ICC卡保存存MMKK,则可可通过相相互邮寄寄IC卡卡得到b) 如如果一方方没有IIC卡或或IC卡卡不能通通用,则则需双方方相关人人员到场场共同输输入MMMKc) 也也可由双双方相关关人员协协商确定定分发途途径2.5 密钥的存存储2.5.1 数据密钥钥和成员员主密钥钥的存储储数据密钥钥和成员员主密钥钥应保存存在硬件件加密机机内如如果出现现在硬件件加密机机外,则则必须密密文方式式出现2.5.2 主密钥的的存储主密钥必必须保存存在硬件件加密机机中,受受加密机机的保护护2.5.3 密钥档案案的保存存密钥注入入、密钥钥管理功功能调试试和密钥钥档案的的保管应应由专人人负责密密钥资料料须保存存在保险险柜内保保险柜钥钥匙由专专人负责责使用用密钥和和销毁密密钥要在在监督下下进行并并应有使使用、销销毁记录录2.6 密钥的销销毁当新密钥钥产生后后,生命命期结束束的旧密密钥必须须从数据据库和内内存中清清除,防防止被替替换使用用;同时时所有可可能重新新构造此此密钥的的信息也也必须清清除。
新新密钥成成功启用用和旧密密钥自动动销毁的的记录将将被更新新3 数据的加加密处理理为保证数数据的安安全传输输,网络络中的报报文采用用了PIIN加密密和报文文来源正正确性鉴鉴别(MMAC))两种加加密技术术3.1 PIN的的加密和和解密当报文经经发送方方进入银银行卡网网络时,持持卡人的的个人标标识码((PINN)已经经用发送送方的PPIK加加密CCUPSS将PIIN用发发送方的的PIKK解密后后,立即即用接收收方的PPIK加加密,再再发往接接收方PIN 是以 64 位位二进制制数参与与加密和和解密运运算的,PIN 的明码在这个数中的分布,称为PIN数据块在CUPS和入网机构之间,PIN数据块符合《ISO 9564-1 Banking—Personal Identification Number Management and Security》,其格式如下图所示CNPPPPP/FP/FP/FP/FP/FP/FP/FP/FFF注1:CC-控制制码 %%B00000注2:NN-PINN 的长长度(44-biit)注3:PP-4-bbit 二进制制 PIIN 的的数码注4:PP/F--4-bbit 二进制制 PIIN 的的数码 /FILLLERR注5:44-biit %%B11111(FILLLERR)图2 PIN数数据块格格式典型的 PINN 加密密解密过过程如图3 表表示。
这这一过程程保证了了 PIIN 的的明码只只在人工工不可访访问的终终端和硬硬件加密密机内出出现当然同时时也要求求受理方方能够掌掌握终端端一侧的的密钥管管理和 PINN 数据据格式上图中终终端机具具、受理理方、CCUPSS以及发发卡方之之间的加加密解密密信息为为:—— 1: 终终端机具具输出 PINN 的密密文—— 2: 受受理方用用与终端端机具约约定的密密钥解密密—— 3: 受受理方用用与CUUPS约约定的密密钥加密密—— 4: 受受理方输输出 PPIN 的密文文—— 5: CCUPSS用与受受理方约约定的密密钥解密密—— 6: CCUPSS用与发发卡方约约定的密密钥加密密—— 7: CCUPSS输出 PINN 的密密文—— 8: 发发卡方用用CUPPS约定定的密钥钥解密—— 9: 发发卡方用用与发卡卡行约定定的密钥钥加密—— 10:发发卡方输输出 PPIN 的密文文图3 PIN的的加密解解密过程程3.1.1 PIN的的长度PIN的的长度为为4-112位数数字3.1.2 PIN的的字符集集PIN用用数字字字符表示示,下表表给出了了它的二二进制对对照表::表4 PIN用用数字字字符的二二进制对对照表PIN字字符二进制表表示0000001000112001003001114010005010116011007011118100009100113.1.3 PIN BLOOCKPIN的的格式应应符合IISO公公布的AANSII X99.8标标准中PPIN的的两种格格式之一一:—— ANSII X99.8格格式(不不带主账账号信息息)表5 ANSII X99.8格格式(不不带主账账号信息息)表位置长度说明11 BYYTEPIN的的长度27BYTTE4-122位数字字的PIIN(每每个数字字占4个个BITT) )),不足足部分右右补F示例1::明文PIIN 11234456,则PINN BLLOCKK 为00x066 0xx12 0x334 00x566 0xxFF 0xFFF 00xFFF 0xxFF—— ANSIIX9..8格式式(带主主账号信信息)PIN BLOOCK为为PINN按位异异或主账账号(PPAN)。
其中,PPIN格格式如下下表所示示:表6 PIN格格式位置长度说明11 BYYTEPIN长长度27 BYYTE4-122位数字字的PIIN(每每个字符符占4个个BITT),不不足部分分右补FF)PAN格格式如下下表所示示:表7 PAN格格式位置长度说明12 BYYTE%H0000036 BYYTE取主账号号的右112位(不不包括最最右边的的校验位位),主主账号不不足122位左补补0示例2::PIN 明文::12334566磁卡上的的PANN:12234 56778 990122 34456 78截取下的的PANN:67789 01223 445677则用于PPIN加加密的PPAN为为:0xx00 0x000 00x677 0xx89 0x001 00x233 0xx45 0x667则PINN BLLOCKK为: 0x006 00x122 0xx34 0x556 00xFFF 0xxFF 0xFFF 00xFFF 异或::0x000 00x000 0xx67 0x889 00x011 0xx23 0x445 00x677 结果果为:00x066 0xx12 0x553 00xDFF 0xxFE 0xDDC 00xBAA 0xx98示例3::PIN明明文:11234456磁卡上PPAN::12334 556788 90012 34556截取下的的PANN:45567 89001 223455则用于PPIN加加密的主主账号为为:0xx00 0x000 00x455 0xx67 0x889 00x011 0xx23 0x445则PINN BLLOCKK为:00x066 0xx12 0x334 00x566 0xxFF 0xFFF 00xFFF 0xxFF 异或::0x000 00x000 0xx45 0x667 00x899 0xx01 0x223 00x455 结结果为::0x006 00x122 0xx71 0x331 00x766 0xxFE 0xDDC 00xBAAPIN的的格式(格格式1或或格式22)必须须在报文文的域553(SSecuuritty RRelaatedd Coontrrol Infformmatiion)中中标明。
3.1.4 PIN的的加密方方法将根据上上述步骤骤生成的的PINN BLLOCKK输入到到硬件加加密机中中,并与与存储在在硬件加加密机中中的PIIK用双双倍长密密钥算法法计算,即即可得到到PINN的密文文3.1.5 PIN异异常的处处理参见《交交易处理理说明》中中第8章章交易的的异常处处理流程程3.2 联机报文文MACC的计算算方法报文来源源正确性性鉴别((MACC-MeessaageAAuthhentticaatioonCoode))是一种种判别报报文来源源是否正正确,以以及报文文在发送送途中是是否被篡篡改的计计算方法法MAC算算法取自自于《IISO887311-19992AApprroveedAllgorrithhmsfforAAuthhentticaatioon》3.2.1 MAC的的使用条条件MAC通通常用于于01xxx、002xxx、044xx、005xxx类的请请求报文文及011xx、002xxx、044xx的的成功(应应答码类类别含意意为“批准”,参见见本规范范《附录录》部分分A.22应答码码分类汇汇总)应应答报文文中;另另外,除除了重置置密钥使使用的008xxx号报文文使用MMAC外外,其它它管理类类(066xx)和和网络管管理类(008xxx)报文文均不使使用MAAC。
CUPSS既支持持机构使使用MAAC也支支持机构构不使用用MACC,是否否使用,应应与入网网机构具具体约定定3.2.2 MAC报报文域的的选择MAC域域的选择择采用系系统约定定的方式式,MAAC算法法采用密密文块链链接(CCBC))的模式式参与MAAC计算算的数据据元集,一一般包括括以下数数据域::—— 具有唯一一性的数数据域(流流水号、日日期、时时间等)—— 表征报文文特征的的数据域域(报文文类型、交交易种类类等)—— 交易相关关数据域域(卡号号、金额额、应答答码等)3.2.2.1 消息类型型为011xx、002xxx、044xx类类交易的的报文域域选择以下域出出现或条条件成立立时,就就应该包包含在MMAC计计算中表8 消息类型型为011xx、002xxx、044xx类类交易的的报文域域选择序号域域名属性说明10Messsagee-tyype--ideentiifieern4报文类型型a22Primmaryy-acccouunt--nummberrn....19((LLVVAR))主账号bb33Proccesssingg-cooden6交易处理理码44Amouunt--of--Traansaactiionssn12交易金额额57Trannsmiissiion--datte-aand--timmen10交易传输输时间611Systtem--traace--auddit--nummberrn6系统跟踪踪号718Mercchannts--typpen4商户类型型825Poinnt-oof-sservvicee-coondiitioon-ccodeen2服务点条条件码928Amouunt__traansaactiion__feeex+n 8交易手续续费1032Acquuiriing--insstittutiion--ideentiificcatiion--codden..111(LLLVAAR)受理机构构标识码码c1133Forwwardinng- innstiituttionn-iddenttifiicattionn-cooden..111(LLLVAAR)发送机构构标识码码d1238Authhoriizattionn-iddenttifiicattionn-reespoonseean6授权标识识应答码码1339Respponsse-ccodeean2应答码1441Cardd-acccepptorr-teermiinall-iddenttifiicattionnans88受卡方终终端标识识码1542Cardd-acccepptorr-iddenttifiicattionn-coodeans115受卡方标标识码1690Origginaal-ddataa-ellemeentssn42原始数据据元eaMesssagge-ttypee-iddenttifiier::报文类类型(001000/01110、002000/02210、002200/02230、004200/04430)bPriimarry-aaccoountt-nuumbeer:主主账号,内内容为两两位的PPAN长长度+PPANcAcqquirringg-innstiituttionn-iddenttifiicattionn-coode::受理机机构标识识码,内内容为两两位的长长度(nn)+最最长111位机构构标识d Foorwaardiing-- innstiituttionn-iddenttifiicattionn-coode::发送机机构标识识码,内内容为两两位的长长度(nn)+最最长111位机构构标识eOriiginnal--datta-eelemmentts:只只取前220位数数值,内内容为::org--messsagge-ttypee n4 原始报报文类型型org--sysstemm-trracee-nuumbeer n6 原始报报文跟踪踪号org--traansmmisssionn-daate--timme nn10 原始报报文的交交易传输输时间3.2.2.2 转账类交交易的报报文域选选择转账类交交易的范范围如下下:1、 传统意义义上的转转账交易易,含转转账、转转出转账账、转入入转账、转转出冲正正、转入入确认;;2、 基于PBBOC电电子钱包包/存折折标准的的IC卡卡非指定定账户圈圈存交易易,含转转账圈存存、转出出圈存、转转入圈存存、转出出圈存冲冲正、非非指定账账户圈存存冲正;;3、 基于PBBOC借借贷记标标准的电电子现金金应用的的IC卡卡非指定定账户圈圈存交易易,含转转账圈存存、转出出圈存、转转入圈存存、转出出圈存冲冲正、非非指定账账户圈存存冲正。
对于转账账类交易易,只要要以下域域出现,就就应该包包含在MMAC计计算中::表9 转账类交交易的报报文域选选择序号域域名属性说明10Messsagee-tyypen4报文类型型a22Primmaryy-acccouunt--nummberrn..119(LLLVAAR)主账号33Proccesssingg-cooden6交易处理理码44Amouunt--of--Traansaactiionn12交易金额额57Trannsmiissiion--datte-aand--timmen10交易传输输日期时时间611Systtem--traace--auddit--nummberrn6系统跟踪踪号718Mercchannts--typpen4商户类型型825Poinnt-oof-sservvicee-coondittionn-cooden2服务点条条件码928Amouunt Traansaactiion Feeex+n88交易费1032Acquuiriing--insstittutiion--ideentiificcatiion--codden..111(LLLVAAR)受理方机机构代码码1133Forwwarddingg- iinsttituutioon-iidenntifficaatioon-ccodeen..111(LLLVAAR)转发机构构代码1238Authhoriizattionn-iddenttifiicattionn-reespoonseen6授权标识识应答码码1339Respponsse-ccodeen2应答码1441Cardd-acccepptorr-teermiinall-iddenttifiicattionnan8受卡机终终端标识识码1542Cardd-acccepptorr-iddenttifiicattionn-coodean155受卡方标标识码1690Origginaal-ddataa-ellemeentssn42原始数据据元b17102Accoountt Iddenttifiicattionn 1ans...288(LLLVARR)转出账户户的账(卡卡)号标标识c18103Accoountt Iddenttifiicattionn 2ans...288(LLVVAR)转入账户户的账(卡卡)号标标识daMesssagge-ttypee-iddenttifiier::报文类类型(002000/02210、004200/04430)bOriiginnal--datta-eelemmentts:只只取前220位数数值,内内容为::org--messsagge-ttypee n4 原始报报文类型型org--sysstemm-trracee-nuumbeer n6 原始报报文跟踪踪号org--traansmmisssionn-daate--timme nn10 原始报报文的交交易传输输时间c Acccouunt Ideentiificcatiion 1:资资金转出出账户的的账(卡卡)号标标识d Acccouunt Ideentiificcatiion 2:资资金转入入账户的的账(卡卡)号标标识3.2.2.3 密钥管理理类交易的报文文域选择择密钥管理理报文指指重置密密钥请求求及其应应答报文文。
其MMAC由由以下域域组成::表10 密钥管理理类交易易的报文文域选择择序号域域名属性说明10Messsagee-tyypen4报文类型型a27Trannsmiissiion--datte-aand--timmen10交易传输输时间311Systtem--traace--auddit--nummberrn6系统跟踪踪号439Respponsse-ccodeean2应答码553Secuuritty-rrelaatedd-coontrrol--infformmatiionn16安全控制制信息码码b670Netwworkk-maanaggemeent--infformmatiion--codden3网络管理理信息码码c7100Receeiviing--insstittutiion--ideentiificcatiion--codden..111(LLLVAAR)接收机构构标识码码da Meessaage--typpe-iidenntiffierr:报文文类型(008000/08810)bSeccuriity--rellateed-cconttroll-innforrmattionn:安全全控制信信息码 参见“域53”说明,内内容为::100000000000000000000 ——— 重置置PINN密钥PPIK200000000000000000000 ——— 重置置MACC密钥MMAKcNettworrk-mmanaagemmentt-innforrmattionn-coode::网络管管理信息息码,内内容为“1011”dRecceivvingg-insstittutiion--ideentiificcatiion--codde:接接收机构构标识码码,内容容为两位位的长度度(n)++最长111位机机构标识识3.2.3 MAC域域的构成成规则3.2.3.1 MAC字字符的选选择对所选择择的MAAC报文文域,应应进一步步作字符符处理。
除除去一些些冗余信信息,以以提高MMAC的的质量处处理方法法如下::a) 带带长度值值的域在在计算MMAC时时应包含含其长度度值信息息;b) 在在域和域域之间插插入一个个空格;;c) 所所有的小小写字母母转换成成大写字字母;d) 除除了字母母(A--Z),数数字(00-9)),空格格,逗号号(,)和点号号(.))以外的的字符都都删去;;e) 删删去所有有域的起起始空格格和结尾尾空格;;f) 多多于一个个的连续续空格,由由一个空空格代替替3.2.3.2 MAC块块(MAAB)的的构成数据从报报文中选选择出来来后,经经MACC字符选选择处理理,然后后构成MMAB((Messsagge AAuthhentticaatioon BBlocck)构构成MAAB的方方法是::将MACC字符选选择处理理后的数数据按664biit划分分成644bitt的块,一一直划分分到数据据的最后后一块,它它的位数数小于或或等于664biit,不不满644bitt时补二二进制003.2.4 MAC的的计算当下列情情况发生生时,不不需计算算MACC,并返返回相应应的报文文错误信信息:a) 报文上上没有时时间域;;b) 时间失失效;c) 报文标标识越界界;d) 密钥无无效。
在发出报报文前,首首先从报报文中截截取MAAC所需需的报文文域,然然后进行行MACC字符选选择处理理,再构构成MAAB并计计算出MMAB的的长度入入网机构构应将MMAB、长长度、MMAK的的值输入入到硬件件加密机机中,产产生MAAC并将将MACC随报文文一起发发送当收到报报文后,应应首先作作MACC鉴别如如果产生生的新MMAC与与传送的的MACC一致,则则接受报报文,否否则MAAC鉴别别失败,报报文被拒拒绝3.2.4.1 硬件加密密机通过过MABB计算MMAC的的方法3.2.4.1.1 单倍长密密钥算法法将MABB中的每每8个字字节分为为一组(最最后一组组如不足足8个字字节,则则右补00X000),用用MAKK作为单单倍长密密钥依次次进行如如下操作作:a) 进行单单倍长密密钥运算算;b) 将运算算结果与与后一组组8个字字节的MMAB异异或,结结果取代代后一组组,继续续进行操操作对对最后一一组进行行单倍长长密钥运运算,得得出8个个字节的的加密值值3.2.4.1.2 双倍长密密钥算法法参照ISSO9..9中的的做法,将将MABB中的每每8个字字节分为为一组(最最后一组组如不足足8个字字节,则则右补00X000),用用PIKK(注意意这里的的密钥不不是MAAK,而而是PIIK)作作为双倍倍长密钥钥依次进进行如下下操作::a) 进行双双倍长密密钥运算算;b) 将运算算结果与与后一组组8个字字节的MMAB异异或,结结果取代代后一组组,继续续进行操操作。
对对最后一一组进行行双倍长长密钥运运算,得得出8个个字节的的加密值值3.2.4.2 联机报文文MACC域的取取值3.2.4.2.1 普通交易易MAC域域(1228域)为为按照单单倍长密密钥算法法计算MMAC得得到的88字节二二进制数数据的前前半部分分(4字节的的二进制制数),表表示成116进制制字符串串形式(8个16进制字符)3.2.4.2.2 CUPSS发起的的重置密密钥交易易CUPSS发起的的重置密密钥请求求和应答答报文的的MACC计算所所用的密密钥为新新下发的的密钥,切切换MAAC密钥钥时用新新下发的的MACC密钥作作为密钥钥计算MMAC;;切换PPIN密密钥时用用新下发发的PIIN密钥钥作为密密钥计算算MACC3.2.4.2.2.1 请求报文文中的MMAC计计算方法法请求报文文中的MMAC域域(1228域)为为按照单单倍长密密钥算法法(针对对重置MMAK)或或双倍长长密钥算算法(针针对重置置PIKK)计算算MACC得到的的8字节二二进制数数据的前前半部分分(4字节二二进制数数)和按按照单倍倍长密钥钥算法(针针对重置置MAKK)或双双倍长密密钥算法法(针对对重置PPIK)计计算ChheckkVallue得得到的88字节二二进制数数据的前前半部分分(4字节二二进制数数)的组组合(88字节二二进制数数)。
3.2.4.2.2.2 应答报文文中的MMAC计计算方法法如果重置置的是MMAK,那那么应答答报文的的MACC计算方方法同3.2.4.1.1 节,不不需计算算CheeckVValuue,但但其使用用的密钥钥仍为新新下发的的密钥如果重置置的是PPIK,那那么应答答报文的的MACC计算方方法同3.2.4.1.2 节,也也不需计计算ChheckkVallue,也也需使用用新下发发的密码码3.2.4.2.2.3 ChecckVaaluee的计算算方法ChecckVaaluee的计算算方法为为用新密密钥对88个字节节的二进进制0作作单倍长长密钥运运算(针针对重置置MAKK)或双双倍长密密钥运算算(针对对重置PPIK)3.2.4.2.2.4 重置PIIK交易易的MAAC计算算方法由于有可可能在重重置PIIN密钥钥时,新新产生的的PINN密钥是是1288字节的的双倍长长密钥,此此时计算算请求和和应答报报文中的的MACC值都应应采用双双倍长密密钥算法法同理理,对于于请求报报文中包包含的CChecckVaaluee值也采采用双倍倍长密钥钥算法计计算这这里计算算MACC和ChheckkVallue的的流程与与3.2.4.1.2 节中中的描述述一致,即即先进行行双倍长长密钥运运算,然然后将运运算结果果与后一一组8个个字节的的MABB异或,异异或结果果用双倍倍长密钥钥运算以以后取代代后一组组,依此此类推,直直到对最最后一组组进行双双倍长密密钥运算算。
3.2.5 MAC错错误异常常处理参见《中中国银联联银行卡卡联网联联合技术术规范VV2.11》第一一部分《交交易处理理说明》中中第8章章交易的的异常处处理流程程3.3 顺序文件件MACC的计算算方法顺序文件件是指文文件中带带有文件件头(0000)和和文件尾尾(0001)的的文件,如如双信息息文件、风风险信息息共享文文件等,具具体可参参见《文文件接口口规范》中中的相关关描述所所有的顺顺序文件件都必须须进行MMAC校校验,本本节规定定顺序文文件的MMAC校校验规则则3.3.1 MAC KEYY和MAAC的字字符组成成文件尾中中有MAC KEYY 和 MAAC 两两个字段段,每个个字段都都是由116个字字符组成成的字符符串,字字段之间间没有分分隔符,其其后没有有结束符符,这两两个字符符串中每每个字符符都必须须是166进制字字符(即即“0” — “99”、“A” — “FF” 且且“A” — “FF”必须须大写),用用于表示示8个字字节的 MACC 密钥钥和8个个字节的的MACC,采用用这种表表示方式式是为了了方便显显示,使使文件不不含有不不可打印印的字符符3.3.2 MAC KEYY的产生生方式MAC KEYY 为生生成文件件时随机机产生的的密钥,这这里是用用机构主主密钥加加密的密密文。
同同时MAAC KKEY必必须满足足奇校验验3.3.3 MAC块块(MAAB)的的构成将整个文文件(不不含MAAC KKEY和和MACC)以2556字节节为一组组分组,结结尾不满满2566字节补补二进制制0;把各各组按位位异或,最最后得到到一个2256字字节的数数据块,即即为顺序序文件MMAC块块3.3.4 MAC的的计算MAC 分成左左右两部部分,生生成方法法如下::前1288字节按按照单倍倍长密钥钥算法计计算MAAC,取取结果的的前半部部分(44字节二二进制数数据),将将其表示示成166进制字字符串形形式(88个16进制制字符),即即为文件件MACC字段的的前半部部分;同同样,将将2566字节的的数据块块的后1128字字节按照照单倍长长密钥算算法计算算MACC,取结结果的前前半部分分(4字节二二进制数数据),将将其表示示成166进制字字符串形形式(88个16进制制字符),即即为文件件MACC字段的的后半部部分3.3.5 MAC错错误异常常处理当文件中中的MAAC校验验未通过过时,系系统会生生成一个个拒绝文文件,其其中的拒拒绝原因因指明是是MACC校验失失败,具具体格式式请参见见《中国国银联银银行卡联联网联合合技术规规范V22.1》第第三部分分《文件件接口规规范》中中的5..4常用用记录格格式约定定。
3.4 互联网支支付密码码的加密密和解密密网上交易易的互联联网支付付密码需需要通过过联机报报文转发发到发卡卡方,为为保证该该密码的的安全性性,要求求其在网网络上务务必要密密文传输输发送送方执行行加密操操作,接接收方执执行解密密操作互联网支支付密码码是以1192位位二进制制数参与与加密和和解密运运算,其其明码在在这个数数中的分分布,称称互联网网支付密密码数据据块在在CUPPS和入入网机构构之间,其其格式如如下图所所示NNPPPPPPP/FP/FP/FP/FP/FP/FP/FP/FP/FP/FP/FP/FP/FP/FFF注1:PP表示PPasssworrd,FF表示FFilller注2:NN为互联联网支付付密码的的长度(88-biit)注3:PP为8--bitt二进制制互联网网支付密密码的字字符注4:PP/F为为8-bbit二二进制互互联网支支付密码码的字符符/填充充字符注5:FF为8--bitt二进制制互联网网支付密密码的填填充字符符图4 互联网支支付密码码数据块块3.4.1 互联网支支付密码码的长度度互联网支支付密码码的长度度必须在在6到220个字字符以内内3.4.2 互联网支支付密码码的字符符集互联网支支付密码码均为AASCIII码字字符,既既可为字字符,也也可以为为数字,或或其它符符号。
3.4.3 互联网支支付密码码 BLLOCKK互联网支支付密码码的格式式应符合合如下规规则:表11 互联网支支付密码码的格式式位置长度说明12 BYYTE互联网支支付密码码的长度度222BYYTE6~200位互联联网支付付密码的的字符(每每个字符符占1个个Bytte,不不足部分分右补空空白字符符,即00xFFF)示例5::明文互联联网支付付密码::Helllo!!1233由于互联联网支付付密码都都是字符符明文显显示,所所以这里里需将其其首先转转换为AASCIII:互联网支支付密码码明文Hello!123每个字符符对应的的ASCCII7210110810811133495051每个字符符对应的的十六进进制0x4880x6550x6CC0x6CC0x6FF0x2110x3110x3220x333根据图4 显示示的补充充原则,前前面补两两个字符符的长度度位,该该密码共共9个字字符,因因此补009两个个字符,转转换为AASCIII是448和557,转转换为十十六进制制是0xx30和和0x339后后面需要要补充113位的的空白字字符,转转换为十十六进制制为0xxFF,因因此最终终得到的的互联网网支付密密码BLLOCKK如下::0x300 0xx39 0x448 00x655 0xx6C 00x6CC 0xx6F 00x211 0xx31 0x332 00x333 0xxFF 0xFFF 00xFFF 0xxFF 0xFFF 00xFFF 0xxFF 0xFFF 00xFFF 0xxFF 0xFFF 00xFFF 0xxFF3.4.4 互联网支支付密码码的加密密方法将根据上上述步骤骤生成的的互联网网支付密密码 BBLOCCK输入入到硬件件加密机机中,并并与存储储在硬件件加密机机中的双双倍长PPIK用用双倍长长密钥算算法计算算,即可可得到224个字字节的互互联网支支付密码码的密文文。
这里需要要注意两两点:11)计算算互联网网支付密密码的密密钥也是是PIKK;2)互互联网支支付密码码应采用用双倍长长密钥算算法3.4.5 互联网支支付密码码异常的的处理异常处理理流程和和错误应应答码都都同PIIN的处处理方式式4 新旧密钥钥切换4.1 入网机构构发起的的申请重重置密钥钥4.1.1 交易流程程入网机构构将申请请重置密密钥请求求发送给给CUPPS,CCUPSS接收到到该请求求后,将将立即返返回应答答同时时CUPPS启动动密钥更更新模块块,为请请求方生生成新密密钥,并并将新密密钥用重重置密钥钥请求报报文发送送给入网网机构当CUPPS无法法将申请请重置密密钥应答答或重置置密钥请请求发送送给入网网机构时时,将丢丢弃该报报文1—入网网机构发发往CUUPS的的申请重重置密钥钥(08820)2—CUUPS发发往入网网机构的的应答(008300)3—CUUPS发发往入网网机构的的重置密密钥请求求(08800)4—入网网机构发发往CUUPS的的重置密密钥请求求的应答答(08810)图5 入网机构构申请重重置密钥钥流程4.1.2 流程图注1:RRSI--MB--SC::入网机机构发往往CUPPS的申申请重置置密钥请请求报文文(08820)注2:RRSI--SC--MB::CUPPS返回回入网机机构的申申请重置置密钥应应答报文文(08830)注3:KKSM--SC--MB::CUPPS发往往入网机机构的重重置密钥钥请求报报文(008000)注4:KKSM--MB--SC::入网机机构返回回CUPPS的重重置密钥钥应答报报文(008100)图6 入网机构构发起的的申请重重置密钥钥流程图图4.1.3 入网机构构申请重重置密钥钥说明第一阶段段:向CCUPSS发送申申请重置置密钥的的请求入网机构构在认为为必要的的时侯,可可以向CCUPSS发送申申请重置置密钥的的请求((RSII-MBB-SCC)(008200),将将请求的的密钥类类型发往往CUPPS,然然后等待待CUPPS返回回的入网网机构申申请重置置密钥的的应答报报文(RRSI--SC--MB))(08830)。
如如果在规规定的时时间里未未得到应应答,可可重试若若干次,若若仍然未未得到应应答,请请求人工工干预第二阶段段:接收收新密钥钥CUPSS在发送送CUPPS重置置密钥报报文(KKSM--SC--MB))(08800)时时已采用用新密钥钥计算MMAC,当当入网机机构收到到CUPPS发来来的KSSM-SSC-MMB后,取取出新密密钥,并并用新密密钥对报报文验证证MACC请求求报文的的MACC算法参参见3.2.4.2.2.1 节然然后向CCUPSS发送对对CUPPS重置置密钥的的应答报报文(KKSM--MB--SC))(08810),应应答报文文用新密密钥产生生MACC应答答报文的的MACC算法参参见3.2.4.2.2.2 节成功接收收新密钥钥后,加加设新密密钥启用用标记,由由入网机机构发出出的所有有报文应应启用新新密钥加加密新新旧密钥钥切换窗窗口定义义为3分钟,此此时新旧旧密钥共共存在在时间窗窗口之内内,入网网机构对对接收到到的CUUPS发发送来的的PINN和MACC的信息息,首先先用新密密钥进行行解密、转转换或验验证,如如果出现现PINN格式错错误或MMAC验验证错误误,则必必须再用用旧密钥钥进行解解密、转转换或验验证,如如再出错错,则为为实际出出错,加加、解密密操作失失败,机机构应考考虑再次次尝试重重置密钥钥,如果果仍然失失败,则则应考虑虑与银联联进行手手工密钥钥重置的的应急手手段(电电话联系系银联运运维人员员)。
事事后,机机构应检检查自己己的加解解密程序序是否有有问题,并并联系银银联获取取帮助在在时间窗窗口限定定时间结结束后,入入网机构构执行下下述工作作:a) 新新密钥替替换旧密密钥;b) 消消除新密密钥启用用标记;;c) 申申请重置置密钥结结束如果在时时间窗口口结束以以后,机机构仍然然发现使使用新密密钥进行行的加解解密操作作出错,应应进行人人工干预预,尽快快联系银银联工作作人员,检检查问题题所在4.1.4 报文格式式入网机构构申请重重置密钥钥报文 (RSSI-MMB-SSC) 报文格格式如下下:表12 入网机构构申请重重置密钥钥报文格格式位域名动作MESSSAGEE-TYYPE--IDEENTIIFIEER值 "008200“BIT--MAPPb12887TRANNSMIISSIION--DATTE-AAND--TIMME系统时间间11SYSTTEM--TRAACE--AUDDIT--NUMMBERR系统跟踪踪号33FORWWARDDINGG-INNSTIITUTTIONN-IDDENTTIFIICATTIONN-COODE发送机构构标识代代码53。




