"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > ¿Cómo puedo crear fácilmente certificados autofirmados en C# usando .NET 4.7.2 y superior?

¿Cómo puedo crear fácilmente certificados autofirmados en C# usando .NET 4.7.2 y superior?

Publicado el 2025-03-05
Navegar:946

How Can I Easily Create Self-Signed Certificates in C# Using .NET 4.7.2 and Above?

Crear un certificado autofirmado en c#

]]

Crear un certificado autofirmado en C# es una solución conveniente para el cifrado local y otros fines de no comunicación. Si bien los métodos P/Invoke que involucran crypt32.Dll a menudo se usan, este artículo explora formas más fáciles de usar el sistema System.Security.Cryptography.x509Certificates (disponible en .NET 4.7.2 y posterior).

Evite usar p/invoke

]

Podemos usar la clase CertCeTerequest para crear certificados en lugar de confiar en P/Invoke. Este enfoque simplifica el proceso, reduce la necesidad de parámetros complejos y garantiza una solución más directa.

Generar certificado

Para crear un certificado autofirmado, siga estos pasos:

  1. use ecdsa.create () para generar un par de claves asimétricas.
  2. Use el objeto CertificeRequest para inicializar la solicitud con el nombre común requerido (CN), el par de claves y el algoritmo de hashing.
  3. CreaTesElfSigned para generar un certificado con un período de validez especificado.

exportar certificado

]

Después de generar un certificado, se puede exportar a varios formatos:

  • pfx (PKCS #12): contiene claves públicas y privadas.

      File.WriteAllBytes("c:\\temp\\mycert.pfx", cert.Export(X509ContentType.Pfx, "P@55w0rd"));
  • cer (solo clave pública): Base64 Certificado codificado que no contiene la clave privada.

      File.WriteAllText("c:\\temp\\mycert.cer", Convert.ToBase64String(cert.Export(X509ContentType.Cert), Base64FormattingOptions.InsertLineBreaks)   "\r\n-----END CERTIFICATE-----");
Último tutorial Más>

Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

Copyright© 2022 湘ICP备2022001581号-3