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

4437

.pdf
Скачиваний:
1
Добавлен:
21.11.2023
Размер:
464.15 Кб
Скачать

Лабораторная работа № 4 «Количественная оценка стойкости парольной защиты»

Цель работы: реализация простейшего генератора паролей, обладающего требуемой стойкостью к взлому.

Теоретические сведения

Подсистемы идентификации и аутентификации пользователя играют важную роль в системах защиты информации.

Стойкость подсистемы идентификации и аутентификации пользователя в системе защиты информации (СЗИ) во многом определяет устойчивость к взлому самой СЗИ. Данная стойкость определяется гарантией того, что злоумышленник не сможет пройти аутентификацию, присвоив чужой идентификатор или украв его.

Парольные системы идентификации/аутентификации являются одними из основных и наиболее распространенных в СЗИ методами пользовательской аутентификации. В данном случае информацией, аутентифицирующей пользователя, является некоторый секретный пароль, известный только легальному пользователю.

Парольная аутентификация пользователя, как правило, передний край обороны СЗИ. В связи с этим модуль аутентификации по паролю наиболее часто подвергается атакам со стороны злоумышленника. Цель последнего в данном случае – подобрать аутентифицирующую информацию (пароль) легального пользователя.

Методы парольной аутентификации пользователя наиболее просты и при несоблюдении определенных требований к выбору пароля являются достаточно уязвимыми.

Основными минимальными требованиями к выбору пароля и к подсистеме парольной аутентификации пользователя являются следующие.

К паролю:

1)минимальная длина пароля должна быть не менее 6 символов;

2)пароль должен состоять из различных групп символов (малые и большие латинские буквы, цифры, специальные символы „(‟, „)‟, „#‟ и т.д.);

3)в качестве пароля не должны использоваться реальные слова, имена, фамилии и т.д.

К подсистеме парольной аутентификации:

1)администратор СЗИ должен устанавливать максимальный срок действия пароля, после чего, пароль следует сменить;

2)в подсистеме парольной аутентификации необходимо установить ограничение числа попыток ввода пароля (как правило, не более трѐх);

3)в подсистеме парольной аутентификации требуется установить временную задержку в случае ввода неправильного пароля.

Как правило, для генерирования паролей в СЗИ, удовлетворяющих перечисленным требованиям к паролям, используются программы – автоматические генераторы паролей пользователей.

При выполнении перечисленных требований к паролям и к подсистеме парольной аутентификации единственно возможным методом взлома данной подсистемы злоумышленником является прямой перебор паролей (brute forcing). В данном случае, оценка стойкости парольной защиты осуществляется следующим образом.

Количественная оценка стойкости парольной защиты

Пусть A – мощность алфавита паролей (количество символов, которые могут быть использованы при составлении пароля: если пароль состоит только из малых английских букв, то A = 26), L – длина пароля, S = AL – число всевозможных паролей длины L, которые можно составить из символов алфавита A, V – скорость перебора паролей злоумышленником, T

– максимальный срок действия пароля.

Тогда, вероятность P подбора пароля злоумышленником в течение срока его действия V определяется по следующей формуле:

P = (V ∙ T) / S = (V ∙ T) / AL.

Задание на лабораторную работу

1.В табл.3 найти для указанного варианта значения характеристик

P, V, T.

2.Вычислить по формуле (1) нижнюю границу S* для заданных

P, V, T.

3.Выбрать некоторый алфавит с мощностью A и получить минимальную длину пароля L, при котором выполняется условие (2).

4.Реализовать программу для генерации паролей пользователей. Программа должна формировать случайную последовательность символов длины L, при этом должен использоваться алфавит из A символов.

5.Оформить отчет по лабораторной работе.

Коды символов:

1. Коды английских символов : «A» = 65, …, «Z» = 90, «a» = 97,…, «z» = 122.

2.Коды цифр : «0» = 48, «9» = 57.

3.«!» = 33, «“» = 34, «#» = 35, «$» = 36, «%» = 37, «&» = 38, «„» = 39.

4.Коды русских символов : «А» – 128, … «Я» – 159, «а» – 160,…, «п» – 175, «р» – 224,…, «я» – 239.

Таблица 3. Варианты заданий

Вариант

P

V

T

1

10-4

15 паролей/мин

2 недели

2

10-5

3 паролей/мин

10 дней

3

10-6

10 паролей/мин

5 дней

4

10-7

11 паролей/мин

6 дней

5

10-4

100 паролей/день

12 дней

6

10-5

10 паролей/день

1 месяц

7

10-6

20 паролей/мин

3 недели

8

10-7

15 паролей/мин

20 дней

9

10-4

3 паролей/мин

15 дней

10

10-5

10 паролей/мин

1 неделя

11

10-6

11 паролей/мин

2 недели

12

10-7

100 паролей/день

10 дней

13

10-4

10 паролей/день

5 дней

14

10-5

20 паролей/мин

6 дней

15

10-6

15 паролей/мин

12 дней

16

10-7

3 паролей/мин

1 месяц

17

10-4

10 паролей/мин

3 недели

18

10-5

11 паролей/мин

20 дней

19

10-6

100 паролей/день

15 дней

20

10-7

10 паролей/день

1 неделя

21

10-4

20 паролей/мин

2 недели

22

10-5

15 паролей/мин

10 дней

23

10-6

3 паролей/мин

5 дней

24

10-7

10 паролей/мин

6 дней

25

10-4

11 паролей/мин

12 дней

26

10-5

100 паролей/день

1 месяц

27

10-6

10 паролей/день

3 недели

28

10-7

20 паролей/мин

20 дней

29

10-4

15 паролей/мин

15 дней

30

10-5

3 паролей/мин

1 неделя

Контрольные вопросы

1.Чем определяется стойкость подсистемы идентификации и аутентификации?

2.Перечислить минимальные требования к выбору пароля.

3.Перечислить минимальные требования к подсистеме парольной аутентификации.

4.Как определить вероятность подбора пароля злоумышленником в течение срока его действия?

5.Выбором каких параметров можно повлиять на уменьшение вероятности подбора пароля злоумышленником при заданной скорости подбора пароля злоумышленником и заданном сроке действия пароля?

Лабораторная работа №5 «Симметричные системы шифрования. Изучение криптографических методов подстановки»

Цель работы:Изучить особенности построения шифров простой и многоалфавитной замены.

Теоретический материал:

Системы подстановок

Определение Подстановкой на алфавите Zm называется автоморфизм Zm, при котором буквы исходного текста t замещены буквами шифрованного текста (t):

Zm Zm; : t (t).

Набор всех подстановок называется симметрической группой Zm è будет в дальнейшем обозначаться как SYM(Zm).

Утверждение SYM(Zm) c операцией произведения является группой, т.е. операцией, обладающей следующими свойствами:

Замкнутость: произведение подстановок 12 является подстановкой:

t1(2(t)).

Ассоциативность: результат произведения 123 не зависит от порядка расстановки скобок:

(12)3=1(23)

Существование нейтрального элемента: постановка i, определяемая как i(t)=t, 0t<m, является нейтральным элементом SYM(Zm) по операции умножения: i=i для SYM(Zm).

Существование обратного: для

любой подстановки существует

единственная обратная подстановка -1, удовлетворяющая условию

1= 1=i.

 

 

Число возможных подстановок

в

симметрической группе

Zm называется порядком SYM(Zm) и равно m! .

 

Определение. Ключом подстановки k для

Zmназывается последова-

тельность элементов симметрической группы Zm: k=(p0,p1,...,pn-1,...), pnSYM(Zm), 0n<

Подстановка, определяемая ключом k, является криптографическим преобразованием Tk, при помощи которого осуществляется преобразование n-граммы исходного текста (x0 ,x1,..,xn-1) в n-грамму шифрованного текста (y0 ,y1 ,...,yn-1):

yi=p(xi), 0i

где n – произвольное (n=1,2,..). Tk называется моноалфавитной подстановкой, если pнеизменно при любом i, i=0,1,..., в противном случае Tk называется многоалфавитной подстановкой.

Примечание. К наиболее существенным особенностям подстановки Tk относятся следующие:

1. Исходный текст шифруется посимвольно. Шифрования n-граммы

(x0 ,x1 ,..,xn-1) и ее префикса (x0 ,x1 ,..,xs-1) связаны соотношениями

Tk(x0 ,x1 ,..,xn-1)=(y0 ,y1 ,...,yn-1)

 

 

 

Tk(x0 ,x1 ,..,xs-1)=(y0 ,y1 ,...,ys-1)

 

 

 

2. Буква шифрованного

текста yi является функцией

только i-й

компоненты ключа pi

и i-й буквы исходного текста xi.

 

 

Подстановка Цезаря

 

 

 

 

Подстановка Цезаря является самым простым вариантом подстановки.

Она относится к группе моноалфавитных подстановок.

 

 

Определение.

Подмножество

Cm={Ck:

0km),

содержащееmподстановокCk:

j(j+k)

(mod m),

0k < m,называется

подстановкой Цезаря.

 

 

 

 

 

Умножение коммутативно, CkCj=CjCk=Cj+k,

C0

идентичная

подстановка, а обратной к Cкявляется Ck-1=Cm-k, где 0<k3.

Подстановка определяется по таблице замещения, содержащей пары соответствующих букв “исходный текст – шифрованный текст”. Для C3 подстановки приведены в Табл. 1. Стрелка () означает, что буква исходного текста (слева) шифруется при помощи C3 в букву шифрованного текста (справа).

Определение. Системой

Цезаря называется

моноалфавитная

подстановка, преобразующаяn-грамму исходного

текста (x0, x1 ,..,xn-1)

в n грамму шифрованного текста (y0 ,y1 ,...,yn-1) в соответствии с правилом yi=Ck(xi), 0i

При своей несложности система легко уязвима. Если злоумышленник имеет

1)шифрованный и соответствующий исходный текст или

2)шифрованный текст выбранного злоумышленником исходного текста,то определение ключа и дешифрование исходного текста тривиальны.

Более эффективны

обобщения

подстановки Цезаря - шифр

Хилла и шифр Плэйфера.

Они основаны

на подстановке не отдельных

символов, а 2-грамм (шифр Плэйфера) или n-грамм1 (шифр Хилла). При более высокой криптостойкости они значительно сложнее для реализации и требуют достаточно большого количества ключевой информации.

Многоалфавитные системы. Системы одноразового использования.

Слабая криптостойкость моноалфавитных подстановок преодолевается с применением подстановок многоалфавитных.

Многоалфавитная подстановка определяется ключом =(1,

2, ...), содержащим не менее двух различных подстановок. В начале рассмотрим многоалфавитные системы подстановок с нулевым начальным

смещением.

Пусть {Ki: 0imPкл{(K0, K1, ..., Kn-1)=(k0, k1, ..., kn-1)}=(1/m)n

Система одноразового использования преобразует исходный текст

X=(X0, x1, ..., xn-1) в шифрованный текст Y=(Y0, y1, ..., yn-1) при помощи подстановки Цезаря

Yi=CKi(xi)=(Ki+Xi) (mod m) i=0...n-1 (1)

Для такой системы подстановки используют также термин “одноразовая лента” и “одноразовый блокнот”. Пространство ключей К

системы одноразовой подстановки является вектором рангов (K0, K1, ..., Kn-1) и содержит mn точек.

Можно выдвинуть и обобщенную систему Вижинера. ЕЕ можно сформулировать не только при помощи подстановки Цезаря.

Пусть x - подмножество симметрической группы SYM(Zm).

Определение. r-многоалфавитный ключ шифрования есть r-набор = (0, 1, ..., r-1) с элементами в x.

Обобщенная система Вижинера преобразует исходный текст

(x0, x1 ,..., xn-1) в шифрованный текст (y0 ,y1 ,...,yn-1) при помощи ключа = (0, 1, ..., r-1) по правилу

VIGk : (x0 ,x1 ,...,xn-1) (y0 ,y1 ,...,yn-1) = (00), 11), ..., n-1(xn-1)),

где используется условие i = i mod r .

Следует признать, что и многоалфавитные подстановки в принципе доступны криптоаналитическому исследованию. Криптостойкость многоалфавитных систем резко убывает с уменьшением длины ключа.

Тем не менее такая система как шифр Вижинера допускает несложную аппаратную или программную реализацию и при достаточно большой длине ключа может быть использован в современных ИС.

Задание для лабораторной работы:

1)Для шифра простой замены, используя генератор случайных чисел, построить таблицу замен.

2)Написать программы шифрования и расшифровки, использующие таблицу замен.

3)Провести анализ стойкости шифра.

Контрольные вопросы

1.Что такое Система шифрования Цезаря?

2.Что такое Система шифрования Вижинера?

3.Что такое Шифр «двойной квадрат» Уитстона?

4.Чем отличаются моноалфавитные и многоалфавитные

системы?

5.Что такое одноразовая система шифрования?

6.Как осуществляется шифрование методом Вернама?

7.Что такое Роторные машины.

Лабораторная работа №6 «Симметричные системы шифрования. Изучение криптографических методов перестановки»

Цель работы:Изучить особенности построения шифров перестановки.

Теоретический материал:

Перестановкой набора целых чисел (0,1,...,N-1) называется его переупорядочение. Для того чтобы показать, что целое i перемещено из позиции i в позицию (i), где 0 (i) < n, будем использовать запись

((0), (1),..., (N-1)).

Число перестановок из (0,1,...,N-1) равно n!=1*2*...*(N-1)*N. Введем обозначение для взаимно-однозначного отображения (гомоморфизма) набора S={s0,s1, ...,sN-1}, состоящего из n элементов, на себя.

:S S

:si s(i), 0 i < n

Будем говорить, что в этом смысле является перестановкой элементов S. И, наоборот, автоморфизм S соответствует перестановке целых чисел (0,1,2,.., n-1).

Криптографическим преобразованием T для алфавита Zm называется

последовательность автоморфизмов: T={T(n):1n<}

T(n): Zm,nZm,n, 1n<

Каждое T(n) является, таким образом, перестановкой n-грамм из Zm,n. Поскольку T(i) и T(j) могут быть определены независимо при ij, число

криптографических преобразований исходного текста размерности n равно (mn)!3. Оно возрастает непропорционально при увеличении m и n: так, при m=33 и n=2 число различных криптографических преобразований равно 1089!. Отсюда следует, что потенциально существует большое число отображений исходного текста в шифрованный.

Практическая реализация криптографических систем требует, чтобы преобразования {Tk:kK} были определены алгоритмами, зависящими от относительно небольшого числа параметров (ключей).

Задание для лабораторной работы:

1)Написать программы шифрования и расшифровки, использующие перестановку байт по ключу.

2)Провести анализ стойкости шифров.

Контрольныевопросы

1.Опишите суть шифров перестановки.

2.Применение шифрующих таблиц.

3.Применение магических квадратов.

4.Шифры простой замены.

5.Полибианский квадрат.

6.Шифрование методом гаммирования.

7.Методы генерации псевдослучайных последовательностей

чисел

Лабораторная работа №7«Ассиметричные алгоритмы шифрования данных. Алгоритм RSA»

Цель работы:освоить методику работы ассиметричных алгоритмов шифрования, где существует два ключа – один для шифрования, другой для дешифрования.

Теоретические сведения

Алгоритм RSA разработан в 1977 г. Роном Ривестом, Ади Шамиром и Леном Адлеманом и опубликован в 1978 г. С тех пор алгоритм Rivest- Shamir-Adleman (RSA) широко применяется практически во всех приложениях, использующих криптографию с открытым ключом.

Алгоритм RSA:

1. Вычисление ключей Важным моментом в этом криптоалгоритме является создание пары

ключей: открытого и закрытого. Для алгоритма RSA этап создания ключей состоит из следующих операций:

1.1.Выбираются два простых различных числа p и q. Вычисляется их произведение n = p · q, называемое модулем. Под простым числом будем понимать такое число, которое делится только на 1 и на само себя. Взаимно простыми числами будем называть такие числа, которые не имеют ни одного общего делителя, кроме единицы.

1.2.Вычисляется функция Эйлера Ф(n) = (p – 1) · (q – 1).

1.3.Выбирается произвольное число e (e < n), такое, что 1 < e < Ф(n) и

не имеет общих делителей, кроме 1 (взаимно простое) с числом

(p – 1) (q – 1).

1.4.Вычисляется d методом Евклида таким образом, что (e · d – 1) делится на (p – 1) · (q – 1).

1.5.Два числа (е, n) публикуются как открытый ключ.

1.6.Число d хранится в секрете – закрытый ключ есть пара (d, n), который позволит читать все послания, зашифрованные с помощью пары чисел (е, n).

2. Шифрование Шифрование с помощью пары чисел производится следующим

образом:

2.1.Отправитель разбивает своѐ сообщение M на блоки mi. Значение mi<n, поэтому длина блока mi в битах не больше k = [log2(n)] бит, где квадратные скобки обозначают, взятие целой части от дробного числа.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]