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

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

.pdf
Скачиваний:
0
Добавлен:
09.08.2026
Размер:
315 Кб
Скачать

подтверждающую корректность и надежность их реализации (в частности,

такую цифровую подпись имеет КриптоПро CSP).

Прикладное

 

 

Прикладное

 

 

Прикладное

 

Уровень

приложение

 

 

приложение

 

 

приложение

 

 

 

 

 

 

приложений

1

 

 

2

 

 

3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

CryptoAPI

 

 

 

 

 

 

 

Advapi32.dll

 

Сервисы поддержки

 

 

Системный

 

 

Crypto API

 

 

Crypt32.dll

 

 

 

 

уровень

операционной системы

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

CryptoSPI

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Крипто

 

 

Крипто

 

 

Крипто

 

Уровень

провайдер

 

 

провайдер

 

 

провайдер

 

 

 

 

 

криптопровайдеров

1

 

 

2

 

 

3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Рис. 2. Архитектура подсистемы поддержки криптопровайдеров

Провайдеры реализуют системный интерфейс CryptoSPI, который используется операционной системой при обращении к реализации криптографических сервисов. В свою очередь операционная система предоставляет прикладным приложениям интерфейс CryptoAPI, через который эти приложения могут использовать криптографические сервисы. Общая архитектура подсистемы поддержки провайдеров криптографических сервисов в операционных системах семейства Windows NT представлена на рис. 2.

Система безопасности .NET Framework реализует расширяемую модель наследования производных классов для программирования криптографических средств. Иерархия классов, реализующих криптографические алгоритмы, имеет следующий вид (см. также рис. 3):

1. Класс типа алгоритма, например SymmetricAlgorithm или

HashAlgorithm. Это абстрактный уровень.

2. Класс алгоритма является производным от класса типа алгоритма,

например RC2 или SHA1. Это также абстрактный уровень.

11

3. Реализация класса алгоритма, который является производным от класса алгоритма, например RC2CryptoServiceProvider или SHA1Managed. Это полностью реализуемый уровень.

 

 

 

 

 

 

System.Object

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Cryptography Namespace

 

SymmetricAlgorithm

 

 

 

HashAlgorithm

 

AsymmetricAlgorithm

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

DES

 

Rijndael

 

 

MD5

SHA1

 

 

KeyedHash

 

RSA

 

DSA

 

 

 

 

 

 

 

 

 

 

 

 

Algorithm

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

HMAC

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

DESCryptoService

 

MD5CryptoService

 

 

 

 

 

 

RSACryptoService

 

 

 

 

 

 

 

 

 

 

 

3

 

Provider

 

 

 

Provider

 

 

 

 

 

 

Provider

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

RijndaelManaged

 

SHA1CryptoService

 

SHA1Managed

 

 

DSACryptoService

 

 

 

 

 

 

Provider

 

 

 

 

 

 

 

Provider

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Рис. 3. Иерархия классов, реализующих криптографические алгоритмы

Часть классов криптографических алгоритмов реализованы в рамках

.NET Framework (Managed-классы), другие классы являются оберткой для реализации криптопровайдеров Win32 (CryptoServiceProvider-классы).

Задание

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

Схема защиты файла должна иметь вид:

Файл с

Цифровая

 

Сжатие

 

Шифрование

Зашифрован

данными

подпись

 

(ZIP)

 

 

ный файл

 

 

 

 

 

 

 

12

Схема открытия защищенного файла должна иметь вид:

Зашифрован

Дешифрование

 

Распаковка

 

Проверка

Файл с

ный файл

 

 

(unZIP)

 

цифровой

данными

 

 

 

 

 

подписи

 

 

 

 

 

 

 

 

Цифровая подпись должна формироваться для хэша файла и присоединяться к файлу перед шифрованием. Функция сжатия может быть реализована по желанию.

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

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

Содержание отчета

1.Титульный лист.

2.Задание.

3.Основные характеристики используемых алгоритмов: размер ключа, хэш-

кода, блока и т.п..

4.Листинг программы.

5.Тестовые примеры.

5.1.Для случая неизменного зашифрованного файла.

5.2.Для случая изменения зашифрованного файла.

6.Литература.

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

1.Способы аутентификации сообщений.

2.Основные способы применения хэш-функций.

3.Общая схема алгоритма хеширования MD5.

13

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

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

6.Алгоритм RSA.

7.Алгоритм DSA.

8.Алгоритм ГОСТ 34.10-94.

9.Криптосистема Диффи-Хеллмана.

БИБЛИОГРАФИЧЕСКИЙ СПИСОК

1.Столингс, В. Криптография и защита сетей: принципы и практика, 2-е

изд.: пер. с англ. [Текст] / В. Столингс. – М.: Издательский дом

«Вильямс», 2001. – 672 с.

2.Панасенко, С.П. Алгоритмы шифрования. Специальный справочник

[Текст] / С.П. Панасенко. – СПб.: БХВ-Петербург, 2009. - 576 с.

3.Баричев, С.Г. Основы современной криптографии. [Текст] / С.Г. Баричев,

В.В. Гончаров, Р.Е. Серов. – М.: Горячая линия - Телеком, 2001. – 120 с.

4.Нечаев, В.И. Элементы криптографии. Основы теории защиты информации: учеб. пос. [Текст] / В.И. Нечаев. – М.: Высшая школа, 1999.

– 109 с.

5.Шнайер, Б. Прикладная криптография. Протоколы, алгоритмы, исходные тексты на языке Си, 2-е изд. [Текст] / Б. Штайер. – М. Триумф, 2002. – 816 с.

6.Microsoft Software Developer Network – MSDN [Электронный ресурс]. – http://msdn.microsoft.com

7.Сайт КриптоПро CSP [Электронный ресурс]. – http://www.cryptopro.ru/cryptopro/products/csp/default.htm

14

Приложение 1. Варианты алгоритмов для лабораторной работы №2

Алгоритм

Алгоритм

 

 

 

 

1.

DES

11.

DEAL

 

 

 

 

2.

Triple-DES

12.

SAFER

 

 

 

 

3.

IDEA

13.

SERPENT

 

 

 

 

4.

Twofish

14.

AES (Rijndael)

 

 

 

 

5.

Blowfish

15.

Skipjack

 

 

 

 

6.

RC2

16.

Camellia

 

 

 

 

7.

RC5

17.

RC4

 

 

 

 

8.

RC6

18.

SEAL

 

 

 

 

9.

CAST-128

19.

WAKE

 

 

 

 

10.

ГОСТ 28147-89

 

 

 

 

 

 

Приложение 2. Варианты заданий для лабораторной работы №3

Алгоритм

Алгоритм

Алгоритм

Алгоритм

Алгоритм

Алгоритм

 

хэширова-

цифровой

шифрова-

 

хэширова

цифровой

шифрова-

 

ния

подписи

ния

 

-ния

подписи

ния

 

 

 

 

 

 

 

 

1.

MD5

RSA

DES

11.

MD5

RSA

Rijndael

 

 

 

 

 

 

 

 

2.

MD160

RSA

DES

12.

MD160

RSA

Rijndael

 

 

 

 

 

 

 

 

3.

SHA1

RSA

DES

13.

SHA1

RSA

Rijndael

 

 

 

 

 

 

 

 

4.

SHA256

RSA

DES

14.

SHA256

RSA

Rijndael

 

 

 

 

 

 

 

 

5.

SHA1

DSS

DES

15.

SHA1

DSS

Rijndael

 

 

 

 

 

 

 

 

6.

MD5

RSA

RC2

16.

MD5

RSA

Triple-DES

 

 

 

 

 

 

 

 

7.

MD160

RSA

RC2

17.

MD160

RSA

Triple-DES

 

 

 

 

 

 

 

 

8.

SHA1

RSA

RC2

18.

SHA1

RSA

Triple-DES

 

 

 

 

 

 

 

 

9.

SHA256

RSA

RC2

19.

SHA256

RSA

Triple-DES

 

 

 

 

 

 

 

 

10.

SHA1

DSS

RC2

20.

SHA1

DSS

Triple-DES

 

 

 

 

 

 

 

 

15

МЕТОДЫ И СРЕДСТВА КРИПТОГРАФИЧЕСКОЙ ЗАЩИТЫ ИНФОРМАЦИИ

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

Владимир Александрович Алексеев

Редактор Е.Н. Черникова

 

 

Подписано в печать

. Формат 60х84 1/16. Бумага офсетная.

Ризография. Печ. л. 1,0. Тираж 100 экз. Заказ №

.

Издательство Липецкого государственного технического университета. Полиграфическое подразделение Издательства ЛГТУ.

398600, Липецк, ул. Московская, 30.

16

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