Blog de programación, donde ademas de encontrar pequeños programas en C# tambien publicaré pequeñas ayudas para SQL Server

Vladimir Miranda - vladivirus666@gmail.com. Con la tecnología de Blogger.

lunes, 19 de octubre de 2015

COMO EXPORTAR CLAVES PRIVADAS QUE SE HAN MARCADO COMO NO-EXPORTABLES (JailBreak)








En Ecuador contamos con facturación electrónica; si tenemos un proveedor externo que nos ayuda con este proceso, en algun momento nos solicita un certificado digital, en mi caso me han solicitado un archivo *.pfx (Intercambio de información personal), en fin, mi emisor de certificados digitales me entrego un archivo con la extensión *.p12; estos certificados son faciles de cambiar con unos cortos pasos:

Antes de empezar quiero dejar claro que al colocar JailBreak este post no trata nada acerca de Iphone o Ipody un largo etcetera con respecto a todo lo que tiene que ver con la manzanita

Presionamos las teclas Windows + R y escribimos mmc (Microsoft Management Console), luego damos Enter


Una  vez en la consola damos clic en Archivo y despues en Agregar o quitar complemento...



Buscamos en los complementos el apartado de Certificados, damos doble clic y se nos muestra una nueva pantalla. Si estamos en la maquina como Administrados debemos dejar que el complemento se administre desde "Mi cuenta de usuario" (Mas informacion sobre este tema aqui)


Damos clic en finalizar y en la parte izquierda de la consola podremos ver un nuevo items que corresponde al certificado, y en la parte derecha las carpetas donde se encuentran todos los certificados; en mi caso guarde los certificados en personal. Ahi los voy a revisar y exportar los que desee.


Cuando tengamos nuestro certificado, damos clic derecho en el mismo, clic en Todas las tareas y Exportar.


Ahora el problema se da cuando al exportar la opción "Exportar Clave Privada" no se encuentra activa y no podemos convertirlo a pfx.


Para esto usaremos un programa llamado JailBreak que nos permitirá exportar el archivo a pesar de que la clave privada este marcada como no exportable. En cuanto tenemos el archivo zip, lo descomprimimos, de preferencia lo vamos a colocar en un directorio raiz (a su elección); para mi ejemplo voy a colocarlo en C:

Ahora, vamos a abrir una consola de comandos (la ejecutamos como Administrador) y nos colocamos en el directorio binaries que se encuentra dentro de la carpeta; en mi ejemplo ejecuto cd C:\jailbreak-master\binaries


Ahora ejecutamos el siguiente comando

jailbreak64.exe %WINDIR%\system32\mmc.exe %WINDIR%\system32\certmgr.msc -64

Al ejecutar este comando estamos invocando a una instancia de gestión mmc (Microsoft Management Console) pero con el parche que realiza el dll de la aplicación.

Volvemos a realizar los pasos descritos en este mismo blog para exportar el certificado; pero ahora podremos ver que ya se encuentra habilitada la opción de "Exportar la clave privada"


Damos clic en la opcion y despues en Siguiente, verificamos que la opcion "" se encuentre activa y seleccionada y damos clic en Siguiente.


Ingresamos la contraseña del certificado y damos clic en siguiente.


Damos clic a examinar para seleccionar la ubicacion donde queremos guardar nuestro documento, damos clic en Siguiente y Finalizar. Si todo el proceso se cumplió con normalidad tendremos un mensaje de confirmacion.


Y eso seria todo con respecto a la exportacion del certificado

23 comentarios:

  1. Respuestas
    1. Me alegra que te haya servido, a mí también en algún momento me sirvió

      Eliminar
  2. Eres el puto amo. Funcionó a la perfección. Sólo cambie 64 por 32 que era mi sistema y listo. Después de 20 dias mirando en internet ésto funciono

    ResponderEliminar
    Respuestas
    1. Que bueno que te haya funcionado, yo tambien me estuve rompiendo la cabeza un buen tiempo con esto

      Eliminar
  3. Ha servido perfecto. El problema viene cuando la pimera vez que instalamos el certificado no marcamos la casilla “Marcar esta clave como exportable” y al exportarla para otro ordenador no nos deja exportar el certificado con clave privada, que es lo que realmente nos sirve:Fijarse si vuestro Sistema operativo es de 32 o de 64 bits. Pero funciona de 10.

    ResponderEliminar
  4. Hola! Gracias por el post. Lamentablemente no me funciona... alguna idea de por qué puede ser? E iniciado la ventana de comando como administrador, pero nada... me siguen saliendo en gris las casillas de guardarlo como pfx. Gracias!

    ResponderEliminar
    Respuestas
    1. Descargaste el Jailbreak? Al momento de iniciar la linea de comando asegurate de colocarte en la carpeta donde descomprimiste el ejecutable del Jailbreak y ejecuta el comando (con eso debería funcionar)

      jailbreak64.exe %WINDIR%\system32\mmc.exe %WINDIR%\system32\certmgr.msc -64

      Eliminar
  5. Respuestas
    1. Asegurate de abrir la linea de comando como administrador antes de iniciar el proceso

      Eliminar
  6. Buenas. Tengo un problema. Al ejecutar la consola de comandos como Administrador, me sale automáticamente esto:

    C:\Windows\System32>

    Y no me deja borrarlo, ni siquiera el último carácter, por lo que no me ejecuta bien ese comando. ¿Cómo lo podría solucionar?

    Saludos desde España

    ResponderEliminar
    Respuestas
    1. Bueno hay dos maneras para llegar hasta la raiz (C:\>).

      1. Escribir en la linea de comandos cd.. hasta llegar a la raiz
      2. Escribir en la linea de comandos cd\

      Y eso seria todo, de ahi seguir los pasos indicados

      Eliminar
  7. Muchas gracias. Me ha funcionado muy bien. Al principio me daba error porque no estaba actuando como administrador. Saludos desde Madrid

    ResponderEliminar
  8. Es usted maravilloso y generosísimo. Gracias.

    ResponderEliminar
  9. ¡Muy bueno! Funcionó perfectamente. Muchísimas gracias.

    ResponderEliminar
  10. Mil gracias, me has solucionado un buen problema. ¡Saludos y gracias!

    ResponderEliminar
  11. Muchas gracias por el post, funciona perfecto!

    Si alguien quiere probar otra alternativa también gratuita, puede utilizar: mimikatz

    Con mimikatz también es posible exportar certificados que han sido marcados como no exportables.

    Aquí tenéis las dos herramientas explicadas en español:

    http://www.sysadmit.com/2017/10/windows-exportar-certificado-digital-no-exportable.html

    ResponderEliminar
  12. Genial. super útil. La parte mas complicada ha sido bajarme el zip de todo, ya que solo me bajaba partes y no funcionaba.
    muchisimas gracias por compartir.
    saludos

    ResponderEliminar
  13. ¡Muchas gracias! Me sacaste de un buen apuro :)

    ResponderEliminar
  14. Muchas gracias!!! Me sirvió de ayuda.

    ResponderEliminar
  15. Muchísimas gracias! Me ayudaste a resolver un gran problema! Muy generoso! Mis bendiciones

    ResponderEliminar

Muchas gracias en cuanto terminemos de revisar el comentario se verá reflejado en el blog