Windows 证书管理器以某种方式恢复私钥

Windows 证书管理器以某种方式恢复私钥

这听起来可能很奇怪,但让我解释一下这种情况:
我使用安装在 I get token 上的 PKI 私钥Windows Certificate Storage,所以我决定将它们加载到 token 中并从 windows 存储中删除。到目前为止一切顺利。

但现在,当我使用 token 密钥时,它重新出现Windows Certificate Storage(这是正常的,因为您也可以在此处看到来自智能卡的证书)。但我可以导出私钥!这绝对是错误的。

我尝试在不同的机器上使用令牌(私钥从未真正存储在存储中),但私钥无法导出。

你知道这是怎么发生的吗?以及如何真的从存储中删除私钥?或者他们为什么以某种方式重新存储?

答案1

我只是“哇” - 我不会称其为任何安全的方式 - 根据http://seclists.org/fulldisclosure/2006/Apr/164私钥不会被删除,并会保留在系统中,没有任何相关信息,我曾尝试使用附加链接中的应用程序,但它不起作用,但是我能够使用路径中的十六进制编辑器识别私钥C:\Users\[USERNAME]\AppData\Roaming\Microsoft\Crypto\RSA\[UID]并将其从系统中永久删除。我仍然有点震惊,这不是一个错误,而是一个功能。

如果您在 HD 上安装了证书(即使用 MS Enhaced CSP),那么,按照 Microsoft 的说法,您可以使用 IExplorer 将其删除,工具菜单,您点击互联网选项,然后单击“内容”选项卡,然后单击“删除”。这是一个众所周知的操作,描述于 http://www.microsoft.com/technet/prodtechnol/ie/reskit/6/part2/c06ie6rk.mspx?mfr=true

这样做实际上会删除证书,但私钥仍保留在硬盘中。您会发现很多情况下这都会成为问题。假设您去朋友家,安装了一个包含证书和私钥的 pkcs12 文件,安全级别为“中”(默认),然后您使用它,当您完成工作后,删除证书(但没有私钥)。然后您的朋友拿走您的证书(是一份公共文档)并安装它,让您的私钥为他工作。

cleancapi 程序会删除未被任何证书使用的私钥。源代码: http://dwnl.nisu.org/dwnl?fic=cleancapi_0_2_src.zip预编译版本:http://dwnl.nisu.org/dwnl?fic=cleancapi_0_2_bin.zip

相关内容