Открыть Электронные книги
Категории
Открыть Аудиокниги
Категории
Открыть Журналы
Категории
Открыть Документы
Категории
г. Нью-Дели
2022 год
ОГЛАВЛЕНИЕ
ВВЕДЕНИЕ..............................................................................................................3
ГЛАВА 1. Теоретические основы понятия «криптография»..............................5
1.1. Криптография. Основные понятия.................................................................5
1.2. История развития Криптографии.................................................................10
1.3. Современный период развития криптографии............................................17
ГЛАВА 2. Практическое определение криптостойкости пользовательских
паролей...................................................................................................................20
2.1. Определение зависимости времени подбора ключа от длины пароля......20
2.2. Рекомендации при создании пользовательских паролей...........................22
ЗАКЛЮЧЕНИЕ.....................................................................................................24
СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ.............................................25
2
ВВЕДЕНИЕ
Сегодня каждый пользователь сети Интернет периодически
регистрируется на различных сайтах и сервисах. При каждой регистрации
необходимо придумывать пароль, чтобы защитить свой аккаунт. Многие
люди придумывают простые пароли, что является серьезной ошибкой.
Итак, когда пользователю необходимо зарегистрироваться где-либо (в
социальных сетях, интернет-магазинах, форумах, почте, играх) у него
возникает определенная дилемма: с одной стороны, используя генератор
паролей можно создавать надежную защиту своего аккаунта. Но в этом
случае к каждому ресурсу следует формировать уникальный пароль, который
нужно будет обязательно запомнить или записать. Мысль «меня не коснется
деятельность хакеров» подталкивает большинство людей выбирать очень
простые пароли, которые легко запомнить. Более того, один и тот же пароль
используется ими на разных сайтах и платформах. Конечно, это упрощает
работу в сети интернет, но, к сожалению, серьезно влияет на безопасность
личных данных пользователя. С помощью специального программного
обеспечения мошенники могут быстро взломать аккаунты с простыми
паролями.
Взлом аккаунта грозит утечкой конфиденциальных данных.
Злоумышленники могут завладеть личной информацией, например,
содержимым почтовой переписки, телефонными номерами, данными о
банковских картах и т.д. Затем данная информация продается третьим лицам,
либо используется для разных черных схем. Это может привести к
появлению серьезных проблем у пользователя, и даже к существенным
материальным потерям. Поэтому в настоящее время актуально знать о
надежности пароля и правилах, которыми необходимо руководствоваться
при создании пользовательских паролей.
Объект исследования: математические основы криптографии.
Предмет исследования: анализ криптостойкости пользовательских
паролей.
3
Цель проекта – определить какая парольная защита на современном
этапе технического развития наиболее надежна.
Задачи проекта:
1. Изучить основные понятия, используемые в криптографии.
2. Рассмотреть историю развития криптографии.
3. Рассмотреть применение криптографии на практике в
современный период.
4. Математически обосновать требования к длине пароля и
используемым символам при его создании.
5. Выявить и графически продемонстрировать зависимость времени
подбора ключа современными техническими средствами от длины пароля.
6. Составить рекомендации по созданию пользовательских паролей.
4
ГЛАВА 1. Теоретические основы понятия «криптография»
1.1. Криптография. Основные понятия
Проблемами защиты информации путем ее преобразования занимается
криптология (kryptos - тайный, logos - наука). Криптология разделяется на
два направления - криптографию и криптоанализ. Цели этих направлений
прямо противоположны.
Криптография занимается поиском и исследованием математических
методов преобразования информации.
Сфера интересов криптоанализа - исследование возможности
расшифровывания информации без знания ключей.
Современная криптография включает в себя четыре основных
направления:
- симметричные криптосистемы;
- криптосистемы с открытым ключом;
- системы электронной подписи;
- управление ключами.
Криптография дает возможность преобразовать информацию таким
образом, что ее прочтение (восстановление) возможно только при знании
ключа.
В качестве информации, подлежащей шифрованию и дешифрованию,
будут рассматриваться тексты, построенные на некотором алфавите. Под
этими терминами понимается следующее:
Алфавит - конечное множество используемых для кодирования
информации знако;
Текст - упорядоченный набор из элементов алфавита.
В качестве примеров алфавитов, используемых в современных
информационных системах (ИС) можно привести следующие:
5
- алфавит
Zalignl¿4 ¿¿¿ – 43 буквы русского алфавита, знаки препинания и
пробела;
- алфавит
Zalignl¿256¿¿¿ – символы, входящие в стандартные коды ASCII и
КОИ-8;
6
Криптографическая система представляет собой семейство T
преобразований открытого текста. Члены этого семейства индексируются,
или обозначаются каким-нибудь символом, например k. Параметр k является
ключом. Пространство ключей K - это набор возможных значений ключа.
Обычно ключ представляет собой последовательный ряд букв алфавита.
Цель криптографической системы заключается в том, чтобы зашифровать
осмысленный исходный текст, получив в результате совершенно
бессмысленный на взгляд шифрованный текст. Получатель, которому он
предназначен, должен быть способен расшифровать эту шифрограмму,
восстановив, таким образом, соответствующий ей открытый текст. При этом
противник (называемый также криптоаналитиком) должен быть неспособен
раскрыть исходный текст. Существует важное отличие между
дешифрованием и раскрытием криптосистемы. Раскрытием криптосистемы
назы вается результат работы криптоаналитика, приводящий к возможности
эффективного раскрытия любого, зашифрованного с помощью данной
криптосистемы, открытого текста. Степень неспособности криптосистемы к
раскрытию называется ее стойкостью (криптостойкостью), или другими
словами криптостойкостью называется характеристика шифра,
определяющая его стойкость к дешифрованию без знания ключа (т.е.
криптоанализу). Имеется несколько показателей криптостойкости, среди
которых:
- количество всех возможных ключей;
- среднее время, необходимое для криптоанализа.
Рис. 1
11
шифрованным сообщением, постепенно сдвигая ее к вершине. В какой-то
момент начнут просматриваться куски сообщения. Так можно определить
диаметр скиталы.
Были и другие способы защиты информации, разработанные в античные
времена. Например, древнегреческий полководец Эней Тактика в IV веке до
н.э. предложил устройство, названное впоследствии "диском Энея" (рис.4).
Принцип которого был таков: на диске диаметром 10-15 см и толщиной 1-2
см высверливались отверстия по числу букв алфавита. В центре диска
помещалась "катушка" с намотанной на ней ниткой достаточной длины. При
зашифровании нитка "вытягивалась" с катушки и последовательно
протягивалась через отверстия, в соответствии с буквами шифруемого
текста. Диск и являлся посланием. Получатель послания последовательно
вытягивал нитку из отверстий, что позволяло ему получать передаваемое
сообщение, но в обратном порядке следования букв. При перехвате диска
недоброжелатель имел возможность прочитать сообщение тем же образом,
что и получатель. Но Эней предусмотрел возможность легкого уничтожения
передаваемого сообщения при угрозе захвата диска. Для этого было
достаточно выдернуть "катушку" с закрепленным на ней концом нити до
полного выхода всей нити из всех отверстий диска.
Рис. 2
12
простой замены. Он основан на различной частоте повторяемости букв в
тексте. В этом разделе есть перечень букв в порядке их повторяемости на
основе изучения текста Корана. Заметим, что в русском тексте чаще всего
встречается буква “О”, затем буква “Е” и на третьем месте стоят буквы “И” и
“А”. Более точно: на 1000 букв русского текста в среднем приходится 90 букв
“О”, 72 буквы “Е” или “Ё”, 60 букв “И” и “А” и т.д.
Заметным вкладом Энея в криптографию является предложенный им
так называемый книжный шифр, описанный в сочинении "Об обороне
укрепленных мест". Эней предложил прокалывать малозаметные дырки в
книге или в другом документе над буквами (или под ними) секретного
сообщения. Интересно отметить, что в первой мировой войне германские
шпионы использовали аналогичный шифр, заменив дырки на точки,
наносимые симпатическими чернилами на буквы газетного текста. Книжный
шифр в современном его виде имеет несколько иной вид. Суть этого шифра
состоит в замене букв на номер строки и номер этой буквы в строке и заранее
оговоренной странице некоторой книги. Ключом такого шифра является
книга и используемая страница в ней. Этот шифр оказался "долгожителем" и
применялся даже во времена второй мировой войны.
В Древней Греции (II в. до н. э.) был также известен шифр, называемый
квадрат Полибия (рис.4). Это устройство представляло собой квадрат 5 х 5,
столбцы и строки которого нумеровали цифрами от 1 до 5. В каждую клетку
этого квадрата записывалась одна буква. (В греческом варианте одна клетка
оставалась пустой, в латинском – в одну клетку помещали две буквы i и j.) В
результате каждой букве отвечала пара чисел и шифрованное сообщение
превращалось в последовательность пар чисел.
Пример 1. 13 34 22 24 44 34 15 42 22 34 43 45 32
Это сообщение записано при использовании латинского варианта квадрата
Полибия, в котором буквы расположены в алфавитном порядке. ("Cogito,
ergo sum" – лат, "Я мыслю, следовательно существую").
13
1 2 3 4 5 6
1 А Б В Г Д Е
2 Ё Ж З И Й К
3 Л М Н О П Р
4 С Т У Ф Х Ц
5 Ч Ш Щ Ъ Ы Ь
Рис.
6 4.ЭКвадрат
Ю Я Полибея
1 2 3
14
расположении букв в квадрате возникает одно затруднение: либо нужно
помнить отправителю и получателю сообщения заданный произвольный
порядок следования букв в таблице (ключ шифра), что вообще говоря
затруднительно, либо иметь при себе запись этих букв. Во втором случае
появляется опасность ознакомления с ключом посторонних лиц.
В 1 в. н.э. Ю. Цезарь во время войны с галлами, переписываясь со своими
друзьями в Риме, заменял в сообщении первую букву латинского алфавита
(А) на четвертую (D), вторую (В) – на пятую (Е), наконец, последнюю – на
третью:
⇓ABCDEFGHIJKLMNOPQRSTUVWXYZ
⇑DEFGHIJKLMNOPQRSTUVWXYZABC
Пример 1. Донесение Ю. Цезаря Сенату об одержанной им победе
над Понтийским царем выглядело так:
YHQL YLGL YLFL ("Veni, vidi, vici" – лат. "Пришел, увидел,
победил").
Император Август (1 в. н. э.) в своей переписке заменял первую букву
на вторую, вторую – на третью и т. д. Последнюю – на первую:
⇓ABCDEFGHIJKLMNOPQRSTUVWXYZ
⇑BCDEFGHIJKLMNOPQRSTUVWXYZA
Пример 2. Любимое изречение императора Августа выглядело так:
GFTUJOB MFOUF ("Festina lente" – лат. "Торопись медленно") .
Квадрат Полибия, шифр Цезаря входят в класс шифров, называемых
подстановка или простая замена, т.е. это шифры, в которых каждой букве
алфавита соответствует буква, цифра, символ или какая-нибудь их
комбинация.
Неудобство шифров типа подстановка (простая замена) в случае
использования стандартного алфавита очевидно. Таблица частот
встречаемости букв алфавита позволяет определить одни или несколько
символов, а этого иногда достаточно для дешифрования всего сообщения.
Поэтому обычно пользуются разными приемами, чтобы затруднить
15
дешифрование. Для этой цели используют многобуквенную систему
шифрования – систему, в которой одному символу отвечают одна или
несколько комбинаций двух и более символов. Другой прием –
использование нескольких алфавитов. В этом случае для каждого символа
употребляют тот или иной алфавит в зависимости от ключа, который связан
каким-нибудь способом с самим символом или с его порядком в
передаваемом сообщении.
Итак, условно историю криптографии можно разделить на несколько
периодов:
- Первый период (приблизительно с 3-го тысячелетия до н.э.)
характеризуется господством моноалфавитных шифров (основной принцип –
замена алфавита исходного текста другим алфавитом через замену букв
другими буквами или символами).
- Второй период (хронологические рамки – с IX века на Ближнем
Востоке и с XV века в Европе – до начала XX века) ознаменовался введением
в обиход полиалфавитных шифров.
- Третий период (с начала и до середины XX века) характеризуется
внедрением электромеханических устройств в работу шифровальщиков, при
этом продолжалось использование полиалфавитных шифров.
- Четвёртый период – с середины до 70-х годов XX века – период
перехода к математической криптографии.
- Современный период развития криптографии (с конца 1970-х
годов по настоящее время) отличается зарождением и развитием нового
направления – криптография с открытым ключом. Её появление знаменуется
не только новыми техническими возможностями, но и сравнительно
широким распространением криптографии для использования частными
лицами (в предыдущие эпохи использование криптографии было
исключительной прерогативой государства) Современная криптография
образует отдельное научное направление на
стыке математики и информатики — работы в этой области публикуются в
16
научных журналах, организуются регулярные конференции. Итак,
практическое применение криптографии стало неотъемлемой частью жизни
современного общества.
1.3. Современный период развития криптографии
Цели криптографии менялись на протяжении всей её истории. Сначала
она служила только для обеспечения секретности, то есть чтобы
препятствовать несанкционированному доступу к информации,
передаваемой по военным и дипломатическим каналам связи. По мере
развития информатики криптография носила широкое применение для
защиты информации во многих прикладных областях: истории болезни,
юридические и финансовые документы, закрытые коммерческие данные и
т.п. Криптография используется в сотовой связи, платном цифровом
телевидении при подключении к Wi-Fi и на транспорте для защиты билетов
от подделок, и в банковских операциях, и даже для защиты электронной
почты от спама.
На современном этапе развития криптография рассматривается как
средство защиты конфиденциальных данных от:
- несанкционированного прочтения. Это одна из основных задач
криптографии, для ее решения применяется шифрование данных, т.е. такое
их преобразование, при котором прочитать их могут только законные
пользователи, обладающие соответствующим ключом. Обеспечение
целостности данных — гарантии того, что при передаче или хранении
данные не были модифицированы пользователем, не имеющим на это права.
Под модификацией понимается вставка, удаление или подмена информации,
а также повторная пересылка перехваченного ранее текста;
- преднамеренного нарушения целостности, либо уничтожения;
- нежелательного копирования;
- фальсификации. Иначе говоря, обеспечение аутентификации. Под
аутентификацией понимается проверка подлинности субъектов (сторон при
обмене данными, автора документов, и т.д.) или подлинности самой
17
информации. Частным случаем аутентификации является идентификация —
процедура доказательства субъектом того, что он действительно является
именно тем, за кого себя выдает. Во многих случаях субъект X должен не
просто доказать свои права, но сделать это так, чтобы проверяющий субъект
(Y) не смог впоследствии сам использовать полученную информацию для
того, чтобы выдать себя за X. Подобные доказательства называются
«доказательствами с нулевым разглашением»;
- отказа от авторства — предотвращение возможности отказа
субъектов от совершенных ими действий (обычно — невозможности отказа
от подписи под документом). Эта задача неотделима от двойственной —
обеспечение невозможности приписывания авторства. Наиболее яркий
пример ситуации, в которой стоит такая задача — подписание договора
двумя или большим количеством лиц, не доверяющих друг другу. В такой
ситуации все подписывающие стороны должны быть уверены в том, что в
будущем, во-первых, ни один из подписавших не сможет отказаться от своей
подписи и, во-вторых, никто не сможет модифицировать, подменить или
создать новый документ (договор) и утверждать, что именно этот документ
был подписан.
Одним из основополагающих требований, предъявляемых к
криптографической защите, является принцип ее равнопрочности. То есть,
если защита может быть разделена на звенья, то все эти звенья должны иметь
одинаковую стойкость к взлому.
Принципы применения криптографических алгоритмов:
- ключи к алгоритму шифрования держатся в секрете;
- алгоритмы, форматы файлов и размеры ключей могут быть
общеизвестными.
С 1970-х криптографические алгоритмы, основанные на использовании
открытого распределения ключей, позволили создать систему комплексного
обеспечения безопасности информации в больших компьютерных сетях и
информационных базах данных. Причиной тому явилась особенность
18
криптосистем с открытыми ключами (построенных на основе
асимметричных алгоритмов шифрования), уже упомянутая ранее,
использовать гораздо меньшее количество ключей для одного и того же
количества пользователей.
Существует немало готовых алгоритмов шифрования, имеющих
высокую криптостойкость, шифровщику остается только создать свой
уникальный ключ для придания информации необходимых
криптографических качеств. Ключ используется как для шифрования, так и в
процессе расшифрования.
19
ГЛАВА 2. Практическое определение криптостойкости
пользовательских паролей
2.1. Определение зависимости времени подбора ключа от длины пароля
При создании пароля будем использовать заглавные латинские буквы:
от А до Z (26 символов), строчные латинские буквы: от а до z (26 символов),
цифры: от 0 до 9 (10 символов), символы (в их перечь входят следующие:
(пробел) ! " # $ % & ' ( ) * + , - . / : ; < = > ? @ [ \ ] ^ _` { | } ~ (33 символа), а
также нельзя использовать несколько одинаковых символов подряд. Значит,
всего 26+26+10+33=95 символов.
Для проведения вычислений необходимо воспользоваться правилом
умножения.
Правило умножения (правило «и») — одно из основных
правил комбинаторных принципов. Согласно ему, если элемент A можно
выбрать n способами, и при любом выборе A элемент B можно выбрать m
способами, то пару (A, B) можно выбрать n·m способами.
Таким образом, количество комбинаций первого набора,
удовлетворяющим требования об использовании прописных и заглавных
букв, цифр и символах будет составлять (26*26*10*33) 223 080.
Теперь рассмотрим возможные наборы комбинаций символов в
порядке возрастания длины пароля. Стоит отметить, что теперь добавляется
требование о неиспользовании нескольких одинаковых символов подряд.
Следовательно,
26*26*10*33*94 = 20 969 520 комбинаций;
26*26*10*33*94*94 = 1 971 134 880 комбинаций;
26*26*10*33*94*94*94 = 185 286 678 720 комбинаций;
26*26*10*33*94*94*94*94 = 17 416 947 799 680 комбинаций;
26*26*10*33*94*94*94*94*94 = 1 637 193 093 169 920 комбинаций;
26*26*10*33*94*94*94*94*94*94 = 153 896 150 757 972 480 комбинаций;
Используя данные, собранные в тестах Intel и John the Ripper,
рассчитаем количество ключей в секунду (количество попыток ввода пароля
20
в секунду при атаке методом брутфорс). Брутфорс (от англ. brute force —
грубая сила) — метод угадывания пароля (или ключа, используемого для
шифрования), предполагающий систематический перебор всех возможных
комбинаций символов до тех пор, пока не будет найдена правильная
комбинация.
Для примера возьмем процессор Intel® Core™ i9-10900X серии X –
один из наиболее мощных серийных процессоров на данный момент
времени.
Таким образом, GFLOPS процессора = 8641.
Количество ключей (cкорость перебора комбинаций) в секунду ≈
14273 комбинации/секунду. Данное значение собрано и рассчитано на основе
тестов John the Ripper. John The Ripper — свободная программа,
предназначенная для восстановления паролей по их хешам. Хеш-функция,
или функция свёртки — функция, осуществляющая преобразование массива
входных данных произвольной длины в выходную битовую строку
установленной длины, выполняемое определённым алгоритмом.
Количество комбинаций
Время в секундах = скорость перебора комбинаций .
Итак, имея
20 969520
5-символьный пароль, для дешифрования потребуется 14273
≈ 1469
часов;
185286 678 720
7-символьный - 14273
≈ 216360 минут ≈ 3606 часов ≈ 150 дней;
17 416 947 799 680
8-символьный - 14273
≈ 20337873 минут ≈ 338964 часов ≈
1
www.intel.com
21
1637 193 093 169 920
9-символьный - 14273
≈ 1911760075 минут ≈ 31862667
3637 лет
38 лет
39 часов
22
Таким образом, на графике видно, что резкий рост функции
наблюдается на интервале [8;+∞). Значит, пароль длиной не менее 8
символов потребует достаточно больших временных затрат для его взлома.
Поэтому пароль данной длины считается надежным.
2.2. Рекомендации при создании пользовательских паролей
Основываясь на полученном результате при определении зависимости
времени подбора ключа от длины пароля и общепринятых требованиях
экспертов по кибербезопасности2, можно сформулировать следующие
рекомендаций при создании пользовательских паролей:
1. использовать заглавные и строчные буквы,
2. цифры, специальные символы;
3. не использовать одинаковые символы подряд;
4. длина создаваемой комбинации должна составлять не менее 8
символов.
Приветствуется использование генератора паролей, с помощью
которого можно быстро сформировать очень надежную комбинацию
символов, которая точно обезопасит аккаунт от взлома3.
Стоит отметить, что применение паролей для доступа к сайтам
является несовершенной формой обеспечения безопасности
конфиденциальных данных. Именно поэтому по возможности следует
активировать дополнительные опции безопасности (например,
двухфакторную аутентификацию).
2
Ссылка на экспертов
3
www.onlinepasswordgenerator.ru
23
ЗАКЛЮЧЕНИЕ
По мере развития и усложнения средств, методов и форм
автоматизации процессов обработки информации повышается зависимость
общества от степени безопасности используемых им информационных
технологий, которая определяется степенью защищенности и устойчивости
как компьютерных систем в целом, так и отдельных программ. Для
обеспечения защиты информации в настоящее время не существует какого-
то одного технического приема или средства, однако общим в решении
многих проблем безопасности является использование криптографии и
криптографических преобразований информации.
Изучив материал по данной теме, я выяснила, что криптография – это
наука, занимающаяся методами шифрования и дешифрования. В процессе
работы я изучила основные понятия, используемые в криптографии, чтобы
иметь базу знаний для дальнейшей работы над проектом. К тому же я
рассмотрела и систематизировала знания по истории криптографии. Этот шаг
дал мне «полную картину значимости» криптологии и показал, что данная
наука существует на протяжении тысячелетий. Также я рассмотрела способы
применения криптографии на практике: защита от несанкционированного
прочтения, защита от преднамеренного нарушения целостности, либо
полного уничтожения информации, защита от нежелательного копирования
информации, защита от фальсификации, обеспечение аутентификации,
предотвращение отказа от авторства. Затем с помощью математических
методов и вычислений были получены данные для построенния графика
зависимости времени подбора ключа современным техническим средством
от длины пароля. На основе полученных результатов было определено какая
парольная защита на современном этапе технического развития наиболее
надежна. Полученные выводы легли в основу рекомендаций по созданию
пользовательских паролей. Таким образом, могу сказать, что поставленные
задачи реализованы и цель работы достигнута.
24
СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ
1. Математические основы криптологии: Учебное пособие / Сост.
Коробейников А. Г, Ю.А.Гатчин. – СПб: СПб ГУ ИТМО, 2004. – 106 с.
2. Математические основы криптологии: Учебно-методическое
пособие / Сост. Г.А. Галуев. – Таганрог: ТРТУ, 2003. – 120с.
3. Математические основы криптографии : тексты лекций для
студентов специальности 1-98 01 03 «Программное обеспечение
информационной безопасности мобильных систем» / Сост. Е. И. Ловенецкая.
– Минск : БГТУ, 2019. – 171 с.
4. Практическое применение средств асимметричной криптографии /
Сост. К. Е. Климентьев. – Самара: Самарcкий университет, 2017. – 14 с.
5. Введение в криптографию. Методические указания для студентов
механико-математического факультета. / Сост. М. Г. Адигеев. – Ростов-на-
Дану: РТУ, 2002. – 35 с.
6. Введение в криптографию. / Под ред. В.В. Ященко. — 2-е изд.,
испр. — М.: МЦНМО: «ЧеРо», 1999. — 272 с.
7. Openwall Community Wiki: сообщество опытных пользователей и
разработчиков программного обеспечения: сайт. - США, 2013. - URL:
https://openwall.info (дата обращения: 22. 11. 2021).
8. Better Buys: компания, предоставляющая экспертные заключения о
программном обеспечении и технологиях: сайт. - Филадельфия, 2000. URL:
https://www.betterbuys.com (дата обращения: 19.03.2021).
25