При проверке ЭЦП получатель сообщения снова вычисляет хеш-функцию m = h(М) принятого по каналу текста М, после чего при помощи открытого ключа отправителя проверяет, соответствует ли полученная подпись вычисленному значению m хеш-функции.
Принципиальным моментом в системе ЭЦП является невозможность подделки ЭЦП пользователя без знания его секретного ключа подписи.
В качестве подписываемого документа может быть использован любой файл. Подписанный файл создается из неподписанного путем добавления в него одной или более электронных подписей.
Каждая подпись содержит следующую информацию:
1. Дату подписи;
2. Срок окончания действия ключа данной подписи;
3. Информацию о лице, подписавшем файл (Ф.И.О., должность, краткое наименование фирмы);
4. Идентификатор подписавшего (имя открытого ключа);
5. Собственно цифровую подпись.
1.10 Однонаправленные хеш-функции
Хеш-функция предназначена для сжатия подписываемого документа
до нескольких десятков или сотен бит. Хеш-функция h(-) принимает в качестве аргумента сообщение (документ) М произвольной длины и возвращает хеш-значение фиксированной длины. Обычно хешированная информация является сжатым двоичным представлением основного сообщения произвольной длины. Следует отметить, что значение хеш-функции сложным образом зависит от документа и не позволяет восстановить сам документ .Хеш-функция должна удовлетворять целому ряду условий:
· хеш-функция должна быть чувствительна к всевозможным изменениям в тексте М, таким как вставки, выбросы, перестановки и т.п.;
· хеш-функция должна обладать свойством необратимости, то есть задача подбора документа
, который обладал бы требуемым значением хеш-функции, должна быть вычислительно неразрешима;· вероятность того, что значения хеш-функции двух различных документов (вне зависимости от их длин) совпадут, должна быть ничтожно мала.
Большинство хеш-функции строится на основе однонаправленной функции f(-), которая образует выходное значение длиной n при задании двух входных значений длиной n. Этими входами являются блок исходного текста m и хеш-значение
предыдущего блока текста (рис.8):Рис. 8. Построение однонаправленной хеш-функции.
Хеш-значение, вычисляемое при вводе последнего блока текста, становится хеш-значением всего сообщения М.
В результате однонаправленная хеш-функция всегда формирует выход фиксированной длины n (независимо от длины входного текста).
1.11 Однонаправленные хеш-функции
на основе симметричных блочных алгоритмов
Однонаправленную хеш-функцию можно построить, используя симметричный блочный алгоритм. Наиболее очевидный подход состоит в том, чтобы шифровать сообщение М посредством блочного алгоритма в режиме СВС или СFВ с помощью фиксированного ключа и некоторого вектора инициализации, Последний блок шифр текста можно рассматривать в качестве хеш-значения сообщения М. При таком подходе не всегда возможно построить безопасную однонаправленную хеш-функцию, но всегда можно получить код аутентификации сообщения MAC (Message Authentication Code).
Более безопасный вариант хеш-функции можно получить, используя блок сообщения в качестве ключа, предыдущее хеш-значение - в качестве входа, а текущее хеш-значение - в качестве выхода. Реальные хеш-функции проектируются еще более сложными. Длина блока обычно определяется длиной ключа, а длина хеш-значения совпадает с длиной блока. Поскольку большинство блочных алгоритмов являются 64-битовыми, некоторые схемы хеширования проектируют так, чтобы хеш-значение имело длину, равную двойной длине блока.
Табл. 1. Схема безопасного хеширования, у которых длина хеш-значения равна длине блока
Первые четыре схемы хеширования, являющиеся безопасными при всех атаках, приведены на рис. 9.
Рис. 9. Четыре схемы безопасного хеширования.
2. ОБЪЕКТЫ И СРЕДСТВА ИССЛЕДОВАНИЯ
Объектами исследования являются алгоритмы шифрования, алгоритмы электронной цифровой подписи и соответствующие стандарты.
2.1 Результаты работы
Отчет должен содержать:
1) постановку задачи;
2) описание работы алгоритма, системы;
3) структурную схему работы алгоритма, системы;
4) листинг;
5) тестовые примеры (входные и выходные данные).
2.2 Варианты заданий для выполнения лабораторной работы
1. | Реализация алгоритма Ривеста. |
2. | Реализация алгоритма DES – общий. |
3. | Реализация алгоритма DES – режим сцепления блоков в СВС шифре. |
4. | Реализация алгоритма DES – режим работы ECB (электронный блокнот). |
5. | Реализация алгоритма DES – режим работы CFB – обратная связь по шифротексту. |
6. | Реализация алгоритма DES – OFB – обратная связь по выходу. |
7. | Алгоритм формирования ключей в процессе функционирования DES. |
8. | Алгоритм федерального стандарта х9.9. |
9. | Алгоритм криптографического преобразования – общий. |
10. | Алгоритм криптографического преобразования в режиме простой замены. |
11. | Алгоритм криптографического преобразования в режиме гаммирования. |
12. | Алгоритм криптографического преобразования в режиме гаммирования с обратной связью |
13. | Алгоритм криптографического преобразования в режиме имитовставки. |
14. | Алгоритм RSA – общий. |
15. | Алгоритм, основанный на схеме шифрования Эль Гамаля. |
16. | Алгоритм, основанный на комбинированном методе шифрования |
17. | Алгоритм, основанный на комбинированном методе шифрования (симметричные системы с секретном ключом + ассиметричные системы с открытым ключом) – общий. |
18. | Алгоритм открытого распределения ключей Диффи-Хеллмана |
19. | Алгоритм на основе протокола Kerberos (Цербер) с применением алгоритма DES и других. |
20. | Алгоритм цифровой подписи RSA. |
21. | Алгоритм цифровой подписи DSA. |
22. | Отечественный стандарт цифровой подписи ГОСТ Р34.10-94 (близок к алгоритму DSA). |
23. | Алгоритм цифровой подписи с дополнительными функциями по схеме «слепой подписи». |
24. | Алгоритм цифровой подписи с дополнительными функциями по схеме «неоспоримой подписи». |
25. | Реализация модели защиты ОС – Харрисона-Руззо-Ульмана (модель доступа к данным). |
26. | Реализация матричной модели доступа. |
2.3 Контрольные вопросы
1. Концепция криптосистем с открытым ключом. Однонаправленные функции.
2. Особенности симметричных криптосистем.
3. Модель доступа к данным при защите ОС.
4. Электронная цифровая подпись
5. Алгоритмы электронной цифровой подписи
6. Проблемы аутентификации данных и электронная цифровая подпись.
7. Управление криптографическими ключами.
БИБЛИОГРАФИЧЕСКИЙ СПИСОК
1. Защита информации в персональных ЭВМ/ А.В. Спесивцев, В.А. Вернер, А.Ю. Крутяков и др..- М.: Радио и связь, 1993 г.
2. Теоретические основы компьютерной безопасности. Уч. Пособие для вузов по спец. "Компьютерная безопасность", "Компьютерное обеспечение информационной безопасности автоматизированных систем"/ П.Н. Девытин, О.О. Михальский, Д.И. Правиков, А.Ю. Щербатов. – М.: Радио и связь.2000 – 190 с.
3. Основы информационной безопасности. Учебное пособие для вузов/Е.Б. Белов, В.П. Лось, Р.В. Мещеряков, А.А. Шелупанов – М.: Горячая линия – Телеком, 2006-544 с.
4. Введение в защиту информации в автоматизированных системах: Учебное пособие для вузов. – 2-е издание. – М.: Горячая линия – Телеком, 2004-147 с.