Primero que nada, no estoy preguntando qué es un hash, o algo más. Intentaré explicar lo que estoy buscando con claridad:
Digamos que tengo un volcado de una base de datos, todas las contraseñas de esta base de datos están cifradas, las contraseñas tienen una longitud de 40 bytes, por lo que el algoritmo utilizado se basa en sha-1. Sin embargo, también sé que hay una sal (sha1($pass.$salt))
o sha1($salt.$pass)
. Puedo registrarme en el sitio web específico con un nombre de usuario y una contraseña de mi elección. Una vez hecho esto, puedo ver cuál es mi contraseña con hash y su valor de texto sin formato (por ejemplo, si me registro en el sitio web con la contraseña "123") y si luego vuelco la base de datos para verificar el hash de mi contraseña (así que en mi caso 123) tendré su valor hash. Pero no tengo la sal. Según lo que tengo, ¿puedo adivinar / forzar la sal utilizada, que se corrige en el código de la aplicación específica (no puedo verlo)?