ZKAuth and its SDKs are currently in active development. APIs and behavior may evolve as we ship improvements. Use this documentation as guidance for early access and always verify against the latest release notes.
Preview / Early AccessComprehensive guides, SDKs, and examples to integrate ZKAuth into your applications. From quick start to enterprise deployment.
Built for developers who demand security without compromise
Tenant-bound proofs avoid sending password secrets to the server
Optimized local proof-plus-controller login benchmark: 446.878 ms mean over 1000 runs
HTTP-first integration today, with framework helper examples you can adapt
Audit logs and standards mappings are provided without claiming certification
Concrete login threat checks, API logs, and security telemetry
Web, mobile, and desktop support with consistent APIs
Integrate ZKAuth into your application with our simple SDK
npm install your-zkauth-http-client # or yarn add your-zkauth-http-client # or pnpm add your-zkauth-http-clientimport { ZKAuthSDK } from 'your-zkauth-http-client';
// Initialize ZKAuth
const zkauth = new ZKAuthSDK({
apiKey: 'zka_...',
baseUrl: 'https://zkp-engine-main-1.vercel.app'
});
// Register a new user
await zkauth.register({
email: 'user@example.com',
password: 'password',
deviceInfo: { deviceName: 'Chrome on Mac', deviceType: 'desktop' }
});
// Authenticate with ZK proof
const session = await zkauth.login({
email: 'user@example.com',
password: 'password',
deviceInfo: { deviceName: 'Chrome on Mac', deviceType: 'desktop' }
});
console.log('Authentication successful!', session.data?.user);# Create a .env file
ZKAUTH_API_KEY=zka_live_your_api_key_here
ZKAUTH_BASE_URL=https://zkp-engine-main-1.vercel.app
# For development
ZKAUTH_API_KEY=zka_test_your_test_key_hereimport { useZKAuth } from './zkauth-react-helper';
function App() {
const { user, signIn, signOut, loading } = useZKAuth();
const handleLogin = async () => {
const result = await signIn('user@example.com', 'password');
if (result.success) {
console.log('Logged in successfully!');
}
};
return (
<div>
{user ? (
<div>
<p>Welcome, {user.email}!</p>
<button onClick={signOut}>Sign Out</button>
</div>
) : (
<button onClick={handleLogin}>Sign In</button>
)}
</div>
);
}from zkauth import ZKAuth
# Initialize client
client = ZKAuth(api_key="zka_...")
# Register user
user = await client.sign_up("user@example.com", "password")
# Authenticate
session = await client.sign_in("user@example.com", "password")
print(f"Authenticated: {session.success}")Everything you need to build secure applications with ZKAuth
Start your journey with ZKAuth
Install and configure ZKAuth SDKs
Build your first authentication flow
Learn about ZK proof authentication
Complete SDK API documentation
REST API endpoints and examples
Real-world integration examples
Security best practices and compliance
Production deployment guides
Choose your preferred language and framework
Node.js & Browser
Django & FastAPI
High Performance
Memory Safe
React hooks and components
Vue 3 composition API