基础篇 1
1.1 信息和金卡工程 1
1.1.1 信息和信息社会 1
1.1.2 金卡工程 3
1.2 IC卡的兴起 5
1.3 国外和港台地区IC卡的应用概况 6
1.3.1 美国应用概况 6
1.3.2 法国应用概况 7
1.3.3 其它欧洲国家的成功应用范例 8
1.3.4 日本应用概况 8
1.3.5 智能卡在亚洲 9
1.3.6 港台地区用卡概况 10
1.4 国内实施金卡工程的状况 11
1.5 卡的类型性能和比较 14
1.5.1 光电(检测)卡 14
1.5.2 磁卡 14
1.5.3 IC卡 16
1.5.4 光卡 22
1.6 金卡工程总体技术略述 22
1.6.1 信用卡的使用过程和业务流程 23
1.6.2 银行卡的授权业务流程 24
1.6.3 金卡工程的层次结构 27
1.6.4 金卡工程的网络通信 30
1.7 信用卡业务处理系统 36
1.7.1 系统简介 36
1.7.2 系统功能 36
1.7.3 系统结构 36
第二章 IC卡的基本物理特性 38
2.1 IC卡的基本构成 38
2.2 IC卡的物理特性 39
2.3 IC卡的触点尺寸和位置 40
2.4 IC卡与磁卡的兼容性 41
2.5 IC卡的电气特性 42
2.6 关于IC卡触点尺寸和位置的变形用法 45
第三章 IC卡的芯片技术 49
3.1 IC卡芯片技术的特点和应用概况 49
3.1.1 IC卡存储器电路类型及其应用 49
3.1.2 IC卡存储容量大小、分区结构及其应用特点 52
3.2 存储卡的芯片性能分析 52
3.3 计数卡芯片的性能分析 61
3.4 逻辑加密存储卡芯片的特性分析 68
3.4.1 基本概念 68
3.4.2 逻辑加密存储卡(SLE4442)芯片的性能分析 69
3.4.3 逻辑加密存储卡(AT88SC1604)芯片的性能分析 78
3.5 带8位微处理器IC卡AT89SCI68芯片性能分析 91
第四章 IC卡的用卡过程 104
4.1 用卡过程 104
4.1.1 正常用卡过程 104
4.1.2 交易过程的非正常结束 107
4.2 字符的实际传送 107
4.2.1 数位(bit)宽度 107
4.2.2 字符帧 108
4.3 复位应答 109
4.3.1 复位应答的一般构成 109
4.3.2 复位应答时回送的字符 110
4.3.3 字符定义 111
4.3.4 传输控制参数 114
4.3.5 接口字符的基本响应 115
4.3.6 复位应答的序列和一致性 118
4.3.7 复位应答——终端的流程 119
4.4 传输协议 119
4.4.1 物理层 119
4.4.2 数据链路层 120
4.4.3 终端传输层(TTL) 127
4.4.4 应用层 131
附录4.1 使用T=0时TTL和ICC之间的交换的举例 132
附录 132
附录4.2 情况1命令 133
附录4.3 情况2命令 133
附录4.4 情况3命令 133
附录4.5 情况4命令 133
第五章 IC卡的数据元与命令 136
5.1 IC卡内数据的逻辑结构 136
5.1.1 有关数据结构的基本定义 136
5.1.2 数据对象的编码 138
5.1.3 数据对象的传送和检索 139
5.2.1 文件的组织和访问 140
5.2 文件 140
5.2.2 EF的结构 142
5.2.3 数据的引用方法 143
5.2.4 FCI 144
5.3 卡的安全性的总体结构 146
5.3.1 安全状态 146
5.3.2 安全属性 147
5.3.3 安全机制 147
5.4 APDU的报文结构 148
5.4.1 命令APDU 148
5.4.2 命令条件体的译码约定 148
5.5 命令头标、数据字段和响应尾标的编码约定 150
5.4.3 响应APDU 150
5.5.1 类别字节 151
5.5.2 命令字节 152
5.5.3 参数字节 152
5.5.4 数据字段 152
5.6 状态字节 152
5.7 逻辑通道 155
5.8 保密报文传送(SM) 156
5.8.1 SM格式概念 156
5.8.3 鉴别用数据对象 157
5.8.2 明文的数据对象 157
5.8.4 机密性的数据对象 158
5.8.5 辅助保密数据对象 160
5.8.6 SM状态条件 162
5.9 基本的行业内部命令 162
5.9.1 《EMV规范》支持的命令 162
5.10 历史字符 171
5.10.1 略述 171
5.10.2 类别指示符(强制性的) 171
5.10.3 可选的缩减——TLV数据对象 171
5.11.1 定义和范围 176
5.11 与应用无关的卡服务 176
5.10.5 DIR数据基准 176
5.10.4 状态信息 176
5.11.2 卡识别服务 177
5.11.3 应用选择服务 177
5.11.4 数据对象检索服务 178
5.11.5 文件选择服务 178
5.11.6 I/O文件服务 178
第六章 IC卡的安全性 180
6.1 IC卡的密码学——简介 180
6.1.1 密码系统 182
6.1.2 电子签名 184
6.1.3 会开密钥系统实观举例 185
6.2 金卡工程关于IC卡支付系统的安全性要求 186
6.2.1 安全性概要 186
6.2.2 支付系统中的风险和安全要求与评估 188
6.2.3 传输安全——加密 188
6.2.4 应用/交易的安全 189
6.3 密码学的基础 190
6.3.1 历史的回顾——古典密码 190
6.3.2 现代密码学基本概念 192
6.4.1 算法概要 197
6.4.2 加密处理 197
6.4 DES算法 197
6.4.3 加密变换f(R,K) 201
6.4.4 密钥的生成方法 203
6.4.5 解密处理 204
6.4.6 DES的保密安全性 205
6.5 公开密钥密码系统(PICCS) 206
6.5.1 公开密钥系统的基本思想 206
6.5.2 RSA公钥系统 209
6.5.3 DSA签名算法 213
6.5.4 ESIGN签名算法 215
6.6.1 对散列函数的要求 218
6.6 散列函数 218
6.6.2 初始值的选择和数位填充 219
6.6.3 散列算法 219
6.7 混合的密码体制 223
6.8 IC卡的密码识别 225
6.8.1 PIN鉴别 226
6.8.2 基于对称密钥算法DES的节点鉴别 226
6.8.3 基于非对称密钥算法RSA的节点鉴别 228
第七章 IC卡的操作系统 230
7.1 引言 230
7.1.1 TimeCOS的特点 230
7.1.3 TimeCOS的功能 231
7.1.2 TimeCOS的内容结构 231
7.1.4 TimeCOS的命令 232
7.2 TimeCOS的文件管理 233
7.2.1 文件系统 233
7.2.2 文件结构 234
7.2.3 文件类别 237
7.3.3 空全机制 238
7.3 TimeCOS的安全体系 238
7.3.1 安全状态 238
7.3.2 保全属性 238
7.3.4 密码算法 239
7.4 TimeCOS的复位应答 242
7.4.1 通讯协议为T=0时的应答信息 242
7.4.2 通讯协议为T=1时的应答信息 242
7.4.3 历史字符 242
7.5 命令及应答 243
7.5.1 命令及应答结构 243
7.5.2 命令应答SW1、SW2 243
7.6 TimeCOS命令 244
7.6.1 建立文件CREATE 244
7.6.2 选择文件SELECT 248
7.6.3 读二进文件READ BINARY 250
7.6.5 读记录READ RECORD 251
7.6.4 写二进制文件WRTTE BINARY 251
7.6.6 写记录文件WRTIE RECORD 252
7.6.7 增加记录APPEND RECORD 253
7.6.8 扣款DECREASE 254
7.6.9 存款INCREASE 254
7.6.10 取数据GET DATA 255
7.6.11 生成交易认证码GENERA TE AC 255
7.6.12 增加或修改密钥WRTTE KEY 256
7.6.13 验证口令UERJEY 258
7.6.14 验证并修改口令VERIEYCHANCE 258
7.6.15 解锁口令UNBLOCK 259
7.6.16 取随机数GET CHALLEN? 259
7.6.17 外部认证EXTERNAL AUTHBNHCATE 259
7.6.18 内部认证INTERNAL AUTHBNHCATE 260
7.6.19 FAC数字签名FAC SIGN 261
7.6.20 FAC签名认证FAC VERILY 261
7.6.22 FAC解密FAC DECRYPT 262
7.6.23 数据压缩COMPRESS 262
7.6.21 FAC加密FAC ENCRYPT 262
7.6.24 擦除DF ERASE DF 263
7.6.25 设置扣款最高限额SET CEILINC 263
7.6.26 设置通讯参数SET COMM 264
7.6.27 生成动态密钥GENERTE??EY 264
7.6.28 取响应数据GET RESPONSE(仅用于T=0协议) 265
7.7 会话密钥 265
7.7.2 什么是会话密钥 266
7.7.3 有关命令 266
7.7.1 线路保护 266
7.7.4 如何实现线路保护 267
7.8 工作密钥 268
7.8.1 什么是工作密钥 268
7.8.2 如何使用工作密钥 269
7.9 TimsCOS应用举例 269
7.10 IC卡性能指标 271
7.11 TimeCOS的发展 272
8.2 IC卡读写设备的分类 273
8.1 IC卡读写设备及其特点 273
7.2.4 文件标识与目录名称 273
第八章 IC卡应用设备及其开发系统 273
8.2.1 连机型IC卡读写机 274
8.2.2 独立型IC卡读写机 274
8.2.3 连网型IC卡读写机 276
8.3 智能卡全功能操作软件 277
8.4 CPU卡应用开发工具 282
8.4.1 系统环境要求 282
8.4.3 系统设计操作步骤 283
8.4.2 系统安全 283
8.4.4 工具软件的功能介绍 284
8.5 通用IC卡读写机的接口函数 288
8.5.1 C语言接口函数 288
8.5.2 FOXPRO语言接口函数 290
8.6 通用手持式读写机开发软件 292
8.6.1 开发环境 292
8.6.2 开发步骤 292
8.6.3 库函数说明 293
8.6.4 C-51程序开发说明 299
8.6.5 开发例程 300
8.7.1 IC卡用户接口函数使用示例 306
8.7 示例 306
8.7.2 程序example.c示例 308
8.7.3 UNIX环境下汉字终端接口说明 315
应用篇 317
第九章 IC卡应用系统的一般考虑 317
9.1 IC卡应用的主要技术优势 317
9.2 IC卡系统安全措施的设计考虑 319
9.2.1 对IC卡及其系统的潜在攻击 319
9.2.2 硬件防范措施 320
9.2.3 软件防范措施 322
9.2.4 系统防范措施 323
9.3 IC卡应用系统的设计 324
9.3.1 IC卡在应用系统中的作用和用法 325
9.3.2 IC卡应用系统中的硬件选择 326
9.3.3 IC卡的数据及其管理 334
9.3.4 IC卡内部代码的设计与使用 335
9.3.5 系统中的数据传送方式 336
9.4 IC卡的表面防伪处理 338
第十章 IC卡在支付系统的应用(一)——金融交易处理 340
10.1 金融交易交换的文件 340
10.1.2 GET DATA命令可检索的数据 341
10.1.1 强制性数据对象 341
10.2 交易流程 342
10.2.1 例外情况的处理 342
10.2.2 流程的举例 342
10.2.3 附加功能 342
10.3 交易处理中使用的功能 343
10.3.1 应用选择 344
10.3.2 应用处理过程的启动 348
10.3.3 读应用数据 349
10.3.4 静态数据鉴别 349
10.3.5 处理的限制 351
10.3.6 持卡人的核实 352
10.3.7 终端风险管理 353
10.3.8 终端操作分析 356
10.3.9 支付卡操作分析 357
10.3.10 联机处理 358
10.3.11 发卡方——支付卡原发命令的处理 358
10.3.12 结束 360
10.4 GENERATE AC命令的编码 360
10.4.1 命令参数 361
10.4.2 命令数据 361
10.4.3 命令的使用 362
10.5.2 数据元的缩码 363
10.5 数据对象表的使用规则 363
10.5.1 数据对象表 363
10.6 静态数据鉴别 366
10.6.1 可逆算法的静态数据鉴别 366
10.6.2 不可逆算法的静态数据鉴别 368
10.6.3 经批准的静态数据鉴别算法 369
第十一章 IC卡在支付系统的应用(二)——终端设备 371
11.1 终端的类型与性能 371
11.1.1 终端类型 371
11.1.2 终端性能 373
11.1.3 终端配置 374
11.1.4 终端类型和性能编码举例 376
11.2 对终端的总体需求 379
11.2.1 物理特性 379
11.2.2 应用软件的管理 381
11.2.3 数据的管理 382
11.2.4 读卡 383
11.3 终端的功能需求 384
11.3.1 交易处理 384
11.3.2 支持功能的条件 387
11.3.3 其它功能需求 387
11.4.1 防范设备 389
11.4 安全需求 389
11.4.2 PIN键盘 390
11.4.3 密钥管理 390
11.4.4 算法的实现 391
11.5 持卡人和服务员接口 391
11.5.1 语言选择 391
11.5.2 标准报文 392
11.5.3 关于语言的显示-ISO 8889 393
11.5.4 应用选择 394
11.6 代理方接口 395
11.6.1 报文内容 395
11.5.5 收据 395
11.6.2 数据元的转换 403
11.6.3 例外情况处理 404
11.7 CVM结果、原发命令结果和授权响应码 406
11.7.1 CVM结果 406
11.7.2 发卡方原发命令结果 406
11.7.3 授权响应码 407
第十二章 GSM系统中的用户识别模块——SIM卡 408
12.1 引言 408
12.2 GSM数字移动通信系统 408
12.2.1 GSM系统的基本构成 409
12.2.2 GSM系统的安全保密性 410
12.3 SIM卡概述 411
12.3.1 SIM卡的兴起与分类 411
12.3.2 SIM卡的应用和市场 412
12.3.3 SIM卡的功能特点 413
12.3.4 SIM卡的预处理和个人化 415
12.3.5 SIM卡的使用 415
12.4 SIM卡的硬件特性 415
12.4.1 SIM卡的基本组成 415
12.4.2 SIM卡的物理结构及电性能要求 415
12.5.1 SIM卡数据文件的一般说明 417
12.5 SIM卡的数据结构 417
12.5.2 SIM卡的目录 418
12.5.3 目录及数据文件头标结构 418
12.5.4 对目录(DF)及数据文件FX操作说明 420
12.5.5 SIM卡的数据文件 420
12.6 SIM卡的接口过程及指令系统 429
12.6.1 SIM卡与移动终端的接口过程 430
12.6.2 GSM应用中的指令格式和编码 431
12.6.3 基本的GSM指令 434
12.6.4 SIM卡的传输规程 441
13.2 社会劳动保险的项目和保险对象 444
13.1 概述 444
第十三章 IC卡在劳动保险中的应用 444
13.3 社会劳动保险的业务管理 445
13.3.1 社会保险业务管理的组织结构 445
13.3.2 社会保险业务的运行模式 446
13.4 IC卡在社保系统中的主要作用和优点 448
13.5 社会保险系统中IC卡的运行模式 449
13.6 社会保险系统的基本管理流程 449
13.7 社会保险信息管理(IC卡)系统的设计 452
13.7.1 系统设计的一般原则 453
13.7.2 业务管理信息系统结构 454
13.7.3 系统中IC卡存储处理的信息 458
13.7.4 系统的安全机制 460