APP下载

基于Java Card 的校园和科研院所一卡通的应用设计

2012-07-02

兵器装备工程学报 2012年7期
关键词:智能卡一卡通应用程序

宫 萍

(黑龙江科技学院 信息网络中心,哈尔滨 150027)

随着国内科研院所和高校信息管理的逐渐普及,信息化管理水平的不断提升,内部管理过程中的应用成本已逐渐通过智能卡的方式来降低,这不仅能提升管理效率,还能提升校内资源的优化配置。

1 一卡通技术基本内涵

在传统的管理模式中,职工在门禁系统、图书借阅、用餐、信息房使用等方面需要应用多张身份认证卡,这是考虑到人员和资源分配而设置的基本权限认证方案。但在服务内容不断完善的今天,若需太多卡来实现自身某项权限和身份的识别,将给职工的日常学习和生活带来不便。同时,随着卡类型的增多,资源配置也会形成很大的不便,给单位管理效率的提升带来一定的阻碍。

一卡通是在单位网络系统资源基础上,通过1 张智能卡来实现传统借阅、门禁、用餐、学费缴纳等多样化功能的校内身份认证和费用支付卡,也就是1 种具有更为多样化支付和身份认证功能的“银行卡”。在单位数字化工程中,一卡通成为其中最为重要的信息关联核心,通过多样化和开放性的认证功能,管理团队能实现更为高效和人性化的服务及管理。

2 java card 基础上的智能卡在一卡通中的优势

智能卡即日常生活中常见的IC 卡,最早出现在公共电话的付费系统中。他将1 个微型集成电路芯片内嵌在塑料卡片中,以实现基本的数据读写功能。随着java card 技术的日益进步,不仅能在智能卡中实现基本的java 语言支持,也可在智能卡中直接安装java 程序,这使得智能卡功能从传统的单一认证提升到了多样化、功能性认证,安全保障和程序执行上。

随着应用技术的不断提升,java card 的一些applt 程序已经能实现底层应用程序隐藏和变准的API 接口,这也为多样化功能开发和安全性保障提供了更为有力的支持。如今的java card 技术兼容性大大提升,程序设计得到了很大的简化,基本能1 次编写多种应用[2],这正符合了一卡通应用的需求。

3 一卡通系统设计与实现

3.1 需求分析

从目前大部分单位的需求来看,一卡通作为一种大众化信息载体,对其信息携带量有着较高的要求。常见智能卡的RAM 一般为256B,ROM 为16KB,EEPROM 为4 ~8KB 不等[3],这种相对较小的容量在一卡通的使用过程中可能出现执行效率不高等方面的问题。而高档智能卡的储存量也并没有很大的提升,因此在常规选择中,应尽可能选择性价比较高的普通智能卡,通过程序优化的方式来实现尽可能多的功能。

另外还需考虑一卡通所要实现的基本功能和其安全性。一卡通所要实现的基本功能包括两大类:一类是常规的身份认证,另一类是校内的小额支付。前者包括单位门禁、图书借阅信息记录等,后者包括师生用餐、常见生活支出(打水、洗浴等)等。由于一卡通具备一定的支付功能,因此需要考虑一卡通与设备交互过程中的信息安全,避免出现消费信息被截取、消费信息错误写入他人卡中等等情况。

3.2 一卡通系统结构

一卡通系统包括JCVM、JCRE 和API 接口三大部分[4]。其中,JCVM 实现了虚拟机、卡内字节解码和卡外字节转换的功能,其基本构架见图1。

图1 JCVM 基本构架

JCRE 实现了一卡通系统最为核心的功能,他完成应用程序的接口编程、应用程序的执行和安全保障。在java 内置的JCRE 方法中提供了较为完善的底层通信协议及内存管理和加密功能,使得一卡通具备了一定的扩展性。在传统智能卡中,卡内信息只能进行简单的读写,基本无法实现后期编程;但JCRE 环境的提供,使得一卡通在到达用户手中后还能依据实际需求进行信息和特殊应用程序的下载,这可为单位的差别化管理提供一定的便利,因此JCRE 也是一卡通系统中必须使用的内容。

API 接口是基本的交互渠道。虽然java card 本身具备支持所有java 语言的功能,但是在卡本身储存和计算功能有限的情况下,其需要依据外部设备来实现一定的功能,也就是将实际程序进行分离,将大部分计算和资源存储交由核心外部设备来实现。API 语言包中的三大核心包为一卡通的功能实现提供了保障。java.lang 提供了基本的java 语言支持;javacard.framwork 内置了多样化的类和底层传输协议,一方面降低了程序设计的复杂程度,另一方面也提供了一定的安全性;javacar.security 则提供了更为完善的信息加密算法,进一步提升了系统的安全性[5]。

结合上述分析,校园一卡通的javacard 体系可细化为如图2 所示的结构。

图2 校园一卡通javacard 体系结构

3.3 applet 的设计实现

常规的applet 功能实现要通过内置的install()、register()、select()、process()方法[6],这些方法提供了写入、反馈、查询的多种信息,可以实现基本的身份验证和小额支付功能。下述内容为常规的指令输入和反馈实例。

3.4 安全性考量

一卡通涉及小额支付,随着各大高校服务项目的增多,消费内容的增加,提升系统安全性不仅仅要从卡内应用程序和接口程序方面考虑,还要从整体运行网络的安全性方面考虑。例如,一些网络传输设备对于传输信息的封包能力不足,将导致消费信息或者卡内个人信息被截取和复制、核心存储设备因掉电而丢失部分用户信息等,这都会对整个系统的安全性产生一定的冲击[7]。因此,在实际应用中,还要对整个网络构架和系统核心设备的安全性和稳定性进行考虑,才能在最大程度上保证一卡通系统的整体安全性。

4 结束语

单位信息化工程建设过程中,一卡通非常必要,其可塑性和扩展性很强。从java card 技术自身来说,其具有较高的安全性,当然也要注意到,由于一卡通应用过程中依赖的外界平台安全性比较高,虽然java card 内置的多样化类和接口已保障了整个系统的安全性,但还需在实际应用过程中进行外部环境稳定性保障和维护工作,才能在未来应用过程中,真正实现提升单位管理效率,提升服务质量的基本目标。

[1]游代安,何久田,蒋遂平,等.Java 卡应用的设计与实现[J].计算机工程与应用,2006(4):229-231.

[2]傅俊,许柳威.JavaCard 技术运用于校园一卡通的探讨[J].现代计算机,2006(7):87-89.

[3]李成华,张新访,吴俊军.“一卡多用”智能卡安全性的实现[J].计算机系统应用,2006(1):56-58.

[4]王明飞. Java 智能卡的安全性[J]. 电脑知识与技术,2011(24):6015-6016.

[5]游代安,何久田,蒋遂平,等.Java 卡应用的设计与实现[J].计算机工程与应用,2006(4):229-232.

[6]盘红华,傅俊.市民卡数据采集系统的设计与开发[J].计算机与现代化,2008(5):46-49.

[7]明艳,李强.JavaCard 技术在智能卡中的应用[J].广东通信技术,2001(11):31-36.

[8]吴晓秋.Java 智能卡技术研究[J].科技创新导报,2011(12):16-17.

猜你喜欢

智能卡一卡通应用程序
东方磁卡李晓东:进击的智能卡研发巨子
删除Win10中自带的应用程序
谷歌禁止加密货币应用程序
基于STC89 单片机的非接触智能卡读写机设计
基于“一卡通”开发的员工信息识别系统
向心加速度学习一卡通
三星电子将开设应用程序下载商店
微软软件商店开始接受应用程序
智能卡抗DPA攻击的设计与实现
电信智能卡发展现状及趋势研究