我正在使用javacard 3.0.4开发套件来构建cap文件。使用' javac -g -classpath%JC_HOME%\ lib \ api.jar;%JC_HOME%\ lib \ installer.jar PATH_TO_THE_JAVA_FILES_OF_THE_PROJECT '命令生成类文件。
我正在使用转换器通过提供配置文件将类文件转换为CAP文件。Config文件内容:
-out EXP JCA CAP
-classdir PATH_TO_CLASS_FILES
-exportpath PATH_TO_EXPORT_API_FILES
-applet 0xa0:0x00:0x00:0x00:0x62:0x12:0x34 MyWallet.Wallet
MyWallet 0xa0:0x00:0x00:0x00:0x62:0x12:0x34 1.0
上限成功生成。但是,当我看到cap(使用capdump.bat)的ascii格式时,我看到它包含所有applet类文件的信息,这是一个安全问题。
当我使用eclipse(安装了JCOP插件)生成Cap文件时,CAP文件不包含任何类文件信息。
因此,当在命令行上使用CONVERTER.bat生成时,请有人帮助我摆脱CAP文件中的类文件信息。
反编译总会发生,最终Java最终会使用Java字节代码的子集来瞄准JVM。因此,我不会在诸如隐藏类/方法名称之类的措施上过分信任。
但是,如果您不想生成此类信息,则只需删除EXP
选项(链接到您的applet所需的JCA
选项)和根据Oracle文档所述的选项即可。
... CAP文件内容的文本表示。要将Java Card applet屏蔽为智能卡,您需要将applet类及其包中的所有类转换为JCA文件。然后,为要包含在掩码中的任何其他软件包指定JCA文件和JCA文件,作为掩码生成器的输入。
因此,仅在需要ROM屏蔽时才需要使用此文件。如果您只想自己上传,则不需要JCA文件。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句