OpenKey can replace browser wallet extensions (MetaMask, WalletConnect, etc.) as the signer for TinyCloud’s SIWE sign-in flow. TinyCloud still uses SIWE for authentication; OpenKey supplies the Ethereum signer so users can authenticate with passkeys instead of a browser extension.Documentation Index
Fetch the complete documentation index at: https://docs.tinycloud.xyz/llms.txt
Use this file to discover all available pages before exploring further.
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
TinyCloud’s default nonce behavior is fine for standard sign-in flows. If your app is a relying party that needs to verify a nonce, issue a one-time nonce from your server and thread it through the auth request. Do not generate nonces in the browser.
Setup
Create provider and sign in to TinyCloud
Pass the
OpenKeyProvider directly via TinyCloudWeb’s provider property shorthand. The SDK handles ethers wrapping internally.tc.signIn() constructs and signs the SIWE message automatically. Do not manually create SIWE messages — TinyCloudWeb handles this for you.Complete Example
Session Management
Check if there’s an existing session before initiating a new sign-in flow:Delegations with OpenKey
Delegations work the same way regardless of whether the signer is OpenKey or a browser wallet. The primary DID is derived from the Ethereum address, which is the same whether the key is in MetaMask or OpenKey.Use the recipient’s primary DID (
tc.did after signIn) for delegations. This applies regardless of the signer being used. See the Delegations guide for details.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 OpenKeyProvider |
Next Steps
Widget Integration
Learn more about the OpenKey widget for connect and sign flows.
OAuth Provider
Use OpenKey OAuth for token-based apps. TinyCloud itself uses SIWE, not OAuth.
Authentication Guide
Learn more about TinyCloud’s SIWE authentication model.
Delegations Guide
Share access to spaces with delegatable capabilities.