Why Use OpenKey with TinyCloud
- No browser extension required: Users do not need MetaMask or any wallet installed
- Passkey-based authentication: Biometric or hardware key login instead of seed phrases
- TEE key security: Private keys are sealed inside a hardware enclave
- Lower onboarding friction: Non-crypto-native users can get started without understanding wallets
- Same cryptographic guarantees: OpenKey produces standard Ethereum signatures that TinyCloud verifies the same way as any wallet
Architecture
Instead of the wallet extension signing the SIWE message, OpenKey’s TEE-managed key signs it. From TinyCloud’s perspective, the signature is indistinguishable from one produced by MetaMask.Setup
Connect with OpenKey
Use OpenKey to get the user’s Ethereum address and key ID before signing in to TinyCloud.
Sign the SIWE message with OpenKey
Provide a custom signer to TinyCloud that delegates signing to OpenKey instead of a browser wallet.
Complete Example
Session Persistence
When TinyCloud is configured withautoResumeSession: true, the session persists across page reloads. On the next visit, TinyCloud resumes the session without requiring OpenKey sign-in again (as long as the session has not expired).
Delegations with OpenKey
Delegations work the same way regardless of whether the signer is OpenKey or a browser wallet. The PKH DID is derived from the Ethereum address, which is the same whether the key is in MetaMask or OpenKey.Comparison: OpenKey vs. Browser Wallet
| Aspect | Browser Wallet (MetaMask) | OpenKey |
|---|---|---|
| Installation | Browser extension required | None (web-based) |
| Key storage | User’s device (local) | TEE (server-side, sealed) |
| Authentication | Wallet unlock (password) | Passkey (biometric) |
| Seed phrase | User must back up | Not applicable |
| Signing UX | Extension popup | OpenKey popup/iframe |
| Works on mobile | Requires mobile wallet app | Works in any browser |
| TinyCloud compatibility | Native | Via custom signer |