Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Шпоры по КМЗИ.docx
Скачиваний:
49
Добавлен:
17.04.2019
Размер:
777.16 Кб
Скачать

13. Системы с открытым ключом, основанные на сложности разложения целых чисел.

Криптографическая система с открытым ключом (или Асимметричное шифрование, Асимметричный шифр) — система шифрования и/или электронной цифровой подписи (ЭЦП), при которой открытый ключ передаётся по открытому (то есть незащищённому, доступному для наблюдения) каналу, и используется для проверки ЭЦП и для шифрования сообщения. В основу криптографической системы с открытым ключом RSA положена задача умножения и разложения составных чисел на простые сомножители, которая является вычислительно однонаправленной задачей. В криптографической системе с открытым ключом каждый участник располагает как открытым ключом, так и секретным ключом. Каждый участник создаёт свой открытый и секретный ключ самостоятельно. Секретный ключ каждый из них держит в секрете, а открытые ключи можно сообщать кому угодно. Открытый и секретный ключи каждого участника обмена сообщениями образуют «согласованную пару» в том смысле, что они являются взаимно обратными, т.е M=D_s(E_p(M)) ; M=E_p(D_s(M)). Алгоритм создания открытого и секретного ключей. 1.Выбираются два случайных простых числа p и q заданного размера (например, 1024 бита каждое). 2. Вычисляется их произведение n = pq, которое называется модулем. 3.Вычисляется значение функции Эйлера от числа n: φ(n)=(p-1)(q-1) 4. Выбирается целое число e (1<e< φ(n)), взаимно простое со значением функции φ(n). 5. Вычисляется число d, мультипликативно обратное к числу e по модулю φ(n), то есть число, удовлетворяющее условию:de≡1 (mod φ(n)) или de≡1 (mod kφ(n)), где k — некоторое целое число. Число d называется секретной экспонентой. Обычно, оно вычисляется при помощи расширенного алгоритма Евклида. 6. Пара P = (e,n) публикуется в качестве открытого ключа RSA . 7. Пара S = (d,n) играет роль секретного ключа RSA и держится в секрете. Предположим, сторона B хочет послать стороне A сообщение M. Сообщением являются целые числа лежащие от 0 до n-1. Шифрование: 1. Взять открытый ключ (e,n) стороны A; 2. Взять открытый текст M; 2.Передать шифрованное сообщение: P_A (M)=M^e mod n. По коммуникационному каналу передается сообщение С=P_A (M). Расшифрование: 1. Принять зашифрованное сообщение C; 2. Применить свой секретный ключ (d,n) для расшифровки сообщения:S_A(C)=C^d mod n.

14. Системы с открытым ключом, основанные на сложности дискретного логарифмирования

Система с открытым ключом - система шифрования и/или электронной цифровой подписи (ЭЦП), при которой открытый ключ передаётся по открытому (то есть незащищённому, доступному для наблюдения) каналу, и используется для проверки ЭЦП и для шифрования сообщения. Для генерации ЭЦП и для расшифрования сообщения используется секретный ключ.

Дискретное логарифмирование - задача обращения функции gx в некоторой конечной мультипликативнойгруппе G.

В данном случае, операция дискретного логарифмирования является обратной к показательной функции. Классическая схема – выработка общего ключа Диффи-Хеллмана, схема эцп Эль-Гамаля, криптосистема Мэсси-Опуры. Схема Эль-Гамаля: Генерация ключей: 1. Генерируется случайное простое число p длины n битов; 2. Произвольное целое число g – первообразный корень по модулю p; 3. Случайное число x (1<x<p); 4. y=gxmod p; 5. Открытый ключ – тройка (p, g, y), закрытый – х. Шифрование сообщения М: 1. Выбирается сессионный ключ k (1<k<p-1) 2. a=gkmod p; b=yk M mod p; 3. Пара чисел (a, b) – шифротекст. Расшифрование х – закрытый ключ, (a, b) – шифротекст: M=b(ax)-1mod p.