Merhaba arkadaşlar. Her projede kullanabileceğiniz basit bir şifre zorluk derecesi formu. Öncelikle SifreSeviye adında geriye string dönen bir metodumuz olsun.Bu metodda can alıcı nokta Char sınıfının true-false dönen IsLatter ve IsDigit metodlarıdır. Bu metodu TextBox ın TextChange metodunda çağırarak girilen string in karakterleri sırayla alınarak char 'a döndürülür. Bu Char karakteri de IsDigit motodunda true dönerse şifre de sayı var, IsLatter metodunda da true dönerse harf de var deriz.
public string SifreSeviye(string
Sifre)
{
int UzunlukAl = Sifre.Length;
if (UzunlukAl < 6)
{
return "Zayıf
Şifre..";
}
bool alfaNumerikMi = false;
string alfalar = "*?+#&!é/-\\";
bool harfMi = false;
bool rakamMi = false;
for (int n = 0; n
< Sifre.Length; n++)
{
char a = Convert.ToChar(Sifre.Substring(n,
1));
if (Char.IsLetter(a))
{
harfMi = true;
}
else if
(Char.IsDigit(a))
{
rakamMi = true;
}
else if
(alfalar.Contains(a))
{
alfaNumerikMi = true;
}
}
if (alfaNumerikMi == true
&& harfMi == true && rakamMi ==
true)
{
return "Güçlü
Şifre..";
}
else if (rakamMi == true && harfMi == true)
{
return "Orta
Seviye..";
}
else
{
return "Zayıf
Şifre..";
}
}
private void
textBox1_TextChanged(object sender, EventArgs e)
{
lblDerece.Text = SifreSeviye(txtSifre.Text);
if (SifreSeviye(txtSifre.Text) == "Zayıf Şifre..")
{
lblDerece.ForeColor = Color.Red;
}
else if
(SifreSeviye(txtSifre.Text) == "Orta
Seviye..")
{
lblDerece.ForeColor = Color.Orange;
}
else
lblDerece.ForeColor = Color.Green;
}
Kural olarak bir şifre harflerden, sayılardan ve alfanumerik karakterlerden meydana geliyorsa şifre güçlüdür. Sadece harflerden ve sayılardan meydana geliyorsa şifrenin güçlük seviyesi ortadır. Bu seçeneklerin dışında kalan olasılıklar için ise şifre zayıftır mantığıyla çalışıyor.
Hiç yorum yok:
Yorum Gönder