Convierta un certificado CERT / PEM en un certificado PFX


185

He visto un par de preguntas sobre cómo convertir un PFX a un archivo cert, pero necesito ir hacia otro lado.

Tengo dos archivos:

bob_cert.cert

bob_key.pem

Me gustaría convertirlos a un solo archivo .pfx. ¿Hay alguna herramienta que haga esto?


16
serverfault.com/a/9717/3202 es una gran explicación sobre los formatos de archivo cert, solo para su información
Rory

Respuestas:


350
openssl pkcs12 -inkey bob_key.pem -in bob_cert.cert -export -out bob_pfx.pfx

77
¿Cómo puedo lograr lo mismo mediante programación en C #?
pankajt

2
¿Podría señalarme en la dirección de estos ejemplos? Parece que no puedo encontrar nada.
Nick

10
La versión de Windows de OpenSSL está disponible en slproweb.com/products/Win32OpenSSL.html . Solo lo probé y funcionó correctamente para este propósito.
BrianFinkel

2
Gran lista de comandos comunes de OpenSSL en sslshopper.com/article-most-common-openssl-commands.html
Rory

44
Un par de adiciones: -name "friendly name"establece el nombre (que aparecería en la lista de certificados en Windows, por ejemplo) y -certfile cacert.pemse puede usar para agregar los certificados de CA y producir el .pfxarchivo con toda la cadena.
pvgoran

22

Aquí se explica cómo hacer esto en Windows sin herramientas de terceros:

  1. Importar certificado a la tienda de certificados. En el Explorador de Windows, seleccione "Instalar certificado" en el menú contextual. ingrese la descripción de la imagen aquí Siga el asistente y acepte las opciones predeterminadas "Usuario local" y "Automáticamente".

  2. Encuentra tu certificado en la tienda de certificados. En Windows 10, ejecute la MMC "Administrar certificados de usuario". En Windows 2013, la MMC se llama "Certificados". En Windows 10 de forma predeterminada, su certificado debe estar en el nodo "Personal" -> "Certificados".

  3. Certificado de exportación. En el menú contextual, seleccione el menú "Exportar ...": ingrese la descripción de la imagen aquí

    Seleccione "Sí, exportar la clave privada": ingrese la descripción de la imagen aquí

    Verá que la opción .PFX está habilitada en este caso: ingrese la descripción de la imagen aquí

    Especifique la contraseña para la clave privada.


11
En el paso 2, mi certificado no es "Personal" -> "Certificados". Aparece en "Otras personas" -> "Certificados", y al exportar, el "Intercambio de información personal (PFX)" aparece deshabilitado. ¿Sabes cómo habilitarlo?
Gabrielizalo

Lo arreglé con el convertidor de certificados portátil de DigiCert: digicert.com/util/…
Gabrielizalo

13
No puede importar un PEM.
Ross Presser

1
Primero debe cambiar el nombre de .pem a .cer para que Windows reconozca el archivo como un archivo de certificado / clave privada. Ambas extensiones de archivo pueden contener cert (s) y / o clave (s) en texto sin formato blindado ASCII o en formato binario codificado Base64 / DER, pero puede usar archivos cer con utilidades integradas de Windows.
Mastacheata

9
La pregunta de OP era cómo importarlo cuando la clave privada no está incluida en el archivo del certificado, pero tienes dos archivos: un CRT y un PEM (que contiene la clave privada). Esta respuesta no funciona en ese caso.
masi

16

Creé el archivo .pfx a partir de archivos .key y .pem.

Me gusta esto openssl pkcs12 -inkey rootCA.key -in rootCA.pem -export -out rootCA.pfx

Esa no es la respuesta directa, pero aún así puede ayudar a alguien más.


5

Si tiene un certificado autofirmado generado por makecert.exeuna máquina con Windows, obtendrá dos archivos: cert.pvky cert.cer. Estos se pueden convertir a un pfx usandopvk2pfx

pvk2pfxse encuentra en la misma ubicación que makecert(por ejemplo, C:\Program Files (x86)\Windows Kits\10\bin\x86o similar)

pvk2pfx -pvk cert.pvk -spc cert.cer -pfx cert.pfx
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.