Сохранность тайны некоторых сведений всегда являет серьезную проблему, решить которую пытаются самыми различными путями, и в частности - задействуя стеганографию и криптографию. Знать хоть бы минимум подобных методик позволит Вам не только применять их для себя, но и с успехом распознать попытки других персон скрыть что-либо важное от окружающих.
А. Криптография
Искусство криптографии имеет дело с затуманиванием какой-то информации. Задачи криптографии просты: сделать понятное (т.е. открытое ) сообщение всецело непонятным (т.е. закрытым ) для непосвященного. Подобный трюк осуществляется при помощи кодирования и шифрования, а то, что получается в итоге - зовется криптограммой. Любое шифрование производится с использованием какого-либо (обычно, разнодлительного ряда определенных символов, к примеру, букв и чисел), известных под названием ключа и специфичных для конкретного сообщения. Расшифровать сокрытое послание играючи может лишь тот, кто знает алгоритм и ключ для данной криптограммы. Противодействующая искусству криптографии наука носит название криптоанализа. Она пытается помочь раскрыть шифр или код без предварительного знания конкретного ключа и алгоритма. Такой процесс известен как дешифрование.
(1). Кодирование
Кодированием называется замена слова, группы слов, а также целых фраз каким-либо условным словом или знаком, группой символов. Открытые слова здесь называются кодовеличинами, а их закрытые эквиваленты - кодообозначениями.
Набор кодовых символов обычно составляет кодовый алфавит (словарь), причем в таблицах кодирования в алфавитном порядке стоят кодовеличины, а в таблицах раскодирования - кодобозначения.
Для избежания повторов в тексте и усреднения частот встречаемости одному кодовому обозначению нередко соответствуют несколько кодовеличин, а одной кодовеличине (если она слишком часто применяется...) несколько (2-5) кодообозначений. Если при кодировании желательного слова в таблице не оказывается, то оное кодируется побуквенно, причем каждая буква рассматривается как некая самостоятельная кодовеличина.Для затруднения декодирования обычно используют так называемые пустышки , т.е. кодообозначения, которые разбрасываются по тексту криптограммы, но не имеют никаковского значения. Другой мерой предосторожности является последуюшее зашифровывание (обычно шифрами перестановки) уже закодированного сообщения.Важнейшие кодовые соответствия полезно хранить в памяти, вкрапляя их при необходимости в открытый текст, а также иной раз использовать простейший акрокод - чтение первых букв слов, строк или каких-то там частей (скажем, глаголов...) предложений (к примеру, фраза надобно еще тренироваться читается как нет ). В отличие от истинного кода, защита в акрокоде минимальна. Для маскировки цифр и дат нередко применяется так называемый примитивный код, в котором буквы ключевого слова четко привязываются к конкретным цифрам. К примеру, если слово-ключ КНИГОИЗДАТЕЛЬСТВО , 12345 67890,...
При декодировании кодовых посланий используется логика догадок, основанная на анализе того, чем занимаются пославшие, и что они могут сказать о своем сообщении. При этом иной раз используют ловушки с подкидыванием какой-то информации, которую та сторона конечно же захочет передать. Рассматривая кодограмму, стараются понять структуру ее текста, определив кодообозначения для знаков препинания; учитываются также повторы и общепринятые выражения. Короткое кодированное сообщение без обладания кодовой таблицей вскрыть очень трудно, а порой и невозможно.