Military-grade obfuscation for Roblox Luau scripts. VM-based protection, bytecode virtualization, and advanced control flow — all in one click.
Paste your Luau code and protect it instantly
Get one at astroprotect.net
Enterprise-level protection for your Luau scripts
Your code runs inside a custom virtual machine — bytecode is encoded, jumps are scrambled, and the original logic is unrecoverable.
Shrinks the virtual machine and packed bytecode to reduce output size, trading a small amount of load-time overhead for a lighter footprint.
Invisible watermarks are embedded in every output so leaked scripts can always be traced back to the source account.
4 levels of optimization (0-3) let you balance between maximum protection and runtime performance for your specific use case.
Target Luau, Lua 5.1–5.4, LuaJIT, or CS:GO. One API, every Lua dialect your project needs.
Full REST API with job queuing, status polling, and download endpoints. Automate protection in your CI/CD pipeline.
Integrate SonicSec into your workflow
All API requests require the AstroKey header with your API key.
/api/obfuscate
Submit Luau code for obfuscation. Returns a job ID to poll for status.
| Parameter | Type | Required | Description |
|---|---|---|---|
| code | string | Yes | Base64-encoded Luau source code |
| options.target | string | No | Runtime: luau, lua51, lua52, lua53, lua54, luajit, csgo |
| options.optimization | number | No | Level 0-3. Defaults to 0 |
| options.vmCompression | boolean | No | Shrink VM and packed bytecode |
| options.extraCompatibility | boolean | No | More conservative output for wider runtime support |
| options.version | string | No | "public" or "beta". Defaults to "public" |
| options.outputHeader | string | No | Banner comment above output (max 20 chars) |
| options.allowUnsafe | boolean | No | Bypass malicious-code scanner |
/api/obfuscate/job/:id
Poll the status of an obfuscation job. Returns queued, processing, completed, or failed.
/api/obfuscate/job/:id/download
Download the obfuscated output once the job completes. Returns the protected Luau code.
/api/obfuscate/jobs
List all your obfuscation jobs, sorted by most recent first.
/api/health
Check API availability. No authentication required.
Your recent obfuscation jobs
Click Refresh to load your job history