Recuperar la contraseña del archivo .pfx

4

Tengo una aplicación antigua de Windows SmartClient que se publica con un certificado firmado (un archivo .pfx). Queremos extender la fecha de vencimiento a más de un año. He usado un programa llamado RenewCert para hacer esto con otros certificados. Sin embargo, no sabemos la contraseña para este certificado, que es requerida por RenewCert. Intenté usar un programa llamado CertificatePasswordRecovery para recuperar la contraseña, pero no se pudo encontrar it.

La única opción ahora parece ser generar un nuevo certificado, que requerirá una desinstalación / reinstalación de la aplicación en todas las máquinas.

¿Esto es correcto? ¿O puedes pensar en alguna otra posibilidad?

Editar: más información:
Vi otra solución potencial en Internet donde abres el archivo en el bloc de notas y buscas el signtool.exe y la contraseña seguirá el interruptor / p. No tuve éxito, pero no estoy seguro de si lo abordé correctamente. En el bloc de notas, acabo de ver un montón de símbolos chinos. Luego intenté ver el archivo pfx en Ultraedit, tanto en modo texto como en modo hexadecimal, pero no vi nada como "signtool.exe". Busqué ascii hex de "signo" - 73 69 67 6e - pero no lo encontré.

    
pregunta Al Lelopath 01.04.2016 - 17:52
fuente

2 respuestas

7

En primer lugar, tengo un problema con la nomenclatura: artículos como el que usted enlazó para indicar que los términos "par de clave pública / privada" y "certificado" son intercambiables. En realidad, un certificado es solo la parte de clave pública del par de claves, y un archivo .pfx es un paquete que contiene tanto el certificado (parte pública) como la clave privada cifrada [fuente] .

(¡Aplasta mis engranajes cuando la gente habla de una "contraseña que protege un certificado" que no tiene sentido, ya que un certificado es información pública! Realmente quieres decir "contraseña que protege una clave privada". Pero ya que el formato PFX alienta la gente lo piense todo como un paquete, supongo que esto es perdonable.)

Según el artículo que has vinculado, parece que RenewCert está utilizando la clave privada asociada con ese certificado para generar un nuevo self El certificado firmado contiene la misma clave pública que el certificado anterior (y obtiene una fecha de vencimiento más larga en el proceso). Los certificados autofirmados fallarían en HTTPS, pero sus aplicaciones SmartClient deberían estar bien con eso. Los certificados deben estar firmados por la clave privada de alguien, por lo que RenewCert utiliza el mismo par de claves que usted certifica para hacer la firma (de ahí el "certificado autofirmado").

La otra forma de renovar un certificado es mediante el envío de una solicitud de firma de certificado (csr) a una autoridad de certificación (CA). Desafortunadamente, aquí también necesita acceso a la clave privada para poder demostrarle a la CA que posee esta clave a través de una prueba de posesión [ver RFC 4211 Sección 4. y una declaración del IETF sobre los COP en CSRs ].

Entonces, la respuesta a su pregunta es: a menos que pueda encontrar una manera de acceder a esa clave privada (recordando la contraseña en el archivo .pfx, o encontrando la clave privada en una copia de seguridad en algún lugar ) su única opción es generar un nuevo par de llaves, hacer un certificado completamente nuevo y actualizar todas las aplicaciones. No hay forma de evitar eso ... todo el punto de los certificados es demostrar que posee la clave privada correspondiente.

    
respondido por el Mike Ounsworth 01.04.2016 - 18:22
fuente
2

Los archivos PFX son la implementación de certificados de Windows en el formato PKCS # 12. Es posible aplicar esta fuerza bruta a estas contraseñas de forma similar a la fuerza bruta de un archivo .ZIP. Por lo general, es más fácil simplemente volver a descargar el certificado u obtener uno nuevo.

Recomiendo usar una contraseña en un archivo PFX con una entropía similar a la entropía de la clave privada en el archivo PFX. Por lo general, solo llegué a grc.com y uso el servicio de contraseñas perfectas.

    
respondido por el Craig Carlston 22.06.2017 - 19:07
fuente

Lea otras preguntas en las etiquetas