Немного определений
CEG (
Custom Executable Generation,
рус. Генерация Уникального Исполняемого Файла) — средство защиты от пиратства (как бы парадоксально это не звучало), разработанная великой и ужасной компанией
Valve в 2009 году. Изначально планировалось, что новое средство защиты будет использоваться чуть ли не на каждой игре, выпущенной в
Steam. Однако, пересмотрев свои приоритеты, компания Valve поняла, что если потенциальный разработчик захочет использовать такое 'счастье' в новоиспеченной игре, то желательно было бы платить и отнюдь не дешевую цену. Поэтому, исторически сложилось, что
CEG используется лишь крупными компаниями, которые в состоянии себе это позволить.
Сама суть этой защиты заключается в следующем: как только подходит к концу закачка игры из сервиса цифровой дистрибуции Steam, на персональный компьютер клиента загружается «голый», еще не подписанный исполняемый файл. Затем, на тот же клиентский компьютер, загружается цифровой сертификат и с помощью специальной библиотеки
SteamServices.dll (загрузка которой, к слову, производится в TEMP) и специального ключа с
AES шифрованием (данный ключ с идентификатором
cegpublickey является уникальным на стороне серверов Valve, он создается при публикации игры в самом сервисе при помощи
Steam CEG SDK, доступ к которому, к слову, имеет ограниченное количество лиц) подписывается выше упомянутый исполняемый файл.