gpt4 book ai didi

c# - 我如何在 desfire ev1 中进行 native 身份验证

转载 作者:行者123 更新时间:2023-11-30 22:21:29 24 4
gpt4 key购买 nike

我想在本地模式下使用 desfire 卡进行身份验证。这是我目前的步骤:

  • 我选择主应用程序 (AID = 0×00 0×00 0×00)
  • 我收到来自卡片的响应(一个“挑战”,randB)
  • 然后,在第二步中,我生成一个响应 (randA);我将 8 字节随机数 A 与解密和旋转的 8 字节随机数 B 连接
  • 我对其进行加密,然后将其发送回卡中。

我收到一个 91 ae回答,我不知道为什么。这是消息的顺序:

  • 到卡:90 0A 00 00 01 00 00
  • 来自卡片 5B 57 69 C7 CE 4B 16 7B 91 AF
  • 加密的 RandB = 5B 57 69 C7 CE 4B 16 7B
  • 解密 RandB' = 17 8D 23 57 10 C9 32 D5
  • 一个字节 lshitf RandB' = 8D 23 57 10 C9 32 D5 17
  • 生成的兰特 A = 43 9D 17 8E 9A 5F BA 70
  • 连接 Rand A 和 Rand B'' = 43 9D 17 8E 9A 5F BA 70 8D 23 57 10 C9 32 D5 17
  • 加密的 Rand A + Rand B'' = 9E ED DC 4F BC E7 BE BD 09 02 CF 99 F7 40 34 7B
  • 到卡:90 AF 00 00 10 43 9D 17 8E 9A 5F BA 70 8D 23 57 10 C9 32 D5 17 00
  • 来自卡片:91 AE

如有不对之处请指正?我可能遇到哪些问题?

最佳答案

我知道回复有点晚了,但还是回答了——我自己昨天才能够正确地进行身份验证。91 ae 代表身份验证错误。这意味着您在连接和加密后发送给 RandA 的 RandB' 与 PICC (Ev1) 预期的不同。问题可能出在加密上。你能用 EV1 数据表中的例子交叉检查你的加密逻辑吗?

希望对您有所帮助(如果您无法自行解决问题)

关于c# - 我如何在 desfire ev1 中进行 native 身份验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14319321/

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