我在过去的两个月里一直没有成功,我觉得是时候在这里问了。
我有智能卡,并从我的客户获得 CSP。 我有描述 APDU命令的文档,我可以(并且知道如何)运行。
我需要将小文件(数据)保存到卡片中,如姓名,地址,照片等。 以后再保存证书。
在我阅读的文档中,您必须执行外部身份验证,以便以后使用安全消息传递来访问卡上的文件。 我在相互认证算法的某个地方有一个错误(需要计算MAC,DES,TRIPPLE DES等,我已经试了好几个星期才能让它工作......) 除了需要相互认证的功能外,我知道如何在卡上做所有事情。
我查看了CSP提供的功能,但没有看到任何外部身份验证。我看到非APDU级外部auth的唯一地方是“Windows智能卡微型驱动器规范”,其中我看到的功能如:CardAuthenticateEx。 但我不知道如何称呼他们(他们在哪个dll)。 这些功能应该在CSP中吗?
当我拥有CSP时,使用APDU命令进入低级别是一种错误的方法。 我应该使用CryptoAPI还是CAPICOM?如果是这样的话,那么如果没有(或我找不到)写入文件的函数,我该如何进行外部验证和使用文件。 (所有这些功能都在“Windows智能卡微型驱动器规范”中。
答案 0 :(得分:1)
许多智能卡遵循全球平台规范,该规范(取决于卡上安装的小程序及其配置方式)可能需要在与卡通信之前进行安全握手。
如果您需要将文件写入卡,则不会使用CSP。 CSP通过将某些加密调用重新路由到卡的处理器来支持OS级加密交互。要写入卡上的文件,您将向执行以下功能的卡发送APDU:
我的公司为IE浏览器和Firefox浏览器制作插件,为此提供了帮助,它包括全球平台的握手功能,我们的网站上有一个“沙箱”表单,可让您测试脚本以进行卡片交互。