Obfuscateur Lua — FiveM (CFX / LuaJIT)

Une couche invisible
entre votre code et les curieux.

Uploadez un fichier .lua, choisissez le niveau de protection et prévisualisez le résultat. Le pipeline complet tourne côté serveur — cette démo illustre le flux.

Démo — 3 étapes

Testez le flux complet

Étape 1
Upload

Un fichier .lua, jusqu'à 2 Mo.

Étape 2
Paramètres

Choisissez vos couches.

Étape 3
Aperçu

Comparez avant / après.

chat_antiflood.lua
Source
Aperçu live
local _0x000 = {}
local _0x001 = 3
RegisterNetEvent("\x63\x68\x61\x74\x3a\x6d\x65\x73\x73\x61\x67\x65", function(name, color, message)
local _0x002 = source
local _0x003 = GetGameTimer()
if(function() do return end;--@cf
return true end)() and _0x000[_0x002] and (_0x003 - _0x000[_0x002]) < 1500 then
_0x001 = _0x001 - 1
if(function() do return end;--@cf
return true end)() and _0x001 <= 0 then
DropPlayer(_0x002, "\x46\x6c\x6f\x6f\x64\x20\x64\x65\x74\x65\x63\x74\x65\x64")
end
do return end;--@cf
return
end
_0x000[_0x002] = _0x003
print(("\x5b\x63\x68\x61\x74\x5d\x20\x25\x73\x3a\x20\x25\x73"):format(name, message))
end)

Démonstration côté client à but pédagogique. Le vrai pipeline Gate exécute l'obfuscation dans un environnement isolé et livre un artefact signé.

Avant / Après

Trois scénarios réels

Un simple wrapper d'export devient illisible tout en restant fonctionnel.

Avant.lua
-- notify.lua
local function notify(msg, type)
    TriggerEvent("chat:addMessage", {
        args = { "[SERVER]", msg },
        color = type == "error" and {255,0,0} or {0,255,0}
    })
end
exports("notify", notify)
Après.lua
local _0x001=function(_0x002,_0x003)
TriggerEvent("\x63\x68\x61\x74\x3a\x61\x64\x64\x4d\x65\x73\x73\x61\x67\x65",{
args={"\x5b\x53\x45\x52\x56\x45\x52\x5d",_0x002},
color=_0x003=="\x65\x72\x72\x6f\x72" and{0xff,0x0,0x0}or{0x0,0xff,0x0}})
end
exports("\x6e\x6f\x74\x69\x66\x79",_0x001)
Couches de protection

Empilables, combinables

Renommage

Locals, upvalues et paramètres remplacés par des identifiants opaques.

Chaînes chiffrées

Toutes les strings sont encodées et déchiffrées à l'exécution.

Flow flattening

Le graphe d'exécution est déstructuré et faussé par des prédicats opaques.

Constantes

Nombres convertis, tables réordonnées, dead code injecté.

VM propriétaire

Option ultime : votre code tourne dans une VM Gate scellée.

Anti-tamper

Contrôles d'intégrité au runtime, ancrés au domaine FiveM.

Prêt à sceller votre ressource ?

Créez un compte, uploadez votre script et récupérez la version protégée en quelques secondes.