Skip to main content
Openfort provides authentication and embedded EOA wallets protected by Shield. Convert the authenticated wallet’s EIP-1193 provider to a viem wallet client, then adapt that client for Rhinestone.

Prerequisites

  • An Openfort project and publishable key
  • A Shield publishable key
  • A React application
  • A backend that issues short-lived Rhinestone JWTs
1

Install the dependencies

2

Configure Openfort

Configure Openfort to create EOAs. Rhinestone supplies the smart account layer.
The encryption-session route must authenticate the Openfort access token and mint the user’s Shield encryption session on your backend. Never expose a Shield secret key in this component. Alternatively, configure and implement Openfort passkey or password recovery instead of automatic recovery.
3

Configure browser authentication

Openfort’s publishable keys can be used by the client. Your Rhinestone API key cannot. Use short-lived JWTs for the browser SDK:
See security for secure token issuance.
4

Create the Rhinestone account

Wait for Openfort authentication and an embedded wallet before requesting its provider.
For sponsored transactions, follow sponsorship setup. For the transaction lifecycle, continue to send a transaction. See the Openfort embedded wallet documentation for authentication and Shield recovery configuration.