智能卡手册

本手册仅包含非接触式智能卡

AID 索引

AID 可能的卡种
325041592E5359532E4444463031 EMV卡、交通联合卡
A00000000386980701 城市一卡通、清华大学校园卡
5041592E535A54 深圳通
4150312E5748435443... 武汉通
5041592E41505059, 5041592E5449434C
岭南通
A000000333010101 银联借记卡
A000000333010102 银联贷记卡(信用卡)
A000000333010103 银联准贷记卡
A000000632010105 交通联合卡电子钱包
A000000632010106 交通联合卡电子现金
A000000003...
VISA
A000000004...
MasterCard
A000000025... American Express
A000000065...
JCB
A000000098...
VISA USA
A000000152...
Discover
A0000006472F0001
FIDO U2F
A00000030800001000
PIV
A0000005272101
OATH Applet
D27600012401...
OpenPGP Card
4A43416C6754657374
JcAlgTest

交通卡

交通卡

数字城市一卡通(City Union)

适用范围

根据 GB/T 31778-2015 《数字城市一卡通互联互通 通用技术要求》的表述,数字城市一卡通适用于互联互通城市间综合交通(公共汽车、地铁、轻轨、轮渡、出租车、公共自行车)、公用事业缴费、风景园林、社区/园区应用、停车场管理等领域应用。

目前,该标准覆盖的城市和项目为:

上海
天津
澳门(特别行政区)
浙江:宁波、绍兴、湖州、台州、舟山、长兴、金华、温州、义乌、嘉兴
江苏:常熟、昆山、淮安、江阴、无锡、南通、泰州、宜兴、太仓、盐城
甘肃:兰州、白银、华亭
江西:南昌、九江、鹰潭、赣州、上饶
湖南:永州、株洲、 湘潭、望城
辽宁:葫芦岛、锦州、抚顺、沈阳、营口、兴城、铁岭、本溪
四川:江油、自贡、西昌、阆中
福建:福州、龙岩、泉州、莆田、晋江
海南:三亚
广东:湛江、珠海
吉林:辽源、松原
新疆:克拉玛依
陕西:榆林、渭南、咸阳、杨凌
河南:驻马店、郑州、南阳、漯河、荥阳、新郑、平顶山
贵州:凯里、遵义、都匀
云南:昆明、大理
湖北:十堰、潜江
安徽:淮南、阜阳
山东:临沂
河北:邯郸

互联互通项目:招商通、全国景区一卡通、无锡灵山、社区有我、北京未来科学城、天津海河游轮

需要指出的是, 以上列出的城市/项目,仅表示该城市/项目使用了由中华人民共和国住房和城乡建设部生成的密钥,并不意味着所发行的卡片可以互通。例如,上海发行的紫色卡,虽然采用了该标准,但仅与江苏、浙江的部分城市互通。

文件目录

 互联互通应用的基本文件目录应至少包括下图中所有文件:

注意:由于标准发布于2015年,对于早期参与到该标准的城市,卡内数据可能不遵守这个规范,但可以保证的是,0x15和0x18文件总是存在,其中0x18里包含了所有类型的交易记录。

密钥类型

密钥名称 密钥代码 密钥标识 分散级别 密钥作用
应用主控子密钥 DACK 00 1 控制应用区内结构添加和删除
应用锁定子密钥 - - 2 应用锁定
应用解锁子密钥 - - 1 应用解锁
文件更新子密钥 - - 1 应用区内有关信息文件的更新保护
复合消费维护密钥 DCPK 01 1 复合消费文件维护
PIN解锁密钥 DPUK 00 2 解锁PIN
PIN重装密钥 DPLK 00 2 重装PIN
消费子密钥 DPK 01~0A 2 共10组密钥
圈存子密钥 DLK 01~02 1 共2组密钥
TAC子密钥 DTK 00 2 消费交易验证

其中,应用锁定子密钥、消费子密钥、TAC子密钥是互通的;其他密钥均由发卡方自行管理。

文件结构

公共应用基本信息文件
SFI 0x15 
文件类型 二进制文件 
文件大小 0x1E 
权限 读=自由  写=SM 
字节 数据元 长度 格式 说明
01~02 发卡方代码 2 BCD  
03~04 城市/项目代码 2 HEX  
05 多算法支持 1 BCD  
06 行业代码 1 BCD  
07~08 预留 2 HEX  
09 互联互通启用标识 1 HEX 0x00为未启用,非0x00为启用
10 应用版本 1 HEX  
11~12 互联互通标识 2 HEX 同城市/项目代码
13~20 用户卡应用序列号 8 HEX  
21~24 应用生效日期(YYYYMMDD) 4 BCD  
25~28 应用失效日期(YYYYMMDD) 4 BCD  
29~30 预留 2 HEX  
复合交易记录文件
SFI 0x17
文件类型 变长记录文件 
文件大小 0xA0 
权限 读=自由  写=SM/复合交易
记录标识 字节 数据元 长度 格式 说明
0x09 01 0x09 1 HEX  
02 复合消费数据长度 1 HEX  
03 复合消费锁定标识 1 HEX 0x00表示允许,非0x00表示禁止
04~48 应用方自定义 45 自定义  
电子钱包本地消费交易明细记录文件
SFI 0x18
文件类型 循环记录文件
记录长度 0x17
权限 读=自由  写=N/A
字节 数据元 长度 格式 说明
01~02 电子钱包消费交易序号 2 HEX  
03~05 预留 3 HEX  
06~09 交易金额 4 HEX  
10 交易类型 1 HEX 0x06表示消费,0x09表示复合消费
11~16 交易终端编号 6 BCD  
17~20 交易日期(YYYYMMDD) 4 BCD  
21~23 交易时间(HHMMSS) 3 BCD  
电子钱包异地消费交易明细记录文件
SFI 0x10
文件类型 循环记录文件
记录长度 0x17
权限 读=自由  写=N/A
字节 数据元 长度 格式 说明
01~02 电子钱包消费交易序号 2 HEX  
03~05 预留 3 HEX  
06~09 交易金额 4 HEX  
10 交易类型 1 HEX 0x06表示消费,0x09表示复合消费
11~16 交易终端编号 6 BCD  
17~20 交易日期(YYYYMMDD) 4 BCD  
21~23 交易时间(HHMMSS) 3 BCD  
电子钱包充值消费交易明细记录文件
SFI 0x1A
文件类型 循环记录文件
记录长度 0x17
权限 读=自由  写=N/A
字节 数据元 长度 格式 说明
01~02 电子钱包充值交易序号 2 HEX  
03~05 预留 3 HEX  
06~09 交易金额 4 HEX  
10 交易类型 1 HEX 0x02
11~16 交易终端编号 6 BCD  
17~20 交易日期(YYYYMMDD) 4 BCD  
21~23 交易时间(HHMMSS) 3 BCD  

其他说明

城市/项目代码表(城市邮编前4位)

城市/项目 代码
上海 2000
天津 3000
招商通  
全国景区一卡通  
无锡灵山  
社区有我  
北京未来科学城 0001
天津海河游轮  
交通卡

北京市政公交一卡通(BMAC)

参考标准 DB11/T 159.2-2015

目录结构

文件结构

发行信息文件(MF)
SFI 0x04 
文件类型 二进制文件 
文件大小 0x3C 
权限 读=自由  写=SM 
字节 数据元 长度 格式 说明
01~08 卡号 8 BCD  
09~24 不详 15 N/A  
25~28 应用生效日期(YYYYMMDD) 4 BCD  
29~32 应用失效日期(YYYYMMDD) 4 BCD  
23~60 不详 28 N/A  
基本信息文件(MF)
SFI 0x05 
文件类型 二进制文件 
文件大小 0x20 
权限 读=自由  写=SM 
字节 数据元 长度 格式 说明
01~03 透支金额 3 HEX  
04~05 累计交易次数 2 HEX  
06~32 不详 27 N/A  
充值记录文件(DF-ID=1001)
SFI 0x13 
文件类型 循环记录 
记录长度 0x17 
记录数量 3
权限 读=自由  写=SM 
字节 数据元 长度 格式 说明
01~03 充值前金额 3 HEX  
04~06 充值后金额 3 HEX  
07~08 不详 2 N/A  
09~11 充值日期 3 BCD YYMMDD
12~17 终端编号 6 HEX  
18~23 不详 6 N/A  
公交过程数据文件(DF-ID=1001)
SFI 0x14 
文件类型 二进制 
文件长度 0x18 
权限 读=自由  写=SM 
字节 数据元 长度 格式 说明
01~06 上车时间 6 BCD YYMMDDhhmmss
07 方向? 1 HEX AB或BA
08~09 不详 2 N/A  
10~11 线路 2 HEX 小端序
12~24 不详 13 N/A  

地铁线路数据

交易终端以300开头的,表示地铁的终端设备。
十六进制表示的第4、5位为地铁线路编号,例如 300040000570 的 04 表示编号。

编号 线路
01 一号线
02 二号线
04 四号线
05 五号线
06 六号线
07 七号线
08 八号线
09 九号线
10 十号线
13 十三号线
14 十四号线
15 十五号线
18 西郊线
88 大兴机场线
93 大兴线
94 昌平线
95 房山线
96 亦庄线
97 八通线
98 首都机场线

 

交通卡

交通联合卡(T-Union)

概况

交通联合卡是由交通部主导的标准,采取电子现金、电子钱包双应用模式。截止2018年7月,已有210个城市市区全部公交线路实现互联互通,13个城市轨道线路实现互联互通,35个城市开通了试运行公交线路,总计覆盖全国2.2万条公交线路、52条轨道线路。

20180709144843_5hljla54qu.jpg

来源:https://www.cttic.cn/info/3171

文件要求

文件可以通过 AID 或 SFI 引用,SFI 的范围如下:

数值 说明
0x1A, 0x1E 发卡基本信息,按标准使用
0x15~0x19 电子现金应用中由机构自定义
0x05~0x08, 0x19 电子钱包应用中由机构自定义
其他 预留

文件结构

变长记录文件(0x1A)的记录见下表:

记录号 记录描述
1 城市轨道应用信息记录
2 公共汽电车应用信息记录
3 城市水上客运应用信息记录
4 出租汽车应用信息记录
5 租赁汽车应用信息记录
6 公共自行车应用信息记录
7 停车收费应用信息记录
8 长途客运应用信息记录
9 轮渡应用信息记录
10 城际铁路应用信息记录
11 民航应用信息记录
12 高速公路收费应用信息记录
13 优惠信息记录
14~18 预留

应用选择

终端通过选择 DF 名称 2PAY.SYS.DDF01,然后根据卡片返回的应用信息和 AID 选择电子现金或电子钱包应用。

电子钱包文件

公共应用信息文件
SFI 0x15 
文件类型 二进制文件 
文件大小 0x1E 
权限 读=自由  写=SM 
字节 数据元 长度 格式 说明
01~08 发卡机构标识 8 HEX  
09 应用类型标识 1 HEX  
10 发卡机构应用版本 1 HEX  
11~20 应用序列号 10 HEX  
21~24 应用生效日期(YYYYMMDD) 4 BCD  
25~28 应用失效日期(YYYYMMDD) 4 BCD  
29~30 发卡机构自定义 FCI 数据 2 HEX  
持卡人基本信息文件
SFI 0x16
文件类型 二进制文件 
文件大小 0x37
权限 读=自由  写=SM 
字节 数据元 长度 格式 说明
01 卡类型标识 1 HEX  
02 本行职工标识 1 HEX  
03~22 持卡人姓名 22 HEX  
23~54 持卡人证件号码 32 HEX  
55 持卡人证件类型 1 HEX  
管理信息文件
SFI 0x17
文件类型 二进制文件 
文件大小 0x3C
权限 读=自由  写=SM 
字节 数据元 长度 格式 说明
01~04 国际代码 4 HEX  
05~06 省级代码 2 HEX  
07~08 城市代码 2 HEX  银联地区码
09~10 互通卡种 2 HEX  
11 卡种类型 1 HEX  
12~60 预留 49 HEX  
交易明细记录文件
SFI 0x18
文件类型 循环记录文件
记录长度 0x17
权限 读=自由  写=N/A
字节 数据元 长度 格式 说明
01~02 电子钱包消费交易序号 2 HEX  
03~05 透支限额 3 HEX  
06~09 交易金额 4 HEX  
10 交易类型 1 HEX 0x06 表示消费,0x09 表示复合消费
11~16 交易终端编号 6 BCD  
17~20 交易日期(YYYYMMDD) 4 BCD  
21~23 交易时间(HHMMSS) 3 BCD  
交通卡

深圳通(Shenzhen Tong)

文件目录

AID: 5041592E535A54

 

文件结构

公共应用基本信息文件
SFI 0x15 
文件类型 二进制文件 
文件大小 0x20 
权限 读=自由  写=SM 
字节 数据元 长度 格式 说明
01~16 不详 16 N/A  
17~20 卡号 4 HEX 小端序
21~24 应用生效日期(YYYYMMDD) 4 BCD  
25~28 应用失效日期(YYYYMMDD) 4 BCD  
29~32 预留 4 HEX  

电子钱包交易明细记录文件

SFI 0x18
文件类型 循环记录文件
记录长度 0x17
权限 读=自由  写=N/A
字节 数据元 长度 格式 说明
01~02 电子钱包交易序号 2 HEX  
03~05 预留 3 HEX  
06~09 交易金额 4 HEX  
10 交易类型 1 HEX 0x09表示消费,0x02表示充值
11~16 交易终端编号 6 BCD  
17~20 交易日期(YYYYMMDD) 4 BCD  
21~23 交易时间(HHMMSS) 3 BCD  


交通卡

八达通

System Code: 0x8008

交通卡

EZ-Link

交通卡

悠游卡

交通卡

Oyster

交通卡

岭南通(Lingnan Pass)

文件结构

公共应用基本信息文件(DF-ID=DDF1)
SFI 0x15 
文件类型 二进制文件 
文件大小 0x58 
权限 读=自由  写=SM 
字节 数据元 长度 格式 说明
01~11 不详 11 N/A  
12~16 卡号 5 BCD  
17~88 不详 62 N/A  

金融卡

金融卡

EMV

金融卡

PBOC 2.0

区域性一卡通

区域性一卡通

新开普一卡通

身份文件

身份文件

电子护照

电子护照遵循国际民航组织(ICAO)Doc9303规范,规范文本发布在:https://www.icao.int/publications/pages/publication.aspx?docnum=9303

其中数据格式部分位于 Part 10: Logical Data Structure (LDS) for Storage of Biometrics and Other Data in the Contactless Integrated Circuit (IC)

目录结构

doc9303.png

文件列表

Data Group EF Name Short File Identifier FID Tag
Common EF.COM 1E 01 1E 60
DG1 EF.DG1 01 01 01 61
DG2 EF.DG2 02 01 02 75
DG3 EF.DG3 03 01 03 63
DG4 EF.DG4 04 01 04 76
DG5 EF.DG5 05 01 05 65
DG6 EF.DG6 06 01 06 66
DG7 EF.DG7 07 01 07 67
DG8 EF.DG8 08 01 08 68
DG9 EF.DG9 09 01 09 69
DG10 EF.DG10 0A 01 0A 6A
DG11 EF.DG11 0B 01 0B 6B
DG12 EF.DG12 0C 01 0C 6C
DG13 EF.DG13 0D 01 0D 6D
DG14 EF.DG14 0E 01 0E 6E
DG15 EF.DG15 0F 01 0F 6F
DG16 EF.DG16 10 01 10 70
Document Security Object EF.SOD 1D 01 1D 77
Common EF.CARDACCESS 1C 01 1C  
Common EF.ATR/INFO      
Common EF.CardSecurity 1D 01 1D  
身份文件

二代居民身份证

中华人民共和国居民身份证是由公安机关签发的用于证明大陆居民身份的证件。二代居民身份证中增加了射频芯片,里面存储了包括照片在内的个人信息,用于机器读取。

机读信息

二代证中存储的机读信息由行业标准 GA/T 490 规定,数据加密后存储在卡片中,读取时需用 SAM 解密。所用加密算法包括SM1[1]

卡片包括如下文件:

机读文字信息文件(256字节)
序号 数据项名称 字节数 标识符 说明
1 姓名 30 xm  
2 性别代码 2 xbdm 符合 GB/T 2261.1 的规定
3 民族代码 4 mzdm 符合 GB/T 3304 的规定
4 出生日期 16 csrq 年月日 YYYYMMDD
5 住址 70 dzmc  
6 公民身份号码 36 gmsfhm 符合 GB 11643 的规定
7 签发机关 30 qfjgmc  
8 有效期起始日期 16 yxqqsrq 居民身份证的有效期截止日期符合 GA/T 2000.16 的规定
9 有效期截止日期 16 yxqjzrq 居民身份证的有效期截止日期符合 GA/T 2000.16 的规定
10 预留区域 36    
机读照片信息文件(1024字节)
序号 数据项名称 字节数 标识符 说明
1 机读相片 1024 jdxp 以二进制数存储的 WLT 格式图片(参考发明专利 CN1779717A)
机读指纹信息文件
序号 数据项名称 字节数 标识符 说明
1 指纹一_指纹特征数据 512 zwy_zwtzsj 第一枚指纹的指纹特征数据,以二进制数存储
2 指纹二_指纹特征数据 512 zwe_zwtzsj 第二枚指纹的指纹特征数据,以二进制数存储
追加住址信息文件
序号 数据项名称 字节数 标识符
1 机读追加住址 1 70 jdzjzz1
2 机读追加住址 2 70 jdzjzz2
3 机读追加住址 3 70 jdzjzz3
4 机读追加住址 4 70 jdzjzz4
卡体管理号文件
序号 数据项名称 字节数 标识符
1 居民身份证专用集成电路序列号 8 jmsfzzyjcdlxlh
2 居民身份证证卡序列号 16 jmsfzzkxlh

通信协议

卡内射频芯片按照 ISO14443-3 Type-B 制式与读卡器通信。与一般 CPU 卡不同,二代证直接在 ISO14443-3 层收发 APDU,不支持 ISO14443-4。

命令 CLA INS P1 P2 Lc Data Le Response
选择文件 00 A4 00 00 02 EF-ID 状态码
读二进制文件 80 B0 偏移量高位 偏移量低位 读取长度 内容+状态码
内部(卡片)认证 00 88 00 42 0A 10字节认证数据 8字节认证响应+状态码
外部(读卡器)认证 00 82 00 42 0A 10字节认证数据 状态码
获取随机数 00 84 00 00 08 8字节随机数+状态码
读芯片序列号 00 36 00 00 08 8字节序列号+状态码

其他

其他

YubiKey

YubiKey 是 Yubico, Inc. 发行的,具有 OTP、TOTP、FIDO 2FA、静态密码、Challenge-Response、PIV、OpenPGP Card 等功能的便携密码学硬件。本文主要描述其智能卡相关功能,即 PIV 与 OpenPGP Card。

YubiKey Neo, YubiKey 5 NFC 具有 NFC 功能,其余的 YubiKey 均通过  USB 与主机进行通信。

详细的访问方式如下表所示:

功能 接口 AID
OTP/静态密码(NDEF) USB-HID/NFC D2 76 00 00 85 01 01
U2F USB-HID/NFC A0 00 00 06 47 2F 00 01
OpenPGP USB-CCID/NFC D2 76 00 01 24 01 02 00 00 00 00 00 00 01 00 00
PIV USB-CCID/NFC A0 00 00 03 08 00 00 10 00 01 00
TOTP(OATH) USB-CCID/NFC  A0 00 00 05 27 21 01 01 
其他

FIDO U2F

其他

NXP JCOP Javacard

NXP JCOP 是由 NXP 公司开发的 Javacard 操作系统,NXP 公司的 Javacard 和一些安全芯片搭载了该系统。

其版本命名规则为:

J3 A 080 G dd(d) / T 0B rr ff o

获取详细信息可以发送 IDENTIFY 命令:00A4040009A000000167413000FF00

返回信息格式如下:

 

其他

Canokey

Canokey是开源的安全认证USB设备,提供4个接口:U2F/FIDO2(HID)、OpenPGP Card(CCID)、PIV+OATH(CCID)和WebUSB。

其他

MIFARE Classic

MIFARE Classic 有 1K 和 4K 两种类型,1k 和 4k 代表存储空间的大小。

在 MIFARE Classic 中,有 Sector 和 Block 的概念,每个 Sector 有若干个 Block,其中最后一个 Block 是特殊的(称为 Sector Trailer),保存了这个 Sector 的一些信息:Key A、Access Bits、GPB 和 Key B。对于 Classic 4K,首先是 32 个有 4 blocks 的 sector,然后是 8 个 有 16 blocks 的 sector, 整体的内存布局大概是:

Sector 0:
Block 0
Block 1
Block 2
Block 3(Sector Trailer)
Sector 1:
Block 4
Block 5
Block 6
Block 7(Sector Trailer)
...
Sector 32:
Block 128
Block 129
...
Block 143(Sector Trailer)
...
Sector 39:
...

每个 Block 有 16 字节,一共 256 个 block,所以是 4K 大小的存储空间。Block 0 比较特殊,保存的是生产商写入的信息,不可更改(特殊的卡除外)。

MIFARE Classic 配置 NDEF

智能卡类型

类型 二层协议 三层协议 四层协议 四层协议 2 NFC Forum
MIFARE Classic ISO 14443-2 Type A ISO 14443-3 Type A     Type 2
MIFARE Plus EV1

ISO 14443-2 Type A

ISO 14443-3 Type A ISO 14443-4 Type A ISO 7816-4 Type 4

MIFARE Plus X/SE

ISO 14443-2 Type A ISO 14443-3 Type A ISO 14443-4 Type A   ?

MIFARE Ultralight

ISO 14443-2 Type A ISO 14443-3 Type A     Type 2

MIFARE DESFire

ISO 14443-2 Type A ISO 14443-3 Type A ISO 14443-4 Type A ISO 7816-4 Type 4

FeliCa

ISO 18092

ISO 18092 ISO 18092 JIS X 6219-4 Type 3

NTAG 213/215/216

ISO 14443-2 Type A

ISO 14443-3 Type A     Type 2

ICODE SLIX

ISO 15693-2

ISO 15693-3     Type 5

Note:

1. MIFARE Classic 4k 的产品名字是 MF1 S70

2. MIFARE 各产品的协议标准的表格

3. Type 2 tag spec