.NET 4.x Сравнение MD5 пароля с данными в текстовом файле - C#

Узнай цену своей работы

Формулировка задачи:

Есть пароль на вход. Нужно зашифровать в md5. С этим справился, хэш записывается в текстовый файл:
Листинг программы
  1. private void button1_Click(object sender, EventArgs e)
  2. {
  3.  
  4. if (textBox1.Text == textBox2.Text)
  5. {
  6. MasterPass = textBox1.Text; Close();
  7. }
  8. else
  9. {
  10. MessageBox.Show("Пароли не совпадают!");
  11. }
  12. using (StreamWriter sw = new StreamWriter("Text.txt"))
  13. {
  14. MD5 md5 = new MD5CryptoServiceProvider();
  15. byte[] checkSum1 = md5.ComputeHash(Encoding.UTF8.GetBytes(MasterPass));
  16. MasterPass = BitConverter.ToString(checkSum1).Replace("-", String.Empty);
  17. sw.WriteLine(MasterPass);
  18. }
  19. }
Теперь нужно чтобы хэш в текстовом файле так и остался, но чтобы при чтении оттуда он обратно декодировал в мой пароль. Вот чтение:
Листинг программы
  1. private void button1_Click(object sender, EventArgs e)
  2. {
  3. using (StreamReader sr = new StreamReader("Text.txt"))
  4. {
  5. Form2.MasterPass = sr.ReadLine();
  6. }
  7. if (textBox1.Text == Form2.MasterPass)
  8. {
  9. Form f3 = new Form3();
  10. f3.ShowDialog();
  11. textBox1.Text = null;
  12. }
  13. else
  14. {
  15. MessageBox.Show("Check your password!", "Error");
  16. }
  17. }

Решение задачи: «.NET 4.x Сравнение MD5 пароля с данными в текстовом файле»

textual
Листинг программы
  1. private void button1_Click(object sender, EventArgs e)
  2.         {
  3.            
  4.             using (StreamReader sr = new StreamReader("Text.txt"))
  5.             {
  6.                 Form2.MasterPass2 = textBox1.Text;
  7.                 MD5 md5 = new MD5CryptoServiceProvider();
  8.                 byte[] checkSum1 = md5.ComputeHash(Encoding.UTF8.GetBytes(Form2.MasterPass2));
  9.                 Form2.MasterPass2 = BitConverter.ToString(checkSum1).Replace("-", String.Empty);
  10.                 Form2.MasterPass = sr.ReadLine();
  11.                
  12.             }
  13.             if (Form2.MasterPass == Form2.MasterPass2)
  14.             {
  15.  
  16.                 Form f3 = new Form3();
  17.                 f3.ShowDialog();
  18.                 textBox1.Text = null;
  19.             }
  20.             else
  21.             {
  22.                 MessageBox.Show("Check your password!", "Error");
  23.             }
  24.         }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

8   голосов , оценка 4.375 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы