
- •Виды атак на криптографические алгоритмы. Понятие стойкости.
- •Шифры замены. Математическая модель. Примеры.
- •Шифры перестановки. Математическая модель. Примеры.
- •Шифры гаммирования. Математическая модель. Примеры.
- •Принципы построения блочных шифров. Схема Фейстеля.
- •Шифрование в ячейке Фейстеля Расшифрование в ячейке Фейстеля Формирование группы
- •Алгоритм симметричного шифрования des.
- •Алгоритм симметричного шифрования гост 28147-99.
- •Алгоритм симметричного шифрования Rijndael.
- •4.Добавление ключа.
- •Алгоритмы симметричного шифрования idea и Blowfish.
- •Режимы выполнения алгоритмов симметричного шифрования.
- •Поточные криптосистемы. Принципы построения. Классификация. Проблема синхронизации.
- •Линейные конгруэнтные генераторы. Линейные регистры сдвига.
- •Поточные шифры. Отличия от блочных. Стойкость. Методы анализа.
- •Примеры поточных шифров на основе lfsr.
- •Примеры поточных шифров, использующих аддитивные генераторы:
- •Примеры поточных шифров на основе fcsr.
- •Математические методы криптоанализа: метод опробывания, методы на основе теории статистических решений.
- •Линейный криптоанализ.
- •Разностный криптоанализ.
- •Атаки на функции хэширования.
- •Функция хеширования md5.
- •Функция хеширования sha-1.
- •Функция хеширования гост 3411-94.
- •Функция хеширования стб 1176.1-99.
- •Общие положения электронной цифровой подписи. Задачи. Требования.
- •Прямая и арбитражная цифровая подписи. Примеры.
- •Стандарт электронной цифровой подписи dss.
- •Цифровая подпись на основе алгоритмов с открытыми ключами. Схема Фиата-Шамира.
- •Цифровая подпись Эль-Гамаля. Схема rsa.
- •Стандарт электронной цифровой подписи dss.
- •Стандарт электронной цифровой подписи гост-р 34.10-94.
- •Стандарт электронной цифровой подписи стб 1176.2-99.
- •Применение эллиптических кривых в криптографии. Алгоритм шифрования на основе эллиптических кривых.
- •Алгоритмы обмена ключами и электронной цифровой подписи на основе эллиптических кривых.
- •Стеганографические методы защиты информации. Основные понятия и определения. Области применения.
- •Общая модель стеганосистемы. Проблема устойчивости. Стегоанализ.
- •Методы сокрытия информации в неподвижных изображениях.
- •Методы сокрытия информации в текстовых данных.
- •Протоколы аутентификации. Двусторонняя аутентификация.
- •Протоколы аутентификации. Односторонняя аутентификация.
Применение эллиптических кривых в криптографии. Алгоритм шифрования на основе эллиптических кривых.
Шифрование/дешифрование с использованием эллиптических кривых:
Задача состоит в том, чтобы зашифровать сообщение М, которое может быть представлено в виде точки на эллиптической кривой Pm (x,y).
В качестве параметров рассматривается эллиптическая кривая Ep(a,b) и точка G на ней.
Участник B выбирает закрытый ключ nB и вычисляет открытый ключ PB = nB × G.
Чтобы зашифровать сообщение Pm используется открытый ключ получателя B PB.
Участник А выбирает случайное целое положительное число k и вычисляет зашифрованное сообщение Cm, являющееся точкой на эллиптической кривой.
Cm = {k × G, Pm + k × PB}
Для расшифровки участник В умножает первую координату точки на свой закрытый ключ и вычитает результат из второй координаты:
Pm + k × PB - nB × (k × G) = Pm + k × (nB × G) - nB × (k × G) = Pm
Участник А зашифровал сообщение Pm добавлением к нему k × PB.
Никто не знает значения k, поэтому, хотя PB и является открытым ключом, никто не знает k × PB.
Противнику для восстановления сообщения придется вычислить k, зная G и k × G. Сделать это будет нелегко.
Получатель также не знает k, но ему в качестве подсказки посылается k × G.
Умножив k × G на свой закрытый ключ, получатель получит значение, которое было добавлено отправителем к незашифрованному сообщению.
Тем самым получатель, не зная k, но имея свой закрытый ключ, может восстановить незашифрованное сообщение.
Алгоритмы обмена ключами и электронной цифровой подписи на основе эллиптических кривых.
Алгоритм ECDSA (Elliptic Curve Digest Signature Algorithm) принят в качестве стандартов ANSI X9F1 и IEEE P1363.
Создание ключей:
Выбирается эллиптическая кривая Ep(a,b). Число точек на ней должно делиться на большое целое n.
Выбирается точка Р на кривой Ep(a,b).
Выбирается случайное число d из отрезка [1, n-1].
Вычисляется Q = d × P.
Закрытым ключом является d, открытым ключом - (E, P, n, Q).
Создание подписи:
Выбирается случайное число k из отрезка [1,n-1].
Вычисляются k × P = (x1, y1) и r = x1 (mod n). Проверяется, чтобы r не было равно нулю, так как в этом случае подпись не будет зависеть от закрытого ключа. Если r = 0, то выбирается другое случайное число k.
Вычисляется k-1 mod n .
Вычисляется s = k-1(Н(M)+dr) (mod n) Проверяется, чтобы s не было равно нулю, так как в этом случае необходимого для проверки подписи числа s-1 mod n не существует. Если s = 0, то выбирается другое случайное число k.
Подписью для сообщения М является пара чисел (r,s).
Проверка подписи:
Проверить, что целые числа r и s принадлежат диапазону чисел [0, n-1]. В противном случае результат проверки отрицательный, и подпись отвергается.
Вычислить w = s-1 (mod n) и H(M)
Вычислить u1=H(M)w(modn) u2 = r w (mod n)
Вычислить u1P + u2Q = (x0, y0) v = x0 (mod n)
Подпись верна в том и только том случае, когда v = r