C++ Client Setup
LibreAuth C++ client — API URL, Ed25519 key, and version setup.
1. API URL
std::string url = "https://libreauth.nutexe.dev/api/1.3/";
2. Ed25519 Public Key
Copy from /health or SDK portal. Replace in auth.cpp:
static std::string get_public_key_hex() {
return "58cd1baa23130577649b4f2ddb69f10e224fa761ed7cf7ac2e79c8f4c8a95b79";
}
WARN
Wrong public key → "Signature verification failed". Must match YOUR server from /health.
3. Application Version
Client ver must match panel App Version exactly.
4. Hash Check (optional)
If enabled in panel, send exe MD5 as hash parameter on init. Use la_guard::ExeMd5Hex() from hardening.hpp.
5. Anti-Debug / Anti-CE / Anti-VM
sdk/cpp/hardening.hpp — call before init and in the main loop:
| API | Description |
|---|---|
RunChecks() | debugger + HW BP + DLL + process + window + VM |
RunChecks(false) | same as above but does not block VM (dev) |
LastFail() / FailName() | identify failure — bad_process, virtual_machine, … |
ExeMd5Hex() | exe MD5 for hash check |
Hwid() | basic HWID |
Blocks: Cheat Engine, IDA, x64dbg, OllyDbg, dnSpy, Ghidra, Process Hacker, Frida, injectors · VM: VMware, VirtualBox, Hyper-V, QEMU
INFO
Full guide: Hardening Guide
Error Reference
| Error | Fix |
|---|---|
| Missing signature headers | Enable PHP sodium on server |
| Signature verification failed | Wrong public key — rebuild exe |
| Invalid credentials | Wrong name or ownerid |
| invalidver | Version mismatch with panel |
| Hash required | Send hash on init; add MD5 in panel |
INFO
Rebuild after every change.