Реферат: Изучение криптографических методов подстановки (замены)
Уравнение зашифрования можно записать в виде
ci = γi mi , i =1,…,M ,
где c i - i -ый блок шифртекста; γi - i -ый блок гаммы шифра; m i - i -ый блок открытого текста; М - количество блоков открытого текста.
Процесс дешифрования сводится к повторной генерации гаммы шифра и наложению этой гаммы на зашифрованные данные. Уравнение расшифрования имеет вид
mi = γi ci , i =1,…,M .
Полученный зашифрованный текст является достаточно трудным для раскрытия в том случае, если гамма шифра не содержит повторяющихся битовых последовательностей. Криптостойкость определяется размером ключа и методом генерации гаммы.
Чтобы получить линейные последовательности элементов гаммы, длина которых превышает размер шифруемых данных, используются датчики псевдослучайных чисел (ПСЧ). Одним из хороших конгруэнтных генераторов является линейный конгруэнтный датчик ПСЧ. Он вырабатывает последовательности псевдослучайных чисел γi , описываемые соотношением
γi +1 = (а γi + b )modm ,
где а и b – константы; γ0 - исходная величина, выбранная в качестве порождающего числа. Очевидно, что эти три величины и образуют ключ.
Такой датчик генерирует псевдослучайные числа с определенным периодом повторения, зависящим от выбранных значений а и b . Необходимо выбирать числа a и b такие, чтобы период был максимальным. Как показано Д. Кнутом, это возможно тогда и только тогда, когда b - нечетное и взаимно простое с m , и величина а mod 4 = 1. По другим рекомендациям b - взаимно простое с m , и а нечетное.
Процедуру наложения гаммы на исходный текст можно осуществить двумя способами. При первом способе символы исходного текста и гаммы заменяются цифровыми эквивалентами, которые затем складываются по модулю k , где k - число символов в алфавите, т.е.
Ri = ( Si + G ) mod (k –1),
где Ri , Si , G — символы соответственно зашифрованного, исходного текста и гаммы.
При втором методе символы исходного текста и гаммы представляются в виде двоичного кода, затем соответствующие разряды складываются по модулю 2. Вместо сложения по модулю 2 при гаммировании можно использовать и другие логические операции, например преобразование по правилу логической эквивалентности и неэквивалентности .
Такая замена равносильна введению еще одного ключа, который является выбором правила формирования символов зашифрованного сообщения из символов исходного текста и гаммы (таблица 8).
Таблица 8 - Пример шифрования гаммированием
Шифруемый текст | Б | У | Д | Ь … |
010010 | 100000 | 110010 | 100000 | |
Знаки гаммы | 7 | 1 | 8 | 2 … |
000111 | 000001 | 001000 | 000010 | |
Шифрованный текст | 010101 | 1000001 | 111010 | 100010 |
Стойкость шифрования методом гаммирования определяется главным образом свойством гаммы - длительностью периода и равномерностью статистических характеристик. Последнее свойство обеспечивает отсутствие закономерностей в появлении различных символов в пределах периода.
Обычно разделяют две разновидности гаммирования - с конечной и бесконечной гаммами. При хороших статистических свойствах гаммы стойкость шифрования определяется только длинной периода гаммы. При этом, если длина периода гаммы превышает длину шифруемого текста, то такой шифр теоретически является абсолютно стойким, т.е. его нельзя вскрыть при помощи статистической обработки зашифрованного текста. Это, однако, не означает, что дешифрование такого текста вообще невозможно: при наличии некоторой дополнительной информации исходный текст может быть частично или полностью восстановлен даже при использовании бесконечной гаммы.
В качестве гаммы может быть использована любая последовательность случайных символов, например, последовательность цифр числа p и т.п. При шифровании с помощью, например, аппаратного шифратора последовательность гаммы может формироваться с помощью датчика псевдослучайных чисел (ПСЧ). В настоящее время разработано несколько алгоритмов работы таких датчиков, которые обеспечивают удовлетворительные характеристики гаммы.
Метод гаммирования становится бессильным, если злоумышленнику становится известен фрагмент исходного текста и соответствующая ему шифрограмма. Простым вычитанием по модулю получается отрезок псевдослучайной последовательности (ПСП) и по нему восстанавливается вся последовательность. Злоумышленники может сделать это на основе догадок о содержании исходного текста. Так, если большинство посылаемых сообщений начинается со слов “СОВ.СЕКРЕТНО”, то криптоанализ всего текста значительно облегчается. Это следует учитывать при создании реальных систем информационной безопасности.
Шифр Вернама
Этот метод является частным случаем шифрования гаммированием для двоичного алфавита (при значении модуля m =2).
Конкретная версия этого шифра, предложенная в 1926 году сотрудником фирмы AT&T Вернамом, использует двоичное представление символов исходного текста. Каждая буква исходного текста в алфавите, расширенном некоторыми дополнительными знаками, сначала переводилась с использованием телеграфного кода Бодо в пятибитовый символ. То есть алфавит криптосистемы представляет собой множество Z32 всех пятибитовых последовательностей.
Ключ k = (k 0 ,k 1 ,...,k n -1 ), где "ki ÎZ32 записывался на бумажной ленте. При шифровании ключ добавлялся к исходному тексту суммированием по модулю 2.
В общем случае система шифрования Вернама осуществляет побитовое сложение п -битового открытого текста и п -битового ключа:
yi = xi ki , i =1,…, n
Здесь х1 х2 ... xп - открытый текст, k1 k2 ... kп - ключ, y1 y2 ... yп - шифрованный текст.
Расшифрование состоит в сложении по модулю 2 символов у шифртекста с той же последовательностью ключей k :
y k = x .