示例#1
0
文件: casemix.py 项目: mapix/pwdmeter
 def _test(self, value):
     upper_count = len(self.upper_re.findall(value))
     lower_count = len(self.lower_re.findall(value))
     if not (upper_count and lower_count):
         return self.lx_min, _('Use a good mix of upper case and lower case letters')
     score = self.ajust(upper_count - lower_count)
     return score, (None if score >= self.threshold else _('Use a good mix of upper case and lower case letters'))
示例#2
0
 def _test(self, value):
     upper_count = len(self.upper_re.findall(value))
     lower_count = len(self.lower_re.findall(value))
     if not (upper_count and lower_count):
         return self.lx_min, _('Use a good mix of upper case and lower case letters')
     score = self.ajust(upper_count - lower_count)
     return score, (None if score >= self.threshold else _('Use a good mix of upper case and lower case letters'))
示例#3
0
文件: variety.py 项目: mapix/pwdmeter
 def _test(self, value):
     same_count = 0
     last_char = None
     for idx in range(1, len(value)):
         if last_char == value[idx]:
             same_count += 1
         last_char = value[idx]
     if not same_count:
         return self.lx_max, None
     elif same_count == len(value):
         return self.lx_min, _('Minimize character duplicates and repetitions')
     score = self.ajust(old_div(float(same_count), float(len(value))))
     return score, (None if score >= self.threshold else _('Minimize character duplicates and repetitions'))
示例#4
0
 def _test(self, value):
     same_count = 0
     last_char = None
     for idx in range(1, len(value)):
         if last_char == value[idx]:
             same_count += 1
         last_char = value[idx]
     if not same_count:
         return self.lx_max, None
     elif same_count == len(value):
         return self.lx_min, _('Minimize character duplicates and repetitions')
     score = self.ajust(float(same_count) / float(len(value)))
     return score, (None if score >= self.threshold else _('Minimize character duplicates and repetitions'))
示例#5
0
 def _test(self, value):
     if len(value) < self.length:
         score = (1.0 - self.lx_min) * (float(len(value)) / self.length)**2
     else:
         score = self.ajust(len(value))
     return score, (None if score >= self.threshold else
                    _('Increase the length of the password'))
示例#6
0
文件: charmix.py 项目: mapix/pwdmeter
 def _test(self, value):
     score = self.lx_min
     number_count = len(self.number_re.findall(value))
     letter_count = len(self.letter_re.findall(value))
     symbol_count = len(self.symbol_re.findall(value))
     mixed_count = [_f for _f in [number_count, letter_count, symbol_count] if _f]
     if len(mixed_count) == 2:
         score += 1
     if len(mixed_count) == 3:
         score += 3
     return score, (None if score >= self.threshold else _('Use a good mix of numbers, letters, and symbols'))
示例#7
0
 def _test(self, value):
     score = self.lx_min
     number_count = len(self.number_re.findall(value))
     letter_count = len(self.letter_re.findall(value))
     symbol_count = len(self.symbol_re.findall(value))
     mixed_count = filter(None, [number_count, letter_count, symbol_count])
     if len(mixed_count) == 2:
         score += 1
     if len(mixed_count) == 3:
         score += 3
     return score, (None if score >= self.threshold else
                    _('Use a good mix of numbers, letters, and symbols'))
示例#8
0
 def _test(self, value):
     if self.resource.check(value):
         return (self.lx_min, _('Avoid using most common passwords'))
     return (self.lx_max, None)
示例#9
0
 def _test(self, value):
     count = len(self.non_ascii_re.findall(value))
     if not count:
         return self.lx_min, _('Use non-ASCII chars')
     score = self.ajust(count)
     return score, None
示例#10
0
文件: length.py 项目: yetone/pwdmeter
 def _test(self, value):
     if len(value) < self.length:
         score = (1.0 - self.lx_min) * (float(len(value)) / self.length) ** 2
     else:
         score = self.ajust(len(value))
     return score, (None if score >= self.threshold else _('Increase the length of the password'))
示例#11
0
 def _test(self, value):
     count = len(self.non_ascii_re.findall(value))
     if not count:
         return self.lx_min, _('Use non-ASCII chars')
     score = self.ajust(count)
     return score, None