【发布时间】:2017-08-10 19:12:21
【问题描述】:
我的问题是:当应用程序调用 CSP 进行加密操作时,例如签名,CSP 如何分别找到证书的私钥?
如果导入到 cert store 的证书表明私钥不在本地计算机(在 USB 令牌、外部存储,例如移动设备上),它可以找到吗?
【问题讨论】:
-
我会说这取决于使用的 CSP。如果证书由 USB 令牌的 CSP 管理,则它希望私钥出现在 USB 令牌上。
-
CSP 发现了什么机制并访问了用于加密操作的私钥?能详细点吗?
-
我猜这取决于 CSP 使用的密钥库的位置和类型,而不是 CSP 本身。例如,USB 令牌通常需要 PKCS#11 驱动程序。 CSP 通过驱动程序“使用”密钥,但没有“获取”它,因为无法从令牌中提取私钥。但是,软件密钥库可以提供密钥或允许在不暴露内容的情况下使用它(如 Windows 密钥库)这是您要求的吗?
-
@pedrofb 是的!选择证书以签名时,CSP如何知道要使用的私钥? span>
-
U盘确实提供了证书和私钥,两者都是相关的。当您知道应该使用什么证书时,您会自动知道要使用什么密钥。
标签: windows digital-signature private-key cryptoapi