Security model
Honest framing: no client app is reverse-engineering-proof. We raise the cost of theft and bind value to a live license — the same model used by Cursor, JetBrains, and Adobe.
What we do
- Private source repos — customers get installers only (Windows Setup / Android APK).
- Stripe + Supabase hold billing state; apps call
/api/license/verify. - No Stripe secrets, no service-role keys inside Windows or Android builds.
- Device fingerprint + max devices per plan; revoke from dashboard when abused.
- Windows Authenticode signing + Play App Signing when distribution is live.
- Optional Nuitka/Cython hardening on critical Python modules for Windows builds.
What we do not claim
- That PyInstaller or APK bytecode cannot be unpacked by a determined attacker.
- That shipping OBD algorithms only on a server works for garage serial sessions.
Full write-up: docs/SECURITY.md