4.1 文件结构
本规范中的文件组织结构来自且符合GB/T 16649.4的基本组织结构。
本部分描述了符合本规范的应用文件结构。
从终端的角度来看,IC卡上的文件是一种树形结构。树的每一个分支是一个应用数据文件(ADF)或一个目录定义文件(DDF)。一个ADF是一个或者多个应用基本文件(AEF)的入口点。一个ADF及其相关的数据文件处于树的同一分支上。一个DDF是其他ADF或者DDF的入口点。
4.2 应用数据文件(ADF)
ADF的树形结构:
(1)能够将数据文件与应用联系起来;
(2) 确保应用之间的独立性;
(3)可以通过应用选择实现对其逻辑结构的访问。
从终端的角度看,ADF是一个只包含封装在其文件控制信息(FCI)中的数据对象的文件。
4.3 应用基本文件(AEF)
本规范中,一个AEF包含一个或多个原始BER-TLV数据对象,或一个非结构化的纯数据元。在选择了某一应用后,AEF通过其文件标识符进行查询。
4.4 文件到GB/T 16649.4的文件结构的映射
使用下列到GB/T 16649.4的映射:
(1)一个GB/T 16649.4定义的专用文件(DF)映射为一个ADF或一个DDF。可以通过它来访问基本文件和DF。在IC卡中处于最高层的DF称为主文件(MF)。
(2) GB/T 16649.4定义的一个基本文件(EF) 对应一个AEF。EF永远不会成为另一个文件的入口点。
4.5 文件引用
根据文件的种类,文件可以通过文件名引用。IC卡中的任何ADF或DDF都可以通过它的DF名引用。ADF的DF 名与它的AID对应或以AID作为DF名的开头。一张IC卡中的每个 DF 名字必须在该卡内是唯一的。
5 卡操作
5.1 总体操作
包括对居民健康卡用户卡进行寻卡、上电初始化,鉴别卡真伪、有效期、外部认证读写权限,进入相应的读写操作等业务。
5.1.1 总体操作流程
(1)用户卡上电复位,卡片位于MF下。
(2)发送SELECT命令,选择居民健康卡应用环境DDF1。
(3)执行内部认证流程,对卡进行内部认证。
(4)发送SELECT命令,选择EF05。
(5)发送READ RECORD命令,读卡有效期。
(6)发送SELECT命令到各应用文件。
(7)根据各应用文件读写控制权限,选择是否进行外部认证。
(8)对相应文件进行读写操作。
(9)流程结束。
5.1.2 流程图
图5-1 总体应用流程图(图略)
5.2 内部认证
内部认证判定用户卡是否本系统卡。
5.2.1 内部认证流程
(1)终端从SAM卡获取8字节随机数。
(2)定义8字节长度的鉴别所需的原始信息,如1122334455667788。
(3)随机数做为用户卡过程密钥计算使用的数据,同时作为SAM卡过程密钥产生因子。
(4)终端准备内部认证所需的数据,其中第1至第8字节为随机数,第9至第16字节为原始信息,第17字节为密钥版本。
(5)终端向SAM卡发送DELIVERY SESSION KEY命令,将指定的密钥进行分散,并产生过程密钥。
(6)终端向SAM卡发送CIPHER DATA命令,加密原始信息。
(7)终端将SAM卡返回的加密结果左右8字节异或,得到鉴别数据A。
(8)终端向用户卡发送INTERNAL AUTHENTICTION命令,得到返回值B。
(9)终端比较A、B值是否相同,如果相同内部认证成功,否则内部认证失败。
(10) 流程结束。
5.2.2 流程图
图5-2 内部认证流程图(图略)
5.3 外部认证
用户卡只有通过相应控制密钥的外部认证后,才可以对相应的的文件进行读写等操作。
5.3.1 外部认证流程
(1)定义8字节长度的鉴别所需的原始信息,如1122334455667788。
(2)终端向用户卡发送GET CHALLENGE命令,获得8字节随机数。
(3)随机数做为SAM卡过程密钥产生因子。
(4)终端向SAM卡发送DELIVERY SESSION KEY命令,将指定的密钥进行分散,并产生过程密钥。
(5)终端向SAM卡发送CIPHER DATA命令,加密原始信息。
(6)终端将SAM卡返回的加密结果左右8字节异或,得到鉴别数据。
(7)终端准备外部认证所需的数据,其中第1至第8字节为鉴别数据,第9至第16字节为原始信息,第17字节为密钥版本。
(8)终端向用户卡发送EXTERNAL AUTHENTICATION命令。
(9)用户卡返回状态码如为‘9000’,则外部认证成功,否则外部认证失败。
(10) 流程结束。
5.3.2 流程图
图5-3 外部认证流程图(略)
5.4 应用锁定
向用户卡发送应用锁定命令可以对卡进行临时锁定或永久锁定。临时锁定方式后可以用应用解锁命令进行解锁,永久锁定方式后不能解锁。另外当使用校验方式更新记录文件或二进制文件时,如果MAC错误尝试次数超过限制,COS会自动临时锁定当前应用。
5.4.1 应用锁定流程
(1)终端向用户卡发送SELECT命令,选择待锁定的应用区(DF)。
(2)终端执行外部认证流程,对该DF下的LK密钥进行外部认证。
(3)终端向用户卡发送GET CHALLENGE命令,获得8字节随机数。
(4)随机数做为SAM卡过程密钥产生因子。
(5)终端向SAM卡发送DELIVERY SESSION KEY命令,将指定的STK密钥进行分散,并产生过程密钥。
(6)终端向SAM卡发送CIPHER DATA命令,对应用锁定(APPLICATION BLOCK)命令头进行MAC计算。
(7)终端向用户卡发送APPLICATION BLOCK 命令 +MAC值,对该DF进行应用锁定。
5.5 应用解锁
临时锁定后的用户卡应用区,只有该应用区进行应用解锁后,才可以继续使用。
5.5.1 应用解锁流程
(1)终端向用户卡发送SELECT命令,选择被临时锁定的应用区(DF)。
(2)终端执行外部认证流程,对该DF下的LK密钥进行外部认证。
(3)终端向用户卡发送GET CHALLENGE命令,获得8字节随机数。
(4)随机数做为SAM卡过程密钥产生因子。
(5)终端向SAM卡发送DELIVERY SESSION KEY命令,将指定的STK密钥进行分散,并产生过程密钥。
(6)终端向SAM卡发送CIPHER DATA命令,对应用解锁(APPLICATION UNBLOCK)命令头进行MAC计算。
(7)终端向用户卡发送APPLICATION UNBLOCK 命令 +MAC值,对该DF进行应用解锁。
5.6 卡锁定
用户卡不允许再使用时,可以执行卡锁定命令,对该用户卡进行永久卡锁定,卡锁定后不能解锁。
5.6.1 卡锁定流程
(1)终端向用户卡发送SELECT命令,选择待锁定的卡片根目录(MF)。
(2)终端执行外部认证流程,对MF下的BK密钥进行外部认证。
(3)终端向用户卡发送GET CHALLENGE命令,获得8字节随机数。
(4)随机数做为SAM卡过程密钥产生因子。
(5)终端向SAM卡发送DELIVERY SESSION KEY命令,将指定的STK密钥进行分散,并产生过程密钥。
(6)终端向SAM卡发送CIPHER DATA命令,对卡锁定(CARD BLOCK)命令头进行MAC计算。
(7) 终端向用户卡发送CARD BLOCK 命令 +MAC值,对该用户卡进行卡锁定。
5.7 应用维护
应用维护包括卡锁定、应用锁定、应用解锁、数据带MAC更新。这些过程必须在拥有相应的操作权限控制密钥的终端上按如下步骤执行:
(1)通过外部认证,满足操作的安全状态;
(2)终端向卡申请一随机数;
(3)发送相应的应用维护命令,卡在收到命令后执行以下操作:
a. 使用前一步骤产生的随机数,利用《
居民健康卡技术规范》中9.6节描述的方式产生过程密钥;
b. 使用该过程密钥产生MAC,并与命令报文中的MAC进行比较,如果结果一致,则相应的功能被实现,否则回送错误状态信息。MAC产生方式见《
居民健康卡技术规范》中9.4节描述。
6 卡业务应用
在卡业务应用过程中,向SAM卡发送应用命令必须在验证完口令之后才可以执行。SAM卡上电之后验证一次口令,直到SAM卡下电重新上电才需要重新进行口令验证。
6.1 卡识别应用 (对应MF\DDF1数据区)
读写卡识别数据区内的数据,卡识别数据区包括发卡基本数据(EF05)和持卡人基本数据(EF06)和照片数据(EF07)。
6.1.1 读卡识别数据区信息
6.1.1.1 描述
读取用户卡中MF\DDF1中的基本文件(即EF05、EF06和 EF07)数据。
6.1.1.2 命令
参见《居民健康卡用户卡命令集 V1.0》和《居民健康卡安全存取模块(SAM)卡命令集 V1.0》。
6.1.1.3 处理流程
(1)终端根据应用执行的情况决定从用户卡读取哪些文件。
(2)终端选择对应记录所在的DF文件,然后再选对应的EF文件。
(3)终端根据应用执行情况和《
居民健康卡技术规范》中定义的对应文件的读控制密钥的情况,决定是否执行外部认证。(读控制密钥的情况参见《
居民健康卡技术规范》,外部认证命令处理过程参见本文档的对应章节)。
(4)终端发送READ RECORD命令读取指定记录;终端发送READ BINARY命令读取EF07数据。
(5)用户卡根据读记录所需的读控制权限,判断命令执行的条件是否满足,如果不满足则返回错误码到终端;如果满足则用户卡读取记录或二进制文件数据,读取成功则返回数据到终端,否则返回错误码到终端。
(6)终端根据用户卡返回结果,决定是否继续读取对应EF文件中的数据。
6.1.1.4 流程图
图6-1 读卡识别数据流程图(图略)
6.1.2 写卡识别数据区信息
6.1.2.1 描述
更新用户卡中MF\DDF1中的基本文件(即EF05、EF06和 EF07)数据。
6.1.2.2 命令
参见《居民健康卡用户卡命令集V1.0》和《居民健康卡安全存取模块(SAM)卡命令集V1.0》。
6.1.2.3 处理流程
(1)终端根据应用执行的情况决定更新用户卡中哪些文件。
(2)终端选择对应记录所在的DF文件,然后再选对应的EF文件。
(3)终端根据应用执行情况和《
居民健康卡技术规范》中定义的对应文件的写控制密钥的情况,决定是否执行外部认证。(写控制密钥的情况参见《
居民健康卡技术规范》,外部认证命令处理过程参见本文档的对应章节)。
(4)终端发送带密文+MAC安全报文的UPDATE RECORD命令更新指定记录,在这一过程中,使用STKDDF1计算密文及MAC;终端发送UPDATE BINARY命令更新EF07数据。
(5)用户卡根据写记录所需的写控制权限,判断命令执行的条件是否满足,如果不满足则返回错误码到终端;如果满足更新记录文件则验证密文和MAC是否正确(密文和MAC的计算方法和步骤参见《
居民健康卡技术规范》9.4节描述),如果正确,则将解密后的明文数据写入卡内,否则返回错误码到终端。如果满足更新二进制文件则以明文方式将数据写入卡内,否则返回错误码到终端。
(6)终端根据用户卡返回结果,决定是否继续更新对应EF文件中的数据。
6.1.2.4 流程图
图6-2 写卡识别数据处理流程图(图略)
6.2 身份识别应用(对应DDF1\DF01数据区)
读写身份识别数据区内的数据,身份识别数据区包括EF05、EF06、EF07和EF08文件。
6.2.1 读DF01应用数据
6.2.1.1 描述
读取用户卡中的DF01应用数据。
6.2.1.2 命令
参见《居民健康卡用户卡命令集 V1.0》和《居民健康卡安全存取模块(SAM)卡命令集V1.0》。
6.2.1.3 处理流程
(1)终端根据应用执行的情况决定从用户卡读取哪些记录。
(2)终端选择对应记录所在的DF文件,然后再选对应的EF文件。
(3)终端根据应用执行情况和《
居民健康卡技术规范》中定义的对应文件的读控制密钥的情况,决定是否执行外部认证。(读控制密钥的情况参见《
居民健康卡技术规范》,外部认证命令处理过程参见本文档的对应章节)。
(4)终端发送READ RECORD命令读取指定记录。
(5)用户卡根据读记录所需的读控制权限,判断命令执行的条件是否满足,如果不满足则返回错误码到终端;如果满足则用户卡读取记录数据,读取成功则返回记录数据到终端,否则返回错误码到终端。
(6)终端根据用户卡返回结果,决定是否继续读取对应EF文件中的记录。
6.2.1.4 流程图
图6-3 读DF01应用数据处理流程图(略)
6.2.2 写DF01应用数据
6.2.2.1 描述
更新用户卡中的DF01应用数据。
6.2.2.2 命令
参见《居民健康卡用户卡命令集V1.0》和《居民健康卡安全存取模块(SAM)卡命令集V1.0》。
6.2.2.3 处理流程
(1)终端根据应用执行的情况决定更新用户卡中哪些记录。
(2)终端选择对应记录所在的DF文件,然后再选对应的EF文件。
(3)终端根据应用执行情况和《
居民健康卡技术规范》中定义的对应文件的写控制密钥的情况,决定是否执行外部认证。(写控制密钥的情况参见《
居民健康卡技术规范》,外部认证命令处理过程参见本文档的对应章节)。
(4)终端发送带密文+MAC安全报文的UPDATE RECORD命令更新指定记录。
(5)用户卡根据写记录所需的写控制权限,判断命令执行的条件是否满足,如果不满足则返回错误码到终端;如果满足则验证密文和MAC是否正确(密文和MAC的计算方法和步骤参见《
居民健康卡技术规范》9.4节描述),如果正确,则将解密后的明文数据写入卡内,否则返回错误码到终端。
(6)终端根据用户卡返回结果,决定是否继续更新对应EF文件中的记录。
6.2.2.4 流程图
图6-4 写DF01应用数据处理流程图(略)
6.3 基础健康信息应用(对应DDF1\DF02数据区)
读写基础健康信息区内的数据,基础健康信息区包括EF05、EF06、EF07和EF08文件。
6.3.1 读DF02应用数据
6.3.1.1 描述
读取用户卡中的DF02应用数据。
6.3.1.2 命令
参见《居民健康卡用户卡命令集V1.0》和《居民健康卡安全存取模块(SAM)卡命令集V1.0》。
6.3.1.3 处理流程
(1)终端根据应用执行的情况决定从用户卡读取哪些记录。
(2)终端选择对应记录所在的DF文件,然后再选对应的EF文件。
(3)终端根据应用执行情况和《
居民健康卡技术规范》中定义的对应文件的读控制密钥的情况,决定是否执行外部认证。(读控制密钥的情况参见《
居民健康卡技术规范》,外部认证命令处理过程参见本文档的对应章节)。
(4)终端发送READ RECORD命令读取指定记录。
(5)用户卡根据读记录所需的读控制权限,判断命令执行的条件是否满足,如果不满足则返回错误码到终端;如果满足则用户卡读取记录数据,读取成功则返回记录数据到终端,否则返回错误码到终端。
(6)终端根据用户卡返回结果,决定是否继续读取对应EF文件中的记录。
6.3.1.4 流程图
图6-5 读DF02应用数据处理流程图(略)
6.3.2 写DF02应用数据
6.3.2.1 描述
更新用户卡中的DF02应用数据。
6.3.2.2 命令
参见《居民健康卡用户卡命令集V1.0》和《居民健康卡安全存取模块(SAM)卡命令集V1.0》。
6.3.2.3 处理流程
(1)终端根据应用执行的情况决定更新用户卡中哪些记录。
(2)终端选择对应记录所在的DF文件,然后再选对应的EF文件。
(3)终端根据应用执行情况和《
居民健康卡技术规范》中定义的对应文件的写控制密钥的情况,决定是否执行外部认证。(写控制密钥的情况参见《
居民健康卡技术规范》,外部认证命令处理过程参见本文档的对应章节)。
(4)终端发送带密文+MAC安全报文的UPDATE RECORD命令更新指定记录。
(5)用户卡根据写记录所需的写控制权限,判断命令执行的条件是否满足,如果不满足则返回错误码到终端;如果满足则验证密文和MAC是否正确(密文和MAC的计算方法和步骤参见《
居民健康卡技术规范》9.4节描述),如果正确,则将解密后的明文数据写入卡内,否则返回错误码到终端。
(6)终端根据用户卡返回结果,决定是否继续更新对应EF文件中的记录。
6.3.2.4 流程图
图6-6 写DF02应用数据处理流程图(略)
6.4 管理业务应用(对应DDF1\DF03数据区)
包括对住院信息和门诊信息的记录、提取和报销。MAC的计算方法和步骤参见《
居民健康卡技术规范》9.4节描述。对住院信息和门诊信息进行签名时的SAM卡证书数据,从SAM卡的SAM卡证书文件中读取,SAM卡证书文件参见《居民健康卡安全存取模块(SAM)卡技术规范V1.0》相应描述。
6.4.1 记录住院信息
6.4.1.1 描述
读写用户卡中住院信息索引文件(DF03\EF05)及住院信息(DF03\EE01-03)。
6.4.1.2 命令
参见《居民健康卡用户卡命令集V1.0》和《居民健康卡安全存取模块(SAM)卡命令集V1.0》。
6.4.1.3 记录住院信息流程
(1)终端获得住院信息索引文件读权限。
(2)终端向用户卡发送SELECT命令,选择住院信息索引文件,从第一条记录开始搜索到第一个值为空(‘FF’)的记录,根据这条记录的记录号RN确定住院信息文件的文件标识符FID(‘EE’+RN)。
(3)如果没有空记录,则无法记录住院信息,流程结束。
(4)终端获得住院信息文件写权限。
(5)终端向用户卡发送SELECT命令,选择住院信息文件。
(6)终端执行数据签名流程,将待签名的住院信息数据发送到SAM卡进行签名,得到64字节签名值。
(7)终端向用户卡发送UPDATE BINARY命令,写入本次住院信息、签名值和SAM卡证书数据。
(8)终端向用户卡发送SELECT命令,选择住院信息索引文件。
(9)终端向用户卡发送带MAC安全报文的WRITE RECORD命令,写入住院索引信息文件第RN条记录。
(10) 流程结束。
6.4.1.4 流程图
图6-7 住院信息记录流程图(图略)
6.4.2 记录门诊信息
6.4.2.1 描述
读写用户卡中门诊信息索引文件(DF03\EF06)及门诊信息(DF03\ED01-05)。
6.4.2.2 命令
参见《居民健康卡用户卡命令集V1.0》和《居民健康卡安全存取模块(SAM)卡命令集V1.0》。
6.4.2.3 记录门诊信息流程
(1)终端获得门诊信息索引文件读权限。
(2)终端向用户卡发送SELECT命令,选择门诊信息索引文件,从第一条记录开始搜索到第一个值为空(‘FF’)的记录,根据这条记录的记录号RN确定门诊信息文件的文件标识符FID(‘ED’+RN)。
(3)如果没有空记录,则无法记录门诊信息,流程结束。
(4)终端获得门诊信息文件写权限。
(5)终端向用户卡发送SELECT命令,选择门诊信息文件。
(6)终端执行数据签名流程,将待签名的门诊信息数据发送到SAM卡进行签名,得到64字节签名值。
(7)终端向用户卡发送UPDATE BINARY命令,写入本次门诊信息、签名值和SAM卡证书数据。
(8)终端向用户卡发送SELECT命令,选择门诊信息索引文件。
(9)终端向用户卡发送带MAC安全报文的WRITE RECORD命令,写入门诊索引信息文件第RN条记录。
(10) 流程结束。
6.4.2.4 流程图
图6-8 门诊信息记录流程图(图略)
6.4.3 住院费用信息提取及费用报销
6.4.3.1 描述
本部分描述了住院费用提取及报销的简易流程。
6.4.3.2 命令
参见《居民健康卡用户卡命令集V1.0》和《居民健康卡安全存取模块(SAM)卡命令集V1.0》。
6.4.3.3 住院费用信息提取及报销流程
(1)终端获得住院信息索引文件(DF03\EF05)读权限。
(2)终端向用户卡发送SELECT命令,选择住院信息索引文件,从第一条记录开始搜索不为空(‘00’)的记录,根据这条记录的记录号RN确定住院信息文件的文件标识符FID(‘EE’+RN)。
(3)终端向用户卡发送SELECT命令,选择住院信息文件。
(4)终端向用户卡发送READ BINARY命令,读取住院记录数据(住院信息、签名值和SAM卡证书)。
(5)终端将住院记录数据发送到后台,由后台验证签名的的有效性。
(6)终端根据后台返回结果,判断住院记录数据签名验证是否成功。
(7)终端获得住院信息索引文件擦除权限。
(8)终端向用户卡发送SELECT命令,选择住院信息索引文件。
(9)终端向用户卡发送带MAC安全报文的ERASE RECORD命令,擦除住院索引信息文件第RN条记录有效标志。
(10) 流程结束。
6.4.3.4 流程图
图6-9 住院费用提取及报销流程图(图略)
6.4.4 门诊费用信息提取及报销
6.4.4.1 描述
本部分描述了门诊费提取及报销的简易流程。
6.4.4.2 命令
参见《居民健康卡用户卡命令集V1.0》和《居民健康卡安全存取模块(SAM)卡命令集V1.0》。
6.4.4.3 门诊费用提取及报销流程
(1)终端获得门诊信息索引文件(DF03\EF06)读权限。
(2)终端向用户卡发送SELECT命令,选择门诊信息索引文件,从第一条记录开始搜索不为空(‘00’)的记录,根据这条记录的记录号RN确定门诊信息文件的文件标识符FID(‘ED’+RN)。
(3)终端向用户卡发送SELECT命令,选择门诊信息文件。
(4)终端向用户卡发送READ BINARY命令,读取门诊记录数据(门诊信息、签名值和SAM卡证书)。
(5)终端将门诊记录数据发送到后台,由后台验证签名的的有效性。
(6)终端根据后台返回结果,判断门诊记录数据签名验证是否成功。
(7)终端获得门诊信息索引文件擦除权限。
(8)终端向用户卡发送SELECT命令,选择门诊信息索引文件。
(9)终端向用户卡发送带MAC安全报文的ERASE RECORD命令,擦除门诊索引信息文件第RN条记录有效标志。
(10) 流程结束。
6.4.4.4 流程图
图6-10 门诊费用提取及报销流程图(图略)
7 数据签名和验证
7.1 数据签名
7.1.1 描述
住院信息或门诊信息写入到用户卡时需要进行数据签名,以保证数据的真实性和完整性。待签名数据为住院(或门诊)信息文件中除签名值和SAM卡证书之外的所有数据项内容。
7.1.2 命令
参见《居民健康卡用户卡命令集V1.0》和《居民健康卡安全存取模块(SAM)卡命令集V1.0》。
7.1.3 数据签名流程
(1)终端获得需签名的住院(或门诊)信息数据。
(2)终端向SAM卡发送SELECT命令,选择SAM卡DF01目录。
(3)终端将获得的住院(或门诊)信息记录数据分组,向SAM卡循环发送DATA COMPRESS命令,使用SM3算法计算,得到32字节哈希值。
(4)终端向SAM卡发送DIGITAL SIGNATURES命令,用私钥对哈希值做签名,得到64字节签名值。
(5)流程结束。
7.1.4 流程图
图7-1 数据签名流程图(图略)
7.2 数据签名验证
7.2.1 描述
本部分描述了数据签名验证的流程。通过验证数据签名,保证数据真实,没有被篡改。验证签名数据为住院(或门诊)信息文件的住院(或门诊)信息的记录、交易签名和SAM卡证书。
7.2.2 命令
参见《居民健康卡用户卡命令集V1.0》和《居民健康卡安全存取模块(SAM)卡命令集V1.0》。
7.2.3 数据签名验证流程
证书密钥的使用参见《
居民健康卡技术规范》中9.10.2.2节。
(1)终端读取用户卡住院(或门诊)信息文件的住院(或门诊)信息的记录、交易签名和SAM卡证书,并将上述三项数据项发到后台,由后台进行数据签名验证。
(2)后台将验证结果发送到终端。
(3)终端根据返回结果判断数据签名验证是否成功。
(4)流程结束。
7.2.4 流程图
图7-2 数据签名验证流程图(图略)
附件10:
居民健康卡终端技术规范
V1.0
中华人民共和国卫生部
2011年11月
目录
1 适用范围
2 规范性引用文件
3 定义和缩略语
3.1 定义
3.2 缩略语和符号表示
4 基本要求
4.1 产品形态
4.2 外观和结构
4.3 功能
4.4 通讯方式
4.5 电源
4.6 SAM卡接口要求
4.7 气候环境条件
4.8 机械环境条件
4.9 可靠性要求
4.10 安全性要求
4.11 电磁兼容性要求
5 标志、包装、运输和贮存
5.1 标志
5.2 包装
5.3 运输
5.4 贮存
附录A 设备的高级应用编程接口
1 适用范围
本规范规定了居民健康卡应用过程中涉及到的各种终端的产品形态、外观结构、功能、通讯方式、电源、接口、气候环境条件、机械环境条件、可靠性、安全性、电磁兼容性等方面的技术细节,提出了对居民健康卡终端标志、包装、运输和储存的要求。
本规范适用于所有设计、生产、发放、使用居民健康卡终端的研制单位、管理机构、发放机构、以及使用单位等。
2 规范性引用文件
下列文件中的条款通过本部分的引用而成为本部分的条款。凡是注日期的引用文件,其随后所有的修改单(不包括勘误的内容)或修订版均不适用于本部分,然而,鼓励根据本部分达成协议的各方研究是否可使用这些文件的最新版本。凡是不注日期的引用文件,其最新版本适用于本部分。
GB5080.7-1986 设备可靠性试验 恒定失效率假设下的失效率与平均无故障时间的验证试验方案
GB/T 2423.5-1995 电工电子产品环境试验 第2部分:试验方法 试验Ea和导则:冲击
GB/T 2423.6-1995 电工电子产品环境试验 第2部分 试验方法 试验Eb和导则:碰撞
GB/T 2423.8-1995 电工电子产品环境试验 第2部分 试验方法 试验Ed:自由跌落
GB/T 2421-1999 电工电子产品环境试验 第1部分:总则
GB/T 6107-2000 使用串行二进制数据交换的数据终端设备和数据电路终接设备之间的接口
GB/T 18239-2000 集成电路(IC)卡读写机通用规范
GB 4943-2001 信息技术设备的安全
GB/T 16649.3-2006 识别卡 带触点的集成电路卡 第3部分:电信号和传输协议
GB/T 14916 -2006 识别卡 物理特性
GB/T 2423.1-2001 电工电子产品环境试验 第2部分:试验方法 试验A:低温
GB/T 2423.2-2001 电工电子产品环境试验 第2部分:试验方法 试验B:高温
GB/T 2423.3-2006 电工电子产品基本环境试验规程 试验Ca:恒定湿热试验方法
GB/T 17626.2-2006 电磁兼容 试验和测量技术 静电放电抗扰度试验
GB/T 17626.3-2006 电磁兼容 试验和测量技术 射频电磁场辐射抗扰度试验
GB/T 17626.5-2008 电磁兼容 试验和测量技术 浪涌(冲击)抗扰度试验
GB/T 17626.8-2006 电磁兼容 试验和测量技术 工频磁场抗扰度试验。
GB/T 2423.10-2008 电工电子产品环境试验 第2部分:试验方法 试验Fc和导则:振动 (正弦)
GB/T 17626.11-2006 电磁兼容 试验和测量技术 电压暂降、短时中断和电压变化的抗扰度实验
GB 9254-2008 信息技术设备的无线电骚扰限之值和测量方法
GB/T 17626.4-2008 电磁兼容 试验和测量技术 电快速瞬变脉冲群抗扰度试验
GB/T 17626.6-2008 电磁兼容 试验和测量技术 射频电磁场感应的传导抗扰度试验。
GB/T 191-2008 包装储运图示标志
GB/T 23647-2009 自助服务终端通用规范
ISO/IEC 14443-2 识别卡 非触点集成电路卡 接近式卡 第2部分: 射频能量与信号接口
ISO/IEC 14443-3 识别卡 非触点集成电路卡 接近式卡 第3部分:初始化和防碰撞
IEC 512-2:1979 机电设备机电器件规范 第2部分:触点电阻测试、绝缘测试和电压测试
JR/T 0025-2010 中国金融集成电路(IC)卡规范
3 定义和缩略语
3.1 定义
3.1.1 居民健康卡 (Residents Health Card)
居民健康卡是中华人民共和国居民拥有的,在医疗卫生服务活动中用于身份识别,满足健康信息存储,实现跨地区和跨机构就医、数据交换和费用结算的基础载体,是计算机可识别的CPU卡。
3.1.2 终端 (Terminal)
为完成居民健康卡交易而在交易点安装的设备,用于同IC卡的连接。它包括接口设备,也可包括其它部件和接口,例如与主机通讯的接口。
3.1.3 命令 (Command)
终端向IC卡发出的一条信息,该信息启动一个操作或请求一个应答。
3.1.4 响应 (Response)
IC卡处理完收到的命令报文后,返回给终端的报文。
3.1.5 集成电路卡(ICC,Integrated Circuit(s) Card)
内部封装一个或多个集成电路的ID-1型卡(如ISO 7810、ISO 7811第1至第5部分、ISO 7812和ISO 7813中描述的)。
3.1.6 居民健康卡终端 (Residents Health Card Terminal)
指居民健康卡终端如手持式居民健康卡读写机台式IC卡读写机,内置或外置(宿主机为微机)的居民健康卡通用读写器。该类产品可与计算机或网络在联机或脱机方式下对居民健康卡完成识别和各种操作。
3.1.7 居民健康卡自助服务终端(Residents Health Card Self-service Terminal)
指服务提供者提供的实施针对居民健康卡自助服务的专用设备或装置。
3.2 缩略语和符号表示
以下缩略语和符号表示适用于本规范。
表3-1 缩略语和符号表
缩略语
| 中文名
| 英文名
|
APDU
| 应用协议数据单元
| Application Protocol Data Unit
|
CLK
| IC卡工作时钟
| Clock
|
CPU
| 中央处理器单元
| Central Processing Unit
|
IC
| 集成电路
| Integrated Circuit
|
ICC
| 集成电路卡
| Integrated Circuit Card
|
IEC
| 国际电工委员会
| International Electrotechnial Commission
|
ISO
| 国际标准化组织
| International Organization for Standardization
|
GND
| IC卡工作电源地
| Ground
|
HID
| 人机接口设备
| Human Interface Device
|
IIH
| 高电平输入电流
| High Level Input Current
|
IIL
| 低电平输入电流
| Low Level Input Current
|
IOH
| 高电平输出电流
| High Level Output Current
|
IOL
| 低电平输出电流
| Low Level Output Current
|
I/O
| IC卡输入/输出
| Input Output信号
|
RST
| IC卡复位
| Reset信号
|
SAM
| 安全存取模块
| Secure Access Module
|
SW1
| 状态码1
| Status Word One
|
SW2
| 状态码2
| Status Word Two
|
VCC
| VCC触点上测量到的电压
| Voltage Measured on VCC Contact
|
VCC
| IC卡电源
| Power Voltage
|
VIH
| 高电平输入电压
| High Level Input Voltage
|
VIL
| 低电平输入电压
| Low Level Input Voltage
|
VOH
| 高电平输出电压
| High Level Output Voltage
|
VOL
| 低电平输出电压
| Low Level Output Voltage
|
VPP
| VPP触点上测量到的编程电压
| Programming Voltage Measured on VPP Contact
|
VPP
| 编程电压
| Programming Voltage
|
xx
| 任意值
| |
PBOC2.0
| 《中国金融集成电路(IC)卡规范》(JR/T 0025-2005)
|
4 基本要求
4.1 产品形态
(1) 居民健康卡读写器
(2)居民健康卡自助服务终端
4.2 外观和结构
(1)结构应完整、整洁;表面涂镀层应均匀,不应起泡、龟裂、脱落和磨损;不应有明显的凹痕、破损、划痕、变形和污染等;金属零部件不应有锈蚀及其他机械损伤。
(2)终端的零部件连接应紧固无松动。
(3)终端内、外部不应有临时接线。
(4)指示灯应有明显标识。
(5)终端应有铭牌、标牌和商标。
4.3 功能
4.3.1 主要功能
可以读取居民健康卡芯片内数据,终端识别卡的时间不超过1秒,同时内置SAM卡用于安全认证功能。
居民健康卡读写器需要有指示灯提示功能。
4.3.2 接触卡接口
参照《中国金融集成电路(IC)卡规范》。
4.3.3 SAM卡接口
(1)具备至少1个外形尺寸满足GB/T14916标准要求的ID-000规格SAM卡卡座。
(2)通讯协议符合GB/T16649.3,支持读写T=0协议的CPU卡
4.3.4 非接触卡接口
(1)符合ISO/IEC 14443(TypeA和TypeB)标准;
(2)具备冲撞检测功能,检测到冲撞时有提示功能;
(3)读卡距离 0 ~ 5cm,场强范围1.5~7.5A/m;
4.4 通讯方式
终端通讯接口为USB接口或RS232-C接口,符合GB/T 6107-2000的通讯接口要求,可以连接计算机或其他服务器设备。经通讯接口给终端下载操作命令及接收终端返回的信息。
4.4.1 USB数据传输模式
本终端的USB通讯传输采用HID协议。HID协议约定如下:
(1) 设备描述中的iProduct域为“XXXXXXYYYYY_VerZZZZZZ_IDCardReader Device”;XXXXX厂商;YYYYY设备批次;VerZZZZZZ设备内固件版本
(2) 接口描述符中的bInterfaceSubClass域为0x00;
(3) 版本为V1.11。
(4) PID/VID厂商自定义
HID数据输入采用GetReport请求传输,HID数据输出采用SetReport请求传输。HID数据输入与输出均采用分包方式,单个包的数据长度固定为64字节,如输出报文拆分后,结束包长度不足64字节,则以0x00右填充。
HID模型示意图如图4-1所示:
图4-1 USB-HID模型示意图(图略)
分支解释
(1) Data_Out数据包,主机到终端;
(2) Data_In数据包,终端到主机。
4.4.2 RS232-C数据传输模式
本终端的RS232-C通讯传输采用参数设置如下:
表2-1 RS232-C参数表
起始位
| 1位
|
数据位
| 8位
|
停止位
| 1位
|
校验位
| 无
|
波特率
| 默认为9600bps,可以设置为57600bps、38400bps、19200bps、9600bps
|
4.4.3 接口函数定义
接口函数定义参考附录A 高级应用编程接口。
4.5 电源
(1) 居民健康卡读写器
对于计算机USB接口供电方式,在计算机工作正常时,终端应工作正常。终端应有掉电、过流、过压、短路、极性反接等保护措施。当电压恢复正常时,能自动恢复正常工作。
对于采用直流电方式供电的居民健康卡读写器:在额定电压 写器:的条件下正常工作。
(2) 居民健康卡自助服务终端
产品应在频率:50Hz频率:终,电压:220V频率:终的条件下正常工作。
4.6 SAM卡接口要求
终端的逻辑接口和通讯协议应符合GB/T16649.3规范中的相关内容,且终端至少提供1个SAM卡接口,主要负责卡的安全认证功能。终端必须支持T=0传输协议。
4.6.1 SAM卡接口触点分配表
表2-2 接口设备触点的分配
触电号
| 分配
| 触电号
| 分配
|
C1
| 电源电压(VCC)
| C5
| 地(GND)
|
C2
| 复位信号(RST)
| C6
| VPP或不使用
|
C3
| 时钟信号(CLK)
| C7
| 输入/输出(I/O)
|
C4
| 保留(可以不使用)
| C8
| 保留(可以不使用)
|
4.6.2 触点压力
任何一个接口设备触点对相应的IC卡触点所施加的压力应在0.2N到0.6N之间。
4.6.3 触点电阻
在终端的整个设计寿命期间,触点电阻(在清洁的接口设备和清洁的标准SAM卡触点间测量时)应小于500mΩ。
4.6.4 CLK的电特性
频率范围在1MHz~5MHz(对A类卡操作时)或1MHz~4MHz(对B类卡操作时)之间,且在整个交易期间,其变化范围不应超过±1%。时钟占空因数应在其稳定运行周期的45%~55%之间。
4.6.5 复位(RST)
终端产生一个具有表2-3所示特性的复位信号。
表2-3 RST的电特性
符号
| 条件
| 最小值
| 最大值
| 单位
|
VOH
| 0 < IOH < 50μA, Vcc = 最小值
| Vcc-0.5
| Vcc
| V
|
VOL
| -50μA < IOL < 0, Vcc = 最小值
| 0
| 0.4
| V
|
tR和tF
| CIN (ICC) = 30pF 最大
| -
| 0.8
| μs
|
正负脉冲峰值
|
| -0.25
| Vcc + 0.25
| V
|
4.6.6 电源电压(VCC)
终端提供一个5V±0.4V(对A类卡操作时)或3V±0.2V(对B类卡操作时)的直流电压,并能稳定输出0~55mA(对A类卡操作时)或0~45mA(对B类卡操作时)的电流。终端应带有保护电路以防止在误操作(如对地或VCC短路)时所造成的损坏。误操作既可能来源于内部,也可能来自外部接口如电源干扰、通信链路故障等。
4.7 气候环境条件
气候环境适应性分为二级,如表2-4所示。气候环境的严酷等级、试验后的检测项目及由产品规范规定。
表2-4 气候环境条件
环境温度℃
| 相对湿度%
| 大气压力kPa
|
工作
| 贮运
| 工作
| 贮运
|
0~+50
| -40~+60
| 20~93
| 20~93
| 86~106
|
注:产品工作条件见说明书
|
4.8 机械环境条件
机械环境条件如表2-5到表2-8所示。经过机械环境试验后产品应保持外观及电气性能良好,符合产品的功能要求。
表2-5 振动适应性
初始和最后振动响应检查
| 定频耐久试验
| 扫频耐久试验
|
频率
| 扫频
| 驱动
| 驱动
| 持续
| 频率
| 驱动
| 扫频
| 循环
|
范围
| 速度
| 振幅
| 振幅
| 时间
| 范围
| 振幅
| 速度oct/min
| 次数
|
Hz
| oct/min
| mm
| mm
| Min
| Hz
| mm
|
|
|
5~35
| ≤1
| 0.15
| 0.15
| 10±0.5
| 5~35~5
| 0.15
| ≤1
| 2
|
注:表中驱动振幅为峰值
|
结束后进行外观和结构检查,加电读卡应正常工作。
|