2

我调查了 sim-card 文件结构,但我很意外地看到一个目录没有嵌套文件 ID 的列表。只是:

  • 作为当前目录的直接子级的 DF 数量
  • 作为当前目录的直接子级的 EF 数量
  • ...

因此,如果我不知道其中的某些文件 ID,我不知道如何从 sim-card 读取所有文件。例如,我想从当前目录 DFMExE(0x5F3C) 读取所有文件 ID,所以我需要增加计数器 - 从 0x4F00 到 0x4FFF。这可能需要很长时间,特别是如果我想从 sim-card 读取所有文件。

有没有更有效的方法?

4

1 回答 1

2

所以里面有两种文件:-

  1. 标准文件 - 这些文件列在 3GPP 或 ETSI 标准中,所有 DF 和 EF 都为移动设备所知,因为移动电话供应商也遵循相同的规范。例如显示运营商名称文件0x6F46使用,所以手机会在GSM DF下选择这个文件并播放名称,同样SIM供应商会在这个文件中写入运营商名称。

  2. 属性文件——小程序或本机应用程序使用这些文件来存储一些数据,因为这些是应用程序内部使用的,因此您永远不会知道这些。

试想一下,就像在 Windows 中一样,您知道所有程序文件都将放在 c:\Program 文件和 c:\Windows 下的系统文件中,因为它们是标准的。我还创建了一个应用程序,我正在使用 d:\myapp\dummy\test.dll 文件。因此,现在您要检查标准文件,您将转到 C:windows,对于正确的文件,您将手动扫描或询问我,位置在哪里。

好吧,是的,您必须扫描所有文件。您可以使用 SmartCardIO lib 编写一个小型 Java 程序,它会在几秒钟内完成扫描。

于 2013-10-28T08:27:10.437 回答