Шифрование

Классификация методов криптографического закрытия информации

Тема 6. Криптографические методы информационной безопасности

Криптографические методы являются наиболее эффективными средствами защиты информации в автоматизированных системах обработки информации (АСОИ). А при передаче информации по линиям связи они являются единственным реальным средством предотвращения несанкционированного доступа.

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

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

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

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

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

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

Основные требования к криптографическому закрытию информации:

I. Сложность и стойкость криптографического закрытия данных должны выбираться в зависимости от объема и степени секретности данных.

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

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

IV. Выполнение процедур прямого и обратного преобразований должно быть формальным. Эти процедуры не должны зависеть от длины сообщений.

V. Ошибки, возникающие в процессе преобразования не должны распространяться по системе.

VI. Вносимая процедурами защиты избыточность должна быть минимальной.

Криптографические методы

Шифрование Кодирование Стеганография Сжатие

подстановка (замена) Перестановка Гаммирование Аналитические преобразования Комбиниро­ванные

Рис. 6.2. Классификация методов криптографического закрытия информации

В криптографической терминологии исходное послание именуется открытым текстом (plaintext или. сlеаrtехt). Изменение исходного текста так, чтобы скрыть от прочих его содержание, называют шифрованием (еnсrурtiоn). Зашифрованное сообщение называют шифротекстом - (сiрhеrtехt). Процесс, при котором из шифротекста извлекается открытый текст - называют дешифровкой (clесrурtiоn). В процессе шифровки и дешифровки используется ключ (kеу). Алгоритм шифрования обеспечивает невозможность дешифрования шифрованного текста не зная ключа.

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

симметричные;

асимметричные (с открытым ключом).

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

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

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

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

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

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

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

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

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

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

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

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

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


подстановки


перестановки


гаммирование


аналитические преобразования


Рис. 6.3. Классификация симметричных криптосистем.

Шифрование методом замены (подстановки)

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

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

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

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

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

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

Таблица Вижинера для русского алфавита:

А Б В Г Д Е Ж 3 И Й К Л М Н О П Р С Т У Ф X Ц Ч Ш Щ Ь Ы Ъ Э Ю Я

Б В Г Д Е Ж 3 И Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Ь Ы Ъ Э Ю Я А

В Г Д Е Ж 3 И Й К Л М Н О П Р С Т У Ф X Ц Ч Ш Щ Ь Ы Ъ Э Ю Я А Б

Г Д Е Ж З И Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Ь Ы Ъ Э Ю Я А Б В

Д Е Ж 3 И Й К Л М Н О П Р С Т У Ф X Ц Ч Ш Щ Ь Ы Ъ Э Ю Я А Б В Г

Е Ж 3 И Й К Л М Н О П Р С Т У Ф X Ц Ч Ш Щ Ь Ы Ъ Э Ю Я А Б В Г Д

Ж 3 И Й К Л М Н О П Р С Т У Ф X Ц Ч Ш Щ Ь Ы Ъ Э Ю Я А Б В Г Д Е

3 И Й К Л М Н О П Р С Т У Ф X Ц Ч Ш Щ Ь Ы Ъ Э Ю Я А Б В Г Д Е Ж

И Й К Л М Н О П Р С Т У Ф X Ц Ч Ш Щ Ь Ы Ъ Э Ю Я А Б В Г Д Е Ж 3

Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Ь Ы Ъ Э Ю Я А Б В Г Д Е Ж 3 И

К Л М Н О П Р С Т У Ф X Ц Ч Ш Щ Ь Ы Ъ Э Ю Я А Б В Г Д Е Ж 3 И Й

Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Ь Ы Ъ Э Ю Я А Б В Г Д Е Ж 3 И Й К

М Н О П Р С Т У Ф X Ц Ч Ш Щ Ь Ы Ъ Э Ю Я А Б В Г Д Е Ж 3 И Й К Л

Н О П Р С Т У Ф X Ц Ч Ш Щ Ь Ы Ъ Э Ю Я А Б В Г Д Е Ж 3 И Й К Л М

О П Р С Т У Ф Х Ц Ч Ш Щ Ь Ы Ъ Э Ю Я А Б В Г Д Е Ж 3 И Й К Л М Н

П Р С Т У Ф Х Ц Ч Ш Щ Ь Ы Ъ Э Ю Я А Б В Г Д Е Ж 3 И Й К Л М Н О

Р С Т У Ф Х Ц Ч Ш Щ Ь Ы Ъ Э Ю Я А Б В Г Д Е Ж З И Й К Л М Н О П

С Т У Ф X Ц Ч Ш Щ Ь Ы Ъ Э Ю Я А Б В Г Д Е Ж 3 И Й К Л М Н О П Р

Т У Ф X Ц Ч Ш Щ Ь Ы Ъ Э Ю Я А Б В Г Д Е Ж 3 И Й К Л М Н О П Р С

У Ф X Ц Ч Ш Щ Ь Ы Ъ Э Ю Я А Б В Г Д Е Ж 3 И Й К Л М Н О П Р С Т

Ф Х Ц Ч Ш Щ Ь Ы Ъ Э Ю Я А Б В Г Д Е Ж З И Й К Л М Н О П Р С Т У

X Ц Ч Ш Щ Ь Ы Ъ Э Ю Я А Б В Г Д Е Ж 3 И Й К Л М Н О П Р С Т У Ф

Ц Ч Ш Щ Ь Ы Ъ Э Ю Я А Б В Г Д Е Ж 3 И Й К Л М Н О П Р С Т У Ф X

Ч Ш Щ Ь Ы Ъ Э Ю Я А Б В Г Д Е Ж 3 И Й К Л М Н О П Р С Т У Ф X Ц

Ш Щ Ь Ы Ъ Э Ю Я А Б В Г Д Е Ж 3 И Й К Л М Н О П Р С Т У Ф X Ц Ч

Щ Ь Ы Ъ Э Ю Я А Б В Г Д Е Ж 3 И Й К Л М Н О П Р С Т У Ф X Ц Ч Ш

Ь Ы Ъ Э Ю Я А Б В Г Д Е Ж 3 И Й К Л М Н О П Р С Т У Ф X Ц Ч Ш Щ

Ы Ъ Э Ю Я А Б В Г Д Е Ж 3 И Й К Л М Н О П Р С Т У Ф X Ц Ч Ш Щ Ь

Ъ Э Ю Я А Б В Г Д Е Ж 3 И Й К Л М Н О П Р С Т У Ф X Ц Ч Ш Щ Ь Ы

Э Ю Я А Б В Е Д Е Ж 3 И Й К Л М Н О П Р С Т У Ф X Ц Ч Ш Щ Ь Ы Ъ

Ю Я А Б В Г Д Е Ж 3 И Й К Л М Н О П Р С Т У Ф X Ц Ч Ш Щ Ь Ы Ъ Э

Я А Б В Г Д Е Ж 3 И Й К Л М Н О П Р С Т У Ф X Ц Ч Ш Щ Ь Ы Ъ Э Ю

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

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

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

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

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

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

Многоалфавитная одноконтурная монофоническая подстановка

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

Пример таблицы монофонической замены: А Б В Г Д Е Ж 3 И Й К Л М Н О П Р С Т У Ф X Ц Ч Ш Щ Ь Ы Ъ Э Ю Я __

Ф Н ( Щ И Г Е К А Д Ы ~ @ 8 Л Я Ж л С Ш М Б С) П Т X Ю Ъ Р } \ _ #

Н У ЩХ> +Б К = Д Ц Й Ч [ В Ь ) О & { М Б р П Т X10 Ъ'Р } \ __ <

Л Н ( Щ И ] Е R % Д Ы ~ @ G / Я Э 3 " Ш М Б Q П Т X Ю Ъ Р } \ _ W

ФНУЩDКЕRАДЦЙЧ S, + ЬЖ^С { М Б Q ПТХ Ю Ъ Р } \_ V

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

Многоалфавитная многоконтурная подстановка

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

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

Шифрование методом перестановки

При шифровании перестановкой символы шифруемого текста переставляются по определенным правилам внутри шифруемого блока этого текста.

Простая перестановка

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

Шифрование проводится в следующем порядке:

1. Шифруемый текст записывается последовательными строками под числами ключевой последовательности, образуя блок шифрования размером n*m.

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

3. Заполняется новый блок и т.д.
Например, зашифруем текст

ГРУЗИТЕ__АПЕЛЬСИНЫ_БОЧКАХ

блоком размером 8x3 и ключом 5-8-1-3-7-4-6-2.

Таблица простой перестановки будет иметь вид:

    Ключ I        
8 .
Г Р У И Т Е _
А П Е л ь С И Н
Ы - Б О ч К А X

Зашифрованное сообщение: УЕБ_НХЗЛОЕСЛГАЫЕИАИЬЧРП_

Расшифрование выполняется в следующем порядке:

1. Из зашифрованного текста выделяется блок символов размером n*m

2. Этот блок разбивается на n групп по m символов.

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

4. Выделяется новый блок символов и т.д.

Перестановка, усложненная по таблице

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

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

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

Перестановка, усложненная по маршрутам

Высокую стойкость шифрования можно обеспечить усложнением перестановок по маршрутам типа гамильтоновских. При этом для записи символов шифруемого текста используются вершины некоторого гиперкуба, а знаки зашифрованного текста считываются по маршрутам Гамильтона, причем; используются несколько различных маршрутов. Для примера рассмотрим шифрование по маршрутам Гамильтона при n=3.

Структура трехмерного гиперкуба:

Номера вершин куба определяют последовательность его заполнения символами шифруемого текста при формировании блока. В общем случае n-мерный гиперкуб имеет n2 вершин. Маршруты Гамильтона имеют вид:

Последовательность перестановок символов в шифруемом блоке для первой схемы 5-6-2-1-3-4-8-7, а для второй 5-1-3-4-2-6-8-7. Аналогично можно получить последовательность перестановок для других маршрутов: 5-7-3-1-2-6-8-4, 5-6-8-7-3-1-2-4, 5-1-2-4-3-7-8-6 и т.д.

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

Стойкость простой перестановки однозначно определяется размерами используемой матрицы перестановки. Например, при использовании матрицы 16х16 число возможных перестановок достигает 1.4Е26, Такое число вариантов невозможно перебрать даже с использованием ЭВМ. Стойкость усложненных перестановок еще выше. Однако следует иметь в виду, что при шифровании перестановкой полностью сохраняются вероятностные характеристики исходного текста, что облегчает криптоанализ.

Шифрование методом гаммирования

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

Последовательность гаммы удобно формировать с помощью датчика псевдослучайных чисел (ПСЧ).

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

Шифрование с помощью аналитических преобразований

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

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

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

Комбинированные методы шифрования

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

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

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

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

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

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

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

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

Алгоритмы шифрования с открытым ключом получили широкое распространение в современных информационных системах.

Рис 6.4. Криптосистема с открытым ключом

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

· самостоятельные средства защиты передаваемых и хранимых данных.

· средства для распределения ключей.

· средства аутентификации пользователей.

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

Несмотря на довольно большое число различных криптосистем с открытым ключом, наиболее популярна - криптосистема RSА, разработанная в 1977 году и получившая название в честь ее создателей: Ривеста, Шамира и Эйдельмана.

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

Пусть n=р*q, где р и q - различные простые числа, а е и dудовлетворяют уравнению

е * d(тоd (р-1) * (q-1|) =1,

Если р и q - достаточно большие простые числа, то разложение n практически не осуществимо. Это и заложено в основу системы шифрования RSА.

{е,п} - образует открытый ключ, а {d,п} - закрытый (или наоборот).

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

Шифрование осуществляется по формуле: Sшифр=Se тоd N.

Дешифрование осуществляется по формуле: S = Sdшифр тоd N.

Где S - исходный текст, Sшифр - преобразованный текст, при этом S < N.

Характеристики существующих шифров

DES (Dаtа Еnсrурtiоn Stаndаrt) это симметричный алгоритм шифрования, один ключ используется как для зашифровывания, так и для расшифровывания сообщений. Разработан фирмой IВМ и утвержден правительством США в 1977 как официальный стандарт.

DES имеет блоки по 64 бит и основан на 16 кратной перестановке данных также для зашифровывания использует ключ в 56 бит. Существует несколько режимов DES, например Еlесtrоniс Соde Вооk (ЕСВ) и Сiрhеr В1осk Сhаining (СВС).

IDEA (Intеrnаtiоnаl Dаtа А1gоritm) - это вторая версия блочного шифра разработанный К. Лейем (Lai) и Д. Месси (Маssеу) в конце 80-х. Это шифр состоящий из 64-битных повторяющихся блоков с 128-битным ключом и восемью проходами (rоunds). Дешифрование выполняется по тому же принципу, что и шифрование. Структура шифра была разработана для легкого воплощения как программно, так и аппаратно, и безопасность IDEA основывается на использовании трех не совместимых типов арифметических операций над 16-битными словами. Скорость программного IDEA сравнима со скоростью DES.

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

RС2 и RС4.

RС2 и RС4 это блочные шифры с ключом переменной длины созданные Роном Ривестом для RSA Dаtа Sесuritу "RС" расшифровывается как "Ron’s Соd" или "Rivest Сiрhеr (шрифт)". RС2 быстрее чем DES и был специально разработан для замены DES. Он может быть реализован более или менее зачищенным чем DES, в зависимости от длины ключа. RС2 алгоритм конфиденциален и является собственностью RSA Dаtа Sесuritу. RС2 может использоваться там, где используется DES.

RС2 и RС4 с ключами 128 бит обеспечивают такой же уровень безопасности как и IDEA или тройной DES. RС2 и RС4 используется широко разработчиками, чьи продукты экспортируются за пределы США, поскольку экспортировать DES запрещено.

RSA (авторы: Rivest, Shamir и Аldеrmаn) это система с открытым ключом. (public-kеу) предназначенная как для шифрования, так и для аутентификации была разработана в 1977 году. Она основана на трудности разложения очень больших целых чисел на простые сомножители.

RSA очень медленный алгоритм. Для сравнения, на программном уровне DES по меньшей мере в 100 раз быстрее RSA, а на аппаратном в 1000 - 10000 раз, в зависимости от выполнения.

ГОСТ 28147-89 - это стандарт, принятый в 1989 году в Советском Союзе и установивший алгоритм шифрования данных, составляющих гостайну. По свидетельству причастных к его реализациям и использованию людей:, алгоритм разработан в 70-е годы в 8-м Главном Управлении КГБ СССР, тогда он имел гриф СС (совершенно секретно). Затем гриф был понижен до С (секретно), а когда в 89-м году алгоритм был проведен через Госстандарт и стал официальным государственным стандартом, гриф с него был снят, однако алгоритм оставался ДСП (для служебного пользования). В начале 90-х годов он стал полностью открытым.

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

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

В силу намного большей длины ключа ГОСТ гораздо устойчивей DESа к вскрытию путем полного перебора по множеству возможных значений ключа.

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