一种在Java Card中应用补丁程序的方法及装置制造方法及图纸

技术编号:5484190 阅读:276 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了一种Java Card中应用补丁程序的方法及装置,以避免更新应用程序所造成的用户数据丢失,提高开发效率。该方法为:判断Java Card应用程序的补丁程序的状态是否为激活状态,若确定补丁程序的状态为激活状态,则获取所述补丁程序的唯一标识,并根据所述补丁程序的唯一标识获取相应的补丁程序并运行,若确定补丁程序的状态为未激活状态,则运行所述原应用程序。该方法能够有效地避免更新应用程序所造成的用户数据丢失,提高开发效率。本发明专利技术同时公开了一种Java Card中应用补丁程序的装置。

【技术实现步骤摘要】

本专利技术涉及智能卡领域,尤其涉及一种在Java Card中应用补丁程序的方法及装置。
技术介绍
智能卡的存储器体系主要是由读写存储器(RAM)、只读存储器(ROM)以及可擦写 编程存储器(EEPROM)组成。Java Card是可以运行Java程序代码的智能卡。保存在Java Card上EEPROM中的应用程序可以通过GlobalPlatform标准指令(简称GP指令)进行下 载、安装和删除的操作。现有技术中,如果在Java Card使用过程中发现原应用程序存在缺陷,可以通过删 除原应用程序,下载并安装新的应用程序来解决问题。但是,该方法会导致用户使用过程中 的数据丢失。同时,如果Java Card上的应用程序本身占用的空间较大,但是需要对其所进 行的修改较少,则整个应用程序需要在修改后重新下载,这就需要占用较长的时间,从而降 低了发卡效率。综上所述,需要寻求一种替换Java Card应用程序的方法,能够避免更新应用程序 所造成得用户数据丢失,并提高发卡效率。
技术实现思路
本专利技术提供一种在Java Card中应用补丁程序的方法及装置,以避免更新应用程 序所造成的用户数据丢失,并提高发卡效率。本专利技术实施例提供的具体技术方案如下一种在Java Card中应用补丁程序的方法,包括判断Java Card应用程序的补丁程序的状态是否为激活状态;若确定补丁程序的状态为激活状态,则获取所述补丁程序的唯一标识,并根据所 述补丁程序的唯一标识获取相应的补丁程序并运行;若确定补丁程序的状态为未激活状态,则运行所述原应用程序。一种在Java Card中应用补丁程序的装置,包括第一处理单元,用于判断Java Card应用程序的补丁程序的状态是否为激活状 态;第二处理单元,用于确定补丁程序的状态为激活状态时,获取所述补丁程序的唯 一标识,并根据所述补丁程序的唯一标识获取相应的补丁程序并运行;第三处理单元,用于确定补丁程序的状态为未激活状态时,运行所述原应用程序。基于上述技术方案,本专利技术实施例中,通过判断Java Card应用程序的补丁程序的 状态是否为激活状态,在确定补丁程序的状态为激活状态时,获取补丁程序的唯一标识,并 根据补丁程序的唯一标识获取相应的补丁程序并运行。从而无需更新Java Card原应用程 序,采用运行补丁程序的方式,实现对原应用程序的修复或补充,避免了更新原应用程序造成的用户数据丢失,并且提高了发卡效率。同时,通过设置补丁程序唯一标识,保证了安全 性。附图说明图1为本专利技术实施例中在Java Card中应用补丁程序的系统架构图2为本专利技术实施例Java Card上应用补丁程序的装置结构图3为本专利技术实施例中在Java Card中应用补丁程序的方法流程图。具体实施方式为了避免更新应用程序所造成的用户数据丢失,并提高开发效率,本专利技术实施例 提供了一种在Java Card中应用补丁程序的方法及装置,能够有效地避免更新应用程序所 造成的用户数据丢失,并提高发卡效率。该方法为判断Java Card应用程序的补丁程序的 状态是否为激活状态,若确定补丁程序的状态为激活状态,则获取补丁程序的唯一标识,并 根据补丁程序的唯一标识获取相应的补丁程序并运行,若确定补丁程序的状态为未激活状 态,则运行原应用程序。下面结合附图对本专利技术优选的实施方式进行详细说明。参阅附图1所示,本专利技术实施例中,在Java Card中应用补丁程序的系统主要包括 卡片接受设备10和Java Card设备11,其中,卡片接受设备10,用于向Java Card设备11下发相应的应用程序协议数据单元 (APDU)命令,以将补丁程序下载至Java card设备11,以及设置补丁程序的激活密钥和唯 一标识;Java Card设备11,用于判断Java Card应用程序的补丁程序的状态是否为激活 状态,若确定补丁程序的状态为激活状态,则获取该补丁程序的唯一标识,并根据补丁程序 的唯一标识获取相应的补丁程序并运行,若确定补丁程序的状态为未激活状态,则运行原应用程序。参阅附图2所示,本专利技术实施例中,Java Card设备11,即Java Card设备上应用 补丁程序的装置主要包括以下处理单元第一处理单元111,用于判断Java Card应用程序的补丁程序的状态是否为激活 状态;第二处理单元112,用于确定补丁程序的状态为激活状态时,获取补丁程序的唯一 标识,并根据上述补丁程序的唯一标识获取相应的补丁程序并运行;第三处理单元113,用于确定补丁程序的状态为未激活状态时,运行原应用程序。基于上述系统架构,参阅附图3所示,本专利技术实施例中,在Java Card中应用补丁 程序的详细方法流程如下步骤301 判断Java Card应用程序的补丁程序的状态是否为激活状态。其中,判断Java Card应用程序(Applet)的补丁程序的状态是否为激活状态之 前,设置补丁程序的激活密钥,并设置补丁程序的唯一标识。较佳地,在原应用程序的起始 部分设置补丁程序的激活密钥,并设置补丁程序的唯一标识。补丁程序的激活密钥可以是任意形式的密钥。例如,对称密钥和非对称密钥。本专利技术实施例中,设置补丁程序的唯一标识时,可以将包含指定长度字节的随机 数设置为上述补丁程序的唯一标识;或者,将Java Card芯片的唯一标识与任意随机数进 行运算,并将运算结果中指定长度字节设置为补丁程序的唯一标识。上述指定长度字节的 随机数是指随机数需要符合Java Card规范要求的长度,例如,5至16字节长度为Java Card规范要求的长度。补丁程序的唯一标识设置方法包括但不限于以上两种,实际应用中, 若存在其他设置方法,本专利技术也将其包含在内。例如,将Java Card芯片唯一标识与任意随机数进行异或运算后,截取其中的前 10个字节作为补丁程序的唯一标识。其中,在判断补丁程序的状态是否为激活状态时,首先判断与补丁程序的唯一标 识相匹配的补丁程序是否已下载至Java Card,若已下载至上述JavaCard,则采用补丁程序 的激活密钥进行认证,若认证通过,则确定补丁程序为激活状态,若认证未通过,则确定补 丁程序的状态为未激活状态;若未下载至上述Java Card,则确定补丁程序的状态为未激活 状态。卡片接受设备10通过下发相应的应用程序协议数据单元(ApplicationProtocol Data Unit,APDU)命令将补丁程序下载至Java Card,以及设置补丁程序的激活密钥和补丁 程序的唯一标识。步骤302 若确定补丁程序的状态为激活状态,则获取上述补丁程序的唯一标识, 并根据该补丁程序的唯一标识获取相应的补丁程序并运行。其中,根据补丁程序的唯一标识获取相应的补丁程序并运行,具体为根据上述补 丁程序的唯一标识,通过防火墙共享接口获取相应的补丁程序,并运行该补丁程序,本专利技术 实施例中,在补丁程序中通过Java Card规范提供的API实现防火墙共享接口,原应用程 序通过该防火墙共享接口调用补丁应用程序。本专利技术实施例中,原应用程序和补丁程序相对独立,可以分开进行维护,两者通过 Java Card运行环境提供的防火墙机制进行安全通信。步骤303 若确定补丁程序的状态为未激活状态,则运行原应用程序。本专利技术实施例中,本文档来自技高网...

【技术保护点】
一种在Java Card中应用补丁程序的方法,其特征在于,包括:判断Java Card应用程序的补丁程序的状态是否为激活状态;若确定补丁程序的状态为激活状态,则获取所述补丁程序的唯一标识,并根据所述补丁程序的唯一标识获取相应的补丁程序并运行;若确定补丁程序的状态为未激活状态,则运行所述原应用程序。

【技术特征摘要】

【专利技术属性】
技术研发人员:王飞
申请(专利权)人:北京握奇数据系统有限公司
类型:发明
国别省市:11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1