О тайне переписки в электронной почте
PC Magazine/RE logo (С) СК Пресс 12/95

Маленькие трагедии больших начальников

Рубен Герр


Все государства признают за своими гражданами право на тайну переписки. А за собой - право эту тайну нарушать. Но похоже, что времена переменились.

Можно по-разному оценивать происшедшие в жизни России перемены. Но давайте вспомним, что еще совсем недавно за нас, взрослых и отвечающих за свои поступки людей, кто-то (считающий себя взрослее всех) решал, что нам можно читать, а что не стоит, куда можно ездить, а куда пока погодить, когда ложиться спать, когда и сколько есть и пить... Теперь отцы народов ушли в прошлое и если кто и сожалеет об этой "утрате", то только по отношению к другим: мол, народ еще, конечно, не дозрел до свободы, но мне-то можно бы и разрешить... Те же, кому освобождение от "родительской" опеки по душе (а таких, я думаю, большинство), редко задумываются о том, что благодарить за реальную "взрослость" не в последнюю очередь следует.. инженеров и ученых. Звучит спорно? Попытаемся доказать. О том, что были времена, когда радиоприемники еще не изобрели, уже как-то забылось. А ведь именно с помощью этого технологического приспособления советские граждане могли знакомиться - и знакомились - с альтернативной точкой зрения. Неважно, верной или неверной - другой. Потом, вероятно, из-за недальновидности власть предержащих, в продажу поступили бытовые магнитофоны (могли бы и запретить!). И что бы вы думали? Люди стали записывать на пленки - т. е. тиражировать - не гимны и песни во славу Партии и ее Вождей, даже не частушки, воспевающие счастливую жизнь колхозов, а песни Юза Алешковского и Булата Окуджавы. И стихи были на пленках, и лекции. Государству пришлось под давлением технологии выпустить из своих рук монополию на распространение информации. Еще чуть позднее появились вычислительные машины. И вряд ли был хотя бы один вычислительный центр в стране, где не изготавливались бы "распечатки" запрещенных или не одобряемых правителями книг.

Теперь наступает новый этап. Нам всегда гарантировали тайну переписки и телефонных переговоров. Но что служило гарантией? Честное слово в устах руководителей страны. Кому как, а мне такой гарантии мало... Но зато свои секреты государства хранили - лучше некуда. Была создана специальная наукa - криптология, которая специально занималась разработкой новых, недоступных для расшифровки кодов (для себя) и расшифровкой чужих шифров (созданных противником). Однако для рядовых граждан сама эта наука была тайной. Как же, если каждый получит возможность шифровать свою переписку так, что ее нельзя будет прочитать постороннему, что же будет? Ведь этот "каждый" может оказаться и преступником... То, что с точки зрени многих государственных чиновников все мы потенциальные преступники, - тривиальный факт. Но прикрывались они всегда и везде государственными интересами. "Компетентные органы" должны иметь возможность следить - за преступниками, разумеется, законопослушным гражданам бояться нечего. Ну разве что кто-то разок-другой прочтет ваше письмо к любимой, ну потом поделится наиболее пикантными с его точки зрени местами с приятелями, что тут такого? Вы же об этом все равно не узнаете... Электронные средства обмена информацией поначалу исключением не стали. Перехватывать и прочитывать переписку незаметно для ее участников стало даже проще.

Но вот около десятилетия тому назад произошло трагическое для всех радетелей безопасности событие. Были изобретены алгоритмы кодирования, позволяющие шифровать информацию так, что ее "вскрытие" за сколько-нибудь разумное время стало невозможно. Какой тут поднялся переполох! В США приняли закон, в соответствии с которым экспорт технологий кодировани за пределы страны - а значит, и их обнародование, в результате которого они станут доступны всем желающим, - запрещен. Они там пытаются даже - с самыми благими намерениями - сделать стандартной предложенную государством систему кодирования, которая, при необходимости, допускает расшифровку "компетентными органами". И уже идут судебные процессы над несколькими учеными, которые то ли умышленно, то ли случайно, то ли по незнанию обнародовали свои алгоритмы. В нашей стране поначалу упомянутые алгоритмы держали в секрете. Потом приняли Указ президента, который дозволяет распространять системы кодирования на коммерческой основе только тем организациям, которые получат у тех же "компетентных органов" соответствующие сертификаты. Но джинн вышел из бутылки и загнать его обратно не во власти чиновников.

Это все было предисловие, пусть несколько затянувшееся. Я глубоко убежден, что обязательно скрывать или, наоборот, передавать другим информацию граждане должны только в ограниченном числе случаев, специально оговоренных законами. Во всех остальных ситуациях каждый сам волен для себя решать, что должно быть его личной тайной, а что нет. Если такой подход затруднит деятельность правоохранительных органов - ничего не попишешь. Придется им отказаться от подслушивания, перлюстрации и перехвата электронных сообщений. В конце концов, в их распоряжении остаютс другие проверенные временем приемы изобличения злодеев. Мы за это платим налоги! Поэтому я считаю своей обязанностью сообщить читателям идею новых алгоритмов. Это малограмотные чиновники считают, что шифровка информации - дело ужасно сложное. На мой взгляд, реализовать существующий или разработать новый алгоритм, имея в своем распоряжении базовую идею, в состоянии многие квалифицированные программисты. Сознаюсь, кроме того, что идея восхитила меня своей простотой и изяществом.

Тем, кто почерпнул знания о шифровке преимущественно из рассказа Эдгара Алана По "Золотой жук", придетс пересмотреть свои взгляды на мир. Частотный анализ (какая буква чаще всего встречается в тексте на данном языке) не помогает Прежде всего сообщение можно "свернуть" при помощи алгоритма Хаффмана, Шеннона - Фано или еще какого-нибудь, где длина двоичной последовательности, представляющей символ, обратно пропорциональна вероятности его использования. Но это еще не все. Ведь частотный анализ может сработать и на уровне слов или иных крупных фрагментов текста. Поэтому в качестве "единицы кодирования" выступает все сообщение в целом или его значительная часть, скажем 512 байт. Сообщение рассматривается как единое число или строка бит, а для кодирования можно воспользоваться, например, маскированием числом такой же длины при помощи операции "Исключающее ИЛИ" (XOR), умножением по модулю или еще как-нибудь. Но и это не спасает от частотного анализа - если удастся накопить побольше сообщений. Поэтому каждое новое сообщение кодируется при помощи нового ключа. Да, правда, ключ требуется сообщить адресату, а значит, перехватить и пр. Не тут то было! Мы воспользуемся издревле известным приемом "разорванной купюры" или, выражаясь научно, принципом открытого ключа. Весь ключ будет у нас, например, произведением двух больших простых чисел. Одно из них знает и держит в тайне адресат, второе - мы передадим ему вместе с сообщением. И с каждым новым сообщением будем передавать новую "половинку" ключа. Впрочем, не обязательно перемножать. Можно, скажем, "перемешать" два числа через один бит, через два, через оговоренный интервал. Да мало ли способов сделать из двух двоичных чисел одно суммарной длины! Ясно, что на современных персональных компьютерах реализаци алгоритма описанного типа займет вполне разумное время. Ясно и другое, расшифровка таких сообщений ab initio, т. е. без дополнительных данных, практически невозможна.

Торговать программными реализациями данного алгоритма пока не стоит. Хотя, как оказалось, упомянутый указ нашего Президента вступил в противоречие с другими законами, попытаться применить его могут, и придется оправдываться. Используйте программы шифровки/расшифровки для личных нужд и дл частной переписки своей фирмы. Я в отличие от чиновников считаю, что по умолчанию мои читатели - люди порядочные и в преступных целях полученной из этой заметки информацией не воспользуются.

А сам я, чтобы не быть заподозренным в "коммерческом распространении технологии кодирования", готов отказаться от гонорара в пользу первого чиновника, который меня в этом обвинит.