1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

Verificar força da password

Discussão em 'Programação' iniciada por gregurs, 13 de Maio de 2012. (Respostas: 1; Visualizações: 864)

  1. Boa noite estou a fazer um trabalho em C# que tem sistema de login e tem de
    verificar a força da password o problema é que não me verifica se a pass tem letras ou numeros ou outros caracteres
    O código que estou a utilizar é este:

    public
    enum PasswordScore
    {
    Weak =7,
    Medium =10,
    Strong =15,
    }

    publicstatic PasswordScore CheckStrength(string password)
    {
    /*
    if(password.Length>16)
    Console.WriteLine("Ultrapassou o limite");

    if(password.Length<7)
    return PasswordScore.Weak;
    elseif(password.Length<10)
    return PasswordScore.Medium;
    elseif(password.Length<15)
    return PasswordScore.Strong;

    if(password.Length>=8)
    score++;
    if(password.Length>=11)
    score++;
    */

    if
    (password.Length>=16)
    MessageBox.Show("Ultrapassou");

    elseif(Regex.IsMatch(password, @".[a-z]\d+[!,@,#,$,%,^,&,*,?,_,~,-,£,(,)]/", RegexOptions.ECMAScript))
    return PasswordScore.Strong;

    elseif(Regex.IsMatch(password, @"/[a-z]\d+/", RegexOptions.ECMAScript))
    return PasswordScore.Medium;

    elseif(Regex.IsMatch(password, @"/[a-z]/", RegexOptions.ECMAScript))
    return PasswordScore.Weak;
    }

    privatevoid npassTB_TextChanged(object sender, EventArgs e)
    {
    PasswordScore score = CheckStrength(npassTB.Text);
    Int32 i =(Int32)score;

    if(i <=7)

    lblpassword.ForeColor= Color.Yellow;
    elseif(i <=10)
    lblpassword.ForeColor= Color.Green;
    else//if (i == 15)
    lblpassword.ForeColor= Color.Red;
    lblpassword.Text= score.ToString();
    }
     
    Última edição: 14 de Maio de 2012
  2. Mach4_PT

    Mach4_PT Power Member

    Esse azul mata os olhos!
     

Partilhar esta Página