一、基本介绍
磁条卡是以液体磁性材料或磁条为信息载体,将液体磁性材料涂覆在卡片上(如存折),或将宽约614mm的磁条压贴在卡片上(如常见的银联卡)。
磁卡上的3个磁道一般都是使用"位"(bit)方式来编码的,根据数据所在的磁道不同,由5个bit或7个bit组成一个字节,每个字节最高位为奇偶校验位,国标GB15120中规定磁卡采用奇校验,即保证每个字节中的"1"的个数为奇数个。磁卡数据中的起始、结束和纵向冗余校验字节本身都有奇偶校验。(奇偶校验与磁道数据解析无关,与刷卡器读磁条卡相关)
二、磁条卡分类
磁条卡按技术可以分为以下两类:
- 高抗磁卡:具有较高的抗消磁性,适用于安全性较高的场合如信用卡及ID卡等。高抗磁条一般为2750,3500和4000 OE(奥斯特),三个磁道皆可写入。
- 低抗磁卡:使用普通抗消磁性磁条,主要用于门票、会员卡及其它普通场合。低抗磁条一般为300和650 OE(奥斯特),只能写入二磁道,一和三磁道无法写入。
备注1:抗磁简单讲,是用来衡量磁条抵抗因受外界磁场影响而造成数据损失的能力,又称抗消磁性。
备注2:低抗磁条卡刷卡机只支持低抗磁卡,高抗磁条卡刷卡机则兼容两者。
备注3:通常,低抗磁条刷卡机无法读取一磁道数据。
三、磁卡使用规范
所有银行磁条卡必须使用第2磁道。第3磁道是否使用由各发卡行自行规定。第1磁道暂不使用,保留将来酌情使用。
金融模块进行处理时,必须同时读入并上送第2、3磁道信息。第2磁道作为交换磁道,各银行在进行识别和信息交换时以第2磁道为准。
四、磁道数据格式说明
1、第一磁道
(1) 简单介绍
第1磁道数据编码最大记录长度为79个字符,可记录数字(0-9)、字母(A-Z)和其他一些符号(如括号、分隔符等)。第1磁道为只读磁道。一般记录了磁卡的使用类型、范围等一些标记性、说明性的信息。例如银行用卡中,第1磁道记录了用户的姓名,卡的有效使用期限以及其他的一些标记信息。
(2) 数据格式说明
序号 | 字段 | 动态(D)/静态(S) | 字段长度 | 备注 |
---|---|---|---|---|
1 | 起始标志 | S | 1 | 标明数据开始,为"%" |
2 | 格式代码 | S | 2 | 标明数据格式类型,为"99" |
3 | 主账号 | S | 13~19 | 标明可处理交易的发卡行和持卡者 |
4 | 字段分隔符 | S | 1 | 标明前一字段的结束,为"^" |
5 | 姓名 | S | 2~26 | 标明持卡者的姓氏、名字、称谓等 |
6 | 字段分隔符 | S | 1 | “^” |
7 | 失效日期 | S | 4 | 表示卡失效的日期 |
8 | 服务代码 | S | 3 | 标明银行卡可使用的服务类型 |
9 | 附加数据 | S | 可变 | 容纳对发卡行有意义的任意数据 |
10 | 结束标志 | S | 1 | 标明磁道上有意义数据的结束,为"?" |
11 | 纵向冗余校验位 | S | 1 | 用于数据校验 |
2、第二磁道
(1) 简单介绍
第2磁道数据编码最大记录长度为40个字符,只可记录数字(0-9)。第2磁道为只读磁道。一般用以记录用户的帐户信息、款项信息等等,当然还有一些银行所要求的特殊信息等。
(2) 数据格式说明
序号 | 字段 | 动态(D)/静态(S) | 字段长度 | 备注 |
---|---|---|---|---|
1 | 起始标志 | S | 1 | 标明数据开始,为";" |
2 | 主账号 | S | 13~19 | 标明可处理交易的发卡行和持卡者 |
3 | 字段分隔符 | S | 1 | 标明前一字段的结束,为"=" |
4 | 失效日期 | S | 4 | 表示卡失效的日期 |
5 | 服务代码 | S | 3 | 标明银行卡可使用的服务类型 |
6 | 附加数据 | S | 可变 | 容纳对发卡行有意义的任意数据 |
7 | 结束标志 | S | 1 | 标明磁道上有意义数据的结束,为"?" |
8 | 纵向冗余校验位 | S | 1 | 用于数据校验 |
3、第三磁道
(1) 简单介绍
第3磁道数据编码最大记录长度为107个字符,只可记录数字(0-9)。第3磁道为读写磁道。一般用以记录用户的帐户信息、款项信息等等,当然还有一些银行所要求的特殊信息等。
(2) 数据格式说明
序号 | 字段 | 动态(D)/静态(S) | 字段长度 | 备注 |
---|---|---|---|---|
1 | 起始标志 | S | 1 | 标明数据开始,为";" |
2 | 格式代码 | S | 2 | 标明数据格式类型,为"99" |
3 | 主账号 | S | 13~19 | 标明可处理交易的发卡行和持卡者 |
4 | 字段分隔符 | S | 1 | 标明前一字段的结束,为"=" |
5 | 国家代码 | S | 3 | 标明可以处理由银行卡产生交易的国家,为"156" |
6 | 货币代码 | S | 3 | 标明结算时使用的货币类型:3位数字 |
7 | 金额指数 | S | 1 | 决定周期授权量与本周期余额两字段的基值 |
8 | 周期授权量 | S | 4 | 表示在一个周期内累积交易不能超过的金额,由发卡机构自定授权量 |
9 | 本周期余额 | D | 4 | 当前周期内的可用金额 |
10 | 周期开始日期 | D | 4 | YDDD形式的4位数字,其中Y表示年度最后一个有效字符,DDD表示年度内天数的顺序号,其范围为001-366 |
11 | 周期长度 | S | 2 | 表示所有交易的累积值不能超过授权量的时间期限 |
12 | 密码重输次数 | D | 1 | 记录允许未成功输入密码的次数 |
13 | 个人授权控制参数 | D | 6 | 提供一种可选择的安全性能 |
14 | 交换控制符 | S | 1 | 标明银行卡适用于交换的范围 |
15 | PAN的TA和SR | S | 2 | 定义主账号(PAN)的账户类型和可提供的服务 |
16 | SAN-1的TA和SR | S | 2 | 定义第一辅助账号(SAN-1)的账户类型和可提供的服务 |
17 | SAN-2的TA和SR | S | 2 | 定义第二辅助账号(SAN-2)的账户类型和可提供的服务 |
18 | 失效日期 | S | 4 | 表示卡失效的日期 |
19 | 卡序列号 | S | 1 | 区别具有相同主账号(PAN)的卡,由发卡机构定义,在最初发卡或卡失效后换卡时赋值。 |
20 | 卡保密号 | D | 1 | 字段分隔符(FS),用于建立磁条所含数据与物理卡的联系 |
21 | SAN-1 | S | 最大12 | 标明第一个可选用的辅助账号 |
22 | 字段分隔符 | S | 1 | “=” |
23 | SAN-2 | S | 最大12 | 标明第二个可选用的辅助账户 |
24 | 字段分隔符 | S | 1 | “=” |
25 | 传递标志 | S | 1 | 表明交换信息是否包含附加数据的内容 |
26 | 加密校验数 | S | 6 | 通过使用加密公式提供一种校验该磁道上数据完整性的方法。 |
27 | 附加数据 | D | 可变 | 容纳对发卡行有意义的任意数据 |
28 | 结束标志 | S | 1 | “?” |
29 | 纵向冗余校验位 | D | 1 | 用于数据校验 |
五、具体字段说明
1、起始标志(STX)
用途:标明数据的开始。
格式:1个字符。
内容:第1磁道为"%",第2、3磁道为";"。
2、格式代码(FC)
用途:标明该磁道的数据格式类型。
格式:2位数字。
内容:“99”。
3、主账号(PAN)
用途:标明可以处理交易的发卡行和持卡人。
格式:13至19个字符。
内容:由发卡行标识代码、自定义位和校验位组成,其中发卡行标识代码(BIN)由6位数字表示,第一位固定为"9",后5位由BIN注册管理机构分配;自定义为由6-12位数字组成;校验位根据校验位前的数字计算得到,通过模10"隔位乘2加"校验数算法计算得到,详见附录1 JRT 0008-2000 银行卡发卡行标识代码及卡号。
4、字段分隔符(FS)
用途:标明前一字段的结束。
格式:1个字符。
内容:第1磁道为"^",第2、3磁道为"="。
5、姓名(NM)
用途:标明持卡者的姓氏、名字、称谓等。
格式:2至26个字符。
内容:由姓氏、姓氏分隔符、名字或首写字母、分隔符(如需要时)、中间名或首写字母、结尾圆点(当其后为称谓时)、称谓组成。最小编码数据应为一个字母字符(如姓氏)加上姓氏分隔符。
6、失效日期(ED)
用途:表示卡失效的日期。
格式:YYMM形式的4位数字,其中YY表示卡失效年度的后2个字符;MM表示年度内月份的顺序号,规定在该月份的最后一天后,卡失效。当YYMM为0000时,表示该卡无失效日期。
7、服务代码(SC)
用途:标明银行卡可使用的服务类型。
格式:3位数字,其中第一位为交换控制符。
内容:交换控制符可在2-9间选用,服务代码的后两位在下列区域中分配:00-49由国际标准化组织分配和发布;50-59由国内标准化相关组织分配和发布;60-99由发卡行酌情使用。目前后两位已分配的服务代码如下图:
8、附加数据
用途:容纳对银行卡发行者有意义的任意数据。
格式:可变。但应保证该磁道字符总数不得超过最大编码长度。
内容:具体内容由发卡行自定。
9、结束标记(ETX)
用途:标明磁道上有意义数据的结束。
格式:1位字符。
内容:"?"。
10、纵向冗余校验符(LRC)
用途:用于对磁道数据进行校验。
格式:1个字符。
内容:LRC字符中的每一位(不包括奇偶校验位)的值,使磁道上所有字符相应位位置上的编码为"1"的总数(包括起始符、数据、结束符和LRC字符)为偶数。详见附录2 GB/T15120.2-2012与附录5 lrc检验的java实现。
11、国家代码
用途:标明可以处理由银行卡产生交易的国家。
格式:3位数字。
内容:“156”(见GB/T/ 2659)。
12、货币代码
用途:标明结算时使用的货币类型。
格式:3位数字。
内容:见GB/T 12406。
13、金额指数
用途:决定周期授权量与本周期余额两字段的基值。
格式:1位数字。
内容:表示周期授权量与本周期余额两字段必须乘以10的一个幂指数的值,以此表示货币金额。
14、周期授权量
用途:表示在一个周期内累积交易不能超过的金额。
格式:4位数字。
内容:由发卡行自定授权量。
15、本周期余额
用途:表示当前周期内的可用金额。
格式:4位数字。
内容:在新的周期开始时,该字段等于周期授权量,消费后逐次递减,余额存本字段。
16、周期开始日期
用途:表示一个新周期开始的日期。
格式:YDDD形式的4位数字,其中Y表示年度最后一个有效字符,DDD表示年度内天数的顺序号,其范围为001-366。
17、周期长度
用途:表示所有交易的累积值不能超过授权量的时间期限。
格式:2位数字。
内容:如下图
18、密码重输次数
用途:记录允许未成功输入密码的次数。
格式:1位数字。
内容:该字段在发卡和正确输入密码时被赋初值,初值由各发卡行自定义;当输入密码不正确时该字段减1。
19、个人标识代码控制参数(PINPARM)
用途:提供一种可选择的安全性能。
格式:6位数字。
内容:保密算法由各发卡行自定。
20、交换控制符
用途:标明银行卡适用于交换的范围。
格式:1位数字。
内容:如下图
21、主账号的账户类型(TA)和服务约束(SR)
用途:定义主账号(PAN)的账户类型和可提供的服务。
格式:2位数字。
内容:第1位数字为账户类型,其中0–主账号(PAN)未在第3磁道上编码
1–储蓄账户
2–现金或支票账户
3–信用卡账户
4–适用于多种账户类型的通用账户
5–付息现金或支票账户
6~8–保留待分配
9–发卡行内部使用,但不能交换第2位数字为服务约束,其中
0–无约束
1–无现金服务
2–无销售点(POS)服务
3–无现金和销售点(POS)服务
4–要求肯定的授权
5~7–保留待分配
8~9–发卡行内部使用
22、第一辅助账号的账户类型和服务约束
用途:同【21】的定义一致,但此字段内容涉及第一辅助账号(SAN-1)中包含的账号。
格式:2位数字。
内容:同【21】。
23、第二辅助账号的账户类型和服务约束
用途:同【21】的定义一致,但此字段内容涉及第二辅助账号(SAN-2)中包含的账号。
格式:2位数字。
内容:同【21】。
24、卡序列号
用途:区别具有相同主账号(PAN)的卡(同时或连续发行)。
格式:1位数字。
内容:由发卡行定义,在最初发卡或卡失效后换卡时赋值。每次增加卡或发新卡时,该字段加1。
25、卡保密号
用途:用于建立磁条所含数据与物理卡的联系。
格式:字段分隔符(FS)。
内容:FS–表示卡保密号字段不在第3磁道上编码。
26、第一辅助账号(SAN-1)
用途:标明第一个可选用的辅助账号。
格式:最大12个字符。
内容:由发卡机构酌情使用。长度为0时,表示不使用第一辅助账号。
27、第二辅助账号(SAN-2)
用途:标明第二个可选用的辅助账号。
格式:最大12个字符。
内容:由发卡机构酌情使用。长度为0时,表示不使用第二辅助账号。
28、传递标志
用途:提供可减少传送交换信息长度的功能。它表明交换信息是否包含附加数据的内容。
格式:1个字符。
内容:0表示包括所有附加数据;1表示不包括附加数据;2~9无效。
29、加密校验数(CCD)
用途:通过使用加密公式提供一种校验该磁道数据上数据完整性的方法。
格式:6个字符。
内容:加密方法由各发卡行自定。
六、磁道数据解析例子
1、第2磁道
例子:
62285600000000276=0000520260408650000
根据第2磁道数据格式,可将上述数据分解成:
(主账号=62285600000000276)
(=)
(失效日期=0000)此卡无失效日期
(服务代码=520)国内使用,必须获得发卡行或发卡行代理的联机授权,服务领域无限制,要求输入PIN。
(附加数据=260408650000)
2、第3磁道
例子:
9962285600000000276=1561560500050000000013341865514000000001=00000000273=000000018=000000026040100018
根据第3磁道数据格式,可将上述数据分解成:
(格式代码=99)
(主账号=62285600000000276)
(=)
(国家代码=156)中国
(货币代码=156)CNY-人民币元
(金额指数=0)
(周期授权量=5000)
(本周期余额=5000)
(周期开始日期=0000)
(周期长度=01)1天
(密码重输次数=3)
(个人授权控制参数=341865)
(交换控制符=5)限制在国内系统内交换
(PAN的TA和SR=14)储蓄账户,需要肯定的授权
(SAN-1的TA和SR=00)无编码
(SAN-1的TA和SR=00)无编码
(失效日期=0000)无失效日期
(卡序列号=1)
(卡保密号为=)
(SAN-1=00000000273)
(=)
(SAN-2=000000018)
(=)
(传递标志=0)包括所有附加信息
(加密校验数=000000)
(附加数据=26040100018)