Jump to content

issues with a password strength meter...


Mouse

Recommended Posts

[CODE]
<?php
function pwd_strength($pwd)
{
  $result = 0;  # intialize to weakest
  $result += round(strlen($pwd) / 10);
  foreach(array("a-z", "A-Z", "0-9", "^a-zA-Z0-9") as $chars)
  {
    if(preg_match("/[$chars]/", $pwd))
    {
      $result += 1;
    }
  }
  return(min($result, 6));
}
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html lang='en'>
<head>
<META HTTP-EQUIV='Content-Type' CONTENT='text/html; charset=ISO-8859-1'>
<title>Password Validation</title>
<style type="text/css">
body {
  font: medium arial, helvetica, sans-serif;
  margin: 0;
  padding: 1em 10%;
}
div {
  height: 20px;
  margin: 5px 0;
  padding: 0;
  border: solid 1px #333;
}
#str0, #str1 {
  width: 12%;
  background-color: #f00;
}
#str2 {
  width: 24%;
  background-color: #c30;
}
#str3 {
  width: 36%;
  background-color: #963;
}
#str4 {
  width: 48%;
  background-color: #693;
}
#str5 {
  width: 60%;
  background-color: #3c0;
}
#str6 {
  width: 72%;
  background-color: #0f0;
}
#rating {
  width: 72%;
  padding: 0;
  margin: 0;
  border: none;
  height: auto;
}
</style>

</head>
<body>
<h1>Password Strength Rating</h1>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
<p>Password: <input type="password" name="password" size="16" maxlength="16">
<input type="submit" name="submit" value="Rate Password"></p>
</form>
<?php
if(isset($_POST['submit']))
{
  $strength = pwd_strength($_POST['password']);
  echo "<p>Password strength (1 = very weak, 6 = very strong): ".
      "<strong>$strength</strong></p>\n";
  echo "<div id='str$strength'></div>";
  echo "<div id='rating'><p style='float: left'>Weak</p>";
  echo "<p style='float: right'>Strong</p></div>\n";
}
?>
</body>
</html>
[/code]
any ideas why i can never get a perfect 6?
Link to comment
Share on other sites

I dont beleive in Password Strength Meters
I think my password is strongish, as nobody knows it

Some sites says Very Strong
Some sites says Very Weak

All I do to check a password is
Strip Whitespace (from beg and end)
Check its longer than 6 chars (anything less than 6 is just stupid)
make the string lower (THey migh accidently type half the password in caps, so when they log in it wont work)

Store

Thinking about it, One bank I used to use, to log in online, You would need your Passport number, and Pin Code. NOw that aint very secure. (Pins numbers over here in spain and UK are 4 digits)
Link to comment
Share on other sites

but anyways, why wont my meter EVER show a perfect six? following my own rules that the meter was founded on, 6 or more characters, at least one special character and a mix of upper, lower case and didgits... so even #M1ckE4 wont get 6... its got to be a coding bug....

only i don't see it... HELP...

Mouse.
Link to comment
Share on other sites

This thread is more than a year old. Please don't revive it unless you have something important to add.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.