Шифрование - с открытым, закрытым ключом



Мы поможем в написании ваших работ!


Мы поможем в написании ваших работ!



Мы поможем в написании ваших работ!


ЗНАЕТЕ ЛИ ВЫ?

Шифрование - с открытым, закрытым ключом



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

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

Чтобы создать защищенный каталог, при попытке доступа к которому открывается диалоговое окно, мы воспользовались самым простым методом аутентификации, который обеспечивает сервер Apache. Этот метод шифрует пароли перед их сохранением. Мы создали пользователя с паролем password. Этот пароль был зашифрован и сохранен в виде строки aWDuA3X3H.mc2. Как видите, открытый и зашифрованный текст внешне не похожи друг на друга.

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

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

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

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

Шифрование с закрытым ключем

Шифрование с закрытым ключем основано на том, что доступ к ключу имеет только авторизованный персонал. Этот ключ должен держаться в секрете. Если ключ попадет в нехорошие руки, посторонний сможет получить несанкционированный доступ к зашифрованной информации. Как показано на рисунке, и отправитель, который шифрует сообщение, и получатель, который дешифрует сообщение, владеют одним и тем же ключом.

Наиболее широко используемым алгоритмом с закрытым ключом является стандарт Data Encryption Standard (DES). Этот алгоритм, разработанный компанией IBM в семидесятых годах прошлого века, принят в качестве американского стандарта для коммерческих и несекретных правительственных коммуникаций. Современные скорости вычислений на порядок превышают скорости вычислений в семидесятых годах, поэтому алгоритм DES считается устаревшим как минимум с 1998 года.

Другие известные системы шифрования с закрытым ключом — это RC2, RC4, RC5, тройной DES (triple DES) и IDEA. Тройной DES-алгоритм обеспечивает достаточную степень защиты. Этот алгоритм использует тот же метод шифрования, что и DES, но применяет его трижды, используя при этом до трех разных ключей. Открытый текст шифруется с использованием первого ключа, дешифруется при помощи второго ключа, а затем шифруется с применением третьего ключа.

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

К счастью, в 1976 году произошел прорыв, когда Дифи и Хелман опубликовали первый алгоритм шифрования с открытым ключом.

Шифрование с открытым ключом

Шифрование с открытым ключом базируется на двух различных ключах — открытом и закрытом. Как показано на рисунке, открытый ключ используется для шифрования сообщений, а закрытый — для их дешифрации.

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

Наиболее известный алгоритм с открытым ключом — это алгоритм RSA, который был разработан Ривестом, Шамиром и Адельманом в Мичиганском технологическом институте (MIT) и опубликован в 1978 году. Ранее алгоритм RSA был защищен патентом, но срок действия патента истек в сентябре 2000 года.

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

Односторонние функции

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

Односторонние функции

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

Если эталонные характеристики программноаппаратной среды представить в виде аргумента односторонней функции x, то y есть "образ" этих характеристик, который хранится на винчестере и по значению которого вычислительно невозможно получить сами характеристики. Примером такой односторонней функции может служить функция дискретного возведения в степень, описанная в разделах 2.1 и 3.3 с размерностью операндов не менее 512 битов.

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



Последнее изменение этой страницы: 2016-09-05; просмотров: 673; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 52.23.219.12 (0.007 с.)