Crypto_Introx

advertisement
Методы защиты информации
Введение
Классическая задача криптографии
Криптогра́фия (от др.-греч. κρυπτός — скрытый и γράφω — пишу) —
наука о методах обеспечения конфиденциальности (невозможности
прочтения информации посторонним) и аутентичности (целостности
и подлинности авторства, а также невозможности отказа от авторства)
информации
Шифрова́ние — обратимое преобразование информации в целях
сокрытия от неавторизованных лиц, с предоставлением, в это же
время, авторизованным пользователям доступа к ней (использование
ключа).
Ключ — секретная информация, которая определяет конкретный
результат работы алгоритма шифрования из множества возможных.
В рамках классической задачи криптографии рассматривается
передача секретного сообщения от абонента A к абоненту B через
открытый канал связи (доступный для прослушки злоумышленнику
E)
Обозначения:
А – Алиса,
Б- Боб
Е – Ева
Операции div и mod
Пусть a и b – целые числа (b не равно 0), такие что для некоторых
целых q и r (0<=r<=|b|) выполняется:
a=b*q+r, тогда
операцией целочисленного деления (a div b) a на b является
нахождение числа q, а операцией нахождения остатка от деления a на
b (a mod b) является нахождения числа r.
Пример:
7 div 3= 2
7 mod 3=1 (7=3*2+1)
11 div 4 = 2
11 mod 4 =3 (11=4*2+3)
3 div 5=0
3 mod 5=3 (3=5*0+3)
24 div 6=?
24 mod 6 = ?
Свойства операции mod
1. (a + b) mod n =
2. (a – b) mod n =
3. (a x b) mod n =
4. a mod n = (a+n)
k - целое
[(a
[(a
[(a
mod
mod n) +
mod n) mod n) x
n=(a+2n)
(b mod n)] mod n
(b mod n)] mod n
(b mod n)] mod n
mod n=(a+kn) mod n,
Пример (4):
5 mod 3 =2
5+1*3 mod 3=2
5+2*3 mod 3 =2
Шифр Цезаря
Шифр Цезаря — это вид шифрования, в котором каждый символ в
открытом тексте заменяется символом, находящимся на некотором
постоянном числе позиций левее или правее него в алфавите.
Пример для русского алфавита
А
Б
В
Г
Д
Е
Ж
З
И
0
1
2
3
4
5
6
7
8
Й
К
Л
М
Н
О
П
Р
С
9
10
11
12
13
14
15
16
17
Т
У
Ф
Х
Ц
Ч
Ш
Щ
Ъ
18
19
20
21
22
23
24
25
26
Ы
Ь
Э
Ю
Я
27
28
29
30
31
 Шифрование
m=”ПРИВЕТ” (исходное сообщение)
k (ключ)
e (криптограмма, т.е. результат шифрования)
2
СТКДЗФ
7
ЦЧПЙМЩ
 Дешифрование
e=” СТКДЗФ”
k (ключ)
дешифрованный текст
2
ПРИВЕТ
7
КЛГЭАН
Математическая модель
m=m1m2…mn – шифруемое сообщение
k - ключ
e=e1e2…en – криптограмма, результат шифрования
n – мощность алфавита
Шифрование:
ei =( mi + k ) mod n
Дешифрование
mi = (ei – k + n) mod n
Пояснения:
 Должно обеспечиваться: “Я”+1 =”A”
(31 + 1) mod 32 =32 mod 32 = 0 = “А”
 Должно обеспечиваться: “Я”+2 =”Б”
(31 + 2) mod 32 =33 mod 32 = 1 = “Б”
 Если при дешифровании после отнятия ключа получается
положительное число, то по (4) можно не прибавлять n. В
противном случае по (4) используется прибавление n для
«ухода» от отрицательности числа (k<n, следовательное (ei k+n)>0 ).
 Если n – мощность алфавита, то значение ключа k: k<n
n=32, m=”A”
k=31
(0+31) mod 32=31=”Я”
k=33
(0+33) mod 32=1
криптограммой при
=”Б”
(т.е. результат
k=1)
совпадает
Атака на шифры
«Правило Керкхоффса»
Противнику известны:
 Алгоритм шифрования
 Характер сообщения
 Шифротекст (криптограмма)
Атака:
 по шифротексту
 по известному тексту (для выяснения секретного ключа)
 по выбранному тексту (для выяснения секретного ключа)
<Caesar.cpp>
с
Download