NFC 标签如何防止复制?

信息安全 验证 NFC
2021-08-26 18:17:07

十年前,我们用徽章打开了大楼的前门。五年前,我们使用 RFID 卡支付公共交通费用。今天我们用同样的系统支付我们的面包,明天我们可能能够用类似的东西来验证我们自己。

基本上,NFC 标签只是一种物理支持,就像 DVD 一样。很容易想象如何保护它免受恶意更改或防止未经授权的第三方阅读(即理解)。

但是,要防止它按原样克隆(即使加密)对我来说似乎是不可能的。

是什么阻止我创建客户 NFC 信用卡的 ISO 映像,将其写在空白标签上,然后用它来购买我的 cigs?

1个回答

这取决于您使用什么类型的标签以及您想要的防克隆保护级别。

  1. NFC 标签(由NFC 论坛定义)没有防止克隆的保护。此类标签旨在作为可自由读取数据(所谓的 NDEF 消息)的容器。任何人都可以从一个标签读取 NDEF 消息并将其复制到另一个标签。

  2. 许多 NFC 标签还包含由标签制造商预编程的唯一标识符,并且无法在普通标签上修改,因为这些内存段位于只读内存中。这样的唯一 ID 可用于唯一标识标签(即,将 ID 与某种形式的数据库进行匹配)。过去,许多访问控制系统都使用了这种方法(实际上仍然如此!)。但是,仍然可以从标签中提取所有数据。专门的硬件(例如 Proxmark 等)和现成的标签通常是可用的,攻击者可以在其中更改唯一标识符。所以这肯定不是完美的克隆保护。尽管如此,一些制造商仍然添加了新的克隆保护功能,这些功能依赖于公开可读(但应该是不可复制的)唯一标识符。恩智浦就是这样一家制造商,他们在新的 NTAG 标签上具有签名功能。(基本上,他们在标签的唯一 ID 上添加数字签名,但没有什么能阻止攻击者创建一个包含该静态签名副本的克隆。)

  3. 存在提供通信加密和基于共享密钥的相互认证(例如MIFARE DESFire)的非接触式智能卡/标签。使用这种方法,可以通过使用秘密密码保护标签上的某些数据来防止克隆。但是,如果攻击者能够找到该秘密密码,则没有任何东西可以阻止攻击者创建标签的克隆。许多现代访问控制系统和闭环支付系统都使用这种方法。

  4. 非接触式标签/智能卡包含非对称密钥(无法使用可用通信接口从卡中提取)并提供命令以使用该密钥签署加密挑战。许多这样的智能卡都是基于 Java Card 技术构建的,因此它们包含一个执行某些自定义应用软件(用 Java 编写)的微控制器。大多数现代基于 EMV 的信用卡都使用这种机制来防止克隆。