Учебное пособие: Современные симметричные и асимметричные криптосистемы
Большинство хеш-функции строится на основе однонаправленной функции 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. Электронная цифровая подпись