十年前,我们用徽章打开了大楼的前门。五年前,我们使用 RFID 卡支付公共交通费用。今天我们用同样的系统支付我们的面包,明天我们可能能够用类似的东西来验证我们自己。
基本上,NFC 标签只是一种物理支持,就像 DVD 一样。很容易想象如何保护它免受恶意更改或防止未经授权的第三方阅读(即理解)。
但是,要防止它按原样克隆(即使加密)对我来说似乎是不可能的。
是什么阻止我创建客户 NFC 信用卡的 ISO 映像,将其写在空白标签上,然后用它来购买我的 cigs?
十年前,我们用徽章打开了大楼的前门。五年前,我们使用 RFID 卡支付公共交通费用。今天我们用同样的系统支付我们的面包,明天我们可能能够用类似的东西来验证我们自己。
基本上,NFC 标签只是一种物理支持,就像 DVD 一样。很容易想象如何保护它免受恶意更改或防止未经授权的第三方阅读(即理解)。
但是,要防止它按原样克隆(即使加密)对我来说似乎是不可能的。
是什么阻止我创建客户 NFC 信用卡的 ISO 映像,将其写在空白标签上,然后用它来购买我的 cigs?
这取决于您使用什么类型的标签以及您想要的防克隆保护级别。
NFC 标签(由NFC 论坛定义)没有防止克隆的保护。此类标签旨在作为可自由读取数据(所谓的 NDEF 消息)的容器。任何人都可以从一个标签读取 NDEF 消息并将其复制到另一个标签。
许多 NFC 标签还包含由标签制造商预编程的唯一标识符,并且无法在普通标签上修改,因为这些内存段位于只读内存中。这样的唯一 ID 可用于唯一标识标签(即,将 ID 与某种形式的数据库进行匹配)。过去,许多访问控制系统都使用了这种方法(实际上仍然如此!)。但是,仍然可以从标签中提取所有数据。专门的硬件(例如 Proxmark 等)和现成的标签通常是可用的,攻击者可以在其中更改唯一标识符。所以这肯定不是完美的克隆保护。尽管如此,一些制造商仍然添加了新的克隆保护功能,这些功能依赖于公开可读(但应该是不可复制的)唯一标识符。恩智浦就是这样一家制造商,他们在新的 NTAG 标签上具有签名功能。(基本上,他们在标签的唯一 ID 上添加数字签名,但没有什么能阻止攻击者创建一个包含该静态签名副本的克隆。)
存在提供通信加密和基于共享密钥的相互认证(例如MIFARE DESFire)的非接触式智能卡/标签。使用这种方法,可以通过使用秘密密码保护标签上的某些数据来防止克隆。但是,如果攻击者能够找到该秘密密码,则没有任何东西可以阻止攻击者创建标签的克隆。许多现代访问控制系统和闭环支付系统都使用这种方法。
非接触式标签/智能卡包含非对称密钥(无法使用可用通信接口从卡中提取)并提供命令以使用该密钥签署加密挑战。许多这样的智能卡都是基于 Java Card 技术构建的,因此它们包含一个执行某些自定义应用软件(用 Java 编写)的微控制器。大多数现代基于 EMV 的信用卡都使用这种机制来防止克隆。