密码复杂度检测算法

密码规则:可以输入数字和字母(大写/小写)组合,长度6-10位

字符串复杂度计算流程:
1.计算字符种类数量(字符种类有数字、大写字母、小写字母)
2.计算字符差异数量(区分大写字母和小写字母,重复的字符不计算在内)
3.根据字符种类数量和字符差异数量计算复杂度

下面是伪代码:

var level = ?; //1:简单 2:中等 3:复杂
var 是纯数字 = ?

if (种类数量 == 1) {
    if (是纯数字) {
        if (字符长度满10位,相似度大于8) {
            level=中等
        } else {
            level=简单
        }
    } else {
        if (差异数量==1,忽略字符长度) {
            level=简单
        } else if (差异数量==2,字符长度小于8位) {
            level=简单
        } else {
            level=中等
        }
    }
} else (种类数量 == 2) {
    if (差异数量==2) {
        if (字符长度小于9位) {
            level=简单
        } else {
            level=中等
        }
    } else if (差异数量>3,字符长度在8位以内) {
        level=中等
    } else if (差异数量>3,字符长度在8位以上) {
        level=难
    } else {
        level=简单
    }
} else {
    if (字符长度7位以内) {
        level=中等
    } else {
        level=复杂
    }
}

 

 

posted @ 2009-02-27 17:44  蛤蟆  阅读(2514)  评论(3)    收藏  举报