Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

block_ciphers

.pdf
Скачиваний:
8
Добавлен:
21.05.2015
Размер:
789.95 Кб
Скачать

Симметричная криптография. Блочные шифры

Егор Никуленков

ВГУ

2013

Потоковые шифры

Основная идея: замена потока действительно случайных чисел на поток псевдослучайных чисел

G - генератор псевдослучайных чисел

Функция шифрования:

E(k; m) = m G (k)

Функция дешифрования:

D(k; c) = c G (k)

Может применяться к сообщениям произвольной длины

Недостатки потоковых шифров

Невозможность использования одинаковых значений ключа дважды

Невозможность проверки целостности сообщений

Состояние ГСЧ на обоих сторонах общения должно быть синхронизировано

Результат шифрования полностью определяется открытым текстом и используемым ключом

Определение

Блочный шифр (block cipher) функция шифрования, которая применяется к блокам текста фиксированной длины.

AES: n=128 bits, k = 128, 192, 256

Основные принципы работы

R(k; m) - раундовая функция

У AES-128 10 раундовых функций

Псевдослучайные функции и перестановки

Псевдослучайная функция (Pseudo Random Function, PRF) эффективно вычислимая функция, определенная на

(K ; X ; Y )

F : K X ! Y

.

Псевдослучайные функции и перестановки

Псевдослучайная перестановка (Pseudo Random Permutation, PRP) эффективно вычислимая функция, определенная на (K ; X )

E: K X ! X

иимеющая следующие свойства:

Существует эффективно вычислимый алгоритм для вычисления E(k; x)

Функция E (k; ) является однозначной

Существует эффективно вычислимый алгоритм для нахождения обратной функции D(k; y)

.

Безопасные PRF

Интуитивное определение безопасности PRF

F : K X ! Y - некоторая PRF

Определим:

Funs[X ; Y ] : множество всех возможных функций из X в Y SF = fF (k; ); k 2 K g Funs[X ; Y ]

Невозможно отличить случайно выбранную функцию из Funs[X ; Y ] от функции, случайно выбранной из SF

Безопасные PRF

Пример использования

F : K f0; 1gn ! f0; 1gn - безопасная PRF

Построим безопасный ГСЧ на основе F

G : K ! f0; 1gnt

G (k) = F (k; 0)jjF (k; 1)jj : : : jjF (k; t)

Основные принципы работы

R(k; m) - раундовая функция

У AES-128 10 раундовых функций

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]