Get your API key
Sign up free — no credit card. Create a key from the dashboard in under 30 seconds.
One API key. One hook. Encrypt messages, files, forms, and any sensitive data — your server never sees the plaintext. No crypto expertise required.
Most teams skip encryption or implement it wrong — leaving data exposed on the server. Encra makes the secure path the easy path.
Roll your own crypto
Months of work, catastrophically easy to get wrong
Plaintext in database
One breach = all user data exposed
Encrypt-then-store
Server holds the keys = server reads everything
Encra
Zero-knowledge by default, 5-minute integration
From API key to encrypted messages in minutes — not months.
Sign up free — no credit card. Create a key from the dashboard in under 30 seconds.
One package for React apps. Node.js can use @encra/core directly.
npm install @encra/reactSame pattern for chat, files, and forms — swap the hook name only.
const { sendMessage } = useE2EChat({
apiKey: process.env.NEXT_PUBLIC_ENCRA_KEY,
userId: currentUser.id,
})Your users get Signal-level encryption. They never know it's there.
~5 minutes from install to first encrypted message.
Open quickstartNot marketing fluff. Auditable algorithms, open source, no compromises.
Every payload uses a unique one-time key. Compromise today cannot decrypt yesterday.
Private keys never leave the device. The server stores public keys and ciphertext only.
Keys are deleted after use. Past messages stay safe even if today's key leaks.
useE2EChat(), useE2EFile(), useE2EForm() — one pattern for every use case.
Run the key server on your infra. Full control, no dependency on Encra cloud.
React, Node.js, and React Native — same @encra/core everywhere you ship.
Private keys are generated on device and never transmitted. The server stores public keys and encrypted blobs — mathematically guaranteed, not policy.
sensitiveData
plaintext — never leaves device
Double Ratchet
unique key per payload
Xk9mR2+vN8qPzLw...
opaque blob — server is blind
Double Ratchet
only recipient can decrypt
sensitiveData
plaintext restored
One SDK, one key server, one API pattern. Start with chat, expand as you grow.
Messaging
useE2EChat()1-to-1 messages
useE2EGroup()Group messages
useE2EPresence()Typing / online status
useE2EDisappearing()Message TTL
useE2ENotification()Push notifications
useE2ESearch()Local encrypted search
Data & Storage
useE2EFile()File & media upload
useE2EForm()Form submissions
useE2EField()Single field encrypt
Identity
useEncra()Base instance
useE2EVerify()Identity verification
useE2EBackup()Multi-device support
Enterprise
useE2EAudit()Compliance logging
useE2ESession()Session management
SDK, crypto primitives, and React hooks are Apache 2.0. Read the source, verify the implementation, contribute.
Add Signal-level encryption to any data in your app. No crypto PhD required.
Encra AI
Ask me anything · docs, code, troubleshooting
Hi, I'm Encra AI
I can explain concepts, generate starter code, troubleshoot errors, and guide your setup.
May make mistakes · verify critical crypto details