В 4 отделе СУ 8 ГУ КГБ СССР работали в основном математики, люди далекие от советских заводов с их советскими проблемами. Но других заводов в то время просто не было, а завод иногда был очень нужен, как в случае с «Электроникой МК-85 С». Появлялась потребность в человеке, обеспечивающем связь с заводом, которого было принято в то время называть заводским толкачом. Заводской толкач – это чисто советское, социалистическое явление. В любой цивилизованной западной стране ученые – разработчики архитектуры шифратора стояли бы перед проблемой выбора завода из множества конкурирующих друг с другом предложений. А в СССР в середине 80-х везде и всюду царила монополия: в производстве, в торговле, в сфере услуг и прочая, прочая, прочая. На этой почве произрастали заводские толкачи, частенько занимавшиеся сомнительными делишками.
Заводской толкач был и в группе Шеремета в 4 отделе СУ 8 ГУ КГБ СССР. Он сумел договориться с начальником 8 ГУ КГБ СССР генерал-лейтенантом Н.Н.Андреевым о снятии грифа секретности с алгоритма шифрования будущего портативного шифратора, а с заводом Ангстрем – о перепрограммировании бытового калькулятора «Электроника МК-85» в портативный шифратор «Электроника МК-85 С» и его серийном выпуске. Криптографом этот толкач не был, 4 факультет ВКШ КГБ не кончал, офицером не был, к работе 4 отдела по основным направлениям его не допускали.
Налаживание серийного выпуска «Электроники МК-85 С» в конце 80-х годов – это, безусловно, заслуга толкача. Всех деталей его деятельности в этом направлении я не знаю, но создание НПМГП «Анкорт» – одна из таких деталей.
Никто не предполагал тогда, когда разрабатывалась криптографическая архитектура шифратора «Электроника МК-85 С» (примерно 88 или 89 год), чем в конечном итоге так прославится этот шифратор. С одной стороны, гриф секретности с его алгоритма был снят, а с другой – широкого опубликования этого алгоритма, как, например, в последующем были опубликованы криптографические ГОСТЫ, не было. С одной стороны, неизвестный алгоритм – это дополнительный рубеж защиты, а с другой – при неизвестном алгоритме у законного пользователя всегда может возникнуть подозрение, что в нем есть какой-то потайной ход, с помощью которого разработчик может получать доступ к обрабатываемой конфиденциальной информации.
Во всем мире сейчас преобладает мнение, что все исходные коды криптографических алгоритмов, используемых в коммерческих целях, должны быть открытыми. Любой желающий может убедиться в отсутствии в них ошибок, закладок и «троянских коней», а также попытаться самостоятельно, не доверяя разработчикам, провести их криптографический анализ. Так завоевывается доверие потребителя к такой специфической и в прошлом засекреченной продукции, как криптографические алгоритмы. Инициаторами такого подхода были американцы. Они в конце 90-х сняли секретность со своих криптографических алгоритмов и их исходные коды стали общедоступными, например, во всемирно известном пакете OpenSSL. Миллионы программистов и простых пользователей, как мошкара в сибирской тайге, набросились на OpenSSL, выловили, помимо всего прочего, практически все ошибки, глюки, баги этого пакета, повысив тем самым доверие к нему.
С алгоритмом шифратора «Электроника МК-85 С» все не так однозначно, такого широкого распространения, как OpenSSL, этот шифратор не получил. И хотя родственником был японский Casio FX-700P, чисто аппаратная надежность шифратора была явно не японская. Большие объемы информации шифровать на нем было невозможно, весь ввод ручной, клавиатура и дисплей, отображающий ввод, – миниатюрные.
Рис. 8. Электроника МК-85 С
Сейчас «Электроника МК-85 С» представляет интерес разве что для различных музеев по истории криптографии. Вряд ли в эпоху умных устройств этот калькулятор пригодится кому-нибудь по своему основному назначению – как шифратор. Но для музеев по истории криптографии остается неясным ответ на один и тот же вопрос: каким образом этот шифратор сыграл такую важную роль в истории современной России, как защита Центрального Банка РФ от фальшивых чеченских авизо? И желательно с максимумом подробностей.
Я постараюсь дать ответ на этот вопрос со многими, но не всеми, известными мне подробностями. Сначала – некоторые детали криптографической архитектуры этого шифратора.
В основе криптографического алгоритма «Электроники МК-85 С» лежал алгоритм типа «Ангстрем -3М» (см. рис 3), в котором оба регистра сдвига были над Z/100, длина левого – 10, длина правого – 50. В левом регистре в качестве точек съема использовались все ячейки регистра. Подстановка ? – фиксирована. Домашнее задание № 1 для взломщиков – определить подстановку ?, имея на руках образец этого шифратора. Мне было бы интересно знать, насколько эта процедура трудоемка.
Ключом шифратора являлись 50 элементов из Z/100 или, проще говоря, 100 десятичных цифр. Ключ вводился в шифратор в виде 110 цифр, последние 10 – проверочные. Домашнее задание № 2 для взломщиков: насколько трудоемка процедура извлечения ключа из шифратора и процедура определения алгоритма вычисления проверочной части ключа.
Шифратор работал циклами по 50 тактов в каждом цикле. В конце каждого цикла заполнение левого регистра – 10 элементов из Z/100, по-простому – 20 цифр, использовались в качестве гаммы наложения на открытый текст.
В шифраторе «Электроника МК-85 С» был реализован шифр гаммирования по модулю 10. Для избежания перекрытий гаммы наложения использовался биологический случайный маркант длиной 10 цифр. Перед зашифрованием пользователь должен был 10 раз нажать кнопку «МРК», по результатам нажатия вырабатывались 10 случайных цифр. Домашнее задание № 3 для взломщиков – определить алгоритм выработки марканта.
Маркант записывался в шифровку в качестве первых 10 цифр. На основе марканта и ключа строились начальные заполнения обеих регистров сдвига. Домашнее задание № 4 для взломщиков: определить алгоритм построения начальных заполнений регистров.
Ну и наконец последнее, но чрезвычайно важное замечание об этом шифраторе. В нем было два режима ввода открытого текста: буквенно-цифровой и чисто цифровой. Буквенно-цифровой был основным. Предполагалось, что солдат, не заморачивая себе голову, вводит сообщение, которое нужно зашифровать. Нажимает «EXE» и сразу же получает на экране шифртекст в виде групп десятичных цифр. Зачем был нужен чисто цифровой режим – можно только гадать. По-видимому, с помощью переговорных таблиц солдат сначала кодирует сообщение, сокращая его длину, а затем перешифровывает его с помощью шифратора. В шифратор в этом случае вводился закодированный цифровой текст.
Отчего криптографы схватились за головы
1978 год. Большой Кисельный переулок, дом 11, 4 факультет ВКШ КГБ СССР. Лекция по СД-7 Е – теории шифрующих автоматов. Лекцию читает Борис Александрович Погорелов.
– И вот тогда криптографы схватились за головы…
Читатель заинтригован? То ли еще будет, когда он узнает, как эта фраза оказалась причастна к спасению России от фальшивых чеченских авизо. Так отчего же криптографы схватились за головы? И когда это было?
Борис Александрович тогда рассказывал нам, слушателям 4 курса, про такое понятие в криптографии, как имитостойкость. Про электронную подпись в те времена еще лекции на 4 факультете не читали, а про имитостойкость – уже учили уму-разуму будущих криптографов. Почему?
Практика – критерий истины. Помню еще чего-то из философии, ведь сдавал по ней кандидатский минимум. Так вот: электронная подпись в 1978 году в СССР до практики еще не доросла, а имитостойкость уже достигла половозрелого возраста. Во Вьетнаме, в конце 60-х.
Во второй половине 60-х годов прошлого века США воевали с Вьетнамом. Вьетнам был тогда разделен на северный и южный, северный Вьетнам был другом СССР, а южный – США, которые воевали с северным. Друг северного Вьетнама – СССР – поставлял туда вооружение, в частности ракеты «земля – воздух» для защиты от американских самолетов. Этими ракетами можно было управлять с земли, посылая им шифрованные команды. А шифровались эти команды с помощью шифров гаммирования.
Что такое шифр гаммирования в то время? Это простое сложение знаков открытого текста с гаммой наложения. Сложение позначное, безо всяких переносов. Пусть, например, мы пытаемся передать ракете команду под кодовым обозначением 123, гамма наложения 297, гаммирование – сложение по модулю 10. Тогда к ракете пойдет зашифрованное сообщение 310. Противник (американцы) уже изучил систему команд, поступающих на ракету и хочет, чтобы ракета вместо истинного сообщения 123 приняла ложное, например 124.
Ракетой управляют по радиоканалу, к которому американцы имеют доступ. Они могут не просто читать все, что там передается, но и изменять в нем какие-то знаки по своему усмотрению с помощью более мощного сигнала. Они взяли и изменили 310 на 311. В этом случае ракета расшифрует его как 124 и полетит не в ту цель.
Рассуждения – очевиднейшие. Но, видимо, в 60-х годах прошлого века об этом никто не задумывался, ни разработчики, ни заказчики. Советские ракеты стали летать не туда, куда их посылали, а «криптографы схватились за головы». Появилось понятие имитостойкости, как стойкости к навязыванию ложной информации, и очевидная криптографическая аксиома: шифр гаммирования не является имитостойким.
Все оказалось предельно простым и понятным для тех, кто учился тогда на 4 факультете ВКШ КГБ СССР им. Ф.Э.Дзержинского. Но если простому, не посвященному в криптографию человеку сказать фразу: «Шифр гаммирования не является имитостойким», то реакция будет примерно такой же, какой она была у криминального авторитета Бори из фильма «День выборов» на предложение «объединить бренды». Портвейн с красителем от тархуна объединить с кандидатом Цаплиным – понятно, а объединить бренды – это уже что-то неизвестное и слишком наукообразное. Так же и здесь. Советские ракеты во Вьетнаме стали летать не туда – понятно, а шифр гаммирования не является имитостойким – это не для всех, не всякий заводской толкач сможет понять. Но я опять забегаю вперед.
От развитого социализма к капитализму
«На смену капитализму неизбежно придет социализм, а затем коммунизм» – так учили всех студентов в 70-х годах на нудных лекциях по марксистско-ленинской философии. Это в теории, а в реальной жизни – анекдот того времени.
– Почему мир капитализма так долго стоит над пропастью и никак не может в нее упасть?
– А он смотрит, что мы там делаем.
В конце 80-х началось падение, но не капитализма в пропасть, а развитого социализма на самое дно этой пропасти. В магазинах все пропало, продукты распределялись по предприятиям через скудные заказы, людей постоянно посылали на овощебазы и в колхозы-совхозы на бесплатный, тяжелый и почти не механизированный труд и прочая, прочая, прочая. Я многое из этого описывал в КиС. Сейчас же мне хотелось бы отметить, как все эти социалистические прелести влияли на основную работу людей, в частности, сотрудников Спецуправления 8 ГУ КГБ СССР.
Основная работа частенько откладывалась в сторонку, а люди думали лишь о том, как и где достать дефицит, как откосить от колхоза или овощебазы, как распределить доставшийся на отдел заказ с дефицитными продуктами. В КиС я описывал сцену распределения пачки чая «со слоном» весом в 250 грамм на 25 человек: притащили откуда-то аптекарские весы и отмеряли каждому по 10 грамм чая.
К прелестям тотального дефицита добавлялась всеобщая уравниловка. Твоя заработная плата практически не зависела от результатов твоего труда, значительная часть сотрудников Спецуправления постоянно сидела в курилке, травила анекдоты, обсуждала все на свете по принципу «бабы на базаре обсуждают проблемы ООН».
Анекдот советского времени. Француз, американец и русский спорят, у кого лучше секретность.
Француз: у нас в соседних комнатах сидят Поль и Жак, Поль не знает, что делает Жак, а Жак не знает, чем занимается Поль.
Американец: у нас в одной комнате сидят Билл и Джон, Билл не знает, что делает Джон, а Джон ничего не знает о работе Билла.
Русский: а у нас Иванов сидит целыми днями у себя за столом и так и не знает, что он делает.
В середине 80-х годов в СССР началась перестройка, побочным результатом которой стала потеря уверенности в завтрашнем дне. Может ли до бесконечности продолжаться такая полусонная жизнь, какая сформировалась во времена правления Брежнева? Что делать дальше, как подготовиться к возможным переменам? Можно ли сохранить свое образование, навыки и опыт при возможных переменах, не опускаясь до уровня барыг и торговцев?
Мне в определенном смысле повезло. Должность начальничка дала мне возможность основательно освоить истинно персональный компьютер, которым я мог распоряжаться по своему усмотрению. Персональные компьютеры, стоявшие в комнатах рядовых сотрудников, персональными только назывались. Ими пользовалась вся комната, т.е. 5 – 7 человек, и в основном для игр. Я, не скрою этого, тоже иногда играл, но безо всяких очередей и конкурентов и только в качестве разрядки после очередного продвижения в деле изучения программирования на языках ASSEMBLY, C++ или особенностей операционной системы MS DOS. Операционная система Windows тогда была еще в зачаточном состоянии, ею практически никто не пользовался. Общение с компьютером мне нравилось и я стал думать о том, чтобы связать свои дальнейшие планы и надежды с IT – информационными технологиями.
«Связать свои дальнейшие планы и надежды с IT» – это что-то абстрактное, непонятное. А НПМГП «Анкорт» – вот оно, рядом и директором там – мой формально подчиненный, заводской толкач. Истина – конкретна. Надо попробовать.
Сначала я сделал для «Анкорт» программную реализацию «Электроники МК – 85 С», а затем и систему выработки ключей для этого шифратора. Основное направление к тому времени было уже более-менее обеспечено программной продукцией, теперь можно попробовать запрограммировать наиболее интересные криптографические задачи для неопределенного круга потребителей. Так постепенно, году примерно в 90 – 91, стал появляться программный комплекс «Криптоцентр».
Никакого технического задания, никакого включения в планы работы при создании «Криптоцентра» не было. Это скорее был способ уйти с головой в работу и тем самым отвлечься от всего реализма, связанного с переходом от развитого социализма к капитализму.
Развитие капитализма в России
Не я первый использую такое название. Цитата из Википедии.
«Развитие капитализма в России. Процесс образования внутреннего рынка для крупной промышленности» – монография В. И. Ленина, посвящённая анализу экономического развития России. В книге с помощью марксистской теории проведено исследование экономики и социальной структуры России последней трети XIX века.»
Из марксистской теории известно, что началом развития капитализма является накопление первоначального капитала. В Википедии читаем.
«Накопление капитала (англ. Capital accumulation) – это динамика, которая мотивирует стремление к прибыли, включая инвестирование денег или любого финансового актива для увеличения первоначальной денежной стоимости указанного актива в качестве финансового дохода, будь то в форме прибыли, ренты или процентов. Накопление капитала направлено на создание новых основных и оборотных капиталов, расширение и модернизацию существующих, рост материальной базы социально-культурной деятельности, а также создание необходимого ресурса для резерва и страхования. Процесс накопления капитала составляет основу капитализма и является одной из определяющих характеристик капиталистической экономической системы.»
Более пожилые читатели наверное припомнили социалистическую Библию – «Капитал» Карла Маркса. Может быть, кто-то его и читал. Давайте вместе посмотрим, как происходило накопление капитала в России, вставшей в августе 1991 года на путь рынка и капитализма.
1992 год. Недавно провалился путч ГКЧП, к власти пришел Ельцин Б.Н., и с начала 1992 года объявил в России капитализм. Подозреваю, что многие читатели всего, что творилось тогда в России, уже не помнят или были в те времена несмышлеными малолетками. Но для понимания того, как Центральный Банк России дошел до «Электроники МК-85 С», нужно напомнить 1992 год.
При социализме доллар считался вражеским. Широким массам трудящихся было на него скорее всего наплевать. Многие этих самых долларов никогда в жизни не видели и ими не пользовались. Познания о долларе складывались с помощью вот таких басен.