Реферат: Обнаружение вредоносных закладок
--PAGE_BREAK--2 ТИПОВЫЕ РЕШЕНИЯ В ОРГАНИЗАЦИИ КЛЮЧЕВЫХ СИСТЕМ
Рассмотрим структуры данных и алгоритмы идентификации и аутентификации на основе ключевой информации, а также иерархию хранения ключей.
Поскольку предполагается выполнение процедур как идентификации, так и аутентификации, допустим, что i-й аутентифицирующий объект (i-й ключевой носитель) содержит два информационных поля: IDi— неизменяемый идентификатор i-го пользователя который является аналогом имени и используется для идентификации пользователя, и К, — аутентифицирующая информация пользователя, которая может изменяться и служит для аутентификации[1].
На самом деле IDiможет соответствовать разным пользователям, например носитель сенсорной памяти TouchMemoryсодержит 8 байт неизменяемого идентификатора носителя, но при этом ТМ может быть передан разным пользователям.
Совокупную информацию в ключевом носителе будем называть первичной аутентифицирующей информацией i-roпользователя. Описанная структура соответствует практически любому ключевому носителю, служащему для опознания пользователя. Например, ТМ имеет 8 байт, не перезаписываемого неповторяющегося серийного номера, который однозначно характеризует конкретное ТМ, и некоторый объем перезаписываемой памяти, соответствующий аутентифицирующей информации Kj. Аналогично для носителей типа пластиковых карт выделяется неизменяемая информация IDiпервичной персонализации пользователя и объект в файловой структуре карты, содержащий Ki.
Очевидно, что внутренний аутентифицирующий объект не должен
существовать в компьютерной системе длительное время (больше времени работы конкретного пользователя). Далее, для постоянного хранения
необходимо использовать некую информацию, преобразованную из первичной. Рассмотрим типовые схемы аутентификации[1].
Схема 1. В компьютерной системе выделяется объект-эталон для идентификации и аутентификации (положим, что в системе зарегистрировано n пользователей). Структура объекта-эталона для схемы Т показана в таблице 2.1:
Таблица 2.1
Номер пользователя
Информация для
идентификации
Информация для
аутентификации
1
ID1
E1
2
ID2
E2
…
…
…
n
IDn
En
В табл. 2.1. Ei= F(IDi, Кi), где F— функция, для которой можно качественно описать свойство «невосстановимости» Kiпо Еiи IDi.
«Невосстановимость» Kiописывается некоторой пороговой трудоемкостью Тoрешения задачи восстановления аутентифицирующей информации по Eiи IDi, ниже которой не должна опускаться ни одна оценка трудоемкости нахождения Kiдля всех известных алгоритмов решения данной задачи.
Кроме того, для пары Kiи Kjвозможно совпадение соответствующих значений Е. В связи с этим вводится вероятность ложной аутентификации пользователя Рла, которая вычисляется как условная вероятность события «совпадение Еiи Ejпри условии нетождественности К: и Kj». Эта вероятность не должна быть больше некоторого предельного значения Р0. На практике задают То = 1020...1030, Р0= 10-7…10-9
Алгоритм идентификации и аутентификации (схема 1)
1. Пользователь предъявляет свой идентификатор (имя) ID.
2. Если IDне совпадает ни с одним IDi, зарегистрированным в компьютерной системе, то идентификация отвергается — пользователь не допущен к работе, иначе (существует IDi=ID) устанавливается факт «пользователь, назвавшийся пользователем i, прошел идентификацию».
3. Субъект аутентификации запрашивает у пользователя аутентификатор К.
4. Субъект аутентификации вычисляет Y=F(IDi, К).
5. Субъект аутентификации производит сравнение Eiи Y. При совпадении фиксируется событие «пользователь успешно аутентифицирован в системе», информация о пользователе передается в программные модули, использующие ключи пользователей (система шифрования, разграничения доступа и т.д.), в противном случае аутентификация отвергается — пользователь не допущен к работе.
Данная схема может быть модифицирована.
Схема 2. В компьютерной системе выделяется объект-эталон, структура которого показана в табл. 2.2 (положим, как и в схеме 1, что в системе зарегистрировано nпользователей). В таблице Е, = F(Si, Ki), где Si-случайный вектор, заданный при создании пользователя (т.е. при создании строки, необходимой для идентификации и аутентификации пользователя); F— функция, для которой можно качественно описать свойство «невосстановимость» К по Eiи Si. «Невосстановимость» Кi, понимается в том же смысле, как и для схемы 1.
Таблица 2.2
Номер пользователя
Информация для
идентификации
Информация для
аутентификации
1
ID1,S1
E1
2
ID2,S2
E2
…
…
…
n
IDn,Sn
En
Алгоритм идентификации и аутентификации (схема 2)
1. Пользователь предъявляет свой идентификатор (имя) ID.
2. Если IDне совпадает ни с одним IDi, зарегистрированным в компьютерной системе, то идентификация отвергается — пользователь не допущен к работе, иначе (существует IDi= ID) устанавливается факт «пользователь, назвавшийся пользователем i, прошел идентификацию».
3. По IDiвыделяется Si.
4. Субъект аутентификации запрашивает у пользователя аутентификатор К.
5. Субъект аутентификации вычисляет Y= F(Si, К).
6. Субъект аутентификации производит сравнение Eiи Y. При совпадении фиксируется событие «пользователь успешно аутентифицирован в КС», в противном случае аутентификация отвергается — пользователь не допущен к работе.
Вторая схема аутентификации применяется в ОС Unix. В качестве идентификатора IDиспользуется имя пользователя (запрошенное по Login), в качестве Ki— пароль пользователя (запрошен по Password), функция Fпредставляет собой алгоритм шифрования DES. Эталоны для идентификации и аутентификации содержатся в файле Etc/passwd.
Утверждение (о подмене эталона). Если пользователь имеет возможность записи объекта хранения эталона, то пользователь может быть идентифицирован и аутентифицирован (в рамках рассмотренных схем), как любой пользователь[1].
Доказательство.Пусть имеется пользователь i. Покажем, что он может выдать себя за любого пользователя j. Возможность записи в объект, содержащий эталоны, означает возможность замены любой записи на произвольную. Пользователь iменяет j-ю запись на свои параметры IDiи Ei(или дополнительно и Si). При следующей процедуре идентификации он будет опознан как пользователь j(по построению и описанию схем). Утверждение доказано.
Смысл данного утверждения состоит в том, что возможность записи объекта хранения эталонов должны иметь только субъекты специально выделенного пользователя компьютерной системы, отвечающего за управление безопасностью.
Заметим, что необходимым требованием устойчивости схем аутентификации к восстановлению информации Kiявляется требование случайного равновероятного выбора Кiиз множества возможных значений. Это требование, как уже было указано, автоматически снижает ценность систем парольной аутентификации, поскольку в них выбор аутентифицирующей информации происходит из небольшого множества осмысленных слов, мощность которого определяется энтропией соответствующего языка.
Рассмотрим теперь иерархию хранения и использования ключей при условии наличия в компьютерной системе криптографической подсистемы, включающей алгоритм шифрования Е, алгоритм расшифрования Dи исходные объекты O1, ..., Оn, зашифрованные на ключах ki, ..., kn. Результатом зашифрования исходных объектов являются объекты доступа в системе: Y1, … Yn. При этом Yj= E(0j, kj), Oj= D(Yj, kj). Пусть владельцу ключа Kjнеобходимо обеспечить доступ к объекту Yj(доступ подразумевает возможность расшифрования Yj). Для этого он должен знать ключ kj. Очевидно, что требуются дополнительные объекты хранения зашифрованных ключей (табл. 2.3). С учетом того, что к объекту Yjмогут иметь доступ несколько пользователей, объект уjможет содержать несколько подобъектов вида E(kj, Km), где Km— ключ m-roпользователя.
Таблица2.3
Объект доступа
Дополнительный объект
Y1
Y1=E(k1, Кj)
Y2
Y2=E(k2, Кj)
…
…
Yn
Yn=Е(kn,Кn)
Алгоритм доступа
1. Пользователь iидентифицируется и аутентифицируется в компьютерной системе. При положительном исходе ключ пользователя Кjдоступен субъектам (программам) системы, регулирующим доступ к объектам.
2. Пользователь производит доступ к зашифрованному объекту Yj. Выполняется поиск дополнительного объекта уj. В объекте уjпроверяется наличие E(kj, Ki), т.е. ключа доступа к объекту, зашифрованного на ключе пользователя. Если E(kj, Кi) не найден, то доступ пользователя отвергается. Иначе выполняются следующие действия.
3. Производится расшифрование ключа kj= D(yj, Ki), а затем — расшифрование объекта Oj= D(Yj, ki).
Под объектами доступа могут пониматься абоненты распределенной системы (сети связи). В этом случае ключ kjявляется ключом взаимодействия между пользователем iи абонентом j(это может быть также пользователь, терминал, принтер и т.д.). При рассмотрении сети связи обычно оперируют матрицей ключей, которая в явном виде отображает топологию связей в системе.
3. ПРОГРАММА
3.1.ОПИСАНИЕ ПРОГРАММЫ.
3.1.1 Используемая процедура опознавания.
В программе заложена процедура опознавания с использованием простого пароля. Системой предусмотрено ограниченное количество повторений для ввода пароля. При третьем подряд неправильном вводе идентификационных или аутентификационных данных программа прекращает работу.
В базе эталонных данных системы защиты пароли хранятся в зашифрованной форме. При этом используется шифрование методом гаммирования. В качестве ключа шифрования используется псевдослучайная последовательность битов, полученная с помощью линейного конгуэртного генератора[3].
Этот генератор вырабатывает последовательность псевдослучайных чисел Y1, Y2, …Yi-1, Yi,…, используя соотношение:
Yi=(a*Yi-1+b)mod m,
где Yi-iе (текущее) число последовательности; a-множитель (коэффициент); b-приращение; m-модуль; Y0-порождающее число (исходное значение).
Данное уравнение генерирует псевдослучайные числа с периодом повторения, который зависит от выбираемых значений параметров a,b,m и может достигать значения m.
3.1.2 Распределение ключей.
Программа позволяет устанавливать до десяти различных идентификаторов пользователей и паролей к ним. Длины идентификатора и пароля совпадают и составляют по десять символов каждый. Что позволяет обеспечить достаточную степень защиты, так как при попытке проникнуть в программу, не зная пароля даже при известном идентификаторе используя метод простого перебора ключей, потребует около 18010 повторений ввода пароля. Это достигается тем, что при выборе ключей допускается использование любых символов обоих регистров клавиатуры за исключением клавиши ‘пробел’.
Пароль администратора является постоянным и не может быть изменен никакими способами кроме внесения изменений в код программы с последующей перекомпиляцией исходных модулей.
3.1.3 Возможности администратора.
Администратор может просматривать и изменять список пользователей программы, а также изменять их идентификаторы и пароли. Он также имеет возможность просматривать и периодически очищать автоматически ведущийся журнал аудита, в который заносится информация какие идентификаторы и пароли используются при попытках входа в программу и результат работы процедуры установления подлинности (разрешен / не разрешен вход).
3.2 АЛГОРИТМ ПРОГРАММЫ.
Укрупненный алгоритм основного модуля программы (‘UNITKURS1.PAS’) приведен на рисунке 3.1
3.2.1 Проверка паролей.
Проверка паролей осуществляется следующим способом: из файла ‘password.txt’ производится чтение таблицы идентификаторов и паролей, затем происходит сверка введенного идентификатора с идентификаторами определенными для различных пользователей. В случае положительного результата претенденту разрешается допуск к приложению.
Файл ‘password.txt’ имеет постоянный размер 350 байт, по 35 байт на каждого пользователя. Его отсутствие в одной директории с исполняемым модулем программы
или другой размер приведет к ошибке во время работы программы.
3.2.2 Запись в журнал аудита.
При каждой попытке входа в автоматически ведущийся журнал аудита делается запись, состоящая из 30 байт:
-первые десять байт это идентификатор, который ввел пользователь;
-следующие десять байт это пароль;
-в последние десять байт заносится информация о результате проверки подлинности.
3.2.3 Администрирование доступа (рис 3.2).
При вводе идентификатора и пароля администратора появляется окно (см. приложение А) в котором отображаются:
-информация о пользователе (например, фамилия);
-идентификатор пользователя;
-пароль пользователя.
Администратор может вносить изменения в таблицу меняя информацию в отдельных ячейках таблицы или стереть всю таблицу целиком.
Рис 3.1
<img width=«102» height=«42» src=«ref-1_1974400120-335.coolpic» alt=«Овал: начало» v:shapes="_x0000_s1036">
<img width=«219» height=«211» src=«ref-1_1974400455-1454.coolpic» v:shapes="_x0000_s1038 _x0000_s1039 _x0000_s1041 _x0000_s1042">
да
<img width=«98» height=«99» src=«ref-1_1974401909-313.coolpic» v:shapes="_x0000_s1048 _x0000_s1049"> <img width=«12» height=«63» src=«ref-1_1974402222-131.coolpic» v:shapes="_x0000_s1054">
<img width=«12» height=«27» src=«ref-1_1974402353-101.coolpic» v:shapes="_x0000_s1050"> нет
<img width=«222» height=«359» src=«ref-1_1974402454-2455.coolpic» v:shapes="_x0000_s1055 _x0000_s1057 _x0000_s1058 _x0000_s1068 _x0000_s1069 _x0000_s1071 _x0000_s1072"> <img width=«162» height=«510» src=«ref-1_1974404909-1503.coolpic» v:shapes="_x0000_s1051 _x0000_s1081">
да
<img width=«12» height=«63» src=«ref-1_1974402222-131.coolpic» v:shapes="_x0000_s1077"><img width=«86» height=«2» src=«ref-1_1974406543-79.coolpic» v:shapes="_x0000_s1076">
<img width=«12» height=«195» src=«ref-1_1974406622-197.coolpic» v:shapes="_x0000_s1080">
нет
<img width=«2» height=«98» src=«ref-1_1974406819-79.coolpic» v:shapes="_x0000_s1082">
<img width=«183» height=«12» src=«ref-1_1974406898-128.coolpic» v:shapes="_x0000_s1083 _x0000_s1085"> <img width=«255» height=«12» src=«ref-1_1974407026-138.coolpic» v:shapes="_x0000_s1084 _x0000_s1086"> <img width=«150» height=«54» src=«ref-1_1974407164-423.coolpic» alt=«Овал: конец» v:shapes="_x0000_s1087">
<img width=«162» height=«42» src=«ref-1_1974407587-381.coolpic» alt=«Овал: начало» v:shapes="_x0000_s1089"> Рис 3.2
<img width=«415» height=«748» src=«ref-1_1974407968-4440.coolpic» v:shapes="_x0000_s1091 _x0000_s1092 _x0000_s1094 _x0000_s1095 _x0000_s1097 _x0000_s1098 _x0000_s1100 _x0000_s1101 _x0000_s1102 _x0000_s1103 _x0000_s1105 _x0000_s1107 _x0000_s1108">
продолжение
--PAGE_BREAK--
еще рефераты
Еще работы по информатике
Реферат по информатике
Проблема аутентификации данных и блочные шифры
18 Июня 2015
Реферат по информатике
Планирование машинного эксперимента с имитационной моделью системы массового обслуживания
2 Сентября 2013
Реферат по информатике
Система идентификации личности по отпечаткам пальцев
18 Июня 2015
Реферат по информатике
Использование OpenGL
2 Сентября 2013