Godot Secure is a Simple Python Script That modify the Godot Source Code Automatically, to integrate Camellia-256 / AES-256 encryption with a unique security token system. This solution creates a cryptographically unique engine build that prevents generic decryption tools from accessing your game assets.
This script enhances your Godot engine with Camellia/AES encryption and a unique security token system with just one command. Unlike standard encryption, this creates a custom Godot build that's cryptographically unique to you, preventing universal decryption tools from working with your game assets.
- π² Randomized Magic Headers: Unique file signatures per engine's build (Not Game)
- π Security Token System: 32-byte token embedded directly in engine's binary
- π‘οΈ Per-Build Uniqueness: Each compilation of engine and templates is cryptographically distinct from others
- β‘ Automated Setup: One-command modification of Godot source
- πΎ No external dependencies: Everything included
Standard Godot encryption has known vulnerabilities. Our solution:
Feature | Standard Godot | Godot Secure |
---|---|---|
Encryption Algorithm | AES-256 | Camellia-256 / AES-256 |
Universal Decryption Tools | Vulnerable | Protected |
Per Engine-Build Uniqueness | No | Yes |
Key Obfuscation | No | Yes |
Magic Header | Fixed | Randomized |
Required Reverse Engineering | Generic | Per-Build |
- Godot Source Code (4.x recommended)
- Python 3.6+
- OpenSSL (for key generation)
- Build Tools (SCons, compilers)
Download Godot Secure: πDownload
Directly Run The Script inside Godot Source and Build your
Engine and Templates
as usual with encryption Key!!
Must Read Godot's Official Documentation: πView Official Documentation
git clone https://github.com/godotengine/godot.git
cd godot
# Generate 256-bit key (KEEP THIS SECURE!)
openssl rand -hex 32 > godot.gdkey
## Set environment variable
# For Linux/macOS:
export SCRIPT_AES256_ENCRYPTION_KEY=$(cat godot.gdkey)
# For Windows (PowerShell):
$env:SCRIPT_AES256_ENCRYPTION_KEY = Get-Content godot.gdkey
# Or Set it Permanently from Control Panel (Windows)
You Can the Script directly inside Godot Source folder without using arguments! Using:
python godot_secure.py
# Run The Godot Secure Script
python godot_secure.py /path/to/godot_source/
#Example:
python godot_secure.py godot/
# For Engine (Must REQUIRED):
scons platform=windows target=editor use_llvm=yes use_mingw=yes # Example for Windows
scons platform=linuxbsd target=editor use_llvm=yes use_mingw=yes # Example for Linux BSD
scons platform=macos target=editor use_llvm=yes use_mingw=yes # Example for MacOS
# For Export Templates (Must REQUIRED):
scons platform=windows target=template_debug use_llvm=yes use_mingw=yes
scons platform=windows target=template_release use_llvm=yes use_mingw=yes
...
Build others Templates like these too and use
platform=macos
orplatform=linuxbsd
to build for MacOS or Linux BSD, Also useuse_llvm=yes use_mingw=yes
for faster builds!
The script makes these key modifications:
-
Unique Identifiers
- Generates random magic headers for file signatures
- Creates security token embedded in engine binary
-
Key Protection
Actual Key = (Input Key) XOR (Security Token)
- Token exists only in compiled binary
Script not working?
- Ensure Python 3.6+ installed
- Verify correct Godot source path
- Run with absolute path if needed:
python godot_secure.py /path/to/godot_source
Compilation errors?
- Clean build:
scons --clean
- Ensure all submodules:
git submodule update --init
- File not found errors: Ensure correct Godot source path
- Compilation errors: Verify Mbed TLS is properly included
- Encryption/decryption mismatch: Always use matching engine builds with matching template(s) builds
- Check script output for success messages
- Confirm
security_token.h
exists incore/crypto/
- Search for
CamelliaContext / AESContext
in modified files - Verify magic header values in file headers
β Use at Your Own Risk
This script modifies core Godot engine files. Always:
- Back up your source code before running
- Test builds thoroughly before deployment
- Maintain secure copies of security tokens
- Understand that enhanced security increases complexity
πͺ§ Important Considerations
- This creates a custom Godot engine
- Standard export templates won't work
- Always test builds before deployment
- Maintain backups of security tokens
π Always rebuild when:
- Updating Godot source
- Changing security parameters
- Creating new game versions
- Suspecting key compromise
- MIT License - Free for Personal and Commercial use with attribution: πView License
Hi there! I'm a college student passionate about game development and programming. While this project will always remain free, your support would mean the world as I balance studies and financial challenges.
- If you've found this security tool valuable, I'd sincerely appreciate any support as I work through my studies.
Every contribution helps maintain and improve this project. And encourage me to make more projects like this!
This is optional support. The tool remains free and open-source regardless.
Created with β€οΈ for Godot Developers
For contributions, please open issues on GitHub