- •Вопрос 1.
- •Вопрос 2.
- •Вопрос 3.
- •Формальное описание
- •Комментарии к алгоритму.
- •Вопрос 4.
- •Умножение и факторизация
- •Возведение в квадрат и извлечение квадратного корня по модулю
- •Дискретное экспоненцирование и логарифмирование
- •Криптографические хэш-функции
- •Другие претенденты
- •Вопрос 6.
- •1. Заполнение памяти.
- •2. Определение ключа.
- •Вопрос 7.
- •Вопрос 8.
- •Вопрос 9.
- •Применение.
- •Преимущества
- •Недостатки.
- •Вопрос 10.
- •Вопрос 11.
- •Обеспечение целостности данных с использование шифрации и mac
- •Вопрос 12.
- •Использование хеш-функций
- •Симметричная схема
- •Асимметричная схема
- •Пример алгоритмов.
- •Модели атак и их возможные результаты.
- •Вопрос 13.
- •Вопрос 14.
- •Вопрос 15.
- •Вопрос 16.
Применение.
Алгоритмы криптосистемы с открытым ключом можно использовать[7]
Как самостоятельные средства для защиты передаваемой и хранимой информации
Как средства распределения ключей. Обычно с помощью алгоритмов криптосистем с открытым ключом распределяют ключи, малые по объёму. А саму передачу больших информационных потоков осуществляют с помощью других алгоритмов.
Как средства аутентификации пользователей.
Преимущества
Преимущество асимметричных шифров перед симметричными шифрами состоит в отсутствии необходимости предварительной передачи секретного ключа по надёжному каналу.
В симметричной криптографии ключ держится в секрете для обеих сторон, а в асимметричной криптосистеме только один секретный.
При симметричном шифровании необходимо обновлять ключ после каждого факта передачи, тогда как в асимметричных криптосистемах пару (E,D) можно не менять значительное время.
В больших сетях число ключей в асимметричной криптосистеме значительно меньше, чем в симметричной.
Недостатки.
Преимущество алгоритма симметричного шифрования над несимметричным заключается в том, что в первый относительно легко внести изменения.
Хотя сообщения надежно шифруются, но «засвечиваются» получатель и отправитель самим фактом пересылки шифрованного сообщения.
Несимметричные алгоритмы используют более длинные ключи, чем симметричные.
Процесс шифрования-расшифрования с использованием пары ключей проходит на два-три порядка медленнее, чем шифрование-расшифрование того же текста симметричным алгоритмом.
В чистом виде асимметричные криптосистемы требуют существенно больших вычислительных ресурсов, потому на практике используются в сочетании с другими алгоритмами.
Для ЭЦП сообщение предварительно подвергается хешированию, а с помощью асимметричного ключа подписывается лишь относительно небольшой результат хеш-функции.
Для шифрования они используются в форме гибридных криптосистем, где большие объёмы данных шифруются симметричным шифром на сеансовом ключе, а с помощью асимметричного шифра передаётся только сам сеансовый ключ.
Виды шифров.
RSA (Rivest-Shamir-Adleman, Ривест — Шамир — Адлеман)
DSA (Digital Signature Algorithm)
Elgamal (Шифросистема Эль-Гамаля)
Diffie-Hellman (Обмен ключами Диффи — Хелмана)
ECDSA (Elliptic Curve Digital Signature Algorithm) — алгоритм с открытым ключом для создания цифровой подписи.
ГОСТ Р 34.10-2001
Rabin
Luc
McEliece
Williams System (Криптосистема Уильямса)
Вопрос 10.
Хеш-функции.
Криптографической называется всякая хеш-функция, являющаяся криптостойкой, то есть, удовлетворяющая ряду требований специфичных для криптографических приложений.
Требования.
Для того, чтобы хеш-функция H считалась криптографически стойкой, она должна удовлетворять трем основным требованиям, на которых основано большинство применений хеш-функций в криптографии:
Необратимость или стойкость к восстановлению прообраза: для заданного значения хеш-функции m должно быть вычислительно невозможно найти блок данных X, для которого H(X) = m.
Стойкость к коллизиям первого рода или восстановлению вторых прообразов: для заданного сообщения M должно быть вычислительно невозможно подобрать другое сообщение N, для которого H(N) = H(M).
Стойкость к коллизиям второго рода: должно быть вычислительно невозможно подобрать пару сообщений , имеющих одинаковый хеш.
Данные требования не являются независимыми:
Обратимая функция нестойка к коллизиям первого и второго рода.
Функция, нестойкая к коллизиям первого рода, нестойка к коллизиям второго рода; обратное неверно.
Следует отметить, что не доказано существование необратимых хеш-функций, для которых вычисление какого-либо прообраза заданного значения хеш-функции теоретически невозможно. Обычно нахождение обратного значения является лишь вычислительно сложной задачей.
Атака «дней рождения» позволяет находить коллизии для хеш-функции с длиной значений n битов в среднем за примерно 2n / 2 вычислений хеш-функции. Поэтому n-битная хеш-функция считается криптостойкой, если вычислительная сложность нахождения коллизий для неё близка к 2n / 2.
Для криптографических хеш-функций также важно, чтобы при малейшем изменении аргумента значение функции сильно изменялось (лавинный эффект). В частности, значение хеша не должно давать утечки информации даже об отдельных битах аргумента. Это требование является залогом криптостойкости алгоритмов хеширования пользовательских паролей для получения ключей.
Структура Меркла-Дамгарда.
— метод построения криптографических хеш-функций. Криптографическая хеш-функция должна преобразовывать входное сообщение произвольной длины в выходное сообщение фиксированной длины. Этого можно достичь путём разбиения входного сообщение на блоки одинакового размера и их последовательной обработки односторонней функцией сжатия, которая преобразовывает входное сообщение фиксированной длины в более короткое выходное сообщение фиксированной длины. Функция сжатия либо может быть специально построена для хеширования либо может представлять собой функцию блочного шифрования. Хеш-функция Меркла-Дамгарда разбивает входное сообщение на блоки и работает с ними по очереди с помощью функции сжатия, каждый раз принимая входной блок с выходным от предыдущего раунда.
Алгоритмы
Message-Digest algorithm 5 (MD5)
SHA-1, SHA-2, SHA-3