c# - 无法通过通用名称从 C# 中的存储中获取证书

标签 c# .net cryptography x509certificate2

在 .Net 4.0 中,我无法使用 X509Store 的 find 方法从自定义存储中获取证书。使用以下代码:

X509Store store = new X509Store(storeName, StoreLocation.CurrentUser);

store.Open(OpenFlags.ReadOnly);
X509Certificate2Collection col = store.Certificates.Find(X509FindType.FindBySubjectName, commonName,false);

最佳答案

已修复

抱歉,我犯了一个基本错误,我忘记了使私钥可导出,因此一旦我使 key 可导出,代码开始工作,加密 API 就不会将私钥暴露给 .net。

关于c# - 无法通过通用名称从 C# 中的存储中获取证书,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11966677/

相关文章:

c# - 如何使用套接字发送或返回 List<T>

c# - 有人可以帮助我了解选择查询的语法吗?

.net - 无法重新安装 Microsoft .NET Framework 4.5 或 4.51

c# - 如何返回包含文件的文件夹列表?

php - 散列散列是否使其更安全?

c# 为什么这个带有 task.run 的 for 循环打印超过 10 次?

c# - 无法从动态生成的程序集访问 CodeBase

c# - 'System.Security.Cryptography.CryptographicException' : keyset does not exist 类型异常

c++ - 使用MSVC在Windows上编译报错Botan库

c# - SignalR 2.1.0 预览版 2 最终更新到 2.1.0 rc1 最终在执行 services.AddSignalR() 时抛出 FileNotFoundException