Windows内置安全的非对称密钥存储吗?

时间:2018-07-12 09:20:29

标签: windows winapi

最新版本的操作系统非常擅长保护敏感的内核数据,以防止泄漏给第三方恶意应用程序。我想微软可能已经实现了一种机制,可以在内核级别安全地存储加密密钥。

我听说过有关Microsoft CryptoAPI的信息,但是乍一看,它看起来像带有“密钥库”的C ++ / C#的Java CryptoAPI实现相比,在普通的旧文件中存储加密密钥没有太多优势(按术语安全性)。我在这里想念什么吗?


我打算使用这种机制的情况如下:

  1. 请Microsoft CryptoAPI生成一个新的公钥-私钥对,并 将其存储在OS的安全存储中。
  2. 转储公钥并将其发送到远程服务器以进行签名检查。
  3. 当需要签署一条消息时,只需调用Microsoft CryptoAPI即可为我完成并返回结果。

总结一下-在系统中,我绝对应该没有办法让用户(即使具有管理员权限)获取私钥。

Windows中是否有与我描述的功能相似的功能?

1 个答案:

答案 0 :(得分:2)

它们的CryptoAPI必须将密钥存储在文件系统上。它使用ACL来保护访问,但这些访问不能防御系统管理员。

但是CryptoAPI可以与智能卡等配合使用。即基于“硬件”的私钥,这实际上是它们的密钥最终不会位于文件系统中某个位置的唯一方式。