Вычислительные аспекты RSA. Электронная подпись Лекция 6.

Презентация:



Advertisements
Похожие презентации
Модуль 2. Математичні основи криптографії 1. Лекция 6 Криптография с использованием эллиптических кривых 1. Основные понятия 2. Способы использования.
Advertisements

Устная работа. Выполните возведение в степень. Какое выражение надо поставить вместо (*), чтобы получилось тождество.
Система Эль-Гамаля. Использование хеш-функций Лекция 8.
Шифрование с открытым ключом: Криптосистема RSA Докладчик: Евгений Сеппель (344 гр. 5/6 у.г.) Математико-механический факультет СПбГУ.
Криптография: алгоритм RSA
Свойства степени с натуральным показателем. 1. Выполните действия: a 4 a 12 ; b 8 : b 2 ; (m 3 ) 5 a 16 ; b 6 ; m 15 a 48 ; b 4 ; m 15 a 16 ; b 6 ; m.
Тетюшкина Е. Н, учитель информатики и ИКТ МОУ СОШ 1. Основы компьютерной алгебры Элективный курс для 9 класса.
Введение в криптографию 2 Семейство алгоритмов над конечными полями (RSA)
Модуль 2. Математичні основи криптографії 1. Лекция 4 Хэш-функции и аутентификация сообщений. Часть 2 1. Хэш-функции основных алгоритмов. SHA1 2. Коды.
К. Поляков, Программирование на алгоритмическом языке Тема 7. Алгоритмы-функции.
Признаки делимости на 2, 3, 4, 5, 9, 10. Деление с остатком. Разложение натурального числа на простые множители. Делитель общий, кратное общее. Делитель.
Криптосистемы с открытым ключем
Асимметричная криптография. Проблемы и идеи. Проблемы, связанные с использованием симметричных шифров Симметричные алгоритмы обеспечивают эффективное.
Введение в криптографию 2 Семейство алгоритмов над конечными полями (RSA)
Что называют делителем? Что такое кратное? Перечисли все делители числа 12 Назови несколько кратных числу 8.
МОУСОШ с. Донское Выполнила: учитель математики Фролова И.И г.
1 [ИНФОРМАЦИОННАЯ БЕЗОПАСТНОСТЬ] [Институт ИИБС, Кафедра ИСКТ] [Шумейко Е.В.] Криптография с открытым ключом.
ЕДИНЫЙ ПОДХОД К УСОВЕРШЕНСТВОВАНИЮ ИЗВЕСТНЫХ ФУНКЦИЙ ХЭШИРОВАНИЯ Хасанов П.Ф., Ахмедова О.П.
Тождества. Тождественные преобразования выражений 7 класс. Усенко Оксана Николаевна.
Тест по алгебре для 7 класса. 1. Выражение (а + в)(а + в)(а +в) представьте в виде степени 3(а + в) (а + в)³ а³ + в³.
Транксрипт:

Вычислительные аспекты RSA. Электронная подпись Лекция 6

Алгоритмы поиска простых чисел Алгоритмы перебора Простой перебор Решето Эратосфена Проверка делимости на первые N простых чисел Вероятностные алгоритмы Тест Рабина-Миллера Алгоритм Лемана

Тест Рабина-Миллера (Rabin-Miller) 1. Генеpиpyют слyчайное число длиной n-бит 2. Стаpшие и младшие биты yстанавливают в 1 3. Пpовеpяют чтобы p не делилось на маленькие пpостые числа (до 2000) 4. Делают пять тестов Rabin-Miller'a с pазными слyчайными а. Для yскоpения вычислений а pекомендyют бpать небольшое. p должно пpойти все тесты.

Тест Лемана (Lehmann) 1. Выбрать случайно число a, меньшее p. 2. Вычислить a (p-1)/2 mod p. 3. Если a (p-1) /2 1 (mod p) или a (p-1) /2 -1(mod p), то p не является простым. 4. Если a (p-1)/2 = 1 (mod p) или a (p-1)/2 = -1 (mod p), то вероятность того, что число p не является простым, не больше 50%.

Тест Лемана (Lehmann) 6. Повторить эту проверку t раз. 7. Если результат вычислений равен 1 или -1, но не всегда равен 1, то p является простым числом с вероятностью ошибки (1/2) t

Обратные значения по модулю Расширенный алгоритм Евклида a -1 = x (mod n) Работающий алгоритм на С

Арифметика вычетов Основные тождества (a + b) mod n = ((a mod n) + (b mod n)) mod n (a - b) mod n = ((a mod n) - (b mod n)) mod n (a * b) mod n = ((a mod n) * (b mod n)) mod n (a * (b+c)) mod n = (((a*b) mod n) + ((a*c) mod n)) mod n Возведение в степень обычным умножением a 8 mod n = (a * a * a * a * a * a * a * a) mod n Возведение в степень с промежуточными привидениями a 8 mod n = ((a 2 mod n) 2 mod n) 2 mod n Для нечетных степеней, например для = => 25 = a 25 mod n = (a*a 24 ) mod n = (a* a 8 *a 16 ) mod n = = (a*(( a 2 ) 2 ) 2 *((( a 2 ) 2 ) 2 ) 2 ) mod n = = (a*((( a*a 2 ) 2 ) 2 )2 ) mod n Прием «Цепочка сложений» (((((((a 2 mod n)* a) 2 mod n) 2 mod n) 2 mod n) 2 mod n) 2 *a) mod n

Алгоритм Диффи-Хеллмана 1. V и N – числа доступные для всех 2. X и Y - случайные простые числа 3. (V x )mod N – первый абонент передает второму 4. (V y )mod N – второй абонент передает первому 5.Первый абонент вычисляет значение (((V y ) mod N) x ) mod N 6.Второй абонент вычисляет значение (((V x ) mod N) y ) mod N Полученное значение - ((V x*y ) mod N

«Дыра» в механизме распределения ключей по алгоритму RSA

Общая схема использования хеш-функций

RSA наоборот