- •Минобрнауки россии
- •Содержание
- •Раздел 1. Современные методы защиты Тема 1. Криптографические методы защиты данных
- •1.1. Основные типы криптографических протоколов
- •1.2 Симметричная и асимметричная криптография.
- •1.3. Подстановочные и перестановочные шифры
- •Рекомендуемая литература:
- •Тема 2. Симметричные криптографические системы
- •2.1. Стандарт шифрования des
- •Режимы использования шифра des
- •Увеличение криптостойкости алгоритма
- •Применение шифра des
- •2.2. Стандарт шифрования гост 28147-89
- •Рекомендуемая литература:
- •Тема 3. Асимметрические криптографические системы
- •3.1. Алгоритм rsa
- •3.2. Шифр Эль-Гамаля
- •3.3. Основные результаты по анализу стойкости
- •Рекомендуемая литература:
- •Раздел 2. Практические вопросы защиты операционных систем Тема 1. Причины существования уязвимостей в Unix-системах
- •1.1. Краткая история Unix
- •1.2. Уязвимости операционных систем
- •1.3. Технология переполнения буфера
- •Рекомендуемая литература:
- •Тема 2. Проекты безопасности для Linux
- •2.1. Проект openwall
- •2.2. Проект pax
- •2.3. Проект medusa
- •Рекомендуемая литература:
- •Тема 3. Мандатные модели в Linux
- •3.1. Rsbac
- •3.2. Type Enforcement
- •3.3. Сравнение rsbac и seLinux.
- •Рекомендуемая литература:
- •Заключение
- •Список литературы
3.3. Основные результаты по анализу стойкости
В настоящее время криптосистемы с открытым ключом считаются наиболее перспективными. Сравним рассмотренные алгоритмы RSA и Эль-Гамаля.
Алгоритм |
Ключ |
Назначение |
Криптостойкость, MIPS |
Примечания |
RSA |
До 4096 бит |
Шифрование и подпись |
2,7*1028 для ключа 1300 бит |
Основан на трудности задачи факторизации больших чисел; один из первых асимметричных алгоритмов. Включен во многие стандарты |
ElGamal |
До 4096 бит |
Шифрование и подпись |
При одинаковой длине ключа криптостойкость равная RSA, т.е. 2,7*1028 для ключа 1300 бит |
Основан на трудной задаче вычисления дискретных логарифмов в конечном поле; позволяет быстро генерировать ключи без снижения стойкости. Используется в алгоритме цифровой подписи DSA-стандарта DSS |
Табл. 3.1. Сравнение алгоритмов шифрования по анализу стойкости
Шифр RSA всесторонне изучен и признан стойким при достаточной длине ключей. Например, 512 битов для обеспечения стойкости не хватает, а 1024 битов считается приемлемым вариантом. Некоторые утверждают, что с ростом мощности процессоров RSA потеряет стойкость к атаке полным перебором. Однако же увеличение мощности процессоров позволит применить более длинные ключи, что повысит стойкость шифра.
ГОСТ Р34.10-1994, принятый в 1994 году в Российской Федерации, регламентировавший процедуры формирования и проверки электронной цифровой подписи, был основан на схеме Эль-Гамаля. С 2001 года используется новый ГОСТ Р 34.10-2001, использующий арифметику эллиптических кривых, определенных над простыми полями Галуа.
Криптосистемы на эллиптических кривых – самая молодая группа алгоритмов с открытым ключом, использующих в качестве математического аппарата свойства эллиптических кривых на плоскости. Основное отличие таких систем состоит в том, что по сравнению с асимметричными криптосистемами, предложенными ранее, они обеспечивают существенно более высокую криптостойкость при равных затратах на обработку и вычисления. Это объясняется тем, что вычисление обратных функций на эллиптических кривых значительно сложнее, чем, например, вычисление дискретных логарифмов или решение задачи факторизации. В результате тот уровень стойкости, который достигается, скажем, в RSA при использовании 1024-битовых модулей, в системах на эллиптических кривых реализуется при размере модуля 160 бит, что обеспечивает более простую как программную, так и аппаратную реализацию.
Поскольку криптосистема работает с очень большими числами и выполняет такие "трудные" действия, как возведение в степень, то быстродействие криптосистемы невысоко. Асимметричные криптосистемы уступают в скорости симметричным именно "благодаря" использованию таких преобразований. Существуют различные методы повышения скорости RSA. Например, в качестве открытого ключа e берется e=3. Тогда для того, чтобы зашифровать, необходимо всего 3 умножения. Правда в этом случае получается большое d, но предполагают, что у расшифровывающего есть время. Однако использование малой экспоненты e приводит к проблемам с маленькими сообщениями, т.е таких, что M<n1/e, поскольку в этом случае M может быть получено из шифртекста C=Me mod n путем вычисления корня e-ой степени из C.
Для того, чтобы избежать описанной проблемы для маленьких сообщений, а также для невозможности осуществления других атак в сообщение добавляется некоторая случайная строка определенной длины (salt). После получения и расшифровки эта строка удаляется.
Другими словами, шифртекст открытого текста m=m1m2 есть c=c1c2 (mod n). Это свойство, называемое также гомоморфным свойством RSA, позволяет осуществить атаку по выбранному шифртексту.
В том случае, если передаваемое сообщение очень велико, оно разбивается на блоки, каждый из которых затем представляется в виде числа и шифруется с помощью RSA. Для того, чтобы предотвратить замену или перемешивание блоков в сообщении противником возможно использование режима CBC блочных шифров.
Несмотря на достаточную надежность алгоритмов шифрования с открытым ключом, существует возможность проведения атак в системах, использующих асимметричное шифрование. Это связано с тем, что атака может быть направлена не на сам алгоритм шифрования, а на протокол, использующий этот алгоритм. Для исключения возможностей проведения различных атак в системах шифрования с открытым ключом применяют специальные меры, например, заверяют открытые ключи пользователей цифровыми подписями удостоверяющего центра или добавляют к шифруемым сообщениям некоторую случайную информацию.