无法将 PFX 导入 Microsoft 示例密钥存储提供程序(加密提供程序开发工具包)
Posted
技术标签:
【中文标题】无法将 PFX 导入 Microsoft 示例密钥存储提供程序(加密提供程序开发工具包)【英文标题】:Can't import PFX to Microsoft Sample Key Storage Provider (Cryptographic Provider Development Kit) 【发布时间】:2016-05-03 11:02:07 【问题描述】:我正在尝试执行“加密提供程序开发工具包”提供的示例;在这种情况下,一个专门称为 KeyStorageProviderSample 的示例。在此示例中,只需执行带有 -register 参数的 .exe,即可在系统中创建一个名为“Microsoft Sample Key Storage Provider”的新密钥存储提供程序:
symmclient -register
此时一切正常;如果我列出系统中的 KSP,我会得到完整的列表:
symmclient -enum
列出了刚刚创建的“Microsoft Sample Key Storage Provider”。但是,当我尝试将 PFX 证书导入其中时,它不起作用:
Certutil -CSP "Microsoft Sample Key Storage Provider" -user -importPFX "mycert.pfx"
我收到 0x80090009 错误。针对“Microsoft Software Key Storage Provider”执行的相同命令可以完美运行。此示例中创建的 KSP 似乎缺少“Microsoft Software Key Storage Provider”所具有的内容。
创建自己的 KSP 需要什么?我使用的是 Windows 7 专业版。
谢谢。
【问题讨论】:
【参考方案1】:我认为原因是因为示例 KSP 使用自定义结构 (SAMPLEKSP_KEY
) 来存储密钥,而不是 PFX 兼容的结构,例如 _BCRYPT_RSAKEY_BLOB
。
【讨论】:
以上是关于无法将 PFX 导入 Microsoft 示例密钥存储提供程序(加密提供程序开发工具包)的主要内容,如果未能解决你的问题,请参考以下文章