Классические алгоритмы шифрования данных
В некоторых публикациях в периодической печати и в сети Internet под защитой информации понимается только часть из возможных и необходимых мероприятий в этом направлении, связанных с профилем работы конкретного коллектива исполнителей. Правильнее понимать под этим термином комплекс мероприятий, проводимых с целью предотвращения утечки, хищения, утраты, несанкционированного уничтожения, искажения, модификации (подделки), несанкционированного копирования, блокирования информации и т.п. Поскольку, например, утрата информации может происходить по чисто "техническим", объективным и неумышленным причинам, под это определение попадают также и мероприятия, связанные с повышением надежности сервера из-за отказов или сбоев в работе винчестеров, недостатков в используемом программном обеспечении и т.д.
Вообще, переход от работы на персональных компьютерах к работе в сети усложняет защиту информации по следующим причинам.
- Большое число пользователей в сети и их переменный состав. Защита на уровне имени и пароля пользователя недостаточна для предотвращения входа в сеть посторонних лиц.
- Большая протяженность сети и наличие многих потенциальных каналов проникновения в сеть.
- Уже упомянутые недостатки в аппаратном и программном обеспечении, которые зачастую обнаруживаются не на предприятия или организации). Преимущества организационных средств – возможность решения многих разнородных проблем, простота реализации, возможность быстрого реагирования на нежелательные действия в сети, неограниченные возможности модификации и развития. Недостатки – высокая зависимость от субъективных факторов, в том числе от общей организации работы в данном конкретном подразделении.
Шифрование данных представляет собой разновидность программных средств защиты информации и имеет особое значение на практике как единственная надежная защита информации, передаваемой по протяженным последовательным линиям, от утечки.
Понятие "шифрование" часто употребляется в связи с более общим понятием криптографии. Криптография включает шифрование и дополнительно рассматривает способы решения проблем, связанных с возможной подменой цифровых данных: как проверить достоверность цифровых данных и как по аналогии с рукописной подписью на бумаге проставить визу на электронных документах, имея в распоряжении лишь последовательности нулей и единиц. Эти проблемы и способы их решения будут рассмотрены далее.
Число используемых программ шифрования ограничено, причем часть из них являются стандартами де-факто или де-юре. Однако даже если алгоритм шифрования не представляет собой секрета, произвести дешифрование (или расшифровку) без знания закрытого ключа чрезвычайно сложно. Это свойство в современных программах шифрования обеспечивается в процессе многоступенчатого преобразования исходной открытой информации ("plain text" в англоязычной литературе) с использованием ключа (или двух ключей – по одному для шифрования и дешифрования). В конечном счете каждый из используемых сложных методов (алгоритмов) шифрования представляет собой комбинацию относительно простых методов.
Различают следующие классические алгоритмы шифрования:
- подстановка (простая – одноаалфавитная, многоалфавитная однопетлевая, многоалфавитная многопетлевая);
- перестановка (простая, усложненная);
- гаммирование (смешивание с короткой, длинной или неограниченной маской).
Устойчивость каждого из перечисленных методов к дешифрованию бег знания ключа характеризуется количественно с помощью показателя S представляющего собой минимальный объем зашифрованного текста который может быть дешифрован посредством статистического анализа.
Подстановка предполагает использование альтернативного алфавит; (или нескольких алфавитов) вместо исходного алфавита. В случае простой подстановки для символов английского алфавита можно предложить например, следующую замену (табл. 6.1).
Тогда слово "cache" в зашифрованном виде представляется как "usuxk"
Существует, однако, возможность дешифрования сообщения с помощью известной статистической частоты повторяемости символов в произвольном, достаточно длинном тексте. Например, символ Е встречается чащ всего – в среднем 123 раза на каждые 1000 символов или в 12.3% случаев далее следуют символы Т – 9.6%, А – 8.1%, О – 7.9%, N – 1.2%, I – 7.2%, S – 6.6%, R – 6.0%, Н – 5.1%, L – 4.0% и т.д. Приведенные цифры могут, конеч но, несколько варьироваться в зависимости от источника информацию. Поэтому показатель устойчивости к дешифрованию SKB данном случа не превышает 20…30.
Табл. 6.1. Пример замены символов при подстановке.
Исходный алфавит | А | В | С | D | Е | F | G ] | -I | i | J | К | L | X | Y | Z | |
Альтернативный алфавит | S | О | и | Н | К | Т | L: | X | N | W | м | Y | А | Р | J |
При многоалфавитной подстановке можно добиться того, что в зашифрованном тексте все символы будут встречаться примерно с одинаковой частотой, что существенно затруднит дешифрование без знания альте) нативных алфавитов и порядка, в котором они использовались при шифровании.