长沙市民卡卡结构设计.doc_第1页
长沙市民卡卡结构设计.doc_第2页
长沙市民卡卡结构设计.doc_第3页
长沙市民卡卡结构设计.doc_第4页
长沙市民卡卡结构设计.doc_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

豆丁id :运营商卧底编号:cssmk-cs-1001-002版本:1.0.0密级:公开ic卡结构设计 长沙市民卡系统规划 中国银联湖南分公司中钞信用卡产业发展有限公司版本1.0,2010年1月目 录1.设计标准42.卡片结构42.1.金融支付系统环境52.1.1.借记应用62.1.2.贷记应用92.1.3.电子现金/小额支付应用92.1.4.准贷记应用92.1.5.电子钱包/存折应用92.1.6.应用选择112.2.社保应用系统环境(ssse)122.2.1.社保应用文件结构122.2.2.文件类型及访问控制132.2.3.密钥文件结构152.3.扩展应用系统环境172.3.1.出租车司机卡应用172.3.2.校园/企业卡应用202.3.3.医疗卫生应用212.3.4.商业会员应用212.3.5.驾驶员卡应用243.命令263.1.external authentication 外部认证263.1.1.定义和范围263.1.2.命令报文263.1.3.命令报文数据域273.1.4.响应报文数据域273.2.get challenge 取随机数273.2.1.定义和范围273.2.2.命令报文273.2.3.命令报文数据域283.2.4.响应报文数据域283.3.internal authentication 内部认证283.3.1.定义和范围283.3.2.命令报文283.3.3.命令报文数据域293.3.4.响应报文数据域293.4.read binary 读二进制文件303.4.1.定义和范围303.4.2.命令报文303.4.3.命令报文数据域303.4.4.响应报文数据域303.5.read record读记录文件313.5.1.定义和范围313.5.2.命令报文313.5.3.命令报文数据域313.5.4.响应报文数据域323.6.select file 选择文件323.6.1.定义和范围323.6.2.命令报文323.6.3.命令报文数据域323.6.4.响应报文数据域333.7.update binary 更新二进制文件333.7.1.定义和范围333.7.2.命令报文333.7.3.命令报文数据域333.7.4.响应报文数据域333.8.update record 更新记录343.8.1.定义和范围343.8.2.命令报文343.8.3.命令报文数据域353.8.4.响应报文数据域35修订记录361. 设计标准长沙市民卡遵循标准、规范如下: iso/iec 7816-1 / 2 / 3 / 4 iso/iec 14443-1 / 2 / 3 / 4 type a部分 中国金融集成电路(ic)卡规范2.0版本 社会保障(个人)卡规范2. 卡片结构长沙市民卡整体结构规划如下图所示:图 整体结构2.1. 金融支付系统环境金融支付系统环境是符合pboc2.0借/贷记、电子存折/钱包、住房和城乡建设部、交通部标准应用的入口。金融支付系统环境分为2种入口形式分别是:标准pboc入口和qpboc入口。其中通过标准pboc入口选择其下的借/贷记应用将执行标准借/贷记交易流程;通过qpboc入口选择其下的借/贷记应用将执行qpboc交易流程,内部结构如图所示:图 金融支付系统环境结构2.1.1. 借记应用借记应用卡结构如下:图 借记应用卡结构sfi=01记录1:(2磁道等价数据)tlv57up to 192磁道等价数据5f202-26持卡人姓名9f1f可变1磁道自定义数据9f61持卡人证件号9f62持卡人证件类型记录2:(数据认证数据)tlv90128(设)发卡行公钥证书记录3:tlv9f32发卡行公钥指数92可变发卡行公钥余项8f1认证中心公钥索引sfi=02 标准借记贷记记录1:(卡片风险管理数据)tlv5f243应用失效日期5a可变应用主账号(pan)5f341应用pan序列号9f072应用使用控制8e可变持卡人验证方法(cvm)列表9f0d5发卡行行为码(iac)默认9f0e5发卡行行为码(iac)拒绝9f0f5发卡行行为码(iac)联机5f282发卡行国家代码记录2:(数据认证数据)tlv93128(设)签名的静态认证数据记录3:(签名的静态认证数据)tlv9f46128(设)icc公钥证书记录4:(icc公钥数据)tlv9f471或3icc公钥指数9f48可变icc钥余项9f49可变ddol9f4a1静态签名数据列表(只包含82数据元)sfi=03 基于借记贷记的电子现金记录1:(卡片风险管理数据)tlv5f243应用失效日期5a可变应用主账号(pan)5f341应用pan序列号9f072应用使用控制8e可变持卡人验证方法(cvm)列表9f0d5发卡行行为码(iac)默认9f0e5发卡行行为码(iac)拒绝9f0f5发卡行行为码(iac)联机5f282发卡行国家代码记录1:(数据认证数据)tlv93128(设)签名的静态认证数据记录2:(签名的静态认证数据)tlv9f46128(设)icc公钥证书记录3:(icc公钥数据)tlv9f471或3icc公钥指数9f48可变icc公钥余项9f49可变ddol9f4a1静态签名数据列表(只包含82数据元)sfi=04记录1:(终端频度检查卡片数据)tlv9f141连续脱机交易下限(终端频度检查)9f231连续脱机交易上限(终端频度检查)记录2:(卡片风险管理数据)sfi=4 rec2tlv8c可变cdol18d可变cdol29f0b可变持卡人姓名扩展(27-45)5f302服务码9f082应用版本号sfi=05记录3:(借记贷记不存在)tlv9f74sfi=07记录1:(借记贷记不存在)tlv9f4b9f5d记录2:(借记贷记不存在)tlv9f5d注:红色字体为电子现金和标准借记贷记的区别数据。2.1.2. 贷记应用卡结构与借记应用相同,2.1.3. 电子现金/小额支付应用卡结构与借记应用相同,2.1.4. 准贷记应用卡结构与借记应用相同,2.1.5. 电子钱包/存折应用电子钱包/存折应用结构如下所示:图 电子存折/钱包应用结构表 公共应用基本数据文件文件标识(sfi)0x15文件类型透明文件大小30文件存取控制读 = 自由改写 = 需要安全信息字节数据元长度1-8发卡方标识89应用类型标识110发卡方应用版本111-20应用序列号1021-24应用启用日期425-28应用有效日期429-30发卡方自定义fci数据2表 持卡人基本数据文件文件标识(sfi)22 (十进制)文件类型透明文件大小55文件存取控制读 = 自由改写 = 需要安全信息字节数据元长度1卡类型标识12本行职工标识13-22持卡人姓名2023-54持卡人证件号码3255持卡人证件类型1表 交易明细文件文件标识(sfi)24(十进制)文件类型循环记录文件文件存取控制读= pin保护改写=不允许记录大小23字节数据元长度1-2ed或ep联机或脱机交易序号23-5透支限额36-9交易金额410交易类型标识111-16终端机编号617-20交易日期(终端)421-23交易时间(终端)3表 内部数据元数据元长度ed余额4ed脱机交易序号2ed联机交易序号2透支限额3ep余额3ep脱机交易序号2ep联机交易序号2密钥版本号(dpk)1密钥版本号(dtk)1密钥版本号(dlk)1密钥版本号(dulk)1密钥版本号(duk)1算法标识(dpk)1算法标识(dtk)1算法标识(dlk)1算法标识(dulk)1算法标识(duk)1表 密钥文件结构类型索引版本算法密钥值功能说明dpk010100消费020100dlk010100圈存020100dtk000100tac计算dpuk000100pin解锁drpk000100解锁pindamk000100应用维护密钥dulk010100圈提020100duk010100更新透支限额0201002.1.6. 应用选择为保证卡片的通用性,对卡上应用的选择统一使用应用标识符(aid,application identification)选择。采用pboc2.0借/贷记、小额支付功能进行消费需按照如下流程进行应用的选择: 借记/贷记消费:1) 选择支付系统环境pse(1pay.sys.ddf01);2) 选择借记(a000000333010101)或贷记(a000000333010101)应用;3) 完成借/贷记交易。 电子现金小额消费:1) 选择支付系统环境pse(1pay.sys.ddf01);2) 选择借记(a000000333010101)或贷记(a000000333010101)或小额支付(a000000333010106)应用;3) 完成电子现金小额消费交易。 qpboc小额支付消费:1) 选择支付系统环境ppse(2pay.sys.ddf01);2) 选择借记(a000000333010101)或贷记(a000000333010101)或小额支付(a000000333010106)应用;3) 完成qpboc小额消费交易。2.2. 社保应用系统环境(ssse)2.2.1. 社保应用文件结构社保应用卡片结构如下所示:图 社保应用卡片结构2.2.2. 文件类型及访问控制社保应用系统环境:aid=7378312e73682ec9e7bbe1b1a3d5cf目录文件sfi=1e;选择ddf后,返回6118或611e文件定义文件标识符短文件标识符读控制写控制文件结构数据空间发卡机构数据文件ef0505无ukmf变长记录40持卡人的基本信息ef0606无ukmf变长记录45指纹数据文件ef0707无ukmf透明300公共应用数据区:fid= “df01”;aid= “选择该应用后,返回610a文件定义文件标识符短文件标识符读控制写控制文件结构数据空间户籍信息文件ef0505pinuk1df01变长记录57通讯信息文件ef0606pinuk4df01变长记录6a个人状况信息文件ef0707pin或uk2df01uk2df01定长记录03*02婚姻状况信息文件ef0808pinuk3df01变长记录03就业单位信息文件ef0909pin或uk2df01uk2df01变长记录5d工资信息文件ef0a0apinuk5df01定长记录06*03照片文件ef0b0b无uk2df01透明1000就业与失业数据区:fid= “df02”; aid= “选择该应用后,返回610a文件定义文件标识符短文件标识符读控制写控制文件结构数据空间职业和专业技能文件ef0505pinuk1df02变长记录af就业与失业信息文件ef0606pin或uk2df02uk2df02变长记录2d就业记录文件ef0707pin或 uk3df02uk3df02循环记录55 * 04农村流动劳动力的就业卡信息文件ef0808pin或uk4df02uk4df02变长记录5c农村流动劳动力的就业证信息文件ef0909pin或uk5df02uk5df02变长记录62社会保险数据区:fid= “df03”; aid= “选择该应用后,返回610a文件定义文件标识符短文件标识符读控制写控制文件结构数据空间失业保险信息文件ef0505pin&rk2df03uk1df03变长记录2c丧失劳动能力鉴定信息文件ef0606pinuk2df03变长记录d6养老保险信息文件ef0707pin&rk1df03uk3df03变长记录2f医疗保险数据区:fid= “df04”; aid= “选择该应用后,返回610a 文件定义文件标识符短文件标识符读控制写控制文件结构数据空间医疗保险基本信息文件ef0505pinuk1df04变长记录128医疗保险个人帐户信息文件(联网处理方式下存在)ef0606pin&rk1df04uk2df04定长记录06*03医疗保险交易明细文件(脱网处理方式下存在)ef0808pin不允许改写循环1c*0a注1:“数据空间”的大小是指测试中所用的有效数据的大小,对线性记录文件,该数据为tlv格式的文件应根据自己的需要确定实际的文件大小。注2:a * b格式表示数据空间由长度为a的b条记录组成。2.2.3. 密钥文件结构社保应用密钥文件结构如下所示:密钥密钥索引密钥版本密钥值社保应用系统环境irk00/16字节密钥puk02/16字节密钥stk03/8字节密钥bk04/16字节密钥ukmf05/16字节密钥pinmf00/28字节pin公共应用数据区stkdf0101/8字节密钥uk1df01020116字节密钥uk1df01020216字节密钥uk1df01020316字节密钥uk2df01030216字节密钥uk2df01030316字节密钥uk2df01030416字节密钥uk3df01040316字节密钥uk3df01040416字节密钥uk3df01040516字节密钥uk4df01050416字节密钥uk4df01050516字节密钥uk4df01050616字节密钥uk5df01060516字节密钥uk5df01060616字节密钥uk5df01060716字节密钥就业与失业数据区stkdf0201/8字节密钥uk1df0202/16字节密钥uk2df0203/16字节密钥uk3df0204/16字节密钥uk4df0205/16字节密钥uk5df0206/16字节密钥社会保险数据区stkdf0301/8字节密钥lkdf0302/16字节密钥uk1df0303/16字节密钥uk2df0304/16字节密钥uk3df0305/16字节密钥rk1df0306/16字节密钥rk2df0307/16字节密钥医疗保险数据区stkdf0401/8字节密钥lkdf04020116字节密钥lkdf04020216字节密钥lkdf04020316字节密钥uk1df04030116字节密钥uk1df04030216字节密钥uk1df04030316字节密钥uk2df04040116字节密钥uk2df04040416字节密钥uk2df04040516字节密钥dlk df04050116字节密钥dlk df04090216字节密钥dlk df040b0316字节密钥dpk df04060116字节密钥dpk df040a0216字节密钥dpk df040c0316字节密钥dtk df0407/16字节密钥dskdf04010116字节密钥dskdf04010216字节密钥dskdf04010316字节密钥rk1df04080116字节密钥rk1df04080216字节密钥rk1df04080316字节密钥2.3. 扩展应用系统环境扩展应用系统环境结构如下图所示:图 应用系统环境结构2.3.1. 出租车司机卡应用出租车司机卡应用结构如下:图 出租车司机卡应用表 持卡人基本数据文件文件标识符fid=0x0001,sfi=0x01文件类型透明二进制文件文件大小存取控制读=自由,改写=外部认证dek1安全报文字节数据元长度1版本号1217发卡机构161827驾驶员卡卡号102843驾驶员卡类型1644银行卡类型14560银行卡号166176驾照号167786车牌号108794持卡人姓名1895持卡人性别196107档案号12108110行政区划3111117准驾车型6118121发卡日期4112115有效期至4116驾驶证状态1117当前记分1表 卡片状态文件文件标识符fid=0x0002,sfi=0x02文件类型透明二进制文件文件大小存取控制读=自由,改写=外部认证dek2字节数据元长度1版本号12卡片状态13乘车记录数147最近上传日期4810最近上传时间311180校验和170卡片状态:1:已完成记录下载;0:已完成记录上传;表 乘车记录数据文件文件标识符fid=0x0003,sfi=0x03文件类型循环定长记录文件文件大小100条170记录长存取控制读=自由,改写=外部认证dek2记录号数据元长度n乘车记录(最早)170n-1乘车记录1702乘车记录1701乘车记录(最近)170注1:数据填充规则,当实际数据长度小于数据元长度(如:姓名)时剩余部分以0xff填充。如数据项不存在以0x00填充。注2:校验和=乘车记录1 xor 乘车记录2 xor 乘车记录n,xor表示逻辑异或。注3:乘车记录文件为循环记录文件,最近添加的记录(最近一次乘车)为第一条记录。当添加记录达到文件允许的最大容量时,新添加的记录将更新最早写入的记录。卡片完成数据上传,系统在结算完毕后,将金额打入卡片的主帐户中。2.3.2. 校园/企业卡应用校园/企业卡应用结构如下:图 校园/企业卡结构表 持卡人基本数据文件文件标识符fid=0x0001,sfi=0x01文件类型透明二进制文件文件大小存取控制读=自由,改写=外部认证dek1安全报文字节数据元长度1版本号1211学校编号101241学校名称3042卡类型14358持卡人卡号165976持卡人姓名1877持卡人性别17881出生年月48285发卡日期48689有效期至4表 注册信息数据文件文件标识符fid=0x0002,sfi=0x02文件类型透明二进制文件文件大小存取控制读=自由,改写=外部认证dek2安全报文字节数据元长度1版本号125注册年度146注册状态1710注册年度2411注册状态11215注册年度3416注册状态11720注册年度3421注册状态1注:数据填充规则,当实际数据长度小于数据元长度(如:姓名)时剩余部分以0xff填充。如数据项不存在以0x00填充。2.3.3. 医疗卫生应用医疗卫生应用暂空。2.3.4. 商业会员应用商业会员应用结构如下:图 商业会员卡结构表 持卡人基本数据文件文件标识符fid=0x0001,sfi=0x01文件类型透明二进制文件文件大小存取控制读=自由,改写=外部认证dek1安全报文字节数据元长度1版本号1217卡号161840保留23注1:数据填充规则,当实际数据长度小于数据元长度(如:姓名)时剩余部分以0xff填充。如数据项不存在以0x00填充。读卡指令(read binary)、写卡指令(update binary)、内部认证(internal authentication)、外部认证(external authentication)可参见第3章。写卡过程:写卡操作在需要修改卡内数据(如:保留部分)过程中会用到。为保护数据的安全性,要求只有通过外部认证获取相应权限后才能改写文件中的内容(外部认证指令可参见第3章 命令)。图 写卡流程读卡过程:卡片在使用过程中需要先通过内部认证鉴别卡片的真伪后再读取卡内数据(外部认证指令可参见第3章 命令)。图 读卡流程发卡过程:发卡过程需要配套的密钥管理系统,具体流程如下:图 发卡流程2.3.5. 驾驶员卡应用驾驶员卡应用结构如下:图 驾驶员应用卡结构表 持卡人基本数据文件文件标识符fid=0x0001,sfi=0x01文件类型透明二进制文件文件大小存取控制读=自由,改写=外部认证dek1安全报文字节数据元长度1版本号1217发卡机构161827驾驶员卡卡号102843驾驶员卡类型1644银行卡类型14560银行卡号166176驾照号167784持卡人姓名1885持卡人性别18697档案号1298100行政区划3101107准驾车型6108111发卡日期4112115有效期至4116驾驶证状态1117当前记分1表 罚没记录数据文件文件标识符fid=0x0002,sfi=0x02文件类型透明二进制文件文件大小存取控制读=自由,改写=外部认证dek2安全报文字节数据元长度1版本号12卡片状态13罚没记录数1注:数据填充规则,当实际数据长度小于数据元长度(如:姓名)时剩余部分以0xff填充。如数据项不存在以0x00填充。3. 命令长沙市民卡应用指令集应遵循相关国际标准、行业标准(参见第1章),对于扩展应用所需要的而在标准中未明确规定的指令应符合本章要求。3.1. external authentication 外部认证3.1.1. 定义和范围external authentication命令基于对称密钥算法用于提高安全权限以便满足某些操作的权限要求。认证流程为:先通过getchallenge命令从卡片中取得随机数,用认证密钥对该随机数加密,并将密文作为命令报文数据域发送到卡中。如认证成功则提高权限。不成功的认证会丢失卡片权限。3.1.2. 命令报文external authentication命令报文如下:代码值cla00ins82p100p2密钥索引lc08data发卡方认证数据le不存在p2参数说明b8b7b6b5b4b3b2b1含义0xxxxxxx全局密钥标识1xxxxxxx局部密钥标识3.1.3. 命令报文数据域命令报文数据域中包含8字节验证数据,验证流程如下:终端方向卡片用get challenge取8字节随机数卡片内部产生随机数rndicc卡片用指定的外部认证密钥对rndicc进行加密运算,产生鉴别数据d2,后比较d2和d1,即:1)d2 = 3des(key,rndicc)2)d1 ?= d23.1.4. 响应报文数据域无。3.2. get challenge 取随机数3.2.1. 定义和范围get challenge命令请求一个用于安全相关过程(例如:安全报文)的随机数。该随机数只能用于下一条指令,无论下一条指令是否使用了该随机数,该随机数都将立即失效。3.2.2. 命令报文get challenge命令报文如下:代码值cla00ins84p100p200lc不存在le不存在le04或083.2.3. 命令报文数据域命令报文数据域不存在。3.2.4. 响应报文数据域le字节随机数。当取4字节随机数而应用所采用的随机因子为8字节时,在4字节随机数后填充4个字节0x00组成8字节随机因子。3.3. internal authentication 内部认证3.3.1. 定义和范围internal authentication命令提供了利用接口设备发来的随机数和自身存储的相关密钥进行数据认证的功能。3.3.2. 命令报文internal authentication命令报文如下:代码值cla00ins88p100:加密01:解密02:计算mac p2密钥索引lc认证原始数据长度data认证原始数据le卡片鉴别数据长度p2参数说明b8b7b6b5b4b3b2b1含义0xxxxxxx全局密钥标识1xxxxxxx局部密钥标识3.3.3. 命令报文数据域命令报文数据域的内容是认证原始数据。注1: p1=00,表示进行加密运算; p1=01,表示进行解密运算; p1=02,表示进行mac运算;注2: 卡内自动对待认证数据做数据填充,不需要在外部做数据填充。数据填充的规则参照pboc所规定的数据填充规则。 如果是加密:把待加密的数据分解成8字节一个的数据块,最后(或唯一)的数据块长度必须是8字节,如果不足8字节,则右补“800000.”,直到长度补足8字节。 对于mac运算,固定把“0000000000000000”作为8字节的初始值。然后把“0000000000000000”+待计算mac的数据形成数据块。将数据块分解成8字节为单位的数据块;如果最后的数据块长度是8字节的话,则右补“8000000000000000”(8字节)。 如果最后的数据块长度不足8字节的话,则右补“800000.”,直到长度补足8字节。3.3.4. 响应报文数据域命令报文数据域的内容是卡片计算的鉴别数据。3.4. read binary 读二进制文件3.4.1. 定义和范围read binary命令用于读取二进制文件的内容(或部分内容)。3.4.2. 命令报文read binary命令报文如下:代码值cla00insb0p1参见p1 p2参数说明p2参见p1 p2参数说明lc不存在data不存在le要读取的数据长度p1、p2参数说明:p1p2说明b7b6b5b4b3b2b1b0100短文件标识符(sfi)文件偏移量更新sfi指定的文件0文件偏移量更新当前文件3.4.3. 命令报文数据域命令报文数据域不存在3.4.4. 响应报文数据域要读取的le长度的数据。当le的值为零时,只要文件的最大长度在256之内,则其全部字节将被读出。3.5. read record读记录文件3.5.1. 定义和范围read record命令用于读取记录文件的内容,ic卡的响应由回送记录组成。3.5.2. 命令报文read record命令报文如下:代码值cla00insb2p1记录号或记录标识符p2参见p2参数说明le要读取的数据长度p2参数说明:b7b6b5b4b3b2b1b0说明00000读取当前文件xxxxx短文件标识符100按记录号,读p1指定的记录101按记录号,从p1指定的记录读到最后一条记录110按记录号,从最后一条读到p1指定的记录000按记录标识符,读p1指定的记录的第一条记录001按记录标识符,读p1指定的记录的最后一条记录010按记录标识符,读p1指定的记录的下一条记录011按记录标识符,读p1指定的记录的上一条记录3.5.3. 命令报文数据域命令报文数据域不存在。3.5.4. 响应报文数据域响应报文数据域由读取的记录组成。3.6. select file 选择文件3.6.1. 定义和范围select file命令通过文件名、文件标识符或选择下一个应用来选择ic卡中mf、ddf、adf或ef。当选择对象为mf、ddf或adf时,ic卡的响应报文可由回送文件控制信息fci组成。被选中的df为当前df,被选中的ef为当前ef。3.6.2. 命令报文select file命令报文如下:代码值cla00insa4p1参见p1参数说明p200:第一个或仅有的一个02:下一个(只针对通过文件名选择)lcxxdata文件标识符(fid)或文件名(df名)p1参数说明:b7b6b5b4b3b2b1b0说明00000xxx文件选择方式010通过文件标识符选择ef100通过文件名选择mf或df注:允许在任何环境下通过文件标识符(fid)3f00选择mf,通过文件标识符选择df时只能选择当前df的子df、兄弟df或父df。3.6.3.

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论