докторской степени Тьюринг едва не подался в сотрудники фон Неймана.
Без Тьюринга и фон Неймана кибернетика Винера могла бы главенствовать в мышлении и оставаться движущей силой развития технологий намного дольше, чем это произошло в реальности, где она пережила краткий миг торжества. В воображаемой версии истории мы вполне могли бы жить сегодня в мире стимпанка[66], а не просто наблюдать его фантастические воплощения на Maker Faires![67]
Все сказанное означает, что Винер думал о мире – физическом, биологическом и (в «Человеческом применении») социальном – совершенно особым образом. Он анализировал мир как непрерывность переменных, что сам объяснял в главе 1, ссылаясь на термодинамику и статистику Гиббса[68]. Еще он предложил слабую и неубедительную модель информации как обмена сообщениями между физическими и биологическими сущностями. На мой взгляд, спустя семьдесят лет эволюции эти идеи и модели выглядят прискорбно непригодными для описания механизмов, лежащих в основе биологических систем, а вдобавок он не задумывался о том, каким образом подобные механизмы могут в конечном счете быть воплощены в технологических вычислительных системах, что происходит сегодня. Нынешние доминирующие технологии разрабатываются в мире Тьюринга и фон Неймана, а не в мире Винера.
В ходе первой промышленной революции люди научились использовать энергию пара и вращение водяного колеса вместо грубой физической силы. Вместо того чтобы и дальше обращаться к последней, люди сделались модуляторами, контролирующими использование сторонней энергии. Но поскольку паровые двигатели и водяные колеса по необходимости имели большие размеры, чтобы работать эффективно, и поскольку в XVIII столетии единственной технологией для пространственного распределения энергии было механическое перемещение на чрезвычайно малые расстояния, приходилось привлекать к процессу множество работников. Винер правильно отмечал, что именно возможность передачи энергии в форме электричества вызвала вторую промышленную революцию. Теперь источник энергии мог находиться далеко от места применения, и с начала XX столетия производство рассредотачивалось благодаря распространению распределенных электросетей.
Далее Винер утверждал, что очередная новая технология, на сей раз в виде зарождающейся вычислительной техники его времени, приведет к новой революции. Машины, о которых он писал, выглядят аналоговыми и (возможно) цифровыми по своим параметрам; в «Человеческом применении человеческих существ» он указывал, что, поскольку такие машины способны принимать важные решения, синие и белые воротнички[69] со временем рискуют превратиться в винтики гораздо более крупной машины. Он опасался, что люди начнут эксплуатировать и изводить друг друга при посредстве организационных структур, которые породит эта способность машин. Мы воочию наблюдали происходящее в последние шестьдесят лет, и процесс «завинчивания» еще далек от завершения.
Впрочем, приверженность физике не позволила Винеру предугадать, насколько плохо все может оказаться. Он воспринимал способность машин к общению как новый, менее человечный, если угодно, способ управления и контроля. Он не предполагал, что всего за несколько десятилетий вычислительные системы сделаются чрезвычайно схожими с биологическими системами, и, судя по описанию в главе 10 его книги, где обсуждаются его собственные опыты моделирования ряда биологических ситуаций, он, к сожалению, сильно недооценивал сложность биологии в сравнении с физикой. Сегодня мы находимся в гораздо более сложном положении, чем рисовалось Винеру, и лично меня беспокоит, что это положение кажется намного отчаяннее его худших воображаемых страхов.
В 1960-х годах вычисления развивались в русле, «прорытом» Тьюрингом и фон Нейманом; эти цифровые вычисления опирались на идею конечного алфавита символов, важную для обоих ученых. Последовательность или строка произвольной длины, образованная символами конечного алфавита, может быть закодирована как уникальное целое число. Формализм вычислений, как и в случае самих машин Тьюринга, стал формализмом вычисления целочисленной функции единичного целочисленного входа.
Тьюринг и фон Нейман ушли из жизни в 1950-е годы, и вот как они в ту пору рассматривали вычисления и компьютеры. Никто не предвидел экспоненциальный рост вычислительных возможностей по закону Мура или стремительное распространение вычислительного оборудования. Также они не предвидели двух новшеств в нашем моделировании вычислений, каждое из которых представляет немалую угрозу для человеческого общества.
Первое связано с теми самыми абстракциями, от которых отталкивались Тьюринг и фон Нейман. Пятидесятилетнее, подгоняемое законом Мура состязание в производстве программного обеспечения, которое учитывало бы удвоение мощности компьютеров каждые два года (по сути, типичная инженерная деятельность), оказалось отодвинутым на второй план. Разработка программного обеспечения велась быстро и провоцировала ошибки. Эта ускоренная разработка программного обеспечения вне стандартов качества позволила обнаружить множество способов использования хранилища данных и инструкций в архитектуре фон Неймана (в одной и той же памяти). Среди наиболее распространенных способов можно отметить «переполнение буфера», когда число на входе (или длинная строка символов) больше, чем ожидал программист, и «перетекает» в область хранения инструкций. Намеренно задавая входное число намного больше, некто с помощью соответствующего программного обеспечения может внедрить в компьютер сторонние инструкции и тем самым изменить его функционирование. Вот фундамент разработки компьютерных вирусов, названных так из-за сходства с биологическими вирусами. Последние внедряют в клетку дополнительную ДНК, и механизм транскрипции и трансляции клетки слепо интерпретирует новые данные, творя белки, которые могут нанести урон клетке-хозяину. Кроме того, клеточный механизм репликации обеспечивает размножение вируса. Так малая чужеродная сущность может взять под контроль гораздо большую сущность и заставить ту неожиданно изменить свое поведение.
Эти и прочие формы цифровых атак лишили нашу повседневную жизнь былой безопасности. Ведь мы полагаемся на компьютеры практически во всем. Мы передали им управление инфраструктурой (электричество, газ, дороги, автомобили, поезда, самолеты), а инфраструктура теперь уязвима. Мы полагаемся на компьютеры в банковских операциях, в оплате счетов, накоплении пенсий, ипотеке, при покупке товаров и услуг – и опять-таки рискуем. Мы полагаемся на компьютеры в наших развлечениях, наших коммуникациях, деловых и личных, в обеспечении физической безопасности, в получении информации о мире и на выборах; все это сегодня далеко не безопасно. В ближайшем будущем исправить ситуацию вряд ли получится. Между тем многие сферы нашего общества остаются уязвимыми для атак – со стороны обычных преступников и со стороны враждебных государств.
Второе новшество заключается в том, что вычисления оставили далеко позади рамки вычислительных функций. Вместо этого программы постоянно находятся онлайн и могут собирать данные о последовательностях запросов. В соответствии со схемой Винера / Тьюринга / фон Неймана мы могли думать, что шаблон коммуникации для веб-браузера будет следующим:
Пользователь: Покажи мне веб-страницу А.
Браузер: Вот веб-страница А.
Пользователь: Покажи мне веб-страницу Б.
Браузер: Вот веб-страница Б.
Ныне же все может выглядеть так:
Пользователь: Покажи мне веб-страницу А.
Браузер: Вот веб-страница А. [И я запомню, что ты хотел увидеть веб-страницу А.]
Пользователь: Покажи мне веб-страницу Б.
Браузер: Вот веб-страница B. [Я вижу корреляцию между ее содержанием и