当前位置:首页 > 测试测量 > 测试测量
[导读]1. 引 言智能卡(smart card又称集成电路卡)将一个集成电路芯片镶嵌于塑料基片中,封装成卡的形式,其外形与覆盖磁条的磁卡相似。笔者在利用北京市嵌入式系统重点实验室生产的智能卡进行符合中国人民银行金融卡规范的

1. 引 言

智能卡(smart card又称集成电路卡)将一个集成电路芯片镶嵌于塑料基片中,封装成卡的形式,其外形与覆盖磁条的磁卡相似。

笔者在利用北京市嵌入式系统重点实验室生产的智能卡进行符合中国人民银行金融卡规范的BES COS开发过程中,针对该款芯片的硬件特性进行了COS的设计与实现,并根据规范设计了测试用例,完成了测试。

2. 智能卡硬件概述

BES1332EF是一款基于8051的双界面智能卡芯片。非接触式接口支持ISO 14443 TYPE A协议,接触式接口支持ISO/IEC7816 T=0协议。有8K的ROM,32K的EFLASH,1K的RAM,硬件随机数发生器,CRC模块以及DES模块。

3. 智能卡操作系统

智能卡操作系统是一个专用系统,和传统意义上的操作系统有很大的差别,它更类似于一个监控程序。COS主要包含通信、命令解释、文件系统以及安全四个模块。

3.1通信模块

传输管理器负责智能卡和接口设备之间的数据通信,接收过程中要处理对输入数据的缓冲,响应过程控制数据的发送。通信使用的协议是ISO7816-3 所规定的T=0 的异步半双工字符传输协议。当接口设备给卡上电之后,首先由卡发送一个复位应答信息(ATR)给接口设备,然后接口设备发送命令头来启动命令处理过程。传输管理器在正确地接收到命令后交给下一个功能模块进行处理,昀后还要把该命令的执行结果返回给接口设备。

3.2命令解释模块

命令解释器对外部输入的每条命令做语法分析,分析和检查命令参数是否正确,然后根据命令参数的含义执行相应的功能模块。如果发现参数有错,将从该模块直接返回错误信息。

3.3文件系统

主控文件(Master File , MF)。主控文件是整个文件系统的根(可看做根目录),每张卡有且只有一个主控文件。专用文件(Dedicated File,DF)。在MF下针对不同的应用建立起来的一种文件,是位于MF之下的含有EF的一种文件结构(可看做文件目录),它存储了某个应用的全部数据以及与应用操作相关的安全数据。基本文件(Elementary File,EF)。基本文件存储了各种应用的数据和管理信息,它存在于 MF和DF下。

3.4安全模块

安全模块主要分成两个部分。第一部分就是用于数据加密、校验等的基础功能模块。包括随机数产生、3DES加密、MAC计算模块、 CRC计算模块等。第二部分是文件的权限控制模块。在BES COS中, MF、DF和EF的文件头中保存着一个权限范围,而系统在某一时刻都有着当前的权限值,如果权限值在权限范围中,则可以进行相应操作,否则,则需要外部认证等手段改变系统当前的权限值。

4. 智能卡的测试

4.1测试环境

智能卡的测试主要分两个部分,一是硬件测试,二是软件测试。从硬件测试的层面来说,选取一个功能强的专用于测试读卡器是十分必要的。比如在IC卡的7816通信接口还没有完全实现的时候,通过普通的读卡器对卡片进行操作,返回值在读卡器这边是无法看到的,因为大多数读卡器屏蔽了不符合7816的TPDU规定的数据,而如果每次都用示波器观察硬件信号的话,效率又比较低。所以应该尽量选择可以看到底层交互数据的读卡器。

从软件测试的层面来说,选取一个对上层提供了友好的接口的读卡器也是十分必要的。例如我在开发BES COS时使用的读卡器 Collis,提供了与其配套的脚本开发环境Collis Conclusion,可以方便的设置读卡器的电压,频率,等待超时时间等。还提供了设定期望返回值的功能。

4.2测试脚本

测试脚本主要分为功能正确情况测试,功能异常情况测试,参数测试,安全机制测试以及应用流程测试。

功能正确情况测试是指在输入的参数都合法,执行的条件都具备,所执行的命令应该可以正常执行的情况下,检查所测命令是否能够正确执行涉及的功能步骤。功能异常情况测试是指在输入的参数都合法,但执行的条件不具备,检测COS是否都返回了相应的错误代码。参数测试是指,固定所测命令参数P1、P2、Lc和数据与正确且不变的情况下,利用穷举法便利每一个错误的CLA作为输入参数,测试COS是否都能正确响应错误代码,其他的参数测试同理。安全机制测试是指在操作一个基本文件时,该文件可能有一个或者多个安全控制机制。应用流程测试,是指将命令组合起来成为一个应用流程,检测整个流程是否都能正确执行,检测基本命令之间是否会有影响。

5. 结束语

目前COS已经通过了第三方的测试,目前正在准备上金融卡检测中心的测试平台。COS开发中昀大的困难就是调试不便,直到后来在芯片中加入了OCI,才可实现单步调试以及存储单元值的查看。COS的开发语言C/汇编也比较低级,影响了开发的效率以及易维护性。相信随着IC卡成本的降低,支持java语言的java卡会更加的普及。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭