Кабинет его отличался систематическим беспорядком. Письменный стол был по большей части завален комплектами цветных карт Африканского континента, выполненных, как я догадывался, с помощью электронной аппаратуры. На стенной полке лежали игры «Squad Leader»[13]
, «Alaska», «Diplomacy», «Scotland Yard» и «Go». Рядом висела настоящая английская мишень для дарта. В углу располагался терминальный столик. К одной из стен, словно мемориальная доска в память об иной эпохе, была прикреплена логарифмическая линейка.Я рассказал, что полиция считает доказанным факт самоубийства Бьёрна Уле Ларсена.
Лассе сжал губы.
— Я знал Бьёрна Уле, — сказал он. — Он с осени изучал базовый курс программирования, «DA1» называется. По-моему, он не очень-то походил на типичного самоубийцу.
— Если он был в живых в восемь пятьдесят в тот вечер, — возразил я, — значит, это самоубийство. Типичное или нет.
В глазах у Лассе зажегся огонек заинтересованности. Он почуял проблему, которую предстояло решить.
— Ты думаешь, что в восемь пятьдесят он уже был мертв? — спросил он.
— По данным компьютера, он был жив, — ответил я.
Лассе улыбнулся:
— Машина выдает только такие данные, какие тебе нужны.
— Значит, не исключено, что кто-то ввел в машину ложные временные данные, чтобы выдать убийство за самоубийство?
— Разумеется. Но в таком случае виновен кто-то из нас, работающих здесь.
Лассе повернулся к терминалу.
— Есть масса простейших способов, — сказал он, нажимая на клавиши. — Достаточно самых элементарных познаний в программировании, и ты без труда сможешь представить дело так, будто работал на своем компьютере, хотя в действительности в это время находился в Токио. Вот смотри.
Он показал на экран. Я понял только одну строку: «Username:[14]
БУ ЛАРСЕН».Все остальное было для меня темный лес. О чем я и заявил.
— Ну ладно, — сказал Лассе. — Суть в том, что любое подключение к банку данных кодируется подобной схемой. Я сейчас всего-навсего подключился к системе, чтобы выяснить, чем БУ ЛАРСЕН занимался в тот вечер. Этот буквенный шифр…
Я прочел на экране: «Terminal name:[15]
ТХАО».Он показал на две строки в правой стороне экрана. «Finish time:[16]
6-JAN-1986 20.49.32.11»«Start Time:[17]
6-JAN-1986 17.19.27.55»— …означает, что он позвонил сюда из дома с помощью модема. А еще интересно вот это.
— Мы видим, что он подключился к системе в семнадцать часов девятнадцать минут двадцать семь и пятьдесят пять сотых секунды вечера шестого января этого года. Без десяти девять он от системы отключился.
— И никакому дилетанту не удастся подменить эти данные другими? — спросил я с сомнением.
— Есть и другие возможности ввести ложную информацию, — ответил Лассе Квендорф.
Он снова стал нажимать на клавиши. Цифры и буквы забегали по экрану. Потом на нем появился текст.
— Это, — объяснил Лассе Квендорф, — последний файл, с которым он работал. Скорей всего это задача из «DA1», то есть базового курса программирования. Ничего удивительного, что он с ней работал, ведь по этой специальности как раз в январе экзамен.
Пальцы его снова забегали по клавишам, на экране появились новые цифры и буквы, новый текст.
— Два других файла, которыми он занимался в тот день, тоже упражнения, — сказал Лассе. — Он просто-напросто делал домашнее задание.
Картинка исчезла. Потом на экране показались две строки:
WAIT 0:0:15:00
WRITE SYS OUTPUT «НЕI, IDIOT!»[18]
— А теперь мы подходим к важному моменту, к тому, как можно ввести в машину ложные данные. Эти две строки обозначают программу, которая называется «Здорово!». Она составлена так, что если я дам команду начинать…
Он несколько раз нажал на клавиши.
— …то через пятнадцать секунд на экране появится информация.
Мы подождали.
Через пятнадцать секунд на экране появилось: «ЗДОРОВО, ДУБИНА!»
— Если бы я дал команду начать через два часа, а не через пятнадцать секунд, — продолжал объяснения Лассе, — то машина вывела бы на экран «ЗДОРОВО, ДУБИНА!» в четверть второго. Сам я в это время мог бы спокойно сидеть в «Диккенсе» за бутылкой вина. Кстати, машина может без проблем выполнять и более сложные задачи, например, выбрать из памяти какой-нибудь файл, а потом снова зафиксировать его.
Он пустился в пространные объяснения, из которых я мало что понял. Тем не менее суть была мне ясна.
Человек, обладающий самыми элементарными познаниями в программировании, мог убить Бьёрна Уле Ларсена, скажем, часов в пять-шесть, а потом запустить простенькую программу, данные которой свидетельствовали бы, что убитый был еще жив в восемь пятьдесят. Ведь программа, выполненная самой машиной, все равно была бы зарегистрирована и заложена в память электронного чудовища, называемого VAX’om и представляющего собой мозг электронно-вычислительного центра Тронхеймского университета.