美文网首页
dart/flutter和php弱密码检测

dart/flutter和php弱密码检测

作者: doooo | 来源:发表于2019-12-18 10:31 被阅读0次

1.dart/flutter版本,最少8位,包含大小写数字特殊字符3种组合以上

  /// 是否是弱密码
  static bool isWeakPassword(String password) {
    if (password?.isNotEmpty != true) return true;//密码为空,弱密码
    if (password.length < 8) return true;//位数不足,弱密码
    Set set = HashSet();
    for (var code in password.codeUnits) {
      if (code >= 48 && code <= 57)
        set.add('数字');
      else if (code >= 65 && code <= 90)
        set.add('大写');
      else if (code >= 97 && code <= 122)
        set.add('小写');
      else
        set.add('特殊');
    }
    return set.length < 3;//种类小于3种,弱密码
  }

2.php版本,我不会php,以下代码是一边百度,一边参考上面的代码在记事本上写的,格式化和规范有点乱,最少6位,2种组合

<?php
 function isWeak($pwd) {
   if (strlen($pwd) < 6) {
    return true;
   }
   $set = array();
   foreach (str_split($pwd) as $ch){
    $ascii = ord($ch);
    if($ascii >=48 && $ascii <= 57) $set['数字']=true;
    elseif($ascii >=65 && $ascii <= 90) $set['大写']=true;
    elseif($ascii >=97 && $ascii <= 122) $set['小写']=true;
    else $set['特殊']=true;
   }
   return sizeof($set) < 2;
  }
 
 var_dump( isWeak('aaa@11'));

相关文章

网友评论

      本文标题:dart/flutter和php弱密码检测

      本文链接:https://www.haomeiwen.com/subject/oybynctx.html