1. Home
  2. F.A.Q
  3. ¿Como crear un PFX?

¿Como crear un PFX?

En diversos WebService que ofrece Smarter Web, hace referencia un PFX.

¿Qué es un PFX?

Un archivo PFX no es más que el Certificado y Llave privada en un solo archivo. Podríamos decir que una fusión de ambos archivos.

¿Como se crea este archivo PFX?

Para la generación de este archivo, necesitaremos un certificado (*.cer) y su llave privada correspondiente (*.key), teniendo esto, además necesitaremos la utilería para OpenSSL. Para Windows lo descargaremos de https://indy.fulgan.com/SSL/

Una vez teniendo descomprimido, abriremos la consola en windows. Para ello iremos a “inicio” y buscaremos “cmd” y ejecutaremos la consola o “Command Prompt”, después nos posicionaremos en el mismo directorio donde descomprimiste el .zip. Para este ejemplo utilizaré la ruta “c:\out\openssl”

Y estando utilizaremos los siguientes comandos.

Donde tenemos “CSD_Pruebas_CFDI_LAN7008173R5.key” como la llave privada, “12345678a” como el password de la llave privada y “key.pem” como el archivo de salida.

En este caso tenemos “CSD_Pruebas_CFDI_LAN7008173R5.cer” como el certificado y “cer.pem” como el archivo de salida.

Al ejecutar esté último comando, nos solicitara un password, dicho password es el que tendrá el PFX. En este caso yo proporcione el mismo que tiene la llave privada (12345678a). De igual manera nos solicitara confirmar el password. (En la consola no se mostrará lo que escribamos como password, pero si lo tiene en cuenta para la generación del mismo).

Como paso final, en los WebService que ofrecemos normalmente solicitamos este archivo en el request como base64. Esto lo podemos hacer en nuestro lenguaje de programación directamente o a través de OpenSSL.

Y esto nos generará un archivo .txt con la encriptación de los binarios del PFX en base64.


<br /> <body data-rsssl=1>Your browser does not support frames.</body><br />

Updated on abril 10, 2019

Was this article helpful?

Related Articles

  • Luis Diaz

    ¿Hay alguna forma de hacer esto por código C#? sería de gran utilidad para automatizar este proceso, gracias.

    • Juan Carlos Gamez Cuevas

      Si se puede, pero necesitas de librerías externas para hacer la de-codificación de la llave privada.

      Saludos!