NFC SIM 卡是否有内置天线?如何在SIM卡上安装小程序?

Does NFC SIM Cards have an internal antenna? How to install applets on SIM cards?

我搜索了 NFC SIM 卡,发现 such explanations 到处都是:

For those who want to use near field communication technology but don’t currently have an NFC compatible smartphone, there are other ways to enable NFC on your phone without trading it in for an expensive new model. Both SIM and SD cards can be equipped with NFC chips, and some companies currently offer or are preparing to offer these options so more customers can start using NFC technology.

我现在的问题是:

  1. NFC SIM 卡是否也有内置天线,或者手机必须为 NFC SIM 本身提供 NFC 天线?
  2. 如果NFC SIM 没有内置天线并且phone 需要为SIM 提供天线,(这意味着手机必须兼容NFC,对吧?)为什么我们需要NFC SIM?我们不能简单地使用手机的 NFC 芯片而不是 SIM 的 NFC 芯片吗?
  3. 换句话说,外面有没有带NFC天线但没有NFC芯片的手机?或者有什么方法可以在旧手机上添加天线以便在其中使用 NFC SIM 卡?

无论如何,假设我想在我的 SIM 卡上安装以下小程序 ():

import sim.toolkit.ToolkitInterface;
import sim.toolkit.ToolkitRegistry;
...
import javacard.framework.ISOException;

public class STKTest extends Applet implements ToolkitInterface {

public static void install(byte[] bArray, short bOffset, byte bLength) {
    // GP-compliant JavaCard applet registration
    new STKTest().register(bArray, (short) (bOffset + 1), bArray[bOffset]);
}
//this method handles standard APDU commands
public void process(APDU apdu) {
    // Good practice: Return 9000 on SELECT
    if (selectingApplet()) {
        return;
    }

    apdu.setIncomingAndReceive();
    final byte[] buf = apdu.getBuffer();
    switch (buf[ISO7816.OFFSET_INS]) {
    case (byte) 0x00:
        //do something
        break;
    }
}
//this method handles the SIM Toolkit commands
public void processToolkit(byte event) throws ToolkitException {
    switch (event) {

    case ToolkitConstants.EVENT_TIMER_EXPIRATION:
        //do something
        break;
    }
}

}

问题是:我可以使用 GlobalPlatform 命令来安装我的小程序(就像普通智能卡一样)还是基于 this presentation in DefCon,我必须使用信封命令、SMS 数据包和 OTA 技术来安装它?

最后一个问题是contents of this article(SIM卡应用开发介绍)。在某些页面(例如第 16 和 17 页)中,有人提到现在有一​​些 GlobalPlatform 3 兼容的 SIM 卡可用。但据我所知,最新版本的智能卡 GlobalPlatform 规范是 GlobalPlatform 2.3(未在本文发表时发布).那么作者在文章中提到的GlobalPlatform 3规范是什么?

这是一个术语问题。

通常,"an NFC SIM card"表示SIM卡,可以直接与手机的NFC天线通信,作为非接触式接口使用。在这种情况下,过时的 V6 引脚(最初用作附加电源)用于 SIM 和天线之间的通信,这就是它通常被称为 SWP 通信的原因("Single Wire Protocol",参见 this Wikipedia article)。目前使用的大多数现代 SIM 卡都是这些 NFC SIM 卡。

然而,市场上还有 "special" SIM 卡甚至 microSD 卡(支持 Java 卡!),它们已经包含 NFC 天线并且可以直接与phone 中没有天线的智能卡 reader。这些 SIM 卡很少使用,因为它们非常昂贵,而且它们只是功能原型,而不是适合日常使用的产品。几个月前我测试了其中的几个,它们有很多问题,性能很差,非接触式场也不是很可靠。当然,这很快就会改变。


是的,您可以使用全球平台将您的小程序安装到SIM 卡上。市场上大公司(例如金雅拓)的 SIM 卡遵循全球平台标准。不需要OTA访问。