Non sappiamo esattamente come Facebook gestisca le password degli utenti, tuttavia, possiamo immaginare questo scenario:
Un nuovo utente accede al suo account Facebook utilizzando la password: Password1
. È probabile che, immediatamente, Facebook generi password simili come: Passw0rd1
. pAssword2
, Passmord1
... ecc.
Facebook memorizza i rispettivi hash (che sono diversi, ovviamente) in modo che se un utente digita la sua password (dopo il reset), l'hash della nuova password viene confrontato con tutti gli hash memorizzati: Facebook può dirti se la tua nuova password è simile a quella precedente o meno.
Modifica
Seguendo @ Philipp commento dicendo che Facebook non ha password di hash, voglio condividere queste informazioni che ho citato da la documentazione ufficiale di Facebook ( Mantenimento sicuro delle password ):
We hash each password using our internal password hashing algorithm
and the unique salt for that person. Since Facebook stores passwords
securely as hashes, we can't simply compare a password directly to the
database. We need to hash it first and compare the hashes.