А. Криптография

We use cookies. Read the Privacy and Cookie Policy

А. Криптография

Искусство криптографии имеет дело с «затуманиванием» какой-то информации. Задачи криптографии просты: сделать понятное (т.е. «открытое») сообщение всецело непонятным (т.е. «закрытым») для непосвященного. Подобный трюк осуществляется при помощи кодирования и шифрования, а то, что получается в итоге – зовется криптограммой.

Любое шифрование производится с использованием какого-либо алгоритма (т.е. последовательности действий) и некоторых данных (обычно, разнодлительного ряда определенных символов, к примеру, букв и чисел), известных под названием ключа и специфичных для конкретного сообщения. Расшифровать сокрытое послание играючи может лишь тот, кто знает алгоритм и ключ для данной криптограммы.

Противодействующая искусству криптографии наука носит название криптоанализа. Она пытается помочь раскрыть шифр или код без предварительного знания конкретного ключа и алгоритма. Такой процесс известен как дешифрование.

(1). Кодирование

Кодированием называется замена слова, группы слов, а также целых фраз каким-либо условным словом или знаком, группой символов. Открытые слова здесь называются кодовеличинами, а их закрытые эквиваленты – кодообозначениями.

Набор кодовых символов обычно составляет кодовый алфавит (словарь), причем в таблицах кодирования в алфавитном порядке стоят кодовеличины, а в таблицах раскодирования – кодобозначения.

Для избежания повторов в тексте и усреднения частот встречаемости одному кодовому обозначению нередко соответствуют несколько кодовеличин, а одной кодовеличине (если она слишком часто применяется…) несколько (2-5) кодообозначений.

Если при кодировании желательного слова в таблице не оказывается, то оное кодируется побуквенно, причем каждая буква рассматривается как некая самостоятельная кодовеличина.

Для затруднения декодирования обычно используют так называемые «пустышки», т.е. кодообозначения, которые разбрасываются по тексту криптограммы, но не имеют никаковского значения. Другой мерой предосторожности является последуюшее зашифровывание (обычно шифрами перестановки) уже закодированного сообщения.

Важнейшие кодовые соответствия полезно хранить в памяти, вкрапляя их при необходимости в открытый текст, а также иной раз использовать простейший акрокод – чтение первых букв слов, строк или каких-то там частей (скажем, глаголов…) предложений (к примеру, фраза «надобно еще тренироваться» читается как «нет»). В отличие от истинного кода, защита в акрокоде минимальна.

Для маскировки цифр и дат нередко применяется так называемый примитивный код, в котором буквы ключевого слова четко привязываются к конкретным цифрам. К примеру, если слово-ключ

«КНИГОИЗДАТЕЛЬСТВО»,

12345 67890,…

то дата 03.06.97. запишется как «ЕИЬЕЗСТДВ».

При декодировании кодовых посланий используется логика догадок, основанная на анализе того, чем занимаются пославшие, и что они могут сказать о своем сообщении. При этом иной раз используют ловушки с подкидыванием какой-то информации, которую та сторона конечно же захочет передать. Рассматривая кодограмму, стараются понять структуру ее текста, определив кодообозначения для знаков препинания; учитываются также повторы и общепринятые выражения.

Короткое кодированное сообщение без обладания кодовой таблицей вскрыть очень трудно, а порой и невозможно.