如何从 Windows 上的智能卡中删除过期的证书?
答案1
Alejandro Campos Magencio 在[这篇博文][1]中给出了很好的回答。
1)运行以下命令获取智能卡中存储的证书列表:
certutil -scinfo > 输出.txt
注意:默认情况下,Windows Vista/Server 2008 中应包含 Certutil 工具。例如,您也可以从 Windows Server 2003 Admin Pack 中获取它。Cerutil 可能会多次请求智能卡 PIN。每次按 Esc 键即可安全地忽略这些请求。最后,您将看到一个对话框,其中列出了卡中的证书(在我的特定情况下,我有 3 个证书,其中一个已经过期)。现在关闭该对话框并等待 certutil 完成运行。2) 查看 output.txt。例如,在我的例子中,第一个证书(“证书 0”)是已过期的证书(我可以看到字符串,如“智能卡上的链无效”、“CERT_TRUST_IS_NOT_TIME_VALID”和“证书已过期”)。复制其相关的“密钥容器”值(在我的例子中是“f6138188-3725-4c2b-8cf6-9c421d8bee69”)。 3)运行以下命令删除与您之前复制的密钥容器相关联的证书:
certutil -delkey -csp "Microsoft Base Smart Card Crypto Provider" "f6138188-3725-4c2b-8cf6-9c421d8bee69" 注意:您的智能卡 CSP 可能不同。请使用您的 CSP。