Теоретические основы криптоанализа

Автор работы: Пользователь скрыл имя, 28 Ноября 2013 в 14:20, дипломная работа

Описание работы

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

Содержание работы

ВВЕДЕНИЕ 3
1.Теоретические основы криптоанализа 7
1.1 Методы криптоанализа 7
1.2 Потоковые шифры 12
1.3 Алгоритм RC4 и его криптоанализ 15
K = (KL)t=02n -1 18
На последнем шаге порождается таблица, представляющая S0. Ключевая последовательность K составляется из секретного ключа, возможно повторяющегося, и случайного ключа, передаваемого в открытом виде в целях ресинхронизации. 18
где I - единичная матрица, det(zA - I) = (z), (0) = 1, - многочлен, обратный к характеристическому многочлену матрицы переходов A степени, не превышающей ранг A (≤M); а элементы (присоединенной) матрицы adj(zA - I) - это полиномы от z степени не более M-1. Вычислительная сложность для отыскания такого решения составляет O(M3(N+1)). В другом виде решение можно переписать как 22
2. Защита информации в операционных системах Microsoft Windows 9x 25
2.1 Аутентификация, безопасность и доступ к ресурсам в операционных системах семейства Microsoft Windows 9x 25
2.2 Структура PWL–файлов 27
Рис. 5. Структура PWL-файла 28
3. Программа анализа PWL-файлов 31
3.1 Оценка надежности криптоалгоритмов в зависимости от длины ключа 31
3.2 Разработка программы 36
3.3 Функции программы 40
ЗАКЛЮЧЕНИЕ 43

Файлы: 1 файл

Диплом Панамарев2012.doc

— 419.50 Кб (Скачать файл)

 

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

Далее программа осуществляет чтение зашифрованного PWL-файла, после чего либо начинает его расшифровку, либо просмотр ресурсов. Для PWL-файлов, создаваемых  операционной системой Microsoft Windows, программа  позволяет определить нестойкие  пароли, генерируемые по ниже описанному алгоритму.

Алгоритм генерации ключа по паролю в Microsoft Windows

Имеем ключ (двойное слово) и пароль до 20-и символов.

1) Обнулить ключ.

2) Привести пароль к верхнему  регистру.

3) Для каждого символа пароля, начиная с первого:

а) прибавить код символа  к ключу

б) повернуть ключ влево 7 раз.

Данный алгоритм слаб тем, что при  выбранной длине ключа в двойное  слово, множество различных ключей 232 оказывается неизмеримо меньше множества различных паролей. Это означает, что существуют пароли, которые операционная система не различает.

Для PWL-файлов, создаваемых новыми версиями в операционных системах Microsoft Windows, программа осуществляет перебор  ключей.

Алгоритм генерации ключа по паролю в Microsoft Windows

Имеем ключ (двойное слово) и пароль до 128-и символов.

1) Обнулить ключ.

2) Привести пароль к верхнему  регистру.

3) Для каждого символа пароля, начиная с первого:

а) прибавить код символа  к ключу

б) повернуть ключ влево 16 раз.

Далее программа перебирает пароли до тех пор, пока расшифрованное имя пользователя не совпадет с ранее введенным. При совпадении работа заканчивается.

 

Таблица 3.3 Скорость работы программы

Используемая машина

Скорость работы в  секунду для Windows 3.11 и Windows 95 без Service Pack

Скорость работы в секунду для Windows 95 с Service Pack, OSR2 и 98

AMD K5 - 100

53000

29000

Intel Pentium - 120

61000

31000

Intel Pentium - 166

76000

39000

Pentium II -166

87000

45000

Intel Celeron – 400

153000

101000

Intel Celeron - 700

304000

192000


 

 

Рис. 6. Блок-схема основной программы.

3.3 Функции программы

Разработанная программа запускается  из командной строки с ниже перечисленными ключами:

/BF[:S] [ИмяPwlФайла] [ИмяПользователя]

- для выполнения взлома PWL-файла  перебором. Пароли последовательно  будут изменяться и проверяться на корректность совпадения.

/EN: [ИмяСекцииПеребора]

- добавьте это к ключу /BRUTEFORCE для того, чтобы выбрать желаемую  секцию перебора из .CFG файла. Секция  перебора по умолчанию описана  в конфигурационном файле.

/F: [СтартоваяДлина]

- добавьте это к ключу /BRUTEFORCE для определения желаемой длины  начального пароля с которого  начнется процесс перебора. По  умолчанию длинна равна нулю.

/IN: [НачальныйПароль]

- добавьте это к ключу /BRUTEFORCE для выбора начального пароля. Перебор начнется с значения представленного данным ключем. Этот ключ несовместим с ключем /FROM.

/D: [ПарольОстановки]

- добавьте это к ключу /BRUTEFORCE для выбора пароля остановки.  Перебор завершится при достижении  данного пароля. Этот ключ несовместим  с ключем /NUMBER.

/NUM: [КоличествоИтераций]

- добавьте это к ключу /BRUTEFORCE для выбора количества попыток  перебора. Программа будет остановлена  после совершения данного количества  переборов паролей. Этот ключ  несовместим с ключем /DONE.

/VOC [:S] [ИмяPwlФайла] [ИмяПользователя] [МаскаСловарей]

- для обнаружения пароля PWL-файла  с помощью словаря.

/CON [:S] [ИмяФайлаСессии]

- для возобновления прерванной  сессии.

/PROT [:ИмяФайлаПротокола]

- добавление этого ключа к  некоторым ключам позволит сохранять  результаты работы в файле Протокола. /ABOUT /HELP, /?, /LIST и /SPY, /GRAB не допускают применение данного ключа.

/L [:E] [ИмяPwlфайла] [ИмяПользователя] [ПарольПользователя]

- для просмотра указанного PWL-файла  с соответствующими параметрами,  используйте атрибут 'E' для отображения технической информации.

/GR [ИмяПротоколаБазы]

- для просмотра секции [Password Lists] файла SYSTEM.ini. Эта секция описывает  зарегистрированные PWL-файлы на данной  машине.

/TM [ОценочнаяСкорость]

- для оценки времени работы  сплошного перебора. Можно использовать ключ /ENUM для выбора секции символов перебора. Скорость указывается в pps (что обозначает паролей в секунду).

/H [ИмяФайлаСправки]

- для сохранения справки в  текстовом файле.

/?

- для отображения этой краткой  справки на терминале.

 

Используйте атрибут 'S' с вышеперечисленными ключами для защиты данных от нестабильности электропитания. Применение атрибута вызовет периодическое сохранение результатов работы текущей сессии. Нажатие Ctrl+Break приводит к остановке процесса перебора и записи текущей сессии в соответствующем .BRK файле.

ЗАКЛЮЧЕНИЕ

Проанализировав сегодняшнюю  ситуацию с реальными криптографическими продуктами, мы пришли к выводу, что  криптография, представленная на коммерческом рынке, не предоставляет достаточного уровня безопасности. Сегодня в компьютерную безопасность вкладываются миллиарды долларов, и большинство денег тратится на нестойкие продукты. В настоящей работе было проведено исследование криптографических методов защиты информации, применяемых популярных операционных системах семейства Microsoft Windows 9x, и была написана программа общим объемом около тысячи строк программного кода для анализа си. Рассматриваемый алгоритм RC4 используется в более чем двадцати программных продуктах и результаты данной работы относятся к большому числу программных продуктов, используемых в различных областях.

В ходе работы был сделаны  следующие выводы:

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



Информация о работе Теоретические основы криптоанализа