He estado leyendo sobre el hash de contraseña, y parece que hay muchas opiniones sobre "Lo que está bien".
Tengo curiosidad acerca de la posibilidad de almacenar una división de una contraseña Hashed en varios campos de usuario. El significado es "hash" primero la contraseña, luego se divide, ya que parece dividir una contraseña de texto sin formato, haciendo que su longitud sea más pequeña y luego el "hashing", debilitará la seguridad.
Digamos que tengo un campo de contraseña, y luego otro campo en otra parte de la tabla que también tiene un hash. Cuando trato de ver si la contraseña ingresada es la misma, ¿podría tomar los 2 valores de hash que se dividieron, combinarlos y ver si eso es igual al ingresado? Por supuesto, me gustaría incluir muchos valores en mi base de datos, por lo que tener un "valor hash" aleatorio no parece sospechoso en este caso.
Ejemplo
Contraseña del campo: SA234j23kljfs
Otro campo: 23lkj4as89dfADk
Contraseña de usuario: SA234j23kljfs23lkj4as89dfADk
También siento curiosidad por poder agregar datos a los campos para confundir aún más a un atacante. Creo que esto sería una forma de SAL?
Ejemplo
Contraseña del campo: SA234j23kljfs | dSl92slC3lD29
Otro campo: 23lkj4as89dfADk | 298fskASDlk2sl
luego divide los datos adicionales detrás |
(Tenga en cuenta que | existe solo como un marcador de posición para este ejemplo y se dividiría en algún tipo de lógica para dividir correctamente).
Contraseña de usuario: SA234j23kljfs23lkj4as89dfADk
¿Hay algo malo con cualquiera de estos enfoques? Seguramente siento que esto sería un problema para cualquier atacante.
EDITAR: decidí editar algunos detalles y explicar mejor / dar mejores ejemplos de lo que estoy tratando de hacer.
Parece que muchas de las respuestas tenían que ver con dividir el texto sin formato, y luego mezclar cada pieza, en lugar de agrupar todo, luego dividir ...
Entiendo por qué dividir el hashing es un riesgo, pero ¿por qué dividir una contraseña ya hash sería la misma?
Por lo que he leído, se supone que los hashes no tienen ninguna relevancia entre sí, por lo que los hashes "hola" y "world" juntos no deberían estar "helloworld", ¿o está mal?
Gracias.