Разработка программы шифрования текстовой информации



Дисциплина: Информатика, Программирование, Базы данных
Тип работы:  Дипломная работа
Бесплатно:  Антиплагиат
Объем: 59 страниц
В избранное:   
Министерство образования и науки Республики Казахстан
Казахский гуманитарно - юридический инновационный университет

Допущена к защите
Заведующий кафедрой
информатики и математики
________А.Ж. Карипжанова


ДИПЛОМНАЯ РАБОТА

На тему: Разработка программы шифрования текстовой информации

по специальности 5В060200 - Информатика

Выполнила Оспанов А.К.

Научный руководитель
магистр, ст.преподаватель Рахматуллина З.Т.

Семей, 2016
Содержание

Введение 3
1 Основные понятия криптографии
1.1 Предмет и задачи криптографии. История развития 5
1.2 Криптографические атаки. Криптографический протокол 14
1.3 Модель сетевой безопасности 23
2 Разработка программы шифрования текстовой информации
2.1 Простейшие методы шифрования с закрытым ключом 27
2.2 Введение в криптографию с открытым ключом 44
2.3 Разработка программы шифрования текстовых данных 54
Заключение
Список использованной литературы
Приложение

Введение

Актуальность. Вопросам защиты информации в настоящее время уделяется большое внимание, и это не случайно. Телекоммуникационные системы, активно развивающиеся в последнее время, являются артериями современных глобальных информационных систем.
В настоящее время решением этой проблемы занимаются квалифицированные специалисты по комплексной защите информации. Среди разнообразных средств защиты информации криптографические методы занимают особое место.
С одной стороны, это связано с тем, что криптографические способы защиты сообщений известны людям и успешно применяются ими уже не одно тысячелетие.
С другой стороны, новые достижения криптографии позволяют решать не только классическую задачу защиты данных от несанкционированного доступа, но и множество других задач, недоступных для средств защиты информации других типов. Это и задача аутентификации пользователей информационных систем, и проблема формирования цифровой подписи к электронным документам, и возможности использования так называемых электронных денег.
Долгое время развитие криптографической теории шло не слишком быстрыми темпами, однако в ХХ столетии, благодаря достигнутым в математике результатам, произошел резкий скачок в области криптографии. Последние десятилетия накопление практического опыта использования различных алгоритмов и протоколов происходит настолько быстро, что книга, посвященная криптографическим методам защиты информации, не сможет долгое время претендовать на полноту изложения.
Таким образом, актуальность темы дипломной работы заключается в том, что в последнее время она становится все более обсуждаемой и востребованной на государственном и международном уровнях. Информация, циркулирующая в таких системах, представляет существенную ценность и поэтому является уязвимой к различного рода злоупотреблениям. Поэтому именно в последние десятилетия стала столь актуальной проблема защиты информации.
Целью дипломной работы является создание программы шифрования текстовых данных.
В соответствии с целью дипломной работы были поставлены следующие задачи:
oo рассмотреть основные понятия из области криптографии;
oo изучить основные разработанные на данный момент методы шифрования данных;
oo разработать программу шифрования текстовых данных.
Предметом исследования является область защиты информации. Объектом исследования являются методы защиты информации.
Новизна дипломной работы состоит в разработке программы шифрования текстовых данных современными эффективными методами криптографии.
Теоретическая значимость дипломной работы: возможность использования материалов дипломной работы для изучения криптографических основ безопасности и современных эффективных методов шифрования данных.
Практическая значимость дипломной работы: возможность использования разработанной программы в практической деятельности для шифрования информации, представленной в текстовой форме.
Дипломная работа состоит из введения, двух глав, заключения, списка использованной литературы и приложения.
Первая глава Основные понятия криптографии освещает следующие вопросы: предмет и задачи криптографии, история развития; криптографические атаки, криптографический протокол; модель сетевой безопасности.
Вторая глава носит название Разработка программы шифрования текстовой информации и включает следующие разделы: Простейшие методы шифрования с закрытым ключом, Введение в криптографию с открытым ключом и Разработка программы шифрования текстовых данных.

1 Основные понятия криптографии

1.1 Предмет и задачи криптографии. История развития

Проблемой защиты информации при ее передаче между абонентами люди занимаются на протяжении всей своей истории. Человечеством изобретено множество способов, позволяющих в той или иной мере скрыть смысл передаваемых сообщений от противника. На практике выработалось несколько групп методов защиты секретных посланий. Назовем некоторые из них, применяющиеся так же давно, как и криптографические.
Первым способом является физическая защита материального носителя информации от противника. В качестве носителя данных может выступать бумага, компьютерный носитель (DVD-диск, флэш-карта, магнитный диск, жесткий диск компьютера и другие устройства). Для реализации этого способа необходим надежный канал связи, недоступный для перехвата.
В различное время для этого использовались почтовые голуби, специальные курьеры, радиопередачи на секретной частоте. Методы физической защиты информации используются и в современных автоматизированных системах обработки данных. Так, например, комплексные системы защиты информации невозможны без систем ограждения и физической изоляции, а также без охранных систем.
Второй способ защиты информации, известный с давних времен - стеганографическая защита информации. Этот способ защиты основан на попытке скрыть от противника сам факт наличия интересующей его информации. При стеганографическом методе защиты от противника прячут физический носитель данных или маскируют секретные сообщения среди открытой, несекретной информации.
К таким способам относят, например, запрятывание микрофотографии с тайной информацией в несекретном месте: под маркой на почтовом конверте, под обложкой книги и т.д. К стеганографии относятся также такие известные приемы, как запрятывание секретного послания в корешках книг, в пуговицах, в каблуках, в пломбе зуба и другие.
Некоторые из методов были разработаны еще в древние времена. Так, например, греки нашли необычное решение: они брили наголо голову раба и выцарапывали на ней свое послание. Когда волосы на голове раба отрастали вновь, его посылали доставить сообщение. Получатель брил голову раба и прочитывал текст. К сожалению, на отправку сообщения и получение ответа таким способом уходило несколько недель.
В более поздние времена в этом направлении наибольшее распространение получили химические (симпатические) чернила. Текст, написанный этими чернилами между строк несекретного сообщения, невидим. Он появлялся только в результате применения определенной технологии проявления.
В условиях повсеместного использования информационных технологий возникают новые стеганографические приемы. Например, известен способ, при котором секретное сообщение прячется в файле графического изображения. При использовании этого способа младший значащий бит в описании каждого пикселя изображения заменяется битом сообщения.
Разделив все исходное сообщение на биты и разместив эти биты по всему графическому файлу, мы пересылаем изображение с замаскированным сообщением получателю.
Графическое изображение при этом меняется не слишком сильно, особенно если использовался режим с большим количеством цветов, например, с глубиной цвета 24 бита на пиксел. Это связано с тем, что человеческий глаз не может различать такое большое количество цветов. В результате в картинке размером всего 32 на 32 точки можно вместить тайное сообщение длиной 1024 бита или 128 байт.
Третий способ защиты информации - наиболее надежный и распространенный в наши дни - криптографический. Этот метод защиты информации предполагает преобразование информации для сокрытия ее смысла от противника.
Криптография в переводе с греческого означает тайнопись. В настоящее время криптография занимается поиском и исследованием математических методов преобразования информации.
Наряду с криптографией развивается и совершенствуется криптоанализ - наука о преодолении криптографической защиты информации. Криптоаналитики исследуют возможности расшифровывания информации без знания ключей. Успешно проведенный криптоанализ позволяет получить ключ шифрования, или открытый текст, или то и другое вместе.
Иногда криптографию и криптоанализ объединяют в одну науку - криптологию (kryptos - тайный, logos - наука), занимающуюся вопросами обратимого преобразования информации с целью защиты от несанкционированного доступа, оценкой надежности систем шифрования и анализом стойкости шифров. [1]
В настоящее время криптография прочно вошла в нашу жизнь. Перечислим лишь некоторые сферы применения криптографии в современном информатизированном обществе:
oo шифрование данных при передаче по открытым каналам связи (например, при совершении покупки в Интернете сведения о сделке, такие как адрес, телефон, номер кредитной карты, обычно зашифровываются в целях безопасности);
oo обслуживание банковских пластиковых карт;
oo хранение и обработка паролей пользователей в сети;
oo сдача бухгалтерских и иных отчетов через удаленные каналы связи;
oo банковское обслуживание предприятий через локальную или глобальную сеть;
oo безопасное от несанкционированного доступа хранение данных на жестком диске компьютера (в операционной системе Windows даже имеется специальный термин - шифрованная файловая система (EFS)). [2]
До начала ХХ века криптографические методы применялись лишь для шифрования данных с целью защиты от несанкционированного доступа. В двадцатом веке в связи с развитием техники передачи информации на дальние расстояния интерес к криптографии значительно возрос.
Благодаря созданию новых криптографических методов расширился и спектр задач криптографии. В настоящее время считается, что криптография предназначена решать следующие задачи:
oo собственно шифрование данных с целью защиты от несанкционированного доступа;
oo проверка подлинности сообщений: получатель сообщения может проверить его источник;
oo проверка целостности передаваемых данных: получатель может проверить, не было ли сообщение изменено или подменено в процессе пересылки;
oo обеспечение невозможности отказа, то есть невозможности как для получателя, так и для отправителя отказаться от факта передачи. [3]
Системы шифрования варьируются от самых элементарных до очень сложных. И если первые не требуют никаких математических познаний, то в последних используются понятия, знакомые лишь специалистам в некоторых областях математики и информатики.
При использовании криптографических методов должны учитываться затраты на защиту информации и на реализацию методов нападения. На практике стремятся к достижению компромисса между стоимостью шифрования и требуемой степенью обеспечения безопасности.
Теперь, узнав назначение криптографии, познакомимся с основными терминами, которые будем использовать при изучении криптографических методов защиты информации.
Шифр - совокупность заранее оговоренных способов преобразования исходного секретного сообщения с целью его защиты.
Исходные сообщения обычно называют открытыми текстами. В иностранной литературе для открытого текста используют термин plaintext.
Символ - это любой знак, в том числе буква, цифра или знак препинания.
Алфавит - конечное множество используемых для кодирования информации символов. Например, русский алфавит содержит 33 буквы от А до Я. Однако этих тридцати трех знаков обычно бывает недостаточно для записи сообщений, поэтому их дополняют символом пробела, точкой, запятой и другими знаками. [4]
Алфавит арабских цифр - это символы 0, 1, 2, 3, 4, 5, 6, 7, 8, 9. Этот алфавит содержит 10 знаков и с его помощью можно записать любое натуральное число.
Любое сообщение может быть записано также с помощью двоичного алфавита, то есть с использованием только нулей и единиц.
Сообщение, полученное после преобразования с использованием любого шифра, называется шифрованным сообщением (закрытым текстом, криптограммой). В иностранной литературе для закрытого текста используют термин ciphertext.
Преобразование открытого текста в криптограмму называется зашифрованием. Обратное действие называется расшифрованием. В англоязычной литературе терминам зашифрование расшифрование соответствуют термины encipheringdeciphering.
Ключ - информация, необходимая для шифрования и расшифрования сообщений. [5]
С точки зрения русского языка термины расшифрование и дешифрование являются синонимами. Однако в работах по криптографии последних десятилетий часто эти слова различают. Будем считать, что термины расшифрование и дешифрование не являются синонимами.
Примем, что расшифрованием занимается легальный получатель сообщения (тот, кто знает ключ), а человек, которому послание не предназначено, пытаясь понять его смысл, занимается дешифрованием.
Система шифрования, или шифрсистема, - это любая система, которую можно использовать для обратимого изменения текста сообщения с целью сделать его непонятным для всех, кроме тех, кому оно предназначено.
Криптостойкостью называется характеристика шифра, определяющая его стойкость к дешифрованию без знания ключа (то есть способность противостоять криптоанализу). [6]
Таким образом, с учетом всех сделанных определений можно дать более точное определение науке криптография. Криптография изучает построение и использование систем шифрования, в том числе их стойкость, слабости и степень уязвимости относительно различных методов вскрытия.
Все методы преобразования информации с целью защиты от несанкционированного доступа делятся на две большие группы: методы шифрования с закрытым ключом и методы шифрования с открытым ключом. Шифрование с закрытым ключом (шифрование с секретным ключом или симметричное шифрование) используется человеком уже на протяжении довольно долгого времени.
Для шифрования и расшифрования данных в этих методах используется один и тот же ключ, который обе стороны стараются хранить в секрете от противника.
Шифрование с открытым ключом (асимметричное шифрование) стало использоваться для криптографического закрытия информации лишь во второй половине ХХ века. В эту группу относятся методы шифрования, в которых для шифрования и расшифрования данных используются два разных ключа. При этом один из ключей (открытый ключ) может передаваться по открытому (незащищенному) каналу связи.
Электронной (цифровой) подписью называется обычно присоединяемый к сообщению блок данных, полученный с использованием криптографического преобразования. Электронная подпись позволяет при получении текста другим пользователем проверить авторство и подлинность сообщения. [7]
Криптографическая система защиты информации - система защиты информации, в которой используются криптографические методы для шифрования данных.
Для разрабатываемых в настоящее время криптографических систем защиты информации сформулированы следующие общепринятые требования:
oo зашифрованное сообщение должно поддаваться чтению только при наличии ключа;
oo знание алгоритма шифрования не должно влиять на надежность защиты;
oo любой ключ из множества возможных должен обеспечивать надежную защиту информации;
oo алгоритм шифрования должен допускать как программную, так и аппаратную реализацию. [8]
Не для всех алгоритмов шифрования перечисленные требования выполняются полностью. В частности, требование отсутствия слабых ключей (ключей, которые позволяют злоумышленнику легче вскрыть зашифрованное сообщение) не выполняется для некоторых старых блочных шифров. Однако все вновь разрабатываемые системы шифрования удовлетворяют перечисленным требованиям.
В докомпьютерную эпоху шифрование данных выполнялось вручную. Специалист-шифровальщик обрабатывал исходное сообщение посимвольно и таким образом получал зашифрованный текст. Несмотря на то, что результат шифрования многократно проверялся, известны исторические факты ошибок шифровальщиков.
После изобретения механических шифровальных машин процесс обработки данных при шифровании был автоматизирован и ускорен. Кроме того, применение шифровальной техники снизило вероятность ошибок в процессе шифрования и расшифрования.
Дальнейшее развитие техники привело к появлению сначала электромеханических, а затем электронных криптографических устройств. Если все процедуры шифрования и расшифрования выполняются специальными электронными схемами по определенным логическим правилам, то такой способ реализации криптографического метода называется аппаратным. Аппаратным способом могут быть реализованы все криптоалгоритмы, рассматриваемые в данном учебном пособии.
На разработку аппаратного устройства необходимы существенные затраты, однако при массовом выпуске устройства эти затраты окупаются. Аппаратная реализация криптографического метода отличается высокой производительностью, простотой в эксплуатации, защищенностью. Во всем мире выпускаются ежегодно миллионы криптографических устройств.
Повсеместное внедрение вычислительной техники, а особенно персональных компьютеров, привело к появлению программных реализаций алгоритмов шифрования. Интересно, что разработчики первых блочных шифров, используемых, например, в старом американском стандарте DES, и не предполагали, что придуманные ими алгоритмы будут реализовываться программно.
Благодаря тому, что все методы криптографического преобразования могут быть представлены в виде конечной алгоритмической процедуры, они могут быть запрограммированы.
Основным достоинством программных методов реализации защиты является их гибкость, то есть возможность быстрого изменения алгоритмов шифрования или их настройки. Кроме того, программные реализации криптографических методов отличаются меньшей стоимостью.
Основным же недостатком программной реализации является существенно меньшее быстродействие по сравнению с аппаратными средствами (в десятки раз в зависимости от алгоритма).
В настоящее время выпускаются и комбинированные модули шифрования, так называемые программно-аппаратные средства. В этом случае компьютер дополняется своеобразным криптографическим сопроцессором - аппаратным вычислительным блоком, ориентированным на выполнение специфических криптографических операций.
Меняя программное обеспечение для такого устройства, можно выбирать тот или иной метод шифрования. Такое программно-аппаратное средство объединяет в себе достоинства программных и аппаратных методов.
Исторически криптография развивалась как практическая дисциплина, изучающая и разрабатывающая способы шифрования письменных сообщений. В распоряжении историков имеются данные, что криптографические методы применялись в Древнем Египте, Индии, Месопотамии. Так, например, в записях египетских жрецов есть сведения о системах и способах составления шифрованных посланий.
Древние греки оставили документальные подтверждения о различных применяемых ими шифровальных системах. Греками, а вернее спартанцами, во время многочисленных войн применялось одно из первых шифровальных устройств - Сцитала. Сцитала представляла собой цилиндрический жезл определенного диаметра. На Сциталу виток к витку наматывалась узкая полоска папируса (или кожаного ремня). [9]
На намотанной ленте вдоль оси жезла писали открытое сообщение. Затем ленту разматывали и переправляли адресату. После снятия папируса с жезла выходило как будто буквы сообщения написаны в беспорядке поперек ленты.
Если папирус попадал в руки противника, то секретное сообщение прочитать было невозможно. Для получения исходного текста была необходима Сцитала точно такого же диаметра - на нее наматывалась полученная полоска папируса, строки сообщения совмещались, и в результате можно было прочитать секретное послание.
Ключом в данном методе шифрования являлся диаметр Сциталы. Интересно, что изобретение дешифровального устройства приписывается Аристотелю. Предполагается, что именно он предложил использовать конусообразное копье, на которое наматывалась перехваченная лента с зашифрованным сообщением.
Лента с буквами передвигалась вдоль оси конуса до тех пор, пока не появлялся осмысленный текст.
В Древней Греции использовались и другие шифры. Так, например, там был изобретен шифр, который в дальнейшем стал называться квадратом Полибия. Согласно этому шифру буквы сообщения заменялись числами, представляющими собой координаты в квадрате 5x5, в который вписаны символы алфавита.
Многочисленные исторические документы подтверждают, что в политике и в военном деле широко применялись различные шифры.
В арабских странах шифрование сообщений довольно широко использовалось как в военных, так и в политических целях и даже в переписке между торговыми партнерами. Кстати, слово шифр арабского происхождения, так же как и слово цифра.
В VIII - XV веках на свет появляются научные труды, содержащие сведения по криптографии: описания различных шифров и даже некоторых методов криптоанализа. Так, в многотомной энциклопедии Шауба аль-Аша упоминается о частотном криптоанализе (то есть анализе, основанном на частоте встречаемости букв открытого и зашифрованного сообщений). В этой же энциклопедии приводится таблица частотных характеристик букв арабского языка.
В средние века криптографические методы использовались, прежде всего, в военном деле, шпионаже, дипломатии. Изучением шифров занимались священники, ученые и дипломаты.
На практике применялись различные шифры. Первые труды по криптографии созданы в XIV - XVI веках Чикко Симоннети (сотрудником папской канцелярии), Габлиэлем де Лавиндой (секретарем папы Клементия XII), Леоном Баттистой Альберти (знаменитым итальянским архитектором и философом), аббатом Иоганнесом Тритемием, жившем в Германии.
Все указанные деятели внесли большой вклад в развитие криптографии, так как не только рассматривали в своих трудах существующие шифры, но и предлагали различные усовершенствованные методы шифрования, а также некоторые простейшие методы криптоанализа.
Так, например, в трудах Симоннети и де Лавинды предлагаются шифры пропорциональной замены, в которых наиболее часто встречаемым буквам ставится в соответствие несколько символов для выравнивания частоты встречаемости знаков в шифротексте. [10]
Леон Альберти, вероятно, первым предложил так называемые полиалфавитные шифры.
Нововведение Альберти состояло в том, чтобы использовать несколько замен в соответствии с ключом.
Предполагается, что он также изобрёл первую автоматическую шифровальную машину - шифровальный диск, который осуществлял частичную реализацию его изобретения.
В XVII-XVIII веках во многих государствах Европы появились специальные шифровальные службы. В России датой появления криптографической службы специалисты называют 1549 год, когда был создан посольский приказ, в котором имелось цифирное отделение. В эпоху Петра I криптографическая служба была реорганизована в Посольскую канцелярию.
В различные времена криптографией занимались многие политики и ученые. Среди них Пифагор, Аристотель, Платон, Галилей, Д. Порта, Д. Кардано, Л. да Винчи, Ф. Виет, Д. Валлис, Б. Паскаль, И. Ньютон, Ф. Бекон, Х. Гольбах, Ф. Эпинус, Л. Эйлер, П.Ф. Шиллинг, Ч. Беббидж и другие. [11]
Огромное влияние на развитие криптографии оказывают достижения научно-технического прогресса. Так, например, в середине XIX века после изобретения телеграфа появилось несколько дипломатических и коммерческих шифров, ориентированных на применение телеграфа. Возрастание скорости передачи данных требовало увеличения скорости шифрования. В конце XIX века появились механические шифраторы Т. Джефферсона и Ч. Уитстона. С конца XIX века криптография стала серьезной отраслью научных знаний и стала изучаться как отдельная наука в военных академиях.
В XX веке появились новые возможности по передаче информации на большие расстояния с большой скоростью. В связи с применением радиосвязи расширились возможности доступа к шифрованной информации в процессе ее передачи. Научно-технический прогресс преобразил криптографию, которая стала вначале электромеханической, а затем электронной.
В XX веке возникает специализация в криптографической деятельности. Появляются специалисты по шифрованию, по перехвату зашифрованных сообщений, по дешифрованию шифров противника.
В 20-х годах XX века для автоматизации процесса шифрования появились многочисленные механические устройства. В частности, широко использовались роторные шифровальные машины, в которых для выполнения операций замены символов применялись механические колеса - роторы. Шифровальные машины преобразовывали открытый текст в зашифрованный, состоящий из символов того же алфавита. После преобразования зашифрованная информация могла передаваться различными способами, например, по радиоканалу.
Во всех развитых странах, в том числе и в СССР, создавались высокоскоростные шифрмашины, которые широко применялись во время второй мировой войны и позже.
В середине ХХ века разработкой криптографических алгоритмов стали заниматься профессиональные математики и специалисты в области информатики.
Существенное влияние на развитие криптографии оказала работа американского инженера-математика К. Шеннона Теория связи в секретных системах, в которой были сформулированы и математически доказаны условия невскрываемости шифров.
С 50-х годов ХХ века в криптографии используется электронная вычислительная техника. Начинается создание так называемых блочных шифров, которые позволяют обрабатывать информацию целыми фрагментами или блоками.
Первоначально для операций блочного шифрования разрабатывали аппаратные устройства с жесткой логикой, однако стремительное развитие возможностей вычислительной техники позволило создать программные аналоги блочных систем шифрования.
Криптографические программные и аппаратные средства стали использоваться в гражданских целях, например, в коммерческих системах передачи информации.
С развитием информационных технологий криптография не только приобрела новые сферы применения, но и претерпела значительные изменения. В древние времена в процессе обмена зашифрованными сообщениями участвовало только две стороны, поэтому ключом шифрования необходимо было обеспечить только эти две стороны.
В современных информационных системах в процессе передачи информации задействовано множество абонентов, и все они заинтересованы в надежных и удобных каналах получения ключей шифрования.
Проблема распределения ключей была решена в двадцатом веке благодаря изобретению нового принципа шифрования - асимметричного шифрования или шифрования с открытым ключом (70-е годы ХХ в.).
Основоположниками этого метода шифрования считаются У. Диффи и М. Хеллман. В асимметричных алгоритмах шифрования используются специальные математические функции - односторонние функции. Открытие асимметричных криптосистем позволило еще больше расширить сферы применения криптографии. [12]
Именно шифрование с открытым ключом лежит в основе процедур формирования цифровой подписи и проверки подлинности, а следовательно, и в основе принципов работы банковских пластиковых карт, электронных денег и других современных технологий.
Новые сферы применения криптографии привлекают математиков к решению криптографических проблем, а также к созданию новых направлений в математике, теории информации и других смежных науках.

1.2 Криптографические атаки. Криптографический протокол

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

Рисунок 1 Информационный поток

Информация в процессе хранения, передачи и преобразования подвергается воздействию различных атак. Атаки осуществляются противниками (оппонентами, перехватчиками, врагами и так далее). Основными нарушениями безопасности являются раскрытие информационных ценностей (потеря конфиденциальности) , модификация без разрешения автора (потеря целостности) или неавторизованная потеря доступа к этим ценностям (потеря доступности) .
Атаки могут быть пассивными и активными. Пассивной называется атака, при которой противник не имеет возможности изменять передаваемые сообщения. При пассивной атаке возможно лишь прослушивание передаваемых сообщений, их дешифрование и анализ трафика (Рисунок 2).

Рисунок 2 Пассивная атака

При активной атаке противник имеет возможность модифицировать передаваемые сообщения и даже добавлять свои сообщения. То есть активной называется такая атака, при которой противник имеет возможность модифицировать передаваемые сообщения и вставлять свои сообщения.
Различают следующие типы активных атак:
1 Отказ в обслуживании - DoS-атака (Denial of Service)
Отказ в обслуживании нарушает нормальное функционирование сетевых сервисов. Противник может перехватывать все сообщения, направляемые определенному адресату. Другим примером подобной атаки является создание значительного трафика, в результате чего сетевой сервис не сможет обрабатывать запросы законных клиентов.
Классическим примером такой атаки в сетях TCPIP является SYN-атака, при которой нарушитель посылает пакеты, инициирующие установление ТСР-соединения, но не посылает пакеты, завершающие установление этого соединения. В результате может произойти переполнение памяти на сервере, и серверу не удастся установить соединение с законными пользователями (Рисунок 3).

Рисунок 3 DoS-атака

2 Модификация потока данных - атака man in the middle
Модификация потока данных означает либо изменение содержимого пересылаемого сообщения, либо изменение порядка сообщений (Рисунок 4).

Рисунок 4 Атака man in the middle

3 Создание ложного потока (фальсификация)
Фальсификация (нарушение аутентичности) означает попытку одного субъекта выдать себя за другого (Рисунок 5).

Рисунок 5 Создание ложного потока

4 Повторное использование
Повторное использование означает пассивный захват данных с последующей их пересылкой для получения несанкционированного доступа - это так называемая replay-атака. [13]
На самом деле replay-атаки являются одним из вариантов фальсификации, но в силу того, что это один из наиболее распространенных вариантов атаки для получения несанкционированного доступа, его часто рассматривают как отдельный тип атаки (Рисунок 6).

Рисунок 6 Replay-атака

Перечисленные атаки могут существовать в любых типах сетей, а не только в сетях, использующих в качестве транспорта протоколы TCPIP, и на любом уровне модели OSI. Но в сетях, построенных на основе TCPIP, атаки встречаются чаще всего, потому что, во-первых, Internet стал самой распространенной сетью, а во-вторых, при разработке протоколов TCPIP требования безопасности никак не учитывались.
Криптоанализ любого шифра невозможен без учета особенностей текстов сообщений, подлежащих шифрованию.
Наиболее простыми характеристиками текстов, используемыми в криптоанализе, являются такие характеристики, как повторяемость букв, пар букв (биграмм) и вообще n-грамм,сочетаемость букв друг с другом, чередование гласных и согласных и некоторые другие. Такие характеристики изучаются на основе наблюдений текстов достаточно большой длины.
Криптографические атаки можно классифицировать по количеству и типу информации, доступной для криптоанализа противником. По данной классификации выделяют следующие виды атак.
Атака на основе шифротекста имеется в том случае, когда противник имеет для анализа шифротексты различных неизвестных открытых текстов, зашифрованные на одном и том же ключе. Задача криптоаналитика состоит в получении открытого текста как можно большего числа сообщений или в получении ключа, использованного при шифровании.
Полученный ключ будет затем использован для дешифрования других сообщений.
Атака на основе известного открытого текста имеет место в том случае, если криптоаналитик получает в свое распоряжение какие-либо открытые тексты, соответствующие раннее переданным зашифрованным сообщениям. Сопоставляя пары текст-шифротекст, противник пытается узнать секретный ключ, чтобы с его помощью дешифровать все последующие сообщения. Некоторым покажется, что противнику достаточно сложно заполучить в свое распоряжение некоторое количество пар текст-шифротекст. На самом деле практически всегда возможно достать такие кусочки открытого текста и шифротекста.
Криптоаналитик может иметь информацию о формате перехваченного зашифрованного файла: например, знать, что это файл с изображением JPEG, документ Word или Excel, файл базы данных или что-то еще.
Все эти и многие другие форматы содержат определенные стандартные заголовки или фрагменты.
Таким образом, специалист по криптоанализу сможет сформировать необходимые данные для проведения атаки на основе известного открытого текста.
Возможен еще более серьезный для передающих сторон вариант - это атака на основе выбранного открытого текста . В этом случае криптоаналитик имеет возможность не только использовать предоставленные ему пары текст-шифротекст, но и сам формировать нужные ему тексты и шифровать их с помощью того ключа, который он хочет узнать.
Известно, что во время второй мировой войны американцы, подкупив охрану, выкрали шифровальную машину в японском посольстве на два дня и имели возможность формировать и подавать ей на вход различные тексты и получать соответствующие шифровки.
Они не могли взломать машину с целью непосредственного определения заложенного в нее секретного ключа, так как это было бы замечено и повлекло бы за собой смену всех ключей.
Долгое время разработчики криптосистем пытались сделать свои алгоритмы шифрования неуязвимыми по отношению только к атакам по шифротексту и обеспечивать организационно невозможность атак по открытому или выбранному тексту.
Для этого держали в тайне алгоритмы шифрования, устройства шифровальных машин, тщательно проверяли на надежность персонал, имеющий доступ к криптосистемам.
Однако еще в XIX веке специалисты в области криптографии предположили, что секретность алгоритма шифрования не является гарантией от взлома. Более того, в дальнейшем было понято, что по-настоящему надежная система шифрования должна оставаться защищённой, даже если противник полностью узнал алгоритм шифрования. [14]
Секретность ключа должна быть достаточна для хорошего шифра, чтобы сохранить стойкость к попыткам взлома. Этот фундаментальный принцип впервые был сформулирован в 1883 Керкхоффсом (A. Kerckhoffs) и обычно называется принципом Керкхоффса.
Разработчики современных криптографических систем используют именно такой подход, предполагая возможность атак по выбранному тексту. В настоящее время создаваемые алгоритмы шифрования всесторонне изучаются большим числом специалистов, оцениваются по различным показателям, в том числе и по возможности противостоять атакам по выбранному тексту.
Теперь, когда даны основные определения, рассмотрим одну из простейших систем шифрования, которая носит имя шифр Юлия Цезаря. Предполагается, что знаменитый римский император и полководец, живший в 1 веке до нашей эры, использовал этот шифр в своей переписке.
Шифр Цезаря применительно к русскому языку состоит в следующем. Каждая буква сообщения заменяется на другую, которая в русском алфавите отстоит от исходной на три позиции дальше. Таким образом, буква A заменяется на Г, Б на Д и так далее вплоть до буквы Ь, которая заменялась на Я, затем Э на A , Ю на Б и, наконец, Я на В.
Так, например, слово ЗАМЕНА после шифрования методом Цезаря превратится в КГПЗРГ.
Это не очень сложный метод, тем более что при шифровании сообщений из нескольких слов сразу становится понятным, сколько слов содержал исходный текст. Кроме того, можно получить некоторую информацию по анализу повторов букв в зашифрованном сообщении.
Например, в зашифрованном КГПЗРГ одна из букв повторяется дважды. Тем не менее, Цезарь вошел в историю криптографии, а шифр Юлия Цезаря, как его до сих пор называют, служит примером одной из первых систем шифрования.
Для расшифрования сообщения КГПЗРГ необходимо знать только сам алгоритм шифрования. Любой человек, знающий способ шифрования, легко может расшифровать секретное сообщение. Таким образом, ключом в данном методе является сам алгоритм.
Каким образом можно усовершенствовать шифр Цезаря? Можно было бы попытаться расширить алфавит с 33 до 36 символов и более за счет включения знаков препинания и пробелов. Это увеличение алфавита замаскировало бы длину каждого отдельного слова.
В криптографии принято считать, что противник может знать использованный алгоритм шифрования, характер передаваемых сообщений и перехваченный шифротекст, но не знает секретный ключ. Как уже упоминалось выше, это называется принципом Керкхоффса.
Иногда это правило кажется перестраховкой, но такая перестраховка отнюдь не лишняя, если, например, передаются данные оборонного или государственного характера.
Усовершенствуем шифр Цезаря с учетом правила Керкхоффса.
Предположим, что буквы сдвигаются не на три знака вправо, а на n (0n33). В этом случае в системе шифрования появляется ключ - число n - параметр сдвига.
Отправитель и получатель могут каким-либо образом договариваться (например, лично) и иногда менять значение ключа.
Так как n может принимать разные значения, знание одного только алгоритма не позволит противнику расшифровать секретное сообщение.
Каким же образом может действовать в том случае злоумышленник, чтобы узнать содержание сообщения?
Пусть, например, перехвачено секретное сообщение ЧСЮЭЮЪ. Противнику известно, что ключ (параметр сдвига n) может принимать значения от 1 до 32. Пытаясь найти значение секретного ключа, мы будем проводить атаку по шифротексту.
Рассмотрим способ последовательного перебора всех возможных ключей (это так называемый метод грубой силы). Запишем на 32 строчках все варианты, которые получаются сдвигом каждой буквы на 1, 2, 3, ... , 32 позиции соответственно.
Эту операцию можно проводить вручную, а можно составить несложную программу, которая запишет все варианты перебора параметра n в файл. Одна из этих 32 строк будет содержать исходное сообщение (Таблица 1).

Таблица 1 Перебор вариантов для поиска ключа при использовании метода Цезаря
Перехваченная криптограмма ЧСЮЭЮЪ
1
ШТЯЮЯЫ
17
ЗВОНОК
2
ЩУАЯАЬ
18
ИГПОПЛ
3
ЪФБАБЭ
19
ЙДРПРМ
4
ЫХВБВЮ
20
КЕСРСН
5
ЬЦГВГЯ
21
ЛЁТСТО
6
ЭЧДГДА
22
МЖУТУП
7
ЮШЕДЕБ
23
НЗФУФР
8
ЯЩЁЕЁВ
24
ОИХФХС
9
АЪЖЁЖГ
25
ПЙЦХЦТ
10
БЫЗЖЗД
26
РКЧЦЧУ
11
ВЬИЗИЕ
27
СЛШЧШФ
12
ГЭЙИЙЁ
28
ТМЩШЩХ
13
ДЮКЙКЖ
29
УНЪЩЪЦ
14
ЕЯЛКЛЗ
30
ФОЫЪЫЧ
15
ЁАМЛМИ
31
ХПЬЫЬШ
16
ЖБНМНЙ
32
ЦРЭЬЭЩ

Из представленной таблицы видно, что единственное слово, имеющее смысл, - это ЗВОНОК. Это слово располагается на 17 месте. Следовательно, если шифрованный текст сдвинуть на 17 позиций вперед получится открытый текст.
Это означает, что для получения шифрованного текста открытый текст нужно сдвинуть на (33-17)=16 позиций. Таким образом, получили, что при шифровании ключ n=16.
Так как ни при каком другом сдвиге не получилось осмысленного сообщения, то, скорее всего, мы правильно дешифровали это сообщение.
Такое допущение о единственности решения вполне обоснованно, когда исходное сообщение составлено на одном из естественных языков (в рассмотренном примере - русском) и содержит более пяти-шести знаков.
Но если сообщение очень короткое, возможных решений может быть несколько. Единственное решение также очень трудно найти, если исходное сообщение, состоит, например, из цифр.
Так, например, пусть исходный алфавит состоит из арабских цифр, то есть имеет вид
0 1 2 3 4 5 6 7 8 9.
Один из абонентов желает переслать другому секретный код замка, состоящий из пяти цифр и равный 12345. Отправитель и получатель заранее договорились о том, что ключ шифрования nбудет равен 3. Отправитель шифрует выбранным ключом исходное сообщение 12345, получает 45678 и переправляет полученное значение своему абоненту. ... продолжение

Вы можете абсолютно на бесплатной основе полностью просмотреть эту работу через наше приложение.
Похожие работы
Разработка приложения баз данных Воздушные перевозки
Разработка приложения баз данных (Воздушные перевозки)
Разработка приложения баз данных (кинотеатры)
Аппаратно-программное обеспечение компьютерной фирмы ТОО SoftMaster
Принципы работы ОСИ и основные нормативные документы
Развитие электронных услуг в коммерческих банках
Проектирование информационной системы аутентификации и идентификации
Технологии защищенной связи
ИНФОРМАЦИЯ КАК ОБЪЕКТ КОМПЬЮТЕРНЫХ ПРЕСТУПЛЕНИЙ
Криптография и криптоанализ
Дисциплины