Понедельник, 14.07.2025, 05:40
Приветствую Вас Гость

Защита информации
в компьютерных системах

Меню сайта
Категории раздела
Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0
Яндекс.Метрика
Главная » Статьи » Криптография » Криптосистемы

Виды и структура алгоритмов шифрования

Виды и структура алгоритмов шифрования

 

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

  1. Бесключевые, в которых не используются какие-либо ключи.
  2. Одноключевые - в них используется некий дополнительный ключевой параметр - обычно это секретный ключ.
  3. Двухключевые, использующие в своих вычислениях два ключа: секретный и открытый.


Рис. 1. Криптоалгоритмы

Обзор криптографических методов

Шифрование является основным методом защиты; рассмотрим его подробно далее.

Стоит сказать несколько слов и об остальных криптографических методах:

  1. Электронная подпись используется для подтверждения целостности и авторства данных. Целостность данных означает, что данные не были случайно или преднамеренно изменены при их хранении или передаче.
    Алгоритмы электронной подписи используют два вида ключей:
    • секретный ключ используется для вычисления электронной подписи;
    • открытый ключ используется для ее проверки.

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

  1. Аутентификация позволяет проверить, что пользователь (или удаленный компьютер) действительно является тем, за кого он себя выдает. Простейшей схемой аутентификации является парольная - в качестве секретного элемента в ней используется пароль, который предъявляется пользователем при его проверке. Такая схема доказано является слабой, если для ее усиления не применяются специальные административно-технические меры. А на основе шифрования или хэширования (см. ниже) можно построить действительно сильные схемы аутентификации пользователей.
  2. Существуют различные методы криптографического контрольного суммирования:
    • ключевое и бесключевое хэширование;
    • вычисление имитоприставок;
    • использование кодов аутентификации сообщений.

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

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

Шифрование

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

Можно представить зашифрование в виде следующей формулы:

С = Ek1(M),

где:
M (message) - открытая информация,
С (cipher text) - полученный в результате зашифрования шифртекст,
E (encryption) - функция зашифрования, выполняющая криптографические преобразования над M,
k1 (key) - параметр функции E, называемый ключом зашифрования.

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

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

Аналогичным образом можно представить и расшифрование:

M' = Dk2(C),

где:
M'- сообщение, полученное в результате расшифрования,
D (decryption) - функция расшифрования; так же, как и функция зашифрования, выполняет криптографические преобразования над шифртекстом,
k2 - ключ расшифрования.

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

  1. Функция расшифрования должна соответствовать функции зашифрования.
  2. Ключ расшифрования должен соответствовать ключу зашифрования.

При отсутствии верного ключа k2 получить исходное сообщение M' = M с помощью правильной функции D невозможно.

Алгоритмы шифрования можно разделить на две категории (см. рис. 1):

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

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

В асимметричном шифровании ключ зашифрования k1 легко вычисляется из ключа k2 таким образом, что обратное вычисление невозможно. Например, соотношение ключей может быть таким:

k1 = ak2 mod p,

где a и p - параметры алгоритма шифрования, имеющие достаточно большую размерность.

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

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


Симметричное шифрование бывает двух видов:

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


Категория: Криптосистемы | Добавил: SL (21.10.2013)
Просмотров: 4164 | Теги: виды алгоритмов, симметричное шифрование, Шифрование, криптосистемы | Рейтинг: 0.0/0
Всего комментариев: 0
Имя *:
Email *:
Код *:
Форма входа
Друзья сайта