1、初论一卡通系统关键技术指标交易速度的设计与实现北京市政交通一卡通有限公司 李传泽 陈文革【摘要】“交易速度”是影响一卡通系统可靠运行的关键技术指标,是全国各地系统建设者普遍关注并倾心研究的重点,因分析设计及实现方法不同,各地达到的水平也不一。本文从理论和实践两方面对这一指标进行初浅的分析,认为200ms是大型一卡多用系统的安全交易速度,并简要阐述了影响这一指标的几个关键因素。【关键词】一卡通 技术指标 交易速度 设计与实现一、前言伴随着微电子技术的发展及城市市政交通信息化建设的起步,以非接触IC卡为支付介质的建设事业IC卡应用系统建设在全国各地得到了突飞猛进的发展。实践证明,非接触IC卡在城市
2、公交、轨道交通、出租车、轮渡、高速路、停车场、公园景点等小额支付领域所表现的方便、快捷的卓越性能,是传统的磁卡和接触式IC卡不可比拟的。非接触IC卡的推广应用为城市居民的出行提供了极大的方便,大大提高了城市居民的生活品质。然而,要建成一个高质量的一卡通系统,需要建设者们对系统各项技术指标的精益求精。如“交易速度”这一关键技术指标,是系统集成商、机具供应商、卡片封装商关注并倾心研究的重点。本文浅论在大型一卡多应用系统中如何设计和优化“交易速度”这一关键技术指标。综观国内一卡通系统的实施情况,典型的系统架构一般由五个层面组成: 第一层为中央清算系统及售卡充值系统。中央清算系统一般由发卡中心、结算中
3、心、安全中心、客服中心几部分组成。发卡中心主要完成卡片的密钥下载、发行信息写入、卡号打印等初始化工作。结算中心主要完成交易数据的汇集和清算、数据统计与分析、帐务处理、报表输出、银行划转等功能。安全中心负责整个系统的信息安全,包括交易数据的合法性认证(TAC解码)、数据的传输安全、存储安全、防止非法入侵和病毒攻击等。客服中心主要为持卡人提供信息查询、投拆授理、咨询服务等,可根据系统规模建立WEB网站和座席系统。售卡充值系统主要是建立覆盖全市的、形式多样的售卡充值网点,以最大限度地方便市民购卡和充资。第二层为公交、轨道交通、出租、轮渡、高速路、停车场、公园景点的分系统结算中心(行业分中心)。主要负
4、责本行业内交易数据的汇集、转发、统计、清分及信息查询等。第三层为各分系统的基层站点数据处理系统(数据采集点)。第四层为充值、消费终端机具。主要功能是市政交通非接触IC卡的合法性认证,及卡的充资、扣款,生成原始交易记录。第五层为消费媒体,即市政交通非接触IC卡。一般为符合ISO/IEC14443 Type A或ISO/IEC14443 Type B标准的逻辑加密卡和双界面CPU卡。(图略)在系统每一层面都有诸多关键的技术指标,如总中心和行业中心的交易处理能力、存储能力、查询速度等重要指标;终端机具的交易速度、抗干扰性能等重要指标。在这些技术指标中,最核心的是终端机具对卡片的处理速度,即交易速度。
5、如果完成一次交易需要的处理时间过长,将会因持卡人刷卡速度过快而导致机具对卡片信息读写的不完整。结果将会造成卡片主备钱包不一致、卡累计交易次数跳号等严重错误,使卡片不能在系统中继续正常使用。进而影响清算系统对卡账户的跟踪及帐务处理,造成系统混乱,影响整个系统的公正性、合理性,使应用业主和持卡人对系统产生不信任感。二、 交易速度指标的定义与技术分析交易速度是指在不同的应用领域,特定的终端机具完成一次特定交易所耗费的处理时间,包括终端机具对卡片成功读写时间和交易记录生成时间。以符合ISO/IEC14443 TypeA标准的Mifare技术为例, 在一卡多应用系统中,完成一次复杂交易(如公交、轨道交通
6、交易)一般需访问46个扇区(目录标识区、发行区、钱包区、公共信息区及过程文件区和交易记录区),根据Mifare原型技术及实际应用经验,卡片操作指令的时间消耗如表1所示。表1 卡片操作指令的时间消耗No.FunctionTime consumption(ms)ARequest0.72BAnti-collision1.44Cselect1.64DCrypto1-authentication3.24ERead (16Bytes)2.55FWrite (16Bytes)4.2710.1GDecr/incr/restore2.75HTransfer1.897.88IHalt1.58在实际的终端机具开发中
7、,一般将原型技术底层函数打包,打包后的卡片处理指令(函数)及时间消耗如表2所示。表2 打包函数对卡的处理时间消耗No.FunctionTime (max:ms)1Open cardA+B+C+I+A+A+C+D11.72Change sectorI+A+C+D7.183Read(1B/2B/3B)1E/2E/3E2.55/5.1/7.654Write(1B/2B/3B)1F/2F/3F10.1/20.2/30.35Purse decrementE+G(Dec.)+H+H21.066Purse recoveryE+G(Restore)+H13.18以轨道交通出闸交易为例计算的交易速度如表3所示。
8、表3 轨道交通出闸交易速度序号读写扇区号块数时间(ms)扇区号块数时间(ms)10211.7+5.12127.18+5.13227.18+5.1227.18+21.064527.18+13.18+10.15727.18+5.1717.18+10.1小计56.1975.98合计132.17根据国内一卡通系统的实际情况,卡片扇区密钥由安全认证模块(PSAM卡)计算得到。实测结果为:若采用38.4Kbps高速PSAM卡,一次导出16个扇区密钥的时间约为26ms,若采用56Kbps高速PSAM卡,一次导出16个扇区密钥的时间约为12ms。闸机处理其他事务的时间一般为50ms。因此,完成一次复杂交易所需
9、的时间轨道交通出闸交易速度为:卡片读写时间+密钥导出时间+闸机时间=132.17+12+50=194.17ms。10cm10cm卡运动轨迹终端机具天线电磁波覆盖区有关专家提出非接触IC卡安全交易速度为200ms的指标,并用下图说明提出的依据(轨道交通快速通过时)。持卡人的平均移动速度为1M/s,卡片进入天线感应区的运动轨迹为20cm。安全交易速度应为(10cm+10cm)/(1M/s)=200ms。100%误差率时间(ms)2000%2%专家通过大量的实验数据绘出交易速度与误差率曲线图如下,当交易速度在200ms时,误差率能控制在2%以下。鉴于以上理论与实践分析,200ms是保证系统可靠运行的
10、安全交易速度。如何实现这一严格的技术指标呢?根据几年来从事一卡通系统建设的实践,我们认为,交易速度的优化取决于以下几个关键因素:l 优化合理的卡片应用结构设计是提高交易速度的基础l 卡片和终端机具的工作频率是提高交易速度的关键l 制定规范统一的卡片处理流程及纠错规则是提高交易速度和交易安全性的保障l 正确引导持卡人规范使用卡片是提高交易速度的有利保证三、优化合理的卡片应用结构设计是提高交易速度的基础卡片结构设计要根据所选用芯片的内部结构特性及安全机制,充分考虑以下要素:l 建设事业IC卡城市密钥管理系统的安全设计与要求l 一卡多行业应用l 不同安全等级要求的信息分类l 共用信息与专用信息的分类
11、l 合理高效的信息编码l 关键信息的存储与备份l 兼容性与扩展性l 卡片的状态管理及物流配送结合中华人民共和国城镇建设行业标准建设事业IC卡应用技术要求(颁布稿),一卡多用用户卡典型的应用结构如下(以非接触逻辑加密卡Mifare 1为例)。1应用数据分区应用数据分区表见表4。表4 应用数据分区表区号名称0应用标识目录区1发行区2钱包及充值记录区3行业专用信息区(预留)4行业专用信息区(预留)5公共信息区6公交过程文件区7轨道交通过程文件区8高速路过程文件区9停车场过程文件区A消费交易记录区B消费交易记录区CF(预留)2应用标识目录区应用标识目录区见表5。表5 应用标识目录区(区0)扇区号块号内
12、容大小(Byte)编码说明00芯片序列号(CSN)4HEX(预留)121目录区定义16HEX2目录区定义6HEX注册标识号5HEX发卡机构IC卡发行权国家注册号注册标识号5HEX发卡机构提供IC卡应用国家注册号3Key A06Access4KeyB063发行区(区1)发行区记录卡的发行信息,包括卡的发行流水号、卡的认证码、卡类型、发行版本及卡的发行日期、失效日期等信息。发行区(区1)数据结构见表6。表6 发行区(区1)数据结构名称大小(Byte)编码说明城市代码2 BCD符合GB/T2260-1999的规定。行业代码2 BCD符合GB/T4754的规定。发行流水号4 BCD发卡时生成的序列号。
13、卡认证码4 HEX由芯片序列号(CSN)、城市代码、发行流水号与用户卡母卡内的特定密钥经过加密运算得到。卡类型1 HEX根据持卡人的不同,可分为成人卡、老人卡、儿童卡、学生卡、福利卡、纪念卡、员工卡等。启用标志1HEX分未启用、启用、停用三种。发行版本2 BCD初始化时由操作员根据卡的购进情况输入的批次和供货商代码。发行日期4 BCD年月日(YYYYMMDD)表示方法符合GB/T7408的规定。失效日期4 BCD年月日(YYYYMMDD)表示方法符合GB/T7408的规定。4 钱包及充值记录区(区2)市政交通非接触IC卡使用电子钱包储值,钱包包括主钱包/备份钱包和校验等信息,数据结构见表7。表
14、7 钱包及充值记录区(区2)块号名称大小(Byte)编码说明0原额3HEX充值前金额,钱包单位据实而定。余额3HEX充值后金额,钱包单位据实而定。充值员ID2BCD表示本充值点充值员的ID码充值日期3BCDYYMMDD充值机代码3BCD(预留)21公共钱包4HEX公共钱包4HEX含阴影的字段为原值取反公共钱包4HEXADDRESS4HEX2公共钱包(备份) 4HEX公共钱包(备份)4HEX含阴影的字段为原值取反公共钱包(备份)4HEXADDRESS4HEX3Key A26Access4Key B265公共信息区公共信息区记录市政交通非接触IC卡应用的各行业共用的信息,包括卡累计交易次数、黑名单
15、标志、消费交易记录指针等,数据结构见表8。表8 公共信息区数据结构(区5)名称大小(Byte)编码说明黑名单卡标志1HEX正常卡:0x-;黑名单卡:0x-。消费交易记录指针1HEX标志最近一条交易记录的绝对块号卡累计交易次数(备份)4HEX卡累计交易次数(钱包格式)4HEX卡累计交易次数(钱包格式)4HEX含阴影的字段为原值取反卡累计交易次数(钱包格式)4HEX6 过程数据区、轨道交通过程数据区占4个独立的区(区6区9),分别记录持卡人乘坐公交、轨道交通或通过高速路、停车场时的过程信息。7 消费交易记录区占2个独立的区,一条消费记录的数据结构见表9。表9 消费交易记录区数据结构(区A、区B)名
16、称大小(Byte)编码说明交易时间5BCD年月日时分(YYMMDDHHNN)。原额3HEX交易金额2HEX交易类型1HEX系统代码1HEX复用字段4根据系统不同,有不同定义。四、 卡片和终端机具的工作频率是提高交易速度的关键因素频率(Mhz)距离(cm)13.5617108研究表明,卡片的读写距离及其对不同终端机具的适应性(如是否会产生盲区)是与其工作频率(或谐振频率)相关的,读写距离又直接影响交易成功率。卡片的读写距离与其工作频率的关系如下图所示。可见,在ISO/IEC14443规定的谐振频率13.56Mhz左侧,当频率变化时,读写距离会大幅度变化;而在右侧,当频率变化时,读写距离的变化幅度
17、不大。因此,专家建议卡片的工作频率在15Mhz 17.5Mhz中为最佳。而终端机具的工作频率在13.56Mhz14.56Mhz中为最佳。这样才能保证在大型应用系统中卡片与机具的最佳耦合。当然,终端机具的天线尺寸(面积)及电源设计也直接影响读写距离(或交易速度)。五、制定规范统一的卡片处理流程及纠错规则是提高交易速度及交易安全性的保障对一个大型的一卡通系统,涉及的集成商和设备供应商较多,必须制定规范统一的机具对卡片的处理流程及纠错规则以便共同遵守。如钱包消费一般处理流程、公用钱包读取检查和纠正处理流程、卡累计交易计数读取检查和纠正处理流程等标准。并应明确哪些流程是必须强制执行的,哪些流程是非强制
18、执行的。如:l 卡发行信息的有效性检查l 钱包消费一般处理流程l 公用钱包、卡累计交易计数的检查和纠正l 核心交易处理及顺序约定钱包消费一般处理流程公用钱包读取、检查和纠正处理流程卡累计交易计数读取、检查和纠正处理流程六、 引导持卡人规范使用卡片是提高交易速度的有利保证虽然非接触IC卡具有使用方便、快捷的免接触特性,但为了保证交易的可靠性,作为系统的运营管理机构必须正确引导持卡人规范使用卡片,不要“潇洒一挥”,最好在天线感应区“轻触”一下,同时注意终端机具的声光提示。同时运营管理机构还必须编写简明的卡片使用手册,以指导持卡人在不同领域内正确使用卡片。七、 结束语城市市政交通一卡通系统是关系到各
19、运营部门和广大持卡人切身利益的准金融应用系统,对交易数据清算的及时性、公正性和合理性是系统运行成败的关键指标。保证系统的及时性、公正性和合理性的基础是原始交易数据的正确性、合理性及用户卡的正常应用。终端机具成功读写卡片的时间交易速度是系统的核心技术指标。因为它直接关系到原始交易数据的生成、卡片的长期正常使用、清算系统对卡片使用情况的状态跟踪、帐务处理等方方面面。只有系统集成商、终端设备供应商、卡片封装商共同努力,从各个层面提高交易速度这一性能指标,才能保证建成一个公正合理、高效运转的一卡通系统。【参考文献】1.市政交通一卡通技术标准 第1部分:卡片(北京市地方标准 DB11/T159.1-2002) 北京市质量技术监督局 2002-09-11发布