50 lines
3.4 KiB
Text
50 lines
3.4 KiB
Text
ASSEMBLER CASINO - SECURITY NOTES
|
||
=================================
|
||
|
||
Что уже защищено
|
||
----------------
|
||
1. Установщик проверяет SHA-256 архива игры внутри PokerGameSetup.exe.
|
||
Если после сборки кто-то подменит payload установщика, установка остановится.
|
||
|
||
2. Установщик не распаковывает файлы наружу через пути вида ../.
|
||
Каждый путь из архива проверяется, чтобы он оставался внутри выбранной папки установки.
|
||
|
||
3. Сохранения лежат отдельно в AppData.
|
||
Это не защита от взлома, но защищает их от случайного удаления при переустановке.
|
||
|
||
4. Лаунчер Assembler Casino.exe проверяет SHA-256 bin/poker.exe перед запуском.
|
||
Если основной игровой exe подменили после установки, лаунчер остановит запуск.
|
||
|
||
5. Сохранения получили простую checksum/signature.
|
||
Новые save-файлы пишутся с подписью по первым 276 байтам и соли в коде.
|
||
Старые 276-байтные сохранения читаются для совместимости, а новые поврежденные/измененные
|
||
сохранения не загружают банк и статистику.
|
||
|
||
Что это НЕ защищает
|
||
-------------------
|
||
1. Это не DRM.
|
||
Если игра лежит на компьютере игрока, ее можно дизассемблировать, патчить и запускать под отладчиком.
|
||
|
||
2. Это не цифровая подпись издателя.
|
||
Чтобы Windows показывал доверенного автора и чтобы было сложнее незаметно подменить сам PokerGameSetup.exe,
|
||
нужен Authenticode-сертификат и подпись через signtool.
|
||
|
||
3. Подпись сохранений не является криптографической защитой.
|
||
Она ловит грубую ручную правку и случайное повреждение, но патчер с дизассемблером может
|
||
найти алгоритм и пересчитать подпись.
|
||
|
||
Что можно добавить следующим слоем
|
||
---------------------------------
|
||
1. Authenticode:
|
||
подписывать PokerGameSetup.exe, Assembler Casino.exe, Uninstall Assembler Casino.exe и bin/poker.exe.
|
||
|
||
2. Release manifest:
|
||
хранить список SHA-256 всех файлов релиза в docs/RELEASE_MANIFEST.txt.
|
||
|
||
3. Более сильная защита сохранений:
|
||
вынести save version, HMAC-подобную проверку и явную метку tampered-профиля.
|
||
|
||
Честный вывод
|
||
-------------
|
||
Для офлайн-казино цель защиты - не сделать невозможный взлом, а поймать случайную/грубую подмену файлов,
|
||
защитить установщик от повреждения и усложнить ручное редактирование прогресса.
|