Creación de archivo PFX

En diversos Web Services que ofrece Smarter Web se hace referencia al archivo PFX, en este artículo, te explicamos su propósito y te guiaremos en el proceso de creación.

¿Qué es un PFX?

Es un formato binario utilizado para almacenar tanto el certificado digital como la llave privada en un solo archivo encriptado.

En pocas palabras, un archivo PFX es una fusión de tu certificado y tu llave privada, todo en un único paquete seguro.

¿Cómo se crea el archivo PFX?

Generador de Certificados PFX

En SW contamos con una herramienta para generar certificados PFX, puedes encontrarla en: Generador de Certificados PFX

Pasos para crear un PFX con OpenSSL

Te recomendamos ver nuestra siguiente capsula tipSW:

O realiza los siguientes pasos:

Para la generación de este archivo necesitaremos un certificado (*.cer) y su respectiva llave privada (*.key), también necesitaremos el paquete de herramientas OpenSSL.

Instalación de OpenSSL

💡Puedes ver como instalar OpenSSL en el siguiente enlace

Comandos para crear archivo PFX

  • Una vez instalado, abriremos la consola de Windows, para ello iremos a “Inicio” y buscaremos “CMD” o “Símbolo del sistema“, ejecutaremos y después nos posicionaremos en el mismo directorio donde guardamos el archivo.

Para este ejemplo utilizaremos la ruta “C:\Program Files\OpenSSL-Win64\bin”

Los certificados deben estar en la misma carpeta donde está instalado OpenSSL. Deberás modificar el nombre de la llave privada, certificado y password según los nombres que tengas guardados.

  • Dentro de la consola utilizaremos los siguientes comandos donde “CSD_Sucursal_1_CACX7605101P8_20230509_130254.key” es la llave privada, “12345678a” el password de la llave privada y “key.pem” como el archivo de salida resultante.
openssl pkcs8 -inform der -in CSD_Sucursal_1_CACX7605101P8_20230509_130254.key -passin pass:12345678a -out key.pem
  • En este caso tenemos “CSD_Sucursal_1_CACX7605101P8_20230509_130254.cer” como el certificado y “cer.pem” como el archivo de salida.
openssl x509 -inform der -in CSD_Sucursal_1_CACX7605101P8_20230509_130254.cer -out cer.pem
  • Ejecutamos el último comando para realizar la exportación y generar el archivo PFX.
openssl pkcs12 -export -in cer.pem -inkey key.pem -out CACX7605101P8.pfx
  • Al ejecutar el último comando, se te solicitará un password para el archivo PFX. Puedes utilizar el mismo password que tiene la llave privada (en este ejemplo, “12345678a”), o cualquier otro que prefieras.
  • De igual manera nos solicitara confirmar el password. (Ten en cuenta que al ingresar el password, no se mostrará en la consola por razones de seguridad, pero será considerado para la generación del archivo.).
Secuencia de ejecución de los comandos

Creación de archivo .txt

  • Como paso final, en los Web Services que ofrece Smarter Web, es común solicitar el archivo PFX dentro del request como base64. Puedes hacer esto en tu implementación mediante código o utilizando OpenSSL con el siguiente comando:
openssl enc -base64 -in CACX7605101P8.pfx -out CACX7605101P8.txt
  • Esto generará un archivo  .txt con la encriptación en base64 de los binarios del archivo PFX.

Tanto el archivo .txt como el archivo PFX estarán guardados en la misma ruta utilizada.


📖 Artículos de apoyo:

Generador de Certificado PFX

Trabajar con OpenSSL

Obtén CSD


En SW® somos mejores para TI, es por ello que tu opinión es muy importantepor favor ayúdanos calificando este articulo y dejando tus comentarios.

How useful was this post?

Click on a star to rate it!

We are sorry that this post was not useful for you!

Let us improve this post!

Tell us how we can improve this post?

Updated on junio 14, 2024

Related Articles