中华人民共和国城镇建设行业标准
建设事业集成电路(IC)卡应用技术条件
CJ/T 166-2014
Technology specification for application of integrated circuit cards in construction cause
发布日期:2014年4月22日 实施日期:2014年11月1日
中华人民共和国住房和城乡建设部 发布
前言
本标准按照GB/T 1.1-2009给出的规则起草。
本标准代替CJ/T 166-2006《建设事业集成电路(IC)卡应用技术》
本标准与CJ/T 166-2006相比,修订的主要内容包括:
——增加并完善卡片类别(见5.1);
——增加并完善开放平台CPU卡的有关要求(见5.6);
——增加并完善IC卡互联互通应用的有关要求(见5.7);
——增加并完善PSAM卡物理参数的有关要求(见6.2.1.3);
——增加并完善城市一卡通安全域安全要求(见11.7);
——增加并完善多应用开放平台要求(见第13章);
——删除逻辑加密卡的有关内容(见2006版3.24,5.5.1,5.8.3,6.7.1,7.2.3.4.2,7.5.1);
——删除服务类ISAM卡的相关内容(见2006版6.4.2)。
本标准由住房和城乡建设部标准定额研究所提出。
本标准由住房和城乡建设部信息技术应用标准化技术委员会归口。
本标准负责起草单位:住房和城乡建设部IC卡应用服务中心、中外建设信息有限责任公司。
本标准参加起草单位:北京亿速码数据处理有限责任公司、上海华虹集成电路有限责任公司、深圳德诚信用咭制造有限公司、深圳市德卡科技有限公司、福建新大陆电脑股份有限公司、北京同方微电子有限公司、恩智浦半导体(上海)有限公司、航天信息股份有限公司、恒宝股份有限公司、武汉天喻信息产业股份有限公司、广东楚天龙智能卡有限公司、上海浦江智能卡系统有限公司、成都九洲电子信息系统有限公司、南京通用电器有限公司、上海华腾软件系统有限公司、上海复旦微电子集团股份有限公司、东信和平科技股份有限公司、广东妙购物联网技术有限公司、红门智能科技股份有限公司、新开普电子股份有限公司、捷德(中国)信息科技有限公司、珠海亿达科技电子工业有限公司、英飞凌集成电路(北京)有限公司、聚辰半导体(上海)有限公司、上海柯斯软件有限公司、天津环球磁卡股份有限公司、意法半导体(中国)投资有限公司、杭州先锋电子技术股份有限公司、珠海市金邦达保密卡有限公司、深圳市旺龙智能科技有限公司。
本标准主要起草人:王辉、周欣、张永刚、马虹、申绯斐、徐科、陈超华、杨辉、尚治宇、王鑫、曹子新、苑朋朋、孟宪超、刘颖、冯茗、孙永战、董吉庆、孟庆云、祝俊东、黄鹏、洪斯斯、周洋、张丹、段宏阳、胡文蓉、刘玉忠、周鸣、王宝鸫、沈阳、彭美玲、吴绍叶、谭有斌、张振京、丁晓明、张大军、黄显明、李强、成皓、高勇峰、丁晓毅、谢骏、程文杰、李标彬。
本标准代替了CJ/T 166-2006。
本标准所代替标准的历次版本发布情况为:
——CJ/T 166-2002、CJ/T 166-2006。
1 范围
本标准规定了建设事业集成电路(IC)卡的卡片技术要求、离线IC卡终端设备、在线IC卡终端设备、表具类IC卡终端设备、密钥系统及要求、数字证书认证系统、安全机制及安全要求、IC卡应用系统技术要求、多应用开放平台要求,IC卡应用系统验收要求和相应的定义、符号等。
本标准适用于建设事业IC卡应用相关的卡片、终端设备,以及应用系统的开发、集成、维护和管理。
2 规范性引用文件
下列文件对于本文件的应用是必不可少的。凡是注日期的引用文件,仅注日期的版本适用于本文件。凡是不注日期的引用文件,其最新版本(包括所有的修改单)适用于本文件。
GB/T 16649.1 识别卡 带触点的集成电路卡 第1部分:物理特性
GB/T 16649.2 识别卡 带触点的集成电路卡 第2部分:触点的尺寸和位置
GB/T 16649.3 识别卡 带触点的集成电路卡 第3部分:电信号和传输协议
GB/T 16649.4 识别卡 带触点的集成电路卡 第4部分:用于交换的结构、安全和命令
GB/T 16649.5 识别卡 带触点的集成电路卡 第5部分:应用标识符的国家编号体系和注册规程
CJ/T 304 建设事业CPU卡操作系统技术要求
CJ/T 331 城市公用事业互联互通卡通用技术要求
CJ/T 332 城市公用事业互联互通卡清分清算技术要求
JR/T 0025 中国金融集成电路(IC)卡规范
ISO/IEC 14443-1 识别卡 无触点集成电路卡 接近式卡 第1部分:物理特性(Identification cards-Contactless integrated circuit cards-Proximity cards-Part 1:Physical characteristics)
ISO/IEC 14443-2 识别卡 无触点集成电路卡 接近式卡 第2部分:射频功率和信号接口(I-dentification cards-Contactless integrated circuit cards-Proximity cards-Part 2:Radio frequency power and signal interface)
ISO/IEC 14443-3 识别卡 无触点集成电路卡 接近式卡 第3部分:初始化和防冲突(Identi-fication cards-Contactless integrated circuit cards-Proximity cards-Part 3:Initialization and anti-collision)
ISO/IEC 14443-4 识别卡 无触点集成电路卡 接近式卡 第4部分:传输协议(Identification cards-Contactless integrated circuit cards-Proximity cards-Part 4:Transmission protocol)
ISO 13491-2 银行业务 安全密码装置 第2部分:磁条卡系统装置安全检验表(Banking-Secure cryptographic devices(retail)-Part 2:Security compliance checklists for devices used in finan-cial transactions 2005)
3 术语和定义
下列术语和定义适用于本文件。
3.1
集成电路卡/IC卡 integrated circuit card
内部封装一个或多个集成电路的卡。
3.2
终端 terminal
为完成交易而在交易点安装的设备,用于同IC卡的连接。
注:包括接口设备,也可包括其他部件和接口(如与主机通汛)。
3.3
命令 command
终端向IC卡发出的一条信息,该信息启动一个操作或响应。
3.4
响应 response
IC卡处理完成收到的命令报文后,返回给终端的报文。
3.5
报文 message
由终端向卡或卡向终端发出的,不含传输控制字符的字节串。
3.6
密文 ciphertext
通过密码系统产生的不可直接理解的文字或信号。
3.7
密钥 key
控制加密转换操作的符号序列。
3.8
充值 charge
利用终端设备,在安全的条件下,根据一定的操作权限,增加IC卡中服务计量值的过程。
3.9
消费 pull
在指定应用的电子收费终端,对IC卡进行相应扣款写卡的过程。
注:消费分专用消费和普通消费两种。
3.10
IC卡读写器 reader
可与IC卡进行数据交换的终端设备。
3.11
充值终端 charge terminal
可以增加IC卡中服务计量值的终端设备。
3.12
初始化 initialization
在IC卡发行前,由发行机构对卡进行格式化,并在卡中写入卡的发行信息的过程。
3.13
应用文件 application file
按照一定的数据格式产生的具有不同功能的数据文件。
注:IC卡的应用文件包括卡的文件标识、发行文件、钱包文件、月票钱包文件、交易记录文件和过程文件等。
3.14
电子钱包 electronic purse
一种为方便持卡人进行小额消费而设计的IC卡应用。
注:支持充值、消费等交易。
3.15
电子存折 electronic deposit
一种为持卡人进行消费、取现等交易而设计的使用个人密码(PIN)保护的金融IC卡应用。
注:支持圈存、圈提、消费、取现、修改透支限额及查询余额交易。
3.16
口令 password
当一方能向另一方提交出预先约定的密码时,递交一方的合法性才得以承认。
3.17
非接触式IC卡 contactless IC card
无触点的集成电路卡。
3.18
接触式IC卡 contact IC card
带触点的集成电路卡。
3.19
报文鉴别代码 message authentication code
为验证报文的完整性对交易数据及其相关参数进行运算产生的代码。
3.20
黑名单 lawless list
由于结算、对账不符、非法交易、非法卡交易等产生的非法列表清单。
3.21
CPU卡 central processing unit card
一种具有微处理器芯片的IC卡。
3.22
消费类终端 purchase type terminal
支持在公共汽、电车、出租汽车、地铁、城市轨道交通、轮渡、索道、公园、停车场等公共场所完成对IC卡消费交易的设备。
3.23
表具类终端 gauge type terminal
支持对预付费的水、燃气和热量给予正常供应的设备。
3.24
服务类终端 service type terminal
提供售卡、充值、验卡、圈存、管理等服务的设备。
3.25
安全存取模块 secure access module
一种能够提供必要的安全机制,以防止外界对终端所储存或处理的安全数据进行非法攻击的硬件加密模块,包括IC卡类安全存取模块和芯片类安全存取模块。
3.25.1
IC卡类安全存取模块 IC card secure access module
以IC卡的模式封装的,一种能够提供必要的安全机制以防止外界对内部所储存或处理的安全数据进行非法攻击的硬件加密模块,同时可对外提供命令与相应服务。可由IC卡发行主管部门或应用主管机构发行,用于对IC卡进行充值/消费交易认证。
3.25.2
芯片类安全存取模块 chip secure access module
以带引脚的芯片模式封装的,一种能够提供必要的安全机制以防止外界对内部所储存或处理的安全数据进行非法攻击的硬件加密模块,同时可对外提供命令与相应服务。可由IC卡发行主管部门或应用主管机构发行,用于对IC卡进行充值/消费交易认证。
3.26
物理安全性 physical security
设备的物理结构抵御攻击的能力。
3.27
安全加密设备 secure cryptographic device
能提供一系列安全加密服务,具有逻辑安全性和物理安全性的硬件设备。
3.28
攻击 attack
在未授权状况下,试图修改信息或获取保密信息的一种行为。
3.29
消费安全认证模块 purchase secure access module
由IC卡发行主管部门或应用主管机构发行的可以用于对IC卡进行脱机消费交易认证的安全认证卡,安装在各类消费类IC卡终端中。
3.30
嵌入式安全认证模块 embedded secure access module
由IC卡发行主管部门或应用主管机构发行的可以用于对IC卡进行脱机消费交易认证的嵌入式安全认证模块,安装在各类表具类IC卡终端中。
3.31
块 block
数据存储单元。
3.32
可信任服务管理平台 trusted service manager
由可信第三方提供的载体生命周期管理、应用生命周期管理和应用管理等服务。
3.33
SD卡 SD card
内嵌了安全运算单元和安全存储模块的卡(或IC卡)。
4 缩略语和符号
下列缩略语和符号适用于本文件。
ADF 应用数据文件(Application Definition File)
AEF 应用基本文件(Application Elementary File)
AID 应用标识符(Application Identifier)
APDU 应用协议数据单元(Application Protocol Data Unit)
APP 应用(Application)
CA 电子商务认证中心(Certificate Authority)
CLA 命令报文的类别字节(Class Byte of the Command Message)
CPU 中央处理器(Central Processing Unit)
DAP 数据认证模式(Data Authentication Pattern)
DDF 目录数据文件(Directory Definition File)
DES 数据加密标准(Data Encryption Standard)
3DES 三重数据加密标准(Triple Data Encryption Standard)
DF 专用文件(Dedicated File)
DIR 目录(Directory)
EF 基本文件(Elementary File)
ESAM 嵌入式安全存取模块(Embedded Secure Access Module)
FCI 文件控制信息(File Control Information)
GP 全球平台组织(Global Platform)
IC 集成电路(Integrated Circuit)
INS 命令报文的指令字节(Instruction Byte of Command Message)
IP 网络协议(Internet Protocol)
ISD 发卡行安全域(Issuer Security Domain)
JCAPI Java 卡应用接口(Java Card Application Interface)
JCRE Java 卡运行环境(Java Card Runtime Environment)
Lc 终端发出的命令数据的实际长度(Exact Length of Data Sent by the TAL in a Case 3 or 4 Command)
Le 响应数据的最大期望长度(Maximum Length of Data Expected by the TAL in Response to a Case 2 or 4 Command)
MAC 报文鉴别代码(Message Authentication Code)
MF 主控文件(Master File)
NFC-WI Near Field Communication Wired Interface 近场通信有线接口
OPEN 卡片主控管理者(The Central on-card Administrator That Owns the Global Platform Reg-istry)
P1 参数1(Parameter 1)
P2 参数2(Parameter 2)
PICC 接近式卡(Proximity Card)
PIN 个人密码(Personal Identification Number)
PSAM 消费安全存取模块(Purchase Secure Access Module)
RAM 随机访问内存(Random Access Memory)
RSA 非对称加密算法(Rivest/Shamir/Adleman asymmetric algorithm)
SAM 安全存取模块(Secure Access Module)
SCP02 安全通道协议02(Secure Channel Protocol 02)
SCP10 安全通道协议10(Secure Channel Protocol 10)
SE 安全单元(Secure Element)
SFI 短文件标识符(Short File Identifier)
SHA1 安全摘要算法1(Secure Hash Algorithm 1)
SM1 安全消息算法1(Secure Message 1)
SM2 安全消息算法2(Secure Message 2)
SSD 辅助安全域(Supplementary Security Domain)
SW1 状态字1(Status Word One)
SW2 状态字2(Status Word Two)
T=0 面向字符的异步半双工传输协议
T=1 面向块的异步半双工传输协议
TAC 交易验证码(Transaction Authorization Cryptogram)
TSM 可信任服务管理平台(Trusted Service Manager),也称多应用开放平台
USB 通用串行总线(Universal Serial Bus)
5 卡片技术要求
5.1 卡片类别
卡片按照接口方式应划分为:接触式IC卡、非接触式IC卡、双界面IC卡。
卡片按照芯片操作系统工作原理可划分为:非开放平台CPU卡、开放平台CPU卡。
注:非开放平台CPU卡是指基于Native平台的CPU卡,开放平台是指基于符合GP规范的CPU卡。
卡片按照天线尺寸可划分为:类型1卡、类型2卡、类型3卡、类型4卡、类型5卡和类型6卡。不同类型卡片天线的尺寸参见附录A。
5.2 接触式IC卡
5.2.1 接触式IC卡物理特性
接触式IC卡应符合GB/T 16649.1中有关物理特性的要求。
5.2.2 接触式IC卡触点的尺寸和位置
接触式IC卡的每个触点的尺寸、数量和位置、分配以及表面接触电阻等应符合GB/T 16649.2的要求。
5.2.3 接触式IC卡的电信号和传输协议
接触式IC卡触点的电特性、操作过程、复位应答、协议类型选择、T=0面向字符的异步半双工字符传输协议、T=1面向块的异步半双工块传输协议应符合GB/T 16649.3的要求。
5.3 非接触式IC卡
5.3.1 非接触式IC卡物理特性
非接触式IC卡物理特性应符合ISO/IEC 14443-1中有关物理特性的要求。
5.3.2 非接触式IC卡的射频功率和信号接口
非接触式IC卡的射频功率和信号接口应符合ISO/IEC 14443-2中的要求。
5.3.3 非接触式IC卡的初始化和防冲突
非接触式IC卡的初始化和防冲突应符合ISO/IEC 14443-3中有关初始化、防冲突等要求。
5.3.4 非接触式IC卡的传输协议
非接触式IC卡应符合ISO/IEC 14443-4中有关激活协议和半双工块传输协议等要求。
5.4 双界面IC卡
5.4.1 一般规定
双界面IC卡是卡中的芯片同时具有符合GB/T 16649接触式接口和符合ISO/IEC 14443非接触式接口的IC卡。
5.4.2 接触式界面
接触式界面应符合5.2中对接触式IC卡的相关要求。
5.4.3 非接触式界面
非接触式界而应符合5.3中对非接触式IC卡的相关要求。
5.5 非开放平台CPU卡数据元和文件结构
5.5.1 基本要求
卡中的每一个应用都包括一系列信息项,在终端成功的完成应用选择后可对该项选择的应用信息进行访问。
一个信息项称为一个数据元。数据元是信息的最小单位,用名称、逻辑内容说明、格式及代码进行标识。
5.5.2 文件
数据文件中数据元以记录方式或二进制方式存储,文件结构及引用方式由文件的用途决定。
5.5.3 卡文件结构
卡文件结构应符合GB/T 16649.4中的要求。
从终端角度来看,各应用与根目录呈树形结构,通过目录结构进行访问。树的每一分支是一个应用数据文件(ADF)。一个ADF是一个或多个应用基本文件(AEF)的入口点。一个ADF及其相关数据文件处于树的同一分支上。
5.5.4 应用数据文件
ADF的树形结构应符合下列要求:
a) 能够将数据文件与应用联系起来;
b) 确保应用之间的独立性;
c) 可通过应用选择实现对其逻辑结构的访问。
从终端角度来看,ADF是一个只包含其文件控制信息(FCI)中纯数据对象的文件。
5.5.5 应用基本文件
一个AEF包含一个或多个原始基本编码规则——标签、长度、值(BER-TLV)数据对象。但在选择了某一个应用后,其查询方式见5.5.8。
5.5.6 文件映像
GB/T 16649.4中使用下列映象表:
a) 包含一个FCI的专用文件(DF)(GB/T 16649.4中定义)被映像为ADF,可通过它来访问EF和DF。在卡中处于最高层的DF称为主控文件(MF)。
b) 包含一组记录中的基本文件(EF)(GB/T 16649.4中定义)被映像为AEF,EF不能作为进入另一个不同DF文件的入口点。
在本标准中,DF中相连的EF的访问是二进制的。
5.5.7 目录结构
IC卡支持用于MF下各应用列表的目录结构。目录结构必备的文件是目录文件(DIR文件)和一些可选的由目录数据文件(DDF)引用的附加目录。
目录结构:采用以其应用标识符(AID)的方式进入一个应用,或以AID的前N个字节作为DDF名的方式进入一组应用。
DIR文件是一个AEF,即一个记录结构的EF,它包含GB/T 16649.5中定义的数据对象:
a) 本标准中描述的一个或多个应用模板(标签为‘61’);
b) 可能在目录自由模板中出现的其他数据对象(标签为‘73’),这些模板中包含的数据对象不在本标准中定义。
IC卡中的应用目录都是可选的,且不限制数量。其中,每个目录的位置由包括在每个DF中的FCI的目录SFI数据对象指定。
5.5.8 文件查询
依照其类型,文件可通过文件名或SFI进行查询。
a) 卡中的任何ADF或DDF可通过其DF名查询,ADF的DF名对应其AID,每个DF名在给定的卡中应是唯一的;
b) SFI用于选择AEF。对给定应用中的任何AEF,可通过SFI(5位代码,取值范围从1~30)查询。SFI的编码在每个用到它的命令中描述,在一个给定的应用中应是惟一的,专用SFI的使用由应用决定。
5.5.9 卡片文件结构
本条规定了卡片文件结构,见图1。
图1 卡片文件结构
卡片文件结构说明如下:
a) 主文件(MF):
1) 文件标识符:‘3F00’;
2) 文件名称:1 PAY.SYS.DDF01;
3) 正确选择MF后,卡片返回相应的FCI。FCI参照JR/T 0025的相关内容。
b) MF下的目录基本文件:
1) 目录基本文件是一个变长记录型文件,用1到10的SFI标识。该目录基本文件附属于DDF,目录的SFI包含在DDF文件控制信息中。目录可使用Read Record命令进行读取。目录中一个记录可包含几个入口地址,但一个入口地址不能跨越多个记录存储;
2) 目录文件的SFI=01。
c) 应用1-x:正确选择ADF后,卡片返同相应的FCI。
5.6 开放平台CPU卡
5.6.1 概述
开放平台CPU卡结构应符合Global Platform 2.2的规定,见图2。
图2 开放平台CPU卡结构
5.6.2 城市一卡通安全域应用结构
5.6.2.1 一般规定
城市一卡通安全域是开放平台CPU卡的一部分,为城市一卡通应用以及该安全域相关联的其他应用提供安全服务,具体要求见11.7。城市一卡通安全域应用结构,见图3。
图3 城市一卡通安全域应用结构
城市一卡通安全域管理应符合下列规定:
a) 城市一卡通安全域在SE出厂前预置,其空间大小采用静态分配方式。存储器类型为EEPROM时,城市一卡通安全域的存储容量不应小于50KB;存储器类型为FLASH及其他类型时,存储容量不应小于200KB。运行安全域内应用时RAM分配空间不应小于RAM总空间的30%;
b) 当城市一卡通安全域为辅助安全域时,不可被其他安全域锁定、删除,且其内部应用的生命周期应仅由该安全域管理。
5.6.2.2 CA证书
CA证书用于保障应用安全,可以提供签名、验签、加密和解密服务,采用X509格式,应在SE出厂前预置。
5.6.2.3 安全认证识别码
安全认证识别码采用预置的方式存放在城市一卡通安全域中,支持多应用共亭。
安全认证识别码的编码规则应符合CJ/T 304的规定。
5.6.2.4 非接触应用管理目录
非接触应用管理目录用于管理开放平台CPU卡上城市一卡通安全域应用目录列表,提供安全域内应用选择服务。
5.6.2.5 互联互通应用
互联互通应用宜预置在城市一卡通安全域中,并应符合CJ/T 331的要求。
5.7 CPU卡应用文件结构
5.7.1 消费类CPU卡应用文件结构
5.7.1.1 应用文件结构图
接触式、非接触式CPU卡应用文件结构,见图4。
图4 接触式、非接触式CPU卡应用文件结构
5.7.1.2 应用文件内容说明
消费类CPU用户卡文件详细信息,见表1。
表1 消费类CPU用户卡文件详细信息
5.7.1.3 MF主控文件内容
5.7.1.3.1 KEY文件内容
消费类CPU用户卡MF的KEY文件内容,见表2。
表2 消费类CPU用户卡MF的KEY文件内容
密钥名称 | 密钥代码 | 密钥标识 | 密钥分散级别 | 密钥作用 |
卡片主控子密钥 | DACK | 00 | 1 | 控制MF下文件添加和删除 |
卡片维护子密钥 | DAMK | 00 | 1 | MF下有关信息文件的更新保护 |
5.7.1.3.2 目录基本文件
目录基本文件有一条记录:70 13 61 11 4F 09 A0 00 00 00 03 86 98 07 01 50 04 50 42 4F 43,各部分意义见“选择文件(Select File)”。目录信息文件,见表3。
表3 目录信息文件
5.7.1.3.3 发卡基本信息文件
发卡基本信息文件,见表4。
表4 发卡基本信息文件
行业代码应采用住房和城乡建设部定义的行业代码标识,见表5。
表5 行业代码标识
用户卡卡片算法支持,见表6。
表6 用户卡卡片算法支持
卡类型对应关系,见表7。
表7 卡类型对应关系
5.7.1.3.4 目录数据文件
ADF1-ADFx:目录名或短文件标识符。
5.7.1.4 ADF1公用钱包专用文件内容
5.7.1.4.1 公用钱包应用目录
公用钱包应用目录(1001)下文件信息,见表8。
表8 公用钱包应用目录(1001)下文件信息
5.7.1.4.2 电子钱包应用
电子钱包应用包括:
a) 文件名称:A00000000386980701;
b) 正确选择此ADF后,卡片返回相应的FC1如下:
6F 2E 84 09 A0 00 00 00 03 86 98 07 01 A5 21 9F OC XX。
注:XX为不定长数据内容,第一字节为公共应用基本信息文件内容字节长度,后续为公共应用基本信息文件内容。
5.7.1.4.3 KEY文件内容(0000)
KEY文件内容,见表9。
表9 KEY文件内容
5.7.1.4.4 公共电子钱包文件(0002)
电子钱包文件,见表10。
表10 电子钱包文件
文件标识符 | 00 02 | SFI | 02 | 文件长度 | 0002×0008H | 文件结构 | 钱包文件 |
读余额 | 自由 | 写控 | 禁止 | ||||
圈存 | PIN&DLK | 消费 | DPK |
钱包内部采用专用的结构,由COS维护,保存电子钱包的余额等信息。
5.7.1.4.5 公共应用基本信息文件
公共应用基本信息文件,见表11。
表11 公共应用基本信息文件
5.7.1.4.6 个人基本信息文件
个人基本信息文件,见表12。
表12 个人基本信息文件
当卡片类型有记名需求时(普通卡A卡、成人卡、学生卡、老人卡等)更新此文件。
持卡人类型标识,见表13。
表13 持卡人类型标识
标识 | 定义 | 说明 |
00 | 普通乘客 | — |
01 | 公交职工 | — |
02 | 发卡方职工 | — |
… | … | … |
持卡人证件类型,见表14。
表14 持卡人证件类型
5.7.1.4.7 复合交易文件
复合交易文件,见表15。
表15 复合交易文件
17文件09记录数据源定义,见表16。
表16 17文件09记录数据源定义
5.7.1.4.8 本地消费交易明细文件
本地消费交易明细文件,见表17。
表17 本地消费交易明细文件
5.7.1.4.9 异地消费交易明细文件
异地消费交易明细文件,见表18。
表18 异地消费交易明细文件
5.7.1.4.10 充值交易明细文件
充值交易明细文件,见表19。
表19 充值交易明细文件
5.7.1.4.11 交易类型
用户卡各交易明细记录文件中交易类型,见表20。
表20 交易类型
5.7.1.4.12 密钥版本、算法标识和密钥索引
用户卡应支持的密钥版本、算法标识和密钥索引分别见表21、表22和表23。
表21 密钥版本
密钥版本 | 算法名称 | 来源 |
01 | 支持DES/3DES | 建设事业IC卡密钥管理系统 |
81 | 支持SM1 | 城市一卡通密钥管理系统 |
表22 算法标识
算法标识 | 算法名称 |
00 | 支持DES/3DES |
01 | 支持DES |
03 | 支持SM1 |
表23 密钥索引
密钥索引 | 算法名称 |
00~05 | 支持DES/3DES |
80~85 | 支持SM1 |
5.7.2 表具类CPU卡应文件结构
5.7.2.1 应用文件结构及内容说明
表具类CPU卡文件结构见5.7.1.1中接触式、非接触式CPU卡应用文件结构。文件详细信息,见表24。
表24 文件详细信息
5.7.2.2 MF主控文件内容
MF主控文件内容,见表25。
表25 MF主控文件内容
密钥文件 |
主控密钥 |
维护密钥 |
…… |
MF公共信息文件,见表26。
表26 MF公共信息文件
卡类别标识,见表27。
表27 卡类别标识
名称 | 长度(Byte) | 内容 | 数据格式 |
卡类别码 | 1 | 卡片类别号码 | HEX |
卡类别编码,见表28。
表28 卡类别编码
卡型 | 代码 |
用户卡 | 01 |
检测卡 | 03 |
其他 | 自定义 |
目录数据文件ADF1-ADFx:目录名或短文件标识符。表具类终端的应用文件,一个表具类终端分配一个应用文件。
5.7.2.3 表具类应用文件内容
表具类应用文件内容包括:
a)KEY文件内容
消费密钥、充值密钥及TAC密钥用于使用电子钱包作为计量文件的消费、充值过程的认证。
ADF的KEY文件内容,见表29。
表29 ADF的KEY文件内容
b)基本信息文件
基本信息文件存储与应用管理系统相关的信息,如管理系统代码、管理系统版本号、营业网点编号、操作员编号、写卡时间、卡有效日期等。基本信息文件中的数据项由应用管理系统写入、CPU卡表具类终端根据需要读取。
ADF的基本信息文件,见表30。
表30 ADF的基本信息文件
c) 计量文件
计量文件使用电子钱包文件。购买量是指用户购买的水、燃气或热量的量值,也可以是预交的金额。若购买量为用户购买的水、燃气或热量的量值,发卡方对CPU卡进行充值操作时根据价格对用户收取相应的金额。在用户表具类终端,计量文件中的购买量一次性被扣除,并同时增加表具类终端的剩余量。计量文件结构,见表31。
表31 计量文件结构
字段名 | 长度(Byte) |
购买量 | 4 |
d)设置信息文件
设置信息文件存储应用管理系统对表具类终端的设置数据,如本次购买量、购买次数、参数版本号、允许囤积量、关阀报警量、显示报警量、允许透支量、单价版本号、阶梯限量n、结算周期、交费时间、月起算时间、常规单价、第n阶单价、密钥版本号、密文密钥、检验数据等。这些数据项通常由应用管理系统写入、CPU卡表具类终端根据需要读取。
设置信息文件,见表32。
表32 设置信息文件
e)返回信息文件
返回信息区存储表具类终端向卡上返写的数据,如累计充值量、充值次数、累计用量、剩余量、表具故障状态、最近12个月用量、异常次数、最后异常发生日期、采集时间日期、表具程序版本号、厂商代码等。这些数据项通常由终端写入、应用管理系统读取。
返回信息文件,见表33。
表33 返回信息文件
5.8 CPU卡的命令
5.8.1 命令及其响应的APDU的内容及格式
CPU卡命令APDU的内容及格式,见表34。
表34 CPU卡命令APDU的内容及格式
CPU卡响应APDU的内容及格式,见表35。
表35 CPU卡响应APDU的内容及格式
代码 | 描述 | 长度/Byte |
Data | 响应中接受的数据位串(=Le) | 变长 |
SW1 | 命令处理状态 | 1 |
SW2 | 命令处理限定 | 1 |
5.8.2 命令集
CPU卡命令集,见表36。
表36 CPU卡命令集
6 离线IC卡终端设备
6.1 一般规定
离线式IC卡终端设备是指在不使用通信线路与结算主机联机的脱机状态下,能直接与用户IC卡进行安全交易或数据交换的终端设备。
6.2 离线消费类及服务类IC卡终端设备
6.2.1 IC卡终端的基本性能要求
6.2.1.1 基本物理配置
离线式IC卡终端一般应配置以下部件:
a) 显示部件:能显示IC卡交易过程中的相关信息;
b) 安全部件:SAM卡插座应至少2个,或应至少支持2个芯片类安全存取模块;
c) 读写部件:应通过安全存取模块读写IC卡数据;
d) 存储部件:存储不应低于10000笔离线交易数据;
e) 数据交换通道:应具备将存储的交易数据上传到计算机或采集设备的接口;
f) 电源部件:应提供IC卡终端的能源。
6.2.1.2 交易时间要求
典型交易时间是指IC卡终端在脱机交易状态下,从IC卡进入设备建立有效连接、经过卡认证、有效性判断、完成有价区有效扣减或增值、卡内存储相关交易信息所需要的时间。不包括发票打印时间、终端内存储交易数据的时间、数据下载和上传的时间、交易完成信息提示的时间等。
IC卡典型交易时间要求如下:
a) 非接触CPU卡消费类终端的典型交易时间不应大于300ms;
b) 接触式CPU卡消费类终端的典型交易时间不应大于850ms;
c) 服务类IC卡终端的交易时间不作规定。
6.2.1.3 IC卡终端内置PSAM卡要求
离线式IC卡终端内置PSAM卡的初始通讯速率为38400bps,支持PPS指令检测。
为配合协议测试,送检厂家的终端应至少支持以下几种功能或命令:
a) 激活(上电);
b) 冷复位;
c) 热复位;
d) SELECT命令;
e) 取响应命令;
f) 停活(下电)。
6.2.2 IC卡终端的一般要求
6.2.2.1 气候环境、机械环境、可靠性、安全性、电磁兼容性要求
IC卡终端的气候环境、机械环境、可靠性、安全性、电磁兼容性、限用物质限量要求、能效等要求应符合国家现行相应标准。
6.2.2.2 物理特性、逻辑接口、通信协议要求
IC卡终端的物理特性、逻辑接口、通信协议应符合下列要求:
a) 接触式IC卡终端的物理特性应符合GB/T 16649.1和GB/T 16649.2的要求;
b) 接触式IC卡终端的逻辑接口和通讯协议应符合GB/T 16649.3的要求;
c) 非接触IC卡终端的逻辑接口和通汛协议应符合ISO/IEC 14443-3、ISO/IEC 14443-4的要求。
6.2.3 IC卡终端的多应用要求
6.2.3.1 基本要求
终端应支持IC卡应用优先级排序设置,在多应用中优先选择互联互通应用。
6.2.3.2 终端多应用的管理
IC卡终端多应用的管理应达到以下目标:
a) 各个应用之间不能互相影响,各应用应相互独立运行;
b) 共享数据应保证所有的应用可以共享终端中的通用数据,各应用的专用数据不能被其他应用得到。
6.2.4 IC卡终端的功能要求
6.2.4.1 一般要求
消费类IC卡终端的消费交易允许持卡人使用电子钱包的余额获取服务。此交易在消费类IC卡终端中记录交易数据,由终端将交易记录数据上传到交易清算中心。
6.2.4.2 安全要求
消费交易时,应使用特定的PSAM卡。消费类IC卡终端在IC卡以及PSAM之间建立通信链路,消费类IC卡终端的安全认证由IC卡和PSAM卡共同完成。
终端只是在IC卡和PSAM卡之间传输安全信息,不参与密钥运算过程。
6.2.5 IC卡终端的数据安全要求
6.2.5.1 一般要求
IC卡终端一般存在两种类型的数据:
a) 通用数据:外界可以对这些数据进行访问,但不允许进行无授权的修改;
b) 敏感数据:外界在未授权的情况下,不允许对这类数据进行访问和修改。
6.2.5.1.1 通用数据安全要求
通用数据一般存储在终端的存储器中。在更新参数和下装新的应用程序时,终端应做到:
a) 在更新参数或下载应用程序前能够对下载设备进行有效的身份验证;
b) 在更新参数或下载应用程序后要校验下载数据或程序的完整性。
存储器终端中的数据不应随意改变,保证数据有效。
所有与交易相关的数据均以记录的形式存储在终端的存储器中,终端应保证这些数据的完整性。
6.2.5.1.2 敏感数据安全要求
敏感数据一般应存放在终端安全存取模块中。此模块主要负责保存和处理所有的敏感数据,这些数据包括各种密钥和内部参数。该模块还应提供必要的加密功能。对于安全存取模块的硬件形式在此规范中将不做具体要求。
安全存取模块应做到:出入模块的、以及其内部存放的和正在处理的数据不会由于模块自身或其接口造成任何泄露和改变。
6.2.5.2 交易上传数据
交易上传数据,见表37。
表37 交易上传数据
6.2.5.3 非正常终端数据恢复机制
当IC卡终端在处理IC卡交易时,卡被突然拔出或离开感应区或由于IC卡终端方面的原因突然停止操作(如发生断电),IC卡终端应能监测到卡被拔出又重新插入或重新进入感应区或检测到IC卡终端恢复供电,并对卡非正常交易的错误数据实施恢复处理。
在以上情况下,IC卡终端应进入这样一种状态:即持卡人应将原来的IC卡重新插入或进入感应区,并等待最后一次交易完成。如果持卡人未将原来的IC卡插入或未进入感应区,则IC卡终端应提示待卡人重新插入IC卡或将卡放入感应区。
在上述操作后,IC卡终端应执行以下操作之一:
a) 完成IC卡的最后一笔交易,向持卡人显示交易已完成(如果IC卡余额已被更新);
b) 取消最后一笔交易,向持卡人显示交易已被取消(如果IC卡余额没有被更新)。
6.2.6 黑名单管理
6.2.6.1 概述
消费类终端和服务类终端应具有黑名单存储和检索功能,以实现IC卡脱机交易的安全处理。黑名单管理包括黑名单的收集、分发、存储、检索、更新等原则性的定义。
6.2.6.2 黑名单的记录格式
黑名单文件可以存储两种格式的黑名单记录:
a) 序列号;
b) 序列号的区间。
6.2.6.3 黑名单检查
黑名单检查操作在IC卡合法性检查过程中进行。卡片开始操作后,向IC卡终端回送包括应用序列号在内的公共数据。IC卡终端根据序列号进行黑名单检查操作,检查该卡是否在IC卡终端存储的黑名单卡之列。
6.2.6.4 黑名单更新
黑名单文件更新包括增加、删除和重新下载等操作,具体的安全要求应包括:
a) 黑名单下载设备和IC卡终端间通信数据的安全性和完整性;
b) IC卡终端对黑名单更新操作的安全认证;
c) 更新周期要满足应用要求。
6.2.6.5 黑名单的容量要求
容量要满足应用的要求,最低不应小于1000条。
6.2.7 白名单管理
6.2.7.1 概述
白名单指由住房和城乡建设部IC卡应用服务中心下发给互联互通城市用于判别城市是否加入互联互通的依据。
互通消费类终端应具有白名单存储和检索功能,以实现IC卡脱机交易的安全处理。白名单管理包括白名单的收集、分发、存储、检索、更新等原则性的定义。
6.2.7.2 白名单的记录格式
白名单文件按照互通城市代码来存储白名单记录。
6.2.7.3 白名单检查
白名单检查操作在IC卡合法性检查过程中进行。卡片开始操作后,向IC卡终端回送包括互通标识在内的公共数据。IC卡终端根据互通标识进行白名单检查操作,检查该卡是否允许在该IC卡终端上合法操作。
6.2.7.4 白名单更新
白名单文件更新包括增加、删除和重新下载等操作,具体的安全要求应包括:
a) 白名单下载设备和IC卡终端间通信数据的安全性和完整性;
b) IC卡终端对白名单更新操作的安全认证;
c) 互联互通城市应在规定时间内对白名单进行更新,避免因未及时更新而造成重大损失;
d) 互联互通城市不得擅自对白名单进行增加、删除和修改;
e) 白名单可采用多种能与离线式终端进行安全数据交换的方式下载。
6.2.7.5 白名单的容量要求
容量要满足应用的要求,容量为1KB。
6.2.8 离线式IC卡终端交易流程
IC卡终端的交易流程是IC卡应用的基本技术要求。在CPU用户卡交易流程中,本地与异地交易应统一采用卡内互联互通应用下的电子钱包。详细的交易流程应按附录B的规定进行。
6.2.9 离线式IC卡终端安全要求
6.2.9.1 离线式IC卡终端程序的下载
IC卡终端应统一编号,统一管理:
a) 开发终端程序的软件包应严格控制;
b) 终端对程序的下载应有相应安全机制控制,以防止非法下载;
c) 终端程序的下载应由专人执行,并做记录;
d) 编码规则:城市代码(2字节)+应用代码(1字节)+序列号(3字节)。
6.2.9.2 离线式IC卡终端加载的安全存取模块
安全存取模块(SAM卡)应具备以下功能:
a) 保护所有敏感数据不会泄漏;
b) 受到非法攻击和篡改会自动删除内部的所有敏感数据;
c) 完成安全报文传送和密钥算法。
6.2.9.3 离线式IC卡终端内部应用的安全
如果终端上有多个应用,应用程序应共享公用数据,各应用的内部数据要相互独立。
6.2.9.4 离线式IC卡终端与外部设备通讯的安全
终端与主机或前置机的通信安全应包括:
a) 终端对输出的关键报文产生MAC,随报文一起传送,以防伪造的报文;
b) 终端对输入的关键报文验证MAC,以防伪造的报文;
c) 终端与PIN的输入设备密码键盘:如果需要持卡人输入密码,那么应从密码键盘得到密码的密文。
6.2.9.5 离线式IC卡终端安全认证流程
本标准只涉及CPU卡在离线式IC卡消费终端上交易的安全认证流程。CPU卡消费交易安全认证流程,见图5。
图5 CPU卡消费交易安全认证流程
6.3 离线门禁用IC卡终端设备
6.3.1 基本要求
6.3.1.1 物理配置
对于IC卡门禁终端一般都应配置以下部件:MCU、读写部件、安全存取模块(SAM)、声光提示部件、数据交换通道、电源、内存或其他存储设备、门禁执行机构。
6.3.1.2 处理时间
典型响应时间是指门禁IC卡终端从IC卡进入设备建立有效连接、经过卡认证、有效性判断、卡内存储相关信息所需要的时间。
非接触CPU卡门禁终端离线方式的典型响应时间应不大于300ms。
6.3.1.3 应用性能
离线门禁用IC卡终端设备的应用性能应符合下列要求:
a) 应采用CPU卡作为建筑及居住区门禁终端智能卡的载体;
b) 具有SM1算法的安全存取模块,用于同支持SM1算法的IC卡进行认证,保证系统的安全;
c) 具备消防功能,即断电情况下保证门处于打开状态;
d) 应对刷卡开门事件、操作管理事件、终端状态等信息管理,以提供给系统进行信息查询、统计、打印以及数据的备份、恢复等操作;
e) 内部系统应在外部电源失电时,不被改变或破坏,并能保存断电前的工作状态和内部数据;
f) 在脱机状态下,门禁控制系统应保存最近一周或4000条以上的使用记录,以备事后调用和追溯管理。
6.3.2 一般要求
6.3.2.1 气候环境、机械环境、可靠性、安全性、电磁兼容性要求
离线门禁用IC卡终端的气候环境、机械环境、可靠性、安全性、电磁兼容性、限用物质限量要求、能效等要求应符合国家现行相应标准。
6.3.2.2 物理特性、逻辑接口、通信协议要求
离线门禁朋IC卡终端设备的物理特性、逻辑接口、通信协议要求应符合6.2.2.2的要求。
6.3.3 功能要求
门禁IC卡终端的功能要求包括下列内容:
a) 开门功能:刷卡直接开门或用户可通过输入设置的密码实现开门;
b) 卡片时效管理功能:系统可设定卡片有效时间使用范围,即超过有效时间范围卡片失效,对卡片的实效进行管理;
c) 权限管理功能:对操作人员的授权和登录核准进行管理,权限可分管理权限和用户权限;卡片的权限包括门禁终端的机号、有效期等,通过发行不同的权限对卡片进行管理;
d) 数据管理功能:对每次刷卡记录、操作管理事件、各控制终端状态等信息进行标志,以提供给系统进行信息的查询、统计、打印以及数据的备份、恢复等操作;
e) 开放时区功能:灵活设置终端设备受控时段(即需刷卡或密码开门时段)和打开时段;
f) 消防联动功能:出现消防报警信号时,门禁系统自动脱离控制,属于打开状态;
g) 开门超时报警功能:开门时间超过设置的超时报警时间时,实时监控界面就会出现报警画面和相应的声音;
h) 非法闯入报警功能:门禁有非法闯入时,实时监控界面就会出现报警画面和相应的声音;
i) 胁迫报警功能:输入胁迫密码开门时,实时监控界面就会出现报警画面和相应的声音;
j) 记忆存储功能:门禁系统记录每次操作(包括卡号、刷卡时间、门禁号等信息)并储存;
k) 考勤功能:通过刷IC卡实现考勤功能;
l) 通道闸功能:通过刷IC卡实现开启通道闸功能;
m) 保管箱功能:通过刷IC卡实现打开保管箱功能。
6.3.4 数据安全要求
6.3.4.1 一般规定
门禁IC卡终端一般存在两种类型的数据:
a) 通用数据:外界可以对这些数据进行访问,但不允许进行无授权的修改;
b) 敏感数据:外界在未授权的情况下,不允许对这类数据进行访问和修改。
6.3.4.2 通用数据安全要求
通用数据一般存储在终端的存储器中。在更新参数和下装新的应用程序时,终端应做到:
a) 在更新参数或下载应用程序前能够对下载设备进行有效的身份验证;
b) 在更新参数或下载应用程序后要校验下载数据或程序的完整性。
终端中的数据不应随意改变,并保证数据有效。所有与操作相关的数据均以记录的形式存储在终端的存储器中,终端应保证这些数据的完整性。
6.3.4.3 敏感数据安全要求
敏感数据一般应存放在终端安全存取模块(SAM)中。此模块主要负责保存和处理所有的敏感数据,这些数据包括各种密钥和内部参数。该模块还应提供必要的加密功能。对于安全存取模块的硬件形式不做具体要求。
在安全存取模块应用中,出入模块的、以及内部存放的和正在处理的数据不应由于模块自身或其接口造成任何泄露和改变。
6.3.5 黑名单管理
终端应具有黑名单存储和检索功能,以实现IC卡脱机操作的安全处理。黑名单管理包括黑名单的收集、分发、存储、检索、更新等原则性的定义。
黑名单检查操作在IC卡合法性检查过程中进行。卡片开始操作后,IC卡终端根据安全认证码进行黑名单检查操作,检查该卡是否在IC卡终端存储的黑名单卡之列。
黑名单文件更新包括增加、删除和重新下载等操作,具体的安全要求应包括:
a) 黑名单下载设备和IC卡终端间通信数据的安全性和完整性;
b) IC卡终端对黑名单更新操作的安全认证;
c) 更新周期要满足应用要求。
黑名单库的容量要满足应用的要求,最低不应小于1000条。
6.3.6 操作流程
6.3.6.1 概述
门禁IC卡终端的操作流程是IC卡应用的基本技术要求。软件开发商和系统集成商在开发和实施IC卡应用系统项目时,应遵循本标准所规定的基本技术要求。
门禁IC卡终端有密钥认证和读CPU卡安全认证码两种认证方式:
a) 密钥认证方式既可以应用于离线方式,也可以应用于在线方式;
b) 读CPU卡安全认证码方式仅应用于在线方式。
6.3.6.2 密钥认证
门禁IC卡终端密钥认证操作流程,见图6。
图6 门禁IC卡终端密钥认证操作流程图
门禁IC卡终端密钥认证的操作过程应按下列顺序进行:
a) 选择门禁应用:门禁使用的CPU卡,如支持一卡多用,各应用分区要有独立的安全要求;
b) 卡的合法性与有效性判别:门禁IC卡终端检测到IC卡后首先要对卡的合法性与有效性进行判断,避免非法卡、伪卡、无效卡等在系统内使用;
c) 查黑名单:门禁IC卡终端检查该卡是否列入终端存储的黑名单中,如该卡列入黑名单,存储黑名单操作记录,并退出;
d) 门禁权限有效性判断:门禁用IC卡终端应对卡内门禁权限信息有效性(有效期、是否具有本终端权限等)进行判断,如IC卡门禁权限非法,应退出操作;
e)生成通行记录,完成本次操作。
6.3.6.3 读CPU卡安全认证码
门禁IC卡终端读CPU卡安全认证码操作流程,见图7。
图7 门禁IC卡终端读CPU卡安全认证码操作流程
门禁IC卡终端读CPU卡安全认证码的操作过程应按下列顺序进行:
a) 选择门禁应用:门禁使用的CPU卡,如支持一卡多用,各应用分区要有独立的安全要求;
b) 卡的合法性与有效性判别:门禁用IC卡终端检测到IC卡后首先要对卡的合法性与有效性进行判断,避免非法卡、伪卡、无效卡等在系统内使用;
c) 查后台数据库并进行门禁权限有效性判断:门禁用IC卡终端将安全认证码发送给后台鉴别;
d) 后台鉴别卡片权限并将鉴别结果发送给终端,同时后台生成通行记录,完成本次操作。
6.3.7 安全要求
IC卡终端应统一编号、管理,并符合下列要求:
a) 开发终端程序的软件包应严格控制;
b) 终端对程序的下载应有相应安全机制控制,以防止非法下载;
c) 终端程序的下载应由专人执行,并做记录。
当终端上有多个应用时,应实现公用数据可以共享,各应用的内部数据要相互独立。
终端与主机或前置机的通信安全应符合下列要求:
a) 终端对输出的关键报文产生MAC,随报文一起传送,以防伪造的报文;
b) 终端对输入的关键报文验证MAC,以防伪造的报文;
c) 终端与PIN的输入设备密码键盘,当需要持卡人输入密码时,应从密码键盘得到密码的密文。
门禁IC卡终端密钥认证方式的安全认证流程,见图8。
图8 门禁IC卡终端密钥认证方式的安全认证流程
门禁IC卡终端读CPU卡安全认证识别码的安全认证流程,见图9。
图9 门禁IC卡终端读CPU卡安全认证识别码的安全认证流程
7 在线IC卡终端设备
7.1 在线消费类及服务类IC卡终端设备
7.1.1 概述
在线(联机)交易是指IC卡终端设备通过有线或无线通讯方式,实时与交易清算中心相关设备(网络通讯接口、数据加密机、前置服务器、数据存储体等)连接并获取认证和授权情况下,IC卡终端所能提供的消费或服务功能。
7.1.2 基本物理配置
对于任何类型的在线IC卡终端一般都应配置以下部件:显示部件、读写部件、有线或无线数据通讯接口、数据交换通道、电源、内存或其他存储设备。
7.1.3 一般要求
7.1.3.1 气候环境、机械环境、可靠性、安全性、电磁兼容性要求
在线消费类及服务类IC卡终端的气候环境、机械环境、可靠性、安全性、电磁兼容性、限用物质限量要求、能效等要求应符合国家现行相应标准。
7.1.3.2 物理特性、逻辑接口、通信协议要求
在线消费类及服务类IC卡终端设备的物理特性、逻辑接口、通信协议要求见6.2.2.2的要求。
7.1.4 终端多应用的管理
7.1.4.1 基本要求
在线多应用IC卡终端应给用户提供一个按优先级排序的应用列表以供选择。
7.1.4.2 终端多应用的管理
在线IC卡终端多应用的管理应达到以下目标:
a) 各个应用之间不能相互影响,各应用应相互独立运行;
b) 共享数据应保证所有的应用可以共享终端中的通用数据,各应用的专用数据不能被其他应用获取。
7.1.5 在线IC卡充值终端的功能要求
7.1.5.1 一般要求
在线IC卡充值类终端在进行交易时,应首先联机对IC卡的合法性予以验证,同时检查账户状况及其他交易数据。如果发卡方因某种原因不能接受交易,那么充值终端设备应显示相应的告知信息。
7.1.5.2 安全要求
在线IC卡充值类终端在IC卡与加密机之间建立通信链路,安全认证由IC卡和加密机共同完成,步骤包括:
a) 根据IC卡ID号分散卡片应用密钥信息;
b) 计算并认证IC卡安全认证码;
c) 验证交易数据信息MAC和交易认证码TAC。
IC卡充值终端设备只是在IC卡和加密机之间传输安全认证信息,不参与密钥运算过程。
在线充值类终端在设计时应对交易清算中心授权的时间、次数和金额进行限制,防止该类终端在非法使用时给系统造成重大损失(例如伪充值记录)。
在线充值类终端在与交易清算中心的双向身份认证、密钥传送、授权、交易记录上传及黑名单下载等通讯过程应采用密文加校验传送。
7.1.6 在线IC卡终端的数据安全要求
7.1.6.1 一般要求
在线IC卡终端一般存在两种类型的数据:
a) 通用数据:外界可以对这些数据进行访问,但不可以进行无授权的访问;
b) 敏感数据:外界在未授权的情况下,不允许对这类数据进行访问和修改。
7.1.6.1.1 通用数据安全要求
通用数据一般存储在终端的存储器中。在更新参数和下装新的应用程序时,终端应做到:
a) 在更新参数或下载应用程序前,能够对下载设备进行有效的身份验证;
b) 在更新参数或下载应用程序后,要校验下载数据或程序的完整性。
对存储器要求应做到:无论在什么情况下,终端中的数据都不会随意改变,并保证数据有效。
所有与交易相关的数据均以记录的形式存储在终端的存储器中,终端应保证这些数据的完整性,不会因更新参数或下载应用程序而被改变。
7.1.6.1.2 敏感数据安全要求
敏感数据一般应存放在终端安全存取模块中。
安全存取模块主要负责保存和处理所有的敏感数据,这些数据包括各种内部参数。该模块还应提供必要的加密功能。对于安全存取模块的硬件形式在此规范中将不做具体要求。
安全存取模块应做到:出入模块的以及其内部存放的和正在处理的数据,不会由于模块自身或其接口造成任何泄露和改变。
7.1.6.2 交易上传数据
在线IC卡终端需要实时上传的交易记录至少包括如下46字节数据,IC卡终端交易上传数据格式,见表38。
表38 IC卡终端交易上传数据格式
7.1.6.3 非正常中断数据恢复机制
在线IC卡终端在处理IC卡交易时如果出现以下情况时:
a) IC卡被突然拔出;
b) IC卡离开感应区;
c) IC卡终端的原因突然停止操作(如发生断电)。
IC卡终端应能监测到卡被拔出又重新插入或重新进入感应区或检测到IC卡终端恢复供电,并对卡非正常交易的错误数据实施恢复处理。如果持卡人未将原来的IC卡插入或未进入感应区,则IC卡终端应提示持卡人重新插入IC卡或将卡放入感应区。
在上述操作后,IC卡终端应执行以下操作之一:
a) 完成IC卡的最后一笔交易,向持卡人显示交易已完成(如果IC卡余额已被更新);
b) 取消最后一笔交易,向持卡人显示交易已经取消(如果IC卡余额没有被更新)。
7.1.7 在线IC卡终端安全要求
7.1.7.1 在线IC卡终端程序的下载
IC卡终端应统一编号,统一管理,并符合下列要求:
a) 开发IC卡终端软件包程序应严格控制;
b) IC卡终端对应用程序下载应有相应安全机制控制,防止非法下载;
c) 在线IC卡终端应用程序可以脱机或在线方式下载,并具有在线更新功能;
d) IC卡终端程序下载时应有专人执行,并做好登记;
e) 编码规则:城市代码(2字节)+应用代码(1字节)+序列号(3字节)。
7.1.7.2 在线IC卡终端内部应用的安全
如果在线IC卡终端上有多个应用,在应用程序上应做到公用数据可以共享,各应用的内部数据要相互独立。
7.1.7.3 IC卡终端与外部设备通讯的安全
在线IC卡终端与交易清算中心前置机及加密机的通信安全应包括:
a) IC卡终端对输出的关键报文产生MAC,随报文一起传送,以防伪造的报文;
b) IC卡终端对输入的关键报文验证MAC,以防伪造的报文;
c) IC卡终端与PIN的输入设备密码键盘:如果需要持卡人输入密码,应该从密码键盘得到密码的密文。
7.1.7.4 在线IC卡终端安全认证流程
在线充值交易安全认证流程,见图10。
图10 在线充值交易安全认证流程
7.2 在线门禁用IC卡终端设备
7.2.1 基本要求
非接触CPU卡门禁终端在线方式的典型响应时间不应大于500ms。
在线门禁用IC卡终端设备的基本要求应符合6.3.1的要求。
7.2.2 一般要求
7.2.2.1 气候环境、机械环境、可靠性、安全性、电磁兼容性要求
在线门禁用IC卡终端的气候环境、机械环境、可靠性、安全性、电磁兼容性等要求应符合国家现行相应标准。
7.2.2.2 物理特性、逻辑接口、通信协议要求
在线门禁用IC卡终端设备的物理特性、逻辑接口、通信协议要求应符合6.2.2.2的要求。
7.2.3 功能要求
在线门禁用IC卡终端设备的功能要求应符合6.3.3的要求。
7.2.4 数据安全要求
在线门禁用IC卡终端设备的数据安全要求应符合6.3.4的要求。
7.2.5 黑名单管理
在线门禁用IC卡终端设备的黑名单管理应符合6.3.5的要求。
7.2.6 操作流程
在线门禁用IC卡终端设备的操作流程应符合6.3.6的要求。
7.2.7 安全要求
在线门禁用IC卡终端设备的安全要求应符合6.3.7的要求。
8 表具类IC卡终端设备
8.1 表具类IC卡终端的定义和分类
用于建设事业的IC卡表具类终端是指包含有计量仪表的一类IC卡机具。这类IC卡机具中的计量仪表一般为机械式的,IC卡在此类仪表中的作用是作为计量仪表与结算系统间的数据传输工具,结算可以在此类仪表中进行,也可在结算系统上完成。
IC卡表具类终端通过以下几种形式进行分类:
a) 按照所包含的计量仪表类型和用途划分为:
1) IC水表终端;
2) IC卡燃气表终端;
3) IC卡热量表终端。
b) 按照结算方式划分为:
1) 预付费IC卡表具类终端;
2) 后付费IC卡表具类终端。
c) 按照结构形式划分为:
1) 一体化IC卡表具类终端;
2) 分体式IC卡表具类终端。
d) 按照IC卡接口形式划分为:
1) 接触式IC卡表具类终端;
2) 非接触式IC卡表具类终端。
8.2 表具类IC卡终端的基本性能要求
8.2.1 基本物理配置
任何类型的IC卡表具类终端一般都应配置以下部件:计量基表、处理部件、传感器、显示单元、IC卡接口、ESAM、非易失性存储器、执行机构、电源等。
8.2.2 终端交易时间要求
8.2.2.1 典型交易时间
典型交易时间是指IC卡表具类终端在使用状态下,从IC卡表具类终端感知到IC卡进入IC卡接口,到完成有效交易、IC卡表具类终端向IC卡成功地返写全部相关交易信息和要求反馈的信息、IC卡可以安全完整脱离IC卡接口所需要的时间。典型交易时间不包括上述时段之外的发票打印时间、终端内记录交易数据的时间、数据下载和上传等动作耗费的时间。
8.2.2.2 表具类IC卡终端典型交易时间要求
非接触式CPU卡表具类终端的典型交易时间不应大于1500ms。
接触式CPU卡表具类终端的典型交易时间不应大于1050ms。
8.3 表具类IC卡终端的一般要求
8.3.1 气候环境、机械环境、可靠性、安全性、电磁兼容性要求
表具类IC卡终端的气候环境、机械环境、可靠性、安全性、电磁兼容性等要求应符合国家现行相应标准。
8.3.2 电源要求
表具类IC卡终端的电源应保证IC卡的读写正确和运行正常。
8.3.3 计量特性和寿命要求
表具类IC卡终端的计量特性应符合相应产品的国家现行标准要求,整机使用寿命不应低于其基表的强制更换周期。
8.4 表具类IC卡终端的功能要求
8.4.1 基本功能
表具类IC卡终端应具有如下功能:
a) 应能安全获取作为用户预存金额或付费信息载体的IC卡中的付费数据,并按发卡管理部门制定的规则,根据表具内部的计量信息进行消费;
b) 应能从载有付费信息的IC卡中获取各种必要的运行参数、计量消费规则及控制信息等数据,并向该IC卡反馈表具类终端的时段消费记录、控制信息和工作状态等数据;
c) 应能根据控制信息、计量消费规则和付费信息作出正确决策,并对水、燃气和热量的供给进行有效控制;
d) 应有信息查询、用户补卡挂失、退费消户、透支允许、换表数据转移等能力。
8.4.2 显示功能
8.4.2.1 使用和消费信息显示
表具类IC卡终端应能在用户需要时向用户显示用户关心的必要信息,如累计用量、当月用量、剩余用量、本次付费(或购量)等。
8.4.2.2 状态显示
表具类IC卡终端应至少能显示电池状态、阀门开关状态和影响设备完成基本功能的外部影响的状态。
8.4.2.3 错误信息显示
表具类IC卡终端应能显示用户操作错误类型、IC卡与设备之间数据交换错误类型及设备自检发现错误的类型。
8.4.3 提示功能
表具类IC卡终端在即将强行实施影响用户对水、燃气、热量正常消费的控制动作之前,应对用户发出有效提示,使用户有充分时间采取规避措施,不致影响用户正常消费。用户接收提示并给设备回复后,提示动作应立即撤销。
8.4.3.1 电源异常提示
电池容量下降到接近下限值时或电源电压下降到接近不足以维持设备可靠工作的下限值时,表具类IC卡终端应对用户发出有效提示。
8.4.3.2 付费提示
表具类IC卡终端的用户付费(或购量)接近耗尽时,设备应对用户发出有效提示。
8.4.4 控制功能
8.4.4.1 付费控制
表具类IC卡终端的用户付费(或购量)耗尽时,设备对用户正常消费进行控制,促使用户依法缴费。
8.4.4.2 电源异常控制
电池容量下降到下限值时或电源电压下降到维持设备可靠工作的下限值时,表具类IC卡终端应对用户正常消费进行控制,使相关单位及时更换电池或维修电源,保持设备正常工作状态。
8.4.4.3 设备故障控制
表具类IC卡终端应具有自检能力。当自检时发现设备故障影响其完成基本功能时,应对用户正常消费进行控制,使用户及时向相关单位报修,避免引起计量纠纷。
8.4.5 保护功能
8.4.5.1 磁保护
对环境磁场敏感的表具类IC卡终端,当外部磁场强度达到影响其正常计量和交易时,应有适当反应使用户改善设备的外部磁场环境,以避免不公平的计量或交易。
8.4.5.2 断线保护
对有连结导线外露的表具类IC卡终端,当外露导线之一或全部被断开时,设备应有适当反应使用户设法恢复外露导线的应有状态。
8.4.5.3 电源中断保护
表具类IC卡终端在电源突然中断后,终端应对用户正常消费进行控制,在用户恢复设备的电源供给后,应保证表具的正常计量和公平交易不受影响。
8.5 表具类IC卡终端的数据安全要求
8.5.1 一般要求
表具类IC卡终端应安装ESAM模块,用于完成对IC卡进行安全认证、数据存取和线路加密等功能。
表具类IC卡终端一般存在两种类型的数据:
a) 通用数据:外界可以对这些数据进行访问,但不允许进行无授权的修改;
b) 敏感数据:外界在未授权的情况下,不允许对这类数据进行访问和修改。
8.5.1.1 通用数据安全要求
通用数据一般存储在终端的存储器中。在更新参数和下装新的应用程序时,终端应做到:
a) 在更新参数或下载应用程序前能够进行有效的身份验证;
b) 在更新参数或下载应用程序后要校验下载数据或程序的完整性。
对存储器要求应做到:无论在什么情况下,终端中的数据都不会随意改变,并保证数据有效。
所有与交易相关的数据均以记录的形式存储在终端的存储器中,终端应保证这些数据的完整性。
8.5.1.2 敏感数据安全要求
敏感数据一般应存放在终端ESAM模块中。
ESAM模块主要负责保存和处理所有的敏感数据,这些数据包括各种密钥和内部参数。该模块还应提供必要的加密功能。对于安全存取模块的硬件形式在此规范中将不做具体要求。
ESAM模块应做到:出入模块的、以及其内部存放的和正在处理的数据不会由于模块自身或其接口造成任何泄露和改变。
8.5.2 非正常中断数据恢复机制
如果表具类IC卡终端在处理IC卡交易时,卡被突然拔出或离开感应区或由于IC卡终端方面的原因突然停止操作(如发生断电),IC卡终端应能监测到卡被拔出又重新插入或重新进入感应区或检测到IC卡终端恢复供电,并对卡非正常交易的错误数据实施恢复处理。
在以上情况下,IC卡终端应进入这样一种状态:即持卡人应将原来的IC卡重新插入或进入感应区,并等待最后一次交易完成。如果持卡人未将原来的IC卡插入或未进入感应区,则IC卡终端应提示持卡人重新插入IC卡或将卡放入感应区。
在上述操作后,IC卡终端应执行以下操作之一:
a) 完成IC卡的最后一笔交易,向持卡人显示交易已完成(如果IC卡余额已被更新);
b) 取消最后一笔交易,向持卡人显示交易已被取消(如果IC卡余额没有被更新)。
8.6 表具类IC卡终端交易流程
表具类IC卡终端交易流程参照6.2.8,并符合下列要求:
a) 表具使用的CPU卡,如支持一卡多用,各应用分区要有独立的安全要求;
b) 表具采用CPU卡交易时,要求使用安全认证密钥与SAM进行安全认证,应用分区交易前要至少做一次安全认证。
8.7 安全认证流程
表具类终端消费安全认证流程,见图11。
图11 表具类终端消费安全认证流程
9 密钥系统及要求
9.1 基本要求
密钥系统的最低要求包括一个城市的密钥系统,无论是在一台计算机或一台终端上实现,不能以比本标准规定的安全、保护或控制要求还要低的方式来实现或控制。
9.2 密钥系统
9.2.1 一般规定
密钥系统遵循统一生成、统一分发、统一管理的原则,由中心级密钥管理系统和地方级密钥管理系统组成。两级密钥系统基于不同的侧重点分别产生不同用途的应用密钥,为IC卡应用提供安全保障。
9.2.2 中心级密钥系统
生成IC卡应用的消费主密钥及各地消费密钥,使密钥按城市分割,提高密钥使用的安全性,又保障IC卡应用的一卡多用和互联互通。中心级密钥管理系统将生成的密钥通过密钥母卡或硬件密码机的方式分发到各地。
9.2.3 地方级密钥系统
地方级密钥管理系统通过中心级密钥管理系统下发的母卡或硬件密码机,获得本地的消费密钥,生成本地各种应用所需要的密钥,满足本地各个行业一卡多用和异地互联互通的安全要求。
9.3 对称密钥管理的安全要求
9.3.1 一般规定
密钥管理是系统安全的核心,涉及密钥的生成、发行、更新等。用于一种特定功能的加密/解密密钥不能被任何其他功能所使用。应能实现下列功能:
a) 密钥生成功能,根据用户输入采用特定的密钥输入算法产生系统所需要的密钥;
b) 密钥传输功能,将系统密钥安全传输到交易认证或发卡加密设备中;
c) 密钥备份、恢复功能,提供系统密钥的备份和恢复功能,以便于在系统崩溃时对系统密钥进行恢复;
d) 密钥更新和回收功能。
9.3.2 密钥生成
9.3.2.1 密钥生成的基本安全要求
为保证密钥的安全和防止密钥的泄露,在密钥生成时,应采取以下措施:
a) 密钥生成采用硬件加密的方式;
b) 密钥生成的环境应保证绝对安全;
c) 参加密钥生成的特殊人员的安全管理规定;
d) 密钥生成过程应按照严格的操作规程进行。
9.3.2.2 密钥生成方式
密钥一般采用集中方式生成,即由项目最高管理机构生成相应的各种主密钥组,其他密钥由该组分散生成。密钥生成的两种基本方法是:
a) 不可重复的密钥生成:随机过程,生成不可恢复的密钥,每次的数值不相同;
b) 可重复的密钥生成:密钥变换、密钥衍生;而且密钥的生成是可以重复的,在需要的情况下能够重新得到与原来相同的密钥值。
9.3.2.3 密钥生成的安全技术
不重复生成的密钥采用随机产生的方法生成,由系统随机产生这些密钥,写入安全存取模块保存,可重复生成的密钥采用密钥交换或密钥衍生的方法生成,确保密钥变换或密钥衍生的过程绝对安全。
9.3.3 密钥存储
9.3.3.1 基本要求
密钥存储的基本要求规定了密钥的存储形式、存储要求和存储方法。
9.3.3.2 存储形式
密钥的存储有三种形式:明文存储、密钥组件、密文存储。
a) 明文存储
密钥明文只能保存在安全密码设备内。
b) 密钥组件
将密钥分为两个或更多的密钥组件,密钥组件应使用双重控制技术进行保护存储。
c) 密文存储
密钥可以以密文形式保存,但其加密或解密过程应在安全密码设备中进行。
9.3.3.3 存储要求
可采用下列一项或多项防止存储密钥的篡改和非授权替换:
a) 从物理或逻辑上防止对密钥存储区的非授权访问;
b) 根据不同的使用目的将密钥加密后存储;
c) 确保不能同时知道明文数据及其密文数据。
9.3.3.4 存储方法
对存储的密钥可采用下列一项或多项方法:
a) 根据不同的使用目的对密钥进行物理隔离存储;
b) 用保护密钥加密后存储,保护密钥本身采用物理安全保护措施;
c) 用口令保护密钥,限制非授权的访问;
d) 可被证明的其他有效方式。
9.3.4 密钥分散
密钥分散是采用一个非秘密的可变数据和一个变换过程,将一个密钥衍生出新的对称密钥的过程。密钥分散应满足下列要求:
a) 密钥变换过程应不可逆;
b) 子密钥的泄露不会导致根密钥和由同一过程分散出的其他子密钥的泄露;
c) 支持密钥分散的安全密码设备,分散过程不会泄露、替换和篡改被分散的密钥。
9.3.5 密钥发行
9.3.5.1 密钥发行方式
密钥的发行采用阶梯生成、下发方式,即由上一级生成下一级所需的各种子密钥,并以硬件设备或卡片的形式传递给下一级。
9.3.5.2 密钥发行的安全技术
密钥分发注入是将密钥采用安全的方式导入安全密码设备的过程,导入过程不应导致被分发注入的密钥被泄露、替换和篡改。
a) 对密钥的分发注入应满足下列要求:
1) 密钥分发注入过程中不得泄露密钥明文的任何组成部分;
2) 安全密码设备的接口和传输信道应保证密钥明文不被泄露、替换和篡改;
3) 安全密码设备需鉴别操作人员身份;
4) 只有安全密码设备才能负责密钥传输。
b) 对密钥组件分发注入应满足下列要求:
1) 密钥组件的分发过程不得泄露密钥组件的任何组成部分;
2) 安全密码设备的接口和传输信道应保证密钥组件不被泄露、替换和篡改;
3) 密钥组件的分发注入过程应按照双重控制的原则进行。
9.3.6 密钥备份
密钥备份是存储密钥副本,用于恢复原密钥。备份密钥应具有访问控制权限,禁止通过非授权的方式恢复原密钥。密钥备份过程应保证密钥不被泄露、替换和篡改。
不可重复生成的密钥备份可采用下列方式:
a) 加密后备份;
b) 拆分成密钥组件后备份。
可重复生成的密钥备份可采用下列方式:
a) 加密后备份;
b) 拆分成密钥组件后备份;
c) 在双重控制下备份生成密钥的密钥基码、变换方式和衍生方式。
9.3.7 密钥使用
密钥应被用于指定的目的和限定的用途。密钥在使用过程中不应泄露任何密钥信息,并防止被替换和篡改。
密钥的使用应满足下列要求:
a) 密钥只应在指定的安全密码设备中使用,且只能用于指定的功能;
b) 载体中不应存放与其应用无关的任何密钥:
c) 已知或怀疑密钥泄露时,应停止密钥的使用。
9.3.8 密钥更新
9.3.8.1 密钥更新的基本安全要求
当密钥的生命周期结束或系统密钥泄露后,需要进行密钥更新。密钥更新的基本原则是保护持卡人的利益不受损害,不影响持卡人的正常交易。密钥更新的全过程应保证系统的安全性能和系统的可用性不受影响。
9.3.8.2 正常密钥更新
正常密钥更新的两种方法:
a) 密钥替换;
b) 更换密钥组。
9.3.8.3 紧急密钥更新
一旦密钥泄露,应立即进行紧急密钥更新。
紧急密钥更新的主要方法有:
a) 安装多组紧急密钥备份组;
b) 停止现有密钥的使用,重新生成密钥。
9.3.9 密钥销毁
密钥销毁是指安全删除不再使用的密钥,包括销毁所有已归档和备份的密钥。
a) 密钥销毁可采用下列一种或多种方式:
1) 擦除密钥;
2) 以新密钥或非保密数据覆盖原密钥;
3) 销毁其存储介质;
4) 其他可被证明的有效方式。
b) 密钥销毁应满足下列要求:
1) 在销毁密钥前,应进行检查以确保由这些密钥保护的已归档材料不再需要它们;
2) 密钥在销毁后,不应有任何信息可以用来恢复已销毁的密钥。
9.4 非对称密钥管理的安全要求
9.4.1 基本要求
在非对称密钥管理系统中一般私钥用于解密或产生数字签名,公钥用于加密或验证签名。非对称密钥对的生成、存储、传输、使用等应保证私钥的机密性和公钥的完整性与真实性。
9.4.2 密钥生成
非对称密钥采用集中方式生成。非对称密钥的生成是产生私钥和公钥的过程,密钥生成应采用随机或伪随机的方式,应保证私钥的机密性和公钥的完整性。
9.4.3 密钥的传输
9.4.3.1 私钥的传输
私钥传输的要求与对称密钥分发与注入的要求相同。
9.4.3.2 公钥的传输
公钥可以通过手工分发或通过通信信道自动分发。公钥的传输没有机密性要求,但应确保其真实性和完整性,可采用以下方法:
a) 使用数字签名系统对公钥和相关数据签名,创建公钥证书;在使用公钥前,接收者通过验证数字签名来检验公钥的真实性;
b) 在对公钥来源可信的情况下,可以通过为公钥和相关数据产生校验码的方式来保证公钥的完整性。
9.4.4 密钥存储
9.4.4.1 私钥存储形式、要求及方法
在非对称密钥的存储过程中,私钥的存储要求保证机密性和完整性。私钥的存储形式、存储要求及存储方法应符合9.3.3的规定。
9.4.4.2 公钥存储形式
公钥的存储要求保证真实性和完整性。公钥应以下列形式存储:
a) 存储在证书中;
b) 存储于其他可信环境中。
9.4.5 密钥备份
非对称密钥备份的要求应符合9.3.6的规定。
9.4.6 密钥使用
私钥用于解密或产生数字签名,公钥用于加密或校验签名。私钥应在安全密码设备内使用,公钥应在其真实性和完整性校验正确后才能使用。
9.4.7 密钥更新
公钥与私钥应同时更新,并应符合9.3.8的规定。
9.4.8 公钥的撤销
下列原因之一将导致公钥撤销:
a) 公钥超出有效期应不再使用并自动撤销;
b) 私钥泄露时对应公钥应被撤销。
9.4.9 密钥的销毁
私钥和公钥销毁应符合9.3.9的规定。
10 数字证书认证系统
10.1 数字证书认证系统
10.1.1 一般规定
数字证书认证系统是指用于对数字证书的申请、审核、签发、注销、更新、查询的综合管理系统。主要由CA中心、RA机构、密钥管理中心等部分组成,各组成部分基于不同的侧重点分别展开不同角度的工作,为IC卡应用提供安全保障。
10.1.2 CA中心
CA中心是数字证书认证系统的核心,负责所有证书的签发、注销和证书注销列表的发布等管理功能。所管理的证书种类将依据具体业务的不同而进行区分,在提高业务安全性的同时,又保障了IC卡应用的可交互性。CA中心所管理的证书,将通过有效安全且可控的分发到各业务平台。
面向公众服务所使用的证书,应由国家有关机构认证的权威第三方运营机构颁发。
10.1.3 RA机构
RA机构负责所有证书申清者的信息录入、审核等工作,同时协助CA中心分担部分证书管理工作。
10.1.4 密钥管理中心
密钥管理中心负责为CA中心提供密钥对的产生,负责对密钥对进行管理,支持密钥的备份和恢复;CA中心私钥也由密钥管理中心统一管理。
10.2 证书管理的安全要求
10.2.1 证书的注册申请
获取证书前,应向RA机构提交申请,申请模式分为以下两种:
a) 公私钥对下发模式:用户公私钥对由CA中心产生,用户应提交身份信息;
b) 公私钥对产生模式:用户按照CA中心要求,自行产生公私钥对,用户应提交身份信息、公钥、随机选取的一段信息及签名等其他CA中心要求的辅助信息。
10.2.2 证书申请的审核
签发证书前,应进行身份确认和拥有私钥确认。
a) 身份确认:身份确认可以采用面对面的方式,即要求用户或其代理者携带证明资料到RA进行验证;也可以通过查询其他的安全应用系统的用户资料,进行自动验证。身份确认的方式需要在发布认证策略时发布;
b) 拥有私钥确认:对申请信息进行数据摘要运算,然后用申请信息中的公钥,对申请信息中的签名进行解密,得到申请者计算的数据摘要,然后进行比较。如相等则验证通过。该过程也可以在证书签发时进行。
10.2.3 证书的签发
证书签发由CA中心完成,包括根证书、CA证书以及用户证书的签发。
a) 根证书和CA证书的签发:根证书是一张自签名证书,使用证书中的公钥即可验证证书的签名。在系统初始化时,首先要签发一张根证书。下级CA的数字证书由上级CA签发。在证书中需要在扩展域标识该证书可以用来签发证书。
b) 用户证书的签发:认证系统签发用户证书时,首先根据用户的申请信息、以及审核信息确认是否为该用户签发证书,当确认可以签发后,向密钥管理系统申请一对加密密钥,再根据申请信息为用户签发两张数字证书并将两张数字证书发布到目录服务器上,然后将数字证书以及加密证书的私钥回传给用户。
10.2.4 证书的下载
证书的下载应符合下列规定:
a) 根证书、CA证书的下载:根证书、CA证书可以由用户通过证书/证书注销列表存储与发布系统下载,也可以与用户证书一起下载;
b) 用户证书的下载:用户或其代理者进行证书的下载时,向RA提供确认信息。通过确认后,将签发好的用户证书和加密证书的私钥,下载到用户的证书载体中。
10.2.5 证书的注销
证书注销由证书/证书注销列表生成与签发系统完成,分为两种情况:
a) 强制注销:证书认证系统的管理人员可以在策略规定的范围内强制注销证书;
b) 用户申请注销:当用户因某种原因不再或不能使用证书时,可以通过RA申请注销证书;
c) 证书注销的过程与证书的申请过程相同。
10.2.6 证书在线查询系统和注销列表的发布
证书在线查询系统和注销列表的发布应符合下列规定:
a) 发布的时间策略:可以采取实时发布和定时发布两种策略。实时发布是指签发系统接到注销请求后,立刻将证书更新至证书在线查询系统;定时发布是指签发系统接到注销请求信息后不立刻签发注销列表,而是按照系统的设定,在确定的时间里签发注销列表。
b) 证书注销列表发布的形式:可以采用完全的注销列表、增量证书注销列表以及证书分布点技术发布证书注销列表。
10.2.7 证书的更新
证书的更新包括根证书、CA证书的更新和用户证书的更新:
a) 根证书和CA证书更新
根证书和CA证书密钥更新根据证书密钥更新的策略进行。
证书密钥更新时,证书认证系统需要签发三个新证书:
1) 新私钥签名的包含新公钥的证书;
2) 新私钥签名的包含旧公钥的证书;
3) 旧私钥签名的包含新公钥的证书。
在过渡期中,系统中存在着的四个证书,保证所有实体能够在各种情况下对所接到的证书进行验证。过渡期结束,只保留新私钥签名的包含新公钥的证书。
b) 用户证书更新
用户证书的更新包括签名证书的更新和加密证书的更新。用户证书更新应向RA提出申请。证书/证书注销列表生成与签发系统接到证书更新申清后,首先将旧的证书作废,如果是加密证书更新则向密钥管理系统申请新的加密密钥对,然后签发新的证书,将新证书传递给用户并发布到证书/证书注销列表存储与发布系统中。
11 安全机制及安全要求
11.1 基本安全要求
11.1.1 多应用安全
多应用安全应符合以下规定:
a) 卡中每一个应用和其他应用使用规则不应发生冲突;
b) 非开放平台CPU卡中的每一个应用应放在一个单独的ADF中,以防止跨过应用进行非法访问;
C) 开放平台CPU卡中的每一个应用应采用“防火墙”机制防止应用间的非法访问。
11.1.2 密钥的独立性
用于一种特定功能的加密/解密密钥不能被任何其他功能所使用,包括保存在IC卡中的密钥和用来产生、派生、传输这些密钥的密钥。
11.2 密钥和个人密码的存放
IC卡应陔能够保证非对称私有密钥或对称加密密钥在没有授权的情况下,不会被泄露出来。如果使用个人密码,则应保证其在IC卡中的安全存放,且在任何情况下都不会被泄露。
11.3 安全报文传送
安全报文传送的目的是保证数据的可靠性、机密性、完整性和对发送方的认证。数据完整性和对发送方的认证通过使用MAC来实现。数据的可靠性和机密性通过对数据域的加密来得到保证。
11.4 安全计算
安全计算应按附录C的规定进行。
11.5 安全存取模块
11.5.1 安全存取模块的物理安全要求
安全存取模块的硬件设计应能够保证在物理上限制对其内部存储的敏感数据的认证与窃取,以及对安全存取模块的非授权使用和修改。一旦安全存取模块受到非法的篡改及攻击,其自身应能够立即完成对内部敏感数据的有效保护,要实现这些目标,安全存取模块应具有防窃等相应机制。
对安全存取模块的构造应满足下列要求:
a) 即使通过特别的工具或专用严重破坏的方法,也不能对模块的硬件或软件进行增加、替换或修改;
b) 任何对敏感数据的访问或修改,只有通过对模块的授权才能达到;
c) 安全存取模块的任何部分的损坏或失效都不会导致敏感数据的泄露;
d) 如果安全存取模块是由多个分离的部分组合而成,而处理的数据也应在这些部件之间传递,那么各部件应保持相同的安全级别。
11.5.2 安全存取模块的逻辑安全要求
一个安全存取模块的逻辑设计应保证,调用任何单一功能或组合功能,都不会导致敏感数据的泄露。对于某些敏感数据操作,应有一定的权限限制。
安全存取模块中可以存放多组不同版本不同索引的主密钥和证书。所有的主密钥和证书通常应在终端机使用之前被下装到安全存取模块中。如果在使用过程中,主密钥需要修改,则应使用安全报文。而要实现这一过程通常应在特殊的授权情况下完成。对外部不能存在任何取得密钥的机会。
为避免伪操作,存放在安全存取模块中的不同类型的主密钥应与不同特定的应用操作相结合。所有脱机交易相关的主密钥和敏感数据应存储在安全存取模块中。安全存取模块应可以实现对称密钥算法和非对称密钥算法。
11.6 安全加密设备的安全要求
11.6.1 物理安全
安全加密设备的物理安全应符合ISO 13491-2中的安全要求,即密码机应该具有当侵害时自动销毁密钥的特性(如:开机箱自动销毁机内密钥)。
采用硬件的物理噪声发生器产生随机数。
11.6.2 密钥管理的安全
密钥管理安全要求包括:
a) 初始密钥的生成采用双重访问控制机制;
b) 密码机内主密钥不能直接或间接导出并保存在机外其他非自主控制的介质中;
c) 如果密钥存储于密码机内,应分散导出,并需在密码机侵害自动销毁密钥机制的保护之下;如果保存于密码机外,则需要以密文的形式或分割的方式存在;
d) 专钥专用,并提供控制机制防止密钥的混用误用;
e) 应提供手工销毁密钥机制。
11.6.3 主要安全功能
安全加密设备的主要安全功能包括:
a) 支持数据加解密;
b) 支持密钥的分散;
c) 支持报文鉴别码的生成和验证;
d) 不支持密钥同步机制;
e) 支持IC卡的密钥管理和身份鉴别机制,确保只为合法用户提供安全服务。
11.7 城市一卡通安全域安全要求
11.7.1 一般规定
城市一卡通安全域安全要求规定如下:
a) 具备安全域权限、DAP权限;
b) 提供SCP02和SCP10安全通道;
c) 提供加密、解密、签名、验签等功能服务的全局应用;
d) 具有公私密钥对及公钥证书;
e) 具有安全认证识别码;
f) 应至少支持SM2、RSA、SHA1和DES/3DES算法;
g) 应至少支持X509格式证书。
11.7.2 安全域安装
安全域安装流程,见图12:
图12 安全域安装流程
11.7.3 CA证书应用
当CA证书应用于空中圈存交易时,CA证书对圈存数据进行签名保护,卡片计算签名的时间不应大于300ms。CA证书应用,见图13。
图13 CA证书应用
11.7.4 安全域通道管理
安全域提供两种安全通道,SCP02和SCP10,在初始化状态时使用SCP02通道,在完成安全域的个人化后可根据需要切换为SCP10通道。
11.7.5 安全域空间管理
在创建新辅助安全域时,安装指令中应包含空间容量参数,以指定安全域所管理的卡空间最大值。在安全域创建完成后,此空间为该安全域独占,其他安全域不可对该安全域进行。
12 IC卡应用系统技术要求
12.1 IC卡应用系统总体架构
IC卡应用系统采用层次式体系结构,第一层为中央清算系统和发卡系统,负责完成IC卡的发行、系统运行管理和资金清算;第二层为应用管理系统,包括应用结算中心、运营公司及数据采集点,负责完成应用或企业的资金结算、数据采集和上传及相关的应用管理功能;第三层为终端设备,负责对IC卡进行读写操作;第四层为IC卡。IC卡应用系统总体架构,见图14。
图14 IC卡应用系统总体架构
具体实施过程中,可根据城市规模、实施步骤和应用领域的具体情况,对运行平台的体系结构、运行环境和网络架构的选择,采取分系统、分规模逐步建设的办法。
12.2 发卡系统技术要求
发卡系统负责管理和发行IC卡。发卡系统在IC卡应用系统中相对独立,并与中央清算系统相连。
发卡系统的基本功能包括:
a) 空白卡片管理;
b) 卡片库存管理;
c) 卡片初始化;
d) 发卡数据的储存、上传和统计;
e) 废卡管理。
发卡系统应为每张成功发行的卡片生成一条发卡记录,并将发卡记录传送到中央清算系统。中央清算系统应为每张成功发行的卡片建立惟一的账户,并保存发卡信息。
发卡系统应有相关的安全措施保证发卡过程的安全。执行发卡操作的操作人员应经过身份认证后才能执行发卡操作,发卡系统应记录审计信息。
发卡系统应具有统一、开发的卡片初始化平台,能够对不同的CPU卡芯片进行卡片初始化操作。
12.3 充值系统技术要求
充值系统在应用系统中相对独立,并与中央清算系统相连。充值系统负责对所有提出充值的请求进行管理、验证。
充值系统应为联机充值方式。
充值系统的基本功能包括:
a) 与密码机前置系统实现物理连接;
b) 对自行设置或合作建设的充值点的充值请求进行响应管理。
充值系统应为每张成功充值的卡片生成一条充值记录,并将充值记录传送到中央清算系统。中央清算系统应为每张成功充值的卡片建立惟一的账户,并保存充值信息。
12.4 中央清算系统技术要求
中央清算系统的主要职能是建立并维护IC卡内资金账户信息、处理IC卡交易数据、管理IC卡应用系统的运行、统计清算营运单位应收或应付资金以及对各种相关设备信息进行管理。
中央清算系统是IC卡应用系统的管理中心,是保证系统稳定运行和城际互通的关键。中央清算系统的建设应以规范化、统一化、可扩展、可维护的工程实施原则作为指导。
中央清算系统应采用模块化设计,选用成熟可靠的系统平台,系统的设计容量根据IC卡的远期预计发卡数量确定,交易处理能力以每天可以处理远期预计发卡数量的2倍的交易量确定。中央清算系统应根据近期的实际需要确定通信接入能力,并具备扩展到远期预计接入点数量的能力。
中央清算系统的基本功能模块包括:
a) 基础信息管理模块;
b) 通信接入处理模块;
c) 卡片管理模块;
d) 系统监控管理模块;
e) 财务管理模块;
f) 报表管理模块;
g) 黑名单管理模块;
h) 密钥管理及安全认证模块;
i) 系统管理及备份模块;
j) 正常数据与可疑数据的库表管理模块。
中央清算系统应支持系统临控功能。系统监控的范围包括:
a) IC卡的使用监控;
b) 中央清算系统内的操作监控;
c) 发卡系统监控;
d) 密钥使用监控;
e) 资金流监控;
f) 中央清算系统的资源监控;
g) 网络监控;
h) 充值系统监控。
中央清算系统应提供友好的图形化的界面显示相关的监控信息。对非法操作、有可能影响系统正常运行或对系统安全产生影响的故障要有明确的报警信息。
中央清算系统的基本技术指标包括:
a) 历史交易明细联机保存时间:不应小于90d;
b) 统计数据联机保存时间:不应小于1年;
c) 历史交易查询响应时间:不应大于10s;
d) 日终批处理时间:不应大于4h;
c) 数据备份时间:不应大于2h;
f) 单张报表生成打印时间:不应大于2min;
g) 故障恢复时间:恢复业务工作不应大于24h。
中央清算系统应配置合适容量的不间断电源,至少可以保证清算系统在失电后可以运行30min,并可以正常关闭应用程序和相关设备。清算中心应具备可靠的热备份机制,关键设备没有单点故障,保证系统满足24h不停机运行的要求。在电源、设备或系统出现故障时,应保证清算系统的数据不会丢失。
12.5 数据采集技术要求(采集数据下发白名单)
IC卡应用系统中可以采用联机数据采集和脱机数据采集两种方式,联机数据采集使用网络技术实现,脱机数据采集可以使用IC卡或专用的数据采集介质实现。
在网络正常的情况下,联机数据采集的时间间隔不应大于12h。
脱机数据采集的时间周期根据行业应用的要求确定。
数据采集的过程应保证数据的完整性和可靠性。在数据采集的过程中不能对数据进行删除或篡改。
使用联机方式采集数据时,由于网络故障造成数据采集失败,应可以重新对数据进行采集,数据不能丢失并可以自动滤除重复数据。在网络故障暂时不能恢复时,应提供备用的脱机手段采集数据。
使用脱机方式采集数据时,在采集过程中意外中断,不应造成数据丢失。在故障排除后重新采集时,应保证数据的完整性并可以自动滤除重复数据。
在未得到数据采集成功的确认前,终端设备中的数据不能删除。在至少两个采集周期之内,允许重新对上次已采集的数据重新采集。
数据采集的时间根据行业应用的要求确定。
12.6 互联互通要求
12.6.1 一般规定
IC卡应用系统的建设,应充分考虑IC卡应用系统对互联互通拓展的支持,IC卡应用系统建设对互联互通支持的要求如下:
a) 用户卡卡片结构要求符合本标准;
b) 终端消费流程要求符合本标准;
c) 采用的消费终端要求支持多种类型的用户卡;
d) 生成的交易记录格式要求符合本标准;
e) 采用符合本标准的密钥安全体系。
12.6.2 互联互通卡卡片结构技术要求
互联互通卡卡片结构要求应符合5.7的要求。
12.6.3 受理互联互通卡消费终端技术要求
受理互联互通卡消费终端应符合下列要求:
a) 受理互联互通卡消费终端消费流程应符合6.2和7.1的要求;
b) 受理互联互通卡消费终端应支持多种类型的用户卡;
c) 互联互通白名单的下载应与数据采集及传输一并实施。
12.6.4 互联互通数据清算系统技术要求
互联互通数据清算系统应符合下列要求:
a) 生成的交易记录格式应符合CJ/T 332的要求;
b) 应实现从消费终端采集的消费数据中自动分离异地卡交易数据;
c) 应实现自动组成交易类接口文件,文件格式应符合CJ/T 332要求;
d) 应实现符合规定文件的正常接收;
e) 密钥安全体系应符合9.2的规定。
12.7 应用系统安全要求
12.7.1 一般安全要求
IC卡应用系统应具有防止外部及内部攻击破坏能力、灾害恢复能力、保证数据完整性和一致性的能力。系统应具有满足以下要求:
a) 系统应有可定时或自动升级的防火墙软硬件,防止外来的攻击和破坏;
b) 系统应有可定时或自动升级的网络防病毒软件,防止病毒的侵害;
c) 系统在有条件时应采用专用网络,或使用虚拟专用网络。系统应有专门管理工作站负责系统安全监控和审计,防止非法IP节点接入;
d) 系统应有多重数据备份方案,在发生数据存储装置意外时可重新恢复数据;
e) 系统应有灾害处理预案,可在根据应用要求确定的时间内恢复系统运行;
f) 系统应有除密码口令外的操作员和管理者多级身份识别装置,以防止非法或越权操作;
g) 任何操作都在访问控制机制下进行,受控信息只有在得到权限后才可以操作,同时建立完善的日志管理机制。
12.7.2 数据安全要求
系统产生的所有数据都应附有经SAM运算产生的验证码以及校验码。除充分保证数据在应用环节的准确性、敏感数据的安全性外,对受到自然或人为的影响后,数据的损坏进行灾难恢复也应有相应的措施,其中涉及系统容错、数据备份、数据恢复等方面,主要包括:
a) 未经验证的数据不得存入主数据库;
b) 数据库应进行存取权限管理,在未经授权的情况下,不允许对数据进行修改;
c) 主数据库应存储在具有实时容错备份能力的存储装置中,如磁盘阵列等;
d) 为防止意外灾害,定期应将数据备份保存在不同的地理位置(可采用磁带或安装在其他地点的数据存储装置);
e) 在系统发生灾害后,使用数据备份恢复数据库的时间一般不应超过24h;
f) 存入各类交易终端的数据应有备份,可防止终端损坏时丢失数据。
12.7.3 网络及传输安全要求
网络及传输安全应满足下列要求:
a) 网络设置的防火墙应具有以下功能:
1) 保护那些易受攻击的服务;
2) 拒绝未经批准的服务;
3) 控制对特殊站点的访问;
4) 集中化的安全管理;
5) 对网络存取访问进行记录和统计,可提供是否遭受攻击的报告。
b) 网络防病毒软件应具有以下功能:
1) 检测和定位已侵入系统的计算机病毒;
2) 防止病毒在系统中的传染;
3) 清除或隔离系统中已发现的计算机病毒;
4) 可自动或定期升级。
c) 敏感数据在传输过程中应打包和加密,不得以明文形式传送。有条件时可考虑使用加密机。
12.7.4 环境及设备安全要求
在使用环境中,对于系统中使用的所有设备来说,都受到来自于物理上的安全威胁,如盗窃、破坏、雷击、静电等;针对安全设备,还要考虑防电磁泄露,采取必要的屏蔽措施,应严格按照国家现行相关标准进行系统运行环境建设:
a) 中心网络机房应具有稳压、稳频、不间断电源;
b) 机房应铺设防静电地板;
c) 机房应安装烟雾探测报警器,应备有有效灭火设备;
d) 机房应安装有防盗报警装置和视频监控装置;
e) 使用计算机工作的终端应无软盘驱动器、光盘驱动器、USB接口,不安装上网软件;
f) 机房所有电源插座应带有接地极;
g) 机房应安装有空调设备;
h) 关键设备应有备份,保证系统可在最短时间内恢复工作。
13 多应用开放平台要求
13.1 多应用开放平台总体结构
多应用开放平台为开放平台CPU卡提供安全域及应用管理服务。
多应用开放平台采用层次式体系结构,包含多应用管理系统、客户端软件及SE卡三层。多应用开放平台的总体架构,见图15。
图15 多应用开放平台结构
多应用开放平台的技术框架应符合以下要求:
a) SE卡片构架及系统构架应符合GP2.2(Global Platform 2.2)规范;
b) 多应用开放平台与应用客户端的通信应使用安全信道,保证数据安全;
c) 多应用开放平台与各应用系统的通信应使用安全信道,保证数据安全;
d) 多应用开放平台应具备与其他第三方多应用开放平台互联的能力。
13.2 多应用开放平台技术要求
13.2.1 功能要求
多应用开放平台的基本功能模块包括:
a) 应用管理:对运行在SE上的卡应用的管理,包括应用的创建、参数配置、状态更改、版本控制及测试管理等;
b) 安全域管理:对辅助安全域的管理,包括对该安全域的空间管理、密钥管理和状态管理;
c) 客户端管理:主要包括客户端查询、上传、修改、删除、版本管理等功能;
d) 应用提供商管理:包括应用提供商查询、注册、审批、注销、信息修改等功能;
e) SE卡操作:多应用管理平台可通过客户端对SE卡进行操作,操作内容包括应用下载及个人化、应用锁定、应用解锁、应用更新、应用删除、安全域更新等;
f) 系统管理及备份模块:系统权限、日志、角色等管理,为多应用平台提供数据备份。
13.2.2 技术指标
多应用开放平台的基本技术指标应包括:
a) 系统并发连接数:不应小于100个;
b) 单笔业务处理时间:不应大于2min;
c) 信息查询响应时间:不应大于10s;
d) 日志保存时间:不应少于6m;
e) 数据备份时间:不应大于2h;
f) 故障恢复时间:恢复业务工作不应大于24h。
13.2.3 运维要求
多应用开放平台的运维要求应包括:
a) 至少保证清算系统在失电后可以运行30min;
b) 应具备可靠的热备份机制;
c) 保证关键设备没有单点故障;
d) 确保系统满足7×24h不停机运行的要求;
e) 在电源、设备或系统出现故障时,应保证系统保存的用户数据不会丢失;
f) 系统数据应定期备份,平台应考虑异地容灾备份策略。
13.3 多应用开放平台安全要求
密钥安全体系应符合9.2的规定。
系统安全体系符合11.7的规定。
14 IC卡应用系统验收要求
14.1 验收基本流程
14.1.1 验收大纲
由建设方组织有关专家、检测机构代表和相关人员组成的验收组进行系统验收,验收前应由验收组编制验收大纲。
14.1.2 验收条件
验收条件应包括:
a) 承建方提供经过验收组确认的系统检测报告;
b) 建设方提供系统(试)运行报告。
14.1.3 文档
在对系统验收时应出具以下文档:
a) 招标书;
b) 投标书;
c) 合同书;
d) 系统工程设计;
e) 施工组织设计;
f) 卡片或终端产品检测证书;
g) 工程变更说明文件;
h) 隐蔽工程检查记录(需监理签字);
i) 阶段验收报告;
j) 竣工图纸(蓝图);
k) 系统测试报告;
l) 随机资料(文种不变);
m) 系统操作手册;
n) 用户使用报告;
o) 需有关主管部门审批的系统的许可证;
p) 需有关主管部门验收的验收合格证明。
以上文档可根据应用系统建设的实际情况增减。技术文件和相关资料应做到内容齐全,数据准确无误,文字表达条理清楚,外观整洁,图表清晰,不应有互相矛盾、彼此脱节和错误遗漏现象。
14.1.4 验收程序
验收程序包括:
a) 由承建方向建设方提交验收申请;若具备验收条件,建设方组织验收组进行验收;
b) 验收组进行验收测试;
c) 验收组向建设方提交测试报告和验收报告。
14.1.5 验收结论
由验收组根据验收情况做出验收结论,在各项目均合格的情况下验收合格,如有不合格项,则应限期做出整改,直至验收合格。
14.2 专用IC卡产品验收要求
14.2.1 产品要求
在IC卡应用系统验收时,系统内使用的专用IC卡产品应能够提供以下文件:
a) 产品合格证明;
b) 产品使用说明书;
c) 产品原产地证明或制造商证明;
d) 产品质量保证书或保修证明;
e) 产品符合现行国家或行业标准的证明;
f) 卡片或终端产品检测证书;
g) 全国工业生产许可证(针对国家有要求的IC卡产品);
h) 国家IC卡注册证书。
如果在系统内使用的专用IC卡产品没有符合国家或行业标准的证明,供应商还应当提供以下文件:
a) 产品执行的标准;
b) 产品的第三方检验报告;
c) 用户单位和验收组确认的设备功能的测试报告。
对于按客户要求定制的产品,还应当提供以下文件:
a) 产品的设计文件;
b) 产品的安装维护手册。
14.2.2 软件要求
承建方应在验收前1个月向建设方或验收组提交软件测试方案和软件测试报告,由建设方或验收组组织进行验收测试。
验收测试应形成书面文件,对照工程合同、工程招标文件和总体技术方案等,进行验收测试,对测试结果用书面形式进行评价,评价标准如下:
a) 进行测试和演示,在功能和性能上是否符合预期的结果;
b) 测试范围和覆盖程度是否包括系统的各个方面。
验收组以测试报告为依据,确认测试合格,提请建设方进行验收确认。
对验收测试中的错误和不合格处,验收组提出整改意见或预防措施。建设方和验收组对整改结果或预防措施进行再测试或再确认。
承建方提供的有关文件应至少包括:
a) 系统软件的版权许可文件;
b) 系统软件的有关资料和安装媒体;
c) 应用软件概要设计;
d) 应用软件的详细设计;
e) 数据库设计说明(数据库管理员手册);
f) 通信接口(包括通信机制、通信协议、数据报文格式等)说明;
g) 应用软件使用手册;
h) 应用软件安装维护手册;
i) 应用软件程序清单;
j) 应用软件的安装媒体;
k) 合同中规定的其他应当提供的资料。
14.2.3 服务要求
在系统进行验收之前,承建方应提供系统的培训计划和培训教材,在用户确认后对使用单位提供培训服务,验收组有权监督整个培训过程,培训完成后由用户单位或验收组提供确认报告。
为保证系统长期正常工作,开发方应提交所有设备和系统的维修计划资料,它们包括以下内容,但不仅限于此。
a) 质量保证期内维修养护工作内容、次数和持续时间的常规维修养护计划;
b) 正确安装和维修养护所需的专用工具和测试设备;
c) 承建方应提交备件、专用工具和测试设备清单。
承建方的质量保证体系对用户的系统提供技术支持及系统故障时在约定的时间内提供维修服务的承诺。
在完成培训和验收测试后,承建方向建设方提交移交方案。建设方认可后可实施移交。承建方按照开发合同、移交计划、移交方案的要求和内容向建设方提交系统软件、测试报告、技术文档等,验收组有权监督移交过程。移交顺利完成后,由建设方、承建方和验收组共同签署移交确认报告。
14.2.4 安全要求
IC卡应用系统验收时应具备以下条件:
a) IC卡应用系统使用了符合本标准要求的密钥管理系统;
b) 承建方已完成了所有的培训工作,运营单位已可以独立操作所有的设备和系统;
c) 承建方已将所有的系统用户名和密码移交给运营单位,并且运营单位已修改这些密码;
d) 运营单位已指定专人负责与安全有关的各项工作,并制订安全管理规章制度。
应用系统能够提供多层次、多方面的安全控制手段,建立完善的安全管理体系,防止系统受攻击和破坏。另外,安全措施具有可扩展性,根据应用系统的扩展而扩展。
附录 A(资料性附录)卡片天线类型
A.1 概述
本部分介绍接近式卡天线尺寸,接近式卡应符合ISO/IEC 14443-1要求。按照接近式卡天线线圈的区域大小,一般将其划分为六种类型,以下分别进行介绍。
A.2 接近式卡类型
A.2.1 类型1
类型1接近式卡天线线圈应布置在81mm×49mm到64mm×34mm之间区域,矩形内拐角半径3mm。异形卡天线线圈围成的面积不应小于300mm2。类型1天线尺寸,见图A.1。
图A.1 类型1天线尺寸
A.2.2 类型2
类型2接近式卡天线线圈应布置在81mm×27mm到51mm×13mm之间区域,矩形内拐角半径3mm。天线线圈围成的面积不应小于300mm2。类型2天线尺寸,见图A.2。
图A.2 类型2天线尺寸
A.2.3 类型3
类型3接近式卡天线线圈应布置在50mm×40mm到35mm×24mm之间区域,a)矩形内拐角半径3mm;b)直径50mm与直径32mm的圆环。天线线圈围成的面积不应小于300mm2。类型3天线尺寸,见图A.3。
图A.3 类型3天线尺寸
A.2.4 类型4
类型4接近式卡天线线圈应布置在50mm×27mm到35mm×13mm之间区域,a)矩形内拐角半径3mm;b)直径41mm与直径24mm的圆环。天线线圈围成的面积不应小于300mm2。类型4天线尺寸,见图A.4。
图A.4 类型4天线尺寸
A.2.5 类型5
类型5接近式卡天线线圈应布置在40.5mm×24.5mm到25mm×10mm之间区域,a)矩形内拐角半径3mm;b)直径35mm与直径18mm的圆环。天线线圈围成的面积不应小于300mm2。类型5天线尺寸,见图A.5。
图A.5 类型5天线尺寸
A.2.6 类型6
类型6接近式卡天线线圈应布置在a)25mm×20mm矩形区域内,或者在b)直径25mm圆环区域内。天线线圈围成的面积不应小于300mm2。类型6天线尺寸,见图A.6。
图A.6 类型6天线尺寸
附录 B(规范性附录)离线式IC卡终端交易流程
B.1 交易流程总体框架
消费开始只代表整个消费流程的开始。交易流程总体框架,见图B.1。
图B.1 交易流程总体框架图
B.2 预处理流程
异常处理包含但不限于报错退出、其他应用流程、M1交易流程等。预处理流程,见图B.2。
图B.2 预处理流程图
预处理流程图中各步骤说明如下,其中1)~4)只在PSAM卡复位或终端重启后才需要执行。
1) 取PSAM卡终端机编号:终端向PSAM卡发送取PSAM卡终端机编号指令,指令返回值即为PSAM卡终端机编号;
2) 取PSAM卡版本号:终端向PSAM卡发送取PSAM卡版本号指令,指令返回值第11字节即为PSAM卡版本号;
3) 选PSAM卡互联互通应用:终端向PSAM卡发送选PSAM卡互联互通应用指令;
4) 取PSAM卡密钥索引:终端向PSAM卡发送取PSAM卡密钥索引指令,指令返回值即为DES与SM1算法分别对应的密钥索引,第一字节代表DES算法索引,第二字节代表SM1算法索引;
5) 用户卡防碰撞:终端对进入场强范围内的用户卡进行防碰撞处理,最终成功锁定一张标准的CPU用户卡;
6) 选用户卡互联互通应用:终端向用户卡发送选择互联互通应用指令;
7) 取用户卡安全认证识别码:终端向用户卡发送取用户卡安全认证识别码指令,指令返回结果即为9字节安全认证识别码;
8) PSAM卡验证安全认证识别码:终端向PSAM卡发送验证安全认证识别码指令;
9) 读用户卡公共应用基本信息:终端向用户卡发送读互联互通应用下公共应用基本信息文件(以下简称:15文件)指令,指令返回结果即为15文件的所有信息;
10) 城市代码判断:终端将用户卡返回的15文件内容拆分出城市代码(03-04字段,HEX格式)与本城市城市代码进行比对,如不一致则进入异地卡预处理流程,如一致则进入本地卡预处理流程。
B.3 异地预处理流程
异地预处理流程,见图B.3。
图B.3 异地预处理流程
异地预处理流程中各步骤说明如下,其中各步骤判断的内容数据均来源于预处理10)所返回的15文件内容。
1) 互联互通判断:终端将用户卡返回的15文件内容拆分出互通标识(11-12字段,HEX格式)与白名单中的代码进行比对,如白名单中存在此互通标识则发卡方已加入全国城市一卡通互联互通,反之则未加入;
2) 判断启用状态:终端将用户卡返回的15文件内容拆分出应用类型标识(09-09字段,BCD格式),标识为非O0则代表卡片已启用,为00则代表卡片未启用;
3) 判断有效期:终端将用户卡返回的15文件内容拆分出应用有效日期(25-28字段,BCD格式)与当前机具时间进行对比,有效日期大于等于当前日期则卡片在有效期内,有效日期小于当前日期则卡片在有效期外;
4) 黑名单判断:终端将用户卡返回的15文件内容拆分出城市代码(03-04字段,HEX格式)以及应用序列号(13-20字段,HEX格式)与黑名单中的城市代码及应用序列号进行比对,如黑名单中未存在此城市代码与应用序列号则此卡为非黑名单卡,反之则为黑名单卡。由于目前互联互通卡暂不做黑名单处理,黑名单可设置为空值,但此步骤应存在。
B.4 本地预处理流程
本地预处理流程各步骤由应用方自行定义。本地预处理流程,见图B.4。
图B.4 本地预处理流程
B.5 异地与本地消费交易流程
异地与本地消费交易流程,见图B.5。
图B.5 异地与本地消费交易流程
异地与本地消费交易流程各步骤说明如下:
1) 用户卡交易初始化:终端向用户卡发送用户卡交易初始化指令;指令执行成功,用户卡将返回如下信息:卡片余额、CPU卡脱机交易序号、密钥版本、算法标识、随机数;
2) PSAM卡产生MAC1:终端向PSAM卡发送产生MAC1指令,指令执行成功,PSAM卡将返回如下信息:终端脱机交易序号、MAC1;
3) 用户卡扣款:终端向用户卡发送扣款指令,指令执行成功,用户卡将返回如下信息:TAC、MAC2。
4) 本步骤成功执行后,用户卡将在内部自行存储交易记录;
5) PSAM卡校验MAC2:终端向PSAM卡发送校验MAC2指令,指令执行成功,PSAM卡将返回状态码:9000。
B.6 异地复合消费预处理流程
异地复合消费预处理流程,见图B.6。
图B.6 异地复合消费预处理流程
异地复合消费预处理流程各步骤说明如下:
1) 取用户卡互联互通复合交易记录信息:终端向用户卡发送取用户卡互联互通复合交易记录信息指令,指令返回结果即为互联互通复合交易记录信息;
2) 互联互通复合消费解析:终端依据本城市的复合交易记录格式解析所读取的互联互通复合消费记录;
3) 是否为本城市复合消费:终端依据本城市的复合交易记录格式成功识别出记录中的终端机编号,通过判别终端机编号前两字节与本城市城市代码是否一致,一致则代表是本城市复合消费记录,不一致则代表非本城市和消费记录;
4) 是否需要补扣:终端依据本城市的复合交易记录成功识别出为本地复合交易,如需补扣则进入补扣流程,如无需补扣则直接进入异地与本地复合消费交易开始;
5) 复合消费交易状态判断:终端依据自身的情况,判断后续预备执行交易结束还是交易开始;
6) 复合消费开始是否正常:终端判断步骤一所取的用户卡互联互通复合交易记录信息是否正确完成本次复合消费开始;
7) 补扣流程:由城市自行定义,补扣流程结束后即进入异地与本地复合消费交易开始;
8) 异常处理:由城市自行定义。
B.7 本地复合消费预处理流程
本地复合消费预处理流程,见图B.7。
图B.7 本地复合消费预处理流程
本地复合消费预处理流程各步骤说明如下:
1) 取用户卡复合交易记录信息:终端向用户卡发送取用户卡复合交易记录信息指令,指令返回结果即为复合交易记录信息;
2) 复合消费解析:终端依据本城市的复合交易记录格式解析所读取的互联互通复合消费记录;
3) 是否需要补扣:终端依据本城市的复合交易记录成功识别出是否需要补扣,如需补扣则进入补扣流程,如无需补扣则直接进入异地与本地复合消费交易开始;
4) 复合消费交易状态判断:终端依据自身的情况,判断后续预备执行交易结束还是交易开始;
5) 本次复合消费开始是否正常:终端判断步骤一所取的用户卡复合交易记录信息是否正确完成本次复合消费开始;
6) 补扣流程:由城市自行定义,补扣流程结束后即进入异地与本地复合消费交易开始;
7) 异常处理:由城市自行定义。
B.8 异地与本地复合消费交易开始
异地与本地复合消费交易开始流程,见图B.8。
图B.8 异地与本地复合消费交易开始流程
异地与本地复合消费交易开始流程各步骤说明如下:
1) 用户卡0交易额的复合消费初始化:终端向用户卡发送0交易额的用户卡复合交易初始化指令,指令执行成功,用户卡将返回如下信息:余额、CPU卡脱机交易序号、密钥版本、算法标识、随机数;
2) 余额是否支持本次消费:终端依据复合消费交易初始化指令所返回的卡内余额,结合本次交易的相关条件,判断是否支持本次消费;
3) PSAM卡产生MAC1:终端向PSAM卡发送产生MAC1指令,指令执行成功,PSAM卡将返回如下信息:终端脱机交易序号、MAC1;
4) 用户卡更新复合交易记录文件:终端向用户卡发送更新互联互通复合交易记录文件指令,异地更新17文件下记录标识为09的记录,本地则更新自定义的记录,指令执行成功,PSAM卡将返回状态码:9000;
5) 用户卡扣款:终端向用户卡发送扣款指令,指令执行成功,用户卡将返回如下信息:TAC、MAC2;本步骤成功执行后,用户卡将在内部自行存储交易记录;
6) PSAM卡验证MAC2:终端向PSAM卡发送校验MAC2指令,指令执行成功,PSAM卡将返回状态码:9000。
B.9 异地与本地复合消费交易结束
异地与本地复合消费交易结束流程,见图B.9。
图B.9 异地与本地复合消费交易结束流程
异地与本地复合消费交易结束流程各步骤说明如下:
1) 用户卡实际交易额的复合消费初始化:终端向用户卡发送实际交易额的用户卡复合交易初始化指令,指令执行成功,用户卡将返回如下信息:余额、CPU卡脱机交易序号、密钥版本、算法标识、随机数;
2) 余额是否支持本次消费:终端依据复合消费交易初始化指令所返回的卡内余额,结合本次交易的相关条件,判断是否支持本次消费;
3) PSAM卡产生MAC1:终端向PSAM卡发送产生MAC1指令,指令执行成功,PSAM卡将返回如下信息:终端脱机交易序号、MAC1;
4) 用户卡更新复合交易记录文件:终端向用户卡发送更新互联互通复合交易记录文件指令,异地更新17文件下记录标识为09的记录,本地则更新自定义的记录,指令执行成功,PSAM卡将返回状态码:9000;
5) 用户卡扣款:终端向用户卡发送扣款指令,指令执行成功,用户卡将返回如下信息:TAC、MAC2,本步骤成功执行后,用户卡将在内部自行存储交易记录;
6) PSAM卡验证MAC2:终端向PSAM卡发送校验MAC2指令,指令执行成功,PSAM卡将返回状态码:9000。
B.10 消费结束
消费结束后,终端应保存相关交易记录,交易记录至少包含项,见表B.1。
表B.1 交易记录至少包含项
附录 C(规范性附录)安全计算
C.1 DES算法
C.1.1 数据加密的计算方法
第一步用LD(1字节)表示明文数据的长度,在明文数据前加上LD产生新的数据块。
第二步将该数据块分成8字节为单位的数据块,表示为PLAIN1、PLAIN2、PLAIN3、PLAIN4等。最后的数据块有可能是1~8个字节。
第三步如果最后(或唯一)的数据块的长度是8字节的话,转到第四步;如果不足8字节,则在其后加入16进制数‘80’,如果达到8字节长度,则转到第四步;否则在其后加入16进制数‘00’直到长度达到8字节。
第四步按照图C.1和图C.2所述的算法使用指定密钥对每一个数据块进行加密。
第五步计算结束后,所有加密后的数据块依照原顺序连接在一起。
单倍长密钥DEA数据加密算法,见图C.1
说明:
KEY——指定密钥或分级子密钥;
DEA(e)——DES算法的加密计算;
PLAIN——8字节长度的明文数据块;
CIPHER——8字节长度的密文数据块。
图C.1 单倍长密钥DEA数据加密算法
双倍长密钥DEA数据加密算法,见图C.2。
说明:
KEYL——指定密钥或分级子密钥的左8字节;
KEYR——指定密钥或分级子密钥的右8字节;
DEA(e)——DES算法的加密计算;
DEA(d)——DES算法的解密计算;
PLAIN——8字节长度的明文数据块;
CIPHER——8字节长度的密文数据块。
图C.2 双倍长密钥DEA数据加密算法
C.1.2 数据解密的计算方法
单倍长密钥DEA数据解密算法,见图C.3。
说明:
KEY——指定密钥或分级子密钥;
DEA(d)——DES算法的解密计算;
PLAIN——8字节长度的明文数据块;
CIPHER——8字节长度的密文数据块。
图C.3 单倍长密钥DEA数据解密算法
双倍长密钥DEA数据解密算法,见图C.4。
说明:
KEYL——指定密钥或分级子密钥的左8字节;
KEYR——指定密钥或分级子密钥的右8字节;
DEA(e)——DES算法的加密计算;
DEA(d)——DES算法的解密计算;
PLAIN——8字节长度的明文数据块;
C1PHER——8字节长度的密文数据块。
图C.4 双倍长密钥DEA数据解密算法
C.1.3 密钥分散的计算方法
C.1.3.1 单倍长密钥的分散方法
密钥分散通过分散因子产生子密钥。
分散因子为8字节,将一个单倍长的主密钥MK,对分散数据进行处理,推导出一个单倍长的子密钥DK。方法是用主密钥MK对分散因子(8字节)进行DEA计算产生子密钥DK。单倍长密钥的分散,见图C.5。
说明:
SEED——分散因子;
DEA(e)——DES算法的加密计算;
SUBKEY——分散后的子密钥。
图C.5 单倍长密钥的分散
C.1.3.2 双倍长密钥的分散方法
密钥分散通过分散因子产生子密钥。
分散因子为8字节,将一个双倍长的主密钥MK,对分散数据进行处理,推导出一个双倍长的子密钥DK(DK=DK_L+DK_R)。
推导DK左半部分DK_L的方法是:
第一步将分散因子作为输入数据;
第二步将MK作为加密密钥;
第三步用MK对输入数据进行3DEA运算。
推导DK右半部分DK_R的方法是:
第一步将分散因子求反,作为输入数据;
第二步将MK作为加密密钥;
第三步用MK对输入数据进行3DEA运算。
将左右两部分连接在一起,产生双倍长子密钥,双倍长密钥的分散,见图C.6。
说明:
SEED——分散因子;
SEED——分散因子取反;
KEY_L——指定密钥或分级子密钥的左8字节;
KEY_R——指定密钥或分级子密钥的右8字节;
DEA(e)——DES算法的加密计算;
DEA(d)——DES算法的解密计算;
DK_L——分散后子密钥的左8字节;
DK_R——分散后子密钥的右8字节;
SUBKEY——分散后的子密钥。
图C.6 双倍长密钥的分散
C.1.4 过程密钥的计算方法
C.1.4.1 过程密钥的计算方法1
该方法是通过指定密钥对过程密钥输入因子(8字节)进行3DEA或DEA计算产生过程密钥(8字节)。单倍长密钥产生过程密钥,见图C.7。
说明:
SESSION KEY SEED——过程密钥输入因子;
SESSION KEY——过程密钥;
KEY——指定密钥或分级子密钥;
DEA(e)——DES算法的加密计算。
图C.7 单倍长密钥产生过程密钥
双倍长密钥产生过程密钥,见图C.8。
说明:
SESSION KEY SEED——过程密钥输入因子;
SESSION KEY——过程密钥:
KEY_L——指定密钥或分级子密钥的左8字节;
KEY_R——指定密钥或分级子密钥的右8字节;
DEA(e)——DES算法的加密计算;
DEA(d)——DES算法的解密计算。
图C.8 双倍长密钥产生过程密钥
C.1.4.2 过程密钥的计算方法2
该方法是通过对指定的双倍长密钥进行左右异或计算来产生单倍长过程密钥。过程密钥产生,见图C.9。
说明:——导或运算;
KEY_L——指定密钥或分级子密钥的左8字节;
KEY_R——指定密钥或分级子密钥的右8字节;
SESSION KEY——过程密钥。
图C.9 过程密钥产生
C.1.5 鉴别数据的计算方法
该方法是通过指定的密钥(单倍长或双倍长)对鉴别数据输入因子(8字节)进行DEA计算产生鉴别数据(8字节),供IC卡或接口设备进行验证。
单倍长密钥的鉴别数据的计算,见图C.10。
说明:
AUTH DATA SEED——鉴别数据输入因子;
AUTH DATA——鉴别数据;
KEY——指定密钥或分级子密钥;
DEA(e)——DES算法的加密计算。
图C.10 单倍长密钥的鉴别数据的计算
双倍长密钥的鉴别数据的计算,见图C.11。
说明:
AUTH DATA SEED——鉴别数据输入因子;
AUTH DATA——鉴别数据;
KEY_L——指定密钥或分级子密钥的左8字节;
KEY_R——指定密钥或分级子密钥的右8字节;
DEA(e)——DES算法的加密计算;
DEA(d)——DES算法的解密计算。
图C.11 双倍长密钥的鉴别数据的计算
C.1.6 MAC的计算方法
C.1.6.1 命令安全报文中的MAC
命令安全报文中的MAC是使用命令的所有元素(包括命令头和命令数据域中的数据)来产生的。以保证命令连同数据能够正确完整地传送,并对发送方进行认证。
按照如下方式使用DEA加密方式产生MAC:
第一步终端通过向IC卡发GET CHALLENGE命令获得一个4字节随机数,后补‘00 00 00 00’作为初始值。
第二步将5字节命令头(CLA,INS,P1,P2,Lc)和命令数据域中的明文或密文数据连接在一起形成数据块。注意,这里的Lc应是数据长度加上将计算出的MAC的长度(4字节)后得到的实际长度。
第三步将该数据块分成8字节为单位的数据块,表示为BLOCK1、BLOCK2、BLOCK3、BLOCK4等。最后的数据块有可能是1~8个字节。
第四步如果最后的数据块的长度是8字节的话,则在该数据块之后再加一个完整的8字节数据块‘80 00 00 00 00 00 00 00’转到第五步。如果最后的数据块的长度不足8字节,则在其后加入16进制数‘80’,如果达到8字节长度,则转到第五步;否则接着在其后加入16进制数‘00’直到长度达到8字节。
第五步按照算法对这些数据块使用指定密钥进行加密来产生MAC。
第六步最终取计算结果(高4字节)作为MAC。
安全报文中单倍长密钥MAC算法,见图C.12。
说明:——异或运算;
INITIAL DATA MAC——计算初始值;
KEY——指定密钥或分级子密钥;
DEA(e)——DES算法的加密计算;
BLOCK——8字节长度的数据块;
MAC——取高4字节作为MAC。
图C.12 安全报文中单倍长密钥MAC算法
安全报文中双倍长密钥MAC算法,见图C.13。
说明:——异或运算;
INITIAL DATA——MAC计算初始值;
KEY_L——指定密钥或分级子密钥的左8字节;
KEY_R——指定密钥或分级子密钥的右8字节;
DEA(e)——DES算法的加密计算;
DEA(d)——DES算法的解密计算;
BLOCK——8字节长度的数据块;
MAC——取高4字节作为MAC。
图C.13 安全报文中双倍长密钥MAC算法
C.1.6.2 交易中的MAC/TAC
交易中的MAC/TAC计算使用此方法。计算方法分二步完成。先用指定密钥产生过程密钥(见C.1.4),再用过程密钥计算MAC。
交易中的MAC是使用不同交易指定的数据元序列来产生的。从而保证交易的安全性。按照如下方式使用过程密钥DEA算法产生MAC:
第一步将一个8字节长的初始值设定为16进制数‘00 00 00 00 00 00 00 00’。
第二步将所有输入数据按指定顺序连接成一个数据块。
第三步将该数据块分成8字节为单位的数据块,表示为BLOCK1、BLOCK2、BLOCK3、BLOCK4等。最后的数据块有可能是1~8个字节。
第四步如果最后的数据块的长度是8字节的话,则在该数据块之后再加一个完整的8字节数据块‘80 00 00 00 00 00 00 00’,转到第五步。如果最后的数据块的长度不足8字节,则在其后加入16进制数‘80’,如果达到8字节长度,则转到第五步;否则在其后加入16进制数‘00’直到长度达到8字节。
第五步按照交易中的MAC算法。见图C.14。对这些数据块使用过程密钥(单倍长度)进行加密来产生MAC。
第六步最终取计算结果(高4字节)作为MAC。
说明:——异或运算;
INITIAL DATA——MAC计算初始值;
KEY——由指定密钥产生的过程密钥;
DEA(e)——DES算法的加密计算;
BLOCK——8字节长度的数据块;
MAC——取高4字节作为MAC。
图C.14 交易中的MAC算法
C.2 SM1算法
C.2.1 一般要求
SM1算法采用国家密码管理部门批准的分组密码算法,其分组长度和密钥长度均为128比特。在城市公用事业应用中,完成密钥分散、内部认证、外部认证、加密、解密及MAC计算6种类型的安全功能。SM1算法的标识为‘03’。
C.2.2 数据加密的计算方法
安全报文传送中数据的可靠性通过对数据域的加密来得到保证。为保证命令中明文数据的保密性,可按照图C.15所示做SM1(e)运算,对数据进行加密:
第一步用LD(1字节)表示明文数据的长度,在明文数据前加上LD产生新的数据块,LD的值不小于1。
第二步将该数据块分成16字节为单位的数据块,表示为PLAIN1、PLAIN2……PLAINn等。最后的数据块有可能是1~16个字节。
第三步如果最后(或唯一)的数据块的长度是16字节的话,转到第四步;如果不足16字节,则在其后加入16进制数‘80’,如果达到16字节长度,则转到第四步;否则在其后加入16进制数‘00’直到长度达到16字节。
第四步按照数据加密算法,见图C.15。对每一个数据块进行加密。
第五步计算结束后,所有加密后的数据块依照原顺序连接在一起。
说明:
KEY——指定加密密钥或分级子密钥;
SM1(e)——SM1算法的加密计算;
PLAIN——16字节长度的明文数据块;
CIPHER——16字节长度的密文数据块。
图C.15 数据加密算法
C.2.3 数据解密的计算方法
数据解密算法,见图C.16。
说明:
KEY——指定解密密钥或分级子密钥;
SM1(d)——SM1算法的解密计算;
CIPHER——16字节长度的密文数据块;
PLAIN——16字节长度的明文数据块。
图C.16 数据解密算法
C.2.4 密钥分散的计算方法
密钥分散通过分散因子产生子密钥。
分散因子为8字节,用指定的分散因子加上分散因子求反值作为输入数据,执行SM1(e)计算,产生的16字节结果作为子密钥。密钥分散算法,见图C.17。
说明:
SEED——分散因子;
SEED——分散因子取反;
KEY——指定密钥或分级子密钥;
SM1(e)——SM1算法的加密计算;
SUBKEY——分散后的子密钥。
图C.17 密钥分散算法
C.2.5 过程密钥的计算方法
通过对过程密钥输入因子做SM1(e)运算来产生过程密钥。
过程密钥输入因子由8字节随机数补8字节“0000000000000000”构成,过程密钥的计算方法,见图C.18。
说明:
SESSION KEY SEED——过程密钥输入因子;
SESSION KEY——过程密钥;
KEY——指定密钥或分级子密钥;
SM1(e)——SM1算法的加密计算。
图C.18 过程密钥的计算方法
C.2.6 鉴别数据的计算方法
鉴别数据的计算方法是通过对鉴别数据输入因子(16字节)做SM1(e)运算来产生鉴别数据,供接口设备对IC卡进行内部验证或外部认证。
鉴别数据输入因子为4字节随机数补12字节“000000000000000000000000”达到16字节;或8字节随机数补8字节“0000000000000000”达到16字节;或16字节随机数,鉴别数据的计算方法,见图C.19。
说明:
AUTH DATA SEED——鉴别数据输入因子;
DATA OUT——加密结果;
AUTH DATA——鉴别数据;
KEY——指定密钥或分级子密钥;
SM1(e)——SM1算法的加密计算。
图C.19 鉴别数据的计算方法
C.2.7 MAC的计算方法
C.2.7.1 一般要求
安全报文传送的目的是保证数据的可靠性、完整性和对发送方的认证。数据完整性和对发送方的认证通过使用MAC来实现。
安全报文传送的格式符合ISO 7816-4的规定。当CLA字节的第二个半字节等于十六进制数字‘4’时,表明对发送方命令数据要采用安全报文传送。MAC是命令数据域中最后一个数据元。MAC的长度规定为4个字节。
C.2.7.2 安全报文中的MAC
命令安全报文中的MAC是使用命令的所有元素(包括命令头和命令数据域中的数据)来产生的。以保证命令连同数据能够正确完整地传送,并对发送方进行认证。按照图C.20所示做SM1(e)运算产生MAC:
第一步取4字节随机数补12字节“000000000000000000000000”达到16字节作为初始值。
第二步将5字节命令头(CLA,INS,P1,P2,Lc)和命令数据域中的明文或密文数据连接在一起形成数据块。注意,这里的Lc应是数据长度加上将计算出的MAC的长度(4字节)后得到的实际长度,Lc的值不小于4。
第三步将该数据块分成16字节为单位的数据块,表示为BLOCK1、BLOCK2、BLOCK3、BLOCK4等。最后的数据块有可能是1~16个字节。
第四步如果最后的数据块的长度是16字节的话,则在该数据块之后再加一个完整的16字节数据块‘80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00’,转到第五步。如果最后的数据块的长度不足16字节,则在其后加入16进制数‘80’,如果达到16字节长度,则转到第五步;否则接着在其后加入16进制数‘00’直到长度达到16字节。
第五步按照安全报文中MAC计算,见图C.20。最终对计算结果分4字节做异或运算,得到MAC(4字节)。
说明:——异或运算;
INITIAL DATA——MAC计算初始值;
KEY——指定密钥或分级子密钥;
SM1(e)——SM1算法的加密计算;
BLOCK——16字节长度的数据块。
图C.20 安全报文中MAC计算
C.2.7.3 交易中的MAC/TAC
交易中的MAC/TAC 计算使用此方法。
计算TAC的密钥采用指定的密钥。
计算MAC的密钥则采用过程密钥,过程密钥的计算方法请参考C.2.5过程密钥的计算。
交易中的MAC是使用不同交易指定的数据元序列来产生的。从而保证交易的安全性。按照如下方式使用过程密钥DEA算法产生MAC:
第一步取16字节“00000000000000000000000000000000”作为初始值。
第二步将5字节命令头(CLA,INS,P1,P2,Lc)和命令数据域中的明文或密文数据连接在一起形成数据块。注意,这里的Lc应是数据长度加上将计算出的MAC的长度(4字节)后得到的实际长度,Lc的值不小于4。
第三步将该数据块分成16字节为单位的数据块,表示为BLOCK1、BLOCK2、BLOCK3、BLOCK4等。最后的数据块有可能是1~16个字节。
第四步如果最后的数据块的长度是16字节的活,则在该数据块之后再加一个完整的16字节数据块‘80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00’,转到第五步。如果最后的数据块的长度不足16字节,则在其后加入16进制数‘80’,如果达到16字节长度,则转到第五步;否则接着在其后加入16进制数‘00’直到长度达到16字节。
第五步按照图C.20所述最终对计算结果分4字节做异或运算,得到MAC(4字节)。
C.3 RSA算法
涉及RSA算法的数字签名、公钥加密等应符合PKCS系列标准。
C.4 SHA1算法
涉及SHA1算法的消息摘要计算应符合FIPS PUB 180-3标准。
C.5 SM2算法
涉及SM2算法的数字签名、公钥加密等用法应符合国家密码管理局的有关要求。
C.6 SM3算法
涉及SM3算法的消息摘要计算用法应符合国家密码管理局的有关要求。
参考文献
[1] FIPS PUB 180-3 安全摘要标准(Federal Information Processing Standards Publication:Secure Hash Standard 2008)
[2] PKCS 公钥密码学标准(The Public-Key Cryptography Standards 1999)
[3] Global Platform 2.2 通用平台标准(Global Platform Card Specification v2.2.1)
免责申明:本站所有资源均通过网络等公开合法渠道获取,该资料仅作为阅读交流使用,并无任何商业目的,其版权归作者或出版方所有,本站不对所涉及的版权问题负任何法律责任和任何赔偿,在本站咨询或购买后默认同意此免责申明;
法律责任:如版权方、出版方认为本站侵权,请立即通知本站删除,物品所标示的价格,是对本站搜集、整理、加工该资料以及本站所运营的费用支付的适当补偿,资料索取者(顾客)需尊重版权方的知识产权,切勿用于商业用途,信息;
『JGJ T351-2015』建筑玻璃膜应用技术规程
中华人民共和国行业标准建筑玻璃膜应用技术规程TechnicalspecificationforapplicationofbuildingglassfilmandcoatingJGJ/T351-2015批准部门:中华人民共和国住房和...
2025-05-19
『JGJ T399-2016』城市雕塑工程技术规程
中华人民共和国行业标准城市雕塑工程技术规程TechnicalspecificationforpublicsculptureprojectconstructionJGJ/T399-2016批准部门:中华人民共和国住房和城乡建设...
2025-05-19
『CECS334:2013』集装箱模块化组合房屋技术规程
中国工程建设协会标准集装箱模块化组合房屋技术规程TechnicalspecificationformodularfreightcontainerbuildingCECS334:2013主编单位:中国钢结构协会中国国际海运...
2025-05-19
建筑用真空绝热板应用技术规程 JGJ T 416-2017
中华人民共和国行业标准建筑用真空绝热板应用技术规程TechnicalspecifieationforapplicationofvacuuminsulationpanelsforbuildingsJGJ/T416-2017发布日期:2017年0...
2025-05-19
『JGJ128-2010』建筑施工门式钢管脚手架安全技术规范
中华人民共和国行业标准建筑施工门式钢管脚手架安全技术规范TechnicalcodeforsafetyofframescaffoldingswithsteeltubulesinconstructionJGJ128-2010批准部门:中华...
2025-05-19
公共美术馆建设标准 建标 193-2018
中华人民共和国住房和城乡建设部中华人民共和国国家发展和改革委员会公共美术馆建设标准建标193-2018主编部门:中华人民共和国文化和旅游部批准部门:中华人民共和国...
2025-05-18