Более 2 миллионов людей играют в наши игры каждый месяц. Когда вы запускаете сайт с таким большим числом посетителей, играющих в ваши игры, вы можете столкнуться с некоторыми индивидуумами, которые попытаются найти способ подделать ваш список рекордов. Используя некоторые неэтичные средства, они могут просмотреть код ActionScript в игре и найти URL, на который указывает игра, когда представляет рекордный счет. На основе этой информации они могут легко создать что-то, что будет подставлять поддельные счета в список рекордов. Список рекордов, конечно, не знает разницы между поддельными счетами и реальными счетами. Это ведет к действительно раздражающей проблеме: мошенники. Если есть пути для плутовства, они, в конечном счете, будут найдены. Это случается не так редко, как вы можете подумать. (Например, списки рекордов подделывались на другом [Flash 4] игровом сайте, владельцем которого я также был.) Поскольку эта проблема не исчезает, вы просто должны предпринять несколько дополнительных шагов, чтобы сделать обман более трудным.
В файлах, включенных в эту книгу, мы немного увеличили защиту списка рекордов: Мы включили шифрование. Это, пожалуй, не очень надежно – все подобные системы могут быть взломаны – но это потребует от хакера больших усилий, так что эта система будет взломана с меньшей вероятностью. Мы шифруем все во Flash, прежде чем послать информацию на сервер. Когда сервер получает информацию, он дешифрует ее и использует. Хороший алгоритм шифрования требует ключа для шифрования или дешифрования. У нас есть функция шифрования, принимающая параметром ключ, который может быть любой строкой по нашему выбору, такой как «ЭтоНашКлюч» и строку, которую мы хотим зашифровать. Функция возвращает зашифрованную информацию, которая имеет уникальный ключ, и вы можете затем послать ее на сервер. Для дешифрования информации, серверу нужен тот же ключ, который вы использовали для шифрования в первый раз.
Вы можете подумать, «Это выглядит довольно безопасно; почему же это может быть взломано?» Ладно, мы храним как алгоритм шифрования, так и ключ в файле игры