gpt4 book ai didi

使用 NTAG 424 DNA TT 的身份验证提示

转载 作者:行者123 更新时间:2023-12-03 16:23:39 26 4
gpt4 key购买 nike

我需要在阅读器和 NFC 标签之间实现身份验证程序,但由于我在这方面的知识有限,我将不胜感激 一些帮助以了解一些概念。

提前原谅重写圣经,但我无法总结更多。

有许多标签系列(ICODE、MIFARE、NTAG...),但经过研究,我认为 NTAG 424 DNA 符合我的要求(我主要需要身份验证功能)。

它带有 AES 加密、CMAC 协议(protocol)和 3-pass-authentication 系统,这就是我开始需要帮助的时候。

AES -> 就我而言,这是一种通过排列和映射来加密纯文本的分组密码。是一个对称标准,它不使用主 key ,而是使用 session key ,它们是从主 key 派生的。 (Q01:我不知道这些 key 存储在标签中的什么位置。 key 必须存储在专门的硬件上,但除了 MIFARE SAM 标签之外,没有标签“规范”说明这一点。)

CMAC -> 这是对 CBC-MAC 的更改,以使动态大小的消息的身份验证安全。如果数据不是 secret 的,则可以在纯文本上使用 MAC 来验证它们,但要获得 secret 性和身份验证功能,必须追求“加密比 mac”。这里也使用了 session key ,但与加密步骤中使用的 key 不同。 (Q02:CMAC 的整体观点可能是一种实现验证和保密的协议(protocol),这是我的看法,可能是错误的。)

三通协议(protocol) -> ISO/IEC 9798-2 标准,标签和阅读器相互验证。它还可以使用 MAC 和 session key 来完成此任务。 (Q03:我认为这是验证标签和阅读器的所有系统的上层。“3 pass 协议(protocol)”在 MAC 中中继以发挥作用,如果还需要 secret 性功能,则可以使用 CMAC 代替单个 MAC . CMAC 需要 AES 才能正常工作,在每一步都应用 session key 。如果我发布了野蛮人的错误,请纠正我)

/*********/

P.S:我知道这是一个与编码相关的论坛,但我肯定可以在这里找到比我更了解密码学的人来回答这个问题。

P.S.S:我完全不知道标记端的主 key 和 session key 保存在哪里。是否需要将它们与主 NFC 电路一起包含在单独的硬件中?

(目标)

这是为了实现标签和阅读器之间的相互验证过程,使用 NTAG 424 DNA TagTamper 标签。 (目标是避免 3º 方副本,主要是身份验证而不是消息 secret 性)

缺乏密码学知识并试图了解如何在此 NTAG 上使用 AES、CMAC 和相互身份验证。

(额外信息)

NTAG 424 DNA TT: https://www.nxp.com/products/identification-security/rfid/nfc-hf/ntag/ntag-for-tags-labels/ntag-424-dna-424-dna-tagtamper-advanced-security-and-privacy-for-trusted-iot-applications:NTAG424DNA

ISO 9798-2: http://bcc.portal.gov.bd/sites/default/files/files/bcc.portal.gov.bd/page/adeaf3e5_cc55_4222_8767_f26bcaec3f70/ISO_IEC_9798-2.pdf

三遍认证: https://prezi.com/p/rk6rhd03jjo5/3-pass-mutual-authentication/

key 存储硬件 : https://www.microchip.com/design-centers/security-ics/cryptoauthentication

最佳答案

NTAG424 芯片不是特别容易使用,但它们提供了一些不错的功能,可用于不同的安全应用。然而需要注意的重要一点是,尽管它严重依赖加密,但从实现方面来看,这不是主要挑战,因为所有的 aes 加密、cmac 计算等都已经可以作为某种包或库使用在大多数编程语言中。 nxp 在其application note 中甚至给出了一些示例。 .例如,在 python 中,您将能够使用 AESfrom Crypto.Cipher import AESone of the examples of the application note 中所述.

我的建议是简单地追溯他们的personalization example从初始身份验证开始,然后逐步达到您想要实现的目标。也可以使用这些示例来测试加密和 apdu 命令的构建。大部分工作并不难,但有时 NXP 文档可能会有点困惑。

一个小提示,如果您正在使用 python,github 上有一些代码可用您可能可以重复使用。

关于使用 NTAG 424 DNA TT 的身份验证提示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55688973/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com