Метаданни
Данни
- Включено в книгата
-
01.01.00
Знакът на хилядолетието - Оригинално заглавие
- 01.01.00, 1999 (Пълни авторски права)
- Превод от английски
- Крум Бъчваров, 1999 (Пълни авторски права)
- Форма
- Роман
- Жанр
- Характеристика
- Оценка
- 3,9 (× 7 гласа)
- Вашата оценка:
Информация
Издание:
Автор: Р. Дж. Пинейро
Заглавие: 01.01.00
Преводач: Крум Бъчваров
Година на превод: 1999
Език, от който е преведено: английски
Издание: първо
Издател: ИК „Бард“ ООД
Град на издателя: София
Година на издаване: 1999
Тип: роман (не е указано)
Националност: американска
Редактор: Иван Тотоманов
ISBN: 954-585-055-8
Адрес в Библиоман: https://biblioman.chitanka.info/books/767
История
- — Добавяне
2
Системата се зареди и Сюзан Гарнет стартира програма, за да влезе в информацията на всички паяжини.
„Търсенето завършено. Желаете ли да разгледате съдържанието? Да/Не“
Сюзан отговори утвърдително. Скриптът автоматично прочете адреса на всяка паяжина и го свърза с бинарен код, играещ ролята на ключ за достъп, който й позволяваше да види съдържанието му. Както подозираше, във всеки от тях имаше само по един файл. Оригиналният вирус бе проникнал във всеки от стотиците й софтуерни капани, за да зарази файловете, примамки. В момента на заразяването капанът автоматично беше правил копия на файловете и ги бе изолирал в отделна директория. Самият вирус се беше самоунищожавал.
Сюзан сравни копие на оригиналния, незаразен файл примамка със заразения вариант в паяжините. Разликата даваше пасивно копие на самия вирус. Тя го отдели в специална директория, която играеше ролята на колба, в случай че поради някаква непредвидена причина той реши да се разбуди. Трябваше да внимава. Очевидно си имаше работа с невероятно опитен хакер, навярно един от най-добрите на света.
Програмата започна да сравнява вирусите, като търсеше разлики в сигнатурите им. Процесът отне по-малко от секунда. Сюзан прочете резултатите на екрана.
Тя провери сигнатурите на вирусите от първите шест паяжини за няколко минути. Невероятната сложност на вируса я накара да затаи дъх. Прегледа още три екрана със сигнатурни файлове и се върна към началото. Подчертаванията под отделните битове в даден байт посочваха разликите между вирусите, заловени във всяка паяжина.
— Заповядай — каза Трой Рийд зад гърба й и постави на бюрото пред нея чаша кафе.
— Благодаря. — Тя отпи глътка. Черно и много горещо.
— Откри ли нещо?
Сюзан остави чашата до подложката на мишката и посочи екрана.
— Лоша работа. — Трябваше й минута, за да му обясни подробностите.
— По дяволите — изруга Рийд. — Сигнатурите на вирусите във всяка от паяжините са различни.
— Да — потвърди тя. Вирус, мутирал толкова много между отделните си копия, почти не можеше да се залови, особено с толкова дълга сигнатура, защото възможните комбинации възлизаха на астрономическо число. Въпреки че положението изглеждаше безнадеждно, Сюзан не се ядосваше. — Няма начин да го изчистим, даже да знаехме принципа на мутиране.
— Ами ако напишем формула, за да се справим с всички възможни мутации?
Тя поклати глава и надраска няколко цифри на лист хартия.
— Няма да се получи. Виж.
1 байт = 8 бита 7 байта = 56 бита Възможни комбинации = 256 или 7.2 x 1016
— Астрономическо число — измърмори тя. — Това са… колко е дълго това число… един трилион, повторен седемдесет и два милиарда пъти.
— Ясно — въздъхна Рийд.
— Почти безкрайно е. Естествено, мога да напиша програма, която ще убие неколкостотин мутации, но няма начин да унищожим всички. Те постоянно мутират и не можем да им попречим да изпълняват целта си… което ме навежда на следващата стъпка. Да видим каква част ще успеем да откъснем от основното тяло на вируса. Възможно е това да ни даде ключа към проблема.
Сюзан активира софтуер, който използваше единиците и нулите, разбираеми за всички компютри — също известни като бинарен или машинен код — и ги представяше като серии от инструкции и данни, разбираеми за човек.
На екрана се появи нов надпис:
— Не е преведено много — отбеляза тя и отпи от кафето.
— Седем процента е по-добре от нищо — отвърна Рийд, докато Сюзан отговаряше отрицателно на компютъра.
Миг по-късно по екрана плъзнаха къси части от кодове и данни, вмъкнати между дълги серии машинни кодове, които програмата не можеше да преведе. Тя спря на първия текст.
— Какво е това? — попита Рийд и посочи кодовете. Можеше да го прочете само Сюзан — и двамата помощници, които беше обучила, за да има кой да работи, след като се самоубие.
В продължение на минута тя разглежда информацията.
— Тази част от кода може да се изрази по следния начин. — Сюзан се пресегна за бележника и химикалката си.
10 START 20 А = PREV 30 А = А + 1 40 IF А > 86400 THEN GOTO 70 50 PAUSE 1 SECOND 60 GOTO 30 70 CONTINUE EXECUTION
После прибави:
— Ако засега приемеш, че стойността на PREV е нула, тогава А стартира като нула и започва да се увеличава с по една единица. Докато стойността на А е по-малка или равна на осемдесет и шест хиляди и четиристотин, вирусът остава в границите на съответния цикъл и не може да продължи нататък в програмата. Всеки цикъл продължава по една секунда.
— Какво определя стойността на PREV?
— Не зная. Може би нещо по-нататък във вируса. — Тя вкара още няколко команди и получи сегашната стойност на А. Беше 86400, което означаваше, че цикълът е завършен и вирусът е продължил с остатъка от кода си.
— Значи този код е нещо като софтуерна забавяща верига, така ли?
— Точно така. — Сюзан се пресегна за калкулатора си, набра няколко цифри, за всеки случай повтори изчислението и после вдигна поглед към Рийд. — Забавянето е определено на осемдесет и шест хиляди и четиристотин секунди, с други думи, двайсет и четири часа.
— Това обяснява защо се задейства само веднъж на ден.
Тя кимна.
— След изпълнението на цикъла сигурно някак се пренастройва и чака до следващия път.
Сюзан продължи, прескочи много редове машинен код, който програмата не можеше да преведе, и спря на следващите кодове.
— Разбираш ли ги?
Тя кимна, докато пишеше в бележника си:
START WAKE = MASTER. DATE IF WAKE = 12.12.99 THEN GOTO FREEZE.20 IF WAKE = 12.13.99 THEN GOTO FREEZE.19 IF WAKE = 12.14.99 THEN GOTO FREEZE.18 IF WAKE = 12.15.99 THEN GOTO FREEZE.17 IF WAKE = 12.16.99 THEN GOTO FREEZE.16 IF WAKE = 12.17.99 THEN GOTO FREEZE.15 IF WAKE = 12.18.99 THEN GOTO FREEZE.14 IF WAKE = 12.19.99 THEN GOTO FREEZE.13 IF WAKE = 12.20.99 THEN GOTO FREEZE.12 IF WAKE = 12.21.99 THEN GOTO FREEZE.11 IF WAKE = 12.22.99 THEN GOTO FREEZE.10 IF WAKE = 12.23.99 THEN GOTO FREEZE.09 IF WAKE = 12.24.99 THEN GOTO FREEZE.08 IF WAKE = 12.25.99 THEN GOTO FREEZE.07 IF WAKE = 12.26.99 THEN GOTO FREEZE.06 IF WAKE = 12.27.99 THEN GOTO FREEZE.05 IF WAKE = 12.28.99 THEN GOTO FREEZE.04 IF WAKE = 12.29.99 THEN GOTO FREEZE.03 IF WAKE = 12.30.99 THEN GOTO FREEZE.02 IF WAKE = 12.31.99 THEN GOTO FREEZE.01 IF WAKE = 01.01.00 THEN CONTINUE MAIN EXECUTION
Тя кимна, потърси следващата операция и нахвърли превода:
10 FREEZE.13 20 А = 0 30 EXECUTE LOCKKEYS 40 EXECUTE DISPLAYLOCK 50 A = A + 1 60 IF A > 13 GOTO 90 70 PAUSE 1 SECOND 80 GOTO 50 90 EXECUTE RELEASE KEYS 100 EXECUTE DISPLAY RELEASE 110 PREV = 13 RETURN
— Ето къде значи е дефиниран PREV — отбеляза Рийд и потърка брадичката си. Разнесе се звук като от шкурка.
— Да — потвърди Сюзан и кликна с мишката. — Това позволява на вируса всеки ден да се активира в осем и една минута местно време. Адски изобретателно.
Тя прегледа файла до края и не откри други преведени откъси.
— Е, знаем само, че вирусът се задейства веднъж дневно по едно и също време, в осем и една минута вечерта — каза Сюзан, като плъзна поглед по двете страници с бележките си. — Започнал е вчера, на дванайсети декември, и е продължил двайсет секунди. Днес е продължил деветнайсет. Тази информация отговаря на откритията във вируса.
Рийд кимна и намести с показалец очилата си.
— Броенето започва двайсет дни преди края на хилядолетието с блокиране, продължаващо двайсет секунди. После деветнайсет секунди на деветнайсетия ден преди първи януари.
— И така нататък. Блокиращият алгоритъм също е сравнително елементарен. Той заключва клавишите и дисплея, докато броячът на вируса отмери съответното време в зависимост от деня. И не знаем нищо повече.
— Страхотно. Значи потвърждаваме онова, което вече подозирахме, но нямаме представа какво ще се случи на първи януари.
— В общи линии е така.
— Как да открием откъде е дошъл?
Тя поклати глава.
— Досега си имах начин. Хващам вируса в капан, анализирам го, пускам антидота по Интернет и в деветдесет и девет процента от случаите това ме отвежда при източника. Така залових и Кървавата брадва. Този път обаче не разполагам с нищо. Имам чувството, че утре моите паяжини ще дадат същия резултат. А после и вдругиден.
— Някакви съвети от нашите хакери?
Сюзан сви рамене.
— Всички компютри в мрежата са блокирали. Няма нищо, което да не знаем.
— Ами Кървавата брадва?
Сюзан Гарнет се вцепени, после бавно завъртя глава към шефа си.
— Какво имаш предвид?
— Смяташ ли, че е възможно да знае нещо?
В гърлото й заседна буца. Тя преглътна. Стомахът й се сви.
— Не сме сключвали сделка с него, забрави ли? Този тип е…
Рийд постави ръка на рамото й. Изражението му омекна. С наболата си бяла брада, кръгло лице и едро тяло приличаше на Дядо Коледа.
— Знам какво е направил, Сю. Нали аз убедих директора да не сключва сделка, спомняш ли си?
Сюзан успя да кимне.
— Всички искаме това копеле да изгние в затвора. Но този случай не е по силите ни. Светът на модерната техника е в най-уязвимия си момент от историята. Ясно ти е, че когато часовникът превърти от хиляда деветстотин деветдесет и девета на двехилядната, ще наизскочат цял куп неочаквани проблеми. Точно сега нямаме нужда от някакъв глобален вирус. Това е въпрос на национална сигурност. Трябва да открием какво ще направи това нещо и да измислим как да го спрем. А имаме само осемнайсет дни.
Погледът на Сюзан Гарнет блуждаеше в далечината. Тя си спомняше за последния път, когато видя Ханс Кървавата брадва. Беше закопчан в белезници и двама полицаи го извеждаха от съдебната зала след като съдебните заседатели го обявиха за виновен по всички обвинения и го осъдиха на доживотен затвор заради убийството на нейното семейство, както и на още трима души в района на Вашингтон, пешеходци, прегазени от автомобили. Копелето си бе получило заслуженото и не само щеше да излежи остатъка от дните си във федерален затвор, но и нямаше право на достъп до компютърна система. Последното наказание беше може би най-тежкото, защото отнемаше на хакера смисъла на живота му, все едно да лишиш музикант от любимия му инструмент, пилот от самолета или художник от платното и боите — завинаги.
Докато съдията произнасяше това неочаквано допълнение към присъдата, Сюзан се вгледа в сините очи на Кървавата брадва. Абсолютно спокойното му до този момент лице пребледня. Ако не бяха полицаите от двете му страни, хакерът щеше да се свлече на пода. Съзнанието, че му е причинила толкова силно страдание, най-после уталожи копнежа й за мъст. А сега Рийд предлагаше да сключат сделка с него!
— Сю? Добре ли си?
— Разбираш какво ще поиска, нали? — рязко отвърна тя. — На това копеле не му пука от доживотната присъда. И без това е прекарал по-голямата част от живота си в някаква тъмна стая. Вече е бил отшелник. Най-страшният му кошмар е, че е компютърен наркоман, а никога повече няма да получи дрогата си. Отнехме бонбоните на детенцето и това сигурно го побърква. Това е истинското наказание на Ханс Кървавата брадва за убийството на семейството ми. Ако го помолиш да ни помогне, в замяна ще поиска достъп до хардуер и софтуер. Сериозно ли смяташ да се съгласиш?
Трой Рийд си свали очилата, дъхна върху стъклата и замислено ги остави в скута си.
— Ако е в състояние да ни помогне да попречим на вируса да изпълни целта си — след малко каза той, — ще обмисля възможността да му позволя известен достъп под постоянен контрол, за да сме сигурни, че няма да направи някоя беля. Като оставим личните въпроси настрани, според мен това е честна сделка в замяна на жизненоважна информация по случая. С нищо не се различава от предишните сделки на ФБР с осъдени престъпници.
Сюзан скръсти ръце.
— А обмислял ли си възможността именно Кървавата брадва да е организирал всичко, като застраховка в случай че някога го заловят? Прекалено голяма случайност е, че само няколко месеца след осъждането му този вирус ненадейно изскочи от нищото. И ето че сега сме готови да облекчим присъдата му в замяна на помощ за един от собствените му вируси.
Рийд сбърчи лице, после едва не се засмя.
— Трябва да ти го призная, Сю. Определено знаеш как да пуснеш мухата на човек. Наистина ли смяташ, че би могъл да го е направил?
— Той е блестящ… не, той е несравним. Кървавата брадва е единствен по рода си. Спокойно може тайно да е работил месеци наред, даже години, за да сътвори големия си шедьовър, вирус, с който е способен да се справи единствено той. И по този начин да принуди властите да му предложат сделка.
— По дяволите! Започвам да си мисля, че си напипала нещо.
— Възможно е дори това да е само един от много вируси, които да е скрил на различни места в Интернет. Навярно има намерение да ги пуска един по един, за да ни принуди да преговаряме. След година или още по-скоро може да ни накара и да го освободим от затвора.
— Интересна и страшничка теория. Но… в състояние ли си да я докажеш?
— Има само един начин да разберем — отвърна тя и допи кафето си. — Само един начин.