适用于java卡上应用软件的补丁升级方法
【技术领域】
[0001]本发明涉及一种适用于JAVA卡上应用软件的补丁升级方法。
【背景技术】
[0002]JAVA智能卡应用软件在硬掩膜到芯片的ROM中后,如有升级的需求时,只能交给JAVA卡平台系统提供方来完成。JAVA卡平台系统提供方需要根据JAVA卡平台掩膜时生成的应用软件掩膜信息,来给应用软件打补丁,完成升级任务。这种方式存在以下问题:1)、应用提供方需要提供应用源码及升级后的源码片段给JAVA卡平台系统提供方。这涉及到应用提供方的知识产权。2)、JAVA卡平台系统提供方在打补丁时,需要找到对应的代码存储地址,这是一个相当繁琐的工作,极其耗费精力。也正因为如此,大部分应用开发方在遇到应用需要升级的情况下,选择放弃之前生产的卡片,而重新掩膜新的卡片。这是一种极大的资源浪费。
【发明内容】
[0003]针对现有技术的不足,本发明的目的是提供一种可以让应用软件提供方自主进行应用升级,在保护知识产权的同时,提高升级效率,降低成本的方法。
[0004]为实现上述目的,本发明采用了如下技术方案:
适用于JAVA卡上应用软件的补丁升级方法,包括如下步骤:
1)在JAVA卡里设置第一库包和第二库包,将JAVA卡上的APPLET类单独放在第一库包里;
2)在第二库包里创建的一个功能实现类C2,类C2中放置实现步骤I)中的APPLET类功能的程序;
3)在第一库包里创建一个类Cl,并继承于第二库包中的功能实现类C2;
4)在APPLET类的构造方法里创建Cl类的一个对象;
5)在APPLET类的命令分发处理函数里调用Cl类对象的命令分发处理的函数;
6)在需要进行补丁更新时,删除先前的第一库包,然后将需要更新的功能函数在第一库包中的Cl类里重新实现,重新下载第一库包到可擦可编程可读存储器即可。
[0005]作为上述方案的进一步优化,所述步骤2)中实现步骤I)中的APPLET类功能的程序采用public和protect修饰符。
[0006]本发明的有益效果主要表现为:
(1)应用提供方自主完成升级工作,不需要JAVA卡平台系统提供方参与,可有效保护自主知识产权;
(2)本发明利用JAVA卡系统平台灵活的安装删除应用的机制,升级方法简单,减少升级工作量;
(3)补丁数据少,节省EEPROM(可擦可编程可读存储器)空间的使用。
【附图说明】
[0007]图1是本发明一实施例的逻辑结构示意图。
【具体实施方式】
[0008]下面结合附图和优选实施例对本发明作更为具体的描述。
[0009]如图1所示,适用于JAVA卡上应用软件的补丁升级方法,包括如下步骤:
1)在JAVA卡里设置第一库包和第二库包,将JAVA卡上的APPLET类单独放在第一库包里;
2)在第二库包里创建的一个功能实现类C2,类C2中放置实现步骤I)中的APPLET类功能的程序;
3)在第一库包里创建一个类Cl,并继承于第二库包中的功能实现类C2;
4)在APPLET类的构造方法里创建Cl类的一个对象;
5)在APPLET类的命令分发处理函数里调用Cl类对象的命令分发处理的函数;
6)在需要进行补丁更新时,删除先前的第一库包,然后将需要更新的功能函数在第一库包中的Cl类里重新实现,重新下载第一库包到可擦可编程可读存储器即可。
[0010]所述步骤2)中实现步骤I)中的APPLET类功能的程序采用public和protect修饰符。
[0011]在本实施例中,JAVA卡应用软件将应用功能放在一个库包里实现,然后在APPLET包里创建一个类继承库包里的类;在后续升级时,只需要重新实现APPLET包即可,将需要升级的函数在子类中实现。采用这种方案的JAVA卡应用,在升级应用软件时,只需要删除APPLET包,然后下载新的APPLET包,完全不用考虑JAVA卡平台系统。可由应用提供方自主控制,并且不需要考虑应用软件在存储器里是如何存储,省去繁琐的地址定位工作。
[0012]本实施例使得JAVA卡应用软件升级时不依赖于底层的JAVA卡平台系统,其基本原理是利用JAVA语言的特性一继承,在现有的父类基础上构建新的子类,子类可以重用父类的属性和方法。该技术要求在库包中的类里实现应用的功能,并尽可能的使用public和protect修饰符。
[0013]上面结合附图对本发明优选实施方式作了详细说明,但是本发明不限于上述实施方式,在本领域普通技术人员所具备的知识范围内,还可以在不脱离本发明宗旨的前提下做出各种变化。
[0014]不脱离本发明的构思和范围可以做出许多其他改变和改型。应当理解,本发明不限于特定的实施方式,本发明的范围由所附权利要求限定。
【主权项】
1.适用于JAVA卡上应用软件的补丁升级方法,其特征在于,包括如下步骤: 1)在JAVA卡里设置第一库包和第二库包,将JAVA卡上的APPLET类单独放在第一库包里; 2)在第二库包里创建的一个功能实现类C2,类C2中放置实现步骤I)中的APPLET类功能的程序; 3)在第一库包里创建一个类Cl,并继承于第二库包中的功能实现类C2; 4)在APPLET类的构造方法里创建Cl类的一个对象; 5)在APPLET类的命令分发处理函数里调用Cl类对象的命令分发处理的函数; 6)在需要进行补丁更新时,删除先前的第一库包,然后将需要更新的功能函数在第一库包中的Cl类里重新实现,重新下载第一库包到可擦可编程可读存储器即可。2.根据权利要求1所述的适用于JAVA卡上应用软件的补丁升级方法,其特征在于,所述步骤2)中实现步骤I)中的APPLET类功能的程序采用public和protect修饰符。
【专利摘要】本发明公开了适用于JAVA卡上应用软件的补丁升级方法,JAVA卡应用软件将应用功能放在一个库包里实现,然后在APPLET包里创建一个类继承库包里的类;在后续升级时,只需要重新实现APPLET包即可,将需要升级的函数在子类中实现;采用这种方案的JAVA卡应用,在升级应用软件时,只需要删除APPLET包,然后下载新的APPLET包,完全不用考虑JAVA卡平台系统。其可由应用提供方自主控制,并且不需要考虑应用软件在存储器里是如何存储,省去繁琐的地址定位工作;不需要JAVA卡平台系统提供方参与,可有效保护自主知识产权。
【IPC分类】G06F9/445
【公开号】CN105630516
【申请号】CN201410582663
【发明人】林杰, 王涛
【申请人】苏州融卡智能科技有限公司
【公开日】2016年6月1日
【申请日】2014年10月28日