Практическое применение криптологии
Курсовая работа, 14 Сентября 2013, автор: пользователь скрыл имя
Краткое описание
Среди всего спектра методов защиты данных от нежелательного доступа особое место занимают криптографические методы. В отличие от других методов, они опираются лишь на свойства самой информации и не используют свойства ее материальных носителей, особенности узлов ее обработки, передачи и хранения. Образно говоря, криптографические методы строят барьер между защищаемой информацией и реальным или потенциальным злоумышленником из самой информации. Конечно, под криптографической защитой в первую очередь подразумевается шифрование данных. Раньше эта операция выполнялось человеком вручную или с использованием различных приспособлений. Поэтому развитие криптологии сдерживалось проблемой реализации шифра.
Содержание
Введение 3
Криптология 6
1.1 Основные понятия криптологии 6
1.2 Требования к криптосистемам 8
1.3 Симметрические криптосистемы 9
1.3.1 Метод Цезаря 11
1.3.2 Системы шифрования Вижинера 12
1.3.3 Гаммирование 13
1.4 Криптосистемы с открытым ключом 14
1.4.1 Система RSA 16
1.4.1.1 Генерация ключа 17
1.4.1.2 Шифрование/расшифровывание 18
1.4.2 Алгоритм Эль-Гамаля 19
2. Практическое применение криптологии 21
2.1 Цифровая подпись 21
2.1.1 Алгоритм DSA 22
2.2 Алгоритм DES 23
Заключение 25
Литература 26
Вложенные файлы: 1 файл
информатика ориг.docx
— 77.97 Кб (Скачать файл)1.4.1 Система RSA
Самым распространенным
1.4.1.1 Генерация ключа
Первым этапом любого асимметричного алгоритма является создание пары ключей: открытого и закрытого и распространение открытого ключа "по всему миру". Для алгоритма RSA этап создания ключей состоит из следующих операций:
Выбираются два простых числа p и q.
Вычисляется их произведение n(=p*q).
Выбирается произвольное число e (e<n), такое, что (e,(p-1)(q-1))=1, то есть e должно быть взаимно простым с числом (p-1)(q-1).
Методом Евклида решается в целых числах уравнение e*d+(p-1)(q-1)*y=1. Здесь неизвестными являются переменные d и y – метод Евклида как раз и находит множество пар (d,y), каждая из которых является решением уравнения в целых числах. Два числа (e,n) – публикуются как открытый ключ.
Число d хранится в строжайшем секрете – это и есть закрытый ключ, который позволит читать все послания, зашифрованные с помощью пары чисел (e,n).
1.4.1.2 Шифрование/расшифровывание
Отправитель разбивает свое сообщение на блоки, равные k=[log2(n)] бит, где квадратные скобки обозначают взятие целой части от дробного числа.
Подобный блок, как Вы знаете, может быть интерпретирован как число из диапазона (0;2k-1). Для каждого такого числа (mi) вычисляется выражение ci=((mi)e)mod n. Блоки ci и есть зашифрованное сообщение, и их можно спокойно передавать по открытому каналу, поскольку операция возведения в степень по модулю простого числа, является необратимой математической задачей. Обратная ей задача носит название "логарифмирование в конечном поле" и является на несколько порядков более сложной задачей. То есть даже если злоумышленник знает числа e и n, то по ci прочесть исходные сообщения mi он не может никак, кроме как полным перебором mi.
А вот на приемной стороне процесс дешифрования все же возможен, и поможет нам в этом хранимое в секрете число d. Достаточно давно была доказана теорема Эйлера, частный случай которой утверждает, что если число n представимо в виде двух простых чисел p и q, то для любого x имеет место равенство (x(p-1)(q-1))mod n = 1. Для дешифрования RSA-сообщений воспользуемся этой формулой.
Возведем обе ее части в степень (-y) : (x(-y)(p-1)(q-1))mod n = 1(-y) = 1.
Теперь умножим обе ее части на x : (x(-y)(p-1)(q-1)+1)mod n = 1*x = x.
А теперь вспомним как создавались открытый и закрытый ключи с помощью алгоритма Евклида подбиралось такое d, что e*d+(p-1)(q-1)*y=1, то есть e*d=(-y)(p-1)(q-1)+1. А следовательно в последнем выражении предыдущего абзаца можем заменить показатель степени на число (e*d). Получаем (xe*d)mod n = x. То есть для того чтобы прочесть сообщение ci=((mi)e)mod n достаточно возвести его в степень d по модулю m:
((ci)d)mod n = ((mi)e*d)mod n = mi.
На самом деле операции возведения
в степень больших чисел
1.4.2 Алгоритм Эль-Гамаля
В 1985 году Т.Эль-Гамаль (США) предложил
следующую схему на основе возведения
в степень по модулю большого простого
числа P.
Задается большое простое число P и целое
число A, 1 < A < P. Сообщения представляются
целыми числами M из интервала 1 < M < P.
Протокол передачи сообщения M выглядит следующим образом:
абоненты знают числа A и P;
абоненты генерируют независимо друг от друга случайные числа:
Ka, Kb
удовлетворяющих условию:
1 < K < P;
получатель вычисляет и
В = A Kb mоd(P);
отправитель шифрует сообщение M и отправляет полученную последовательность получателю
C = M * B Ka mоd(P);
получатель расшифровывает полученное сообщение
D = ( A Ka ) -Kb mоd(P)
M = C * D mоd(P).
В этой системе открытого шифрования та же степень защиты, что для алгоритма RSA с модулем N из 200 знаков, достигается уже при модуле P из 150 знаков. Это позволяет в 5-7 раз увеличить скорость обработки информации. Однако, в таком варианте открытого шифрования нет подтверждения подлинности сообщений.
Для того, чтобы обеспечить при открытом шифровании по модулю простого числа P также и процедуру подтверждения подлинности отправителя Т.ЭльГамаль предложил следующий протокол передачи подписанного сообщения M:
абоненты знают числа A и P;
отправитель генерирует случайное число и хранит его в секрете:
Ka
удовлетворяющее условию:
1 < Ka < P;
вычисляет и передаёт получателю число B, определяемое последовательностью:
В = A Ka mоd(P).
Для сообщения M (1 < M < P):
выбирает случайное число L (1 < L < P), удовлетворяющее условию
( L , P - 1 ) = 1;
вычисляет число
R = A L mоd(P);
решает относительно S
M = Ka * R + L * S mоd(P);
передаёт подписанное сообщение
[ M, R, S ];
получатель проверяет правильность подписи
A M = ( B R ) * ( R S ) mоd(
В этой системе секретным ключом для подписывания сообщений является число X, а открытым ключом для проверки достоверности подписи число B. Процедура проверки подписи служит также и для проверки правильности расшифровывания, если сообщения шифруются.
Практическое применение криптологии
2.1 Цифровая подпись
При ведении деловой переписки, при заключении контрактов подпись ответственного лица является непременным атрибутом документа, преследующим несколько целей:
- гарантирование истинности письма путем сличения подписи с имеющимся образцом;
- гарантирование авторства документа (с юридической точки зрения).
Выполнение данных требований основывается на следующих свойствах подписи:
- подпись аутентична, то есть с ее помощью получателю документа можно доказать, что она принадлежит подписывающему;
- подпись не подделываема, то есть служит доказательством, что только тот человек, чей автограф стоит на документе, мог подписать данный документ, и никто иной;
- подпись непереносима, то есть является частью документа и поэтому перенести ее на другой документ невозможно;
- документ с подписью является неизменяемым;
- подпись неоспорима;
- любое лицо, владеющее образцом подписи может удостоверится, что документ подписан владельцем подписи;
- развитие современных средств безбумажного документооборота, средств электронных платежей немыслимо без развития средств доказательства подлинности и целостности документа. Таким средством является электронно-цифровая подпись (ЭЦП), которая сохранила основные свойства обычной подписи.
Существует несколько методов построения ЭЦП, а именно:
- шифрование электронного документа (ЭД) на основе симметричных алгоритмов. Данная схема предусматривает наличие в системе третьего лица – арбитра, пользующегося доверием обеих сторон. Авторизацией документа в данной схеме является сам факт шифрования ЭД секретным ключом и передача его арбитру;
- использование ассиметричных алгоритмов шифрования. Фактом подписания документа является шифрование его на секретном ключе отправителя;
- развитием предыдущей идеи стала наиболее распространенная схема ЭЦП – шифрование окончательного результата обработки ЭД хеш-функцией при помощи ассиметричного алгоритма.
Кроме перечисленных, существуют и другие методы построения схем ЭЦП
- групповая подпись,
2.1.1 Алгоритм DSA
В 1991 г. в США был опубликован проект федерального стандарта цифровой подписи - DSS (Digital Signature Standard, [DSS91], описывающий систему цифровой подписи DSA (Digital Signature Algorithm). Одним из основных критериев при создании проекта была его патентная чистота.
Предлагаемый алгоритм DSA, имеет, как и RSA, теоретико-числовой характер, и основан на криптографической системе Эль-Гамаля в варианте Шнорра. Его надежность основана на практической неразрешимости определенного частного случая задачи вычисления дискретного логарифма. Современные методы решения этой задачи имеют приблизительно ту же эффективность, что и методы решения задачи факторизации; в связи с этим предлагается использовать ключи длиной от 512 до 1024 бит с теми же характеристиками надежности, что и в системе RSA. Длина подписи в системе DSA меньше, чем в RSA, и составляет 320 бит.
С момента опубликования проект
получил много критических
Функции DSA ограничены только цифровой подписью, система принципиально не предназначена для шифрования данных. По быстродействию система DSA сравнима с RSA при формировании подписи, но существенно (в 10-40 раз) уступает ей при проверке подписи.
2.2 Алгоритм DES
Принятие стандарта шифрования DES явилось мощным толчком к широкому применению шифрования в коммерческих системах. Введение этого стандарта - отличный пример унификации и стандартизации средств защиты. Примером системного подхода к созданию единой крупномасштабной системы защиты информации является директива Министерства финансов США 1984 года, согласно которой все общественные и частные организации, ведущие дела с правительством США, обязаны внедрить процедуру шифрования DES; крупнейшие банки Citibank,Chase Manhattan Bank, Manufaktures Hannover Trust, Bank of America, Security Pacific Bank также внедрили эту систему.
Министерство энергетики США располагает
более чем 30 действующими сетями, в
которых используется алгоритм DES, Министерство
юстиции устанавливает 20000 радиоустройств,
располагающих средствами защиты на
базе DES. Стандартизация в последнее
время приобретает
В качестве стандартной аппаратуры шифрования можно назвать устройство Cidex-НХ, базирующееся на алгоритме DES; скорость шифрования - от 56 Кбит/с до 7 Мбит/с. Серийно выпускается автономный шифровальный блок DES 2000, в нем также используется процедура шифрования DES; скорость шифрования - от 38,4 Кбит/с до 110 Кбит/с. В различных секторах коммерческой деятельности используется процессор шифрования/дешифрования данных FACOM 2151А на основе алгоритма DES; скорость - от 2,4 Кбит/с до 19,2 Кбит/с. С распространением персональных компьютеров наиболее эффективными для них стали программные средства защиты. Так, разработан пакет программ для шифрования/дешифрования информации СТА (Computer Intelligence Access), реализующий алгоритм DES. Этот же алгоритм использован в пакете SecretDisk (C F Systems) для исключения несанкционированного доступа к дискам.
Таким образом, алгоритм DES представляет собой основной механизм, применявшийся частными и государственными учреждениями США для защиты информации. В то же время Агентство национальной безопасности, выступающее как эксперт по криптографическим алгоритмам, разрабатывает новые алгоритмы шифрования данных для массового использования. В 1987 году Национальное бюро стандартов после обсуждения подтвердило действие DES; его пересмотр намечалось провести не позднее января 1992 года, и на сегодняшний день действие DES ограничивается исключительно коммерческими системами.