1 拼音
jū mín jiàn kāng kǎ yòng hù kǎ jí zhōng duān chǎn pǐn jiǎn cè guī fàn
《居民健康卡用户卡及终端产品检测规范》由卫生部于2012年2月24日卫办综发〔2012〕26号印发,自2012年2月24日起实施。
2 1 适用范围
本规范主要规定居民健康卡用户卡及终端产品检测规范,包括居民健康卡用户卡芯片、COS、卡封装及读写终端设备相关技术指标的检测。
3 2 规范性引用文件
下列文件对于本文件的应用是必不可少的。凡是注日期的引用文件,仅注日期的版本适用于本文件。凡是不注日期的引用文件,其最新版本(包括所有的修改单)适用于本文件。
GB 4943 信息技术设备的安全
GB/T 14916 识别卡 物理特性
GB/T 18239-2000 集成电路(IC)卡读写机通用规范
GB/T 17554.1 识别卡测试方法第1部分:一般特性测试
GB/T 2423.1 电工电子产品环境试验第2部分试验方法试验A低温
GB/T 2423.2 电工电子产品环境试验第2部分试验方法试验B高温
GB/T 2423.3 电工电子产品环境试验第2部分:试验方法试验Cab:恒定湿热方法
GB/T 2423.5 电工电子产品环境试验第2部分试验方法试验Ea和导则冲击
GB/T 2423.10 电工电子产品环境试验第2部分试验方法试验 Fc:振动(正弦)
GB/T 4857.2 包装运输包装件基本试验第2部分温湿度调节处理
GB/T 4857.5 包装运输包装件跌落试验方法
GB/T 17626.2-2006 电磁兼容试验和测量技术静电放电抗扰度试验
GB/T 17626.3-2006 电磁兼容试验和测量技术射频电磁场辐射抗扰度试
验
GB/T 17626.4-2008 电磁兼容试验和测量技术电快速瞬变脉冲群抗扰度
试验
GB/T 17626.5-2008 电磁兼容试验和测量技术冲击(浪涌)抗扰度试验。
GB/T 17626.6-2008 电磁兼容试验和测量技术射频电磁场感应的传导抗
扰度试验
GB/T 17626.8-2006 电磁兼容试验和测量技术工频磁场抗扰度试验
GB/T 17626.11-2008 电磁兼容试验和测量技术电压暂降、短时中断和电
压变化抗扰度试验
GB/T 17625.1-1998 低压电气及电子设备发出的谐波电流限值(设备每
相输入电容≤16A)
ISO/IEC14443-1 识别卡无触点集成电路卡第一部分物理特性
ISO/IEC14443-2 识别卡无触点集成电路卡第二部分耦合区域的尺寸和位置
ISO/IEC14443-3 识别卡 无触点集成电路卡 第三部分电信号和复位规程
ISO/IEC DIS 14443-4 识别卡 无触点集成电路卡第四部分 传输协议
卫生部《居民健康卡技术规范》及修订说明
卫生部《居民健康卡应用规范》
卫生部《居民健康卡用户卡命令集》
卫生部《居民健康卡终端技术规范》
NIST SPECIAL PUBLICATION 800-22
4 3 术语
4.1 3.1 居民健康卡(Residents HealthCard)
居民健康卡是中华人民共和国居民拥有的,在医疗卫生服务活动中用于身份识别,满足健康信息存储,实现跨地区和跨机构就医、数据交换和费用结算的基础载体,是计算机可识别的CPU卡。
居民健康卡居民分为居民健康卡用户卡和居民健康卡安全存取模块(SAM)卡两种类型。本规范中,除非特殊说明,居民健康卡为居民健康卡用户卡。
4.2 3.2 芯片(Chip)
内含微集成电路的硅片,能够装载卡片操作系统并能存储相应信息。
4.3 3.3 卡片操作系统(COS, Card Operating System)
CPU卡芯片中存储和运行的,以保护应用数据和程序的机密性和完整性,控制CPU卡芯片与外界信息交换为目的的嵌入式软件。
4.4 3.4 终端设备(Terminal)
为处理居民健康卡业务而在服务网点安装的IC卡操作设备。
6 5 检测内容
6.1 5.1 单项检测
居民健康卡用户卡是由芯片、COS和卡片封装而成,因此对每个单项均有针对性的检测要求:。表1分别描述了相关检测内容及要求。
表1 单项检测项目列表
检测项目 | 检测依据及要求 | 本规范 序号 | ||||
芯片 (非接触式) | 抗静电 | ISO/IEC 14443-1,GB/T 17554.1 | ||||
ISO/IEC 14443-1,GB/T 17554.1 | ||||||
ISO/IEC 14443-1,GB/T 17554.1 | ||||||
ISO/IEC 14443-1,ISO/IEC 10373-6 | ||||||
初始化和防冲突检测 | ISO/IEC 14443-3,ISO/IEC 10373-6 | |||||
卡加电次数 | 应支持10万次 | |||||
存储器读写次数 | 应支持10万次 | |||||
应符合NIST SPECIALPUBLICATION 800-22 | 6.3 | |||||
射频功率和信号接口 | ISO/IEC 14443-2,ISO/IEC 10373-6 | |||||
工作 温度 | 上限 | GB/T 16649.1,GB/T 2423.2 | 6.1 | |||
下限 | GB/T 16649.1,GB/T 2423.2 | 6.1 | ||||
COS | 《居民健康卡技术规范》、《居民健康卡用户卡命令集》、 | 6.4 | ||||
卡片 | 卡尺寸 | 《居民健康卡技术规范修订说明》,GB/T17554.1 | ||||
GB/T 14916,GB/T17554.1 | ||||||
弯曲韧性 | GB/T 14916,GB/T17554.1 | |||||
动态弯曲应力 | ISO/IEC 14443-1,GB/T17554.1 | |||||
动态扭曲应力 | ISO/IEC 14443-1,GB/T17554.1 | |||||
剥离强度 | GB/T 14916,GB/T17554.1 | |||||
卡的粘连或并块检测 | GB/T 14916,GB/T17554.1 | |||||
检测项目 | 检测依据及要求 | 本规范 序号 | ||
卡片 | 表面印刷符合性测试 | 印刷图案与文字位置 | 印刷图案及文字的位置应符合《居民健康卡技术规范修订说明》中要求;其中条码和磁条应能被正确识读。 | 6.2 |
印刷色差 | 测试样卡与标准样卡的色差ΔE≤5.00 | |||
印刷牢度 | 经200圈磨损试验后,对卡的图象、颜色、字符进行目测,应无明显变化。 | |||
6.2 5.2 综合检测
5.2.1 居民健康卡用户卡
居民健康卡用户卡检测项目及要求如表2所示
表 2 居民健康卡用户卡检测项目列表
序号 | 检测项目 | 检测依据及要求 | 本规范 序号 | ||
1. | 卡尺寸 | 《居民健康卡技术规范修订说明》,GB/T17554.1 | |||
2. | GB/T 14916, GB/T17554.1 | ||||
3. | 弯曲韧性 | GB/T 14916, GB/T17554.1 | |||
4. | 动态弯曲应力 | ISO/IEC 14443-1,GB/T17554.1 | |||
5. | 动态扭曲应力 | ISO/IEC 14443-1,GB/T17554.1 | |||
6. | 抗静电 | ISO/IEC 14443-1,GB/T 17554.1 | |||
7. | ISO/IEC 14443-1,GB/T 17554.1 | ||||
8. | ISO/IEC 14443-1,GB/T 17554.1 | ||||
9. | 剥离强度 | GB/T 14916,GB/T17554.1 | |||
10. | 卡的粘连或并块检测 | GB/T 14916,GB/T17554.1 | |||
11. | ISO/IEC 14443-1,ISO/IEC 10373-6 | ||||
12. | 初始化和防冲突检测 | ISO/IEC 14443-3,ISO/IEC 10373-6 | |||
13. | 工作 温度 | 上限 | GB/T 16649.1,GB/T 2423.2 | 6.1 | |
14. | 下限 | GB/T 16649.1,GB/T 2423.2 | 6.1 | ||
15. | 卡加电次数 | 应支持10万次 | |||
16. | 存储器读写次数 | 应支持10万次 | |||
17. | 应符合NIST SPECIAL PUBLICATION 800-22:2001 | 6.3 | |||
18. | 射频功率和信号接口 | ISO/IEC 14443-2, ISO/IEC 10373-6 | |||
19. | 居民健康卡COS | 《居民健康卡技术规范》 | 6.4 | ||
20. | 表面印刷符合性测试 | 印刷图案与文字位置 | 印刷图案及文字的位置应符合《居民健康卡技术规范修订说明》中要求,其中条码和磁条应能被正确识读。 | 6.2 | |
21. | 印刷色差 | 测试样卡与标准样卡的色差ΔE≤5.00 | |||
22. | 印刷牢度 | 经200圈磨损试验后,对卡的图象、颜色、字符进行目测,应无明显变化。 | |||
5.2.2 居民健康卡读写设备
居民健康读写设备检测项目及要求如表3所示。
表3 居民健康卡读写设备检测项目列表
序号 | 检测项目 | 检测依据及要求 | 本规范 序号 | |
1. | 6.5.1 | |||
2. | 基本物理配置 | 6.5.2 | ||
3. | 读取功能 | 6.5.3 | ||
4. | 通信功能 | 6.5.3 | ||
5. | 射频功率和信号接口 | 工作频率 | ISO/IEC 14443-2, ISO/IEC 10373-6 | |
6. | 工作场强 | ISO/IEC 14443-2, ISO/IEC 10373-6 | ||
7. | 调制波形 | ISO/IEC 14443-2, ISO/IEC 10373-6 | ||
8. | 通信速率 | ISO/IEC 14443-2, ISO/IEC 10373-6 | ||
9. | 机具对卡的传输功率 | ISO/IEC 14443-2, ISO/IEC 10373-6 | ||
10. | 与SAM卡通信协议检测 | GB/T 16649.3, GB/T 17554.3 | ||
11. | 工作温度下限试验 | GB/T18239 | ||
12. | 贮运温度下限试验 | |||
13. | 工作温度上限试验 | |||
14. | 贮运温度上限试验 | |||
15. | 工作条件下恒定湿热试验 | |||
16. | 贮运条件下恒定湿热试验 | |||
17. | 振动试验 | GB/T18239 | ||
18. | 冲击试验 | GB/T18239 | ||
19. | 碰撞试验 | GB/T18239 | ||
20. | 包装跌落 | GB/T18239 | ||
21. | 电磁兼 容性 | 辐射骚扰 | GB/T18239 | |
22. | 传导骚扰 | GB/T18239 | ||
23. | 静电放电抗扰度 | GB/T18239 | ||
24. | 电快速瞬变脉冲群抗扰度 | GB/T18239 | ||
25. | 浪涌(冲击)抗扰度 | GB/T18239 | ||
26. | 射频场感应的传导骚扰抗扰度 | GB/T18239 | ||
27. | 工频磁场抗扰度 | GB/T18239 | ||
28. | 电压暂降、短时中断和电压变化抗扰度 | GB/T18239 | ||
29. | 射频电磁场辐射抗扰度 | GB/T18239 | ||
30. | 谐波电流值 | GB/T17625.1 | ||
31. | 接触电流和保护导体电流 | GB/T4943 | ||
32. | 抗电强度 | GB/T4943 | ||
33. | 接地导体及其连接的电阻措施 | GB/T4943 | ||
34. | 可靠性(MTBF) | 6.5.4 | ||
7 6 检测方法:
7.1 6.1 工作温度上、下限
6.1.1 检测目的:
验证IC卡的工作温度符合标准要求。
6.1.2 检测要求:
在0℃~50℃条件下,卡应正常工作不变形,外观无明显变化。
(一)工作温度上限测试应按照GB/T 2423.2中的“试验Bd”或“试验Bb”进行,试验时间2小时;
(二)工作温度下限测试应按照GB/T2423.1中的“试验Ad”或“试验Ab”进行,试验时间2小时;
7.2 6.2 表面印刷符合性测试
6.2.1 检测目的:
验证IC卡的印刷图案与文字位置、印刷色差、印刷牢度符合要求。
6.2.2 检测要求:
(一)印刷图案及文字的位置应符合《居民健康卡技术规范修订说明》要求;
(二)条码和磁条应能被正确识读;
(三)测试样卡与标准样卡的色差ΔE≤5.00;
(四)耐磨测试200个周期后,对卡的图象、颜色、字符进行目测,应无明显变化。
使用相关测试仪器进行测试。
7.3 6.3 随机数随机特性
6.3.1 检测目的:
验证居民健康卡SAM卡及居民健康卡随机数发生器生成的随机数的随机性符合相关安全要求。
6.3.2 检测要求:
随机数的随机性应符合NIST SPECIAL PUBLICATION 800-22 的频率测试、块内频率测试、游程测试、块内最长游程测试、二进制矩阵测试、离散付利叶变换测试、非重叠模板匹配测试、重叠模板匹配测试、MAURER'S 普通统计测试、线性复杂性测试、连续测试、近似熵测试、累积和测试、随机漂移测试、随机漂移变异测试等15项要求。
7.4 6.4 居民健康卡用户卡COS检测
为保障居民健康卡功能的正确性及其使用的安全性,居民健康卡COS功能应符合《居民健康卡技术规范》、《居民健康卡用户卡命令集》及《居民健康卡应用规范》的要求,其载体应为已通过卫生部备案的芯片。
居民健康卡文件结构见《居民健康卡技术规范》。
6.4.1 应用功能测试
6.4.1.1 读卡识别数据区信息
检测目的:
验证居民健康卡能够完成卡片基本数据区(MF\DDF1\EF05、MF\DDF1\EF06和MF\DDF1\EF07)的信息读取。
检测要求:
按照《居民健康卡应用规范》中6.1.1中的流程描述,进行卡片基本数据区(MF\DDF1\EF05、MF\DDF1\EF06和MF\DDF1\EF07)的数据读取。
6.4.1.2 写卡识别数据区信息
检测目的:
验证居民健康卡能够完成卡片基本数据区(MF\DDF1\EF05、MF\DDF1\EF06和MF\DDF1\EF07)的信息更新。
检测要求:
按照《居民健康卡应用规范》中6.1.2中的流程描述,进行卡片基本数据区(MF\DDF1\EF05、MF\DDF1\EF06和MF\DDF1\EF07)的数据更新。
6.4.1.3 读卡身份识别数据区信息(读 DF01应用数据)
检测目的:
验证居民健康卡能够完成身份识别数据区(MF\DDF1\DF01\EF05、MF\DDF1\DF01\EF06、MF\DDF1\DF01\EF07和MF\DDF1\DF01\EF08)的信息读取。
检测要求:
按照《居民健康卡应用规范》中6.2.1中的流程描述,进行身份识别数据区(MF\DDF1\DF01\EF05、MF\DDF1\DF01\EF06、MF\DDF1\DF01\EF07和MF\DDF1\DF01\EF08)的数据读取。
6.4.1.4 写卡身份识别数据区信息(写 DF01应用数据)
检测目的:
验证居民健康卡能够完成身份识别数据区(MF\DDF1\DF01\EF05、MF\DDF1\DF01\EF06、MF\DDF1\DF01\EF07和MF\DDF1\DF01\EF08)的信息更新。
检测要求:
按照《居民健康卡应用规范》中6.2.2中的流程描述,进行身份识别数据区(MF\DDF1\DF01\EF05、MF\DDF1\DF01\EF06、MF\DDF1\DF01\EF07和MF\DDF1\DF01\EF08)的数据更新。
6.4.1.5 读卡基础健康信息数据区信息(读DF02应用数据)
检测目的:
验证居民健康卡能够完成基础健康信息数据区(MF\DDF1\DF02\EF05、MF\DDF1\DF02\EF06、MF\DDF1\DF02\EF07和MF\DDF1\DF02\EF08)的信息读取。
检测要求:
按照《居民健康卡应用规范》中6.3.1中的流程描述,进行基础健康信息数据区(MF\DDF1\DF02\EF05、MF\DDF1\DF02\EF06、MF\DDF1\DF02\EF07和MF\DDF1\DF02\EF08)的数据读取。
6.4.1.6 写卡基础健康信息数据区信息(写DF02应用数据)
检测目的:
验证居民健康卡能够完成基础健康信息数据区(MF\DDF1\DF02\EF05、MF\DDF1\DF02\EF06、MF\DDF1\DF02\EF07和MF\DDF1\DF02\EF08)的信息更新。
检测要求:
按照《居民健康卡应用规范》中6.3.2中的流程描述,进行基础健康信息数据区(MF\DDF1\DF02\EF05、MF\DDF1\DF02\EF06、MF\DDF1\DF02\EF07和MF\DDF1\DF02\EF08)的数据更新。
6.4.1.7 写卡住院信息(读、写DF03应用数据)
检测目的:
验证居民健康卡能够完成住院信息的写入,即管理数据区(MF\DDF1\DF03\EF05和MF\DDF1\DF03\EE01~EE05)的信息更新。
检测要求:
按照《居民健康卡应用规范》中6.4.1中的流程描述,进行管理数据区(MF\DDF1\DF03\EF05和MF\DDF1\DF03\EE01~EE05)的数据更新。
6.4.1.8 写卡门诊信息(读、写DF03应用数据)
检测目的:
验证居民健康卡能够完成门诊信息的写入,即管理数据区(MF\DDF1\DF03\EF06和MF\DDF1\DF03\ED01~ED05)的信息更新。
检测要求:
按照《居民健康卡应用规范》中6.4.2中的流程描述,进行管理数据区(MF\DDF1\DF03\EF06和MF\DDF1\DF03\ED01~ED05)的数据更新。
6.4.1.9 住院费用提取及报销(读、写DF03应用数据)
检测目的:
验证居民健康卡能够完成住院报销,即管理数据区(MF\DDF1\DF03\EF05和MF\DDF1\DF03\EE01~EE05)的信息读取和更新。
检测要求:
按照《居民健康卡应用规范》中6.4.3中的流程描述,进行管理数据区(MF\DDF1\DF03\EF05和MF\DDF1\DF03\EE01~EE05)的数据读取和更新。
6.4.1.10 门诊费用提取及报销(读、写DF03应用数据)
检测目的:
验证居民健康卡能够完成门诊费用报销流程,即管理数据区(MF\DDF1\DF03\EF06和MF\DDF1\DF03\ED01~ED05)的信息更新。
检测要求:
按照《居民健康卡应用规范》中6.4.4中的流程描述,进行管理数据区(MF\DDF1\DF03\EF06和MF\DDF1\DF03\ED01~ED05)的数据更新。
6.4.2 命令功能测试
6.4.2.1 APPLICATION BLOCK命令
检测目的:
检测要求:
应符合《居民健康卡用户卡命令集》5.3.1相关要求。
(一)未进行外部认证,进行应用锁定操作,卡片应返还状态码 ‘6982’;
(二)未取随机数,进行应用锁定操作,卡片应返还状态码 ‘6984’;
(三)无MAC,进行应用锁定操作,卡片应返还状态码 ‘6700’或‘6987’;
(四)MAC数据错误,进行应用锁定操作,卡片应返还状态码 ‘6988’;
(五)按照《居民健康卡应用规范》相关应用描述,正确进行应用临时锁定操作,应用应被锁定;
(六)选择临时锁定的应用,卡片应返还状态码 ‘6283’(选择文件无效),同时返回FCI;
(七)对临时锁定的应用,进行应用临时锁定操作,卡片应返还状态码 ‘6985’;
(八)选择被锁定的应用,应禁止对应用下的文件进行访问。
(九)选择被锁定的应用,除取随机数、内部认证、外部认证、应用永久锁定、卡片锁定、应用解锁外,其他命令都不能执行。
(十)对临时锁定的应用,进行应用永久锁定操作,卡片应返还状态码 ‘9000’。
(十一)应用被永久锁定后,除卡片锁定命令外,对应用进行的任何操作,应返回错误状态码‘9303’。
6.4.2.2 APPLICATION UNBLOCK命令
检测目的:
检测要求:
应符合《居民健康卡用户卡命令集》5.3.2中相关要求。
(一)按照《居民健康卡应用规范》相关应用描述,对临时锁定的应用进行应用解锁操作,应用应被解锁;
(二)选择被解锁后的应用,卡片应返还状态码 ‘9000’(选择文件有效),同时返回FCI;
(三)在应用被解锁后,对应用下的数据进行读写操作应成功;
(四)对永久锁定的应用进行应用解锁操作,卡片应返还状态码 ‘9303’;
(五)对未锁定的应用,进行应用解锁操作,卡片应返还状态码 ‘6985’;
(六)未进行外部认证,进行应用解锁操作,卡片应返还状态码 ‘6982’;
(七)未取随机数,进行应用解锁操作,卡片应返还状态码 ‘6984’;
(八)无MAC,进行应用解锁操作,卡片应返还状态码 ‘6700’或‘6987’;
(九)MAC数据错误,进行应用解锁操作,卡片应返还状态码 ‘6988’。
6.4.2.3 CARD BLOCK命令
检测目的:
检测要求:
应符合《居民健康卡用户卡命令集》5.3.3中相关要求。
(一)按照《居民健康卡应用规范》相关应用描述,对卡片进行锁定操作,卡片应被锁定;
(二)卡片锁定后,卡片内所有应用失效,所有命令都不能执行,卡片返回状态码 ‘6A81’;
(三)未进行外部认证,进行卡片锁定操作,卡片应返还状态码 ‘6982’;
(四)未取随机数,进行卡片锁定操作,卡片应返还状态码 ‘6984’;
(五)无MAC,进行卡片锁定操作,卡片应返还状态码 ‘6700’或‘6987’;
(六)MAC数据错误,进行卡片锁定操作,卡片应返还状态码 ‘6988’。
6.4.2.4 EXTERNAL AUTHENTICATION命令
检测目的:
验证EXTERNAL AUTHENTICATION命令功能正确。
检测要求:
应符合《居民健康卡用户卡命令集》5.3.4中相关要求。
(一) 按照《居民健康卡应用规范》相关描述,进行外部认证操作,应成功;
(二)未取随机数,进行外部认证操作,卡片应返还状态码 ‘6984’;
(三)Lc不为‘11’,进行外部认证操作,卡片应返还状态码 ‘6700’;
(四)使用错误密钥标识,进行外部认证操作,卡片应返还状态码 ‘6A88’;
(五)鉴别数据错误,进行外部认证操作,卡片应返还状态码 ‘63Cx’;
(六)16次外部认证失败,卡片应返还状态码 ‘6983’;
(七)应支持密钥版本数据。
6.4.2.5 GET CHALLENGE命令
检测目的:
检测要求:
应符合《居民健康卡用户卡命令集》5.3.5中相关要求。
(一)卡片应支持8字节随机数获取;
(二)Le为‘00’,发送取随机数命令,卡片应返还状态码 ‘6700’;
(三)Le为‘04’,发送取随机数命令,卡片应返还状态码 ‘6700’;
6.4.2.6 INTERNAL AUTHENTICATION命令
检测目的:
验证INTERNAL AUTHENTICATION命令功能正确。
检测要求:
应符合《居民健康卡用户卡命令集》5.3.6中相关要求。
(一) 按照《居民健康卡应用规范》相关描述,进行内部认证操作,应成功;
(二)Lc不为为‘11’,进行外部认证操作,卡片应返还状态码 ‘6700’;
(三)应支持密钥版本数据。
6.4.2.7 READ BINARY命令
检测目的:
检测要求:
应符合《居民健康卡用户卡命令集》5.3.7中相关要求。
(一)按照《居民健康卡应用规范》相关应用描述,对MF\DDF1\DF03\EE01~EE05和MF\DDF1\DF03\ED01~ED05进行逐字节读取,应成功;
(二)按照《居民健康卡应用规范》相关应用描述,对MF\DDF1\DF03\EE01~EE05和MF\DDF1\DF03\ED01~ED05进行最大返回字节读取,应成功;
(三)未进行外部认证,对文件进行读取,卡片应返还状态码 ‘6982’;
(四)未选择文件,发送此命令,卡片应返还状态码 ‘6986’;
(五)读取超出偏移地址的数据,卡片应返还状态码 ‘6B00’;
(六)Le =‘00’,读出自要读的首字节起的256个字节;如果在读出256个字节前已到达文件最后一个字节,则自要读的首字节起的全部字节将被读出。
(七)Le不正确时,卡片应返还状态码 ‘6Cxx’, ‘xx’为实际长度;
(八)读取记录文件,卡片应返还状态码 ‘6981’。
6.4.2.8 READ RECORD命令
检测目的:
检测要求:
应符合《居民健康卡用户卡命令集》5.3.7中相关要求。
(一)按照《居民健康卡应用规范》相关应用描述,对所有记录文件使用记录号进行读取,应成功;
(二)按照《居民健康卡应用规范》相关应用描述,对变长记录文件使用记录标识符进行读取,应成功;
(三)对定长记录文件使用记录标识符进行读取,卡片应返还状态码 ‘6985’;
(四)未进行外部认证,对文件进行读取,卡片应返还状态码 ‘6982’;
(五)未选择文件,对文件进行读取,卡片应返还状态码 ‘6986’;
(六)Le不等于记录长度、也不等于‘00’时,卡片应返还状态码 ‘6700’;
(七)Le等于记录长度或等于‘00’时,卡片应返还全部数据及状态码;
(八)读取二进制文件,卡片应返还状态码 ‘6981’。
6.4.2.9 SELECT命令
检测目的:
检测要求:
应符合《居民健康卡用户卡命令集》5.3.9中相关要求。
(一)通过文件标识符选择卡中所有文件,卡片应返还状态码 ‘9000’;
(二)通过文件名或AID选择卡中居民健康卡应用环境(DDF1)和其下DF文件,卡片应返还状态码 ‘9000’;
(三)选择DDF或DF文件,卡片应返还FCI信息,且格式正确;
(四)数据域为空时,卡片应选择MF文件;
(五)卡片应支持部分文件名选择;
(六)Lc与P1、P 2不一致时,卡片应返还状态码‘6700’;
(七)当所选文件标识符或文件名或AID不存在时,卡片应返还状态码 ‘6A82’。
6.4.2.10 UPDATE BINARY命令
检测目的:
检测要求:
应符合《居民健康卡用户卡命令集》5.3.10中相关要求。
(一)按照《居民健康卡应用规范》相关应用描述,对MF\DDF1\DF03\EE01~EE05和MF\DDF1\DF03\ED01~ED05进行逐字节更新,应成功;
(二)未进行外部认证,对文件进行更新,卡片应返还状态码 ‘6982’;
(三)未选择文件,发送此命令,,卡片应返还状态码 ‘6986’;
(四)偏移地址超出了EF,,卡片应返还状态码 ‘6B00’;
(五)Lc为空时,卡片应返还状态码 ‘6700’;
(六)更新记录文件,卡片应返还状态码 ‘6981’;
(七)MAC错误,卡片应返还状态码 ‘6988’;
(八)MAC错误5次,卡片应临时锁定当前应用。
(九)应用临时锁定后,该应用下所有文件无效。
6.4.2.11 UPDATE RECORD命令
检测目的:
检测要求:
应符合《居民健康卡用户卡命令集》5.3.11中相关要求。
(一)按照《居民健康卡应用规范》相关应用描述,对定长记录或变长记录文件使用记录号进行更新,应成功;
(二)按照《居民健康卡应用规范》相关应用描述,对循环记录文件使用“上一个记录”进行更新,应成功;
(三)对循环记录文件使用指定记录号方式进行更新,卡片应返还状态码 ‘6985’;
(四)对定长记录或变长记录文件使用“上一个记录”更新,卡片应返还状态码 ‘6985’;
(五)更新定长记录或变长记录文件时,记录号错误,卡片应返还状态码 ‘6A83’或‘6A84’;
(六)更新变长记录文件时,记录标识符不正确,卡片应返还状态码 ‘6A85’;
(七)更新变长记录文件时,记录内容不正确时,卡片应返还状态码 ‘6A85’;
(八)未进行外部认证,对文件进行更新,卡片应返还状态码 ‘6982’;
(九)未选择文件,对文件进行更新,卡片应返还状态码 ‘6986’;
(十)Lc为空时,卡片应返还状态码 ‘6700’;
(十一)更新二进制文件,卡片应返还状态码 ‘6981’;
(十二)MAC错误,卡片应返还状态码 ‘6988’;
(十三)MAC错误5次,卡片应临时锁定该应用;
(十四)应用临时锁定后,该应用下所有文件无效。
6.4.2.12 WRITE RECORD命令
检测目的:
检测要求:
应符合《居民健康卡用户卡命令集》5.5.2中相关要求。
(一)按照《居民健康卡应用规范》相关应用描述,对管理数据区(MF\DDF1\DF03\EF05和MF\DDF1\DF03\EF06)使用记录号进行写“00”,应成功;
(二)对其他定长记录文件、循环记录文件使用指定记录号方式进行更新,卡片应返还状态码 ‘6985’;
(三)WRITE RECORD命令操作时,记录号错误,卡片应返还状态码 ‘6A83’;
(四)未进行外部认证,对文件进行写记录操作,卡片应返还状态码 ‘6982’;
(五)未选择文件,对文件进行写记录操作,卡片应返还状态码 ‘6986’;
(六)Lc等于‘00’或不正确时,卡片应返还状态码 ‘6700’;
(七)写二进制文件,卡片应返还状态码 ‘6981’;
(八)MAC错误,卡片应返还状态码 ‘6988’;
(九)MAC错误5次,卡片应临时锁定该应用;
(十)应用临时锁定后,该应用下所有文件无效。
6.4.2.13 ERASE RECORD命令
检测目的:
检测要求:
应符合《居民健康卡用户卡命令集》4.5.2中相关要求。
(一)按照《居民健康卡应用规范》相关应用描述,对管理数据区(MF\DDF1\DF03\EF05和MF\DDF1\DF03\EF05)使用记录号进行擦除“FF”,应成功;
(二)对其他定长记录文件、循环记录文件使用指定记录号方式进行擦除操作,卡片应返还状态码 ‘6985’;
(三)ERASE RECORD命令操作时,记录号错误,卡片应返还状态码 ‘6A83’;
(四)未进行外部认证,对文件进行擦除记录操作,卡片应返还状态码 ‘6982’;
(五)未选择文件,对文件进行擦除记录操作,卡片应返还状态码 ‘6986’;
(六)Lc等于‘00’或不正确时,卡片应返还状态码 ‘6700’;
(七)写二进制文件,卡片应返还状态码 ‘6981’;
(八)MAC错误,卡片应返还状态码 ‘6988’;
(九)MAC错误超限,卡片应临时锁定该应用;
(十)应用临时锁定后,该应用下所有文件无效。
6.4.3 安全机制及状态机
6.4.3.1 内部认证
检测目的:
验证内部认证执行的条件及对卡片安全状态的影响。
检测要求:
(一)应符合《居民健康卡用户卡命令集》5.3.6中相关要求;
(一) 内部认证操作,应可以在任何路径下操作;
(二) 不管内部认证操作成功与否,不改变卡片所处的路径;
(三) 不管内部认证操作成功与否,不应影响卡片所处的安全状态;
6.4.3.2 外部认证
检测目的:
验证外部认证所实现的安全状态。
检测要求:
(一)应符合《居民健康卡用户卡命令集》5.3.4中相关要求;
(一)外部认证成功,卡片安全状态改变;
(二)外部认证不成功,卡片安全状态不应该改变;
(三)引用全局参考参数进行的外部认证,应能在任何目录下进行;
(四)引用专有参考参数进行的外部认证,仅能在专有参数所在的DF下进行;
(五)未进行选择其他DF或卡片复位操作,外部认证获得的安全状态应一直保持;
(六)如果进行了选择其他DF或卡片复位操作,外部认证获得的安全状态应失去;
(七)用于某一特定功能的密钥不能用作其他用途;
6.4.3.3 文件保护权限
检测目的:
验证外部认证所实现的文件保护状态。
检测要求:
(一)应符合《居民健康卡用户卡命令集》5.3.4中相关要求;
(一)外部认证成功,受其保护的文件应该能够读取或更新;
(二)外部认证成功,仅有受其保护的文件应该能够读取或更新,其他文件不能无权限读取或更新;
6.4.3.4 应用维护安全
检测目的:
验证应用维护操作的状态。
检测要求:
(一)应符合《居民健康卡用户卡命令集》中相关要求;
(一) 应用锁定操作不应影响其他应用;
(二) 应用解锁操作不应影响其他应用。
6.4.4 命令参数测试
6.4.4.1 APPLICATION BLOCK命令
检测目的:
验证APPLICATION BLOCK命令CLA、P1、P2、Lc错误时SW返回。
检测要求:
应符合《居民健康卡用户卡命令集》5.3.1中相关要求。
(一)按照《居民健康卡应用规范》相关应用描述,进行应用锁定操作,CLA为‘00’~ ‘83’、 ‘85’~ ‘FE’,卡片应返还状态码 ‘6E00’;
(二)按照《居民健康卡应用规范》相关应用描述,进行应用锁定操作,P1不等于‘00’,卡片应返还状态码 ‘6A86’;
(三)按照《居民健康卡应用规范》相关应用描述,进行应用锁定操作,P2不等于‘00’和‘01’,卡片应返还状态码 ‘6A86’;
(四)按照《居民健康卡应用规范》相关应用描述,进行应用锁定操作,lc不等于‘04’,卡片应返还状态码 ‘6700’。
6.4.4.2 APPLICATION UNBLOCK命令
检测目的:
验证APPLICATION UNBLOCK命令CLA、P1、P2、Lc错误时SW返回。
检测要求:
应符合《居民健康卡用户卡命令集》5.3.2中相关要求。
(一)按照《居民健康卡应用规范》相关应用描述,进行应用解锁操作,CLA为‘00’~ ‘83’、 ‘85’~ ‘FE’,卡片应返还状态码 ‘6E00’;
(二)按照《居民健康卡应用规范》相关应用描述,进行应用解锁操作,P1不等于‘00’,卡片应返还状态码 ‘6A86’;
(三)按照《居民健康卡应用规范》相关应用描述,进行应用解锁操作,P2不等于‘00’,卡片应返还状态码 ‘6A86’;
(四)按照《居民健康卡应用规范》相关应用描述,进行应用解锁操作,lc不等于‘04’,卡片应返还状态码 ‘6700’。
6.4.4.3 CARD BLOCK命令
检测目的:
验证CARD BLOCK命令CLA、P1、P2、Lc错误时SW返回。
检测要求:
应符合《居民健康卡用户卡命令集》5.3.3中相关要求。
(一)按照《居民健康卡应用规范》相关应用描述,进行卡片锁定操作,CLA为‘00’~ ‘83’、 ‘85’~ ‘FE’,卡片应返还状态码 ‘6E00’;
(二)按照《居民健康卡应用规范》相关应用描述,进行卡片锁定操作,P1不等于‘00’,卡片应返还状态码 ‘6A86’;
(三)按照《居民健康卡应用规范》相关应用描述,进行卡片锁定操作,P2不等于‘00’,卡片应返还状态码 ‘6A86’;
(四)按照《居民健康卡应用规范》相关应用描述,进行卡片锁定操作,lc不等于‘04’,卡片应返还状态码 ‘6700’。
6.4.4.4 EXTERNAL AUTHENTICATION命令
检测目的:
验证EXTERNAL AUTHENTICATION命令CLA、P1、P2、Lc错误时SW返回。
检测要求:
应符合《居民健康卡用户卡命令集》5.3.4中相关要求。
(一)按照《居民健康卡应用规范》相关应用描述,进行外部认证操作,CLA为‘01’~‘FE’,卡片应返还状态码 ‘6E00’;
(二)按照《居民健康卡应用规范》相关应用描述,进行外部认证操作,P1不等于‘00’,卡片应返还状态码 ‘6A86’;
(三)按照《居民健康卡应用规范》相关应用描述,进行外部认证操作,P2的bit7、bit6、bit5任何一个等于1 时,卡片应返还状态码 ‘6A86’;
(四)按照《居民健康卡应用规范》相关应用描述,进行外部认证操作,lc不等于‘11’,卡片应返还状态码 ‘6700’。
6.4.4.5 GET CHALLENGE命令
检测目的:
验证GET CHALLENGE命令CLA、P1、P2、Le错误时SW返回。
检测要求:
应符合《居民健康卡用户卡命令集》5.3.5中相关要求。
(一)按照《居民健康卡应用规范》相关应用描述,进行取随机数操作,CLA为‘01’~ ‘FE’,卡片应返还状态码 ‘6E00’;
(二)按照《居民健康卡应用规范》相关应用描述,进行取随机数操作,P1不等于‘00’,卡片应返还状态码 ‘6A86’;
(三)按照《居民健康卡应用规范》相关应用描述,进行取随机数操作,P2不等于‘00’,卡片应返还状态码 ‘6A86’;
(四)按照《居民健康卡应用规范》相关应用描述,进行取随机数操作,le不等于‘08’,卡片应返还状态码 ‘6700’。
6.4.4.6 INTERNAL AUTHENTICATION命令
检测目的:
验证INTERNAL AUTHENTICATION命令CLA、P1、P2、Lc错误时SW返回。
检测要求:
应符合《居民健康卡用户卡命令集》5.3.6中相关要求。
(一)按照《居民健康卡应用规范》相关应用描述,进行内部认证操作,CLA为‘01’~‘FE’,卡片应返还状态码 ‘6E00’;
(二)按照《居民健康卡应用规范》相关应用描述,进行内部认证操作,P1不等于‘00’,卡片应返还状态码 ‘6A86’;
(三)按照《居民健康卡应用规范》相关应用描述,进行内部认证操作,P2不等于‘00’,卡片应返还状态码 ‘6A86’;
(四)按照《居民健康卡应用规范》相关应用描述,进行内部认证操作,lc不等于‘11’,卡片应返还状态码 ‘6700’。
6.4.4.7 READ BINARY命令
检测目的:
验证READ BINARY命令CLA、P1错误时SW返回。
检测要求:
应符合《居民健康卡用户卡命令集》5.3.7中相关要求。
(一)按照《居民健康卡应用规范》相关应用描述,进行读二进制操作,CLA为‘01’~ ‘FE’,卡片应返还状态码 ‘6E00’;
(二)按照《居民健康卡应用规范》相关应用描述,进行读二进制操作,P1的bit8等于‘1’,卡片应返还状态码 ‘6A86’。
6.4.4.8 READ RECORD命令
检测目的:
验证READ RECORD命令CLA、P1、P2错误时SW返回。
检测要求:
应符合《居民健康卡用户卡命令集》5.3.8中相关要求。
(一)按照《居民健康卡应用规范》相关应用描述,进行读记录操作,CLA为‘01’~ ‘FE’,卡片应返还状态码 ‘6E00’;
(二)按照《居民健康卡应用规范》相关应用描述,进行读记录操作,P1等于‘00’或‘FF’,卡片应返还状态码 ‘6A86’;
(三)按照《居民健康卡应用规范》相关应用描述,进行读记录操作,P2不等于‘00’或‘04’,卡片应返还状态码 ‘6A86’。
6.4.4.9 SELECT命令
检测目的:
验证SELECT命令CLA、P1、P2、Lc错误时SW返回。
检测要求:
应符合《居民健康卡用户卡命令集》5.3.9中相关要求。
(一)按照《居民健康卡应用规范》相关应用描述,进行选择文件操作,CLA为‘01’~‘FE’,卡片应返还状态码 ‘6E00’;
(二)按照《居民健康卡应用规范》相关应用描述,进行选择文件操作,P1不等于‘00’、‘02’ 、‘04’,卡片应返还状态码 ‘6A86’;
(三)按照《居民健康卡应用规范》相关应用描述,进行选择文件操作,P2不等于‘00’ 、‘02’ ,卡片应返还状态码 ‘6A86’;
(四)按照《居民健康卡应用规范》相关应用描述,进行选择文件操作,当P1=‘00’ 或‘02’时, lc不等于‘00’或‘02’,卡片应返还状态码 ‘6700’;当P1= ‘04’时, lc小于‘05’或大于‘10’,卡片应返还状态码 ‘6700’。
6.4.4.10 UPDATE BINARY命令
检测目的:
验证UPDATE BINARY命令CLA、P1错误时SW返回。
检测要求:
应符合《居民健康卡用户卡命令集》5.3.10中相关要求。
(一)按照《居民健康卡应用规范》相关应用描述,进行更新二进制操作,CLA为‘01’~ ‘03’或‘05’~‘FE’,卡片应返还状态码 ‘6E00’;
(二)按照《居民健康卡应用规范》相关应用描述,进行更新二进制操作,P1的bit8等于1,卡片应返还状态码 ‘6A86’。
6.4.4.11 UPDATE RECORD命令
检测目的:
验证UPDATE RECORD命令CLA、P2错误时SW返回。
检测要求:
应符合《居民健康卡用户卡命令集》5.3.11中相关要求。
(一)按照《居民健康卡应用规范》相关应用描述,进行更新记录操作,CLA为‘01’~ ‘03’或‘05’~‘FE’,卡片应返还状态码 ‘6E00’;
(二)按照《居民健康卡应用规范》相关应用描述,进行更新记录操作,当P2等于‘03’,P1不等于‘00’,卡片应返还状态码 ‘6A86’;当P2等于‘04’,P1等于‘00’,卡片应返还状态码 ‘6A86’;
(三)按照《居民健康卡应用规范》相关应用描述,进行更新记录操作,P2不等于‘03’ 、‘04’ ,卡片应返还状态码 ‘6A86’。
6.4.4.12 WRITE RECORD命令
检测目的:
验证WRITE RECORD命令CLA、P1、LC错误时SW返回。
检测要求:
应符合《居民健康卡用户卡命令集》5.5.2中相关要求。
(一)按照《居民健康卡应用规范》相关应用描述,进行写记录操作,CLA为‘01’~ ‘83’或‘85’~‘FE’,卡片应返还状态码 ‘6E00’;
(二)按照《居民健康卡应用规范》相关应用描述,进行写记录操作,当P1等于‘00’,卡片应返还状态码 ‘6A86’;
(三)按照《居民健康卡应用规范》相关应用描述,进行写记录操作,当P2不等于‘04’,卡片应返还状态码 ‘6A86’;
(四)按照《居民健康卡应用规范》相关应用描述,进行写记录操作,LC不等于 ‘04’ ,卡片应返还状态码 ‘6700’。
6.4.4.13 ERASE RECORD命令
检测目的:
验证ERASE RECORD命令CLA、P1、LC错误时SW返回。
检测要求:
应符合《居民健康卡用户卡命令集》5.5.1中相关要求。
(一)按照《居民健康卡应用规范》相关应用描述,进行擦除记录操作,CLA为‘01’~ ‘83’或‘85’~‘FE’,卡片应返还状态码 ‘6E00’;
(二)按照《居民健康卡应用规范》相关应用描述,进行擦除记录操作,当P1等于‘00’,卡片应返还状态码 ‘6A86’;
(三)按照《居民健康卡应用规范》相关应用描述,进行擦除记录操作,当P2不等于‘04’,卡片应返还状态码 ‘6A86’;
(四)按照《居民健康卡应用规范》相关应用描述,进行擦除记录操作,LC不等于 ‘04’ ,卡片应返还状态码 ‘6700’。
6.4.5 断电保护测试
6.4.5.1 APPLICATION BLOCK命令
检测目的:
确保在执行APPLICATION BLOCK命令时断电,卡片非挥发性存储器内应用锁定状态不会发生错误。
检测要求:
APPLICATION BLOCK命令具有断电保护功能,应用状态不应发生混乱。
APPLICATION BLOCK命令执行过程中断电,检查应用锁定的状态。
6.4.5.2 APPLICATION UNBLOCK命令
检测目的:
确保在执行APPLICATION UNBLOCK命令时断电,卡片非挥发性存储器内应用锁定状态不会发生错误。
检测要求:
APPLICATION UNBLOCK命令具有断电保护功能,应用状态不应发生混乱。
APPLICATION UNBLOCK命令执行过程中断电,检查应用锁定的状态。
6.4.5.3 UPDATE BINARY命令
检测目的:
确保在执行UPDATE BINARY命令时断电,卡片非挥发性存储器内数据不会发生错误。
检测要求:
UPDATEBINARY命令具有断电保护功能,数据不应发生混乱。
UPDATE BINARY命令执行过程中断电,检查被写文件数据。
6.4.5.4 UPDATE RECORD命令
检测目的:
确保在执行UPDATE RECORD命令时断电,卡片非挥发性存储器内数据不会发生错误。
检测要求:
UPDATE RECORD命令具有断电保护功能,数据不应发生混乱。
UPDATE RECORD命令执行过程中断电,检查被写文件数据内容。
6.4.5.5 WRITE RECORD命令
检测目的:
确保在执行WRITE RECORD命令时断电,卡片非挥发性存储器内数据不会发生错误。
检测要求:
WRITE RECORD命令具有断电保护功能,数据不应发生混乱。
WRITE RECORD命令执行过程中断电,检查被写文件数据内容。
6.4.5.6 ERASE RECORD命令
检测目的:
确保在执行ERASE RECORD命令时断电,卡片非挥发性存储器内数据不会发生错误。
检测要求:
ERASE RECORD命令具有断电保护功能,数据不应发生混乱。
ERASE RECORD命令执行过程中断电,检查被写文件数据内容。
7.5 6.5 设备检测
检测目的:
检测要求:
(一)结构应完整、整洁,表面涂覆层应均匀,不应起泡、龟裂、脱落和不应有明显的破损、划痕、变形和污染等,零部件连接应紧固无松动;
(二)电路板的布线要合理,不能有临时接线;
(三)操作键和开关应定位准确,操作灵活可靠;
(四)开关、按键、指示灯、插座等应有明确标志;
(五)产品应有铭牌、标牌和商标。
6.5.2 基本物理配置检测
检测目的:
验证居民健康卡通用读写设备基本物理配置符合标准要求。
检测要求:
(一)至少支持1个符合ISO 14443标准的非接触CPU卡读头;
(二)具备至少1个外形尺寸满足GB/T14916标准要求的ID-000规格SAM卡卡座;
(三)通讯接口为USB或RS232;
(四)提供指示灯提示。
由检验人员目测。
检测目的:
检测要求:
应符合《居民健康卡终端技术规范》中相关要求。
根据《居民健康卡终端规范》中要求,根据厂家提供的使用手册或操作说明检验样品读取功能和通讯功能正常。
6.5.4 可靠性
检测目的:
检测要求:
应符合《居民健康卡终端技术规范》中相关要求,平均无故障工作时间应不低于5000小时。
依据 GB/T 18239进行。