SlideShare a Scribd company logo
1 of 25
Download to read offline
Основы криптографии
Ковалев Денис
1
Я ничего не шифрую
2
Cryptography I by Stanford University
https://www.coursera.org/learn/crypto
8 августа 2016
3
Симметричное шифрование
E D
m D(k, c) = m
k k
E(k, m) = c
Alice Bob
4
История криптографии
● с 3-го тысячелетия до н. э. — шифры подстановки
● с IX века на Ближнем Востоке — полиалфавитные шифры
● с начала и до середины XX века — электромеханические
средства
● с середины XX века до 70-х годов — переход к мат.
криптографии 5
Шифр подстановки
k =
A C
B X
C U
…...
A D
B E
C F
……
Z A
6
Шифр Виженера (XVI в.)
k = CRYPTOCRYPTOCRYPT...
m = WHATANICEDAYTODAY...
c = ZZZJUCLUDTUNWGCQS...
(+ mod 26)
7
Enigma (20-е года XX в.)
8
Современные алгоритмы
Data Encryption Standard (DES) (1977)
3DES (1998)
RSA (1978)
Blowfish (1993)
Advanced Encryption Standard (AES) (2001)
9
Криптография == XOR
Y =
0, p1
1, p2
X =
0, p = 1/2
1, p = 1/2
X ⨁ Y =
0, p = 1/2
1, p = 1/2
X Y X ⨁ Y p
0 0 0 p1
/ 2
1 1 0 p2
/ 2
0 1 1 p2
/ 2
1 0 1 p1
/ 2
10
Шифр Вернама (OTP)
E(k, m) = m ⨁ k = c D(k, c) = c ⨁ k
D(k, c) = c ⨁ k = m ⨁ k ⨁ k = m ⨁ 0 = m
11
Блочный шифр
E, D
m block (n bits)
k (k bits)
c block (n bits)
3DES: n = 64 bits, k = 168 bits
AES: n = 128 bits, k = 128, 192, 256 bits
12
Сеть Фейстеля
R0
L0
f1
R1
L1
f2
R2
L2
Rd-1
Ld-1
fd
Rd
Ld
...
n bits
n bits
13
DES = 16 блоков сети Фейстеля
64
bits
IP
16 блоков сети
Фейстеля
-IP
64
bits
k1
k2
k16...
k
m c
n= 64 bits, k = 168 bits, k1
..k16
= 48 bits 14
f1 .. f16
x, 32 bits
48 bits
ki, 48 bits
S1 S2 S3 S4 S5 S8S6 S7
48 bits
6 bits
32 bits
32 bitsP
4 bits
15
3DES
3E(k1
, k2
, k3
, m) = E(k1
, D(k2
, E(k3
, m))
key = 3×56 = 168 bits (~112 bits)
DES: 1998, 3 дня
3DES: PGP, Microsoft OneNote, Microsoft Outlook
2007
16
AES
i
n
p
u
t
S2
S3
S4
S1
S6
S7
S8
S5
k1
S2
S3
S4
S1
S6
S7
S8
S5
k2
S2
S3
S4
S1
S6
S7
S8
S5
kn
o
u
t
p
u
t
...
AES: n = 10, key = 16 bytes, m = 16 bytes 17
AES
7zip, RAR, WinZip, NTFS, FileVault,
Wi-Fi WPA2, GPG, IPsec, KeePass, LastPass
60 MB/s (1.7 GHz Pentium M)
700 MB/s (Intel Core i3/i5/i7)
AES-256: 2009, атака 299
18
Hash
MD5 ("hello world") = 5eb63bbbe01eeed093cb22bb8f5acdc3
MD5 ("hello world.") = 3c4292ae95be58e0c58e4e5511f09647
function Digest (bits) Speed (MB/s) Attack time
SHA-1 160 153 251
SHA-256 256 111 2128
SHA-512 512 99 2256
19
Обмен ключами
KA
KB
KAB
Alice Bob
KAB
KAB
TTP
KA
KB
20
Обмен ключами - Merkle Puzzles
Alice Bob
puzzle1
, puzzle2
, … puzzleN
xj
Alice: O(n)
Bob: O(n)
Криптоаналитик: O(n2
) ~264
21
Протокол Диффи-Хеллмана
p - 600-знаковое простое число
g ∈ {1, …, p}
Alice: a ∈ {1, …, p-1} Bob: b ∈ {1, …, p-1}
Alice Bob
A = ga
(mod p)
B = gb
(mod p)
Ba
(mod p) = (gb
)a
= kAB
= gab
(mod p) = (ga
)b
= Ab
(mod
p) 22
RSA (Rivest, Shamir, Adleman)
1. p, q случайные простые числа по +1024 бита
2. n = p · q модуль
3. (n) = (p - 1) · (q - 1)функция Эйлера
4. e ∈ (1, ... , (n)) взаимно простое с (n)
5. вычисляется d: d · e = 1 (mod (n))
{e, n} = RSA public key
{d, n} = RSA private key
me
(mod n) = c
cd
= mde
(mod n) = m (n)·k + 1
(mod n) = m
23
SSL Certificates
RSA
key
CSR
CA
.crt
CA
key
24
Спасибо за внимание
25

More Related Content

Viewers also liked

государственная итоговая аттестация по образовательным программам среднего об...
государственная итоговая аттестация по образовательным программам среднего об...государственная итоговая аттестация по образовательным программам среднего об...
государственная итоговая аттестация по образовательным программам среднего об...Елена Исакова
 
Artist Presentation
Artist PresentationArtist Presentation
Artist PresentationJohn Conway
 
Отчёт о работе пришкольной площадки ООШ №8 им. Д.А.Рыбалко г. Тореза
Отчёт о работе пришкольной площадки ООШ №8 им. Д.А.Рыбалко г. ТорезаОтчёт о работе пришкольной площадки ООШ №8 им. Д.А.Рыбалко г. Тореза
Отчёт о работе пришкольной площадки ООШ №8 им. Д.А.Рыбалко г. ТорезаЕлена Исакова
 
Džumlaček – běhové prostředí pro Joomlu (workshop)
Džumlaček – běhové prostředí pro Joomlu (workshop)Džumlaček – běhové prostředí pro Joomlu (workshop)
Džumlaček – běhové prostředí pro Joomlu (workshop)Kačka Kubová
 

Viewers also liked (8)

Бисероплетение зоря
Бисероплетение зоряБисероплетение зоря
Бисероплетение зоря
 
государственная итоговая аттестация по образовательным программам среднего об...
государственная итоговая аттестация по образовательным программам среднего об...государственная итоговая аттестация по образовательным программам среднего об...
государственная итоговая аттестация по образовательным программам среднего об...
 
Joomla! CMS a SEF URL
Joomla! CMS a SEF URLJoomla! CMS a SEF URL
Joomla! CMS a SEF URL
 
Artist Presentation
Artist PresentationArtist Presentation
Artist Presentation
 
Отчёт о работе пришкольной площадки ООШ №8 им. Д.А.Рыбалко г. Тореза
Отчёт о работе пришкольной площадки ООШ №8 им. Д.А.Рыбалко г. ТорезаОтчёт о работе пришкольной площадки ООШ №8 им. Д.А.Рыбалко г. Тореза
Отчёт о работе пришкольной площадки ООШ №8 им. Д.А.Рыбалко г. Тореза
 
Džumlaček – běhové prostředí pro Joomlu (workshop)
Džumlaček – běhové prostředí pro Joomlu (workshop)Džumlaček – běhové prostředí pro Joomlu (workshop)
Džumlaček – běhové prostředí pro Joomlu (workshop)
 
приказы па
приказы паприказы па
приказы па
 
affordable / murang bahay for sale, house and lot for sale, ready for occupan...
affordable / murang bahay for sale, house and lot for sale, ready for occupan...affordable / murang bahay for sale, house and lot for sale, ready for occupan...
affordable / murang bahay for sale, house and lot for sale, ready for occupan...
 

Similar to Основы криптографии

TMPA-2013 Dmitry Zaitsev
TMPA-2013 Dmitry ZaitsevTMPA-2013 Dmitry Zaitsev
TMPA-2013 Dmitry ZaitsevIosif Itkin
 
CSEDays. Александр Семенов
CSEDays. Александр СеменовCSEDays. Александр Семенов
CSEDays. Александр СеменовLiloSEA
 
Советский суперкомпьютер К-340А и секретные вычисления
Советский суперкомпьютер К-340А и секретные вычисленияСоветский суперкомпьютер К-340А и секретные вычисления
Советский суперкомпьютер К-340А и секретные вычисленияPositive Hack Days
 
23.02.15_Симметричные криптосистемы.pptx
23.02.15_Симметричные  криптосистемы.pptx23.02.15_Симметричные  криптосистемы.pptx
23.02.15_Симметричные криптосистемы.pptxTamaraRadivilova1
 
JS Fest 2019/Autumn. Дмитрий Жарков. Blockchainize your SPA or Integrate Java...
JS Fest 2019/Autumn. Дмитрий Жарков. Blockchainize your SPA or Integrate Java...JS Fest 2019/Autumn. Дмитрий Жарков. Blockchainize your SPA or Integrate Java...
JS Fest 2019/Autumn. Дмитрий Жарков. Blockchainize your SPA or Integrate Java...JSFestUA
 
Продолжаем говорить про арифметику
Продолжаем говорить про арифметикуПродолжаем говорить про арифметику
Продолжаем говорить про арифметикуAndrey Akinshin
 
Игорь Кудрин, «Используем неизменяемые данные и создаем качественный код»
Игорь Кудрин, «Используем неизменяемые данные и создаем качественный код»Игорь Кудрин, «Используем неизменяемые данные и создаем качественный код»
Игорь Кудрин, «Используем неизменяемые данные и создаем качественный код»Platonov Sergey
 
Ренессанс графики на клиенте
Ренессанс графики на клиентеРенессанс графики на клиенте
Ренессанс графики на клиентеAnton Korzunov
 

Similar to Основы криптографии (9)

TMPA-2013 Dmitry Zaitsev
TMPA-2013 Dmitry ZaitsevTMPA-2013 Dmitry Zaitsev
TMPA-2013 Dmitry Zaitsev
 
CSEDays. Александр Семенов
CSEDays. Александр СеменовCSEDays. Александр Семенов
CSEDays. Александр Семенов
 
Советский суперкомпьютер К-340А и секретные вычисления
Советский суперкомпьютер К-340А и секретные вычисленияСоветский суперкомпьютер К-340А и секретные вычисления
Советский суперкомпьютер К-340А и секретные вычисления
 
23.02.15_Симметричные криптосистемы.pptx
23.02.15_Симметричные  криптосистемы.pptx23.02.15_Симметричные  криптосистемы.pptx
23.02.15_Симметричные криптосистемы.pptx
 
JS Fest 2019/Autumn. Дмитрий Жарков. Blockchainize your SPA or Integrate Java...
JS Fest 2019/Autumn. Дмитрий Жарков. Blockchainize your SPA or Integrate Java...JS Fest 2019/Autumn. Дмитрий Жарков. Blockchainize your SPA or Integrate Java...
JS Fest 2019/Autumn. Дмитрий Жарков. Blockchainize your SPA or Integrate Java...
 
Продолжаем говорить про арифметику
Продолжаем говорить про арифметикуПродолжаем говорить про арифметику
Продолжаем говорить про арифметику
 
Игорь Кудрин, «Используем неизменяемые данные и создаем качественный код»
Игорь Кудрин, «Используем неизменяемые данные и создаем качественный код»Игорь Кудрин, «Используем неизменяемые данные и создаем качественный код»
Игорь Кудрин, «Используем неизменяемые данные и создаем качественный код»
 
Ренессанс графики на клиенте
Ренессанс графики на клиентеРенессанс графики на клиенте
Ренессанс графики на клиенте
 
5
55
5
 

Основы криптографии