JCRE 对上传带有混杂 AID 的小程序有何反应?

What is the reaction of JCRE to uploading an applet with promiscuous AID?

众所周知,小程序的AID 长度必须在5 到16 字节之间。如果 applet 的长度混杂(大于 16 字节或小于 5 字节),转换器将不起作用。但这是 Off-Card 验证器。

我想看看 JCRE 对 non-standard.cap 文件有什么反应。换句话说,我想使用十六进制编辑器工具更改 .cap 文件的内容以更改 AID。

如您所见,AID 保存在 .cap 文件 header 中。但是 header 在哪里?我不仅在 .cap 文件的内容中找不到 AID,而且,具有相同 AID 的单个 .java 文件的两个转换文件是不同的!

我的意思是如果你把一个.java文件转换成.cap文件两次,结果是不一样的!即使是平等的艾滋病!为什么?

在下面,您会看到具有相同 AID 的单个程序的两个 .cap 文件的内容:

我会提供两个答案,因为你问了两个问题。请尝试每个问题问一个问题。


.cap 文件不同,因为单个 .cap 文件只不过是一个 .zip 存档。您只需将文件扩展名更改为 .zip 即可查看内容。

A .zip 可以包含任何顺序的条目,它还应该包含日期等。所以即使存档中的文件内容完全相同,.zip 文件仍然可能与众不同。在 .zip 中应该有一个 Header.cap.

通常 .zip 未压缩,因此您可能仍会在其中看到 .cap 文件的内容。


是的,我希望运行时拒绝长度无效的 AID。请注意,用于 Applet selectioninstance AID 可能与 Applet AID 不同。实例 AID 可以在 INSTALL for INSTALL 命令期间给出。