Игра в имитацию - Эндрю Ходжес
Шрифт:
Интервал:
Закладка:
Но Робина Гэнди поразило другое, почти в первый же день, когда он приступил к работе по изучению эффективности сердечников с высокой магнитной проницаемостью в трансформаторах радиоприемников. В его отделе было два инженера, затеявшие нудный процесс тестирования. Но тут в дело вмешался Алан, решивший, что все следует решать, исходя из теоретических принципов — в данном случае речь шла об электромагнитной проблеме, связанной с уравнениями Максвелла. Эти уравнения Алан записал на верху своей работы, как если бы это был какой-то надуманный вопрос для получения отличия на экзамене в Кембридже, а не задачка из реальной жизни, и в конце концов проявил незаурядный талант по решению дифференциальных уравнений в частных производных.
Дональда Бейли впечатлил аналогичным образом проект шифрования речи, который в Хэнслопе получил название «Далила». Алан предложил награду за лучшее название проекта и присудил ее Робину за его вариант (Далила — библейская «обманщица мужчин»). Проект наиболее полно использовал его опыт в криптоанализе, и как объяснял Алан, был призван выполнить одно основное условие: аппаратура, даже подвергшаяся компрометации, должна была все равно обеспечивать полную секретность. И все же система, которую он задумал на борту «Императрицы Шотландии» годом ранее, была сущности очень простой. Это был математический проект, причем такой, что зависел от Алана, вопрошающего «Почему бы и нет?»
То, что он сделал, это изучил полную комнату аппаратуры, составлявшего «X-system», и задался вопросом, каковы были важнейшие характеристики, которые делали этот метод стойким шифром голосовых сигналов. Вокодер (кодировщик речевых сигналов) не являлся определяющим, хотя и был отправным пунктом проекта. Не играл существенного значения и процесс квантования по амплитуде выходного сигнала в число дискретных уровней. Отбросив эти аспекты, Алан свел количество идей к двум: при дискретизации по времени непрерывный речевой сигнал преобразуется в последовательность его мгновенных значений, соответствующих определенным моментам времени (сигнал представляется рядом отсчетов, или выборок, взятых через равные промежутки времени); используется модульное наращивание, напр., шифр Вернама одноразового использования, или одноразовый блокнот.
«Далила» базировалась на этих двух идеях с самого начала, тогда как к «X-system» разработчики пришли через «задний ход». Смысл дискретизации заключался в том, что она устраняла информационную избыточность непрерывного звукового сигнала. Любой звуковой сигнал можно было графически представить в виде кривой:
Смысли заключался в том, что отпадала необходимость передачи всей кривой. Достаточно было передать информацию с определенных точек (отсчетов) на кривой, при условии, что получатель мог затем «соединить точки» и восстановить кривую. Это можно было сделать (по крайней мере, по идее) при условии, что была известна дозволенная острота изгиба кривой между отсчетами. Поскольку острые изгибы соотносились с высокими частотами, из этого следовало, что при условии ограничения частотного спектра дискретизуемого сигнала, последовательность дискретных отсчетов, или выборок, взятых через регулярные промежутки, должна была содержать всю информацию, заключенную в сигнале. И, поскольку в телефонных каналах в любом случае происходило срезание высоких частот (подавление высокочастотных составляющих), ограничение на дозволенную «изгибаемость» кривой вовсе не являлось ограничением, и, на самом деле, достаточно было отобразить довольно малое число выборок, чтобы передать сигнал.
Эта идея была хорошо известна инженерам связи. В «X-system» было принято дискретизировать каждый из двенадцати каналов (25 Гц) пятьдесят раз в секунду. Эти цифры иллюстрировали общий постулат: необходимо было производить выборку со скоростью, вдвое превышающей максимальное изменение частотной характеристики звукового сигнала, или ширины полосы пропускания. Точный математический результат такого действия, доказанный еще в 1915 г., был пересчитан Шенноном и обсужден с Аланом в «Белл Телефоник Лабораторис». Если, к примеру, спектр звукового сигнала ограничивался до частот менее 2000 Гц, то для восстановления сигнала достаточно было взять 4000 отсчетов (выборок) в секунду. Строго одна кривая установленного частотного ограничения должна была проходить все элементы выборки. Алан описал и доказал этот постулат Дону Бейли, как «теорему о ширине полосы пропускания». Его «Почему бы и нет?» трансформировалось в вопрос: почему этот ясный факт нельзя было сделать отправной точкой для преобразования всего процесса шифрования.
И цифру в 2000 Гц Алан, в действительности, намеревался использовать. Его процесс шифрования должен был начинаться с речевого сигнала, дискретизуемого 4000 раз в секунду. «Далила» затем должна была прибавить полученные путем выборки амплитудные значения речевого сигнала к потоку ключевых амплитудных значений. Сложение должно было производиться по модульному принципу, т. е. если сложение 0.256 единиц выборки амплитудных значений речевого сигнала и 0,567 единиц ключевых амплитудных значений давали в сумме 0,823 единицы, то сложение 0,768 и 0,845 давало бы 0,613, а не 1,613. В результате выстраивалась последовательность острых «пиков», высших значений, варьирующих между нулем и одной единицей.
Следующей проблемой было — как передать информацию этих «пиковых» значений получателю. В отличие от «X-system». Аалан планировал не делать квантования амплитуд на этом этапе. Он намеревался передавать их по возможности напрямую. По идее, можно было передать и сами «пики». Но, поскольку они имели столь малую длительность, всего несколько микросекунд, потребовался бы канал, способный пропускать очень высокие частоты. Никакая телефонная линия не могла этого делать. Для использования телефонного канала информацию «пиков» необходимо было преобразовать в сигнал звуковой частоты. Предложение Алана заключалось в том, чтобы подавать каждый «пик» в специально разработанный электронный контур «ортогональной» модели. Ответом такого контура на «пик» единицы амплитудной выборки являлась бы волна с высотой этой единицы после одного промежутка времени и нулевой высотой в каждый следующий промежуток времени.
При условии, что контур «линейный», результатом подачи в него последовательности «пиков» должно было стать очень точное «соединение точек». Информация о каждом «пике» преобразовывалась точно в амплитуду ответа этого контура с задержкой всего на одну единицу времени.
Передача в таком случае проходила бы прямо и могла быть получена совершенно стандартным образом; декодирование процесса не требовало применения никаких новых идей. Помимо обеспечения криптосистемы с секретным ключом, это было все, что требовалось, чтобы «Далила» осуществляла «встроенное» шифрование речи, аналогично тому, как агенты типа Маггериджа или машины, производящие сигналы «Рыбы», либо «Rockex», все одинаково делали для телеграфа или телетайпа. Если ключ был действительно «случайным», либо не имел никакого распознаваемого шаблона, такая система шифрования речи была бы надежной, как шифр Вернама для телеграфной ленты, и на точно таком же основании. С точки зрения неприятеля, при условии равной вероятности всех ключей, все сообщения были бы равновозможны. И противостоять было бы сложно.
(adsbygoogle = window.adsbygoogle || []).push({});