Navajo
密码验证器 & 强度评估器
Navajo 以纪念著名的第二次世界大战中的纳瓦霍电码员。
用法
验证密码
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]);
}
}
可用的验证规则
- 允许的字符
- 必需字符(例如,小写字母、大写字母、十进制、符号)
- 非单词
- 最小/最大长度
- 谓词匹配
- 正则表达式匹配
- 块评估
评估密码强度
密码强度通过信息熵来评估。
NJOPasswordStrength strength = [NJOPasswordStrengthEvaluator strengthOfPassword:password];
NSLog(@"%@", [NJOPasswordStrengthEvaluator localizedStringForPasswordStrength:strength]);
许可协议
MIT
联系方式
Mattt (@mattt)