在C#中创建自签名证书
在C#中创建自签名证书是本地加密和其他非通信目的的便捷解决方案。虽然通常使用涉及Crypt32.dll的P/Invoke方法,但这篇文章探讨了使用System.Security.Cryptography.X509Certificates命名空间(.NET 4.7.2及更高版本可用)的更简单方法。
避免使用P/Invoke
我们可以利用CertificateRequest类来创建证书,而不是依赖于P/Invoke。此方法简化了流程,减少了对复杂参数的需求,并确保了更直接的解决方案。
生成证书
要创建自签名证书,请按照以下步骤操作:
导出证书
生成证书后,可以将其导出为各种格式:
PFX (PKCS #12): 包含公钥和私钥。
File.WriteAllBytes("c:\\temp\\mycert.pfx", cert.Export(X509ContentType.Pfx, "P@55w0rd"));
CER (仅限公钥): 不包含私钥的Base64编码证书。
File.WriteAllText("c:\\temp\\mycert.cer", Convert.ToBase64String(cert.Export(X509ContentType.Cert), Base64FormattingOptions.InsertLineBreaks) "\r\n-----END CERTIFICATE-----");
免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。
Copyright© 2022 湘ICP备2022001581号-3