如何将Javacard cap文件转换为相应的字节流



我目前正在开发Javacard,并使用Ant脚本生成cap文件(文件名类似于demo.cap(,现在我想构造GP(GlobalPlatform(命令来在samrt卡上运行LOAD进程。但它被封装为cap格式。有没有什么方法可以将cap文件转换为相应的btye流,这样我就可以截断它并构造GP LOAD命令的数据字段,就像下图中的链接一样?加载文件结构

没有所谓的"十六进制格式"-至少不是你用这个词的方式。十六进制或十六进制格式将指示在屏幕上显示十六进制的方式,例如a1A10xA1(等等(

您看到的是使用十六进制的字节的人工表示。因此,如果您看到E2,那么这是一个值为E21110 0010的二进制字节,242的十进制字节(假设它表示正数(。

我强烈建议在深入研究Java Card之前,先了解二进制(位/字节(值及其表示/编码技术之间的区别。查阅一些教程,检查Stack Overflow上的标记编码(二进制到文本(和字符编码(文本到二进制(。

所有与这些特定命令和响应APDU的转换都将由GP库或应用程序执行,如GlobalPlatformPro(Java中的开源(或GP Shell(C中的开放源代码(。这些库只会拾取文件并在它们周围创建(通常是加密的(APDU
我与这两个项目都没有任何关系

发送时,如果启用了这种日志记录,可能会在屏幕上以十六进制显示传输的字节。APDU本身以二进制的形式传输,而不是文本。

正如@Maarten善意地说的那样——看看构建LOAD命令的GlobalPlatformPro及其相关项目CAPFile,构建加载数据流。

祝你的项目好运!

最新更新