/[LeafOK_CVS]/fenglin/lib/passwd.inc.php
ViewVC logotype

Annotation of /fenglin/lib/passwd.inc.php

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.5 - (hide annotations)
Sun Apr 27 04:32:05 2025 UTC (10 months, 2 weeks ago) by sysadm
Branch: MAIN
Changes since 1.4: +2 -2 lines
Trim trailing whitespaces

1 sysadm 1.4 <?php
2 sysadm 1.1 function verify_pass_complexity($password, $username, $min_len)
3     {
4     $num_count = 0;
5     $upper_case = 0;
6     $lower_case = 0;
7 sysadm 1.2 $len = strlen($password);
8 sysadm 1.1
9 sysadm 1.2 if ($len < $min_len)
10 sysadm 1.1 {
11     return false;
12     }
13    
14 sysadm 1.3 if (stristr($password, $username) !== false)
15 sysadm 1.1 {
16     return false;
17     }
18    
19 sysadm 1.2 for ($i = 0; $i < $len; $i++)
20 sysadm 1.1 {
21 sysadm 1.2 $c = $password[$i];
22 sysadm 1.5
23 sysadm 1.1 if (is_numeric($c))
24     {
25     $num_count++;
26     }
27    
28 sysadm 1.3 if (ctype_upper($c))
29 sysadm 1.1 {
30     $upper_case++;
31     }
32    
33 sysadm 1.3 if (ctype_lower($c))
34 sysadm 1.1 {
35     $lower_case++;
36     }
37     }
38    
39 sysadm 1.3 if ($upper_case == 0 || $lower_case == 0 || $num_count == 0)
40 sysadm 1.1 {
41     return false;
42     }
43    
44     return true;
45     }
46    
47     function gen_passwd($len)
48     {
49     $str = "";
50    
51     for ($i = 0; $i < $len; $i++)
52     {
53     mt_srand(intval(microtime(true) * 1000000));
54     $num = mt_rand(0, 61);
55     $str .= chr($num < 10 ? (ord("0") + $num) : ($num < 36 ? (ord("A") + $num - 10) : (ord("a") + $num - 36)));
56     }
57 sysadm 1.5
58 sysadm 1.1 return $str;
59     }
60    
61     ?>

webmaster@leafok.com
ViewVC Help
Powered by ViewVC 1.3.0-beta1