android nfc 读取驾驶执照 BAC 与 BAP

问题描述 投票:0回答:2

使用 Android 设备进行 nfc 读取我的国家身份证和驾驶执照(提示:两者都有 3 行类型为 TD1 的机读区,并且驾驶员卡在芯片附近有一个数字 8 位数字+'E',但我不知道)不知道有什么用!?)

  • 对于身份证部分,我使用了jmrtd库(BAC协议,并且我成功读取了所有我想要的数据组{1,2,11,12})

  • 对于驾驶执照,在阅读了一些标准后,我应该做BAP而不是BAC所以我实现了一个与PassportService相同的DLicenseService类,但有一些细微的变化:

    • 将 EF_COM 更改为 001F,将 AID 更改为 A0000002480200(女巫在第一次尝试中工作)...
    • 我正在使用自定义密钥派生算法将 BAC 作为 BAP,三元组(docNumber、dateOfBirth、dateOfExpiry)不起作用...

我的问题是:

  • 是否有任何防止错误密钥派生的保护措施多次尝试(假设BAP == BAC),因为水肺服务现在失败了!!...请不要告诉我有并且我的卡被阻止了.. .
  • BAP 和 BAC 等效吗?我应该尝试其他协议吗?
  • 您知道驾驶执照最常用的密钥种子派生算法吗(例如最后 6 个文档数字的 SHA1...)
  • 是否有像 jmrtd 那样处理旅行证件的驾照库?
android nfc
2个回答
3
投票
  • 是的,BAC 和 BAP 是等效的
  • 三胞胎正在申请驾驶执照
  • 我在 jmrtd 代码之上实现了所有逻辑,每个想法都运行良好,基本上我实现了:
    • DLicenseService 类
    • 我感兴趣的 COMFile 和所有 DGxFile 都考虑了 ISO/IEC FCD 18013-2 标准中的正确 SFI 和标签值。

0
投票

您能在 DG4 中找到数据吗?

© www.soinside.com 2019 - 2024. All rights reserved.