1
.docxФЕДЕРАЛЬНОЕ АГЕНСТВО СВЯЗИ
Ордена Трудового Красного Знамени федеральное государственное
бюджетное учреждение высшего образования
«Московский технический университет связи и информатики»
Кафедра информатики
Лабораторная работа №4
на тему: «Реализация простейшего генератора паролей»
Выполнил студент
Магомедова Д. И.
Москва, 2020 г.
Цель работы - получение основных теоретических сведений и практических навыков по оценке стойкости парольной защиты.
Ход работы:
Ознакомиться с теорией;
Выбрать вариант;
Реализовать код программы;
Постановка задачи:
Реализовать простейший генератор паролей, обладающий основными требованиями к парольным генераторам. Вариант 2:
b1, b2, b3 - случайные малые буквы английского алфавита, b4, b5 - случайные заглавные буквы английского алфавита, b6 - двузначное число, равное N^4 mod 100(если остаток - однозначное число, то b6 = 0).
Листинг программы:
using System;
using System.Windows.Forms;
namespace WindowsFormsApp1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
if (textBox1->Text != "")
{
String^ password = "";
char upperCase [] = { 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z' };
char lowerCase [] = { 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z' };
Random^ rRandom = gcnew Random();
int num = rRandom->Next(10, 99);
double num1;
int s=Math::Pow(num,4);
if (s % 100 >= 10)
{
num1 = (int)Math::Pow(num, 4) % 100;
}
else num1 = 0;
for (int i = 0; i <= 2; i++)
{
password += lowerCase[rRandom->Next(0, 25)];
}
for (int i = 0; i <= 1; i++)
{
password += upperCase[rRandom->Next(0, 25)];
}
password += num1;
label3->Text = password;
}
else MessageBox::Show("Вы не ввели идентификатор", "Ошибка", MessageBoxButtons::OK);
}
}
}
Результат выполнения программы:
Результат выполнения программы показан на рис. 1:
Рисунок 1 - Результат выполнения программы