Основные криптографические преобразования в симметричных криптосистемах
Все многообразие существующих криптографических методов, применяющихся в симметричных криптосистемах, можно свести к следующим классам преобразований:
· шифры перестановок;
· шифры замены;
· шифры гаммирования;
· композиционные блочные шифры.
Шифрование перестановкой заключается в том, что символы шифруемого текста переставляются по определенному правилу в пределах некоторого блока этого текста. При достаточной длине блока, в пределах которого осуществляется перестановка, и сложном неповторяющемся порядке перестановки можно достигнуть приемлемой для простых практических приложений стойкости шифра.
Шифрование заменой (подстановкой) заключается в том, что символы шифруемого текста заменяются символами того же или другого алфавита в соответствии с заранее обусловленной схемой замены.
Шифрование гаммированием заключается в том, что символы шифруемого текста складываются с символами некоторой случайной последовательности, именуемой гаммой шифра. Стойкость шифрования определяется в основном длиной (периодом) неповторяющейся части гаммы шифра. Поскольку с помощью ЭВМ можно генерировать практически бесконечную гамму шифра, то данный способ является одним из основных для шифрования информации в автоматизированных системах.
В случае, когда открытый текст рассматривается как последовательность бит, а в качестве операции сложения используется сумма по модулю два (XOR), шифрование гаммированием называют потоковым шифром.
Композиционные блочные шифрыпредставляют собой последовательность (с возможным повторением и чередованием) основных методов преобразования (перестановка, замена, гаммирование), применяемую к блоку (части) шифруемого текста. Блочные шифры на практике встречаются чаще, чем "чистые" преобразования того или иного класса в силу их более высокой криптостойкости.
Шифры перестановки
Перестановкой набора целых чисел (1,...,n) называется его переупорядочение. Рассмотрим перестановку, предназначенную для шифрования сообщения длиной n символов. Его можно представить спомощью таблицы
,
где i1 – номер места шифртекста, на которое попадает первая буква открытого текста при выбранном преобразовании, i2 – номер места для второй буквы и т. д. В верхней строке таблицы выписаны по порядку числа от 1 до n, а в нижней те же числа, но в произвольном порядке. Такая таблица называется перестановкой степени n.
Зная перестановку, задающую преобразование, можно осуществить как шифрование, так и расшифрование текста. В этом случае, сама таблица перестановки служит ключом шифрования.
Число различных преобразований шифра перестановки, предназначенного для шифрования сообщений длины n, меньше либо равно n! (n факториал).Заметим, что в это число входит и вариант преобразования, оставляющий все символы на своих местах.
С увеличением числа n значение n!растет очень быстро. Для использования на практике такой шифр не удобен, так как при больших значениях n приходится работать с длинными таблицами. Поэтому широкое распространение получили шифры, использующие не саму таблицу перестановки, а некоторое правило, порождающее эту таблицу. Примерами таких шифров, дошедших до нас с древнейших времен, являются:
· шифр перестановки "скитала";
· шифрующие таблицы;
· шифрование с помощью магических квадратов.
Из–за своей низкой стойкости, в современных криптографических системах шифры перестановки используются только как составная часть композиционных шифров.