
Билет №18
Теоретические основы криптографии
Общие сведения по классической криптографии
Прежде чем перейти к рассмотрению практического применения криптографических преобразований, необходимо уделить внимание вопросам, которые в рамках криптографии давно признаются классическими, а именно основам построения систем засекреченной связи. Под системой засекреченной связи будем понимать систему передачи информации, в которой смысл передаваемой информации скрывается с помощью криптографических преобразований. При этом сам факт передачи информации не утаивается. В основе каждой системы засекреченной связи – использование алгоритмов шифрования как основного средства сохранения конфиденциальности. В качестве информации, подлежащей защите, будут рассматриваться тексты, построенные на некотором алфавите. Под этими терминами понимается следующее. ^ Алфавит – конечное множество используемых для кодирования информации знаков. Текст – упорядоченный набор, составленный из символов алфавита. В качестве алфавитов можно привести следующие:
-
Алфавит Z33 – 32 буквы русского алфавита и пробел;
-
Алфавит Z256 – символы, входящие в стандартные коды ASCII и КОИ-8
-
Бинарный алфавит Z2 = {0,1}
Зашифрование
– процесс криптографического
преобразования множества открытых текстов
в множество закрытых (шифрованных)
текстов.
Расшифрование –
процесс криптографического преобразования
закрытых сообщений в открытые.
Дешифрование –
процесс нахождения открытого сообщения,
соответствующего заданному закрытому
при неизвестном криптографическом
преобразовании.
Первые два процесса
управляются с помощью некоторой секретной
информации сравнительно малого размера,
называемой секретным
ключом.
Ключ используется для управления
процессом криптографического
преобразования и является легко сменяемым
элементом криптосистемы. Ключ может
быть заменен пользователями в произвольный
момент времени, тогда как сам алгоритм
шифрования является долговременным
элементом криптосистемы и связан с
длительным этапом разработки и
тестирования.
Абстрактно систему
засекреченной связи можно описать как
множество отображений множества открытых
сообщений в множество закрытых. Выбор
конкретного типа преобразования
определяется ключом зашифрования (или
расшифрования). Отображения должны
обладать свойством взаимооднозначности,
т.е. при расшифровании должен получаться
единственный результат, совпадающий с
первоначальным открытым сообщением
(см. рис. 1.1) Ключи зашифрования и
расшифрования могут в общем случае быть
различными, хотя для простоты рассуждений
предположим, что они идентичны. Множество,
из которого выбираются ключи,
называется ключевым
пространством. Совокупность
процессов зашифрования, множества
открытых сообщений, множества возможных
закрытых сообщений и ключевого
пространства называется алгоритмом
шифрования.
Совокупность процессов расшифрования,
множества возможных закрытых сообщений,
множества открытых сообщений и ключевого
пространства называетсяалгоритмом
расшифрования.
Рисунок
1. Общая структура системы засекреченной
связи
Работу
системы засекреченной связи можно
описать следующим образом:
-
Из ключевого пространства выбирается ключ зашифрования K и отправляется по надежному каналу передачи.
-
К открытому сообщению C, предназначенному для передачи, применяют конкретное преобразование Fk, определяемое ключом K, для получения зашифрованного сообщения M: M = Fk(C).
-
Полученное зашифрованное сообщение M пересылают по каналу передачи данных.
-
На принимающей стороне к полученному сообщению M применяют конкретное преобразование Dk, определяемое из всех возможных преобразований ключом K, для получения открытого сообщения C: C = Dk(M).
Для современных криптографических систем защиты информации сформулированы следующие общепринятые требования:
-
зашифрованное сообщение должно поддаваться чтению только при наличии ключа;
-
число операций, необходимых для определения использованного ключа шифрования по фрагменту шифрованного сообщения и соответствующего ему открытого текста, должно быть не меньше общего числа возможных ключей;
-
число операций, необходимых для pасшифpовывания информации путем пеpебоpа всевозможных ключей должно иметь строгую нижнюю оценку и выходить за пределы возможностей современных компьютеров (с учетом возможности использования сетевых вычислений);
-
знание алгоритма шифрования не должно влиять на надежность защиты;
-
незначительное изменение ключа должно приводить к существенному изменению вида зашифрованного сообщения даже при использовании одного и того же ключа;
-
стpуктуpные элементы алгоритма шифрования должны быть неизменными;
-
дополнительные биты, вводимые в сообщение в процессе шифрования, должны быть полностью и надежно скрыты в шифрованном тексте;
-
длина шифрованного текста должна быть равной длине исходного текста;
-
не должно быть простых и легко устанавливаемых зависимостей между ключами, последовательно используемыми в процессе шифрования;
-
любой ключ из множества возможных должен обеспечивать надежную защиту информации;
-
алгоритм должен допускать как пpогpаммную, так и аппаратную реализацию, при этом изменение длины ключа не должно вести к качественному ухудшению алгоритма шифрования.
В криптографии рассматривается некоторый злоумышленник (оппонент, криптоаналитик противника, нарушитель, нелегальный пользователь), который осведомлен об используемых криптографических методах, алгоритмах, и пытается вскрыть их. Вскрытие криптосистемы может заключаться, например, в несанкционированном чтении информации, формировании чужой подписи, изменении результатов голосования, нарушении тайны голосования, модифицировании данных, которое не будет замечено законным пользователем. Разнообразные действия оппонента в общем случае называются криптографической атакой (нападением). Специфика криптографии состоит в том, что она направлена на разработку методов, обеспечивающих стойкость к любым действиям злоумышленника. Центральным является вопрос, насколько надежно решается та или иная криптографическая проблема. Ответ на этот вопрос непосредственно связан с оценкой трудоемкости каждой конкретной атаки на криптосистему. Решение такой задачи, как правило, чрезвычайно сложно и составляет самостоятельный предмет исследований, называемый криптоанализом. Криптография и криптоанализ образуют единую область науки –криптологию, которая в настоящее время является новым разделом математики, имеющим важные приложения в современных информационных технологиях.
Теория чисел, или высшая арифметика — раздел математики, изучающий целые числа и сходные объекты. В теории чисел в широком смысле рассматриваются какалгебраические, так и трансцендентные числа, а также функции различного происхождения, которые связаны с арифметикой целых чисел и их обобщений.
В исследованиях по теории чисел, наряду с элементарными и алгебраическими методами, применяются геометрические и аналитические методы, а также методы теории вероятностей[1].