Важной характеристикой систем шифрования, исходя из устойчивости к воздействию противника, является их способность противостоять криптоанализу. По степени доказуемости их безопасности существуют системы шифрования:
- теоретически недешифруемые или безусловно стойкие;
- практически недешифруемые или практически стойкие, которые в свою очередь делятся на доказуемо стойкие и предположительно стойкие.
Максимально стойкие системы шифрования реализовать на практике сложно. Это обстоятельство явилось причиной того, что широкое применение получили системы шифрования с объемом ключа, значительно меньшим, чем объем зашифрованного сообщения.
При этом на данный момент времени для шифрования информации используются два вида алгоритмов – симметричные и несимметричные (с открытым ключом) алгоритмы.
Также системы шифрования можно разделить по соотношению ключей зашифрования (К1) и расшифрования (К2) на два класса [4]:
- симметричные системы шифрования;
- несимметричные (ассиметричные) системы шифрования.
Часто для симметричных криптосистем ключ зашифрования равен ключу расшифрования KE = KD, а для несимметричных – KE ≠ KD. Однако, в общем случае, система шифрования информации называется симметричной, если для любой допустимой пары ключей (KE, KD) вычислительно просто определить один ключ, зная другой, т. е. из KE можно вычислить KD, и, зная KD, легко определить KE [4]. В таких системах оба ключа должны быть секретными.
Система шифрования информации называется несимметричной, если для любой допустимой пары ключей (KE, KD) вычислительно невозможно определить ключ расшифрования KD, зная ключ зашифрования KE [4].
В несимметричной системе ключ зашифрования KE может быть открытым (несекретным), то есть известным для всех. Такие криптосистемы часто называют двухключевыми системами или системами с открытым ключом.
Основной проблемой при реализации симметричного шифрования является организация процесса рассылки ключей, потому что в симметричных системах секретный ключ должен быть известен как отправителю, так и получателю. Решение этой проблемы весьма проблематично, поскольку необходимо использовать секретный канал для надежной передачи ключей. Тем не менее, в остальном симметричное шифрование имеет массу достоинств, которые хорошо просматриваются на фоне серьезных недостатков нессиметричного шифрования.
В частности, одним из недостатков несимметричных криптосистем является низкая скорость выполнения операций зашифрования и расшифрования, обусловленная использованием пары различных ключей, для обработки которых приходится осуществлять сложные и трудоемкие операции. Следующим недостатком является то, что криптостойкость алгоритмов несимметричного шифрования математически не доказана. Определенные трудности возникают и при защите ключей от подмены, потому что, подменив открытый ключ, противник способен зашифровать информацию на основе измененного ключа и в дальнейшем расшифровать его своим секретным ключом.
Следующим классификационным признаком систем шифрования является размер обрабатываемого (шифруемого) блока. Различают поточные и блочные системы шифрования.
Поточный шифр – это симметричный шифр, в котором каждый символ открытого текста преобразуется в символ шифрованного текста в зависимости не только от используемого ключа, но и от его расположения в потоке открытого текста [5]. К настоящему времени известно большое количество алгоритмов поточного шифрования, это – A3, A5, A8, MUGI, PIKE, RC4, SEAL, ORION и др.
Блочное шифрование подразумевает разбиение информации на блоки определенной, фиксированной длины (например, 64 или 128 бит), после чего эти блоки поочередно шифруются [4]. Одним из достоинств блочного шифрования является схожесть процедур зашифрования и расшифрования, благодаря чему создание аппаратуры шифрования становится проще, так как в передающем и приемном тракте используются аналогичные блоки.
Рассмотрим более подробно отдельные алгоритмы блочного шифрования, активно применяемые в криптографических системах в последнее время.
Наиболее известными представителями блочных шифров являются такие криптоалгоритмы как: ГОСТ 28147-89 – советский и российский стандарт шифрования, также являющийся стандартом СНГ, DES (Data Encryption Standard) и AES (Advanced Encryption Standard) – американские стандарты шифрования, IDEA (англ. International Data Encryption Algorithm) – международный алгоритм шифрования данных.
Также представителем российского стандарта блочного шифрования является криптоалгоритм с кодовым названием «Кузнечик». Описание и принципы работы данного шифра положены в основу нового российского государственного стандарта шифрования ГОСТ Р 34.12-2015[1]. В ГОСТ Р 34.13-2015 представлены и подробно описаны основные режимы работы данного шифра. Данные государственные стандарты вступают в силу с 1 января 2016 года, что предопределяет актуальность их рассмотрения.
Для проведения сравнительного анализа представленных шифров рассмотрим их основные параметры, такие как: длина ключа, число раундов шифрования, длина обрабатываемого (шифруемого) блока, криптостойкость, сложность аппаратной и программной реализации и сложность преобразования.
Значения перечисленных параметров для криптоалгоритмов: ГОСТ 28147-89, ГОСТ Р 34.12-2015, DES, AES, IDEA представлены в таблице 1.
Таблица 1
Криптоалгоритм |
Длина ключа, бит |
Длина блока, бит |
Число раундов |
Число режимов работы |
ГОСТ Р 34.12-2015 |
256 |
128 |
9 |
6 |
ГОСТ 28147-89 |
256 |
64 |
32 |
4 |
AES |
128/192/256 |
128 |
10/12/14 (зависит от размера ключа) |
5 |
DES |
56 |
64 |
16 |
4 |
IDEA |
128 |
64 |
8 |
4 |
Для того чтобы количественно оценить значения представленных параметров для конкретных криптоалгоритмов раскроем их смысловое значение.
Ключом шифра называется секретная информация, используемой криптографическим алгоритмом при зашифровании и расшифровании сообщения. Соответственно длина ключа это количество информации в ключе, данный параметр измеряется в битах. Как видно из таблицы, длина ключа шифра ГОСТ Р 34.12-2015 так же как и в ГОСТ 28147-89 составляет 256 бит, что превосходит иностранных представителей блочного шифрования, за исключением AES в одном из режимов работы.
При этом время полного перебора, в годах, определяется по формуле:


где S – Мощность алфавита ключа, S=2 (0 или 1);
L – Длинна ключа;
V – Скорость перебора;
k – Коэффициент перевода секунд в дни, t=3156000;
Так для шифра ГОСТ Р 34.12-2015, полный перебор, при скорости перебора V=1000000 комбинаций в секунду, займет


Для стандарта DES, с длиной ключа в 56 бит, и той же скоростью обработки, время полного перебора составит всего 22832 года. Таким образом, очевидно, что полный перебор при такой длине ключа полностью лишен смысла и поэтому параметру все перечисленные алгоритмы удовлетворяют стандартным требованиям по криптостойкости.
В длине обрабатываемого (шифруемого) блока с шифром ГОСТ Р 34.12-2015 может сравниться только американский стандарт AES, размеры обрабатываемых блоков у других шифров вдвое уступают им.
Число раундов шифрования – это количество шагов обработки данных, в ГОСТ Р 34.12-2015 сравнимо невелико, уступает всем шифрам кроме IDEA, однако, при используемой криптосхеме и реализованном блоке нелинейных преобразований вполне сопоставимо с другими шифрами.
Режимом шифрования называется способ применения блочного шифра, который позволяет преобразовать блоки открытых данных в блоки шифрованных данных.
Алгоритмы IDEA и DES используют 4 режима работы [4]:
- режим электронной кодовой книги (Electronic Codebook, ECB) – режим, при котором каждый блок открытого текста заменяется блоком шифротекста.
- режим сцепления блоков шифротекста (Cipher Block Chaining, CBC) – режим с использованием механизма обратной связи. Каждый блок открытого текста (кроме первого) побитово складывается по модулю 2 с предыдущим результатом шифрования.
- режим обратной связи по шифротексту, режим гаммирования с обратной связью (Cipher Feedback Mode, CFB) – режим, при котором для шифрования следующего блока открытого текста он складывается по модулю 2 с перешифрованным результатом шифрования предыдущего блока.
- режим обратной связи по выходу (Output Feedback, OFB). Особенностью режима является то, что в качестве входных данных для алгоритма блочного шифрования не используется само сообщение. Вместо этого блочный шифр используется для генерации псевдослучайного потока байтов, который с помощью операции сложения по модулю 2 складывается с блоками открытого текста.
Кроме вышеперечисленных режимов работы в алгоритме AES используется режим гаммирования (Counter, CTR), заключающийся в «наложении» последовательности (шифрующей гаммы), на открытый текст.
В ГОСТ 28147-89 не применяется режим сцепления блоков шифротекста, но в отличии от IDEA, DES и AES в нем применяется режим выработкиимитовставки (message authentication code, MAC) – режим, в котором к сообщению добавляется специальный набор символов (имитовставка). Он предназначен для обеспечения его целостности и аутентификации источника данных. В ГОСТ 28147-89 режим электронный кодовой книги называется режимом простой замены, а криптоалгоритм ГОСТ Р 34.12-2015 поддерживает все перечисленные режимы работы.
В отличие от ГОСТ 28147-89 шифр по ГОСТ Р 34.12-2015 представляет собой SP-сеть (подстановочно-перестановочную сеть) – преобразование, состоящее из нескольких одинаковых раундов, когда каждый раунд состоит из нелинейного и линейного преобразований, а также операции наложения ключа. SP-сеть является аналогом сети Фейстеля, ее отличие заключается в том, что в SP-сети преобразуется не половина входного блока, как это происходит в сети Фейстеля, а весь блок целиком, что является неоспоримым преимуществом.
Также необходимо рассмотреть такой параметр шифров как криптостойкость, под которой понимается способность криптографического алгоритмапротивостоять криптоанализу (различным попыткам взлома данных, зашифрованных блочным шифром, называемых атаками) [4]. К блочным шифрам применимы все основные типы атак, такие как:
- полный перебор;
- частотный криптоанализ;
- метод максимального правдоподобия;
- XSL-атака, атака на основе решения алгебраических уравнений;
- атака на основе внесения ошибок в процедуру дешифрования;
- атака на основе использования слабых ключей;
- метод «встречи посередине»;
- линейный криптоанализ;
- дифференциальный криптоанализ;
Среди рассмотренных блочных шифров, самым ранним является шифр DES. Данный криптоалгоритм уязвим к линейному криптоанализу, основанному на поиске аффинных (близких) приближений. Из-за малого количества раундов, возникает возможность лавинного эффекта, при котором, изменение незначительного числа битов на входе приводит к значительному изменению битов на выходе. Так же DES уязвим к полному перебору, в силу небольшого размера ключа, именно такой атакой впервые был вскрыт DES.
По заявлению Агентства Национальной безопасности США, шифр AES является достаточно надежным для защиты сведений составляющих государственную тайну. При использовании различных ключей, AES применим для защиты информации с грифом секретно и совершенно секретно.
ГОСТ 28147-89 устойчив к таким широко применяемым методам, как линейный и дифференциальный криптоанализ. Однако были высказаны различные мнения по поводу атак на данный шифр, но ввиду слишком высокой вычислительной сложности данные атаки не применимы на практике.
Шифры AES, ГОСТ Р 34.12-2015 и ГОСТ 28147-89 имеют большое количество раундов, поэтому атаки на основе дифференциального и линейного криптоанализов практически бесполезны, так как они чувствительны к числу раундов шифрования.
Поскольку о новом блочном шифре ГОСТ Р 34.12-2015 еще слишком мало информации о криптостойкости, то нельзя однозначно говорить о его надежности. Ожидается, что он будет устойчив ко всем видам атак на блочные шифры.
Подводя итог сказанному, необходимо отметить, что большинство рассмотренных современных алгоритмов шифрования удовлетворяют необходимому набору требований в области криптографической безопасности, предусматривают как программную так и аппаратную реализацию и нашли широкое применение в различных приложениях, в том числе и для защиты сведений ограниченного доступа.
Библиографический список
- ГОСТ Р 34.12-2015 «Информационная технология. Криптографическая защита информации. Блочные шифры».
- ГОСТ Р 34.13-2015 «Информационная технология. Криптографическая защита информации. Режимы работы блочных шифров».
- Баричев С.Г., Гончаров В.В., Серов Р.Е. Основы современной криптографии. – М.: Горячая линия – Телеком, 2002. – 175 с. – (Специальность. Для высших учебных заведений). – 3000 экз. – ISBN 5-93517-075-2.
- Гатчин Ю.А., Коробейников А.Г. Основы криптографических алгоритмов. Учебное пособие. – СПб.: СПбГИТМО(ТУ), 2002.
- Шнайер Б. Прикладная криптография. Протоколы, алгоритмы, исходные тексты на языке Си: Триумф, 2002. – 816 с. – 3000 экз. – ISBN 5-89392-055-4.