论文部分内容阅读
随着科技的进步和社会的发展,人们在日常生活中的业务往来越来越频繁,随之却又不得不携带大量的各种各样的票证、卡片、单据、现金等来进行身份的认证和交易,这给人们的生活带来了极大的不便,而且极不安全。而Java智能卡以其对多应用的支持、良好的安全性、可面向对象编程、Applet应用程序在线动态下载等各方面的优点得到了广泛的应用。Java智能卡是Java技术与智能卡的有机结合,它充分利用Java平台无关性,使Java技术“一次编写,到处运行”的思想在智能卡中实现。在Java智能卡中,Java智能卡API程序包提供了一系列标准的类库函数,为应用程序的开发人员提供了标准的接口。Java智能卡API封装智能卡系统的复杂性,屏蔽了智能卡底层的与硬件系统相关的通信协议、内存管理等相关细节,开发人员只需通过调用这个API标准中提供的方法就可以与系统进行通信,使用系统资源来进行服务,使得底层对应用程序开发人员是透明的,从而简化了开发周期,并降低了软件的研发费用。论文根据当前Java智能卡在国内外应用现状,分析了Java智能卡技术的重要性和研究意义,根据Java智能卡的结构,分析Java智能卡API在Applet应用程序正确运行的作用,在Java卡平台中,适合用于智能卡的Java卡虚拟机(JCVM)和Java卡API共同提供了一个与平台无关的环境。论文对SUN公司的API规范作了分析研究,按照API类库结构,分析了包中定义的类和接口方法。应用程序的开发,实现Java卡API接口或者类中的方法时,其实质是应用程序调用外包中的类方法或接口方法的过程。在引用到API中的方法被转换成CAP文件一同加载到智能卡后,JCVM在执行应用程序时如何实现Java卡API所提供的信息,解释器如何正确访问Java Card API类库中的类、方法和域,API中的方法如何返回一个正确的结果,以及对于一些有特殊要求的方法,需要采用C语言实现等。本文将根据Java智能卡解释器对Applet应用程序的解析流程,结合解释器的设计,并按照SUN公司发布的相关规范,分析并设计Java智能卡API方案。同时,对于Java卡“一卡多应用”的特点,根据API提供的类以及方法对应用的认证过程作了分析,保证应用程序数据的独立以及安全,不会被恶意访问,使得各应用程序的执行互不干扰。对Java卡应用程序执行过程中出现的异常进行分析,并设计解决方案,在JCRE出现的异常,采用C语言进行设计。在最后,对本文的研究过程进行实验认证,并作总结,同时也分析了论文研究过程中所遇到的问题,以及在未来学习和工作中所需进一步研究的领域。