Windows 证书和密钥文件出现“无法找到关联私钥”错误和“certutil -repairstore”失败?

Windows 证书和密钥文件出现“无法找到关联私钥”错误和“certutil -repairstore”失败?

旧机器无法启动 Windows 来执行证书导出。证书文件和密钥文件已从文件系统中检索并复制。证书用于 IE SSL 访问银行。

C:\Users{用户}\AppData\Roaming\Microsoft\SystemCertificates\My\Certificates

C:\Users{用户}\AppData\Roaming\Microsoft\SystemCertificates\My\Keys

证书显示并声称在属性下拥有私钥,但导出显示找不到密钥,并且当使用该证书访问银行网站时,SSL 握手失败。

不确定所以也把钥匙放在这里:

C:\Users{用户}\AppData\Roaming\Microsoft\Crypto\RSA\S-1-5-21-…

使用 certutil 已识别密钥容器和确切文件。但是,repairstore 命令失败。

另外,希望找到密钥存储的位置,也使用了 FindPrivateKey 但没有成功:

“PrivateKey 因以下原因失败:无法获取私钥文件名”

旧系统的注册表也已备份。尝试在 Windows 修复模式命令提示符中导出证书也失败(未找到 certutil)。

先感谢您。

答案1

存储在漫游配置文件中的私钥使用定期更新的“主密钥”进行加密。主密钥本身使用用户的密码进行加密。这在以下部分中进行了描述:那里。这个加密层可能是您观察到的使用失败的原因:Windows 可以看到该文件,但是,在尝试访问它时,无法理解其内容,因为它使用的主密钥与实际用于加密密钥的密钥不匹配。

现在这种情况已经发生了变化,所以也许你的情况是可以挽救的,这取决于所涉及的确切 Windows 版本。请参阅这一页对于初学者。

假设没有 Microsoft 认可的恢复方法,那么,除了尝试对记录不全的加密系统进行逆向工程外,您的合理行动方案包括以下任一项:

  • 使用您选择的 VM 解决方案创建虚拟机(例如虚拟盒),从现在死机的机器上复制完整的磁盘,并在虚拟机中启动它。这是假设机器硬件坏了,但磁盘仍然正常。Windows 可能会抱怨驱动程序,需要在恢复模式或类似模式下启动。机器启动后,将证书和私钥导出为 PFX (PKCS#12) 文件,然后将其导入其他地方。如果私钥未标记为“可导出”,则需要一点编程知识,尽管这并不像乍一看那么难。

  • 只需申请新的 SSL 证书即可。此证书用于验证;私钥不可用时不会丢失任何数据。银行可能会颁发另一份证书,其功能与之前的证书一样。如果他们为此收费,那么请考虑换一家银行。

相关内容