Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

БФИ2203_ОИБ_Лаб№1_Вар№8

.docx
Скачиваний:
0
Добавлен:
02.08.2026
Размер:
66 Кб
Скачать

Министерство цифрового развития, связи и массовых коммуникаций РФ ордена Трудового Красного Знамени федеральное государственное бюджетное образовательное учреждение высшего образования «МОСКОВСКИЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ СВЯЗИ И ИНФОРМАТИКИ»

Кафедра «Информационная безопасность»

Отчет по лабораторной работе № 1

по дисциплине «Основы информационной безопасности»

Реализация простейшего генератора паролей»

Вариант № 8

Выполнили:

студенты группы БФИ №2203

Козлова Я.В.

Мячина Л.А.

Москва, 2023 г.

Цель работы: получение основных теоретических сведений и практических навыков по оценке стойкости парольной защиты.

Задача: реализовать простейший генератор паролей, обладающий основными требованиями к парольным генераторам. Генератор должен соблюдать следующий перечень требований: b1, ..., b1 + Q — случайные малые буквы английского алфавита, где Q = N3mod5; b1 + Q + 1, ..., b1 + Q + 1 + P — случайные заглавные буквы английского алфавита, где P = N2mod6. Оставшиеся символы пароля — случайные цифры

Ход работы

Код программы:

using System;

namespace ИнБез1

{

internal class Program

{

static void Main(string[] args)

{

string input;

Console.WriteLine("Идентификатор пользователя: ");

input = Console.ReadLine();

int N = Convert.ToInt32(input);

int M = 12;

int Q = (int)Math.Pow(N, 3) % 5;

int P = (int)Math.Pow(N, 2) % 6;

Console.WriteLine($"M = {M}");

Console.WriteLine($"N = {N}");

Console.WriteLine($"Q = {Q}");

Console.WriteLine($"P = {P}");

Random random = new Random();

string resPass = "";

resPass += new string(Enumerable.Repeat("abcdefghijklmnopqrstuvwxyz", Q + 1)

.Select(s => s[random.Next(s.Length)]).ToArray());

resPass += new string(Enumerable.Repeat("ABCDEFGHIJKLMNOPQRSTUVWXYZ", P + 1)

.Select(s => s[random.Next(s.Length)]).ToArray());

resPass += new string(Enumerable.Repeat("0123456789", M - P - Q - 2)

.Select(s => s[random.Next(s.Length)]).ToArray());

Console.WriteLine($"\nСгенерированный пароль: {resPass}");

}

}

}

Результат работы:

Рисунок 1 - Результат выполнения программы при N=20

Рисунок 2 - Результат выполнения программы при N=15

Вывод: в результате выполнения работы был создан простейший генератор паролей.