【问题标题】:jcop applet upload errorjcop小程序上传错误
【发布时间】:2013-07-01 08:20:16
【问题描述】:

我是 Java 卡开发的新手。我使用jcop 工具作为开发工具包。当我在 Eclipse 中运行简单的小程序时,它会出现此错误。在运行配置中,我选择了 Java 卡模拟模式。在模拟模式下成功安装后,我想在 java 卡中安装应用程序。

cm>  upload -b 250 "C:\Projects\Javacard\MyTestApp\bin\hms\javacatd\Myapp\javacard\Myapp.cap"
cm>  install -i 6d796170702e617070  -q C9#() 6d797061636b616765 6d796170702e617070
jcshell: Error code: 6985 (Conditions of use not satisfied)
jcshell: Wrong response APDU: 6985
Unexpected error; aborting execution

我的小程序 id 是 myapp.app,包是 mypackage

请帮我找到解决办法。

【问题讨论】:

    标签: eclipse upload applet installation javacard


    【解决方案1】:

    你使用的Java-Card是JCOP工程卡吗?

    错误信息“不满足使用条件”通常表示上传过程中缺少一个必需的步骤,例如身份验证。

    确保以下步骤之前已成功执行:

    1. 选择卡管理器
    2. 验证使用卡管理器(可能取决于使用的卡)
    3. 在安装新的小程序之前删除所有小程序实例

    【讨论】:

    • 谢谢罗伯特,是的,我使用了 jcop 工程卡。现在我可以使用 jcop shell 发送 apdu 命令。它可以工作。现在我想将此小程序(.cap 文件)安装到我的卡中。当我运行时将模拟模式更改为阅读器模式后,Eclipse 中的小程序会出现此错误。upload -b 250 "C:\Projects\Javacard\MytestThree\bin\hms\javacard\testthree\javacard\testthree.cap"
    • @Need 你似乎混淆了不同的错误条件。一个与另一个完全不同。这并没有使回答这个问题变得更容易......
    【解决方案2】:

    通常对我有用的是不要尝试通过 jcshell 手动执行此操作,而是通过创建运行配置来上传小程序:

    • 右键单击您的 Java Card 小程序项目
    • 选择运行方式 -> 运行配置...
    • 滚动到 Java Card Application,右键单击 -> 新建
    • 在目标选项卡中选择您的读卡器
    • 在“包上传”选项卡中设置包、小程序、实例 AID

    其他选项卡的默认设置对我来说没问题(向卡管理器进行身份验证,删除以前的实例和包等)。

    保存配置,然后运行。

    【讨论】:

    • 感谢 martijno,无论如何,这对您的响应很有帮助。当我更改实例 AID 并尝试运行您在此图像中显示的内容时。但是当我运行这个时,它会给出另一个错误。上传 -b 250 "Cap file path" 响应 9000 然后自动发送另一个位数(我不知道为什么)然后它给出 6A 80 j。状态:错误数据 jcshell:错误代码:6a80(错误数据) jcshell:错误响应 APDU:6A80 意外错误;中止执行请告诉我如何解决这个问题。我想知道的另一件事是他们上传应用程序需要任何权限。
    • 是的,您需要向卡管理器进行身份验证。但我认为你已经在这样做了。这些“位”可以安装吗?如果是这种情况,请向我们展示您的小程序的安装方法和构造函数。
    • public static void install(byte[] bArray, short bOffset, byte bLength) { new MyTestApp().register(bArray, (short) (bOffset + 1), bArray[bOffset]); }这是安装方法..
    • 配置“删除以前的实例”是什么意思?我正在浏览其他选项卡,但似乎找不到它。不过,我想禁用它,因为在首次将小程序上传到新卡时,它似乎会导致问题。
    【解决方案3】:

    通常,如果你在java卡模拟器上安装applet成功,但是当安装在卡上失败时,首先你需要确定模拟器和卡所使用的java卡版本是一样的吗?即:该卡支持java卡的版本必须与开发包的版本一致。

    其次,需要检查卡是否支持小程序中的功能。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-09-28
      • 1970-01-01
      • 2023-01-26
      • 2016-10-10
      • 1970-01-01
      相关资源
      最近更新 更多