我正在开展一个项目,移动应用程序必须通过NCF与ePassport进行通信。我们必须提取有关用户的基本数据,如姓名,DOB,照片等。阅读相似的帖子后,阅读icao.int上的规范和图书馆代码pyPassport,我和#39; m仍然不确定应该将哪个APDU命令发送到ePassport。怎么开始?
根据我所阅读的内容,它看起来应该是get challenge
00 84 00 00 08
{某处B4
而不是84
),但不幸的是我总是得到63 00
回复(没有给出任何信息)。
我知道在获取数据之前,我需要做BAC。我在上面的规范中看到了示例,我想我可以编写BAC代码,但是如何实现呢?有没有人知道如何开始的流程/步骤以及需要进行哪些认证(被动/主动)?感谢。
答案 0 :(得分:1)
我不确定你为什么得到6300响应,但我认为这是因为尚未选择epassport应用程序。我可能错了。
BAC是GET CHALLENGE(00 84 00 00 08
)和EXTERNAL AUTHENTICATE命令的组合。您只需要BAC身份验证即可阅读基本护照持有人信息。
以下是您需要发送以从护照中读取数据的命令序列:
如果需要,我可以提供更多详细信息。但与此同时,您也可以参考 ICAO Doc 9303,机读旅行证件第3部分第2卷 了解BAC规范。