Wanted to post my own reasoning in the question as I have given this some thought and the reason I am posting this as a question is to check my reasoning. For all I know this answer might get downvoted :) .
Voglio dire, l'argomento generale - a quanto ho capito - è che i requisiti di complessità della password richiedono all'utente di scegliere una password da uno "spazio" maggiore, riducendo così le possibilità di scegliere una password pericolosa poiché molte password non sicure sono solo alfa minuscolo (anche se chiaramente non tutto, come Password1!
).
Quando viene controllato qualcosa come haibeenpawned , si tratta di un controllo migliorato che rimuove la maggior parte dello spazio "password non sicura". Invece di considerare tutte le password alfa minuscole non sicure, utilizza invece i dati effettivi per determinare quali password sono o non sono sicure (si presuppone che il set di password compromesse sia estremamente simile alle password non sicure). La combinazione di entrambe le regole di complessità con un controllo del database delle password compromesso elimina quindi principalmente la parte "sicura" dello spazio alfa in minuscolo, bloccando password sicure che vengono catturate da regole di complessità della password come passphrase (ad esempio catwindowlightpencil
).
La figura sopra non comprende tutte le password, ma confronta le password con le regole di complessità della password che bloccano con le password che desideri bloccare. La password non sicura impostata è quella che desideri bloccare, la password compromessa è un sottoinsieme che puoi bloccare, il set alfa minuscolo è quello che blocchi con le regole di complessità della password.
Note: Obviously new 'dumb' passwords can be 'created'. For example, a new pop idol might become popular during the past week or Microsoft might buy Github, but not yet show up in a compromised password database. Similarly someone might use a product name as a password of a product that has not been compromised yet.