745.50K
Category: softwaresoftware

Криптографическая защита информации

1.

Московский технологический институт
Вебинар №1
Дисциплина: «Криптографическая защита информации»
Тема: «Основы защиты информации»
Преподаватель: Елисеев Владимир Николаевич

2.

Целью изучения дисциплины «Криптографическая защита
информации» является ознакомление с основными подходами
и методами современной криптографии для решения задач,
возникающих при обработке, хранении и передаче
информации.
Задачами дисциплины являются:

рассмотреть основные шифры с открытыми ключами;

изучить методы цифровой подписи;

освоить основные криптографические протоколы,
блоковые и потоковые шифры.

3.

Рекомендуемая литература

4.

Криптографические методы защиты информации стали
использоваться очень широко:
- межбанковские расчеты по компьютерным сетям
- биржи, в которых все расчеты проводятся через
Интернет
- расчеты по кредитным карточкам
- перевод заработной платы в банк
- заказ билетов через Интернет
- покупки в Интернет-магазинах и т.д.
Естественно, все эти операции, как и разговоры по
мобильным телефонам и электронная почта, должны быть
защищены от несанкционированного доступа.

5.

Отправитель А и получатель В.
А и В абоненты некоторой сети, пользователи некоторой
компьютерной системы или, еще более формально,
абстрактные «стороны» или «сущности», участвующие в
информационном взаимодействии.
Предполагается, что сообщения передаются по так
называемому «открытому» каналу связи, в принципе
доступному для прослушивания некоторым другим лицам,
отличным от получателя и отправителя.
В криптографии обычно предполагается, что у лица,
передающего сообщения и их принимающего, есть
некоторый противник Е.

6.

Перед тем как передать сообщение по открытому каналу
связи от А к В, А шифрует сообщение, а В, приняв
зашифрованное сообщение, дешифрует его, восстанавливая
исходный текст.
Шифр передается не по открытому каналу, а по
специальному «закрытому» каналу, недоступному для
прослушивания противником.
Шифр Гая Юлия Цезаря. Каждая буква сообщения
заменяется на другую, номер которой в алфавите на три
больше. Например, А заменяется на Г, Б на Д и т.д. Три
последние буквы русского алфавита — Э, Ю, Я —
шифруются буквами А, Б, В соответственно.
ПЕРЕМЕНА – (шифр Цезаря) – ТИУИПИРГ

7.

Можно описать шифр Цезаря в общем виде, если
пронумеровать (закодировать) буквы русского алфавита
числами от 0 до 31 (исключив букву Ё).
Правило шифрования:
с = (m + к) mod 32
где m и с – номера букв соответственно сообщения и
шифротекста, а к – некоторое целое число, называемое
ключом шифра.
a mod b обозначает остаток от деления целого числа а на
целое число b, причем остаток берется из множества
{0,1,...,b-1}. Например, 13 mod 5 = 3.
Чтобы дешифровать зашифрованный
применить «обратный» алгоритм
m = (с - к) mod 32.
текст,
нужно

8.

Классическая система секретной связи

9.

Каждая попытка вскрытия шифра называется атакой на
шифр (или на криптосистему).
«Правило
Керкхоффса»:
противник
может
знать
использованный
алгоритм
шифрования,
характер
передаваемых сообщений и перехваченный шифротекст, но
не знает секретный ключ.
В нашем примере объект Е знает, что шифр был построен в
соответствии с формулой алгоритма Цезаря, что исходное
сообщение было на русском языке и что был передан
шифротекст ТИУИПИРГ, но ключ объекту Е не известен.
Наиболее
очевидная
попытка
расшифровки

последовательный перебор всех возможных ключей (так
называемый метод «грубой силы» (brute-force attack)).

10.

Объект Е перебирает последовательно все возможные
ключи к=1,2, ..., подставляя их в алгоритм дешифрования и
оценивая получающиеся результаты.
Расшифровка слова ТИУИПИРГ путем перебора ключей.
(полученные невозможные слова дальнейшей расшифровке
не подвергались)

11.

Объект А спрятал важные документы в ячейке камеры
хранения, снабженной пятидекадным кодовым замком.
Теперь он хочет сообщить объекту Б комбинацию цифр,
открывающую ячейку. Он решил использовать аналог шифра
Цезаря, адаптированный к алфавиту, состоящему из
десятичных цифр:
с = (m + к) mod 10.
Допустим, объект А послал объекту Б шифротекст 26047.
Объект Е пытается расшифровать его, последовательно
перебирая все возможные ключи.

12.

Расшифровка сообщения 26047 путем перебора ключей
Все полученные варианты равнозначны и Е не может понять,
какая именно комбинация истинна. Анализируя шифротекст, он
не может найти значения секретного ключа. Конечно, до
перехвата сообщения у Е было 100000 возможных значений
кодовой комбинации, а после — только 10. Однако важно
отметить то, что в данном случае всего 10 значений ключа.

13.

В первом примере сообщение — текст на русском языке,
поэтому оно подчиняется многочисленным правилам,
различные буквы и их сочетания имеют различные
вероятности и, в частности, многие наборы букв вообще
запрещены. Поэтому и удалось легко подобрать ключ и
дешифровать сообщение, т.е. избыточность позволила
«взломать» шифр. В противоположность этому, во втором
примере все комбинации цифр допустимы. «Язык» кодового
замка не содержит избыточности. Поэтому даже простой
шифр, примененный к сообщениям этого языка, становится
невскрываемым.

14.

Описанная в приведенных примерах атака называется
атакой по шифротексту.
Атака по известному тексту. Это происходит, если Е
получает в свое распоряжение какие-либо открытые тексты,
соответствующие раннее переданным зашифрованным.
Сопоставляя пары «текст-шифро-текст», Е пытается узнать
секретный ключ, чтобы с его помощью дешифровать все
последующие сообщения.
Атаку по выбранному тексту, когда противник пользуется
не только предоставленными ему парами «текстшифротекст», но может и сам формировать нужные ему
тексты и шифровать их с помощью того ключа, который он
хочет узнать.

15.

Иногда считается, что более надежно использовать шифр,
противостоящий атаке по выбранному тексту, чем
организационно обеспечивать неосуществимость такой
атаки, хотя наиболее осторожные пользователи делают и то, и
другое.
Возможно построение надежных криптосистем без
защищенного канала. В таких системах А и Б вычисляют
секретный ключ так, что Е не может этого сделать. Это
открытие было сделано в основополагающих работах Диффи,
Хеллмана и Меркля в 1976 году и открыло новую эру в
современной криптографии.

16.

Криптосистемы с открытым ключом
Некоторые задачи криптографии:
- хранение паролей в компьютере;
- пароль при пересечении самолетом границы,
запрашиваемый радиолокатором;
- секретный пароль запрашиваемый в начале сеанса банком у
клиента.
Все эти проблемы решаются с использованием
криптографических методов, основанных на понятии
односторонней функции (one-way function).

17.

Пусть дана функция
определенная на конечном множестве X (х € X), для которой
существует обратная функция
Функция называется односторонней, если вычисление по
первой формуле — простая задача, требующая немного
времени, а вычисление обратной функции — задача сложная,
требующая привлечения массы вычислительных ресурсов
где р — некоторое простое число, а х — целое число из
множества {1,2,...,р-1}. Обратная функция называется
дискретным логарифмом

18.

Значение данной функции вычисляется всего за 4 операции
умножения.

19.

Пример. Пусть требуется вычислить 3100 mod 7.
Имеем t = [log100] = 6.(по основанию 2)
Вычисляем числа ряда
а а2 а4 а8 а16 а32 а64
a=3
3 2 4
2 4
2
4
mod 7
100 = (1100100)2
Нам потребовалось всего 8 операций умножения

20.

Количество операций умножения при вычислении по
описанному методу не превосходит 2 log х.
Столь же эффективные алгоритмы вычисления обратной
функции неизвестны. Один из методов вычисления,
называемый «шаг младенца, шаг великана». Этот метод
требует порядка 2√р операций.

21.

Покажем, что при больших р функция действительно
односторонняя, если для вычисления обратной функции
используется метод «шаг младенца, шаг великана». Получаем
следующий результат
Сколько десятичных знаков у чисел размером 512 бит,
которые используются при данном алгоритме шифрования?

22.

Рассмотрим суперкомпьютер, который умножает два 90значных числа за 10-14 сек. (для современных компьютеров
это пока не доступно).
Для вычисления прямой функции такому компьютеру
потребуется Твыч.пр. = 600 • 10-14 = 6 • 10-12 сек.
А для вычисления обратной функции потребуется
Твыч.обр. = 1045 • 10-14 = 1031 сек., т.е. более 1022 лет.

23.

Криптосистемы с открытым ключом
Некоторые задачи криптографии:
- хранение паролей в компьютере;
- пароль при пересечении самолетом границы,
запрашиваемый радиолокатором;
- секретный пароль запрашиваемый в начале сеанса банком у
клиента.
Все эти проблемы решаются с использованием
криптографических методов, основанных на понятии
односторонней функции (one-way function).

24.

Хранение паролей в компьютере
Решение задачи основано на том, что пароли вообще не
хранятся! При регистрации в сети пользователь набирает
свое имя и пароль; пусть, например, его имя — «фрукт», а
пароль — «абрикос». Компьютер рассматривает слово
«абрикос» как двоичную запись числа х и вычисляет y по
прямой функции, где а и р — два несекретных числа. После
этого в памяти компьютера заводится пара (имя, у), где у
вычислено по прямой функции при пароле х. При всех
дальнейших входах этого пользователя после ввода пары
(«фрукт», «абрикос»), компьютер вычисляет по прямой
функции новое значение унов с х = «абрикос» и сравнивает с
хранящимся в памяти ранее вычисленным значением у. Если
унов совпадает с хранящимся в памяти у, соответствующим
данному имени, то это законный пользователь.

25.

Пароль при пересечении самолетом границы,
запрашиваемый радиолокатором
Каждому «своему» самолету присваивается секретное имя,
известное системе ПВО и летчику, точнее, бортовому
компьютеру. Пусть, например, одному из самолетов
присвоено секретное имя СОКОЛ, и этот самолет
приближается к границе 01 февраля 2005 года в 12 час.45
мин. Тогда перед приближением к границе бортовой
компьютер самолета формирует слово
СОКОЛ 05
02
01
12
45
(имя
год месяц день часы минуты).
Полученное слово берётся за х, вычисляют у = ах mod p, где
о и р не секретны. Затем самолет сообщает число у станции
ПВО. Станция сравнивает вычисленное ею число у с
полученным от самолета. Если вычисленное и полученное
значения совпали, то самолет признается как «свой».

26.

Секретный пароль запрашиваемый в начале сеанса
банком у клиента
Решается совершенно аналогично, и оба рассмотренных
метода формирования пароля применимы и используются в
реальных сетевых протоколах.
English     Русский Rules