– Очевидно, нечто подобное вы делали уже много раз, – заметил Леттке.
– Довольно часто, – подтвердила она. – Да и вообще, у меня такое чувство, словно я уже имела дело со всеми компьютерами в Америке.
– Но с этим еще нет, верно?
– Нет, но с аналогичными. У большинства компьютеров ABM есть уязвимости, хочу посмотреть, есть ли они здесь.
– А что вообще означает ABM?
– American Business Machines, – ответила она. – Одна из старейших американских фирм в области компьютеров. Начинали в качестве поставщиков перфокарт для аналитических машин, лет семьдесят назад или около того.
– И что это за уязвимость?
– Вот здесь, – сказала она, и на экране появился документ. – Файл доступен при входе в качестве гостя.
Леттке наклонился и прочел:
administrator||8a0dc650705e1c ||all guest ||d84295080b64bb ||none
miller-john-d ||040b1001b84283 ||user- level-2
И так далее, просто бесконечная последовательность бессмысленных строк. Где-то среди них его привлекло внимание следующее:
oppenheimer-j-robert ||b58b39abcb72e7 ||user-level-1
– Что это такое? – спросил он.
– Список пользователей, имеющих доступ к этому компьютеру, – пояснила она, схватив карандаш и указав его кончиком на верхнюю строку. – Первая запись – это имя пользователя, за ним следуют две вертикальные черты в качестве разделителя. Вторая запись – односторонний зашифрованный пароль, третья запись содержит информацию о том, что данному пользователю разрешено делать на этом компьютере – так называемые права.
– Пароль? – повторил Леттке. – Они записывают пароли в общедоступный документ?
– К сожалению, не совсем так. Как я уже сказала, эти пароли односторонне зашифрованы.
– Что это значит?
– Одностороннее шифрование – это метод преобразования, который работает очень быстро и легко в одном направлении, а в другом, наоборот, чрезвычайно сложно. – Она ненадолго задумалась. – Вы, наверное, помните прежние печатные телефонные книги? Если вы ищете номер по имени, то это легко сделать, но если у вас только номер, к которому вы хотите найти имя, то это практически невозможно, потому что придется просмотреть всю телефонную книгу, номер за номером.
Леттке вспомнилось, как он однажды на самом деле пытался так поступить, но потерпел неудачу.
– Понимаю.
– Здесь принцип таков: вводимый вами пароль преобразуется с помощью этой функции и сравнивается со второй записью в соответствующей строке. Если обе записи идентичны, вы получаете доступ. – Она слегка постучала карандашом по стеклу экрана. – Судя по тому, что записи длиной в четырнадцать символов и состоят только из цифр и букв от A до F, мы знаем, что они используют старую добрую схему Жозефины Зеелиг – но не знаем, с каким ключом.
Леттке следил за тем, как она закрыла документ, а потом скопировала его на свой компьютер.
– И как это нам сейчас поможет? – спросил он наконец, все еще не понимая, что она задумала.
Она открыла свою копию документа и указала на вторую строку.
– Я не знаю ключа, но знаю, что он преобразует пароль «guest» вот в это, – произнесла она, прикоснувшись кончиком карандаша к последовательности символов d84295080b64bb. – И у меня есть программа, которая может попробовать схему Жозефины Зеелиг со всеми ключами от «aaa» до «zzz», пока она не найдет ключ, который даст этот результат для «guest».
– А, – невольно вырвалось у Леттке. – И так вы сможете расшифровать другие пароли?
Она покачала головой.
– Тоже нет. Но я смогу сделать по-другому. У меня есть правильный ключ и можно попробовать ввести все пароли, пока не получу права администратора.
– Опять от «aaa» до «zzz»?
– Да. Но только содержащие больше трех символов. Если бы их было три, взломать можно в мгновение ока.
Звучало как-то не очень хорошо.
– И… сколько это все займет времени?
Она пожала плечами.
– Сложно сказать. Несколько дней, наверное.
– Несколько дней? – Ему пришлось сдержать себя, чтобы не закричать. – Не позднее вечера четверга я должен сдать ключ отсюда!
Она совсем не слушала его, целиком сосредоточившись на правильности набора «guest» и той длинной последовательности символов. Затем запустила поиск. Выглядело впечатляюще: буквы мчались быстрее, чем успеваешь следить.
– И что теперь? – спросил он, когда она встала.
– Теперь оставляем работать, – ответила она. – И время от времени проверяем, не нашлось ли чего.
* * *
Вышло именно так, как Хелена и боялась: когда они поднялись наверх, Леттке сказал, что они могут использовать время ожидания и вместе взглянуть на профили расхода энергопотребления; в конце концов, Адамек рассчитывал получить к вечеру первые результаты.
– Да, – покорно ответила она, в то время как ее мысли уже кружились как сумасшедшие в поисках способа отвлечь его: ей нужно как-то склонить его к тому, что она может заняться этим и в одиночку и посмотреть, насколько велика потенциальная опасность в таком подходе.
Впрочем, она напрасно переживала: Леттке был погружен в свои мысли и не в состоянии сосредоточиться на скучных диаграммах.
– Они все выглядят примерно одинаково, – повторил он несколько раз, и его взгляд становился все более остекленевшим. – Электричество необходимо людям и когда темно, и в полдень для приготовления пищи. Вот и все. Здесь вообще ничего невозможно обнаружить.
Хелена видела немало примечательных различий, но, конечно, остерегалась противоречить ему.
– А что, если за это время ключ изменится? – вдруг спросил он. – В Университете Беркли, имею в виду.
– Будет плохо, – ответила Хелена. – Но так никто не делает.
Леттке посмотрел на часы.
– Час и десять минут. Как думаете, стоит ли уже пойти вниз?
Хелена пожала плечами. Она сильно бы удивилась, если ключ найдется так легко, но ответила:
– Не помешает.
И вот они опять спустились вниз, увидели, что программа продолжает работать, и снова отправились наверх. На это ушло еще около получаса.
– Скажу-ка я Адамеку, что с профилями расхода электричества все не так-то просто, – наконец произнес Леттке, когда вечер уже приближался. – И тогда завтра вам нужно будет для сравнения определить оборудование разных домохозяйств – кто готовит на электричестве, кто использует газ, у кого есть стиральная машина, у кого посудомоечная и так далее. Количество комнат тоже имеет значение из-за освещения. Ну и, конечно, количество людей, зарегистрированных по одному адресу. Может быть, нам это поможет.