Краткие теоретические сведения. Аутентификация (Authentication) - процедура проверки подлинности заявленного пользователя, процесса или устройства
Аутентификация (Authentication) - процедура проверки подлинности заявленного пользователя, процесса или устройства. Эта проверка позволяет достоверно убедиться, что пользователь (процесс или устройство) является именно тем, кем себя объявляет. При проведении аутентификации проверяющая сторона убеждается в подлинности проверяемой стороны, при этом проверяемая сторона тоже активно участвует в процессе обмена информацией. Обычно пользователь подтверждает свою идентификацию, вводя в систему уникальную, неизвестную другим пользователям информацию о себе (например, пароль или сертификат).
Идентификация и аутентификация являются взаимосвязанными процессами распознавания и проверки подлинности субъектов (пользователей). Именно от них зависит последующее решение системы, можно ли разрешить доступ к ресурсам системы конкретному пользователю или процессу. После идентификации и аутентификации субъекта выполняется его авторизация.
Авторизация (Authorization) - процедура предоставления субъекту определенных полномочий и ресурсов в данной системе. Иными словами, авторизация устанавливает сферу действия субъекта и доступные ему ресурсы. Если система не может надежно отличить авторизованное лицо от неавторизованного, конфиденциальность и целостность информации в ней могут быть нарушены. Организации необходимо четко определить свои требования к безопасности, чтобы принимать решения о соответствующих границах авторизации.
С процедурами аутентификации и авторизации тесно связана процедура администрирования действий пользователя.
Пароль - это то, что знает пользователь и что также знает другой участник взаимодействия. Для взаимной аутентификации участников взаимодействия может быть организован обмен паролями между ними.
Задание
Разработать программу, представляющую собой форму доступа к определённым информационным ресурсам на основе пароля:
1. В качестве информационного ресурса использовать любой файл или приложение.
Для справки: работа с текстовым файлом в среде Delphi:
var
myFile : TextFile;
text : string;
begin
// Попытка открыть файл Test.txt для записи
AssignFile(myFile, 'Test.txt');
ReWrite(myFile);
// Запись нескольких известных слов в этот файл
WriteLn(myFile, 'Hello');
WriteLn(myFile, 'World');
// Закрытие файла
CloseFile(myFile);
// Открытие файла в режиме только для чтения
FileMode := fmOpenRead;
Reset(myFile);
// Показ содержимого файла
while not Eof(myFile) do
begin
ReadLn(myFile, text);
ShowMessage(text);
end;
// Закрытие файла в последний раз
CloseFile(myFile);
end;
2. Доступ к ресурсу должен быть разрешен только санкционированным пользователям. Для этого в программе должны храниться имена пользователей и их пароли. При попытке доступа пользователя к ресурсу проверяется наличие его идентификатора (имени) в системе и соответствие введенного пароля паролю, который хранится в системе.
Для справки: Пример поиска элемента в массиве (Delphi):
// ввод массива for i:=l to SIZE do
a[i] := StrToInt(StringGridl.Cells[i - 1, 0]);
// ввод образца для поиска
obr := StrToInt(edit2.text);
// поиск
found := FALSE; // пусть нужного элемента в массиве нет
i := 1;
repeat
if a[i] = obr then
found := TRUE
else
i := i + 1;
until (i > SIZE) or (found = TRUE);
3. В системе должна храниться следующая информация о пользователе: ID или имя пользователя, пароль, ФИО, дата рождения, место рождения (город) номер телефона.
4. Пользователь должен иметь возможность поменять пароль (ограничения: см. вариант).
Содержание отчета
1. Титульный лист
2. Содержание
3. Задание
4. Текст программы
5. Пример работы программы
6. Выводы
Варианты
Вариант – номер по списку в журнале.
Номер варианта | Длина пароля (количество символов) | Используемые символы | Дополнительные средства защиты |
Латиница (строчные буквы) | При смене пароля: проверка на отсутствие повторяющихся символов. | ||
Кириллица (строчные буквы) | При смене пароля: проверка на совпадение пароля с именем пользователя (если используется идентификационный номер, то в системе должны храниться имена каждого пользователя) | ||
Цифры | Применение метода аутентификации на основе одноразовых паролей: каждый следующий пароль=предыдущий пароль+5 | ||
Цифры+ знаки арифметических операций | При смене пароля: проверка на отсутствие повторяющихся символов. | ||
Цифры+ знаки препинания | При смене пароля: проверка на совпадение пароля с датой рождения пользователя (храниться в системе) в формате дд.мм.гг или дд/мм/гг | ||
Латиница (прописные буквы) | Применение метода аутентификации на основе одноразовых паролей: при каждой следующей попытке входа в систему последняя буква пароля меняется на следующую по алфавиту. | ||
Кириллица (прописные буквы) | При смене пароля: проверка на совпадение пароля с фамилией пользователя (если используется идентификационный номер, то в системе должны храниться имена каждого пользователя) | ||
Цифры+ знаки препинания | При смене пароля: проверка на совпадение пароля с датой рождения пользователя (храниться в системе) в формате дд.мм.гггг или дд/мм/гггг | ||
Цифры | Применение метода аутентификации на основе одноразовых паролей: к первой цифре каждого следующего пароля прибавляется 1. | ||
Кириллица (прописные и строчные буквы) | При смене пароля: проверка на отсутствие повторяющихся символов. | ||
Латиница (строчные и прописные буквы) | Применение метода аутентификации на основе одноразовых паролей: после ввода пользователем пароля к нему добавляется «случайная» величина, такая же величина добавляется к паролю, который хранится в системе, после чего производится сравнение.(в качестве «случайной» величины использовать «Abc») | ||
Кириллица (прописные буквы) | При смене пароля: проверка на совпадение пароля с отчеством пользователя. | ||
Цифры | При смене пароля: проверка на совпадение пароля с номером телефона пользователя в формате: хххххххххх. | ||
Кириллица (прописные буквы) | При смене пароля: проверка на совпадение пароля со словами в словаре (в качестве словаря использовать массив названий месяцев). | ||
Латиница (строчные и прописные буквы) | При смене пароля: проверка на отсутствие повторяющихся символов. | ||
Кириллица (строчные буквы) | Применение метода аутентификации на основе одноразовых паролей: после ввода пользователем пароля в его начало добавляется «случайная» величина, такая же величина добавляется к паролю, который хранится в системе, после чего производится сравнение (в качестве «случайной» величины использовать «АБВ») | ||
Цифры | При смене пароля: проверка на совпадение пароля с годом рождения пользователя | ||
Цифры | Применение односторонней (хэш) функции: сложение всех цифр пароля. Такая же функция должна быть применена к паролю, который хранится в системе. Затем проводится сравнение паролей. | ||
Кириллица (строчные буквы) | Шифрование пароля (В качестве алгоритма шифрования применить метод перестановки: поменять местами первую и последнюю букву пароля) Тот же алгоритм должен быть применен к паролю, который хранится в системе. Затем проводится сравнение паролей. | ||
Кириллица (прописные буквы) | При смене пароля: проверка на совпадение пароля с местом рождения пользователя. | ||
Цифры+ знаки препинания | При смене пароля: проверка на совпадение пароля с номером телефона пользователя в формате: ххх-ххх-хх-хх | ||
Латиница (строчные буквы) | При смене пароля: проверка на совпадение пароля со словами в словаре (в качестве словаря использовать массив названий дней недели). | ||
Кириллица (прописные буквы) | При смене пароля: проверка на совпадение пароля с именем пользователя, записанным в обратном порядке. | ||
Цифры+ знаки препинания | При смене пароля: проверка на совпадение пароля с текущей датой в формате дд.мм.гг или дд/мм/гг | ||
Цифры | Применение односторонней (хэш) функции: перемножение всех цифр пароля. Такая же функция должна быть применена к паролю, который хранится в системе. Затем проводится сравнение паролей. | ||
Цифры | Шифрование пароля (В качестве алгоритма шифрования применить метод замены:к каждой цифре пароля прибавить по цифре из даты рождения пользователя соответственно) Тот же алгоритм должен быть применен к паролю, который хранится в системе. Затем проводится сравнение паролей. | ||
Кириллица (прописные буквы) | При смене пароля: проверка на совпадение пароля со словами в словаре (в качестве словаря использовать массив из любых 10 слов, длиной в 10 символов). | ||
Кириллица (строчные и прописные буквы) | При смене пароля: проверка на совпадение пароля с месяцем рождения пользователя | ||
Цифры+ знаки препинания | При смене пароля: проверка на совпадение пароля с текущей датой в формате дд.мм.гггг или дд/мм/гггг | ||
Цифры | При смене пароля: проверка на отсутствие повторяющихся символов. |
Содержание
Введение ……………………………………………………………………
1 Задание 1…………………………………………………………………..
1.1 Методические указание к заданию 1……………………………
1.2 Варианты задания 1………………………………………………
2 Задание 2 ………………………………………………………………….
2.1 Методические указания к заданию 2 …………………………..
2.2 Варианты задания 2 ……………………………………………..
Список литературы ………………………………………………………….