Шифрование информации. 2
Оглавление.
Введение…………………………………………………………
1. Методы
шифрования……………………………………….…….…
1.1.
Структура. Понятие ключа………………
1.2.
Криптографические методы………………
1.2.1. Электронная подпись………………………………………... 5
1.2.2. Аутентификация…………………………………………
1.2.3. Криптографическое контрольное суммирование…………. 6
1.2.4. Генерация случайных чисел……………………………….... 7
2. Алгоритмы шифрования…………………………………………………… 8
2.1.
Алгоритмы симметричного
2.1.1. Алгоритмы на
основе сети Фейстеля…………………...
2.1.2. Алгоритмы на основе
2.1.3. Алгоритмы со
структурой “квадрат”……………………..
2.1.4. Алгоритмы с нестандартной структурой…………….….... 13
2.2.
Применение симметрических
2.3.
Асимметрические алгоритмы……………
Заключение……………...………………………………
Список
используемой литературы………………………………………….
18
Введение
Проблема защиты информации волнует человечество еще с давних времен.
Почему эта проблема стала в настоящий момент особо актуальна? Всем известно, что любая форма коммерции подвержена мошенничеству. Схемы электронной коммерции не исключение. Такие формы нападения может предотвратить только стойкая криптография.
Криптография – это наука о защите информации с использованием математических методов.
Криптоанализ – наука посвященная методам вскрытия защищенной информации.
Совокупность криптографии и криптоанализа принято называть криптологией.
Электронные деньги без криптографии просто не выживут. Интернет становится информационной магистралью. Это связанно с тем, что количество пользователей всемирной паутины постоянно растет. Кроме обычного обмена информации в сеть проникают деловые отношения, которые влекут за собой денежные расчеты. Примеров торговли в интернете достаточно. В наше время с электронными деньгами проблем не больше, чем с обычными. Для проведения расчетов в сети разработано много платежных систем. Которые либо искусно применяют существующие кредитки, либо опираются на чистые электронные деньги, то есть на защищенную систему файлов, в которых хранятся записи о состоянии вашего счета. Можно выделить два факта:
- Расчеты в сети связаны с передачей особой информации, которую нельзя открывать посторонним лицам.
- При расчетах необходимо иметь гарантию, что все действующие лица (покупатель, продавец, банк или платежная система) именно те, за кого себя выдают.
Этих
двух факторов достаточно, чтобы понять,
что без криптографии расчеты в сети невозможны,
а сама идея электронных денег предполагает
надежную защиту информации и гарантию
того, что никто не сможет подменить участника
сделки и таким образом украсть электронные
деньги. С появление мощных компьютеров,
технологией сетевых и нейронных вычислений,
криптографические системы стали уязвимы.
Это подталкивает исследователей на создание
новых криптосистем и усовершенствование
уже существующих.
1.Методы шифрования
1.1Структура. Понятие ключа.
Шифрование
является наиболее широко используемым
криптографическим методом
- Бесключевые – в них не используются какие-либо ключи.
- Одноключевые – в них используется некий дополнительный ключевой параметр (обычно это закрытый ключ).
- Двухключевые, использующие в своих вычислениях два ключа: закрытый и открытый.
Более подробно структуру можно рассмотреть на схеме (рис.1).
Рисунок 1
Ключ – секретная информация, используемая криптографическим алгоритмом при шифровании и расшифровки сообщений, постановке и проверке цифровой подписи, вычислении кодов аутентичности.
Открытый ключ – это ключ, используемый для проверки подлинности подписанного документа, а также для предупреждения мошенничества со стороны заверяющего лица.
Закрытый ключ – это ключ известен только своему владельцу. Только сохранение пользователем в тайне своего закрытого ключа гарантирует невозможность подделки злоумышленником документа и цифровой подписи от имени заверяющего.
Пример:
Есть пользователи A и B. Пользователю A нужно передать пользователю B секретную информацию. Для этого пользователь B передаёт пользователю A свой открытый ключ. Используя этот ключ, пользователь A зашифровывает секретное сообщение и передаёт его пользователю B. Пользователь B, используя свой секретный ключ, расшифровывает секретное сообщение. Таким образом, злоумышленник может перехватить либо открытый ключ, либо зашифрованное сообщение в момент их передачи. Но с помощью открытого ключа злоумышленник ничего не сможет расшифровать. А закрытый ключ хранится в надёжном месте у пользователя B и никуда не передаётся. В этот и заключается выгода от использования открытых и закрытых ключей.
1.2. Криптографические методы.
1.2.1. Электронная подпись: Используется для подтверждения целостности и авторства данных. Целостность данных означает, что данные не были случайно или преднамеренно изменены при их хранении или передаче.
Алгоритмы электронной подписи используют два вида ключей:
- Закрытый ключ, используемый для вычисления электронной подписи
- Открытый ключ, используемый для ее проверки
При использовании криптографически сильного алгоритма электронной подписи и при грамотном хранении и использовании секретного ключа, никто другой не в состоянии вычислить верную электронную подпись какого-либо электронного документа.
1.2.2. Аутентификация: Аутент
1.2.3. Криптографическое контрольное суммирование: Существует несколько методов:
- ключевое и бесключевое хеширование
- вычисление имитоприставок
- использование кодов аутентификации сообщений
Все эти методы различным образом из данных произвольного размера с использованием закрытого ключа или без него вычисляют некую контрольную сумму фиксированного размера, однозначно соответствующую исходным данным.
Такой прием используется во многих методах защиты информации, например для подтверждения целостности данных, в тех случаях, когда использование электронной подписи невозможно (например, из-за большой ресурсоемкости). Или в самих схемах электронной подписи. Обычно “подписывается” хеш данных, а не все целиком. Также может использоваться в различных схемах аутентификации пользователей.
1.2.4. Генерация случайных чисел:
Генераторы случайных и псевдослучайных чисел позволяют создавать последовательности случайных чисел, которые широко используются в криптографии:
- Случайные числа необходимы для генерации секретных ключей
- Случайные числа применяются во многих алгоритмах электронной подписи
- Случайные числа используются во многих схемах аутентификации
Возможность получения абсолютно случайных чисел мала. Для этого нужно качественные аппаратные генераторы. Но на основе алгоритмов симметричного шифрования можно построить качественные генераторы псевдослучайных чисел.
2.Алгоритмы шифрования.
Шифрование информации - это преобразование открытой информации в зашифрованную (которая чаще всего называется шифртекстом или криптограммой), и наоборот. Первая часть этого процесса называется зашифрованием, вторая - расшифрованием.
Зашифрование можно представить в виде следующей формулы:
С = Ek1(M)
С -
Полученный в результате зашифрования
текст
M – Открытая информация
Расшифровывание можно представить аналогично:
M' = Dk2(C)
M' – Сообщение, полученное в результате расшифровывания D – Функция расшифровывания (аналогична функции зашифровывания) k2 – Параметр функции D (ключ расшифровывания)
Для верности шифрования необходимо соблюдать условия:
- Функция расшифрования должна соответствовать функции зашифрования
- Ключ расшифрования должен соответствовать ключу зашифрования
При отсутствии верного ключа k2 получить исходное сообщение M' = M с помощью правильной функции D невозможно. Под словом “невозможно” в данном случае обычно понимается невозможность вычисления за реальное время при существующих вычислительных ресурсах.
- Алгоритмы симметричного шифрования
В алгоритмах симметричного шифрования для расшифрования используется тот же самый ключ, что и для зашифрования, или ключ, связанный с ним каким-либо простым соотношением. Последнее встречается существенно реже, особенно в современных алгоритмах шифрования. Такой ключ (общий для зашифрования и расшифрования) обычно называется просто ключом шифрования. Главным принципом является условие, что передатчик и приемник заранее знают алгоритм шифрования, а также ключ к сообщению.
Симметричное шифрование бывает двух видов:
- Блочное шифрование - информация разбивается на блоки фиксированной длины, после чего эти блоки поочередно шифруются. Причем, в различных алгоритмах шифрования или даже в разных режимах работы одного и того же алгоритма блоки могут шифроваться независимо друг от друга или "со сцеплением" - когда результат зашифрования текущего блока данных зависит от значения предыдущего блока или от результата зашифрования предыдущего блока.
- Поточное шифрование - необходимо, в тех случаях, когда информацию невозможно разбить на блоки - скажем, некий поток данных, каждый символ которых должен быть зашифрован и отправлен куда-либо, не дожидаясь остальных данных, достаточных для формирования блока. Алгоритмы поточного шифрования шифруют данные побитно или посимвольно.
Подавляющее
большинство современных
2.1.1. Алгоритм на основе сети Фейстеля.
Сеть Фейстеля подразумевает разбиение обрабатываемого блока данных на несколько субблоков (чаще всего - на два), один из которых обрабатывается некоей функцией f() и накладывается на один или несколько остальных субблоков. (рис.2)
Рисунок 2
Дополнительный аргумент функции f(), обозначенный на рис. 2 как Ki, называется ключом раунда. Ключ раунда - это результат обработки ключа шифрования процедурой расширения ключа, задача которой - получение необходимого количества ключей Ki из исходного ключа шифрования относительно небольшого размера. В простейших случаях процедура расширения ключа просто разбивает ключ на несколько фрагментов, которые поочередно используются в раундах шифрования. Чаще всего процедура расширения ключа является достаточно сложной, а ключи Ki зависят от значений большинства бит исходного ключа шифрования. Наложение обработанного субблока на необработанный чаще всего выполняется с помощью логической операции "исключающее или" - XOR (как показано на рис. 2). Достаточно часто вместо XOR здесь используется сложение по модулю 2n, где n - размер субблока в битах. После наложения субблоки меняются местами, то есть в следующем раунде алгоритма обрабатывается уже другой субблок данных.
Преимущества сети Фейстеля:
- Алгоритмы на основе сети Фейстеля могут быть сконструированы таким образом, что для зашифрования и расшифрования могут использоваться один и тот же код алгоритма - разница между этими операциями может состоять лишь в порядке применения ключей Ki; такое свойство алгоритма наиболее полезно при его аппаратной реализации или на платформах с ограниченными ресурсами.
- Алгоритмы на основе сети Фейстеля являются наиболее изученными - таким алгоритмам посвящено огромное количество криптоаналитических исследований, что является преимуществом как при разработке алгоритма, так и при его анализе.
Существует и более сложная структура сети Фейстеля (рис.3)
Рисунок 3
Такая структура называется обобщенной или расширенной сетью Фейстеля и используется существенно реже традиционной сети Фейстеля.
2.1.2. Алгоритмы на основе подстановочно-перестановочных сетей (SP-сеть - Substitution-permutation network).
В отличие от сети Фейстеля, SP-сети обрабатывают за один раунд целиком шифруемый блок. Обработка данных сводится, в основном, к заменам (когда, например, фрагмент входного значения заменяется другим фрагментом в соответствии с таблицей замен, которая может зависеть от значения ключа Ki) и перестановкам, зависящим от ключа Ki (рис. 4)
Рисунок 4
SP-сети
распространены существенно
2.1.3. Алгоритм со структурой “квадрат”
Для структуры “квадрат” характерно представление шифруемого блока данных в виде двумерного байтового массива. Криптографические преобразования могут выполняться над отдельными байтами массива, а также над его строками или столбцами. Недостатком алгоритмов со структурой “квадрат” является их недостаточная изученность. На рис. 5 приведен пример операции над блоком данных, выполняемой алгоритмом Rijndael (стандарт шифрования в США)
Рисунок 5
2.1.4. Алгоритмы с нестандартной структурой
Алгоритмы, которые нельзя причислить ни к одному из перечисленных типов. Изобретательность может быть безгранична, поэтому классифицировать все возможные варианты алгоритмов шифрования представляется сложным. В качестве примера алгоритма с нестандартной структурой можно привести уникальный по своей структуре алгоритм FROG, в каждом раунде которого по достаточно сложным правилам выполняется модификация двух байт шифруемых данных (рис. 6).
Рисунок 6
2.2. Применение симметричного алгоритма шифрования.
Симметричные методы шифрования удобны тем, что для обеспечения высокого уровня безопасности передачи данных не требуется создания ключей большой длины. Это позволяет быстро шифровать и дешифровать большие объемы информации. Вместе с тем, и отправитель, и получатель информации владеют одним и тем же ключом, что делает невозможным аутентификацию отправителя. Кроме того, для начала работы с применением симметричного алгоритма сторонам необходимо безопасно обменяться секретным ключом, что легко сделать при личной встрече, но весьма затруднительно при необходимости передать ключ через какие-либо средства связи.
Схема работы с применением симметричного алгоритма шифрования состоит из следующих этапов:
- Стороны устанавливают на своих компьютерах программное обеспечение, обеспечивающее шифрование и расшифровку данных и первичную генерацию секретных ключей
- Генерируется секретный ключ и распространяется между участниками информационного обмена. Иногда генерируется список одноразовых ключей. В этом случае для каждого сеанса передачи информации используется уникальный ключ. При этом в начале каждого сеанса отправитель извещает получателя о порядковом номере ключа, который он применил в данном сообщении
- Отправитель шифрует информацию при помощи установленного программного обеспечения, реализующего симметричный алгоритм шифрования
- Зашифрованная информация передается получателю по каналам связи
- Получатель дешифрует информацию, используя тот же ключ, что и отправитель
Примеры алгоритмов симметричного шифрования:
- DES (Data Encryption Standard). Разработан фирмой IBM и широко используется с 1977 года. В настоящее время несколько устарел, поскольку применяемая в нем длина ключа недостаточна для обеспечения устойчивости к вскрытию методом полного перебора всех возможных значений ключа.
- Triple DES. Это усовершенствованный вариант DES, применяющий для шифрования алгоритм DES три раза с разными ключами. Он значительно устойчивее к взлому, чем DES.
- Rijndael. Алгоритм разработан в Бельгии. Работает с ключами длиной 128, 192 и 256 бит. На данный момент считается устойчивым к взлому.
- Skipjack. Алгоритм создан и используется Агентством национальной безопасности США. Длина ключа 80 бит. Шифрование и дешифрование информации производится циклически (32 цикла).
- IDEA. Алгоритм запатентован в США и ряде европейских стран. Держатель патента компания Ascom-Tech. Алгоритм использует циклическую обработку информации (8 циклов) путем применения к ней ряда математических операций.
- RC4. Алгоритм специально разработан для быстрого шифрования больших объемов информации. Он использует ключ переменной длины (в зависимости от необходимой степени защиты информации) и работает значительно быстрее других алгоритмов. RC4 относится к так называемым потоковым шифрам.
2.3. Асимметричные алгоритмы.
Ассиметричные системы также называют криптосистемами с открытым ключом. Это такой способ шифрования данных, при котором открытый ключ передается по открытому каналу (не скрывается) и используется для проверки электронной подписи и для шифрования данных. Для дешифровки же и создания электронной подписи используется второй ключ, секретный.
Само устройство асимметричных криптосистем использует идею односторонних функций ƒ(х), в которых несложно найти х, зная значение самой функции но почти невозможно найти саму ƒ(х), зная только значение х. Примером такой функции может служить телефонный справочник большого города, в котором легко найти номер человека, зная его фамилию и инициалы, но крайне сложно, зная номер, вычислить владельца.
Примеры алгоритмов асимметричного шифрования:
- RSA (Rivest-Shamir-Adleman, Ривест — Шамир — Адлеман)
- DSA (Digital Signature Algorithm)
- Elgamal (Шифросистема Эль-Гамаля)
- Diffie-Hellman (Обмен ключами Диффи — Хелмана)
- ECC (Elliptic Curve Cryptography, криптография эллиптической кривой)
- ГОСТ Р 34.10-2001
- Rabin
- Luc
- McEliece
Принцип работы алгоритма:
Допустим, имеются два абонента: А и В, и абонент В хочет отправить шифрованное сообщение абоненту А. Он зашифровывает сообщение с помощью открытого ключа и передает его уже зашифрованным по открытому каналу связи. Получив сообщение, абонент А подвергает его расшифрованию с помощью секретного ключа и читает. При получении сообщения абонент А должен аутентифицировать свою личность перед абонентом В для того, чтобы недоброжелатель не смог выдать себя за абонента А и подменить его открытый ключ своим.
Заключение.
Выбор системы шифрования должен быть основан на глубоком анализе слабых и сильных сторон тех или иных методов защиты. Обоснованный выбор той или иной системы защиты в общем-то должен опираться на какие-то критерии эффективности. К сожалению, до сих пор не разработаны подходящие методики оценки эффективности криптографических систем.
Наиболее простой критерий
Список используемой литературы.
- Венбо Мао. “Современная криптография. Теория и практика”
- А.Г. Ростовцев, Н.В. Михайлова “Методы криптоанализа классических шифров”
- А. Саломаа “Криптография с открытым ключом”
- А.П. Зайцев, А.А. Шелупанова “Технические средства и методы защиты информации”

- Шифрование информации методом гаммирования
- Шифр Плэйфера (Биграммы)
- Шифрування даних
- Шифр Цезаря
- Шифры перестановки
- Шиханы
- Шихта компоненттерінің химиялық құрамын анықтау
- Шифраторы и дешифраторы
- Шифраторы и дешифраторы
- Шифр Виженера
- Шифрлау процесі
- Шифр Ностардамуса
- Шифрование и защита информации
- Шифрование информации