Александр ЛАЗАРЕВИЧ
ЧЕРВЬ.
Научно-фантастическая дилогия.
Книга первая - 1992 год: Князь Тьмы.
1.
Начиная свой рассказ, я надеюсь на то, что вы не поверите ни
одному моему слову. Я не хочу вогнать вас в шок, а неверие - это
единственное, что может предохранить вас от шока. Считайте эту
историю чем угодно - фантастическим рассказом, легендой,
сказкой, но только не допускайте мысли, что всё это произошло на
самом деле. Я постараюсь вам в этом помочь - где-нибудь привру,
вставлю неправдоподобные детали... Впрочем, особенно стараться
мне не придется - история эта достаточно невероятна сама по
себе.
Поставить под сомнение ее истинность очень легко - источник
информации ненадежен и не поддается проверке. Вполне возможно,
что все это всего лишь пьяный бред. Рассказал мне эту историю
один знакомый,побывавший недавно на симпозиуме по системному
программированию. Там он подружился с известным зарубежным
программистом и угостил его у себя в номере тем, что у него с
собой было. После третьей рюмки у именитого иностранца
развязался язык и он облегчил душу, выложив моему знакомому
мучившую его тайну.
Рассказчик производил впечатление человека, измученного
тяжким бременем непереносимо горькой истины, открывшейся изо
всех людей на свете ему одному, и обрекшей его на одиночество
среди множества людей, которые живут себе, ни о чём не
подозревая. Может быть поэтому, а может быть и потому, что к
этому времени мой знакомый тоже уже не был абсолютно трезв,
слушая рассказ, он ни на мгновение не усомнился в его
истинности. Лишь одна мысль вертелась у него в голове - хорошо
бы завтра проснуться и ничего этого не помнить. Потому что как
можно жить дальше, зная всё это? Для чего? Зачем?
На утро он проснулся со страшной головной болью. Но, несмотря
на количество выпитого, рассказ вчерашнего гостя засел в голове
мучительной занозой.
Раздался телефонный звонок:"Извините я кажется рассказал Вам
вчера несколько больше чем следовало. Я хочу попросить Вас об
одном одолжении. Я понимаю, что не могу требовать от Вас
молчания. Вы не сможете долго жить один на один с тем, что Вы
узнали - рано или поздно Вам потребуется с кем-нибудь
поделиться. Я прошу только об одном - не раскрывать моего
настоящего имени. Обозначьте меня псевдонимом Джон Хэкер."
-"Хэкер? Кажется, в Америке хэкерами называют
программистов, которые как и Вы в юности..."
-"Да. Но не напоминайте мне больше об этом." В трубке
раздались гудки...
2.
В 1982 году Джону Хэкеру было 18 лет и он в самом деле был
заправским хэкером. Компьютеров в мире было не так много как
сейчас, но они уже начали объединяться в единую информационную
сеть. Уже тогда, имея дома лишь плохонький бытовой компьютер,
подключенный через модем к обычной телефонной линии, можно было
связаться с суперкомпьютерами, находящимися на другом конце
земного шара. Разумеется, компьютеры, содержащие секретную
информацию, защищены от несанкционированного вторжения
различными паролями и системами защиты данных, весьма остроумно
и изобретательно сделанными лучшими программистами мира. В
этом-то и есть величайший соблазн и вызов молодым умам.
Перехитрить лучших программистов мира - что может быть более
соблазнительного для юноши, жаждущего самоутверждения? Так
появились хэкеры - компьтерные фанаты, просиживающие дни и ночи
у дисплеев в надежде подобрать ключик к какому-нибудь особо
хитрому электронному замку.
Хэкеры изобрели "червей" - программки-взломщики,
пробирающиеся по линиям связи в чужие защищенные компьютеры,
размножающиеся в них, и отправляющиеся странствовать по линиям
связи дальше, в поисках новых жертв. Именно жертв, поскольку в
червей часто встроены копьютерные вирусы, которых черви,
погостив, оставляют на память пригревшим их хозяевам.
В 1982 году Джон Хэкер завершил работу над своим шедевром -
червем, получившим от своего создателя устрашающее имя "Князь
Тьмы".Это был не просто червь. Это был суперчервь! В него была
заложена способность к самосовершенствованию.
Джон хорошо помнит день,когда он вставил дискету с готовым
червем в щель дисковода. Два года он мучался на своей маленькой
ай-би-эмовской "писишке" с ничтожной памятью 128 килобайт,
собирая на этом тесном пятачке программу, которой предстояло
покорить целые океаны памяти гигантских суперкомпьютеров всего
мира. Он положил телефонную трубку на модем и набрал на
клавиатуре :"PRNCDKNS" что означало - Prince of Darkness - Князь
Тьмы. Старенький дисковод издал страшный скрежет и стал медленно
считывать программу с дискеты. Вот запищал акустический модем -
червь, пока еще сидя в домашнем компьютере, начал по телефону
подбирать ключи к своей первой жертве. Хэкер дал ему "на
дорожку" список из десятка телефонных номеров не слишком хорошо
защищенных банков данных. На первых порах ему этого должно
хватить, а дальше пусть раздобывает номера сам, перехватывая
обращения к другим абонентам.
Внезапно писк прекратился - пройти через защиту не удалось.
Через пол-секунды звук возобновился - червь перешел к следующему
номеру - и вдруг снова замолк. "Опять неудача ?" - с замиранием
в сердце подумал Джон, но в это мгновение послышался скрежет
дисковода, что могло означать только одно: "голова" червя прошла
через защиту и теперь уже оттуда, с другого конца провода,
подзагружает с дискеты Джона свой "хвост". Еще секунд десять на
дисководе светилась красная лампочка и были слышны глухие щелчки
передвигаемых магнитных головок. Потом дисковод остановился, но
ещё пару секунд было слышно как пищит модем. Потом и он умолк.
Червь ушел.
Мурашки пробегали по спине Джона, всякий раз когда он
представлял себе дальнейшее. Где-то там, на другом конце провода
стоят машины с огромной оперативной памятью и немыслимо
вместительными накопителями. Кабели с невероятной пропускной
способностью и спутниковые каналы свяэи соединяют их с другими
такими же большими машинами, разбросанными по всему миру. Все
вместе они образуют информационное пространство, бесконечное как
космос, и опасное как джунгли. В этих джунглях отныне будет жить
его червь. За ним будут охотиться антивирусные программы, и он
должен будет продираться через многочисленные защитные "заборы"
и "перегородки" делящие это пространство на части.
Чтобы выжить, ему придется активно размножаться, занимая под
свои копии свободную память в очередном захваченном компьютере.
Но вся "изюминка" программы написанной Джоном Хэкером состояла в
том, что многие из этих копий будут несколько отличаться от
оригинала. и всякий раз по разному и случайным образом.
Некоторые из них могут оказаться более приспособленными к
выживанию в компьютерных "джунглях". Именно эти копии сумеют
пролезть в новые банки данных, где найдут "жизненное
пространство" для дальнейшего размножения. Таким образом,
выживут наиболее приспособленные, в полном соответствии с
Дарвиновской теорией эволюции, которая утверждает, что
приобретенные полезные признаки должны накапливаться и вести к
появлению все более совершенных организмов.
Первоначальный червь, запущенный Джоном Хэкером, как
собственно червь был не очень силен - другие хекеры, имевшие
дома более совершенные компьютеры, писали червей способных
взламывать куда более хитрые "электронные замки", но в них не
была заложена способность к самосовершенствованию, и поэтому
Джон надеялся что со временем, после долгих путешествий по
компьютерным сетям, его червь (или черви - эволюция скорее всего
пойдет сразу по многим путям ) превзойдет всех остальных. И
когда наконец они захватят компьютерные сети всего мира, Джон
Хэкер войдет в какую-либо из сетей и наберет на клавиатуре
пароль "Князь Тьмы". Сработает специально защищенная от
"мутаций" подпрограмма червя, резидентно сидящая в центральном
компьютере этой сети. Она быстро наладит связь с червями
пробравшимися в другие сети, и на дисплеи пользователей всего
земного шара одновременно будет выведено сообщение: "Джон Хэкер
- самый гениальный программист на свете!"
Таков был план Джона Хэкера, но ему не суждено было сбыться.
В течение последующих трех лет Джон много раз набирал пароль, но
червь не откликался. В сети, в которую выходил Джон, его не
было. После безуспешного трехлетнего "аукания" в компьтерных
"джунглях" Джон был вынужден признать: червь погиб, очевидно
съеденный антивирусной программой. Джон постарался забыть об
этой истории...
3.
Прошло десять лет. В начале 1992 года на одной из военных баз
произошло ЧП: компьютер, управляющий ракетами с ядерными
боеголовками внезапно начал предстартовый отсчет времени. В
течение трех минут ядерная война казалась неизбежной, но за две
секунды до пуска отсчет прекратился так же внезапно как и
начался. Военные специалисты провели тщательное расследование,
не выявившее никаких дефектов ни в самом компьютере, ни в
программном обеспечении. Было принято решение обратиться за
консультацией к независимым экспертам.
...Звонок из военного ведомства застал Джона Хэкера,
известного консультанта по системному программированию, в
супермаркете, когда он делал покупки на неделю. Джон достал из
кармана трубку радиотелефона. - "Мы только что скинули по
телефону на Ваш домашний компьютер одну вещицу." - донеслось из
трубки - "Посмотрите и скажите Ваше мнение.Желательно как можно
быстрее.Это очень важно."
- "О'кей. Немедленно еду домой." Но прежде чем сесть в
машину, Джон набрал номер своего домашнего телефона, а затем еще
несколько цифр - команды домашнему компьютеру подогреть ужин .
Уже через секунду ручка на газовой плите в доме Джона Хэкера
автоматически повернулась, а еще через секунду электрическая
искра зажгла газ. Когда Джон приехал домой, ужин был готов.
Наскоро поужинав, он сел за дисплей...
...Взглянув на распечатку исходного текста программы, Джон
сразу почувствовал, что что-то здесь не так. То есть, с чисто
логической точки зрения все было в полном порядке:
скомпилированная программа работала абсолютно безупречно. Но
расположение текста на экране! Текст явно был написан кем-то,
кто не видел что у него получается на дисплее.
"Слепой программист ?" - подумал Джон днако он быстро отбросил
эту мысль. адо было обладать воистину нечеловеческими
способностями чтобы написать такую программу целиком "в
уме".Скорее всего этот текст был результатом работы какой-то
программы еще более высокого уровня. Джон попытался представить
себе насколько сложной должна была быть система, чтобы ей можно
было сказать:"перепиши программу так, чтобы новый вариант
позволял в любой момент вмешиваться в работу компьютера через
каналы связи, но во всех остальных отношениях был неотличим от
старого варианта." Это должна была бы быть очень сложная
система. Программистам было бы проще решить эту задачу самим, а
не создавать специальную систему для ее решения. Следовательно,
эта система, если она действительно существует, не нацелена на
решение конкретной задачи, а является универсальной. Но тогда
получается, что эта система обладает уровнем мышления близким к
человеческому.
"Абсурд!" - подумал Джон - "для того, чтобы реализовать на