Классификация криптографических методов
Все многообразие существующих криптографических методов можно свести к следующим классам преобразований:
Перестановки
Рис.1.1.Классы преобразований симметричных криптосистем.
Многоалфавитная подстановка - наиболее простой вид преобразований, заключающийся в замене символов исходного текста на другие (того же алфавита) по более или менее сложному правилу. Для обеспечения высокой криптостойкости требуется использование больших ключей.
Перестановки - несложный метод криптографического преобразования. Используется как правило в сочетании с другими методами.
Гаммирование - этот метод заключается в наложении на исходный текст некоторой псевдослучайной последовательности, генерируемой на основе ключа.
Блочные шифры собой последовательность (с возможным повторением и чередованием) основных методов преобразования, применяемую к блоку (части) шифруемого текста. Блочные шифры на практике встречаются чаще, чем “чистые” преобразования того или иного класса в силу их более высокой криптостойкости. Российский и американский стандарты шифрования основаны именно на этом классе шифров.
Перестановкой s набора целых чисел (0,1,...,N-1) называется его переупорядочение. Для того чтобы показать, что целое i перемещено из позиции i в позицию s(i), где 0 £ (i) < n, будем использовать запись
s=(s(0), s(1),..., s(N-1)).
Число перестановок из (0,1,...,N-1) равно n!=1*2*...*(N-1)*N. Введем обозначение s для взаимно-однозначного отображения (гомоморфизма) набора S={s0,s1, ...,sN-1}, состоящего из n элементов, на себя.
s: S ® S
s: si ® ss(i), 0 £ i < n
Будем говорить, что в этом смысле s является перестановкой элементов S. И, наоборот, автоморфизм S соответствует перестановке целых чисел (0,1,2,.., n-1).
Криптографическим преобразованием T для алфавита Zm называется последовательность автоморфизмов: T={T(n):1£n<¥}
T(n): Zm,n®Zm,n, 1£n<¥
Каждое T(n) является, таким образом, перестановкой n-грамм из Zm,n.
Поскольку T(i) и T(j) могут быть определены независимо при i¹j, число криптографических преобразований исходного текста размерности n равно (mn)![1]. Оно возрастает непропорционально при увеличении m и n: так, при m=33 и n=2 число различных криптографических преобразований равно 1089!. Отсюда следует, что потенциально существует большое число отображений исходного текста в шифрованный.
Практическая реализация криптографических систем требует, чтобы преобразования {Tk: kÎK} были определены алгоритмами, зависящими от относительно небольшого числа параметров (ключей).