J2ME 提供 JSR 177,它具有 API 以将 SIM 作为智能卡进行访问。我想对此进行更多探索,看看我能做些什么,但是,我找不到任何与此相关的文档。到目前为止,我发现的所有文档都非常通用,只提到了如何使用 APDU API 访问智能卡,而不是如何使用它在 SIM 上执行任何操作。
关于从哪里开始的任何想法?
大多数情况下,JSR 177 应该用于提取 SIM 上的证书,以便您可以以您的 MNO 喜欢的方式加密/解密/签署数据。
查找文档的困难在于很少有手机制造商在他们的手机中包含完整的 JSR177 实现。
反过来,如果您不是密码学协议专家,那么在 JSR177 规范本身有意义之前,可能需要阅读和理解大量与安全相关的外部规范。
TCK 源代码和补充 Symbian/Nokia 测试代码将是一个很好的查看位置,但不幸的是,这些都还没有开源。
更改 SIM PIN 码等常见命令基本上需要了解二进制协议本身。如果 JSR177 实现本身是正确的,只需将正确的字节序列附加到 APDU GCF url 即可执行。
如果您只查看过 Sun JavaME SDK,您可能应该查看最新的 Series60 SDK 中的 APDU MIDlet 示例,并在诺基亚的 Java 开发人员库中添加了文档。