Ho letto l'hashing delle password e sembra che ci siano molte opinioni su "Cosa è giusto".
Sono curioso di sapere se è possibile memorizzare una divisione di una password Hash in più campi utente. Significato hash la password prima, poi divisa, come sembra dividere una password in testo semplice, rendendo la sua lunghezza più piccola, poi l'hashing, indebolirà la sicurezza.
Diciamo che ho un campo password, quindi un altro campo da qualche altra parte nella tabella che è anche hash. Quando provo a vedere se la password inserita è la stessa, posso prendere i 2 valori hash che sono stati divisi, combinarli e vedere se quello è uguale a quello inserito? Certo, mi piacerebbe avere un sacco di valori nel mio DB, quindi avere un "valore hash" casuale non sembra sospetto in questo caso.
Example
Field Password: SA234j23kljfs
Other field : 23lkj4as89dfADk
User password: SA234j23kljfs23lkj4as89dfADk
Sono anche curioso di poter aggiungere dati ai campi per confondere ancora di più un aggressore. Credo che questa sarebbe una forma di SALE?
Example
Field Password: SA234j23kljfs|dSl92slC3lD29
Other field : 23lkj4as89dfADk|298fskASDlk2sl
then split the extra data behind |
(Note that | is there just as a placeholder for this example and it would be split would some sort of logic to split correctly).
User password: SA234j23kljfs23lkj4as89dfADk
C'è qualcosa di sbagliato in entrambi questi approcci? Sicuramente penso che questo sarebbe un problema per qualsiasi aggressore.
EDIT: ho deciso di modificare alcuni dettagli e spiegare meglio / dare esempi migliori di ciò che sto cercando di fare.
Sembra che molte delle risposte avessero a che fare con la suddivisione del testo in chiaro, e poi l'hashing di ogni pezzo, invece di eseguire l'hashing di tutto, quindi dividere ...
Capisco perché suddividere l'hashing è un rischio, ma perché dividere una password già con hash, essere la stessa?
Da quanto ho letto, gli hash non dovrebbero avere alcuna attinenza l'uno con l'altro quindi gli hash "ciao" e "mondo" messi insieme, non dovrebbero essere un hash "helloworld", o è sbagliato?
Grazie.