Skip to content

Reference

phil/passwords

Strength

TypeRole
Strength\StrengthEstimatorEstimates the guesses of a password and returns a Strength.
Strength\StrengthGuesses, score, patterns, crack times, feedback, lengths.
Strength\Score0 to 4, by the order of magnitude of the guesses.
Strength\PatternMatchA part of the password that follows a pattern, with its guesses and the fields of its pattern.
Strength\PatternDictionary, spatial, sequence, repeat, date, year, bruteforce.
Strength\CrackTimesThe seconds to try the guesses in four settings.
Strength\FeedbackA warning and suggestions.
Strength\Warning, Strength\SuggestionWhat makes a password weak and what would help, with their translation keys.
Strength\FeedbackMessagesThe sentences of the feedback in a locale, without a translator.
Strength\DictionaryRanked entries looked for in passwords; the bundled ones and the user inputs.
Strength\KeyboardLayoutKeys and their neighbours; the bundled layouts.

Breaches

TypeRole
Breach\BreachCheckerChecks a password against a source, without throwing.
Breach\BreachCheck, Breach\BreachStatusThe outcome of a check.
Breach\Contract\BreachedPasswordSourceThe port of the breach sources.
Breach\Adapter\PwnedPasswordsSourceThe Pwned Passwords range API by k-anonymity.
Breach\InMemoryBreachSourceHashes held in memory.
Breach\RangeResponseReads an answer of the range API.

Generation

TypeRole
Generator\PasswordGenerator, Generator\PasswordPolicy, Generator\CharacterSetRandom passwords.
Generator\PassphraseGenerator, Generator\PassphrasePolicy, Generator\CapitalizationPassphrases.
Generator\WordlistThe words of passphrases.

Validation

TypeRole
Validator\MinimumStrength, Validator\MinimumStrengthValidatorA password scored at least a minimum.
Validator\NotCompromised, Validator\NotCompromisedValidatorA password absent from known breaches.
Contract\PasswordUserInputsWhat a validated object knows of the person.

Exceptions

Exception\PasswordsException, InvalidPolicy, InvalidWordlist, InvalidDictionary, BreachCheckUnavailable: see Exceptions.

Classes under Strength\Internal are internal: their names and signatures may change in any version.