In che modo un hacker sa quante volte è stata eseguita l'hash di una password? Nello stesso modo in cui lo fai.
L'obiettivo dell'hashing di una password è di rendere impossibile (in pratica molto difficile) determinare la password, anche con pieno accesso a tutti i dati .
L'altro requisito per l'hashing è che il server deve essere in grado di determinare se una password inserita è corretta. Ciò significa che a un certo punto durante la procedura di accesso, il server deve avere accesso alla formula completa per l'hashing di una password.
Lo scopo di variare il numero di hash è principalmente quello di rallentare gli attacchi di forza bruta e aumentare lo spazio di ricerca per le tabelle arcobaleno, e funziona senza alcun segreto . Ecco perché il numero di round viene in genere memorizzato direttamente nel database con l'hash, come nella risposta di SilverlightFox.
Esistono soluzioni che memorizzano il numero di round separatamente e tentano di mantenerlo segreto e questo può aggiungere un ulteriore livello di protezione. Ma quando valutiamo il sistema di hashing dobbiamo supporre che l'attaccante sappia tutto ciò che sappiamo .
Dopotutto, se ci fosse un luogo in cui memorizzare il numero di round che era garantito non fosse compromesso, potremmo semplicemente archiviare le password lì e non preoccuparci affatto dell'hashing.