SAP NetWeaver ha una politica sulle password per impedire che la nuova password sia simile alle ultime 5 password.
Le password sono memorizzate in testo in chiaro per verificarlo?
O qualcosa come un valore soundex memorizzato?
SAP NetWeaver ha una politica sulle password per impedire che la nuova password sia simile alle ultime 5 password.
Le password sono memorizzate in testo in chiaro per verificarlo?
O qualcosa come un valore soundex memorizzato?
Loro non hanno bisogno di avere le password in plaintext per essere in grado di verificarlo.
Potrebbero utilizzare le best practice ( PBKDF2 ) e riuscire a riutilizzare la password.
Hai l'hash della password, il sale e il numero di iterazioni (ad es. salt: iterations: hash). Quindi tutto ciò che devono fare è mantenere le ultime 5 password passate attraverso PBKDF2 salvate da qualche parte ed eseguire lo stesso algoritmo su nuove password lungo con i sali di vecchie password e possono determinare se la password è stata utilizzata prima o no.
Il lato negativo qui è che puoi solo verificare la corrispondenza esatta e anche se la maiuscola di un singolo personaggio è cambiata non sarai in grado di verificarlo per le password più vecchie, ma poiché devi entrare la password corrente per poter modificare il tuo pass, l'applicazione può avere accesso alla versione in chiaro di esso in quel momento e avere controlli più severi sulla tua ultima password. E questo è ciò che fa SAP, non puoi inserire le stesse password che avevi prima e puoi anche far sì che l'utente cambi almeno i caratteri "n" della loro password precedente nella loro nuova password. ( Riferimento )
Gli algoritmi hash hanno un'uscita pseudocasuale e la modifica di un singolo bit nell'input rende le modifiche imprevedibili all'output. Quindi, a parte l'uso di sali, iterazioni o qualsiasi altra cosa anche nel caso di un semplice algoritmo di hash come md5 o sha-1, non c'è modo di misurare la somiglianza tra gli input, avendo solo accesso all'output dell'hash.
EDIT: la domanda era chiedersi come vengono rilevate le corrispondenze, la risposta sotto è per la similarità:
Quando si utilizza un buon algoritmo di hash, le stesse o simili password non avranno mai lo stesso valore di hash. Non puoi controllare gli hash per similarità, solo per l'uguaglianza.
Potrebbero usare qualcosa come hashing sfocato per verificare il livello fondamentale di somiglianza che dà percentuale di somiglianza.
Leggi altre domande sui tag authentication encryption passwords