Shipping API keys is risky
When a key lives in your app bundle, anyone can extract it with basic tools. Gate/AI keeps provider keys on the server and gives each device a temporary substitute instead.
Gate/AI lets your app call AI providers without hiding API keys in your binary. Instead of giving every build a copy of a secret, we verify the device, mint a short-lived token, and watch every request for you.
When a key lives in your app bundle, anyone can extract it with basic tools. Gate/AI keeps provider keys on the server and gives each device a temporary substitute instead.
We attach analytics, budgets, and revocation controls to every device. If something looks off—a leaked build, a sudden cost spike—you can shut it down instantly.
The SDK creates a hardware-backed key in the Secure Enclave (iOS) or Keystore (Android). Only that device can use it, so stolen tokens are useless elsewhere.
Under the hood
We use P-256 keypairs and store the thumbprint (cnf.jkt) to bind tokens to the device.
Before we issue a token, the SDK proves it’s running inside your signed app on an untampered device. No emulator, no repackage.
Under the hood
iOS uses App Attest; Android uses Play Integrity. Both are bound to a short-lived challenge from Gate/AI.
Every call to the Gate/AI proxy is signed on-device. If someone tries to replay a request or reuse a token elsewhere, it fails.
Under the hood
We use DPoP (Demonstration of Proof-of-Possession) JWTs with per-request nonces for replay defense.
Step-by-step setup for Secure Enclave, App Attest, and DPoP with the GateAI Swift package.
Open iOS guideLearn about the upcoming Kotlin SDK and see the manual Play Integrity flow available today.
Open Android guide