Любой компьютерный инженер смог бы написать программу и сделать то, что сделали мы, поняв, что от него требуется. Самой сложной частью работы было создание быстродействующего алгоритма, чтобы всего за несколько секунд вы могли понять, что происходит; если создавать такой алгоритм недостаточно тщательно, он мог работать несколько часов перед тем, как выдать решение.
Мы все были хорошими программистами, и работа была существенной частью нашей жизни, поэтому мы все сделали правильно. Но это было совсем не просто».
Я помню, как аналогичную ошибку сделал программист компании Norton (до того, как Symantec купил их), разрабатывавший продукт Diskreet — приложение, которое дает пользователю возможность создавать шифрованные виртуальные драйвы. Разработчики некорректно построили алгоритм — а может, даже сделали это намеренно, и это привело к уменьшению длины ключа шифрования с 56 до 30 бит. Государственный стандарт шифрования использует 56-битный ключ, который считается практически не взламываемым, поэтому Norton гарантировал своим пользователям ощущение защищенности. Из-за ошибки программистов на самом деле данные пользователя шифровались при помощи ключа в 30 бит, а не 56. Даже в те годы 30-битный ключ можно было взломать простым «методом грубой силы» (так называется метод последовательного перебора вариантов —
Параллельно с работой над компьютерной программой, которая позволила бы им победить новый игральный автомат, ребята заставляли Алекса думать над новой моделью поведения, чтобы не приходилось постоянно бегать к телефону. Ответом стала страница из книги «Endaemonic Pie» — карманный компьютер. Алекс разработал систему, сделанную из миниатюрного компьютера, который Майк и Марко отыскали в каталоге, В этой системе управляющая кнопка была упрятана в ботинок, а для приема сигнала использовался виброзвонок от сотового телефона. «Нам пришлось немало поработать над тем, чтобы построить систему на основе маленького чипа и маленькой памяти», — рассказывает Алекс. « М ы создали прекрасную эргономичную систему, которая помещалась в ботинке». Вероятно, под словом «эргономичный» он подразумевает то, что его устройство было настолько маленьким, что не натирало ногу при ходьбе!
НОВАЯ АТАКА
Началась отработка новой схемы работы, и это был достаточно нервный процесс. Они избавились от необходимости бегать к телефону перед каждым выигрышем. Но даже после многочисленных тренировок в домашних условиях, «работа» в реальных условиях происходит перед огромной аудиторией, существенная часть которой очень подозрительно к вам относится.
На этот раз программа была разработана так, что ребята могли сидеть у автомата, не отходя от него, осуществляя целую серию небольших менее подозрительных выигрышей. Алекс и Майк вспоминают некоторые непростые моменты в процессе «работы».
С и г н а л от э т о й кнопки ш е л в компьютер, лежащий в кармане. Д л я точного определения места, в котором находился генератор случайных чисел, надо было дождаться выброса восьми карт. П я т ь карт автомат выбрасывал для начала игры, а следующие три мы получали, попросив его заменить три карты для продолжения игры».