q; validate password

  • Thread starter Thread starter Guest
  • Start date Start date
G

Guest

I have a password field in my login page (ASP.NET 1.1), how can I validate
password based on at least 6 characters, one number, and one capital letter.
 
This is what I did, there's probably more efficient ways:

Public Function CheckPasswordCriteria(ph) as string
'is password at least 8 characters
'does password have at least one number
'does password have at least one lower case character
'does password have at least one upper case character
Dim sMessage as String
sMessage = ""

Dim oneNumber as Boolean = False
Dim lowerCase as Boolean = False
Dim upperCase as Boolean = False
Dim characterLength as Boolean = False

If len(ph) > 7 then characterLength = true

Dim tempOneChar as String
Dim tempPH as String = ph
Try
While oneNumber=False
tempOneChar = Left(tempPH, 1)
If isnumeric(tempOneChar) then oneNumber = true
tempPH=Right(tempPH, len(tempPH)-1)
End While
Catch
End try

Try
tempPH = ph
While lowercase=False
tempOneChar = Left(tempPH, 1)
If not isnumeric(tempOneChar) and tempOneChar <> ""
If tempOneChar = lcase(tempOneChar) then lowerCase =
true
end if
tempPH=Right(tempPH, len(tempPH)-1)
End While
Catch
End try

Try
tempPH = ph
While upperCase=False
tempOneChar = Left(tempPH, 1)
If not isnumeric(tempOneChar) and tempOneChar <> ""
If tempOneChar = ucase(tempOneChar) then upperCase =
true
end if
tempPH=Right(tempPH, len(tempPH)-1)
End While
Catch
End try

If oneNumber = True and lowerCase = True and upperCase = True
and characterLength = True then
mStatus.GetStatus("Password Criteria")
Return False
End If

sMessage = "Password error: "
If onenumber = False then sMessage = sMessage & "At least one
character must be numeric.<br>"
If lowercase = False then sMessage = sMessage & "At least one
character must be lower case.<br>"
If uppercase = False then sMessage = sMessage & "At least one
character must be upper case.<br>"
If characterlength = False then sMessage = sMessage & "Length
must be at least 8 characters.<br>"

mStatus.GetStatus(,,13,sMessage)
Return True

End Function
 
Back
Top