¿Cómo verificar 2 valores hash con diferentes sales que se originan en la misma contraseña de texto simple?

0

Tengo un proyecto en el que necesito hacer una combinación de cuenta en dos sitios web.

Un cierto porcentaje de usuarios tiene cuentas en ambos sitios (la misma dirección de correo electrónico). En lugar de suponer que dos cuentas con la misma dirección de correo electrónico tienen la misma identidad, nos gustaría ir un paso más allá y comparar hashes de contraseña.

Ambos sitios web están en la misma plataforma de comercio electrónico, solo 2 sitios de marca diferente que estamos consolidando en uno. La función de hash es la misma en ambos sitios (SHA256), sin embargo, utilizamos diferentes SALT en cada sitio.

Por ejemplo:

SITE # 1
contraseña (1) = hola
sal (1) = abc123
hash (1) = 1a1A1a1A1a1A

SITE2
contraseña (2) = hola
sal (2) = xyz456
hash (2) = 2b2B2b2B2b2B

Dado solo sal (1), hash (1), sal (2), hash (2), ¿es posible verificar que la contraseña (1) y la contraseña (2) son las mismas? es decir, no necesito descifrar, solo necesito confirmar que las dos contraseñas son las mismas?

    
pregunta user174182 28.03.2018 - 16:24
fuente

2 respuestas

5

No puedes. Ese es un poco el punto de una sal.

Si pudiera decir que dos contraseñas con diferentes sales eran las mismas, entonces los ataques con hashes precompuestos aún serían posibles, y las sales serían bastante inútiles.

Necesitaría la contraseña original para verificar que ambos hash con sal se derivan de la misma contraseña.

    
respondido por el Alexander O'Mara 28.03.2018 - 16:38
fuente
2

El diseño del sistema es que no se puede hacer esto sin conocer la contraseña original. El objetivo de seguridad es que no se puede probar una contraseña más rápido que el hash. Si puede hacer una equivalencia entre los dos más rápido que el hash, entonces tiene una manera de averiguar la contraseña más rápido que hacerlo.

Como comentario adicional, espero que los hashes sean únicos por usuario, no exclusivos de los sitios

    
respondido por el Adam Shostack 28.03.2018 - 16:38
fuente

Lea otras preguntas en las etiquetas