Слайд 1Атака на потоковый шифр
(Атака со вставкой)
Для реализации атаки противник
перехватывая
криптограмму в первом сеансе связи, вызывает сбой в передаче
(это
вынуждает отправителя повторить передачу).
Навязывает во втором сеансе связи один дополнительный бит к предыдущему сообщению (до шифрования).
Слайд 2Сеансы связи
1-й сеанс: M1 M2 M3 M4
K1 K2 K3
K4
E1 E2 E3 E4
2-й сеанс: M1 Mins M2 M3
M4
K1 K2 K3 K4 K5
E1 E’2 E’3 E’4 E’5
Слайд 3Вскрытие сообщения
Противнику известен Mins ,все Ei и E’i
Из 2-го сеанса
Г2=E’2+Mins
Из 1-го сеанса M2=Г2+E2
Из 2-го сеанса Г3=E’3+M2
Из 1-го сеанса M3=Г3+E3
…
Слайд 4Асимметричные системы шифрования
До 70-х Kш=Kр
С 70-x Диффи и Хелман
предложили систему с: Kш = Kр
Слайд 5Требования к асимметричным системам
Формирование пары ключей – д.б. простым.
Шифрование и
расшифрование на известных ключах д.б. простым.
Определение Kр из ключа шифрования
Kш д.б. сложным.
Определение M из Kш ,E при известных f() и g() д.б. сложным.
Слайд 6Если выполняются требования 3 и 4, то Кш можно не
держать в секрете, сделать открытым.
Название таких систем:
Криптосистемы с открытым ключом.
(public key)
Будем использовать обозначения:
Кш => K открытый ключ
Kр => k секретный ключ
(традиционные системы иногда называют системами с секретным ключом)
Слайд 7Принцип работы:
A
KA kA
1.Формирование ключей:
В
KВ kВ
2. Распределение ключей:
EдляB=f(MдляB;KB)
3. Шифрование:
KB
KA
EдляA= f(MдляA;KA)
EдляA
EдляB
3. Расшифрование:
МдляА=g(EдляA;kA)
МдляB=g(EдляB;kB)
Слайд 8Назначение
Упрощение распределения ключей:
Не требуется секретный канал связи для распределения ключей!
Однако
необходимо производить защиту ключей от подмены.
A
B
X
KA
KX
KX
Слайд 9Защита от подмены:
Между небольшим числом частных лиц – контроль правильности
ключа при личным контактом
(например, общение по телефону с узнаванием
собеседника, т.е. С подтверждением подлинности).
Среди большого числа лиц
– с помощью специальных центров распределения ключей (сертификации ключей)
Слайд 10Схема распределения ключей с ЦРК
ЦРК
Хранилище ключей
A – KA
B –
KB
C – KC
A
B
C
каждый регистрируется в ЦРК лично и
получает ключ ЦРК - KЦРК
KB
E=f(M,KB)
M=f(M,kB)
kA
kB
kС
E
Слайд 11Передача секретных данных без распределения ключей
Необходимое условие – функция шифрования
f() – должна быть коммутативной, т.е. fK1(fK2(M))=fK2(fK1(M))
Протокол:
A: E=f(M,KA); A -------
E ------> B
B: E’=f(E,KB); B ------- E’------> A
A: E’=f(f(M,KA),KB);
f(f(M,KA),KB) = f(f(M,KB),KA)
g(f(f(M,KB),KA),KA)=E’’= f(M,KB); A ------- E’’ ------> B
B:M=g(E’’,KB)
Слайд 12Передача секретных данных без распределения ключей
A
B
Слайд 13Сведения из теории чисел
Модульная арифметика:
Действия совершаются с целыми числами по
модулю некоторого числа
(в криптографии разрядность достигает нескольких сотен)
Пусть resn(a)
– остаток от деления а на n
(a+b) mod n = resn (a+b)
(a-b) mod n = resn (a+(-b))
(-b) mod n = resn (n-b)
(a*b) mod n = resn (a*b)
Слайд 14Модульная арифметика
Справедливо:
(a+b) mod n = (a mod n + b
mod n) mod n
(a*b) mod n = (a mod n
* b mod n) mod n
Вторая операция по mod необходима если после суммирования (умножения) результат превосходит n.
По mod 9:
-8 -1
0 8
9 17
18
Слайд 15Модульная арифметика
Выполняются законы
Коммутативный (переместительный)
(a+b)=(b+a) mod n; a*b=b*a mod n
Ассоциативный (сочетательный)
(a+(b+c))
= ((a+b)+c) mod n
a(bc) = (ab)c mod n
Дистрибутивный (распределительный)
a (b+c)
= ab + ac mod n
Слайд 16Сведения из теории чисел
Функция Эйлера φ(x)– определяет число целых чисел
на промежутке
от 1 до x-1 взаимно простых с х
(взаимно
простые – числа, которые не имеют общих множителей: 14 и 15