Тема: Сравнительный анализ сложности факторизации алгоритмов целых чисел Выполнила: Дубовицкая Н.В., гр 957 Научный руководитель: Ишмухаметов Ш.Т.

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



Advertisements
Похожие презентации
RSA RSA RSA (буквенная аббревиатура от фамилий Rivest, Shamir и Adleman) криптографический алгоритм с открытым ключом, основывающийся на вычислительной.
Advertisements

Урок обобщения и систематизации знаний и способов деятельности по теме «Степень. Свойства степени»
Наибольший общий делитель. (НОД) Учитель: Землякова О.В. ГБОУ СОШ 1320 г. Москва.
Тема урока: «Разложение числа на простые множители»
Пример обобщения концепции машины Тьюринга Дипломник: Макаров А.А. Научный руководитель: проф. Граничин О.Н. СПбГУ, математико-механический факультет,
Наибольший общий делитель. (НОД) Взаимно простые числа.
Алгоритм как модель деятельности 18 декабря 2013 г.
Модуль 2. Математичні основи криптографії 1. Лекция 6 Криптография с использованием эллиптических кривых 1. Основные понятия 2. Способы использования.
Разложение составного числа на простые множители Автор: Еремеева М.В МОУ «Средняя общеобразовательная школа 25»
Что такое разложение многочленов на множители и зачем это нужно? Алгебра 7 класс.
Нижегородский государственный университет им. Н.И.Лобачевского Факультет Вычислительной математики и кибернетики Применение технологии Cilk для решения.
Анализ трудоёмкости алгоритмов Анализ трудоёмкости алгоритмов позволяет найти оптимальный алгоритм для решения данной задачи. трудоемкость алгоритма количество.
Найдите делители чисел
Теория статистики Корреляционно-регрессионный анализ: статистическое моделирование зависимостей Часть 1. 1.
Найди числа, которые делятся на 10 и щелкни по ним мышкой. Найди числа, которые делятся на 100 и щелкни по ним мышкой
ОЦЕНКА КРИПТОСТОЙКОСТИ ШИФРОВ, ИХ ПРОГРАММНО- АППАРАТНЫХ РЕАЛИЗАЦИЙ И ТЕХНИКО-ЭКОНОМИЧЕСКИХ ПОКАЗАТЕЛЕЙ Борисов В.А. КАСК – филиал ФГБОУ ВПО РАНХ и ГС.
Метод разложения на множители одного уравнения системы Приложение 2 Дмитриева Е. А
Тема: Вычисление значений функций 1.Вычисление значения алгебраического полинома. Схема Горнера. Рассмотрим полином Наша задача – найти значение этого.
Многочлены. Решение олимпиадных задач по теме «Многочлены» Выполнила ученица 10 класса Б МБОУ лицея 1 Пщегорская Наталья.
Поиск данных. Постановка задачи поиска данных Первый атрибут: набор данных –совокупность данных, среди которых осуществляется поиск; –Элементы набора.
Транксрипт:

Тема: Сравнительный анализ сложности факторизации алгоритмов целых чисел Выполнила: Дубовицкая Н.В., гр 957 Научный руководитель: Ишмухаметов Ш.Т.

Факторизация Задача факторизации целого числа N заключается в нахождении разложения его в произведение простых сомножителей. Сложность решения задачи факторизации лежит в основе криптостойкости некоторых алгоритмов шифрования с открытым ключом, таких как RSA. На сегодняшний день существует большое количество алгоритмов факторизации, среди которых одним из наиболее быстрых методов является метод квадратичного решета

Факторизация 12 декабря 2009 г. T. Kleinjung, K. Aoki, J. Franke, A. K. Lenstra, E. Thome факторизовали 232- значное число методом решета числового поля. Этот результат – рекордный в факторизации целых чисел. Предыдущий рекорд – 9 мая 2005 разложено на множители 200-значное число также с помощью метода решета числового поля

Задача Постановка задачи: 1. Исследовать время и эффективность разложения целых чисел методами Полларда и квадратичного решета 2. Выполнить оценки по трудоемкости факторизации для методов Полларда и квадратичного решета

Задача Отдельные этапы: 1. Реализация блока формирования факторной базы и тестирование на небольших числах 2. Реализация стадии просеивания 3. Формирование матричной системы и ее решение методом исключений Гаусса 4. Формирование тестового набора натуральных чисел, являющихся произведением двух простых чисел длины от до

Метод Полларда «ρ-метод» был предложен Дж. Поллардом в 1975г. Обычно используется для отделения небольших простых делителей факторизуемого числа N. Сложность алгоритма: для вероятность события, состоящего в том, что ρ-метод не найдет нетривиального делителя N за время не превосходит величины Метод Полларда – экспоненциальный алгоритм

Метод Полларда Алгоритм 1. Выбираем многочлен 2. Случайно выбираем и, вычисляя значения, переходим на следующий этап 3. Полагаем, что равно ближайшему слева у которого и вычисляем Если 1

Метод квадратичного решета Метод квадратичного решета был разработан Карлом Померанцем в 1982г. Используя этот метод, в 1994 году Аткинс, Граф, Лейланд и Ленстра сумели разложить 129-значное число, предложенное создателями RSA. Сложность алгоритма: Алгоритм субэкспоненциальный

Метод квадратичного решета Для разложения числа N необходимо найти не менее (k+1) гладкого числа, k – размерность факторной базы). Решая систему уравнений размерности (k+1), получаем пару (A,B), удовлетворяющую условию Затем проверяется условие Если делитель N найден, то алгоритм останавливается, иначе строит следующую пару А, В

Метод квадратичного решета Факторная база - это множество простых чисел, ограниченных сверху некоторой константой Числа, полностью раскладываемые в произведение простых делителей из множества F, называются F-гладкими Цель процедуры просеивания – найти достаточное количество пар гладких чисел (A,B), удовлетворяющих:

Метод квадратичного решета 1. Формирование факторной базы FB 2. Первое просеивание – элементы FB должны удовлетворять условию 3. Формирование полинома просеивания 4. Найти корни уравнения: 5. Выбрать [-L,L] для x и просеять полином q(x) для