C# 使用行车记录仪智能卡进行外部身份验证
我用带C的C从行车记录仪卡上读出识别数据 我只需要读出唯一的卡ID,就可以用一张驾驶员卡来完成,我会发送正确的APDU来完成这个任务。我现在正试图读出一张公司卡的ID,做同样的事情,如我能找到的文档(ECE/TRANS/SC.1/2006/2和子附录)中所述。这不管用 如果我正确理解文档,问题是在选择DF和EF之后,必须重新进行身份验证(仅在公司卡上),以从EF读取唯一标识数据。现在,通过阅读文档,我可以理解我必须使用“管理安全环境”来设置/请求公钥?然后使用“内部身份验证”、“获取挑战”,运行“外部身份验证”,最后使用“读取二进制文件”读取数据。但只有在将逻辑设置为正确的EF之后。这件事我说得对吗 如果我是正确的,有人知道我可以在哪里/如何从卡中请求公钥吗?使用什么算法来解密使用公钥的挑战,并最终将什么发送回卡C# 使用行车记录仪智能卡进行外部身份验证,c#,smartcard,smartcard-reader,pcsc,C#,Smartcard,Smartcard Reader,Pcsc,我用带C的C从行车记录仪卡上读出识别数据 我只需要读出唯一的卡ID,就可以用一张驾驶员卡来完成,我会发送正确的APDU来完成这个任务。我现在正试图读出一张公司卡的ID,做同样的事情,如我能找到的文档(ECE/TRANS/SC.1/2006/2和子附录)中所述。这不管用 如果我正确理解文档,问题是在选择DF和EF之后,必须重新进行身份验证(仅在公司卡上),以从EF读取唯一标识数据。现在,通过阅读文档,我可以理解我必须使用“管理安全环境”来设置/请求公钥?然后使用“内部身份验证”、“获取挑战”,运行
如果我没有正确理解,有人能解释使用行车记录仪智能卡进行身份验证的步骤吗?如果使用白痴术语,我将不胜感激,因为我对这一行完全陌生,仍在努力学习。我多年来没有详细研究行车记录仪规格,但这可能有助于您开始:
- 挑战只是一个随机数,你必须自己加密(对称算法)或签名(非对称算法)。之前必须定义适当的算法,因为卡必须遵循相同的规则进行检查
- 外部身份验证更可能使用对称加密(没有人喜欢签署未知的东西,也可能是消息的哈希代码)
- 检索公钥有两种标准化模式:
- 作为对特殊生成非对称密钥对命令的响应(有一个命令,它只读取但不生成新密钥)
- 或者在一些文件中使用标准的读取命令(例如,一个证书,它的优点是您可以检查它的签名)来读取。规范中必须说明哪种情况适用
- ManageSecurityEnvironment只通知卡,在后续操作(如PSO)中使用哪个密钥,并给出其控件引用模板、id和使用限定符