Способы криптоанализа асииметричного алгоритма шифрования RSA

Организация защищенного канала связи как самый простой способ защитить данные от перехвата. Метод факторизации Ферма — алгоритм разложения на множители нечётного целого числа. Методика атаки на шифр методом Шенкса для дискретного логарифмирования.

Рубрика Программирование, компьютеры и кибернетика
Вид контрольная работа
Язык русский
Дата добавления 16.02.2020
Размер файла 76,8 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru

Размещено на http://www.allbest.ru

Введение

Вопрос защиты данных при передаче по каналам связи уже давно имеет очень высокое значение во многих сферах жизни - личной переписке, передаче корпоративных данных, секретных документов и многого другого. Самым простым способом защитить данные от перехвата была бы организация защищенного канала связи. Однако на практике эта задача очень сложна в исполнении, а зачастую попросту невозможно. Поэтому для защиты данных применяется шифрование.

На данный момент существует большое количество видов шифрования, однако все их можно разделить на 3 вида - симметричное, асимметричное и гибридное. Однако до сих пор не существует абсолютно надежного способа защиты информации. Симметричное и асимметричное шифрование основано на использовании ключа - для шифрования и расшифровки. В симметричном шифровании используется один и тот же ключ, а в асимметричном - разные для этих операций. Наука о методах расшифровки зашифрованной информации без предназначенного для такой расшифровки ключа называется криптоанализом. Попытку раскрытия конкретного шифра с применением методов криптоанализа называют криптографической атакой на этот шифр.

Цель работы - рассмотреть некоторые способы криптоанализа асииметричного алгоритма шифрования RSA. Это криптографический алгоритм с открытым ключом, основывающийся на вычислительной сложности задачи факторизации больших целых чисел. Криптосистема RSA стала первой системой, пригодной и для шифрования, и для цифровой подписи. В качестве методов атаки рассмотрены следующие алгоритмы: метод дискретного логарифмирования Шенкса (метод больших и малых шагов), метод факторизации ро-Полларда и метод факторизации Ферма.

1. Атака с помощью факторизации методом Ферма

Метод факторизации Ферма -- алгоритм факторизации (разложения на множители) нечётного целого числа n, предложенный Пьером Ферма [2]. Метод основан на поиске таких целых чисел x и y, которые удовлетворяют соотношению что ведёт к разложению .

Для разложения на множители нечётного числа n ищется пара чисел (x,y) таких, что , или . При этом числа (x+y) и (x-y) являются множителями n, возможно, тривиальными (то есть одно из них равно 1, а другое -- n.)

Для разложения на множители нечётного числа ищется пара чисел таких, что , или . При этом числа и являются множителями , возможно, тривиальными (то есть одно из них равно 1, а другое -- .)

В нетривиальном случае, равенство равносильно , то есть тому, что является квадратом.

Поиск квадрата такого вида начинается с -- наименьшего числа, при котором разность неотрицательна.

Для каждого значения начиная с , вычисляют и проверяют, не является ли это число точным квадратом. Если не является, то увеличивают на единицу и переходят на следующую итерацию.

Если является точным квадратом, то есть то получено разложение:

в котором

Если оно является тривиальным и единственным, то -- простое.

Проведя факторизацию n из открытого ключа, можно легко вычислить функцию , и после этого - закрытый ключ d.

2. Атака с помощью факторизации ро-алгоритмом Полларда

Ро-алгоритм (-алгоритм) - предложенный Джоном Поллардом в 1975 году алгоритм, служащий для факторизации (разложения на множители) целых чисел. Алгоритм наиболее эффективен при факторизации составных чисел с достаточно малыми множителями в разложении. с-алгоритм Полларда строит числовую последовательность, элементы которой образуют цикл, начиная с некоторого номера n, что может быть проиллюстрировано, расположением чисел в виде греческой буквы с, что послужило названием семейству алгоритмов.

Пусть составное целое положительное число, которое требуется разложить на множители. Алгоритм выглядит следующим образом[3]:

Шаг 1. Случайным образом выбирается небольшое число и строится последовательность , определяя каждое следующее как .

Шаг 2. Одновременно на каждом i-ом шаге вычисляется для каких-либо , таких, что , например, .

Шаг 3. Если , то вычисление заканчивается, и найденное на предыдущем шаге число является делителем . Если не является простым числом, то процедуру поиска делителей продолжается, взяв в качестве число .

На практике функция выбирается не слишком сложной для вычисления (но в то же время не линейным многочленом), при условии того, что она не должна порождать взаимно однозначное отображение. Обычно в качестве выбираются функции или . Однако функции и не подходят.

Если известно, что для делителя числа справедливо при некотором , то имеет смысл использовать .

Аналогично с предыдущим методом, проведя факторизацию n из открытого ключа, можно легко вычислить функцию , и после этого - закрытый ключ d.

3. Атака методом Шенкса для дискретного логарифмирования (больших и малых шагов)

дискретный шифр факторизация

Алгоритм Гельфонда - Шенкса (также называемый алгоритмом больших и малых шагов) -- в дискретного логарифмирования в мульпликативной группе кольца вычетов по модулю. Метод теоретически упрощает решение задачи дискретного логарифмирования, на вычислительной сложности которой построены многие криптосистемы с открытым ключом. Относится к методам встречи посередине.

Алгоритм 4.2.1 (алгоритм малых и больших шагов). Алгоритм вычисляет дискретный логарифм от у по основанию а и по модулю n, такой что у = ах (mod n) [3].

Шаг 1. Инициализация. Вычислить

Шаг 2. Вычисление маленького шага. Вычислить первую последовательность (список) S, состоящую из пар , r = 0,1,2,3,..., s - 1: S = и отсортировать S по уаr -- первому элементу пар в S.

Шаг 3. Вычисление большого шага. Вычислить вторую последовательность (список) Т, состоящую из пар (ats,ts), t = 0,1,2,3,..., s: T = и отсортировать Т по ats -- первому элементу пар в Т.

Поиск, сравнение и вычисление. Найти в обоих списках соответ-ствие уаr = ats, где уаr из S, a ats из Т, затем вычислить х = ts - rхи будет требуемым значением loga у (mod n).

4. Вычислительные эксперименты

Помимо реализации вышеуказанных методов было проведено сравнение их быстродействия, которое указано в табл. 1. Полученные данные показывают, что при n ~ 6*108 работа всех методов идёт меньше секунды, но видно, что метод дискретного логарифмирования работает дольше других. При этом скорость его работы зависит от e. С ростом порядка n тенденция сохраняется, однако помимо этого проявляется различие в скорости работы методов факторизации. Так как метод ро-Полларда носит вероятностный характер, то в таблицу заносится среднее арифметическое 10 результатов эксперимента.

Табл. 1. Сравнение времени работы алгоритмов

Время работы, секунд

n

Дискретное логарифмирование

Факторизация методом Ферма

Факторизация методом ро-Полларда

?6*108

0.81

<0.01

<0.01

?1.5*1010

1.9

0.03

0.01

?2.8*1015

>120

44

0.5

Из полученных данных можно сделать вывод, что при любых параметрах в скорости работы метод дискретного логарифмирования проигрывает. С ростом значения n актуальным становится только метод ро-Полларда, так как при значениях n ? 2.8*1015 только этот метод даёт хорошие значения времени выполнения.

Размещено на Allbest.ru

...

Подобные документы

  • Алгоритм ГОСТ 28147-89 симметричного шифрования на основе сети Фейстеля, основные режимы его работы. Атаки на системы защиты информации. Метод грубой силы. Атаки класса "встреча посередине". Характеристики ГОСТ 28147-89 и американского шифра Rijndael.

    курсовая работа [510,7 K], добавлен 17.01.2012

  • Разработка программы кодирования текстового файла при помощи блочного алгоритма шифрования ТЕА типа "Сеть Фейштеля", который основан на битовых операциях с 64-битным блоком и имеет 128-битный ключ шифрования. Результаты кодирования и декодирования.

    лабораторная работа [299,9 K], добавлен 18.07.2013

  • Выбор шифров перестановки для проведения анализа. Анализ алгоритма двух различных шифров, построение блок-схемы алгоритма и программы, разработка общего интерфейса. Сравнение шифров перестановки по результатам шифрования и криптоанализа текстов.

    курсовая работа [2,8 M], добавлен 14.01.2014

  • Симметричные криптосистемы как способ шифрования, в котором для шифрования и расшифровывания применяется один и тот же криптографический ключ. Разбор и реализация шифрования алгоритма: простая и двойная перестановка, перестановка "магический квадрат".

    курсовая работа [3,3 M], добавлен 11.03.2013

  • Составление алгоритма и программы для факторизации целого числа N с помощью ро-метода Полларда. Краткое описание данного метода: составление последовательности, вычисление разности и наибольшего общего делителя. Алгоритм работы и листинг программы.

    курсовая работа [12,1 K], добавлен 24.06.2010

  • Симметричные и асиметричные методы шифрования. Шифрование с помощью датчика псевдослучайных чисел. Алгоритм шифрования DES. Российский стандарт цифровой подписи. Описание шифрования исходного сообщения асимметричным методом с открытым ключом RSA.

    курсовая работа [101,1 K], добавлен 09.03.2009

  • Принцип работы алгоритма бинарного поиска в массиве. Способы исследования алгоритма "прямое включение". Формулы зависимости числа сравнений от элементов в массиве. Графики среднего числа сравнений и перемещений практических и теоретических измерений.

    курсовая работа [646,1 K], добавлен 07.01.2014

  • Изучение, освоение на примере симметричных шифров элементы практической криптографии. Использование расширенного алгоритма Евклида для нахождения обратного по модулю числа. Ознакомление с демо-версией программы симметричного шифрования с секретным ключом.

    лабораторная работа [97,5 K], добавлен 18.04.2015

  • Схема работы и требования к программам шифрования и дешифрования. Алгоритмы и тексты программы шифрования и программы дешифрования, выполненные на языке программирования C/C++. Содержание файла с исходным текстом, с шифротекстом, с дешифрованным текстом.

    курсовая работа [24,7 K], добавлен 20.10.2014

  • Методы доступа к сети. Алгоритм ALOHA, используемый для доступа к радиоканалу большого числа независимых узлов. Эффективность алгоритма CSMA/CD. Метод маркерного доступа. Ethernet – самый распространенный в настоящий момент стандарт локальных сетей.

    лекция [112,9 K], добавлен 25.10.2013

  • Факторизация натурального числа. Метод квадратичного решета. Факторизация с помощью эллиптических кривых. Реализация алгоритмов натуральных чисел и оценка их эффективности. Применение алгоритмов факторизации натуральных чисел в программной среде Maple.

    курсовая работа [851,6 K], добавлен 25.06.2013

  • Понятие и история изобретения криптосистемы с открытым ключом. Свойства односторонней функции и сложность раскрытия шифра. Описание алгоритма RSA: шифрование и дешифрование. Возможные атаки, способы взлома, обоснование и практическая реализация RSA.

    курсовая работа [45,9 K], добавлен 24.12.2011

  • Реализация программы, кодирующей входную строку, используя аффинный и аффинный рекуррентный шифр. Пример шифрования с помощью аффинного шифра. Описание алгоритма работы программы. Ознакомление с криптоанализом. Частота использования английских букв.

    отчет по практике [445,6 K], добавлен 22.11.2016

  • Разработка эскизного и технического проектов программы "Шифр Цезаря": назначение и область применения, описание алгоритма, организация входных и выходных данных. Выбор состава технических и программных средств, разработка, тест и внедрение программы.

    курсовая работа [563,7 K], добавлен 15.07.2012

  • История возникновения алгоритма симметричного шифрования, условия и особенности его применения на современном этапе. Принципы и функции исследуемой технологии. Анализ главных преимуществ и недостатков использования алгоритма, оценка его уязвимости.

    курсовая работа [301,9 K], добавлен 29.10.2017

  • История алгоритмов симметричного шифрования (шифрования с закрытым ключом). Стандарты на криптографические алгоритмы. Датчики случайных чисел, создание ключей. Сфера интересов криптоанализа. Системы электронной подписи. Обратное преобразование информации.

    краткое изложение [26,3 K], добавлен 12.06.2013

  • Исследование системы распределения ключей на основе линейных преобразований. Описание компонентов сети конфиденциальной связи. Характеристика отечественного алгоритма шифрования данных. Обзор результатов расчетов криптостойкости алгоритма шифрования.

    контрольная работа [56,5 K], добавлен 26.09.2012

  • Разработка алгоритма оптимизации коэффициентов дискретного регулятора с законом ПИД по минимуму интегрального квадратичного критерия. Расчёт оптимальных параметров регулятора на основе описанных алгоритмов. Анализ переходных процессов в замкнутой системе.

    практическая работа [1,4 M], добавлен 25.12.2011

  • Криптографические методы обеспечения конфиденциальности, невозможности прочтения информации посторонним. Современные методы шифрования информации как обратимого преобразования открытого текста в шифрованный на основе секретного алгоритма или ключа.

    презентация [514,3 K], добавлен 06.02.2016

  • Симметричные криптосистемы; алгоритмы шифрования и дешифрования данных, их применение в компьютерной технике в системах защиты конфиденциальной и коммерческой информации. Основные режимы работы алгоритма DES, разработка программной реализации ключа.

    курсовая работа [129,6 K], добавлен 17.02.2011

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.