使用APDU存储数据的最佳方式?

时间:2013-11-08 13:38:19

标签: javacard apdu multiple-records

我的offcard应用程序中有大量记录,我想将它们全部保存在javacard中, 问题是:

  • 将数据传输到Java Card的最佳方法是什么?
  • 我应该按记录传输所有数据(每个都有一个APDU)还是只在一个APDU中发送所有记录?

当然我知道APDU的限制大小,我正在使用扩展APDU,以便在一个超过255个字节的扩展APDU中发送所有数据。

1 个答案:

答案 0 :(得分:1)

如果您以一个扩展长度APDU或一个APDU安全方式发送数据,则无关紧要。然而,使用单独的APDU发送不相关的信息要好得多。这将使您的应用程序更加模块化。请注意,如果使用单独的APDU发送相关信息,则可能需要在这些APDU之间保持状态以进行验证(例如,您可能必须发送任何一个或全部,或者按特定顺序发送APDU)。

此外,ISO 7816-4仅定义2个字节状态字以发送回发送方,例如8A80表示命令数据中出现任何错误。这意味着无法从状态字中判断哪些记录包含故障信息。

最后,当然还有读者和软件存在处理扩展长度APDU的问题。因此,如果您的软件将被其他方使用,您可能希望坚持正常长度的APDU。