Лекция № 10. Рюкзачная криптосистемаmsa/lecture10.pdf · Лекция...
TRANSCRIPT
![Page 1: Лекция № 10. Рюкзачная криптосистемаmsa/lecture10.pdf · Лекция № 10. Рюкзачная криптосистема Кафедра 12 НИЯУ](https://reader034.vdocuments.site/reader034/viewer/2022052017/602f975f3e0b047e690a3fcf/html5/thumbnails/1.jpg)
Защита информации
Иванов М.А.
Лекция № 10. Рюкзачная криптосистема
Кафедра 12 НИЯУ МИФИ
Москва, 2018
![Page 2: Лекция № 10. Рюкзачная криптосистемаmsa/lecture10.pdf · Лекция № 10. Рюкзачная криптосистема Кафедра 12 НИЯУ](https://reader034.vdocuments.site/reader034/viewer/2022052017/602f975f3e0b047e690a3fcf/html5/thumbnails/2.jpg)
Защита информации
Иванов М.А.
Лекция № 10. Рюкзачная криптосистема
Кафедра 12 НИЯУ МИФИ
Москва, 2018
Трудные математические задачи
Задача об укладке рюкзака
Knapsack Cryptosystem
Пример рюкзачной криптосистемы
Темы
![Page 3: Лекция № 10. Рюкзачная криптосистемаmsa/lecture10.pdf · Лекция № 10. Рюкзачная криптосистема Кафедра 12 НИЯУ](https://reader034.vdocuments.site/reader034/viewer/2022052017/602f975f3e0b047e690a3fcf/html5/thumbnails/3.jpg)
M. Ivanov
Трудные задачи
M. Ivanov
Криптосистемы с ОК
1/11
![Page 4: Лекция № 10. Рюкзачная криптосистемаmsa/lecture10.pdf · Лекция № 10. Рюкзачная криптосистема Кафедра 12 НИЯУ](https://reader034.vdocuments.site/reader034/viewer/2022052017/602f975f3e0b047e690a3fcf/html5/thumbnails/4.jpg)
M. Ivanov
Факторизация целых чисел
Трудные задачи
M. Ivanov
Криптосистема RSA
Криптосистемы с ОК
1/11
![Page 5: Лекция № 10. Рюкзачная криптосистемаmsa/lecture10.pdf · Лекция № 10. Рюкзачная криптосистема Кафедра 12 НИЯУ](https://reader034.vdocuments.site/reader034/viewer/2022052017/602f975f3e0b047e690a3fcf/html5/thumbnails/5.jpg)
M. Ivanov
Факторизация целых чисел
Дискретное логарифмирование
Трудные задачи
M. Ivanov
Криптосистема RSA
Криптосистема Эль Гамаля (ElGamal Cryptosystem)
Криптосистемы с ОК
1/11
![Page 6: Лекция № 10. Рюкзачная криптосистемаmsa/lecture10.pdf · Лекция № 10. Рюкзачная криптосистема Кафедра 12 НИЯУ](https://reader034.vdocuments.site/reader034/viewer/2022052017/602f975f3e0b047e690a3fcf/html5/thumbnails/6.jpg)
M. Ivanov
Факторизация целых чисел
Дискретное логарифмирование
Задача об укладке рюкзака
Трудные задачи
M. Ivanov
Криптосистема RSA
Криптосистема Эль Гамаля (ElGamal Cryptosystem)
Рюкзачная криптосистема (Knapsack Cryptosystem)
Криптосистемы с ОК
1/11
![Page 7: Лекция № 10. Рюкзачная криптосистемаmsa/lecture10.pdf · Лекция № 10. Рюкзачная криптосистема Кафедра 12 НИЯУ](https://reader034.vdocuments.site/reader034/viewer/2022052017/602f975f3e0b047e690a3fcf/html5/thumbnails/7.jpg)
M. Ivanov
Факторизация целых чисел
Дискретное логарифмирование (DLP)
Задача об укладке рюкзака
Дискретное логарифмирование на группе точек эллиптической кривой
…
Трудные задачи
M. Ivanov
Криптосистема RSA
Криптосистема Эль Гамаля (ElGamal Cryptosystem)
Рюкзачная криптосистема (Knapsack Cryptosystem)
Криптосистема, основанная на свойствах эллиптической кривой (Elliptic Curves Cryptosystem)
…
Криптосистемы с ОК
1/11
![Page 8: Лекция № 10. Рюкзачная криптосистемаmsa/lecture10.pdf · Лекция № 10. Рюкзачная криптосистема Кафедра 12 НИЯУ](https://reader034.vdocuments.site/reader034/viewer/2022052017/602f975f3e0b047e690a3fcf/html5/thumbnails/8.jpg)
M. Ivanov
QRP
DDH
Декодирование линейного кода
Еще три трудные задачи
M. Ivanov
Goldwasser-Micali Probabilistic Cryptosystem
Cramer-Shoup Cryptosystem
McEliece Cryptosystem
Криптосистемы с ОК
2/11
DDH Заданы группа G простого порядка q
и числа (g1, g2, u1, u2) G, g1 1, g2 1
Существуют ли числа (a, b) [0, q), удовлетворяющие условию
g2 = g1a, u1 = g1
b, u2 = g1ab?
![Page 9: Лекция № 10. Рюкзачная криптосистемаmsa/lecture10.pdf · Лекция № 10. Рюкзачная криптосистема Кафедра 12 НИЯУ](https://reader034.vdocuments.site/reader034/viewer/2022052017/602f975f3e0b047e690a3fcf/html5/thumbnails/9.jpg)
Представить число 55 в виде суммы элементов списка чисел {3, 8, 12, 2, 32, 59}
Ответ: 55 = 3 + 8 + 12 + 32 или 55 ↔ (111010)
Простая задача об укладке рюкзака
3/11
![Page 10: Лекция № 10. Рюкзачная криптосистемаmsa/lecture10.pdf · Лекция № 10. Рюкзачная криптосистема Кафедра 12 НИЯУ](https://reader034.vdocuments.site/reader034/viewer/2022052017/602f975f3e0b047e690a3fcf/html5/thumbnails/10.jpg)
Представить число 55 в виде суммы элементов списка чисел {3, 8, 12, 2, 32, 59}
Ответ: 55 = 3 + 8 + 12 + 32 или 55 ↔ (111010)
Простая задача об укладке рюкзака
Примитивная система шифрования,
в которой отправителю и получателю известен
список чисел {3, 8, 12, 2, 32, 59}
3/11
![Page 11: Лекция № 10. Рюкзачная криптосистемаmsa/lecture10.pdf · Лекция № 10. Рюкзачная криптосистема Кафедра 12 НИЯУ](https://reader034.vdocuments.site/reader034/viewer/2022052017/602f975f3e0b047e690a3fcf/html5/thumbnails/11.jpg)
Представить число 26 в виде суммы различных чисел из списка {32, 16, 8, 4, 2, 1}
Ответ: 26 = 16 + 8 + 2 или 26 ↔ (011010)
Очень простая задача об укладке рюкзака
4/11
![Page 12: Лекция № 10. Рюкзачная криптосистемаmsa/lecture10.pdf · Лекция № 10. Рюкзачная криптосистема Кафедра 12 НИЯУ](https://reader034.vdocuments.site/reader034/viewer/2022052017/602f975f3e0b047e690a3fcf/html5/thumbnails/12.jpg)
Представить число 26 в виде суммы различных чисел из списка {32, 16, 8, 4, 2, 1}
Ответ: 26 = 16 + 8 + 2 или 26 ↔ (011010)
Очень простая задача об укладке рюкзака
Примитивная система шифрования,
в которой отправителю и получателю известен
список чисел {32, 16, 8, 4, 2, 1}
4/11
![Page 13: Лекция № 10. Рюкзачная криптосистемаmsa/lecture10.pdf · Лекция № 10. Рюкзачная криптосистема Кафедра 12 НИЯУ](https://reader034.vdocuments.site/reader034/viewer/2022052017/602f975f3e0b047e690a3fcf/html5/thumbnails/13.jpg)
Последовательность построения криптосистемы с открытым ключом
5/11
![Page 14: Лекция № 10. Рюкзачная криптосистемаmsa/lecture10.pdf · Лекция № 10. Рюкзачная криптосистема Кафедра 12 НИЯУ](https://reader034.vdocuments.site/reader034/viewer/2022052017/602f975f3e0b047e690a3fcf/html5/thumbnails/14.jpg)
Составляется трудная задача T, не решаемая
за полиномиальное время
Последовательность построения криптосистемы с открытым ключом
5/11
![Page 15: Лекция № 10. Рюкзачная криптосистемаmsa/lecture10.pdf · Лекция № 10. Рюкзачная криптосистема Кафедра 12 НИЯУ](https://reader034.vdocuments.site/reader034/viewer/2022052017/602f975f3e0b047e690a3fcf/html5/thumbnails/15.jpg)
Составляется трудная задача T, не решаемая
за полиномиальное время Из T выделяется легкая подзадача Teasy , имеющая
полиномиальный или даже более простой алгоритм решения
Последовательность построения криптосистемы с открытым ключом
5/11
![Page 16: Лекция № 10. Рюкзачная криптосистемаmsa/lecture10.pdf · Лекция № 10. Рюкзачная криптосистема Кафедра 12 НИЯУ](https://reader034.vdocuments.site/reader034/viewer/2022052017/602f975f3e0b047e690a3fcf/html5/thumbnails/16.jpg)
Составляется трудная задача T, не решаемая
за полиномиальное время Из T выделяется легкая подзадача Teasy , имеющая
полиномиальный или даже более простой алгоритм решения Путем «взбивания» легкая задача Teasy превращается
в трудно решаемую задачу Tshuffle, не имеющую никакого сходства с Teasy
Последовательность построения криптосистемы с открытым ключом
5/11
![Page 17: Лекция № 10. Рюкзачная криптосистемаmsa/lecture10.pdf · Лекция № 10. Рюкзачная криптосистема Кафедра 12 НИЯУ](https://reader034.vdocuments.site/reader034/viewer/2022052017/602f975f3e0b047e690a3fcf/html5/thumbnails/17.jpg)
Составляется трудная задача T, не решаемая
за полиномиальное время Из T выделяется легкая подзадача Teasy , имеющая
полиномиальный или даже более простой алгоритм решения Путем «взбивания» легкая задача Teasy превращается
в трудно решаемую задачу Tshuffle , не имеющую никакого сходства с Teasy
На основе Tshuffle определяется открытая функция зашифрования; процедура получения Teasy из Tshuffle держится в секрете
Последовательность построения криптосистемы с открытым ключом
5/11
![Page 18: Лекция № 10. Рюкзачная криптосистемаmsa/lecture10.pdf · Лекция № 10. Рюкзачная криптосистема Кафедра 12 НИЯУ](https://reader034.vdocuments.site/reader034/viewer/2022052017/602f975f3e0b047e690a3fcf/html5/thumbnails/18.jpg)
Составляется трудная задача T, не решаемая
за полиномиальное время Из T выделяется легкая подзадача Teasy , имеющая
полиномиальный или даже более простой алгоритм решения Путем «взбивания» легкая задача Teasy превращается
в трудно решаемую задачу Tshuffle , не имеющую никакого сходства с Teasy
На основе Tshuffle определяется открытая функция зашифрования; процедура получения Teasy из Tshuffle держится в секрете
Криптосистема конструируется таким образом, чтобы для противника процедура дешифрования заключалась в решении Tshuffle, имеющей вид трудной задачи T, а законный получатель, знающий секрет, решал бы легкую задачу Teasy
Последовательность построения криптосистемы с открытым ключом
5/11
![Page 19: Лекция № 10. Рюкзачная криптосистемаmsa/lecture10.pdf · Лекция № 10. Рюкзачная криптосистема Кафедра 12 НИЯУ](https://reader034.vdocuments.site/reader034/viewer/2022052017/602f975f3e0b047e690a3fcf/html5/thumbnails/19.jpg)
Дан список чисел {a99 … a2 a1 a0}, цифры которых выбраны случайным образом, │ai│ = 4010, i = 0, 1, …, 99
Представить число c в виде cуммы некоторых чисел ai из списка, │c│ = 4210
Трудная задача об укладке рюкзака
6/11
![Page 20: Лекция № 10. Рюкзачная криптосистемаmsa/lecture10.pdf · Лекция № 10. Рюкзачная криптосистема Кафедра 12 НИЯУ](https://reader034.vdocuments.site/reader034/viewer/2022052017/602f975f3e0b047e690a3fcf/html5/thumbnails/20.jpg)
Пример Teasy
806130
208021
504062
902022
501020
4
3
2
1
0
a
a
a
a
a
7/11
![Page 21: Лекция № 10. Рюкзачная криптосистемаmsa/lecture10.pdf · Лекция № 10. Рюкзачная криптосистема Кафедра 12 НИЯУ](https://reader034.vdocuments.site/reader034/viewer/2022052017/602f975f3e0b047e690a3fcf/html5/thumbnails/21.jpg)
Пример Teasy
806130
208021
504062
902022
501020
4
3
2
1
0
a
a
a
a
a
7/11
![Page 22: Лекция № 10. Рюкзачная криптосистемаmsa/lecture10.pdf · Лекция № 10. Рюкзачная криптосистема Кафедра 12 НИЯУ](https://reader034.vdocuments.site/reader034/viewer/2022052017/602f975f3e0b047e690a3fcf/html5/thumbnails/22.jpg)
926558000…00100609955
260577000…00200251002
221078000…00400282628 100
759120000…00800203081 чисел
932265000…01600902051
955061000…03200023579
…
2i
40 цифр
Random Random
8/11
![Page 23: Лекция № 10. Рюкзачная криптосистемаmsa/lecture10.pdf · Лекция № 10. Рюкзачная криптосистема Кафедра 12 НИЯУ](https://reader034.vdocuments.site/reader034/viewer/2022052017/602f975f3e0b047e690a3fcf/html5/thumbnails/23.jpg)
«Взбивание» задачи Teasy и получение Tshuffle
9/11
![Page 24: Лекция № 10. Рюкзачная криптосистемаmsa/lecture10.pdf · Лекция № 10. Рюкзачная криптосистема Кафедра 12 НИЯУ](https://reader034.vdocuments.site/reader034/viewer/2022052017/602f975f3e0b047e690a3fcf/html5/thumbnails/24.jpg)
Сформируем список {an - 1 … a1 a0}
«Взбивание» задачи Teasy и получение Tshuffle
9/11
![Page 25: Лекция № 10. Рюкзачная криптосистемаmsa/lecture10.pdf · Лекция № 10. Рюкзачная криптосистема Кафедра 12 НИЯУ](https://reader034.vdocuments.site/reader034/viewer/2022052017/602f975f3e0b047e690a3fcf/html5/thumbnails/25.jpg)
Сформируем список {an - 1 … a1 a0}
Выберем два больших взаимно простых числа R и S и найдем такое число T, чтобы выполнялось условие SR ≡ 1 mod T
«Взбивание» задачи Teasy и получение Tshuffle
9/11
![Page 26: Лекция № 10. Рюкзачная криптосистемаmsa/lecture10.pdf · Лекция № 10. Рюкзачная криптосистема Кафедра 12 НИЯУ](https://reader034.vdocuments.site/reader034/viewer/2022052017/602f975f3e0b047e690a3fcf/html5/thumbnails/26.jpg)
Сформируем список {an - 1 … a1 a0}
Выберем два больших взаимно простых числа R и S и найдем такое число T, чтобы выполнялось условие SR ≡ 1 mod T
Получим новый список {bn - 1 … b1 b0}, каждый элемент которого суть результат умножения соответствующего числа из первоначального списка на S по модулю T: bi = ai S mod T, i = 0, 1, …, (n – 1)
«Взбивание» задачи Teasy и получение Tshuffle
9/11
![Page 27: Лекция № 10. Рюкзачная криптосистемаmsa/lecture10.pdf · Лекция № 10. Рюкзачная криптосистема Кафедра 12 НИЯУ](https://reader034.vdocuments.site/reader034/viewer/2022052017/602f975f3e0b047e690a3fcf/html5/thumbnails/27.jpg)
Сформируем список {an - 1 … a1 a0}
Выберем два больших взаимно простых числа R и S и найдем такое число T, чтобы выполнялось условие SR ≡ 1 mod T
Получим новый список {bn - 1 … b1 b0}, каждый элемент которого суть результат умножения соответствующего числа из первоначального списка на S по модулю T: bi = ai S mod T, i = 0, 1, …, (n - 1)
Уничтожим список {an - 1 … a1 a0} и число S
«Взбивание» задачи Teasy и получение Tshuffle
9/11
![Page 28: Лекция № 10. Рюкзачная криптосистемаmsa/lecture10.pdf · Лекция № 10. Рюкзачная криптосистема Кафедра 12 НИЯУ](https://reader034.vdocuments.site/reader034/viewer/2022052017/602f975f3e0b047e690a3fcf/html5/thumbnails/28.jpg)
Сформируем список {an - 1 … a1 a0}
Выберем два больших взаимно простых числа R и S и найдем такое число T, чтобы выполнялось условие RS ≡ 1 mod T
Получим новый список {bn - 1 … b1 b0}, каждый элемент которого суть результат умножения соответствующего числа из первоначального списка на S по модулю T: bi = ai S mod T, i = 0, 1, …, (n - 1)
Уничтожим список {an - 1 … a1 a0} и число S
Для всех, не знающих секрета, числа из нового списка будут казаться случайными числами из интервала [0, (T – 1)], и все, кто не знает принцип их получения, примут соответствующую задачу за трудную задачу об укладке рюкзака
«Взбивание» задачи Teasy и получение Tshuffle
9/11
![Page 29: Лекция № 10. Рюкзачная криптосистемаmsa/lecture10.pdf · Лекция № 10. Рюкзачная криптосистема Кафедра 12 НИЯУ](https://reader034.vdocuments.site/reader034/viewer/2022052017/602f975f3e0b047e690a3fcf/html5/thumbnails/29.jpg)
Сформируем список {an - 1 … a1 a0}
Выберем два больших взаимно простых числа R и S и найдем такое число T, чтобы выполнялось условие SR ≡ 1 mod T
Получим новый список {bn - 1 … b1 b0}, каждый элемент которого суть результат умножения соответствующего числа из первоначального списка на S по модулю T: bi = ai S mod T, i = 0, 1, …, (n - 1)
Уничтожим список {an - 1 … a1 a0} и число S
Для всех, не знающих секрета, числа из нового списка будут казаться случайными числами из интервала [0, (T – 1)], и все, кто не знает принцип их получения, примут соответствующую задачу за трудную задачу об укладке рюкзака
Cписок {bn - 1 … b1 b0} объявляется открытым ключом зашифрования
«Взбивание» задачи Teasy и получение Tshuffle
9/11
![Page 30: Лекция № 10. Рюкзачная криптосистемаmsa/lecture10.pdf · Лекция № 10. Рюкзачная криптосистема Кафедра 12 НИЯУ](https://reader034.vdocuments.site/reader034/viewer/2022052017/602f975f3e0b047e690a3fcf/html5/thumbnails/30.jpg)
Сформируем список {an - 1 … a1 a0}
Выберем два больших взаимно простых числа R и S и найдем такое число T, чтобы выполнялось условие SR ≡ 1 mod T
Получим новый список {bn - 1 … b1 b0}, каждый элемент которого суть результат умножения соответствующего числа из первоначального списка на S по модулю T: bi = ai S mod T, i = 0, 1, …, (n - 1)
Уничтожим список {an - 1 … a1 a0} и число S
Для всех, не знающих секрета, числа из нового списка будут казаться случайными числами из интервала [0, (T – 1)], и все, кто не знает принцип их получения, примут соответствующую задачу за трудную задачу об укладке рюкзака
Cписок {bn - 1 … b1 b0} объявляется открытым ключом зашифрования
Числа R и T объявляются секретным ключом расшифрования
«Взбивание» задачи Teasy и получение Tshuffle
9/11
![Page 31: Лекция № 10. Рюкзачная криптосистемаmsa/lecture10.pdf · Лекция № 10. Рюкзачная криптосистема Кафедра 12 НИЯУ](https://reader034.vdocuments.site/reader034/viewer/2022052017/602f975f3e0b047e690a3fcf/html5/thumbnails/31.jpg)
Рюкзачная криптосистема
10/11
![Page 32: Лекция № 10. Рюкзачная криптосистемаmsa/lecture10.pdf · Лекция № 10. Рюкзачная криптосистема Кафедра 12 НИЯУ](https://reader034.vdocuments.site/reader034/viewer/2022052017/602f975f3e0b047e690a3fcf/html5/thumbnails/32.jpg)
Алгоритм зашифрования двоичного сообщения m = mn - 1 … m1 m0, mi {0, 1}: c = E(m) = ∑ bi mi (mod T)
Рюкзачная криптосистема
10/11
![Page 33: Лекция № 10. Рюкзачная криптосистемаmsa/lecture10.pdf · Лекция № 10. Рюкзачная криптосистема Кафедра 12 НИЯУ](https://reader034.vdocuments.site/reader034/viewer/2022052017/602f975f3e0b047e690a3fcf/html5/thumbnails/33.jpg)
Алгоритм зашифрования двоичного сообщения m = mn - 1 … m1 m0, mi {0, 1}: c = E(m) = ∑ bi mi (mod T)
Алгоритм расшифрования закрытого сообщения c:
- составляем произведение Rc = R ∑ bi mi (mod T) = = ∑ ai SR mi (mod T) = ∑ ai mi (mod T)
- решая легкую задачу об укладке рюкзака, находим m = mn - 1 … m1 m0
Рюкзачная криптосистема
10/11
![Page 34: Лекция № 10. Рюкзачная криптосистемаmsa/lecture10.pdf · Лекция № 10. Рюкзачная криптосистема Кафедра 12 НИЯУ](https://reader034.vdocuments.site/reader034/viewer/2022052017/602f975f3e0b047e690a3fcf/html5/thumbnails/34.jpg)
Пример ранцевой криптосистемы
11/11
![Page 35: Лекция № 10. Рюкзачная криптосистемаmsa/lecture10.pdf · Лекция № 10. Рюкзачная криптосистема Кафедра 12 НИЯУ](https://reader034.vdocuments.site/reader034/viewer/2022052017/602f975f3e0b047e690a3fcf/html5/thumbnails/35.jpg)
14 × 19 ≡ 1 mod 265
Пример ранцевой криптосистемы
11/11
![Page 36: Лекция № 10. Рюкзачная криптосистемаmsa/lecture10.pdf · Лекция № 10. Рюкзачная криптосистема Кафедра 12 НИЯУ](https://reader034.vdocuments.site/reader034/viewer/2022052017/602f975f3e0b047e690a3fcf/html5/thumbnails/36.jpg)
14 × 19 ≡ 1 mod 265
Пример ранцевой криптосистемы
11/11
![Page 37: Лекция № 10. Рюкзачная криптосистемаmsa/lecture10.pdf · Лекция № 10. Рюкзачная криптосистема Кафедра 12 НИЯУ](https://reader034.vdocuments.site/reader034/viewer/2022052017/602f975f3e0b047e690a3fcf/html5/thumbnails/37.jpg)
14 × 19 ≡ 1 mod 265
Пример ранцевой криптосистемы
11/11
![Page 38: Лекция № 10. Рюкзачная криптосистемаmsa/lecture10.pdf · Лекция № 10. Рюкзачная криптосистема Кафедра 12 НИЯУ](https://reader034.vdocuments.site/reader034/viewer/2022052017/602f975f3e0b047e690a3fcf/html5/thumbnails/38.jpg)
Пример ранцевой криптосистемы
444
11/11
![Page 39: Лекция № 10. Рюкзачная криптосистемаmsa/lecture10.pdf · Лекция № 10. Рюкзачная криптосистема Кафедра 12 НИЯУ](https://reader034.vdocuments.site/reader034/viewer/2022052017/602f975f3e0b047e690a3fcf/html5/thumbnails/39.jpg)
Пример ранцевой криптосистемы
444 19 = = 221 mod 265
11/11
![Page 40: Лекция № 10. Рюкзачная криптосистемаmsa/lecture10.pdf · Лекция № 10. Рюкзачная криптосистема Кафедра 12 НИЯУ](https://reader034.vdocuments.site/reader034/viewer/2022052017/602f975f3e0b047e690a3fcf/html5/thumbnails/40.jpg)
The questions are welcome !