Fакел - журнал для тех, кому больше всех надо. - Дети двоичных джунглей
На главную страницу >>>
  

 

 

Дети двоичных джунглей

Квантовый компьютер против киберпанка



Коммерческий фантаст Уильям Гибсон, выдумавший термин "киберпанк", описывал свободолюбцев и террористов, работающих с компьютером. Однако сам Гибсон с компьютером никогда не работал и с компьютерными субкультурами хакеров знаком не был. То, что он описал, было не только далеко от истины, но и абсолютно нежизнеспособно.

О киберпанке

Несмотря на свою вопиющую бездарность, вторичность сюжетов и вымученную истертость языка, Гибсон был коммерчески невероятно успешен, и либеральные медиа вместе с далекими от компьютеров гуманитариями приняли описанную им субкультуру за факт.

Сотни раз перепродавшийся Билли Айдол записал альбом "Киберпанк", мгновенно объявленный крутейшим андерграундом. Коммерческие уроды наплодили тупых и лживых журналов об Интернете. Худосочная поросль киберпанка возникла на периферии хакерского сообщества. Среди мелких преступников, воровавших деньги у телефонных компаний, и малахольных недоумков, присосавшихся к ящику с MTV стало модным называть себя киберпанками.

Между тем, философия радикального крыла хакеров была изложена Р. М. Столлманом в Манифесте GNU задолго до появления гибсоновского "Нейроманта". Никаких ограничений на распространение информации не должно быть, так как они аморальны и затрудняют разработку программ. Столлман предлагал бойкотировать программы, которые запрещалось бесплатно распространять и модифицировать. В результате его деятельности (совместной с сотнями программистов) появилась возможность работать на большинстве компьютеров, пользуясь исключительно бесплатными программами (я, например, набираю этот текст в написанной Столлманом программе Емакс).

Бесплатность, конечно, не так важна, как возможность распространять текст программы вместе с ее двоичным файлом - если у меня что-то не работает, я всегда могу прочесть текст программы, написанный на C или Lisp, и найти ошибку. Поэтому в программном обеспечении, распространяемом без жесткого копирайта, практически нет ошибок.

Молодежь, узнавшая о компьютере от Гибсона, писанием программ не интересовалась. Киберпанки не воспринимали компьютер как средство передачи информации - они считали, что компьютер есть не более чем оружие в войне за деньги и власть. Философские построения Ричарда Столлмана их интересовали гораздо меньше, чем взлом серверов. Видеть жизнь как непрестанную партию в Doom - каково?

В результате главным фокусом политики киберпанка стало такое непереводимое понятие, как computer privacy - возможность засекретить любой документ в компьютере и спрятать его от окружающих. Перевода слова "privacy" на русский язык нет - скрытность в России не может иметь положительных коннотаций, а privacy и есть скрытность, но воспринятая целиком положительно.
Абсолютно надежный, хотя и крайне неудобный, метод шифровки основан на использовании шифровального алгоритма, по длине соизмеримого с длиной сообщения. Конечно, такая шифровка непрактична. Около двадцати лет назад математики разработали надежный (пока) метод шифровки, основанный на простых числах. Стозначное целое число разложить на множители нельзя без миллиона пентиумов, а вот 50-значное можно. Соответственно, нельзя узнать, из каких простых множителей состоит стозначное число, если оно не получено умножением уже известных простых чисел. На технической невозможности разложения больших чисел на множители основано большинство известных шифровальных алгоритмов.


О квантовом компьютере

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

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

Самая простая интерпретация квантовой механики называется many world theory - теория многих миров. Согласно ей, мы живем одновременно в целом континууме вселенных, в каждой из которых параметры (такие, как скорость и координаты частицы) принимают любое допустимое значение, а факт измерения этих параметров расщепляет континуум вселенных на два подконтинуума.

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

Этот механизм можно с успехом применить в компьютерном деле. Рассмотрим провод, по которому течет неопределенный сигнал с вероятностью половина - единица, с вероятностью половина-ноль. Такой сигнал называется кубитом, то есть квантовым битом. Сто квантовых бит, текущих по проводу, несут сигнал, с равной вероятностью принимающий значения от нуля до астрономического числа 2100.

Пусть удалось сконструировать машину, производящую сигнал в 100 кубит (на самом деле трех кубит достаточно, но больше одного-двух пока получить не умеют). Тогда нетрудно построить компьютер, мгновенно решающий любую заданную наперед криптографическую задачу.
Я поясню это на простом примере. Пусть задано число Х порядка 2200, и необходимо определить, простое ли оно. Неквантово-механический компьютер, способный это сделать, будет весить больше, чем вся Солнечная система. А с помощью провода, по которому подается сигнал в 100 кубит, определить, простое ли Х, ничего не стоит. Пусть у нас есть механизм, лишенный любых квантовых неопределенностей (просто железка), который делит Х на У и выдает на провод сигнал 1, если делится, и 0, если не делится. Подадим на входе этому механизму сигнал в 100 кубит. Эффект будет таким же, как если бы мы подавали все числа от 0 и до 2100 одновременно, а результат будет среднеарифметическим (суперпозицией) нулей и единиц, полученных в каждом и случаев. Короче говоря, на выходе будет 0 если Х простое, и очень маленький ненулевой сигнал, если Х составное. Усилив этот сигнал, узнаем, составное или простое число Х.

Другими словами, квантовые биты позволяют вести астрономическое количество параллельных вычислений на одном и том же процессоре, получая результаты, технически невозможные на самой совершенной детерминистской вычислительной технике. И это не предел. Можно представить себе компьютер, основанный на квантовой гравитации. Такой компьютер в принципе настолько же будет превосходить квантовый, насколько последний превосходит обычный (но это тема для совершенно отдельной статьи).

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