Способ и устройство для защиты операционных данных игрового устройства
Иллюстрации
Показать всеИзобретения относятся к средствам защиты управляющих и операционных кодов и данных игрового автомата. Техническим результатом является повышение надежности функционирования игровых автоматов. Способ включает получение операционного кода игрового устройства, зашифрованного в процессе симметричного шифрования с использованием первого секретного ключа, предоставления зашифрованного кода в игровое устройство, дешифрирования кода с использованием первого секретного ключа, сохранения дешифрированного кода в игровом устройстве и использования дешифрированного кода для работы игрового устройства. Игровое устройство включает в себя главный игровой контроллер, имеющий ассоциированную память, процессор для выполнения кода и модуль защищенного доступа, имеющий ключ дешифрирования, ассоциированный с ним. 3 н. и 12 з.п. ф-лы, 4 ил.
Реферат
ОБЛАСТЬ ТЕХНИКИ
Настоящее изобретение относится к управляющим кодам или операционным данным игрового устройства, а более точно, к способам и устройствам для защиты указанных кодов и данных.
ПРЕДПОСЫЛКИ СОЗДАНИЯ ИЗОБРЕТЕНИЯ
Игровые устройства широко известны и имеют множество конфигураций. Такие устройства включают в себя устройства, называемые игорными или "видео" автоматами. В общем случае, такие устройства приспособлены для предоставления игры игроку для игры. Что касается "игровых" устройств, то такие устройства обычно приспособлены для запроса игрока сделать ставку, для участия в игре и для выплаты выигрыша игроку, если игрок выиграл игру.
Такие игровые устройства обычно управляются игровыми управляющими кодами и работают с ассоциированными данными. Желательно, чтобы существовала гарантия защищенности этих кодов и данных. Очевидно, что подделка кодов может вызвать серьезные последствия. Например, злоумышленник может попытаться изменить управляющие коды игрового устройства таким образом, что победы в игре будут регистрироваться с большей частотой, или выигрыш будет выплачиваться за события, которые обычно не являются выигрышными. Вне зависимости от метода таких действий, злоумышленник обычно пытается сделать так, чтобы коды позволили злоумышленнику вводить в заблуждение игровое устройство и, таким образом, получать деньги.
Проблема с поддержанием защиты игровых управляющих кодов и других данных заключается в том, что во многих случаях желательно предоставлять коды или данные в игровое устройство не только в защищенном формате, предназначенном только для чтения. Например, поскольку на конкретном игровом устройстве можно играть в различные игры или различные элементы устройства могут обновляться, то во многих случаях игровое устройство приспособлено для приема новых управляющих кодов или других данных. Однако, как указывалось выше, необходимо иметь гарантию, что коды или данные, предоставляемые в устройство, являются защищенными.
СУЩНОСТЬ ИЗОБРЕТЕНИЯ
Заявлены способы и устройства для защиты управляющих и операционных кодов и данных игрового устройства.
В одном из вариантов осуществления способа управляющие коды или операционные данные шифруются с использованием секретного ключа симметричной схемы шифрования/дешифрирования. Указанный зашифрованный код предоставляется в игровое устройство. В одном или более вариантах осуществления изобретения зашифрованный код хранится в памяти игрового устройства. В качестве альтернативы код передается в игровое устройство.
Игровое устройство должно выявить зашифрованный код и затем дешифрировать его с секретным ключом симметричной схемы шифрования/дешифрирования. В одном из вариантов осуществления изобретения при инициировании работы игрового устройства определяют (локализуют) устройство или элемент дешифрирования, определяют (локализуют) зашифрованный код и затем устройство дешифрирования используют для дешифрирования кода.
После дешифрирования код сохраняется в памяти игрового устройства для использования в работе игрового устройства. В одном из вариантов осуществления изобретения код содержит операционный код, позволяющий игровому контроллеру игрового устройства предоставить одну или более конкретных игр игроку. В другом варианте осуществления изобретения код содержит данные для использования в предоставлении игры или для какой-либо другой операции с игровым устройством. Указанные данные могут содержать аудио и видеоданные.
В одном из вариантов осуществления изобретения после того, как код дешифрирован, он проверяется (подвергается верификации) перед сохранением или использованием. В одном из вариантов осуществления изобретения верификация включает в себя верификацию определенных маркерных строк или сигнатур.
Один из вариантов осуществления изобретения включает в себя игровое устройство для реализации способа, соответствующего настоящему изобретению. В одном из вариантов осуществления изобретения игровое устройство включает в себя игровой контроллер, имеющий процессор и связанную с ним память. Игровой контроллер также включает в себя модуль защищенного доступа. Ключ дешифрирования ассоциирован с модулем защищенного доступа.
В одном из вариантов осуществления изобретения работа игрового устройства включает в себя этап поиска модуля защищенного доступа. Затем модуль защищенного доступа производит поиск для получения зашифрованного кода. Модуль защищенного доступа дешифрует код и сохраняет его в памяти.
Согласно настоящему изобретению весь или по существу весь код или данные зашифрованы, в результате чего код или данные являются нечитаемыми без предварительного дешифрирования. После дешифрирования код или данные могут быть переданы, сохранены и т.п. с небольшим риском подделки неавторизованной стороной. Ключ дешифрирования ассоциирован с модулем защищенного доступа и, таким образом, является защищенным. Таким способом управляющий код или операционные данные игрового устройства поддерживаются защищенными.
Другие задачи, признаки и преимущества настоящего изобретения по сравнению с предшествующим уровнем техники поясняются в последующем детальном описании, иллюстрируемом чертежами.
ОПИСАНИЕ ЧЕРТЕЖЕЙ
Фиг.1 - возможный пример среды использования устройства и способа, соответствующих настоящему изобретению.
Фиг.2 - блок-схема контроллера игрового устройства для реализации способа согласно настоящему изобретению.
Фиг.3 - блок-схема, иллюстрирующая способ согласно варианту осуществления настоящего изобретения.
Фиг.4 - блок-схема, иллюстрирующая конкретную реализацию способа по Фиг.3.
ДЕТАЛЬНОЕ ОПИСАНИЕ ИЗОБРЕТЕНИЯ
Изобретение представляет собой способ и устройство для защиты управляющего кода или других данных для использования в игровом устройстве. В нижеследующем описании приведены различные конкретные детали для обеспечения более детального описания настоящего изобретения. Тем не менее, специалистам в данной области техники будет очевидно, что настоящее изобретение может быть применено без указанных конкретных деталей. В других случаях хорошо известные элементы не описываются детально для того, чтобы не затенять сущность изобретения.
В принципе, изобретение представляет собой способ и устройство для предоставления защищенного кода в игровое устройство. Как это используется в настоящем описании, термин "код" в общем случае обозначает команды и информацию в любой из множества форм для использования при управлении одной или более функциями игрового устройства. Этот код может содержать исполняемый управляющий код для управления работой игрового устройства, либо одного или более его компонентов, например, для предоставления игры и управления различными периферийными устройствами/элементами игрового устройства, и/или может содержать рабочую информацию, такую как видеоданные (например, для генерации изображений) или звуковые данные (для использования при генерации звука) для использования в процессе предоставления игры. Способ и устройство согласно данному изобретению могут быть реализованы в самых различных средах в общем случае, включающих в себя компьютерную среду, например устройства для предоставления игр с электронным или электромеханическим управлением. Фиг.1 иллюстрирует предпочтительную среду, в которой применимо настоящее изобретение, а именно электронное игровое устройство 20. Игровое устройство 20, приведенное на Фиг.1, показано как один из примеров устройств, в которых может применяться настоящее изобретение. Как показано, электронное игровое устройство 20 включает в себя корпус 22, содержащий дисплей 24. Дисплей 24 может содержать видеодисплей или одно или более механически или электромеханически управляемых устройств, таких как барабаны. Дисплей 24 является одним из периферийных устройств игрового устройства 20.
В одном из вариантов осуществления указанного игрового устройства 20 игроку разрешается вести игру только после внесения ставки. Чтобы поставить ставку, игрок сначала должен предоставить кредит в денежной форме или в виде других элементов стоимости, как это требуется оператором игры. В показанном варианте осуществления игровое устройство 20 включает в себя монетоприемник 26 для приема одной или более монет, жетонов и т.п. В общем случае монетоприемник содержит другое периферийное устройство и может иметь, по меньшей мере, функцию верификации (проверки достоверности) предоставленных монет и индикацию суммы принятых монет. Устройство 20 также включает в себя устройство 28 проверки банкнот для приема бумажных денежных знаков, квитанций и т.п. Устройство 28 проверки банкнот является другим периферийным устройством и может иметь, по меньшей мере, функцию проверки достоверности предоставляемых банкнот и индикации суммы предоставленных банкнот.
После того, как игрок предоставил необходимый кредит, игроку разрешается делать ставку. В одном из вариантов осуществления изобретения устройство 20 включает в себя кнопку 30 ставки для указания желаемой для внесения ставки. После внесения ставки игроку разрешается начать игру. В рассматриваемом варианте осуществления изобретения игра заключается во вращении отображаемых на дисплее барабанов. Игрок нажимает кнопку 32 вращения, и на дисплее 24 отображается имитация вращающихся барабанов.
Игроку может быть выплачен выигрыш, если результат игры является конкретным, заранее определенным результатом, отображенным на дисплее 24. Указанные выигрыши могут выдаваться устройством выдачи монет (не показано) в лоток 34 для монет. В качестве альтернативы выигрыш может быть выплачен игроку в форме квитанции, выдаваемой генератором 36 квитанций.
Множество игровых устройств, подобных показанному, включают в себя устройство 38 считывания карт для считывания информации с карты игрока. Эта информация может быть использована в системе отслеживания игроков, что хорошо известно в данной области техники.
В общем случае, очевидно, что игровое устройство 20, подобное проиллюстрированному, может включать в себя множество периферийных устройств или элементов для реализации игры, как для приема входных данных от игрока, так и для предоставления выходных данных игроку. Эти входные устройства могут включать в себя указанные выше и/или множество других устройств. Очевидно, что настоящее изобретение применимо к игровому устройству 20, такому, как показанное, и игровым устройствам, приспособленным для предоставления множества других игр и конфигурированных множеством других способов. Согласно Фиг.2, в предпочтительном варианте осуществления изобретения, игровое устройство 20 включает в себя компьютерную среду, в которой данные используются для управления работой игрового устройства 20 или каким-либо другим образом предоставляют игру игроку для игры. В одном или более вариантах осуществления изобретения игровое устройство 20 включает в себя главный игровой контроллер 42. Как показано, главный игровой контроллер 42 включает в себя процессор 44 и память для хранения данных. В предпочтительном варианте осуществления изобретения главный игровой контроллер 42 включает в себя память в виде, по меньшей мере, одного устройства 46 массовой памяти для хранения данных. В одном из вариантов осуществления изобретения устройство 46 массовой памяти имеет возможность хранить данные, содержащие операционный код. Хорошо известно, что устройство (устройства) 46 массовой памяти могут включать в себя разнообразные устройства и носители для хранения электронных данных, такие, как жесткий диск, CD ROM, DVD ROM, гибкий диск, магнитная лента и т.п.
В предпочтительном варианте осуществления изобретения память для хранения данных также включает в себя одно или более устройств памяти, обеспечивающих более высокую скорость доступа к данным. В одном из вариантов осуществления изобретения указанная память содержит постоянную память (ПЗУ) 50. Память может содержать множество других устройств хранения и доступа к данным таких, как ОЗУ, динамическое ОЗУ, синхронное динамическое ОЗУ, ОЗУ на объемных магнитных дисках, ПЗУ с групповой перезаписью (флэш ПЗУ). Кроме устройств массовой памяти, таких, как жесткий диск, в одном из вариантов осуществления изобретения главный игровой контроллер 42 включает в себя устройство памяти только для чтения в виде стираемого программируемого ПЗУ (СППЗУ) 52. Как описано ниже, в предпочтительном варианте осуществления изобретения код, разрешающий запуск игрового контроллера, содержится в СППЗУ, тогда как код игры хранится на жестком диске. Конечно, различные коды, включающие в себя код загрузки и код игры, могут сохраняться различными способами с использованием множества устройств хранения данных.
В одном из вариантов осуществления изобретения между главным игровым контроллером 42 и другим устройством предусмотрена линия 48 связи или передачи данных. Другое устройство может включать в себя удаленный сервер или компьютер. Линия 54 передачи данных позволяет осуществить передачу данных в главный игровой контроллер 42 и/или из него. Линия 54 передачи данных может включать в себя проводную или беспроводную линию связи, например, Ethernet, Token Ring, Firewire® и т.д. Как указывалось выше, линия 54 передачи данных может быть полезна при передаче информации сопровождения игрока или аналогичной информации, относящейся к игре или игровому устройству в удаленное устройство.
Как хорошо известно, соответствующие контроллеры и устройства ввода/вывода предусмотрены для обеспечения передачи данных в процессор 44 главного игрового контроллера 42 и из него. В одном или более вариантах осуществления изобретения для этих целей предусмотрена, по меньшей мере, одна шина 56. В одном или более вариантов осуществления дополнительные аппаратные средства и/или программное обеспечение могут быть предусмотрены для обеспечения связи с главным игровым контроллером через линию 54 связи. Например, данные могут передаваться через линию 54 связи, использующую протокол/архитектуру IEEE-1394. В таком варианте осуществления изобретения с указанной шиной может быть ассоциирована физическая карта, включающая в себя, по меньшей мере, один порт. Данная карта может включать в себя аппаратные средства и/или программные средства, реализующие протокол IEEE-1394, что включает в себя физический уровень, уровень соединения и другие уровни, как это определено указанным протоколом. Порт может быть приспособлен для подключения к сетевому проводу или кабелю. Таким способом данные могут передаваться по линии 54 связи от контроллера 42 в удаленное местоположение, либо наоборот.
Как показано, одно или более периферийных устройств 60 ассоциированы с главным игровым контроллером 42. Периферийные устройства 40 могут включать в себя, без каких-либо ограничений, дисплей 24, монетоприемник 26, устройство 28 проверки банкнот, генератор 36 квитанций и устройство 38 считывания карт, входящие в состав игрового устройства 20, показанного на Фиг.1. Для специалиста в данной области техники будет очевидным, что периферийные устройства 60 могут не включать в себя все описанные устройства и могут включать в себя множество других устройств. Между каждым из периферийных устройств 60 и главным игровым контроллером 42 существует, по меньшей мере, одна линия 58 связи или передачи данных. В одном из вариантов осуществления изобретения линия 58 связи позволяет передавать данные между процессором 44 главного игрового контроллера 42 и каждым из периферийных устройств 60 через системную шину 56 главного игрового контроллера 42. Указанная линия связи может включать в себя проводной или беспроводной канал связи.
В предпочтительном варианте осуществления данного изобретения главный игровой котроллер 42 включает в себя модуль защищенного доступа (МЗД) 62. Как более детально описано ниже, предпочтительно МЗД представляет собой вычислительный модуль, способный дешифрировать данные, зашифрованные симметричным способом. В одном из вариантов осуществления изобретения МЗД 62 включает в себя секретный ключ. Такие модули являются доступными, например, от компании Gemplus SA.
Согласно настоящему изобретению, по меньшей мере, часть кода или данных, которые используются для управления игровым устройством или для обеспечения его работы могут быть изменены, например, путем обновления или полной замены. Указанный код или данные могут храниться в памяти, ассоциированной с игровым устройством 20, например, в устройстве 46 массовой памяти главного игрового контроллера 42.
Конфигурация игрового устройства 20, описанная выше, в частности приспособлена для реализации способа защиты управляющих или операционных данных игрового устройства. Указанный способ более детально описан ниже.
Способ согласно настоящему изобретению описан со ссылками на Фиг.3. В одном варианте осуществления изобретения на первом этапе S1 код, предназначенный для предоставления в игровое устройство, шифруется. В предпочтительном варианте осуществления данного изобретения этот этап содержит шифрование всего или по существу всего кода или данных, предназначенных для предоставления в игровое устройство, с использованием ключа симметричной схемы шифрования. Указанные схемы включают в себя Стандарт Шифрования Данных (DES), FEAL, Blowfish и IDEA. Указанные схемы шифрования известны специалистам в данной области техники. В общем случае в этих схемах используется один ключ, и этот ключ применяется как для шифрования, так и для дешифрирования данных. Этот ключ называется "секретным" ключом, поскольку данный ключ должен оставаться неизвестным или секретным как для шифратора, так и для дешифратора, либо, в противном случае, данные могут быть легко дешифрированы. В принципе, ключи, которые применяются для шифрования и дешифрирования, считаются в настоящем описании одним и тем же ключом. Однако, как известно в области техники, относящейся к симметричному шифрованию, не требуется, чтобы ключи были абсолютно идентичными, напротив они могут быть слегка отличающимися друг от друга, но при этом обеспечивать симметричное шифрование/дешифрирование. Как это используется в настоящем описании, если термин "первый ключ", "секретный ключ" или аналогичные термины упоминаются в контексте шифрования и дешифрирования, это означает, что ключи принадлежат к типу, обеспечивающему симметричное шифрование/дешифрирование и, следовательно, могут быть идентичными или иметь тривиальные отличия.
На этапе S2 зашифрованный код сохраняется для последующего доступа и использования в игровом устройстве. Как более детально описано ниже, в одном или более вариантах осуществления изобретения зашифрованный код может храниться на жестком диске, ассоциированном с игровым устройством. В одном или более других вариантах осуществления изобретения зашифрованный код может храниться удаленно вне игрового устройства.
На этапе S3 игровому устройству предоставляется ключ дешифрирования (который может называться первым ключом или секретным ключом). В одном из вариантов осуществления изобретения секретный ключ хранится в МЗД 62 либо встроен в него. В одном или более других вариантах осуществления изобретения секретный ключ может быть предоставлен как часть программного обеспечения игрового устройства.
На этапе S4 секретный ключ, предоставленный игровому устройству, применяется для дешифрирования зашифрованного кода. В предпочтительном варианте осуществления изобретения секретный ключ применяется для дешифрирования кода, зашифрованного симметричным способом. Такие процессы дешифрирования хорошо известны в данной области техники.
На этапе S5 дешифрированный код инсталлируется или каким-либо другим способом исполняется игровым устройством. В одном из вариантов осуществления изобретения дешифрированный код хранится в ОЗУ 50 игрового устройства 20 и используется для управления работой устройства.
Фиг.4 иллюстрирует блок-схему конкретной реализации способа, показанного на Фиг.3 и описанного выше. На этапе S100 создаются или генерируются код или данные, используемые в управлении/работе игрового устройства. Этот этап может содержать, например, создание кода для управления всей работой игрового устройства. В других вариантах осуществления изобретения указанный этап может содержать создание кода для управления только определенными компонентами игрового устройства. Указанный этап может содержать генерацию данных для использования в игровом устройстве в его работе, например, в виде звуковых или видеоданных для использования устройством.
На этапе S101 код или другие данные шифруются. Как описано выше, этот этап предпочтительно содержит шифрование данных в процессе симметричного шифрования с применением секретного ключа. Результат этого этапа представляет собой генерацию зашифрованного кода. Как описано выше, является предпочтительным, чтобы весь код либо, по меньшей мере, основная его часть была зашифрована. Таким способом код не может быть прочтен третьей стороной без предварительной расшифровки.
На этапе S102 зашифрованный код сохраняется для последующего доступа к нему игрового устройства. В одном из вариантов осуществления изобретения зашифрованный код сохраняется в устройстве 46 массовой памяти (таком, как жесткий диск) игрового устройства.
Конечно, в одном или более вариантах осуществления изобретения зашифрованный код может храниться в промежутке времени между моментом его создания и моментом передачи и сохранения в игровом устройстве. Например, код может быть зашифрован на первом компьютерном устройстве и затем сохранен на CD-ROM. Зашифрованный код на CD-ROM может быть перенесен с CD-ROM в устройство 46 массовой памяти игрового устройства, например, через устройство считывания оптических дисков, ассоциированное с игровым устройством.
В одном или более вариантах осуществления изобретения зашифрованный код хранится удаленно от игрового устройства, но является доступным для него. Например, зашифрованный код может храниться на жестком диске, ассоциированном с удаленным компьютерным устройством, сервером и т.п., которое ассоциировано с игровым устройством 20 посредством линии связи, такой как линия 54 связи, описанная выше.
В одном или более вариантах осуществления изобретения зашифрованный код может сохраняться и затем ассоциироваться с игровым устройством. Например, зашифрованный код может храниться на CD-ROM, и игровое устройство получает доступ к указанному коду непосредственно с CD-ROM (при этом код не сохраняется на жестком диске игрового устройства).
На этапе S103 инициируется работа игрового устройства 20. В предпочтительном варианте осуществления изобретения главный игровой контроллер 46 игрового устройства 20 "загружает" код, хранящийся в СППЗУ 52 или другом защищенном запоминающем устройстве. Предпочтительно СППЗУ 52 программируется аутентифицированным рабочим кодом, например, в месте нахождения производителя игрового устройства. Указанный операционный код предпочтительно включает в себя необходимые основные инструкции, позволяющие главному игровому контроллеру 46 начать работу, что включает в себя выполнение далее описанных функций. Предпочтительно СППЗУ 52 не предоставляется с кодом, реализующим конкретную игру, но только с таким кодом, который позволяет главному игровому контроллеру 42 использовать другой код для реализации игры.
На этапе S104 выполняется поиск устройства дешифрирования. В предпочтительном варианте осуществления изобретения указанный этап содержит предоставление СППЗУ 52 с кодом, инициирующим запрос устройства дешифрирования. В одном варианте осуществления изобретения запрос адресован МЗД, такому как МЗД 62 главного игрового контроллера 42.
На этапе S105 необходимый код получается в дешифрированном виде. В одном из вариантов осуществления изобретения указанный этап содержит поиск МЗД 62 зашифрованного кода и получение им указанного кода. В одном или более вариантах осуществления изобретения указанный этап содержит передачу зашифрованного кода от устройства 46 массовой памяти. В одном или более вариантах осуществления изобретения код может быть предоставлен с CD-ROM или через линию связи от удаленного устройства.
На этапе S106 зашифрованный код дешифрируется. В предпочтительном варианте осуществления изобретения этот этап содержит дешифрирование зашифрованного кода при помощи секретного ключа, ассоциированного с МЗД 46. Секретный ключ может быть копией секретного ключа, который использовался при шифровании кода. Как указано выше, хотя один и тот же термин "секретный ключ" используется в настоящем описании для обозначения ключа, используемого для шифрования и дешифрирования, в процессе симметричного шифрования/дешифрирования для облегчения процесса не требуется, чтобы эти ключи были идентичными. Тем не менее, используются одинаковые термины, поскольку с практической точки зрения ключи являются одинаковыми.
На этапе S107 дешифрированный код сохраняется. В одном или более вариантах осуществления изобретения этот этап содержит сохранение дешифрированного кода в ОЗУ 50 или в другом запоминающем устройстве с высокой скоростью доступа главного игрового контроллера 42.
На этапе S108 дешифрированный код выполняется. В предпочтительном варианте осуществления изобретения этот этап содержит выполнение или использование дешифрированного кода процессором 44 главного игрового контроллера 42 для представления игры или других данных в игровое устройство 20. В случае, если код содержит данные, то этап выполнения может содержать просто предоставление данных в некоторое устройство игрового устройства. Например, дешифрированный код может содержать аудиоданные, которые направляются в аудиосистему для генерации определенных звуков.
Рассмотрено множество вариантов осуществления настоящего изобретения. В одном или более вариантах осуществления изобретения может использоваться множество МЗД, причем каждый имеет отличный секретный ключ, ассоциированный с ним. При таком исполнении блоки кода могут шифроваться с различными секретными ключами и затем отдельно дешифрироваться, когда это необходимо, используя конкретный МЗД, имеющий соответствующий секретный ключ. При таком исполнении оператор может дешифрировать только определенную часть или блок кода/данных из группы кодов. Например, производитель игры может загрузить две версии операционного кода в игровое устройство 20 в процессе изготовления. Одна версия кода может использоваться для работы игрового устройства 20 в одном месте (например, Соединенных Штатах), а другая версия кода может использоваться для работы игрового устройства 20 в другом месте (например, в Австралии). Когда игровое устройство 20 пребывает в определенное место назначения, оператор может инсталлировать определенный МЗД. Этот МЗД имеет секретный ключ, который будет дешифрировать только часть кода, которая зашифрована соответствующим секретным ключом. Предпочтительно МЗД, выбирается для дешифрирования кода, который необходим для выполнения игры в условиях конкретного законодательства, в которых будет работать игровое устройство 20.
В одном из вариантов осуществления изобретения способ, соответствующий настоящему изобретению, может быть реализован без МЗД, и, таким образом, не требуются включения МЗД в игровое устройство 20. Например, в одном варианте осуществления изобретения секретный ключ, необходимый для дешифрирования может пересылаться в главный игровой контроллер 42 от удаленного устройства, например, по линии 54 передачи данных. Ключ может сохраняться в памяти игрового контроллера 42. В одном из вариантов осуществления изобретения вместо использования МЗД дешифрирование может выполняться программными средствами, выполняемыми процессором 44 игрового устройства 20. В этом случае секретный ключ может храниться в игровом устройстве 20 или может передаваться ему.
В одном из вариантов осуществления изобретения дешифрирование может выполняться через ОЗУ 50 или другую память, а не через МЗД 62. В этом случае секретный ключ может предоставляться в ОЗУ 50 из МЗД или другого местоположения. Благодаря скорости доступа к данным в ОЗУ, в таком варианте исполнения может быть повышена скорость дешифрирования.
В одном или более вариантах осуществления изобретения МЗД 62 или другие аппаратные/программные средства для выполнения дешифрирования могут быть удаленными относительно игрового устройства 20. Например, в одном из вариантов осуществления изобретения при начале работы игрового устройства 20 оператор может вставить определенный МЗД или выполнить дешифрирование удаленно, например, при помощи загрузки зашифрованного кода из игрового устройства 20 через линию 54 связи, дешифрирования его в удаленной устройстве (например, в удаленном компьютере, имеющем МЗД) и последующей передачи дешифрированного кода обратно в игровое устройство 20 для сохранения и выполнения.
В одном или более вариантах осуществления изобретения начало процесса дешифрирования может быть инициировано событием, отличным от начала работы игрового устройства. Это включает в себя, например, момент изготовления игрового устройства, поставку и инсталляцию в определенном месте. Когда игровое устройство включается, оно может немедленно начать поиск зашифрованного управляющего/операционного кода и данных для того, чтобы начать работу. Однако в некоторых случаях игровое устройство может уже находиться в рабочем состоянии, и оператору может потребоваться внести новый код в игровое устройство. Этот код может содержать код, позволяющий игровому устройству представлять совершенно новую игру, либо может быть более простым, например видеоданными для представления новых изображений игрокам. В любом случае в такой ситуации этап S103, упомянутый выше, может содержать этап, инициирующий игровое устройство начать дешифрирование кода и процесс инсталляции. Например, игровой контроллер 42 может быть обеспечен функцией установки в исходное состояние, которая обеспечивает поиск в контроллере 42 нового кода, поиск устройства/ключа дешифрирования и затем дешифрирование и использование кода или данных.
В одном или более вариантах осуществления изобретения способ может включать в себя дополнительные этапы аутентификации. В одном из вариантов осуществления изобретения после дешифрирования кода или данных некоторые из дешифрированных данных могут быть подвергнуты процедуре подтверждения. Например, код может предоставляться с одной или более маркерными строками или сигнатурами. После дешифрирования кода способ может включать в себя проверку на наличие указанных строк или сигнатур перед тем, как код или данные будут использованы в работе игрового устройства.
В одном или более вариантах осуществления изобретения дешифрированные данные могут передаваться удаленному источнику для аутентификации. Например, дешифрированные данные могут передаваться на удаленный сервер, имеющий аутентичную копию кода/данных, в сравнении с которой недавно дешифрированный код может быть верифицирован. Если дешифрированный код не совпадает с аутентичным кодом, тогда определяется, что, либо секретный ключ, использованный для дешифрирования данных, либо сами зашифрованные данные были подделанными. В этом случае код или данные не используются игровым устройством, и могут быть осуществлены любые необходимые этапы для гарантии защищенности игрового устройства и ассоциированного кода. Например, секретный ключ может быть стерт и зашифрованный код может быть стерт, и процесс может быть начат заново.
Как указывалось выше, в одном из вариантов осуществления изобретения ключ хранится в МЗД для обеспечения защиты ключа. В одном или более вариантах осуществления изобретения секретный ключ может быть стерт после использования для того, чтобы предотвратить его получение третьей стороной через некоторое время.
В данном изобретении реализовано множество преимуществ. Согласно настоящему изобретению, игровой управляющий код предоставляется в игровое устройство 20 в полностью зашифрованном формате. Такой формат препятствует просмотру кода и его использованию посторонним лицом. Это преодолевает проблемы, ассоциированные со способами асимметричного шифрования, которые используются в настоящее время и в которых код остается в форме, пригодной для чтения и использования, и только сигнатура шифруется и используется для гарантии аутентичности кода. Согласно настоящему изобретению шифруется весь код целиком, препятствуя его просмотру и использованию другим лицом без требуемого ключа для дешифрирования.
Использование симметричного шифрования согласно настоящему изобретению позволяет эффективным способом зашифровывать весь или по существу весь игровой код. Этот способ шифрования является очень быстрым и поэтому не замедляет работу игрового устройства 20. Асимметричное шифрование является полезным при шифровании данных, но, вследствие его сложности, оно является медленным и позволяет шифровать только сигнатуру (а не данные целиком) при условии, если процесс не взаимодействует с другими действиями. Например, некоторые игровые устройства предоставляются с ограниченной вычислительной мощностью для уменьшения стоимости их производства и ремонта. При ограниченной вычислительной мощности попытка дешифрирования более чем одной асимметрично зашифрованной сигнатуры, ассоциированной с кодом, приводит в результате к замедлению или задержке в работе устройства. В отличие от настоящего изобретения, сложность асимметричного шифрования и необходимость значительной вычислительной мощности для выполнения асимметричного шифрования/дешифрирования не позволяет шифровать данные целиком или даже значительную часть данных. Тем не менее, согласно настоящему изобретению схема запрета обеспечивает шифрование всего или по существу всего кода/данных.
Изобретение обеспечивает способ предоставления кода в игровое устройство, в котором гарантирована целостность указанного кода. Поскольку весь или большая часть кода зашифрована, неавторизованные лица не могут ни просмотреть код, ни подделать код (если код подделан, его выполнение будет не успешным, поскольку он не будет расшифрован должным образом). Согласно настоящему изобретению, дешифрирование выполняется обычным образом, например, при помощи установленных программных средств или модуля защищенного доступа. Определенные преимущества модуля заключаются в том, что он легко адаптируется к главному игровому контроллеру игровых устройств, существующих в настоящее время. Другое преимущество заключается в том, что секретный ключ встроен в модуль, и поэтому не требуется его передача в игровое устройство, что уменьшает риск того, что секретный ключ будет перехвачен и получен неавторизованными лицами.
Должно быть понятно, что вышеописанные варианты осуществления устройства и способа являются всего лишь иллюстрациями применений принципов настоящего изобретения, и может быть реализовано множество других вариантов осуществления и модификаций без изменения сущности и объема настоящего изобретения, как определено в формуле изобретения.
1. Способ предоставления управляющего кода для работы игрового устройства, который инициирует работу игрового устройства, включающий в себя этапы получения операционного кода игрового устройства для работы игрового устройства, который симметрично зашифрован в полном формате шифрования с использованием первого секретного ключа; предоставления зашифрованного управляющего кода в игровое устройство; поиска и локализации устройства дешифрования и передачи зашифрованного управляющего кода в устройство дешифрования, дешифрирования зашифрованного управляющего кода с использованием первого секретного ключа для восстановления упомянутого кода; сохранения дешифрированного управляющего кода в игровом устройстве; и использования дешифрированного управляющего кода для управления, по меньшей мере, в одном аспекте, работой игрового устройства в процессе работы игрового устройства.
2. Способ по п.1, отличающийся тем, что включает в себя этап шифро