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?
Pasos para crear un PFX con OpenSSL
Te recomendamos ver nuestra siguiente capsula tipSW:
O realiza los siguientes pasos:
- Para Windows descargaremos el instalador en la siguiente página: https://wiki.openssl.org/index.php/Binaries
- 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”
- 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.).
- 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:
En SW® somos mejores para TI, es por ello que tu opinión es muy importante, por favor ayúdanos calificando este articulo y dejando tus comentarios.