安卓NFC手机自动仿真多个标签



所以我明白,在Android中,智能手机可以配置为仿真模式以模拟给定的NFC标签。我很好奇的是,是否有办法在NFC握手期间通过某种唯一ID来识别NFC读卡器。

例如,假设我每天使用一些与NFC兼容的标签......比如说一张燃油奖励卡、我的工作安全徽章和我的主要品牌信用卡。是否可以根据手机检测到的阅读器自动模拟正确的标签,以便当我点击燃油泵时,我的燃油特权标签被模拟,当我在工作中点击传感器时,我的徽章被模拟,当我在任何零售店点击我的信用卡时被模拟?

简短的回答:可能不是。 读者没有唯一的 ID。它们发出轮询命令,这些命令是标准化和固定的。

但是,非接触式智能卡系统通常与ISO 7816-4兼容。它们支持一张卡上的多个应用程序。读取器选择要与之交互的应用程序的应用程序 ID。因此,如果您的所有卡都是与ISO 7816-4兼容的ISO 14443-4卡,则(理论上)可以将它们组合成一张卡,例如在NFC手机的安全元件中。

另一个流行的非接触式系统是MIFARE Classic。NFC手机中的安全元件也很可能模拟MIFARE经典卡。这些卡不符合ISO 7816-4标准,但仍有办法在一张卡上组合多个应用程序(使用所谓的MIFARE应用程序目录)。因此,如果您的卡是符合ISO 7816-4标准的卡和MIFARE经典卡的集合,理论上可以将它们组合在安全元件中。但是,MIFARE卡的内存有限,并且使用密钥进行读写访问,因此您无法读取其内容。因此,即使理论上可以组合多个应用程序,但在实践中仍然可能是不可能的。

很可能,您的一张或多张卡不符合ISO 7816-4标准,也不是MIFARE Classic,但例如MIFARE Ultralight,DESFire或ICODE(仅举几例)。您可以使用Android应用程序(例如TagInfo)检查里面的芯片。