Начинается история возникновения Colossus с 1940 года. Британская спецслужба занимались поиском шпионов на территории страны и во время прослушивания радиоэфира сотрудникам удалось перехватить необычную шифрованную немецкую радиопередачу. Вместо привычного кода Морзе, сообщения были зашифрованы с помощью телеграфного кода Бодо. Материал отправили на анализ в Правительственную школу кодов и шифров (Government Code and Cypher School) в Блечли-Парк. Новый шифр стали называть «Танни» (англ. tunny — тунец), а сама криптосистема получила условное наименование FISH.
Для детального изучения выявленного шифра в Блечли-Парк создали специальное подразделение, которое занималось сугубо анализом «Танни». Процесс расшифровки продвигался крайне медленно до 1941 года, когда один из немецких шифровальщиков допустил серьезную ошибку. Он среагировал на просьбу повторно передать сообщение длинною около 4500 знаков на том же ключе, но во второй раз немного сократил исходный текст. Англичане перехватили обе радиограммы, что позволило им не только дешифровать телеграмму, но и получить длинную шифрующую последовательность. В результате проведенной работы специалисты выяснили, что немецкое устройство построено на принципе шифрующих колес, которых насчитывалось 12.
Уильям Томас Татт (1917 — 2002 гг.)
На основе добытой информации можно было вручную расшифровывать некоторые сообщения «Танни». Молодой математик Уильям Томас Тат (William Thomas Tutte) занялся взломом кода машины. С использованием метода криптоанализа полиалфавитных шифров Касиски (поиск групп символов, что повторяются в зашифрованном тексте) он выяснил, что длина ключевого слова равна сорока одному символу. Тат назвал компоненту «chi_1». Учитывая сложность устройства ключа, существовала и другая компонента «psi_1». В результате машина состояла из дисков «psi» и «chi», генерирующих каждые пять бит символа. Компоненты ключа объединялись функцией XOR и выходило, что ключ K можно было представить для каждого символа таким образом: «K = chi oplus psi».
Машина Lorenz SZ42
Проведенная Татом работа дала возможность исследовательской группы Блетчли-парка за несколько месяцев восстановить логическую структуру шифровальной машины. Переписку подобного рода можно было вскрывать и читать. Но этот процесс занимал слишком много времени, требовал трудоемких вычислений и казался малоэффективным. На обработку одной телеграммы уходило до нескольких недель ручного труда. Для быстрой расшифровки требовалось построить соответствующее устройство.
Томми Флоуэрс (1905 — 1998 гг.)
В 1943 году Томми Флоуэрсом (Tommy Flowers) и Френком Мореллом (Frank Morell) из Исследовательской станции Центрального почтамта (General Post Office) в Доллис Хилл была построена специальная машина Heath Robinson (названа в честь популярного героя комиксов — персонажа-изобретателя странных механизмов). Машина имела скоростной ввод с перфолент и электронные логические схемы, она занималась вычислением положения дисков Lorenz. Heath Robinson позволила расшифровывать сообщения «Танни», но не отличалась особой надежностью и работала недостаточно быстро.
Машина Heath Robinson
Главная проблема заключалась в точной синхронизации двух перфолент, на одной из которых находилось германское шифрованное сообщение, а на второй были набиты циклически повторяющиеся последовательности битов, порождаемые штифтовыми комбинациями вскрытых дисков шифратора. И несмотря на то, что оптомеханический считыватель обрабатывал пару перфолент с довольно высокой скоростью, бумага перфоленты растягивалась и приводила к сбоям синхронизации, ошибкам в вычислениях.
Макс Ньюман (1897 — 1984 гг.)
Расшифровка требовала ускоренной автоматизации, поэтому в Блетчли-парке было создано специальное подразделение, которое возглавил известный английский математик Макс Ньюман (Max Newman). В 1943 году сотрудники данной структуры совместно с Томми Флауэрсом спроектировали принципиально новую дешифровальную машину, которая получила название Colossus.
Colossus — чать 1
Colossus — чать 2
С 1944 года с помощью Colossus полным ходом проводилось дешифрование и вскрытие переписки высшего эшелона германского военного командования. Благодаря быстродействию надежного электронного компьютера время расшифровки сообщений с нескольких недель сократилось всего до 2-3 часов. Colossus являлся самым большим компьютером того времени, он использовал мощность 1500 электронных ламп и позволял обрабатывать 5000 знаков в секунду. Из-за особенности работы электрических ламп, однажды запущенные в работу компьютеры, не выключались до окончания Второй Мировой. Устройство обладало очень ограниченной памятью, поэтому лента сообщения читалась по кругу, чтобы обеспечить непрерывный цифровой поток данных. Colossus за пять секунд мог считать сообщение длинной на 25000 символов, занимающие до 10 страниц печатного текста.
Colossus проводил сравнение двух канальных элемента символа из сообщения с эквивалентными элементами из потока ключа. Каждый раз, когда сообщение с ленты начинало читаться заново, ключ продвигался на одну позицию. При нахождении устройством соответствия, ключ считался правильным для этой позиции и для него начислялось одно «очко». Спустя 4-5 минут электронный счетчик начинал складывать очки. На переднюю ламповую панель выводились единицы, десятки, сотни и тысячи. После того, как счет становился достаточно большим, печатающее устройство распечатывало соответствующие позиции дисков для ключа, который дал такой счет.
Работа операторов на Colossus
Если перевести на современные компьютеры, то производительность Colossus соответствовала бы процессору с частотой примерно 5,8 МГц. Но все же, Colossus нельзя назвать полноценным компьютером. В этом секретном устройстве имелись электронные схемы, выполнявшие цифровые функции, но не было электронной памяти. Данные хранились на замкнутой перфоленте, которая двигалась со скоростью 80 км/час.
Использование Colossus помогло расшифровать в общей сложности свыше 63 миллионов знаков перехваченных телеграмм немецкого верховного командования.
Успех Colossus вдохновил англичан на создание второй модели. В 1944 году к команде Нююмана и Флауэрса присоединился Аллен Кумбс (Allen William Mark Coombs). Совместно ученые построили более продвинутую версию компьютера — Colossus Mark II. Это устройство примерно в пять раз превосходило по размерам своего предшественника, отличалось повышенным быстродействием, насчитывало около 2500 электронных ламп и предоставляло возможности программирования. В связи с чем Colossus II часто рассматривают как первый в мире электронный программируемый компьютер.
Colossus Mark II
В 1945 году успех компьютеров Colossus начал постепенно угасать. Столь крупные машины по 2-3 м высотой и суммарной длиной около 5,5 м, представляющие комплекс из 8 крупных двухсторонних монтажных стоек разной ширины, были специализированы под определенные задачи и не отличались универсальностью. Кроме того высшее британское руководство всячески старалось скрыть от СССР свои мощные дешифровальные возможности. В следствии чего, по личному указанию Уинстона Черчилля, Colossus разобрали по частям и скрыли под печатью «секретно». За 1945 год полностью демонтировали восемь из десяти машин.
Две оставшиеся модели отправили сперва в Лондон, а затем в город Челтнем. Они перешли в пользование к криптографической спецслужбе Великобритании — Центру правительственной связи (Government Communications Headquarters, GCHQ). Компьютеры тайно использовались еще полтора десятка лет для тренировочных и вспомогательных криптографических задач. Но до 60-х годов разобрали и две последние модели. Помимо этого были уничтожены схемы-чертежи компьютеров Colossus. Проект содержался в строжайшей тайне еще долгие годы.
Кое-какие обрывочные сведения о Colossus стали понемногу появляться в газетах с середины 70-х годов.
И в 1994 году группа инженеров-энтузиастов во главе с Тони Сейлом (Tony Sale) занялась воспроизведением работоспособной копии этой машины, используя немногочисленные фотографии, а также записи, рассказы и эскизы от оставшихся в живых участников проекта. Восстановление Colossus проходило в блоке F Блетчли-парка. Первое видео с работающей моделью было записано уже в 1997 году. Но полностью восстановить компьютер удалось только к 2008 году.
Тони Сейл (1931 – 2011 гг.)
По словам Тони Сейла, восстановленная модель Colossus расшифровывала сообщения примерно со скоростью ноутбук с процессором Pentium 2 и необходимым ПО. И это при учете такой солидной разницы во времени.
В 2000 году власти Великобритании официально рассекретили технический отчет 1945 года о вскрытии шифра и машинах Colossus. Объемный документ спецслужба GCHQ передала в общедоступный Государственный архив (Public Record Office) в городе Кью.
Национальный музей компьютеров
Благодаря восстановлению Colossus в 2007 году открылся Национальный музей компьютеров (The National Museum of Computing), который также находится в Блетчли-парке.
Блетчли-парк
Мифы о британском Colossus
Учитывая секретность проекта и отсутствие полной информации по данному устройству, пробелы в его истории постепенно заполнились разными мифами. Ниже представлено опровержение к четырем из них.
Миф 1. Colossus является первой в мире цифровой ЭВМ.
Несмотря на то, что Colossus по многим параметрам на самом деле является уникальной разработкой, первым компьютером он все же не был. За это первенство могут побороться: немецкий изобретатель Конрад Цузе (Konrad Zuse) с Z3 и сотрудники Университета штата Айова Джон Атанасов (John Vincent Atanasoff) и его аспирант Клиффорд Берри (Clifford Berry) с компьютером АBC (Atanasoff Berry Computer).
Миф 2. Сам математик Алан Тьюринг занимался конструированием Colossus.
Поскольку Алан Тьюринг работал в той же сфере и занимался расшифровкой «Энигмы», он действительно был ознакомлен с проектом Colossus. И тем ни менее, не принимал непосредственного участия в разработке этого компьютера.
Миф 3. Британцы читали практически всю зашифрованную «Энигмой» переписку Германии.
Нацистская Германия применяла для шифровки сообщений не только «Энигму» — у немцев были и другие шифрующие устройства. И англичанам удавалось дешифровать далеко не всю секретную переписку этой машины.
Миф 4. Мощный программируемый компьютер Colossus обеспечивал быстрое вскрытие ключей «Энигмы».
Colossus создавался не для взлома ключей «Энигмы», а для вскрытия телеграфного шифратора Lorenz SZ, служившего для личной секретной переписки Гитлера с членами высшего командования Третьего Рейха.
Комментарии (15)
AYrm
09.05.2016 20:02+2Работал на оборудовании подобном немецкому. Ежедневно нужно было выставить на дисках перемычки в соответствии с текущим ключом. И как все начинало адски глючить от единственного плохо почищенного контакта. Которых на каждом диске было огого сколько.
Moog_Prodigy
09.05.2016 21:09+5Дети будут спрашивать нас — как мы, используя неудобные устройства с экраном и клавиатурой, могли организовывать коннекты, сходки друзей. И приоткрывая тент в гараже, я расскажу, что были вот такие примитивные устройства.
С дисплеем.
С мышью.
С клавиатурой.
С обычным незалоченным жестким диском.
С памятью, еще внешней от процессора.
С принтером, пока их не стали ставить на учет.
С нормальным интернетом.
И электричество тогда не добывали на велотренажере.kasperos
10.05.2016 09:11+1А как-же:
-«ВАСЯ! ВЫХОДИ ГУЛЯТЬ»
-«НЕ МОГУ, ДОМАШКУ ДЕЛАЮ»
-«СКИНЬ ТОГДА МЯЧ»
AntonSor
09.05.2016 21:48+2Да, это целая страница в развитии вычислительной техники. Странно, что эти машины не породили другие применения компьютеров: составление таблиц стрельбы, сводок погоды, расчеты для атомного проекта, анализ радиолокационных сигналов… Кроме того, этот дешифровщик можно было переделать и для расшифровки тогдашних советских шифровальных машин (тех, что были сделаны на основе трофейных Энигм и Лоренцев, пусть с доработками в виде отражателей и пр.), а также для анализа и усовершенствования собственных шифровальных машин.
Jump
10.05.2016 02:22Ничего странного — строительство стоило огромных денег и машина получалась очень узкой специализации.
Перенастройка машины под другую задачу по затратам ничем не отличалась от строительства с нуля.
Поэтому для коммерческих целей они были невыгодны, проще было считать вручную.
Для военных целей, в условиях войны, или угрозы таковой — понятие выгодности отходит на второй план.
А для расчетов ядерных взрывов ламповые машины использовались.
Vjatcheslav3345
10.05.2016 08:35«Ничего странного — строительство стоило огромных денег и машина получалась очень узкой специализации.
Перенастройка машины под другую задачу по затратам ничем не отличалась от строительства с нуля.
Поэтому для коммерческих целей они были невыгодны, проще было считать вручную.»
Это всё «болезни роста», легко преодолеваемые средненькими инженерами-механиками и инженерами-электротехниками (строили же они как то до этого электроаппаратуру и радиоаппаратуру, автоматику для ЛЭП и не жаловались) в следующем поколении, когда принципы их построения уже понятны — так что вопрос, о том, почему эти машины не породили другие применения компьютеров: сводок погоды, 1С:), игры, написание что то типа Unix… все равно открыт.kasperos
10.05.2016 09:25Весь вопрос габаритов, кому нужен комп который занял бы половину дома и необходимость наличия пары инженеров для запуска «косынки», а когда появились технологии позволяющие создать небольшое устройство, тогда уже и появился повышенный сбыт, что позволило также сбросить и цену за счет массовости.
MartinX
10.05.2016 09:49> Странно, что эти машины не породили другие применения компьютеров: составление таблиц стрельбы, сводок погоды, расчеты для атомного проекта, анализ радиолокационных сигналов…
Ошибаетесь :). Был ENIAC в те года, правда, пока его строили, война окончилась и таблицы не нужны были. Потом его перепрограммировали уже на систему команд (до этого алгоритм хардкодился долго, но зато быстро считался. но на одноразовых задачах это было неудобно). Использовали для рассчетов ядерных бомб и погоды. Правда он был слабый и очень упрощенные модели взрывов брали. Погоду он так же долго считал, что почти что сводило на нет смысл прогноза).AntonSor
10.05.2016 09:56Вот именно что. Эниак и Марк-1 были на пару лет позже. Когда Эниак начали строить, описываемая в статье машина уже работала и расшифровывала данные.
NetBUG
10.05.2016 03:50Из-за особенности работы электрических ламп, однажды запущенные в работу компьютеры, не выключались до окончания Второй Мировой.
Что за особенности такие?ntkt
10.05.2016 05:19Реплику описанного в статье устройства в музее таки включают/выключают, но делают это очень медленно и контролируют температурный режим, см. материал, откуда позаимствованы фотографии: http://www.benryves.com/gallery/bletchley
Лампы очень не любят перепадов температуры, к примеру, из-за температурных напряжений в местах контакта стекла и металла. Перепады температуры во времени (на самом деле, любой серьезный градиент температуры, например, из-за неразумной системы охлаждения) — температурные напряжения — микротрещины — нарушение вакуума — раскаленные электроды реагируют с кислородом — отказ.
Для ламп даже специальные марки стекол и сплавов создавали в свое время, чтобы уравнять коэффициенты температурного расширения у элементов конструкции, регламентировали режимы прогрева-охлаждения при включении-выключении и т.д.
То же самое справедливо и для электродов ламп, особенно в местах их сварки с выводами (т.к. контакт двух металлов).
Кроме того, лампы чувствительны к перепадам напряжения (срок службы лампы накаливания пропорционален напряжению в минус шестнадцатой степени). Учитывая зависимость электрического сопротивления проводников от температуры, получаем ещё одну проблему.
А так, однажды нагретый докрасна электрод в лампе, который никто не трогает, при постоянной температуре и без «протечек» ваккумной колбы может спокойно работать десятилетиями (сотни тысяч часов, рекорд у лампы в передатчике Би-би-си, 232 000 часов). Самой старой рабочей лампе накаливания больше ста лет непрерывной работы.NetBUG
10.05.2016 05:24Понял, да.
В более поздних лампах (в 1950-е) проблему включения-выключения в штатном диапазоне параметров решили, а температурный уход параметров компенсировали; поэтому я не подумал, что для весьма раннего цифрового компьютера это действительно будет проблемой.
Кстати, в более новых лампах есть проблема старения активированного катода, поэтому коэффициент эмиссии может снижаться до неприличных величин (а с ним — и ток анода).
MartinX
> K = chi oplus psi
Привет, LaTeX :). ua-hosting хоть и мухлюет, но статьи уже становятся читаемыми).