# Navajo **Repository Path**: mirrors_svenanders/Navajo ## Basic Information - **Project Name**: Navajo - **Description**: No description available - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2020-08-18 - **Last Updated**: 2025-09-20 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Navajo **Password Validator & Strength Evaluator** ![Navajo](https://raw.github.com/mattt/Navajo/screenshots/example.gif) > Navajo is named in honor of the famed [code talkers of the Second World War](http://en.wikipedia.org/wiki/Code_talker#Navajo_code_talkers). ## Usage ### Validating Password ```objective-c NSString *password = @"abc123" NJOPasswordValidator *validator = [NJOPasswordValidator standardValidator]; NSArray *failingRules = nil; BOOL isValid = [validator validatePassword:password failingRules:&failingRules]; if (!isValid) { for (id 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](http://en.wikipedia.org/wiki/Entropy_%28information_theory%29). ```objective-c NJOPasswordStrength strength = [NJOPasswordStrengthEvaluator strengthOfPassword:password]; NSLog(@"%@", [NJOPasswordStrengthEvaluator localizedStringForPasswordStrength:strength]); ``` ### Contact [Mattt Thompson](http://github.com/mattt) [@mattt](https://twitter.com/mattt) ## License Navajo is available under the MIT license. See the LICENSE file for more info.