【发布时间】:2012-11-28 04:22:13
【问题描述】:
我需要使用 C# 创建一个自签名证书(用于本地加密 - 它不用于保护通信)。
我见过一些使用P/Invoke 和Crypt32.dll 的实现,但它们很复杂,而且很难更新参数 - 我还想尽可能避免使用 P/Invoke。
我不需要跨平台的东西 - 只在 Windows 上运行对我来说已经足够了。
理想情况下,结果将是一个 X509Certificate2 对象,我可以使用它插入 Windows 证书存储或导出到 PFX 文件。
【问题讨论】:
-
对于未来的读者,我已将我的 BouncyCastle 代码发布在:granadacoder.wordpress.com/2016/11/04/… 这将创建 2 个证书。一个是“受信任的根”证书,第二个是由(第一个)受信任的根证书“签名”的。
-
现在可以在不使用 COM 或外部依赖项的情况下执行此操作,请参阅 stackoverflow.com/questions/48196350。
-
在VS2019中:项目属性->签名->ClickOnce->创建测试证书?
-
@Andrew 问题是如何以编程方式创建它。有很多方法可以创建一次性自签名证书,例如使用 CertUtil 或 openssl,但问题的上下文是构建在用户计算机上自动生成这些证书的软件。
标签: c# .net certificate self-signed