Перейти к содержанию
Авторизация  
EasyGameProtection

Resource Cryptor - шифрование файлов клиента

Рекомендуемые сообщения

Resource Cryptor - небольшая утилита для шифрования read-only файлов клиента c целью затруднения их воровства/модификации/etc.

Поддерживаемые ОС :
--- Resource Cryptor GUI: Windows 7 [x64] и выше (требуется .NET 6)
--- Модули приложений (DLL): Windows 7 [x32/x64] и выше (скоро Linux и macOS)

Скачать : Resource Cryptor v1.3.0

Краткий гайд по использованию:
(перед всеми манипуляциями делайте резервные копии файлов!)
1. Для простоты описания в качестве примера будем считать, что исполняемый файл вашего приложения называется MyApp.exe 
2. Скачайте и запустите Resource Cryptor
3. Перейдите на вкладку: Tools -> Attach Lib 
4. Нажмите Select File и выберите исполняемый файл вашего приложения — MyApp.exe 
5. Нажмите Attach Lib
6. В каталоге "modules/windows" есть 2 библиотеки (resource-cryptor-x32.dll и resources-cryptor-x64.dll). В зависимости от вашего приложения (x32 или x64) поместите соответствующую библиотеку рядом с MyApp.exe
7. Перейдите на  вкладку Project, нажмите Create New Project и выберите, где его сохранить
8. Нажмите Open Project и выберите созданный проект
9. Переходим на вкладку: Project -> Executable Files
10. Нажимаем Add File и выбираем исполняемый файл MyApp.exe
11. Перейдите на вкладку Encryption и перетащите файлы вашего приложения, которые вы хотите зашифровать
12. Нажмите Encrypt и дождитесь завершения процесса
13. В конце процесса для каждого исходного файла будет создано по 2 дополнительных файла
Например, если мы зашифруем somefile.txt, то в конце процесса рядом с ним будут созданы somefile.txt.rcmetadata и somefile.txt.xxxxx.origin (где xxxxx
 — какое-то число)
> somefile.txt  — уже зашифрованный файл
> somefile.txt.rcmetadata  — метаданные для клиентского модуля, этот файл следует оставить рядом с зашифрованным
> somefile.txt.xxxxxx.origin  — исходный незашифрованный файл (на случай, если вы забыли сделать резервную копию)
14. Файлы  *.xxxxxx.origin  можно удалить (если у вас уже сохранены оригиналы), остальные файлы должны остаться

На этом процесс интеграции завершен, вы можете запустить приложение MyApp.exe

Небольшой видеогайд: 

 

>>> И самое главное! <<<
Никогда никакой криптор не даст 100% гарантии того, что файлы не будут вскрыты.
Это не спасет от опытного человека, перед которым стоит задача что-то стащить из вашего клиента.

 


1.png.018e7e94ab2dd40a262bc7b2d6ec5926.png

2.png.f9a75af192e1052b1af4340021f8af49.png

3.png.60793aa9f957ca5e3aa6e35f79f38b16.png

4.png.db87c68fddb6514f75740ba0a5f2c444.png

5.png.24b60710d5dfcb5cdcb182d63ab6c829.png

6.png.16771ff9c58568de9674e64b35e606c5.png

7.png.f6294be761fb2de08c9f2f961cb75d65.png

Изменено пользователем EasyGameProtection
  • Like 1
  • Upvote 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Update v0.4.0:
(Первое сообщение в теме обновлено)

-> В файл проекта в секцию OPTIONS добавлена опция CHECK_CALL_CONTEXT ("YES", "NO"; Default: "YES")
Если при запуске игрового клиента для какого-то из зашифрованных файлов получаем ошибку "Opening a file outside the application context", то при шифровании этого файла для опции CHECK_CALL_CONTEXT необходимо устанавливать значение "NO".
Не отключайте эту опцию без необходимости.

-> Добавлена возможность патчить бинарники игрового клиента непосредственно из приложения.

  • Переходим во вкладку: Tools -> Attach Lib
  • Нажимаем Select File и выбираем бинарник в клиенте игры (например L2.exe)
  • В выпадающем списке можно выбрать варианты: Push Front - либа будет добавлена в самое начало таблицы импорта. Push Back - в конец таблицы. Значение по умолчанию можно не менять.
  • Нажимаем Attach Lib


Готово. Теперь необходимо рядом с ним просто поместить одну из либ (resource-cryptor-x32.dll или resource-cryptor-x64.dll) в зависимости от разрядности вашего приложения (для L2 это resource-cryptor-x32.dll)


5.png.ae805559743521ddc167be3f40410f30.png

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Update v0.5.0:

В файл проекта добавлены 2 опции:

  • CHECK_FILE_INTEGRITY ["YES", "NO"; Default: "YES"]: Нужно ли проверять целостность зашифрованного файла перед его открытием. Для очень больших файлов эту опцию можно отключать, чтобы ускорить работу.
  • CHECK_MEMORY_INTEGRITY ["YES", "NO"; Default: "YES"]: Нужно ли клиентскому модулю проверять целостность некоторых участков памяти процесса (своих хуков и т.д). Может потребоваться отключать для совместимости с другими защитами.

Update v0.5.2:

Добавлены более информативные сообщения об ошибках при шифровании файлов.

Update v0.6.0:
(Первое сообщение в теме обновлено)

Добавлена опция:

  • ENCRYPTED_FILES_REQUIRED ["YES", "NO"; Default: "NO"]: Нужно ли проверять наличие других зашифрованных файлов. Если указано значение "YES", то в файле проекта в секции "REQUIRED_ENCRYPTED_FILES" перечисляется список файлов (относительные пути), которые должны быть зашифрованы.


Эта опция полезна в случае, если нам необходимо зашифровать определенные файлы в клиенте и чтобы игрок не мог заменить один из них каким-то своим незашифрованным файлом, который он сможет редактировать. То есть игроку придется или заменять все зашифрованные файлы своими незашифрованными (что может поломать клиент), или не трогать ни один из них.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Update v1.0.0:
(Первое сообщение в теме обновлено)

Изменения:

  • Переход в стабильную версию 1.x.x (предыдущие версии 0.x.x теперь не работают)
  • В файл проекта добавлена опция SAVE_ORIGIN_FILES  ["YES", "NO"; Default: "YES"]: Нужно ли сохранять оригинальные файлы после шифрования.
  • DEMO лицензия теперь урезана. При запуске игрового клиента с файлами, которые были зашифрованы DEMO лицензией, будет отображаться соответствующее сообщение. Также время жизни таких зашифрованных файлов ограничено до 24 часов. Этого достаточно, чтобы проверить подходит ли решение для конкретного пользователя, чтобы потом купить подписку.
  • Цена подписки составляет 10$ в месяц.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Update v1.1.0:
(Первое сообщение в теме обновлено)

Изменения:

  • Переработано шифрование файлов для улучшения производительности (особенно при случайном чтении данных из файла)
  • Из файла проекта удалена опция CACHE
  • Добавлена подпись для бинарников, что дает 0 детектов антивирусов для клиентских модулей (VirusTotal: x32 и x64)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Update v1.2.2:
(Первое сообщение в теме обновлено)

Изменения:

  • Настройки проекта переехали из *.ini в *.json
  • Немного доработан интерфейс - настройками проекта теперь можно управлять непосредственно из утилиты, без необходимости править файл проекта в текстовом редакторе.
  • Обновлены скриншоты и видеогайд в первом сообщении.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Update v1.3.0:
(Первое сообщение в теме обновлено)

Изменения:

  • Некоторые внутренние изменения
  • Утилита стала полностью бесплатной
  • Discord сервер для поддержки/баг репортов/etc - присоединиться

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
Авторизация  

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×
×
  • Создать...