Navajo 1.0.0

Navajo 1.0.0

TestsTested
LangLanguage Obj-CObjective C
License MIT
ReleasedLast Release Jun 2019

Maintained by Mattt.




Navajo 1.0.0

Navajo

Password Validator & Strength Evaluator

Navajo

Navajo is named in honor of the famed code talkers of the Second World War.

Usage

Validating Password

NSString *password = @"abc123"
NJOPasswordValidator *validator = [NJOPasswordValidator standardValidator];

NSArray *failingRules = nil;
BOOL isValid = [validator validatePassword:password
                              failingRules:&failingRules];

if (!isValid) {
    for (id <NJOPasswordRule> rule in failingRules) {
        NSLog(@"- %@", [rule localizedErrorDescription]);
    }
}

Available Validation Rules

  • Allowed Characters
  • Required Characters (e.g. lowercase, uppercase, decimal, symbol)
  • Non-Dictionary Word
  • Minimum / Maximum Length
  • Predicate Match
  • Regular Expression Match
  • Block Evaluation

Evaluating Password Strength

Password strength is evaluated in terms of information entropy.

NJOPasswordStrength strength = [NJOPasswordStrengthEvaluator strengthOfPassword:password];
NSLog(@"%@", [NJOPasswordStrengthEvaluator localizedStringForPasswordStrength:strength]);

License

MIT

Contact

Mattt (@mattt)