一种JavaCard中用于CAP文件比较的方法及装置的制造方法

文档序号:9765835阅读:489来源:国知局
一种Java Card中用于CAP文件比较的方法及装置的制造方法
【技术领域】
[0001]本发明涉及到一种Java Card中用于CAP文件比较的方法及装置。
【背景技术】
[0002]CAP文件是卡外Java虚拟机的输出文件,即Applet应用在卡外Java虚拟机上生成的目标文件。
[0003]—个Applet应用是智能卡上的一个应用,它是用Java编程语言写,可在JavaCard运行时环境(JCRE)中运行。
[0004]Java Card虚拟机(JCVM)是作为两个分立的部分实现的,包括Java Card字节码解释器以及Java Card转换器,Java Card虚拟机的卡上部分为Java Card字节码解释器。卡外部分为Java Card转换器,运行于PC或工作站。转换器生成的目标文件即CAP文件。卡上和卡外部分一起实现了虚拟机的全部功能。
[0005]CAP文件是一个包含许多组件的集合,以一个压缩包的方式存储,其中每个组件以按字节的形式存储于单个文件中,这样的优点是易于存取,但使用者不能够直接查看CAP文件中的内容。
[0006]同一个源文件,不同的Java Card转换器生成的CAP文件可能会有不同,需要对CAP文件进行比较。现有技术中,查看CAP文件内容只能够以字节的方式进行,效率低下,CAP文件的直接比较完全无法进行,因此需要有一种方便快捷的CAP文件比较的方法及装置,从而衡量和判断卡外Java虚拟机的优劣情况。

【发明内容】

[0010]本发明提供一种Java Card中用于CAP文件比较的方法,直观的查看CAP文件内容,支持不同卡外Java虚拟机生成的CAP文件进行比较和查看比较结果。
[0011]本发明实施例提供的具体技术方案如下:
[0012]一种Java Card中用于CAP文件比较的方法,包括:
解析CAP文件内容、创建CAP根节点对象实例和子节点对象实例、进行从根节点开始的所有节点比较。
[0013]比较不同的CAP文件内容,必先读取CAP文件,把包含CAP文件内容的字节进行读取,按照CAP文件结构进行解析:
读取CAP文件,解析CAP文件内容:
new CapFileParser().parser(fileName);
它表示对需要比较的文件按照CAP文件结构进行解析。
解析CAP文件内容的同时,进行各级子节点对象实例的创建,解析方法返回的是根节点,其中包括各级子节点:
Cap capI = new CapFileParser().parser(fileNamel);
Cap cap2 = new CapFileParser().parser(fileName2);
[0014]当CAP文件解析完成,父子层级关系的对象实例也创建完毕,就可以进行两个CAP文件的直接比较,比较的对象实例就是上述capl和cap2:
CapCompare.compare (capI, cap2);
从根节点开始,逐级对子节点进行--比较。
[0015]一种Java Card中用于CAP文件比较的装置,包括:
[0016]解析模块,用于根据CAP文件结构,对CAP文件进行解析以及建立和CAP文件结构对应的数据实体对象,并且形成父子关系层级结构;
[0017]查看模块,用于读取所述解析模块处理后的父子关系层级结构,即CAP文件具体内容,并发送给比较模块。
[0018]比较模块,用于比较接收到的CAP文件内容。
【附图说明】
:
图1是本发明的用于CAP文件比较的方法示意图图2是本发明的装置结构示意图
【具体实施方式】
[0023]为了解决查看CAP文件内容只能够以字节的方式进行,效率低下,CAP文件的直接比较完全无法进行的问题,本发明实例提供了一种Java Card中用于CAP文件比较的方法,能够直观的查看CAP文件内容,以及进行不同CAP文件之间的比较。具体的,该方法包括:
[0026]步骤101,读取CAP文件内容;
读取不同JAVA转换器生产的两个CAP文件,例如为Capl和Cap2,依据JAVA规范对所述读取的文件进行解压缩,形成二进制形式数据的文件。例如,可通过如下命令实现读取过程:
Cap capl = new CapFileParser().parser(fileNamel);
Cap cap2 = new CapFileParser().parser(fileName2);
[0027]步骤102,对读取的CAP文件进行解析;
依据JAVA卡规范分别对读取的两个CAP文件进行解析。CAP文件由一定数量的组件组成,每个组件是以步骤101中的二进制数据流形式保存。需要一一对不同的组件进行解析。具体为:每个组件为一个根节点,根据JAVA卡规范的要求选取一定长度的二进制数据为子节点,从而将一个根节点分成不同的子节点,在对每一级子节点选取一定长度的二进制形成次级子节点,依次类推,形成了根节点及各级子节点的结构,至此,一个组件的解析完毕,其他组件也依照此方法依次解析。
步骤103、读取解析后的文件进行比较。
首先比较根节点,然后比较根节点下的第一级子节点,再比第一级子节点下的子节点,逐级依次比较,最后完成所有节点的比较,即完成了 CAP文件内容的全部比较。并将两个文件中不同的地方突出显示。
本发明实例还提供一种Java Card中用于CAP文件比较的装置,包括:
[0035]读取模块201,用于读取CAP文件的内容,发送给解析模块202 ;
解析模块202,用于将接收的CAP文件进行解析,将解析后的文件发送给比较模块 203 ;
比较模块203,用于比较解析后的CAP文件,并突出显示不同的地方。
进一步的,读取模块201,用于读取不同JAVA转换器生产的两个CAP文件,进行解压缩,形成二进制形式数据的文件。
进一步的,解析模块202,用于依据JAVA卡规范分别对读取的两个CAP文件进行解析,依次对每个组件进行解析。
具体的,解析模块202,用于根据JAVA卡规范的要求选取一定长度的二进制数据为子节点,从而将一个根节点分成不同的子节点,在对每一级子节点选取一定长度的二进制形成次级子节点,依次类推,形成了根节点及各级子节点的结构。
比较模块203,用于比较根节点,然后比较根节点下的第一级子节点,再比第一级子节点下的子节点,逐级依次比较,最后完成所有节点的比较。
[0038]通过以上方法和装置,能够直观的查看CAP文件内容,以及进行CAP文件之间的比较。通过对相同的Applet应用在不同卡外Java虚拟机上生成的目标文件进行比较,把得到的比较结果作为对Java Card评价的重要指标,能够指导选择和使用Java Card的有关工作。
[0039]显然,本领域的技术人员可以对本发明进行各种改动和变形而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
【主权项】
1.一种JAVA Card中用于CAP文件比较的方法,其特征在于,该方法包括: 读取CAP文件内容; 对读取的CAP文件进行解析; 对解析后的文件进行比较。2.根据权利要求1所述的方法,其特征在于,所述读取CAP文件内容,包括: 读取不同JAVA转换器生产的两个CAP文件,依据JAVA规范对所述读取的文件进行解压缩,形成二进制形式数据的文件。3.根据权利要求1或2所述的方法,其特征在于,所述对读取的CAP文件进行解析,包括: 分别对读取的两个CAP文件进行解析,CAP文件由一定数量的组件组成,每个组件以二进制数据流形式保存,一一对不同的组件进行解析。4.根据权利要求3所述的方法,其特征在于,所述一一对不同的组件进行解析包括: 每个组件为一个根节点,选取一定长度的二进制数据为子节点,从而将一个根节点分成不同的子节点,在对每一级子节点选取一定长度的二进制形成次级子节点,依次类推,形成了根节点及各级子节点的结构。5.根据权利要求4所述的方法,其特征在于,所述对解析后的文件进行比较包括: 先比较根节点,然后比较根节点下的第一级子节点,再比第一级子节点下的子节点,逐级依次比较,最后完成所有节点的比较,并将两个文件中不同的地方突出显示。6.一种JAVA Card中用于CAP文件比较的装置,其特征在于,该装置包括: 读取模块,用于读取CAP文件的内容,发送给解析模块; 解析模块,用于将接收的CAP文件进行解析,将解析后的文件发送给比较模块; 比较模块,用于比较解析后的CAP文件,并突出显示不同的地方。7.根据权利要求6所述的装置,其特征在于, 读取模块进一步用于,读取不同JAVA转换器生产的两个CAP文件,进行解压缩,形成二进制形式数据的文件。8.根据权利要求6或7所述的装置,其特征在于, 解析模块,进一步用于依据JAVA卡规范分别对读取的两个CAP文件进行解析,依次对每个组件进行解析。9.根据权利要求8所述的装置,其特征在于, 解析模块,进一步用于根据JAVA卡规范的要求选取一定长度的二进制数据为子节点,从而将一个根节点分成不同的子节点,在对每一级子节点选取一定长度的二进制形成次级子节点,依次类推,形成了根节点及各级子节点的结构。10.根据权利要求9所述的装置,其特征在于, 比较模块,进一步用于比较根节点,然后比较根节点下的第一级子节点,再比第一级子节点下的子节点,逐级依次比较,最后完成所有节点的比较。
【专利摘要】本发明公开了一种JAVA?Card中用于CAP文件比较的方法,该方法包括:读取CAP文件内容;对读取的CAP文件进行解析;对解析后的文件进行比较。本发明还公开了一种JAVA?Card中用于CAP文件比较的装置,采用本方法和装置,可以方便的比较CAP文件,对JAVA卡转换器的评价更准确、快捷。
【IPC分类】G06F11/36, G06F9/45
【公开号】CN105528233
【申请号】CN201510404190
【发明人】黄钰
【申请人】北京中电华大电子设计有限责任公司
【公开日】2016年4月27日
【申请日】2015年7月10日
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1