Convertir un certificado *.pfx a Base64

Hace poco hablamos de como crear un certificado, pero a veces en lugar de como archivo lo necesitamos como una cadena de texto, que generalmente tiene que estar codificada como Base64. Vamos a ver como pasar un certificado *.pfx a Base64 y para ello vamos a usar la consola de Powershell -sí, esa ventana de comandos azul que tienes en tu Windows-.

El script en sí es muy sencillo:

$cer=New-Object System.Security.Cryptography.X509Certificates.X509Certificate2 -ArgumentList "{pathandname}.pfx", "{ASecurePassw0rd}"
[Convert]::ToBase64String($cer.Export([System.Security.Cryptography.X509Certificates.X509ContentType]::Cert))
[Convert]::ToBase64String($cer.GetCertHash())

La primera línea, lo que hace es crear un objeto de la clase del framework de .Net System.Security.Cryptography.X509Certificates.X509Certificate2, y lo almacena en la variable cer.

La siguiente lo que hace es convertir todo el valor del certificado a una cadena de Base64 que podremos usar en los sitios que nos pidan una cadena en lugar de un archivo.

El tercer comando lo que hace es devolvernos el hash del certificado en Base64, que es en algunos sitios lo llaman Identificador de clave personalizada, pero no deja de servir como elemento de comprobación del dato que hemos obtenido con el comando anterior.

Así de primeras, a lo mejor os parece una chorrada inservible, pero creedme que en ocasiones para securizar ciertas cosas necesitas hacerlo (ya os pondré algún ejemplo), y es horrible no acordarse de como era y tener que bucear por Internet, así que yo que vosotros me lo guardaría a buen recaudo.

Post By Javi López (27 Posts)

Arquitecto/desarrollador, creativo, buscador de nuevas soluciones y modelos de negocio, crítico constructivo y ex muchas cosas

Website: → JaviLopezG

Connect

, ,

Trackbacks/Pingbacks

  1. Convertir un certificado *.pfx a Base64 – JaviLopezG - 10 mayo, 2017

    […] Seguir leyendo en CantabriaTIC. […]

Deja una respuesta

Leave your opinion here. Please be nice. Your Email address will be kept private.

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies, pinche el enlace para mayor información.plugin cookies

ACEPTAR
Aviso de cookies
Translate »