产品推荐:水表|流量计|压力变送器|热电偶|液位计|冷热冲击试验箱|水质分析|光谱仪|试验机|试验箱

全网搜索
2023版仪器仪表采购宝典电子书

仪表网>技术中心>应用设计>正文

欢迎联系我

有什么可以帮您? 在线咨询

极品白丝嫩模被大哥操 双界面智能卡操作系统的设计与测试

   2012年02月06日 11:43  
  1.引言
  
  智能卡(smartcard又称集成电路卡)将一个集成电路芯片镶嵌于塑料基片中,封装成卡的形式,其外形与覆盖磁条的磁卡相似。
  
  笔者在利用北京市嵌入式系统重点实验室生产的智能卡进行符合中国人民银行金融卡规范的BESCOS开发过程中,针对该款芯片的硬件特性进行了COS的设计与实现,并根据规范设计了测试用例,完成了测试。
  
  2.智能卡硬件概述
  
  BES1332EF是一款基于8051的双界面智能卡芯片。非接触式接口支持ISO14443TYPEA协议,接触式接口支持ISO/IEC7816T=0协议。有8K的ROM,32K的EFLASH,1K的RAM,硬件随机数发生器,CRC模块以及DES模块。
  
  3.智能卡操作系统
  
  智能卡操作系统是一个系统,和传统意义上的操作系统有很大的差别,它更类似于一个监控程序。COS主要包含通信、命令解释、文件系统以及安全四个模块。
  
  3.1通信模块
  
  传输管理器负责智能卡和接口设备之间的数据通信,接收过程中要处理对输入数据的缓冲,响应过程控制数据的发送。通信使用的协议是ISO7816-3所规定的T=0的异步半双工字符传输协议。当接口设备给卡上电之后,首先由卡发送一个复位应答信息(ATR)给接口设备,然后接口设备发送命令头来启动命令处理过程。传输管理器在正确地接收到命令后交给下一个功能模块进行处理,昀后还要把该命令的执行结果返回给接口设备。
  
  3.2命令解释模块
  
  命令解释器对外部输入的每条命令做语法分析,分析和检查命令参数是否正确,然后根据命令参数的含义执行相应的功能模块。如果发现参数有错,将从该模块直接返回错误信息。
  
  3.3文件系统
  
  主控文件(MasterFile,MF)。主控文件是整个文件系统的根(可看做根目录),每张卡有且只有一个主控文件。文件(DedicatedFile,DF)。在MF下针对不同的应用建立起来的一种文件,是位于MF之下的含有EF的一种文件结构(可看做文件目录),它存储了某个应用的全部数据以及与应用操作相关的安全数据。基本文件(ElementaryFile,EF)。基本文件存储了各种应用的数据和管理信息,它存在于MF和DF下。
  
  3.4安全模块
  
  安全模块主要分成两个部分。*部分就是用于数据加密、校验等的基础功能模块。包括随机数产生、3DES加密、MAC计算模块、CRC计算模块等。第二部分是文件的权限控制模块。在BESCOS中,MF、DF和EF的文件头中保存着一个权限范围,而系统在某一时刻都有着当前的权限值,如果权限值在权限范围中,则可以进行相应操作,否则,则需要外部认证等手段改变系统当前的权限值。
  
  4.智能卡的测试
  
  4.1测试环境
  
  智能卡的测试主要分两个部分,一是硬件测试,二是软件测试。从硬件测试的层面来说,选取一个功能强的于测试读卡器是十分必要的。比如在IC卡的7816通信接口还没有*实现的时候,通过普通的读卡器对卡片进行操作,返回值在读卡器这边是无法看到的,因为大多数读卡器屏蔽了不符合7816的TPDU规定的数据,而如果每次都用示波器观察硬件信号的话,效率又比较低。所以应该尽量选择可以看到底层交互数据的读卡器。
  
  从软件测试的层面来说,选取一个对上层提供了友好的接口的读卡器也是十分必要的。例如我在开发BESCOS时使用的读卡器Collis,提供了与其配套的脚本开发环境CollisConclusion,可以方便的设置读卡器的电压,频率,等待超时时间等。还提供了设定期望返回值的功能。
  
  4.2测试脚本
  
  测试脚本主要分为功能正确情况测试,功能异常情况测试,参数测试,安全机制测试以及应用流程测试。
  
  功能正确情况测试是指在输入的参数都合法,执行的条件都具备,所执行的命令应该可以正常执行的情况下,检查所测命令是否能够正确执行涉及的功能步骤。功能异常情况测试是指在输入的参数都合法,但执行的条件不具备,检测COS是否都返回了相应的错误代码。参数测试是指,固定所测命令参数P1、P2、Lc和数据与正确且不变的情况下,利用穷举法便利每一个错误的CLA作为输入参数,测试COS是否都能正确响应错误代码,其他的参数测试同理。安全机制测试是指在操作一个基本文件时,该文件可能有一个或者多个安全控制机制。应用流程测试,是指将命令组合起来成为一个应用流程,检测整个流程是否都能正确执行,检测基本命令之间是否会有影响。
  
  5.结束语
  
  目前COS已经通过了第三方的测试,目前正在准备上金融卡检测中心的测试平台。COS开发中昀大的困难就是调试不便,直到后来在芯片中加入了OCI,才可实现单步调试以及存储单元值的查看。COS的开发语言C/汇编也比较低级,影响了开发的效率以及易维护性。相信随着IC卡成本的降低,支持java语言的java卡会更加的普及。

免责声明

  • 凡本网注明“来源:仪表网”的所有作品,均为浙江兴旺宝明通网络有限公司-仪表网合法拥有版权或有权使用的作品,未经本网授权不得转载、摘编或利用其它方式使用上述作品。已经本网授权使用作品的,应在授权范围内使用,并注明“来源:仪表网”。违反上述声明者,本网将追究其相关法律责任。
  • 本网转载并注明自其它来源(非仪表网)的作品,目的在于传递更多信息,并不代表本网赞同其观点或和对其真实性负责,不承担此类作品侵权行为的直接责任及连带责任。其他媒体、网站或个人从本网转载时,必须保留本网注明的作品第一来源,并自负版权等法律责任。
  • 如涉及作品内容、版权等问题,请在作品发表之日起一周内与本网联系,否则视为放弃相关权利。
仪表网-仪器仪表行业“互联网+”服务平台
浙公网安备 33010602001308号
网械平台备案证:(浙) 网械平台备字[2020]第00008号
ICP备案号:浙B2-20100369-24
  • 网上标识信息
  • 营业执照(副本)
  • 经营性网站备案信息
  • 行业网站百强奖状
  • 不良信息举报信息
联系我们

客服热线: 13199863987

加盟热线: 13199863987

媒体合作: 0571-87759945

投诉热线: 0571-87759942

关注我们
  • 下载仪表站APP

  • Ybzhan手机版

  • Ybzhan公众号

  • Ybzhan小程序

企业未开通此功能
详询客服 : 0571-87759942