How Torzen works
Torzen runs as a web panel. You upload a file, choose what to protect and download the protected file. Nothing is installed on your computer.
Four steps
-
Upload a file
In the panel you choose an EXE, DLL, Mach-O or ELF file. To protect functions by name, add a symbol file: PDB, dSYM or DWARF.
-
Choose what to protect
Select functions and a protection level, or pick a saved profile. You can pass the same settings to the API as a JSON file.
-
Queued processing
The file enters the queue. On the Pipeline and Foundry plan it uses the priority queue. You follow progress in the panel, or check the job status through the API.
-
Download the protected file
You download the result from the panel or through the API. Uploaded files, symbols and results are deleted from the service after 7 days.
Example: protection through the API
On the Pipeline and Foundry plan you can automate the whole process with three calls: upload the file, check the status and download the result.
Upload
curl https://app.torzen.re/api/v1/protections \
-H "Authorization: Bearer $TORZEN_TOKEN" \
-F "file=@build/Release/app.exe" \
-F "symbols=@build/Release/app.pdb" \
-F "settings=@torzen.json"Job status
curl https://app.torzen.re/api/v1/protections/prt_7Hq2Lx \
-H "Authorization: Bearer $TORZEN_TOKEN"
{ "id": "prt_7Hq2Lx", "status": "done", "queue": "priority" }Download
curl -L https://app.torzen.re/api/v1/protections/prt_7Hq2Lx/file \
-H "Authorization: Bearer $TORZEN_TOKEN" \
-o dist/app.exetorzen.json
{
"functions": [
{
"name": "LicenseManager::validate",
"level": "virtualization"
},
{ "name": "net::*", "level": "mutation" }
],
"strings": "encrypt",
"integrityChecks": true
}Supported formats
Every plan accepts the same file and symbol formats.
| System | File format | Architectures | Symbols | Toolchains |
|---|---|---|---|---|
| Windows | PE32, PE32+ (EXE, DLL) | x86, x86-64, ARM64 | PDB | MSVC, Clang/LLVM, MinGW-w64, Delphi |
| macOS | Mach-O, universal binaries | x86-64, arm64 | dSYM | Apple Clang, Rust |
| Linux | ELF (executables, shared objects) | x86-64, AArch64 | DWARF | GCC, Clang/LLVM, Rust |
Source languages: C, C++, Rust, Delphi.
Limits per plan
One protection is one processed file. The limit renews every 24 hours.
- Build
- 5 protections per day
- Release
- 10 protections per day
- Pipeline
- 30 protections per day
- Foundry
- 50 protections per day
Protect your first file
You create your account in the Torzen panel. You can upload a file as soon as you choose a plan.