Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Исследование различных методов защиты текстовой




Лабораторная работа №1

Изучение персональных средств защиты информации

На примере программного средства криптографической

Защиты PGP 5.5

Цель данной лабораторной работы  изучение основных возможностей персональных средств защиты информации на примере программного средства криптографической защиты PGP 5.5.

Для выполнения лабораторной работы необходимо знание общих сведений о ПЭВМ IBM PC (работа в Windows 95).

Теоретическая часть

PGP 5.5 представляет собой программное средство криптографической защиты информации (СКЗИ), обеспечивающее защиту данных от несанкционированного доступа с помощью шифрования и несанкционированного изменения с помощью электронной цифровой подписи (ЭЦП) [1].

PGP 5.5 работает на прикладном уровне и позволяет защитить файлы и письма электронной почты.

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

 
 

 


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

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

Секретный и открытый ключи генерируются в результате процедуры генерации ключей.

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

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

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

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

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

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

В PGP 5.5 возможно использовать ключи RSA для ЭЦП и шифрования либо ключей Diffie-Hellman для шифрования, а также ключей DSS для ЭЦП. Криптосистема RSA поддерживается для совместимости с ранними версиями, рекомендуется применять более современные и надежные криптосистемы Diffie-Hellman и DSS.

Криптосистема RSA [2] основывается на односторонней функции перемножения двух простых чисел большой разрядности. Разложение многоразрядного числа на множители – трудновычислимая задача.

Ниже описана схема цифровой подписи RSA.

На начальном этапе подписывающий абонент выбирает большие простые числа p и q, вычисляет их произведение

N = pq.

Выбирает случайное число е так, чтобы

(e,Ф(N)) = 1, т.е. е и Ф(N) взаимно просты,

где

Ф(N) = (p-1)(q-1) 

функция Эйлера от N. Далее вычисляется такое d, что

de =1 (mod Ф(N)).

Число d является несекретным и передается проверяющей стороне.

В качестве подписи сообщения х используется число

M = [h(x)]^e (mod N).

Проверяющая сторона при проверке цифровой подписи проверяет условие

h(x) = M^d (mod N).

Нарушение этого условия означает, что подпись М не соответствует сообщению х, и, следовательно, сообщение (или подпись) было искажено. Если это условие выполнено, то сообщение считается подлинным.

Криптосистемы Diffie-Hellman и DSS [2] основываются на односторонней функции возведения в степень по модулю. Обратная задача дискретного логарифмирования решается только перебором.

Схема цифровой подписи DSS представляет собой одну из модификаций схемы цифровой подписи Эль-Гамаля [3].

Кроме защиты информации от несанкционированного искажения с помощью цифровой подписи, программное средство PGP 5.5 предусматривает возможность защиты данных при их передаче и хранении с помощью шифрования.

Для шифрования используются симметричные криптосистемы CAST, TripleDES или IDEA [3], так как симметричные алгоритмы работают намного быстрее. Чтобы избежать необходимости передавать симметричные ключи по закрытому каналу, генерируется случайный сеансовый ключ, который шифруется асимметричным алгоритмом в соответствии со следующим протоколом:

 
 

 


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

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

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

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

Защита с помощью цифровой подписи и с помощью шифрования может применяться одновременно.

PGP 5.5 предоставляет возможность задавать разрядность ключей при их создании от 768 до 4096 бит для криптосистем Diffie-Hellman и DSS и от 512 до 2048 бит для криптосистемы RSA. Объем вычислений, который необходимо провести для атаки на криптографическую систему, возрастает экспоненциально при увеличении разрядности ключа. При современных вычислительных мощностях разработчики PGP рекомендуют использовать 1024-битные ключи для алгоритмов Diffie-Hellman и DSS и 2048-битные ключи для алгоритма RSA. При использовании таких значений объем полного перебора, который необходимо выполнить для взлома схемы с открытым ключом, составляет 1024 варианта. Однако следует учитывать, что для разложения на простые числа существуют более эффективные алгоритмы, чем полный перебор.

Оценим, приблизительно, требуемое время полного перебора.

Пусть Pentium III 600 способен перебрать 600*10^6 вариантов в секунду (реально на много меньше, так как на перебор одного варианта уходит несколько тактов). Тогда для перебора 2^1024, что примерно составляет 10^340, потребуется более чем 10^331 с, что составит более 10^323 лет.

Таким образом, атака на рассмотренную систему методом полного перебора практически нереализуема.

Работа с программой

Программное СКЗИ PGP 5.5 позволяет выполнить следующие функции:

- создать пару ключей “закрытый-открытый”;

- зашифровать файл открытым ключом;

- расшифровать файл закрытым ключом;

- подписать файл ЭЦП закрытым ключом;

- проверить ЭЦП открытым ключом.

Кроме того, PGP 5.5 предоставляет возможность защищать письма электронной почты и тома файловой системы (сквозное шифрование диска), а также включает возможность безопасного удаления файлов. В данной лабораторной работе эти возможности не рассматриваются.

Подробное руководство пользователя приведено в [4].

Оперативная информация об изменениях, исправлениях и новых версиях доступна на Web-сайте компании Pretty Good Privacy Inc. www.pgp.com.

Программа PGP 5.5 состоит из двух основных частей PGPtools и PGPkeys; PGPtools содержит средства шифрования и ЭЦП; PGPkeys  средства управления ключами и способно создавать пары ключей и экспортировать открытые ключи на внешние носители для их распространения другим абонентам.

Запуск программы PGP 5.5 осуществляется из меню Start/Progpams/Pretty Good Privacy/PGPtools (или /PGPkeys).

Для того, чтобы начать работать с PGP следует создать пару ключей “открытый-закрытый” и распространить открытый ключ по всем абонентам, с которыми Вы хотите обмениваться защищенной информацией. Для этого следует запустить PGPkeys, выбрать пункт меню Keys/New Key и следовать инструкциям программы. Для распространения открытого ключа необходимо выбрать пункт меню Keys/Export, сохранить открытый ключ в файле и передать абонентам по каналу, защищенному от подмены информации.

Для зашифровки файла запускают PGPtools и нажимают кнопку Encrypt и следуют указаниям программы. Аналогично для постановки цифровой подписи нажимают кнопку Sign, а для расшифровки или проверки подписи  Decrypt/Verify.

Требования к протоколу.

В протоколе следует фиксировать следующие данные:

Для пунктов 1-4:

- краткое описание производимых действий;

- с помощью каких ключей выполняются действия – открытые или закрытые и какого абонента;

- параметры ключа при его генерации;

- результаты проверки подписи и расшифровки (стал ли файл читаем).

Для пунктов 5-7:

- графики зависимости и результаты измерения в табличном виде;

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

Задание

1. Запустите программу PGPkeys и создайте пару ключей “открытый-закрытый”. Рекомендуемые параметры ключа: тип Diffie-Hellman/DSS, длина 1024 бит.

Задайте пароль для защиты закрытого ключа.

Экспортируйте открытый ключ в текстовый файл. Просмотрите этот файл в Notepad.

Импортируйте открытый ключ из текстового файла.

Передайте открытый ключ соседней бригаде с помощью дискеты или сети и получите их открытый ключ. Импортируйте полученный ключ.

2. Создайте текстовый файл и наберите произвольный текст. Зашифруйте файл. Убедитесь что текст стал нечитаем (просмотрите в Notepad). Расшифруйте файл. Каким ключом файл был зашифрован? Каким расшифрован?

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

3. Подпишите текстовый файл. Просмотрите как выглядит ЭЦП. Проверьте подпись. Внесите изменение в файл. Проверьте подпись. Каким ключом файл был подписан? Каким проверялась ЭЦП?

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

5. Постройте зависимость времени генерации ключа от его длины для алгоритма Diffie-Hellman - DSS (от 768 до 4096 бит). Для построения примерного графика снимите 6-8 точек. Каков характер этой зависимости? Почему именно такой?

6. Постройте зависимость времени генерации ключа от его длины для алгоритма RSA (от 512 до 2048 бит). Для построения примерного графика снимите 6-8 точек. Каков характер этой зависимости? Почему именно такой?

7. Постройте зависимость времени шифрования и времени постановки цифровой подписи от длины файла для алгоритмов Diffie-Hellman – DSS и RSA. Рекомендуется диапазон 1 … 10Mb для Pentium 100. Если машина мощнее, выберете большие файлы для более точного измерения времени. Для построения примерного графика снимите 6-8 точек. Каков характер этой зависимости? Почему именно такой?

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

1. Что такое асимметричная криптографическая система? В чем их преимущества перед симметричными? В чем недостатки?

2. Какие ключи должны присутствовать на Вашей машине и машине абонента А чтобы:

- зашифровать файл для посылки абоненту А;

- расшифровать файл полученный от абонента А;

- подписать файл для посылки абоненту А;

- проверить подпись на файле, полученном от абонента А?

3. На каких односторонних функциях основываются криптографические системы Diffie-Hellman, DSS и RSA?

4. Как зависит объем вычислений, который необходимо провести для атаки на криптографическую систему от разрядности ключа?

5. Каков характер зависимости времени генерации ключа от его длины?

6*. Почему рекомендуемая длина ключей для алгоритма RSA в два раза больше чем для Diffie-Hellman и DSS?

 

Литература

1. Мельников Ю.Н. Общие принципы защиты банковской информации//Банковские технологии. № 7. 1995. C. 21-27.

2. Варфоломеев А.А., Пеленицын М.Б. Методы криптографии и их применение в банковских технологиях: Учебное пособие. М.: МИФИ. 1995. 116 с.

3. Мафтик С. Механизмы защиты в сетях ЭВМ. М.: Мир, 1993. 216 с.

4. PGP for Business Security. User’s Guide. Pretty Good Privacy Inc.


Лабораторная работа №2

Исследование различных методов защиты текстовой

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...