读取智能卡的 UID
Posted
技术标签:
【中文标题】读取智能卡的 UID【英文标题】:Reading the UID of a smart card 【发布时间】:2016-08-24 13:33:24 【问题描述】:我使用 HID Omnikey Worbench。使用此工具,我可以获得非接触式智能卡的 UID(唯一标识符)。但是我没有收到这样的联系人卡片 UID。
是否可以从联系人智能卡中读取 UID?
【问题讨论】:
【参考方案1】:接触式智能卡没有 UID(或任何防冲突标识符)。
接触式和非接触式智能卡使用不同的物理通信介质(电线与射频场),因此需要不同的(较低层)通信协议。使用接触式智能卡,读卡器仅通过有线连接连接到一张卡。使用非接触式卡,多张卡可以在一个读卡器的射频场范围内。因此,智能卡阅读器需要执行某种形式的防冲突和枚举,以发现其范围内的所有(或至少一个)非接触式智能卡。这正是 UID 的用武之地(至少在 ISO/IEC 14443 Type A 中)。 UID 用于在防冲突期间对每张卡进行唯一寻址。由于接触卡没有防冲突(反正只有一张卡连接到读卡器),因此不需要接触卡的 UID。
【讨论】:
正是我的假设。谢谢 只是另一个可能相关的问题:也许您知道 UID 和序列号之间的关系是什么?例如,它在 EMV 上的表现如何? @bafla UID 通常用作标签/卡片的序列号(尤其是 ISO/IEC 14443 Type A 卡片/标签和 ISO/IEC 15693 标签)。但是,并非所有 UID 都适合用作序列号。例如。每次 RF 激活都会随机分配带有 UID 的卡。此外,4 字节 UID 必须有冲突,因为具有 4 字节 UID 的卡比有效的 4 字节 UID 多。并非所有制造商都保证为每个标签/卡分配唯一值。最后,UID 可以轻松克隆。 @bafla EMV 不使用 UID 来识别卡。 EMV 使用帐号来识别卡(甚至是一组卡)背后的支付账户。使用公钥加密(从不使用协议版本)或共享密钥(旧协议)对卡进行身份验证。因此,一张卡使用一些秘密信息签署一条消息,以证明它是与特定帐号相关联的真实卡。以上是关于读取智能卡的 UID的主要内容,如果未能解决你的问题,请参考以下文章