SlideShare a Scribd company logo
Криптография 
Самое краткое введение в предмет 
Владимир Иванов 
ivlad@yandex-team.ru
Примитивы и протоколы 
Примитивы 
• Симметричный шифр (потоковый, блочный) 
• Аутентификация сообщений, MAC 
• Асимметричный шифр 
Протоколы 
• Выработка ключа 
• Отправка и прием сообщения
Принцип Керкхоффса 
Надежность системы шифрования не должна 
основываться на ее секретности. Система должна 
оставаться надежной даже если все ее компоненты, 
кроме ключа стали известны атакующему.
Симметричные шифры
T Е C 
K C = E (k, T)
C Е T 
K T = D (k, C)
• Для любого фиксированного ключа k, 
Ek является биективной функцией на множестве 
блоков. 
• Типичный размер блока – 128 бит 
• Типичные размеры ключей – 128 или 256 бит
Шифры подстановки 
• Табличная подстановка 
• Шифр Цезаря 
• Методика взлома 
• Полиалфавитные шифры подстановки 
• Шифр Виженера
Шифры перестановки 
• Простая перестановка 
• Перестановка по ключу
Поточные шифры
RC4
Salsa20
Блочный шифр – шифр, оперирующий блоками данных 
фиксированной длины. Определяется функциями 
шифрования и расшифрования.
• Для любого фиксированного ключа k, 
Ek является биективной функцией на множестве 
блоков. 
• Типичный размер блока – 128 бит 
• Типичные размеры ключей – 128 или 256 бит
Сеть Фейстеля
DES 
• Сеть Фейстеля 
• Размер блока - 64 
бита 
• Размер ключа - 56 
бит 
• 16 раундов
Как зашифровать 
несколько блоков?
ECB
ECB
CBC
Birthday paradox 
• Какова вероятность совпадения двух 
блоков выхода шифра? 
• Как это влияет на безопасность 
криптосистемы? 
• Сколько времени это займет на реальном 
трафике?
CFB
OFB
CTR
Как зашифровать 
сообщение короче 
одного блока?
Аутентификация
Подделка содержимого 
Сообщение 
Гамма 
Шифротекст 
+ 
=
Подделка содержимого 
Сообщение 
Гамма 
Шифротекст 
+ 
= 
0 
1 
1
MAC 
• MAC: Message Authentication Code 
• Принимает на вход сообщение и ключ 
• Генерирует код аутентификации или тег
MAC
Современные хеши 
• MD4/MD5 
• Семейство SHA 
• ГОСТ 34.11-94 
• Конкурс на стандартный алгоритм
Применение хеш- 
функций 
• Выработка ключевой информации 
• PBKDF2 
• Хранение паролей 
• Unix crypt(), Windows SAM
Асимметричные 
шифры
Однонаправленные 
функции 
• Однонаправленными (односторонними) 
функциями называются такие, которые легко 
вычислить, но сложно обратить 
• Подтверждает, что P≠NP 
• Функции с лазейкой (trapdoor functions)
Diffie-Hellman
Diffie-Hellman
RSA
RSA 
1.Выбираются два случайных простых числа p и 
q заданного размера (например, 1024 бита 
каждое). 
2.Вычисляется их произведение n = pq, которое 
называется модулем. 
3.Вычисляется значение функции Эйлера от 
числа n φ(n)=(q-1)(p-1)
RSA 
4. Выбирается целое число e (), взаимно простое со значением 
функции φ(n). 
• Число e называется открытой экспонентой (англ. public 
exponent) 
• Время, необходимое для шифрования с использованием 
быстрого возведения в степень, пропорционально числу 
единичных бит в e. 
• Слишком малые значения e, например 3, потенциально 
могут ослабить безопасность схемы RSA.
RSA 
• Вычисляется число d, мультипликативно 
обратное к числу e по модулю , то есть число, 
удовлетворяющее условию 
de≡1 (mod φ(n)) или de = 1 + k φ(n), где k — 
некоторое целое число. 
• Число d называется секретной экспонентой. 
• Обычно, оно вычисляется при помощи 
расширенного алгоритма Евклида.
RSA 
• Пара P = (e,n) публикуется в качестве 
открытого ключа RSA 
• Пара S = (d,n) играет роль секретного 
ключа RSA
RSA, шифрование 
Шифрование на открытом ключе (e, n) 
• Открытый текст M 
• Шифротекст C = Me mod n 
Расшифровка за закрытом ключе (d, n) 
• Cd mod n = (Me mod n)d mod n = 
Med mod n = M mod n
Сравнительная 
стойкость
Необходимо сравнить 
стойкость ключей 
• Строгой оценки нет 
• Оценивается вычислительная сложность 
известных атак 
• на процессорах общего назначения и 
на специальном оборудовании 
• Критерий Ленстры
Сравнительная 
стойкость 
Симметричное 
Ассиметричное 
Оптимистично Пессимистично Хеш 
2008 74 1062 1077 147 
2009 74 1087 1114 148 
2010 75 1112 1152 150 
2011 76 1138 1190 151 
2012 76 1164 1229 152 
http://keylength.com
Собираем всё вместе
Вопросы? 
Владимир Иванов 
ivlad@yandex-team.com

More Related Content

What's hot

Positive Hack Days. Терешкин. "Злая горничная" атакует PGP
Positive Hack Days. Терешкин. "Злая горничная" атакует PGPPositive Hack Days. Терешкин. "Злая горничная" атакует PGP
Positive Hack Days. Терешкин. "Злая горничная" атакует PGP
Positive Hack Days
 
20120219 chosen ciphertext_security_importance_zhirkov
20120219 chosen ciphertext_security_importance_zhirkov20120219 chosen ciphertext_security_importance_zhirkov
20120219 chosen ciphertext_security_importance_zhirkovComputer Science Club
 
Филипп Торчинский «Анализ производительности и отладка приложений с помощью D...
Филипп Торчинский «Анализ производительности и отладка приложений с помощью D...Филипп Торчинский «Анализ производительности и отладка приложений с помощью D...
Филипп Торчинский «Анализ производительности и отладка приложений с помощью D...
Yandex
 
Rust: история языка и контекст применения
Rust: история языка и контекст примененияRust: история языка и контекст применения
Rust: история языка и контекст применения
Nikita Baksalyar
 
Современные подходы к SAST
Современные подходы к SASTСовременные подходы к SAST
Современные подходы к SAST
Vladimir Kochetkov
 
Лекция 7: Многопоточное программирование: часть 3 (OpenMP)
Лекция 7: Многопоточное программирование: часть 3 (OpenMP)Лекция 7: Многопоточное программирование: часть 3 (OpenMP)
Лекция 7: Многопоточное программирование: часть 3 (OpenMP)Mikhail Kurnosov
 
Использование C++ для низкоуровневой платформозависимой разработки — Кирилл ...
 Использование C++ для низкоуровневой платформозависимой разработки — Кирилл ... Использование C++ для низкоуровневой платформозависимой разработки — Кирилл ...
Использование C++ для низкоуровневой платформозависимой разработки — Кирилл ...
Yandex
 
Для чего мы делали свой акторный фреймворк и что из этого вышло?
Для чего мы делали свой акторный фреймворк и что из этого вышло?Для чего мы делали свой акторный фреймворк и что из этого вышло?
Для чего мы делали свой акторный фреймворк и что из этого вышло?
Yauheni Akhotnikau
 
Блокчейн, консенсус - как и зачем? #spblockchain
Блокчейн, консенсус - как и зачем? #spblockchainБлокчейн, консенсус - как и зачем? #spblockchain
Блокчейн, консенсус - как и зачем? #spblockchain
Дмитрий Плахов
 

What's hot (9)

Positive Hack Days. Терешкин. "Злая горничная" атакует PGP
Positive Hack Days. Терешкин. "Злая горничная" атакует PGPPositive Hack Days. Терешкин. "Злая горничная" атакует PGP
Positive Hack Days. Терешкин. "Злая горничная" атакует PGP
 
20120219 chosen ciphertext_security_importance_zhirkov
20120219 chosen ciphertext_security_importance_zhirkov20120219 chosen ciphertext_security_importance_zhirkov
20120219 chosen ciphertext_security_importance_zhirkov
 
Филипп Торчинский «Анализ производительности и отладка приложений с помощью D...
Филипп Торчинский «Анализ производительности и отладка приложений с помощью D...Филипп Торчинский «Анализ производительности и отладка приложений с помощью D...
Филипп Торчинский «Анализ производительности и отладка приложений с помощью D...
 
Rust: история языка и контекст применения
Rust: история языка и контекст примененияRust: история языка и контекст применения
Rust: история языка и контекст применения
 
Современные подходы к SAST
Современные подходы к SASTСовременные подходы к SAST
Современные подходы к SAST
 
Лекция 7: Многопоточное программирование: часть 3 (OpenMP)
Лекция 7: Многопоточное программирование: часть 3 (OpenMP)Лекция 7: Многопоточное программирование: часть 3 (OpenMP)
Лекция 7: Многопоточное программирование: часть 3 (OpenMP)
 
Использование C++ для низкоуровневой платформозависимой разработки — Кирилл ...
 Использование C++ для низкоуровневой платформозависимой разработки — Кирилл ... Использование C++ для низкоуровневой платформозависимой разработки — Кирилл ...
Использование C++ для низкоуровневой платформозависимой разработки — Кирилл ...
 
Для чего мы делали свой акторный фреймворк и что из этого вышло?
Для чего мы делали свой акторный фреймворк и что из этого вышло?Для чего мы делали свой акторный фреймворк и что из этого вышло?
Для чего мы делали свой акторный фреймворк и что из этого вышло?
 
Блокчейн, консенсус - как и зачем? #spblockchain
Блокчейн, консенсус - как и зачем? #spblockchainБлокчейн, консенсус - как и зачем? #spblockchain
Блокчейн, консенсус - как и зачем? #spblockchain
 

Similar to Владимир Иванов - Криптография и шифрование

лабораторная работа 4
лабораторная работа 4лабораторная работа 4
лабораторная работа 4Gulnaz Shakirova
 
Криптография
КриптографияКриптография
Криптография
Valentin Gostyuzhov
 
Стажировка 2016-08-04 01 Денис Нелюбин. Шифрование и безопасность
Стажировка 2016-08-04 01 Денис Нелюбин. Шифрование и безопасностьСтажировка 2016-08-04 01 Денис Нелюбин. Шифрование и безопасность
Стажировка 2016-08-04 01 Денис Нелюбин. Шифрование и безопасность
SmartTools
 
Алгоритмы шифрования и их применение в .Net приложениях для защиты данных.
Алгоритмы шифрования и их применение в .Net приложениях для защиты данных.Алгоритмы шифрования и их применение в .Net приложениях для защиты данных.
Алгоритмы шифрования и их применение в .Net приложениях для защиты данных.
Pavel Tsukanov
 
криптографические методы как часть общей защиты информации
криптографические методы как часть общей защиты информациикриптографические методы как часть общей защиты информации
криптографические методы как часть общей защиты информации
trenders
 
Криптология в анализе защищённости
Криптология в анализе защищённостиКриптология в анализе защищённости
Криптология в анализе защищённости
beched
 
C:\fakepath\кмсзи экз
C:\fakepath\кмсзи   экзC:\fakepath\кмсзи   экз
C:\fakepath\кмсзи экз
darina andr
 
курсовой проект
курсовой проекткурсовой проект
курсовой проектGulnaz Shakirova
 
Positive Hack Days. Лепихин. Мастер-класс: Атаки в беспроводных сетях
Positive Hack Days. Лепихин. Мастер-класс: Атаки в беспроводных сетяхPositive Hack Days. Лепихин. Мастер-класс: Атаки в беспроводных сетях
Positive Hack Days. Лепихин. Мастер-класс: Атаки в беспроводных сетях
Positive Hack Days
 
Криптография
КриптографияКриптография
КриптографияArtem Lukanin
 
SSL/TLS: история уязвимостей
SSL/TLS: история уязвимостейSSL/TLS: история уязвимостей
SSL/TLS: история уязвимостей
Positive Hack Days
 
10 lek
10 lek10 lek
10 lek
darina andr
 
НИТИ криптография лекция 2
НИТИ криптография лекция 2НИТИ криптография лекция 2
НИТИ криптография лекция 2Andrei V, Zhuravlev
 
Поиск уязвимостей с использованием статического анализа кода
Поиск уязвимостей с использованием статического анализа кодаПоиск уязвимостей с использованием статического анализа кода
Поиск уязвимостей с использованием статического анализа кода
corehard_by
 
Поиск уязвимостей с использованием статического анализа кода
Поиск уязвимостей с использованием статического анализа кодаПоиск уязвимостей с использованием статического анализа кода
Поиск уязвимостей с использованием статического анализа кода
Andrey Karpov
 
Эффективное использование x86-совместимых CPU (Алексей Тутубалин)
Эффективное использование x86-совместимых CPU (Алексей Тутубалин)Эффективное использование x86-совместимых CPU (Алексей Тутубалин)
Эффективное использование x86-совместимых CPU (Алексей Тутубалин)Ontico
 
инфраструктура открытых ключей (Pki)
инфраструктура открытых ключей (Pki)инфраструктура открытых ключей (Pki)
инфраструктура открытых ключей (Pki)Yandex
 
современные средства криптографической поддержки электронного документооборота
современные средства криптографической поддержки электронного документооборотасовременные средства криптографической поддержки электронного документооборота
современные средства криптографической поддержки электронного документооборота
trenders
 

Similar to Владимир Иванов - Криптография и шифрование (20)

лабораторная работа 4
лабораторная работа 4лабораторная работа 4
лабораторная работа 4
 
Криптография
КриптографияКриптография
Криптография
 
Стажировка 2016-08-04 01 Денис Нелюбин. Шифрование и безопасность
Стажировка 2016-08-04 01 Денис Нелюбин. Шифрование и безопасностьСтажировка 2016-08-04 01 Денис Нелюбин. Шифрование и безопасность
Стажировка 2016-08-04 01 Денис Нелюбин. Шифрование и безопасность
 
Алгоритмы шифрования и их применение в .Net приложениях для защиты данных.
Алгоритмы шифрования и их применение в .Net приложениях для защиты данных.Алгоритмы шифрования и их применение в .Net приложениях для защиты данных.
Алгоритмы шифрования и их применение в .Net приложениях для защиты данных.
 
криптографические методы как часть общей защиты информации
криптографические методы как часть общей защиты информациикриптографические методы как часть общей защиты информации
криптографические методы как часть общей защиты информации
 
Криптология в анализе защищённости
Криптология в анализе защищённостиКриптология в анализе защищённости
Криптология в анализе защищённости
 
C:\fakepath\кмсзи экз
C:\fakepath\кмсзи   экзC:\fakepath\кмсзи   экз
C:\fakepath\кмсзи экз
 
курсовой проект
курсовой проекткурсовой проект
курсовой проект
 
лекция 17
лекция 17лекция 17
лекция 17
 
лекция 17
лекция 17лекция 17
лекция 17
 
Positive Hack Days. Лепихин. Мастер-класс: Атаки в беспроводных сетях
Positive Hack Days. Лепихин. Мастер-класс: Атаки в беспроводных сетяхPositive Hack Days. Лепихин. Мастер-класс: Атаки в беспроводных сетях
Positive Hack Days. Лепихин. Мастер-класс: Атаки в беспроводных сетях
 
Криптография
КриптографияКриптография
Криптография
 
SSL/TLS: история уязвимостей
SSL/TLS: история уязвимостейSSL/TLS: история уязвимостей
SSL/TLS: история уязвимостей
 
10 lek
10 lek10 lek
10 lek
 
НИТИ криптография лекция 2
НИТИ криптография лекция 2НИТИ криптография лекция 2
НИТИ криптография лекция 2
 
Поиск уязвимостей с использованием статического анализа кода
Поиск уязвимостей с использованием статического анализа кодаПоиск уязвимостей с использованием статического анализа кода
Поиск уязвимостей с использованием статического анализа кода
 
Поиск уязвимостей с использованием статического анализа кода
Поиск уязвимостей с использованием статического анализа кодаПоиск уязвимостей с использованием статического анализа кода
Поиск уязвимостей с использованием статического анализа кода
 
Эффективное использование x86-совместимых CPU (Алексей Тутубалин)
Эффективное использование x86-совместимых CPU (Алексей Тутубалин)Эффективное использование x86-совместимых CPU (Алексей Тутубалин)
Эффективное использование x86-совместимых CPU (Алексей Тутубалин)
 
инфраструктура открытых ключей (Pki)
инфраструктура открытых ключей (Pki)инфраструктура открытых ключей (Pki)
инфраструктура открытых ключей (Pki)
 
современные средства криптографической поддержки электронного документооборота
современные средства криптографической поддержки электронного документооборотасовременные средства криптографической поддержки электронного документооборота
современные средства криптографической поддержки электронного документооборота
 

More from Yandex

Предсказание оттока игроков из World of Tanks
Предсказание оттока игроков из World of TanksПредсказание оттока игроков из World of Tanks
Предсказание оттока игроков из World of Tanks
Yandex
 
Как принять/организовать работу по поисковой оптимизации сайта, Сергей Царик,...
Как принять/организовать работу по поисковой оптимизации сайта, Сергей Царик,...Как принять/организовать работу по поисковой оптимизации сайта, Сергей Царик,...
Как принять/организовать работу по поисковой оптимизации сайта, Сергей Царик,...
Yandex
 
Структурированные данные, Юлия Тихоход, лекция в Школе вебмастеров Яндекса
Структурированные данные, Юлия Тихоход, лекция в Школе вебмастеров ЯндексаСтруктурированные данные, Юлия Тихоход, лекция в Школе вебмастеров Яндекса
Структурированные данные, Юлия Тихоход, лекция в Школе вебмастеров Яндекса
Yandex
 
Представление сайта в поиске, Сергей Лысенко, лекция в Школе вебмастеров Яндекса
Представление сайта в поиске, Сергей Лысенко, лекция в Школе вебмастеров ЯндексаПредставление сайта в поиске, Сергей Лысенко, лекция в Школе вебмастеров Яндекса
Представление сайта в поиске, Сергей Лысенко, лекция в Школе вебмастеров Яндекса
Yandex
 
Плохие методы продвижения сайта, Екатерины Гладких, лекция в Школе вебмастеро...
Плохие методы продвижения сайта, Екатерины Гладких, лекция в Школе вебмастеро...Плохие методы продвижения сайта, Екатерины Гладких, лекция в Школе вебмастеро...
Плохие методы продвижения сайта, Екатерины Гладких, лекция в Школе вебмастеро...
Yandex
 
Основные принципы ранжирования, Сергей Царик и Антон Роменский, лекция в Школ...
Основные принципы ранжирования, Сергей Царик и Антон Роменский, лекция в Школ...Основные принципы ранжирования, Сергей Царик и Антон Роменский, лекция в Школ...
Основные принципы ранжирования, Сергей Царик и Антон Роменский, лекция в Школ...
Yandex
 
Основные принципы индексирования сайта, Александр Смирнов, лекция в Школе веб...
Основные принципы индексирования сайта, Александр Смирнов, лекция в Школе веб...Основные принципы индексирования сайта, Александр Смирнов, лекция в Школе веб...
Основные принципы индексирования сайта, Александр Смирнов, лекция в Школе веб...
Yandex
 
Мобильное приложение: как и зачем, Александр Лукин, лекция в Школе вебмастеро...
Мобильное приложение: как и зачем, Александр Лукин, лекция в Школе вебмастеро...Мобильное приложение: как и зачем, Александр Лукин, лекция в Школе вебмастеро...
Мобильное приложение: как и зачем, Александр Лукин, лекция в Школе вебмастеро...
Yandex
 
Сайты на мобильных устройствах, Олег Ножичкин, лекция в Школе вебмастеров Янд...
Сайты на мобильных устройствах, Олег Ножичкин, лекция в Школе вебмастеров Янд...Сайты на мобильных устройствах, Олег Ножичкин, лекция в Школе вебмастеров Янд...
Сайты на мобильных устройствах, Олег Ножичкин, лекция в Школе вебмастеров Янд...
Yandex
 
Качественная аналитика сайта, Юрий Батиевский, лекция в Школе вебмастеров Янд...
Качественная аналитика сайта, Юрий Батиевский, лекция в Школе вебмастеров Янд...Качественная аналитика сайта, Юрий Батиевский, лекция в Школе вебмастеров Янд...
Качественная аналитика сайта, Юрий Батиевский, лекция в Школе вебмастеров Янд...
Yandex
 
Что можно и что нужно измерять на сайте, Петр Аброськин, лекция в Школе вебма...
Что можно и что нужно измерять на сайте, Петр Аброськин, лекция в Школе вебма...Что можно и что нужно измерять на сайте, Петр Аброськин, лекция в Школе вебма...
Что можно и что нужно измерять на сайте, Петр Аброськин, лекция в Школе вебма...
Yandex
 
Как правильно поставить ТЗ на создание сайта, Алексей Бородкин, лекция в Школ...
Как правильно поставить ТЗ на создание сайта, Алексей Бородкин, лекция в Школ...Как правильно поставить ТЗ на создание сайта, Алексей Бородкин, лекция в Школ...
Как правильно поставить ТЗ на создание сайта, Алексей Бородкин, лекция в Школ...
Yandex
 
Как защитить свой сайт, Пётр Волков, лекция в Школе вебмастеров
Как защитить свой сайт, Пётр Волков, лекция в Школе вебмастеровКак защитить свой сайт, Пётр Волков, лекция в Школе вебмастеров
Как защитить свой сайт, Пётр Волков, лекция в Школе вебмастеров
Yandex
 
Как правильно составить структуру сайта, Дмитрий Сатин, лекция в Школе вебмас...
Как правильно составить структуру сайта, Дмитрий Сатин, лекция в Школе вебмас...Как правильно составить структуру сайта, Дмитрий Сатин, лекция в Школе вебмас...
Как правильно составить структуру сайта, Дмитрий Сатин, лекция в Школе вебмас...
Yandex
 
Технические особенности создания сайта, Дмитрий Васильева, лекция в Школе веб...
Технические особенности создания сайта, Дмитрий Васильева, лекция в Школе веб...Технические особенности создания сайта, Дмитрий Васильева, лекция в Школе веб...
Технические особенности создания сайта, Дмитрий Васильева, лекция в Школе веб...
Yandex
 
Конструкторы для отдельных элементов сайта, Елена Першина, лекция в Школе веб...
Конструкторы для отдельных элементов сайта, Елена Першина, лекция в Школе веб...Конструкторы для отдельных элементов сайта, Елена Першина, лекция в Школе веб...
Конструкторы для отдельных элементов сайта, Елена Першина, лекция в Школе веб...
Yandex
 
Контент для интернет-магазинов, Катерина Ерошина, лекция в Школе вебмастеров ...
Контент для интернет-магазинов, Катерина Ерошина, лекция в Школе вебмастеров ...Контент для интернет-магазинов, Катерина Ерошина, лекция в Школе вебмастеров ...
Контент для интернет-магазинов, Катерина Ерошина, лекция в Школе вебмастеров ...
Yandex
 
Как написать хороший текст для сайта, Катерина Ерошина, лекция в Школе вебмас...
Как написать хороший текст для сайта, Катерина Ерошина, лекция в Школе вебмас...Как написать хороший текст для сайта, Катерина Ерошина, лекция в Школе вебмас...
Как написать хороший текст для сайта, Катерина Ерошина, лекция в Школе вебмас...
Yandex
 
Usability и дизайн - как не помешать пользователю, Алексей Иванов, лекция в Ш...
Usability и дизайн - как не помешать пользователю, Алексей Иванов, лекция в Ш...Usability и дизайн - как не помешать пользователю, Алексей Иванов, лекция в Ш...
Usability и дизайн - как не помешать пользователю, Алексей Иванов, лекция в Ш...
Yandex
 
Cайт. Зачем он и каким должен быть, Алексей Иванов, лекция в Школе вебмастеро...
Cайт. Зачем он и каким должен быть, Алексей Иванов, лекция в Школе вебмастеро...Cайт. Зачем он и каким должен быть, Алексей Иванов, лекция в Школе вебмастеро...
Cайт. Зачем он и каким должен быть, Алексей Иванов, лекция в Школе вебмастеро...
Yandex
 

More from Yandex (20)

Предсказание оттока игроков из World of Tanks
Предсказание оттока игроков из World of TanksПредсказание оттока игроков из World of Tanks
Предсказание оттока игроков из World of Tanks
 
Как принять/организовать работу по поисковой оптимизации сайта, Сергей Царик,...
Как принять/организовать работу по поисковой оптимизации сайта, Сергей Царик,...Как принять/организовать работу по поисковой оптимизации сайта, Сергей Царик,...
Как принять/организовать работу по поисковой оптимизации сайта, Сергей Царик,...
 
Структурированные данные, Юлия Тихоход, лекция в Школе вебмастеров Яндекса
Структурированные данные, Юлия Тихоход, лекция в Школе вебмастеров ЯндексаСтруктурированные данные, Юлия Тихоход, лекция в Школе вебмастеров Яндекса
Структурированные данные, Юлия Тихоход, лекция в Школе вебмастеров Яндекса
 
Представление сайта в поиске, Сергей Лысенко, лекция в Школе вебмастеров Яндекса
Представление сайта в поиске, Сергей Лысенко, лекция в Школе вебмастеров ЯндексаПредставление сайта в поиске, Сергей Лысенко, лекция в Школе вебмастеров Яндекса
Представление сайта в поиске, Сергей Лысенко, лекция в Школе вебмастеров Яндекса
 
Плохие методы продвижения сайта, Екатерины Гладких, лекция в Школе вебмастеро...
Плохие методы продвижения сайта, Екатерины Гладких, лекция в Школе вебмастеро...Плохие методы продвижения сайта, Екатерины Гладких, лекция в Школе вебмастеро...
Плохие методы продвижения сайта, Екатерины Гладких, лекция в Школе вебмастеро...
 
Основные принципы ранжирования, Сергей Царик и Антон Роменский, лекция в Школ...
Основные принципы ранжирования, Сергей Царик и Антон Роменский, лекция в Школ...Основные принципы ранжирования, Сергей Царик и Антон Роменский, лекция в Школ...
Основные принципы ранжирования, Сергей Царик и Антон Роменский, лекция в Школ...
 
Основные принципы индексирования сайта, Александр Смирнов, лекция в Школе веб...
Основные принципы индексирования сайта, Александр Смирнов, лекция в Школе веб...Основные принципы индексирования сайта, Александр Смирнов, лекция в Школе веб...
Основные принципы индексирования сайта, Александр Смирнов, лекция в Школе веб...
 
Мобильное приложение: как и зачем, Александр Лукин, лекция в Школе вебмастеро...
Мобильное приложение: как и зачем, Александр Лукин, лекция в Школе вебмастеро...Мобильное приложение: как и зачем, Александр Лукин, лекция в Школе вебмастеро...
Мобильное приложение: как и зачем, Александр Лукин, лекция в Школе вебмастеро...
 
Сайты на мобильных устройствах, Олег Ножичкин, лекция в Школе вебмастеров Янд...
Сайты на мобильных устройствах, Олег Ножичкин, лекция в Школе вебмастеров Янд...Сайты на мобильных устройствах, Олег Ножичкин, лекция в Школе вебмастеров Янд...
Сайты на мобильных устройствах, Олег Ножичкин, лекция в Школе вебмастеров Янд...
 
Качественная аналитика сайта, Юрий Батиевский, лекция в Школе вебмастеров Янд...
Качественная аналитика сайта, Юрий Батиевский, лекция в Школе вебмастеров Янд...Качественная аналитика сайта, Юрий Батиевский, лекция в Школе вебмастеров Янд...
Качественная аналитика сайта, Юрий Батиевский, лекция в Школе вебмастеров Янд...
 
Что можно и что нужно измерять на сайте, Петр Аброськин, лекция в Школе вебма...
Что можно и что нужно измерять на сайте, Петр Аброськин, лекция в Школе вебма...Что можно и что нужно измерять на сайте, Петр Аброськин, лекция в Школе вебма...
Что можно и что нужно измерять на сайте, Петр Аброськин, лекция в Школе вебма...
 
Как правильно поставить ТЗ на создание сайта, Алексей Бородкин, лекция в Школ...
Как правильно поставить ТЗ на создание сайта, Алексей Бородкин, лекция в Школ...Как правильно поставить ТЗ на создание сайта, Алексей Бородкин, лекция в Школ...
Как правильно поставить ТЗ на создание сайта, Алексей Бородкин, лекция в Школ...
 
Как защитить свой сайт, Пётр Волков, лекция в Школе вебмастеров
Как защитить свой сайт, Пётр Волков, лекция в Школе вебмастеровКак защитить свой сайт, Пётр Волков, лекция в Школе вебмастеров
Как защитить свой сайт, Пётр Волков, лекция в Школе вебмастеров
 
Как правильно составить структуру сайта, Дмитрий Сатин, лекция в Школе вебмас...
Как правильно составить структуру сайта, Дмитрий Сатин, лекция в Школе вебмас...Как правильно составить структуру сайта, Дмитрий Сатин, лекция в Школе вебмас...
Как правильно составить структуру сайта, Дмитрий Сатин, лекция в Школе вебмас...
 
Технические особенности создания сайта, Дмитрий Васильева, лекция в Школе веб...
Технические особенности создания сайта, Дмитрий Васильева, лекция в Школе веб...Технические особенности создания сайта, Дмитрий Васильева, лекция в Школе веб...
Технические особенности создания сайта, Дмитрий Васильева, лекция в Школе веб...
 
Конструкторы для отдельных элементов сайта, Елена Першина, лекция в Школе веб...
Конструкторы для отдельных элементов сайта, Елена Першина, лекция в Школе веб...Конструкторы для отдельных элементов сайта, Елена Першина, лекция в Школе веб...
Конструкторы для отдельных элементов сайта, Елена Першина, лекция в Школе веб...
 
Контент для интернет-магазинов, Катерина Ерошина, лекция в Школе вебмастеров ...
Контент для интернет-магазинов, Катерина Ерошина, лекция в Школе вебмастеров ...Контент для интернет-магазинов, Катерина Ерошина, лекция в Школе вебмастеров ...
Контент для интернет-магазинов, Катерина Ерошина, лекция в Школе вебмастеров ...
 
Как написать хороший текст для сайта, Катерина Ерошина, лекция в Школе вебмас...
Как написать хороший текст для сайта, Катерина Ерошина, лекция в Школе вебмас...Как написать хороший текст для сайта, Катерина Ерошина, лекция в Школе вебмас...
Как написать хороший текст для сайта, Катерина Ерошина, лекция в Школе вебмас...
 
Usability и дизайн - как не помешать пользователю, Алексей Иванов, лекция в Ш...
Usability и дизайн - как не помешать пользователю, Алексей Иванов, лекция в Ш...Usability и дизайн - как не помешать пользователю, Алексей Иванов, лекция в Ш...
Usability и дизайн - как не помешать пользователю, Алексей Иванов, лекция в Ш...
 
Cайт. Зачем он и каким должен быть, Алексей Иванов, лекция в Школе вебмастеро...
Cайт. Зачем он и каким должен быть, Алексей Иванов, лекция в Школе вебмастеро...Cайт. Зачем он и каким должен быть, Алексей Иванов, лекция в Школе вебмастеро...
Cайт. Зачем он и каким должен быть, Алексей Иванов, лекция в Школе вебмастеро...
 

Владимир Иванов - Криптография и шифрование

  • 1. Криптография Самое краткое введение в предмет Владимир Иванов ivlad@yandex-team.ru
  • 2. Примитивы и протоколы Примитивы • Симметричный шифр (потоковый, блочный) • Аутентификация сообщений, MAC • Асимметричный шифр Протоколы • Выработка ключа • Отправка и прием сообщения
  • 3. Принцип Керкхоффса Надежность системы шифрования не должна основываться на ее секретности. Система должна оставаться надежной даже если все ее компоненты, кроме ключа стали известны атакующему.
  • 5. T Е C K C = E (k, T)
  • 6. C Е T K T = D (k, C)
  • 7. • Для любого фиксированного ключа k, Ek является биективной функцией на множестве блоков. • Типичный размер блока – 128 бит • Типичные размеры ключей – 128 или 256 бит
  • 8. Шифры подстановки • Табличная подстановка • Шифр Цезаря • Методика взлома • Полиалфавитные шифры подстановки • Шифр Виженера
  • 9. Шифры перестановки • Простая перестановка • Перестановка по ключу
  • 11. RC4
  • 13. Блочный шифр – шифр, оперирующий блоками данных фиксированной длины. Определяется функциями шифрования и расшифрования.
  • 14. • Для любого фиксированного ключа k, Ek является биективной функцией на множестве блоков. • Типичный размер блока – 128 бит • Типичные размеры ключей – 128 или 256 бит
  • 16. DES • Сеть Фейстеля • Размер блока - 64 бита • Размер ключа - 56 бит • 16 раундов
  • 18. ECB
  • 19. ECB
  • 20. CBC
  • 21. Birthday paradox • Какова вероятность совпадения двух блоков выхода шифра? • Как это влияет на безопасность криптосистемы? • Сколько времени это займет на реальном трафике?
  • 22. CFB
  • 23. OFB
  • 24. CTR
  • 25. Как зашифровать сообщение короче одного блока?
  • 27. Подделка содержимого Сообщение Гамма Шифротекст + =
  • 28. Подделка содержимого Сообщение Гамма Шифротекст + = 0 1 1
  • 29. MAC • MAC: Message Authentication Code • Принимает на вход сообщение и ключ • Генерирует код аутентификации или тег
  • 30. MAC
  • 31. Современные хеши • MD4/MD5 • Семейство SHA • ГОСТ 34.11-94 • Конкурс на стандартный алгоритм
  • 32. Применение хеш- функций • Выработка ключевой информации • PBKDF2 • Хранение паролей • Unix crypt(), Windows SAM
  • 34. Однонаправленные функции • Однонаправленными (односторонними) функциями называются такие, которые легко вычислить, но сложно обратить • Подтверждает, что P≠NP • Функции с лазейкой (trapdoor functions)
  • 37. RSA
  • 38. RSA 1.Выбираются два случайных простых числа p и q заданного размера (например, 1024 бита каждое). 2.Вычисляется их произведение n = pq, которое называется модулем. 3.Вычисляется значение функции Эйлера от числа n φ(n)=(q-1)(p-1)
  • 39. RSA 4. Выбирается целое число e (), взаимно простое со значением функции φ(n). • Число e называется открытой экспонентой (англ. public exponent) • Время, необходимое для шифрования с использованием быстрого возведения в степень, пропорционально числу единичных бит в e. • Слишком малые значения e, например 3, потенциально могут ослабить безопасность схемы RSA.
  • 40. RSA • Вычисляется число d, мультипликативно обратное к числу e по модулю , то есть число, удовлетворяющее условию de≡1 (mod φ(n)) или de = 1 + k φ(n), где k — некоторое целое число. • Число d называется секретной экспонентой. • Обычно, оно вычисляется при помощи расширенного алгоритма Евклида.
  • 41. RSA • Пара P = (e,n) публикуется в качестве открытого ключа RSA • Пара S = (d,n) играет роль секретного ключа RSA
  • 42. RSA, шифрование Шифрование на открытом ключе (e, n) • Открытый текст M • Шифротекст C = Me mod n Расшифровка за закрытом ключе (d, n) • Cd mod n = (Me mod n)d mod n = Med mod n = M mod n
  • 44. Необходимо сравнить стойкость ключей • Строгой оценки нет • Оценивается вычислительная сложность известных атак • на процессорах общего назначения и на специальном оборудовании • Критерий Ленстры
  • 45. Сравнительная стойкость Симметричное Ассиметричное Оптимистично Пессимистично Хеш 2008 74 1062 1077 147 2009 74 1087 1114 148 2010 75 1112 1152 150 2011 76 1138 1190 151 2012 76 1164 1229 152 http://keylength.com