Симметричные и асимметричные методы шифрования реферат

Обновлено: 04.07.2024

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

Содержание

1. Назначение и структура алгоритмов шифрования
1.1 Обзор криптографических методов
2. Алгоритм симметричного шифрования
2.1 Структура алгоритмов шифрования
3. Применение симметричного алгоритма шифрования

Вложенные файлы: 1 файл

Шифрование данных..docx

В квадрат размером 4 на 4 вписывались числа от 1 до 16. Его магия состояла в том, что сумма чисел по строкам, столбцам и полным диагоналям равнялась одному и тому же числу — 34. Впервые эти квадраты появились в Китае, где им и была приписана некоторая "магическая сила".

Шифрование по магическому квадрату производилось следующим образом. Например, требуется зашифровать фразу: "ПриезжаюCегодня.". Буквы этой фразы вписываются последовательно в квадрат согласно записанным в них числам: позиция буквы в предложении соответствует порядковому числу. В пустые клетки ставится точка. После этого шифрованный текст записывается в строку (считывание производится слева направо, построчно): .ирдзегюСжаоеянП

4. Шифры второго и третьего этапов развития криптографии

Прародителем полиалфавитных шифров стал "Шифр Цезаря"

4.1 Шифр Вижинера

Шифр Виженера (фр. ChiffredeVigenère) — метод полиалфавитного шифрования буквенного текста с использованием ключевого слова.

Этот метод является простой формой многоалфавитной замены. Шифр Виженера изобретался многократно. Впервые этот метод описал Джован Баттиста Беллазо (итал. GiovanBattistaBellaso) в книге Lacifradel. Sig. GiovanBattistaBellasо в 1553 году, однако в XIX веке получил имя Блеза Виженера, французского дипломата. Метод прост для понимания и реализации, он является недоступным для простых методов криптоанализа. Блез Виженер представил своё описание простого, но стойкого шифра перед комиссией Генриха III во Франции в 1586 году, и позднее изобретение шифра было присвоено именно ему. Давид Кан в своей книге "Взломщики кодов" отозвался об этом осуждающе, написав, что история "проигнорировала важный факт и назвала шифр именем Виженера, несмотря на то, что он ничего не сделал для его создания".

Шифр Виженера имел репутацию исключительно стойкого к "ручному" взлому. Известный писатель и математик Чарльз Лютвидж Доджсон (Льюис Кэрролл) назвал шифр Виженера невзламываемым в своей статье "Алфавитный шифр" англ. TheAlphabetCipher, опубликованной в детском журнале в 1868 году. В 1917 году ScientificAmerican также отозвался о шифре Виженера, как неподдающемся взлому. Это представление было опровергнуто после того, как Казиски полностью взломал шифр в XIX веке, хотя известны случаи взлома этого шифра некоторыми опытными криптоаналитиками ещё в XVI веке.

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

4.2 Шифр Гронсфельда

Ещё одним примером полиалфавитного шифра является шифр Гронсфельда. Здесь, в отличие от предыдущего случая, используется числовой ключ, а сама схема очень напоминает шифр Цезаря. Пусть нам надо зашифровать слово EXALTATION. Например, берём в качестве ключа число 31415, затем составляем следующую таблицу:

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

То есть букве E соответствует буква H. Таким образом, для всего слова получаем зашифрованный текст: HYEMYDUMPS. Обратное преобразование происходит подобным образом, только каждый раз сдвигаем алфавит в другую сторону.

5. Современные классификации типов шифрования

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

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

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

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

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

(Также существуют не используемые сейчас подстановочные шифры, обладающие в своём большинстве, слабой криптостойкостью.) – УБРАТЬ?

5.1 Ассиметричные шифры

Также используется в PGP,S/MIME.

  • RSA
  • Elgamal
  • Ellipticcurvecryptography, ECC — (криптосистема на основе эллиптических кривых)

5.2 Симметричные шифры

  • Простая перестановка
  • Одиночная перестановка по ключу
  • Двойная перестановка
  • Перестановка "Магический квадрат"

Симметричные шифры делятся так же на поточные и блочные шифры.

Для современной криптографии характерно использование открытых алгоритмов шифрования, предполагающих использование вычислительных средств. Известно более десятка проверенных алгоритмов шифрования, которые при использовании ключа достаточной длины и корректной реализации алгоритма криптографически стойки. Распространенные алгоритмы:

  • симметричные DES, AES, ГОСТ 28147-89, Camellia, Twofish, Blowfish, IDEA, RC4 и др.;
  • асимметричные RSA и Elgamal (Эль-Гамаль);
  • хэш-функций MD4, MD5, MD6, SHA-1, SHA-2, ГОСТ Р 34.11-94.

Во многих странах приняты национальные стандарты шифрования. В 2001 году в США принят стандарт симметричного шифрования AES на основе алгоритма Rijndael с длиной ключа 128, 192 и 256 бит. Алгоритм AES пришёл на смену прежнему алгоритму DES, который теперь рекомендовано использовать только в режиме Triple DES. В Российской Федерации действует стандарт ГОСТ 28147-89, описывающий алгоритм блочного шифрования с длиной ключа 256 бит, а также алгоритм цифровой подписи ГОСТ Р 34.10-2001.

6. Энигма

6.1 История появления "Энигмы"

Было выпущено, по приблизительным оценкам, около 100 000 экземпляров шифровальных машин Энигма. Как и другие роторные машины, Энигма состояла из комбинации механических и электрических систем. Механическая часть включала в себя клавиатуру, набор вращающихся дисков (роторов), которые были расположены вдоль вала и прилегали к нему, и ступенчатого механизма, двигающего один или более роторов при каждом нажатии клавиши.

Для объяснения принципа работы машины приведена диаграмма выше. Диаграмма упрощена: на самом деле механизм состоял из 26 лампочек, клавиш, разъёмов и электрических схем внутри роторов. Ток шёл из батареи (1) через переключатель (2) в коммутационную панель (3). Коммутационная панель позволяла перекоммутировать соединения между клавиатурой (2) и неподвижным входным колесом (4). Далее ток проходил через разъём (3), в данном примере неиспользуемый, входное колесо (4) и схему соединений трёх (в армейской модели) или четырёх (в военно-морской модели) роторов (5) и входил в рефлектор (6). Рефлектор возвращал ток обратно, через роторы и входное колесо, но уже по другому пути, далее через разъём "S", соединённый с разъёмом "D", через другой переключатель (9), и зажигалась лампочка. Таким образом, постоянное изменением электрической цепи, через которую шёл ток, вследствие вращения роторов позволяло реализовать многоалфавитный шифр подстановки, что давало высокую, для того времени, устойчивость шифра.

шрифт информация криптография энигма

6.2 Как взломали "Энигму"?

Попытки "взломать" Энигму не предавались гласности до конца 1970-х. После этого интерес к Энигме значительно возрос, и множество шифровальных машин представлено к публичному обозрению в музеях США и Европы. Но, как говорится, нет ничего невозможного.


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

Что такое шифрование

Шифрование будет полезно тогда, когда нужно скрыть некоторую информацию от посторонних лиц и предоставить секретные данные авторизованным пользователям.

симметричное и асимметричное шифрование

Особенностью такого вида передачи данных является использование ключа.

Есть три состояния безопасности:

  • скрытие информации от посторонних;
  • предотвращение изменений;
  • сохранение целостности информации;
  • идентификация отправителя.

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

Бывают два вида шифрования: симметричный и асимметричный.

  • отправитель шифрует данные;
  • получатель расшифровывает.

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

Криптостойкость

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

симметричные и асимметричные схемы шифрования

Существует 2 основных типа криптостойкости системы шифрования.

Сравнение криптостойкости некоторых систем шифрования

Максимальный размер ключа RSA - 4096 бит.

система защита

Он используется для шифрования и подписи. Криптостойкость можно описать как 2,7•1028 для ключа 1300 Бит. Схема применяется во многих стандартах, принцип шифрования RSA один из первых асимметричных алгоритмов.

Размер ключа схемы Эль-Гамаля равен RSA - 4096 Бит. Он используется и для шифрования, и для цифровой подписи. Криптостойкость этой системы не отличается от RSA при одинаковом размере ключа.

В методе DSA используется значительно меньшей ключ - 1024 бита. Применяется он исключительно для цифровой подписи.

Симметричное и асимметричное шифрование

Эти два вида шифрования отличаются количеством ключей и уровнем устойчивости к взлому.

Если для кодирования и раскодирования используется один ключ, то это шифрование симметричное. Асимметричное шифрование подразумевает использование одного ключа для каждого алгоритма.

  1. Открытым ключом шифруется некоторый код, который представляет собой определенное послание. Ключ известен обеим сторонам, он передается по незащищенному каналу, может быть перехвачен. Важнейшей задачей сохранения информации является защита ключа от перехвата.
  2. Закрытый используется для расшифровывания. Известен только одной стороне. Не может быть перехвачен, так как все время находится у одного собеседника.

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

Особенности симметричного шифрования

Симметричная система защита имеет следующие достоинства.

  1. Высокая скорость и простота реализации.
  2. Для обеспечения стойкости шифра используется малая длина ключа.

симметричные и асимметричные методы шифрования

К недостаткам относится следующее:

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

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

Особенности асимметричного шифрования

Применение пары открытый-закрытый ключ можно использовать как:

  • самостоятельное средство защиты информации;
  • средство распределения ключей;
  • средства аутентификации пользователей.

Имеет такие преимущества:

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

В таких алгоритмах сложно внести какие-либо изменения. Подобная система имеет длинные ключи. Если симметричный ключ имеет размер 128 Бит, то ключ RSA - 2304 Бит. Из-за этого страдает скорость расшифровывания - она в 2-3 раза медленнее. Для расшифровки требуются большие вычислительные ресурсы.

Существует очень много примеров симметричной и асимметричной систем шифрования.

Симметричное шифрование - как выглядит?

Пример симметричного шифрования и схема реализации ниже.

примеры симметричной и асимметричной систем шифрования

Главным недостатком является невозможность установить подлинность текста. В случае перехвата ключа злоумышленник расшифрует секретную информацию.

Существуют классические методы.

  1. Простая и двойная перестановка.
  2. Магический квадрат.
  3. Одиночная перестановка.

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

Примеры асимметричного шифрования

В данном случае открытый ключ отправляется по открытому каналу и теоретически может быть перехвачен злоумышленниками.

симметричные и асимметричные системы шифрования

В отличие от симметричных, асимметричные ключи шифрования разные. Для шифровки применяется открытый ключ, для расшифровки послания - закрытый. Использование двух ключей решает проблему возможности перехвата, которая была в симметричном методе. Реализуется так.

Существует такие основные методы асинхронного шифрования.

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

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

  1. Выбирается два простых числа, например, 3 и 7.
  2. Вычисляется модуль n - произведение двух чисел. Получается 21.
  3. Вычисляется функция Эйлера φ=(p-1)×(q-1)=2×6=12 .
  4. Вычисляется любое простое число e меньше φ и простое с φ. Доступные варианты: 5, 7, 11.
  1. Выбор криптографической хэш-функции H(x).
  2. Битность простого числа q должна равняться значению хэш-функции H(x).
  3. Подбор такого простого числа p, чтобы p-1 делился без остатка на q.
  4. Вычисление числа g = h (p-1)/q mod p . h должно быть произвольным числом в диапазоне от 1 до p-1.
  5. Выбирается случайное число k от 0 до q.
  6. Вычисляется r = (g k mod p) mod q .
  7. Затем s = k-1(H(m) + xr)) mod q .
  8. Если r=0 или s=0, выбирается другое число k.

Схема Эль-Гамаля

Шифрование по схеме Эль-Гамаля используется для цифровых подписей. Является продолжением алгоритма Диффи-Хеллмана.

Генерация ключей происходит следующим образом.

  1. Выбирается случайное простое число p.
  2. Число g должно быть первообразным корнем p.
  3. Число x должно быть больше 1 и меньше p-1. Это будет закрытый ключ.
  4. Затем вычисляется открытый ключ y по формуле g^x mod p .

При шифровании текста M выбирается системный ключ K. Он больше единицы и меньше p-1. Затем вычисляются числа a и b, которые являются шифротекстом, a = g^k mod p и b = y^k M mod p .

Рогозина Светлана Яковлевна

Научно - исследовательская работа ученика 11 класса. С этой работой Антон стал победителем Городской научно-практической конференции "Академя".

ВложениеРазмер
bormotov2.doc 157 КБ

Предварительный просмотр:

Симметричные и асимметричные алгоритмы шифрования.

Бормотов Антон Владимирович ,

учащийся 11 класса МОУ СОШ № 12

Рогозина Светлана Яковлевна ,

Шифрование операцией XOR

Асимметричные алгоритмы шифрования

Стандарт асимметричного шифрования RSA

Электронная цифровая подпись

Литература и ссылки

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

Исходя из поставленной задачи, программа шифрования должна:

  1. содержать блок, дающий полное представление о работе выбранного алгоритма;
  2. содержать блок шифрования/дешифрования текста, иллюстрирующий работу этого алгоритма.

В качестве технологии реализации поставленной задачи выбрана технология Macromedia Flash. Эта технология более проста для разработчика, нежели Delphi или C++, но при этом она является не менее мощным инструментом разработки приложений, к тому же она позволяет разрабатывать анимацию, управляемую пользователем, с наименьшими затратами времени разработчика.

Симметричные алгоритмы шифрования

Криптография существует со времён Древнего Мира. Тогда использовалась банальная перестановка букв или их замена другими буквами или цифрами. Юлий Цезарь применял подстановку, где буквы сдвигались циклически на три позиции вправо.

Шифрование/дешифрование операцией XOR

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

Асимметричные алгоритмы шифрования

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

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

Стандарт асимметричного шифрования RSA

Самым распространенным алгоритмом асимметричного шифрования является алгоритм RSA. Он был предложен тремя исследователями — математиками Рональдом Ривестом (R.Rivest), Ади Шамиром (A.Shamir) и Леонардом Адльманом (L.Adleman) в 1977 году. Стойкость RSA базируется на сложности факторизации больших целых чисел. В 1993 году метод RSA был обнародован и принят в качестве стандарта шифрования. RSA можно применять как для шифрования/ дешифрования, так и для генерации/проверки электронно-цифровой подписи.

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

Электронная цифровая подпись

При ведении деловой переписки подпись ответственного лица является непременным атрибутом документа, преследующим несколько целей:

  1. Гарантирование истинности письма путем сличения подписи с имеющимся образцом;
  2. Гарантирование авторства документа (с юридической точки зрения).

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

Существует два метода построения ЭЦП, а именно:

  1. Шифрование электронного документа (ЭД) на основе симметричных алгоритмов. Данная схема требует наличие в системе арбитра, пользующегося доверием обеих сторон. Авторизацией документа в данной схеме является сам факт шифрования ЭД секретным кличем и передача его арбитру.
  2. Использование асимметричных алгоритмов шифрования. Фактом подписания документа является его шифрование секретным ключом отправителя.

Развитием второй идеи стала наиболее распространенная схема ЭЦП: шифрование окончательного результата обработки ЭД хеш-функцией при помощи асимметричного алгоритма.

Программа шифрования состоит из трех логических частей:

Алгоритм симметричного шифрования

Этот компонент содержит описание операции XOR на конкретном примере: берутся два символа: А и 1, и над ними выполняется операция XOR.

Алгоритм асимметричного шифрования

В этом разделе программы по шагам демонстрируется, каким образом происходит процесс шифрования/дешифрования текста. Для наглядности представления процесса, числа p и q выбраны небольшими. Поэтому сгенерированные с их помощью открытый ключ (d, n) и закрытый ключ (e, n) также представлены небольшими числами, что делает процесс вычисления понятным

В теоретической части был рассмотрен алгоритм шифрования RSA. Этот алгоритм применен для шифрования текста в следующей последовательности:

Для реализации этого подхода к решению задачи шифрования необходимо взять такие параметры p и q, чтобы их произведение было не менее 8500, так как ASCII-коды некоторых специальных символов превышают за 8 000. Возьмем два простых числа, дающих достаточно близкое по значению произведение: p = 103 и q = 83 . Тогда N = p*q =8549 . Возьмем простое число d = 53 . Находим число e = 2525 .

Согласно алгоритму шифрования, ASCII-код символа нужно возвести в степень d = 53 и от полученного числа взять остаток от деления его на 8549. Тут возникает сложная вычислительная задача: Flash поддерживает точность вычислений до 15 значащей цифры, а работая, например, с русскими символами, нам приходится возводить в 53 степень значения, близкие к тысяче. Получаем порядка 150 значащих цифр, а для ASCII-кодов, близких к 8000 получаем порядка 200-220 значащих цифр. При дешифровании же нужно возводить ASCII-код в степень 2525, что еще более усложняет задачу (значащих цифр получается порядка 10 000). Проблема выглядит нерешаемой.

Однако, найден простой и оригинальный выход из сложившегося тупика. Вместо того, чтобы тупо возводить число в нужную степень при помощи функции Math.pow(ascii, 2525) , организован цикл на 2525 шагов. На каждом шагу цикла производится умножение ASCII-кода на себя, от полученного результата берется остаток от деления на 8549. В этом случае количество значащих цифр в вычислениях не превышает 8 (9 000 х 9 000 = 81 000 000), и точность расчетов не страдает. Программный код этого решения алгоритма шифрования данных приведен в листинге 3 Приложения. Дешифрование имеет аналогичный программный код.

В результате выполнения проекта получен программный продукт, который наглядно и доступно объясняет основные принципы шифрования данных. К единственному его недостатку можно отнести то, что мы не разработан алгоритм формирования электронной цифровой подписи. Это связано с тем, что очень мало литературы, которая достаточно подробно описала бы принцип создания электронной подписи.

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

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

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

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

Криптография и шифрование

Что такое шифрование

Шифрование используется человечеством с того самого момента, как появилась первая секретная информация, т. е. такая, доступ к которой должен быть ограничен.

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

Спустя 500 лет шифрование стало повсеместно использоваться при оставлении текстов религиозного содержания, молитв и важных государственных документов.

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

Большинство из нас постоянно используют шифрование, хотя и не всегда знают об этом. Если у вас установлена операционная система Microsoft, то знайте, что Windows хранит о вас (как минимум) следующую секретную информацию:

• пароли для доступа к сетевым ресурсам (домен, принтер, компьютеры в сети и т.п.);

• пароли для доступа в Интернет с помощью DialUр;

• кэш паролей (в браузере есть такая функция — кэшировать пароли, и Windows сохраняет все когда-либо вводимые вами в Интернете пароли);

• сертификаты для доступа к сетевым ресурсам и зашифрованным данным на самом компьютере.

Эти данные хранятся либо в рwl-файле (в Windows 95), либо в SAM-файле (в Windows NT/2000/XР). Это файл Реестра Windows, и потому операционная система никому не даст к нему доступа даже на чтение. Злоумышленник может скопировать такие файлы, только загрузившись в другую ОС или с дискеты. Утилит для их взлома достаточно много, самые современные из них способны подобрать ключ за несколько часов.

Основные понятия и определения криптографии

Итак, криптография дает возможность преобразовать информацию таким образом, что ее прочтение (восстановление) возможно только при знании ключа.

Перечислю вначале некоторые основные понятия и определения.

Алфавит - конечное множество используемых для кодирования информации знаков.

Текст - упорядоченный набор из элементов алфавита.

В качестве примеров алфавитов, используемых в современных ИС можно привести следующие:

· алфавит Z33 - 32 буквы русского алфавита и пробел;

· алфавит Z256 - символы, входящие в стандартные коды ASCII и КОИ-8;

· восьмеричный алфавит или шестнадцатеричный алфавит;

Шифрование - преобразовательный процесс: исходный текст, который носит также название открытого текста, заменяется шифрованным текстом.

Дешифрование - обратный шифрованию процесс. На основе ключа шифрованный текст преобразуется в исходный.

Ключ - информация, необходимая для беспрепятственного шифрования и дешифрования текстов.

Криптографическая система представляет собой семейство T преобразований открытого текста. xлены этого семейства индексируются, или обозначаются символом k; параметр k является ключом. Пространство ключей K - это набор возможных значений ключа. Обычно ключ представляет собой последовательный ряд букв алфавита.

Криптосистемы разделяются на симметричные и с открытым ключом ( или асимметричесские) .

В симметричных криптосистемах и для шифрования, и для дешифрования используется один и тот же ключ.

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

Криптостойкостью называется характеристика шифра, определяющая его стойкость к дешифрованию без знания ключа (т.е. криптоанализу). Имеется несколько показателей криптостойкости, среди которых:

· количество всех возможных ключей;

· среднее время, необходимое для криптоанализа.

Преобразование Tk определяется соответствующим алгоритмом и значением параметра k. Эффективность шифрования с целью защиты информации зависит от сохранения тайны ключа и криптостойкости шифра.

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

Для современных криптографических систем защиты информации сформулированы следующие общепринятые требования:

· должно быть не меньше общего числа возможных ключей;

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

· знание алгоритма шифрования не должно влиять на надежность защиты;

· структурные элементы алгоритма шифрования должны быть неизменными;

· длина шифрованного текста должна быть равной длине исходного текста;

· не должно быть простых и легко устанавливаемых зависимостью между ключами, последовательно используемыми в процессе шифрования;

· любой ключ из множества возможных должен обеспечивать надежную защиту информации;

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

Симметричные и асимметричные криптосистемы

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

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

Криптографическая защита данных — важнейшая задача, которая сегодня актуальна, как никогда. Однако до сих пор некоторые спорят, что лучше — симметричное или ассиметричное шифрование? Что круче — AES или RSA? Однако все эти споры — бесполезное занятие и результат непонимания сути криптографии. Без упоминания конкретики (условий и задач использования) нельзя сказать, что однозначно лучше. В этой статье мы попробуем разобрать особенности ассиметричного и симметричного шифрования, увидим их разницу, приведём аргументы в пользу того либо иного подхода.

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

1.shifr-20219-e1d740.jpg

Симметричное шифрование

Для работы применяется всего один пароль. Происходит всё следующим образом: 1. Существует некий математический алгоритм шифрования. 2. На его вход подаётся текст и пароль. 3. На выходе получаем зашифрованный текст. 4. Если хотим получить исходный текст, применяется тот же самый пароль, но с алгоритмом дешифрования.

symmetric_encryption_graphic_ru-20219-f67d82.jpg

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

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

Ассиметричное шифрование

asymmetric_encryption_graphic_ru-20219-67c3d6.jpg

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

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

Что важно знать

Послесловие

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

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

Читайте также: