en English
X

Select Language

Powered by Google TranslateTranslate

We hope you will find the Google translation service helpful, but we don’t promise that Google’s translation will be accurate or complete. You should not rely on Google’s translation. English is the official language of our site.

en English
X

Select Language

Powered by Google TranslateTranslate

We hope you will find the Google translation service helpful, but we don’t promise that Google’s translation will be accurate or complete. You should not rely on Google’s translation. English is the official language of our site.

Exportar certificados y clave privada de un archivo PKCS # 12 con OpenSSL

Nota: Este artículo no se aplica a los certificados de firma de documentos y de firma de códigos de SSL.com. Las claves privadas de este tipo de certificados no se pueden exportar y no se pueden generar como archivos .pfx. Los certificados de firma de código y de firma de documentos de SSL.com y sus claves privadas solo se pueden generar y almacenar en el Entorno de firma en la nube eSigner, Yubikey dispositivo o un dispositivo compatible HSM en la nube.

Este tutorial lo guiará a través de la extracción de información de un archivo PKCS # 12 con OpenSSL. PKCS # 12 (también conocido como PKCS12 o PFX) es un formato binario para almacenar una cadena de certificados y una clave privada en un único archivo cifrado. Los archivos PKCS # 12 se usan comúnmente para importar y exportar certificados y claves privadas en computadoras Windows y macOS, y generalmente tienen las extensiones de nombre de archivo .p12 or .pfx.

Para obtener instrucciones más útiles y las últimas noticias sobre seguridad cibernética, suscríbase al boletín de SSL.com aquí:

¿Qué es OpenSSL?
OpenSSL es un juego de herramientas de línea de comandos de código abierto muy útil para trabajar con X.509 certificados, solicitudes de firma de certificados (CSRs) y claves criptográficas. Si está utilizando una variante de UNIX como Linux o macOS, es probable que OpenSSL ya esté instalado en su computadora. Si desea utilizar OpenSSL en Windows, puede habilitar Subsistema Linux de Windows 10 o instalar Cygwin. También puedes fácilmente Para crear un archivo PKCS # 12 con openSSL.

SSL.com proporciona una amplia variedad de SSL /TLS certificados de servidor para sitios web HTTPS.

COMPARAR SSL /TLS CERTIFICADOS

Vídeo

https://www.youtube.com/watch?v=S_imVMFOdhU

En todos los ejemplos que se muestran a continuación, sustituya los nombres de los archivos con los que realmente está trabajando INFILE.p12, OUTFILE.crt y OUTFILE.key.

Ver información PKCS # 12 en pantalla

Para volcar toda la información en un archivo PKCS # 12 a la pantalla en Formato PEM, use este comando:

openssl pkcs12 -info -in INFILE.p12 -nodos

A continuación, se le pedirá la contraseña del archivo PKCS # 12:

Ingrese la contraseña de importación:

Escriba la contraseña ingresada al crear el archivo PKCS # 12 y presione enter. OpenSSL mostrará en la pantalla todos los certificados y claves privadas del archivo:

Atributos de la bolsa localKeyID: AC 3E 77 9A 99 62 84 3D 77 CB 44 0D F9 78 57 7C 08 28 05 97 subject = / CN = Aaron Russell/emailAddress=*********@gmail.com issuer = / C = US / ST = Texas / L = Houston / O = SSL Corp / CN = SSL.com certificado de cliente Intermedio CA RSA R1 ----- BEGIN CERTIFICATE ----- MIIF1DCCA7ygAwIBAgIQcOrAJCMayJsZBKJsyz / aQDANBgkqhkiG9w0BAQsFADB + MQswCQYDVQQGEwJVUzEOMAwGA1UECAwFVGV4YXMxEDAOBgNVBAcMB0hvdXN0b24x ETAPBgNVBAoMCFNTTCBDb3JwMTowOAYDVQQDDDFTU0wuY29tIENsaWVudCBDZXJ0 ... bwK6ABAZUq6QcvhD0LYsXya + ncDCR6wxb9E0DWd4ATQMzxGTu / yE3kT + 9Ef6IY + n armh3HZUfan2Hb64YD0tjLMca / PC + sKAZu28gB / 3HQRHIFugvh6RO3bIoorl0jUg 1Ml2R83 ----Sf0-Ufc6

Cifrar clave privada

Si desea cifrar la clave privada y protegerla con una contraseña antes de la salida, simplemente omita el -nodes bandera del comando:

openssl pkcs12 -info -en INFILE.p12

En este caso, se le pedirá que ingrese y verifique una nueva contraseña después de que OpenSSL emita los certificados, y la clave privada se cifrará (tenga en cuenta que el texto de la clave comienza con -----BEGIN ENCRYPTED PRIVATE KEY-----):

Introduzca PEM frase de: Verificación - Introduzca PEM frase de: ----- BEGIN clave cifrada PRIVADO ----- MIIFDjBABgkqhkiG9w0BBQ0wMzAbBgkqhkiG9w0BBQwwDgQIGwhJIMXRiLQCAggA MBQGCCqGSIb3DQMHBAiXdeymTYuedgSCBMjwGg78PsqiNJLfpDFbMxL98u3tK9Cs ... SGVCCBj5vBpSbBXAGbOv74h4satKmAMgGc8SgU06geS9gFgt / wLwehMJ / H4BSmex 4S / 2tYzZrDBJkfH9JpggubYRTgwfAGY2BkX03dK2sqfu + QVTVTKMj2VI0sKcFfLZ BDW = ----- END ENCRYPTED LLAVE PRIVADA-----

Extraer solo certificados o clave privada

Si solo desea generar la clave privada, agregue -nocerts al comando:

openssl pkcs12 -info -in INFILE.p12 -nodos -nocerts

Si solo necesita los certificados, use -nokeys (y dado que no nos preocupa la clave privada, también podemos omitir con seguridad -nodes):

openssl pkcs12 -info -in INFILE.p12 -nokeys

Guardar certificados y claves privadas en archivos

Puede exportar los certificados y la clave privada de un archivo PKCS # 12 y guardarlos en formato PEM en un nuevo archivo especificando un nombre de archivo de salida:

openssl pkcs12 -in INFILE.p12 -out OUTFILE.crt -nodos

Nuevamente, se le pedirá la contraseña del archivo PKCS # 12. Como antes, puede cifrar la clave privada eliminando el -nodes marca desde el comando y / o agregar -nocerts or -nokeys para generar solo la clave privada o los certificados. Entonces, para generar un archivo de clave privada, podemos usar este comando:

openssl pkcs12 -in INFILE.p12 -out OUTFILE.key -nodes -nocerts

Y para crear un archivo que incluya solo los certificados, use esto:

openssl pkcs12 -in INFILE.p12 -out OUTFILE.crt -nokeys

Convertir clave privada al formato PKCS # 1

Los ejemplos anteriores generan la clave privada en el valor predeterminado de OpenSSL PKCS # 8 formato. Si sabes que necesitas PKCS # 1 en su lugar, puede canalizar la salida de la utilidad PKCS # 12 de OpenSSL a su utilidad RSA o EC, según el tipo de clave. Los dos comandos siguientes generarán un archivo de clave en formato PKCS # 1:

RSA

openssl pkcs12 -in INFILE.p12 -nodes -nocerts | openssl rsa -out OUTFILE.key

ECDSA

openssl pkcs12 -in INFILE.p12 -nodes -nocerts | openssl ec -out OUTFILE.key

Nota: Puede ver la diferencia entre los archivos de clave privada PKCS # 8 y PKCS # 1 mirando la primera línea de texto. Los archivos PKCS # 1 especificarán el algoritmo:
-----BEGIN RSA PRIVATE KEY-----

Los archivos PKCS # 8 no muestran el algoritmo y también pueden estar encriptados:
-----BEGIN PRIVATE KEY-----
or
-----BEGIN ENCRYPTED PRIVATE KEY-----


¡Gracias por elegir SSL.com! Si tiene alguna pregunta, comuníquese con nosotros por correo electrónico a Support@SSL.com, llamada 1-877-SSL-SECURE, o simplemente haga clic en el enlace de chat en la parte inferior derecha de esta página.

Suscríbase al boletín de SSL.com

No te pierdas los nuevos artículos y actualizaciones de SSL.com