You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: apps/portal/src/app/engine/features/backend-wallets/page.mdx
+24Lines changed: 24 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -49,6 +49,7 @@ The smart account is automatically deployed the first time you send a transactio
49
49
-`smart:local` - Smart account backed by a local key
50
50
-`smart:aws-kms` - Smart account backed by AWS KMS
51
51
-`smart:gcp-kms` - Smart account backed by Google Cloud KMS
52
+
-`smart:circle` - Smart account backed by Circle Developer-Controlled Wallets
52
53
53
54
For AWS and Google Cloud KMS options, follow the setup instructions in the respective sections below.
54
55
@@ -178,6 +179,27 @@ An [AWS KMS Wallet](/references/wallets/v2/AwsKmsWallet) is a wallet securely st
178
179
- GCP KMS Key ID (example: `0489da75-9830-4a5a-97e3-e4a6df7775b3`)
179
180
- GCP KMS Version ID (example: `1`)
180
181
182
+
## Circle Wallet
183
+
184
+
[Circle Programmable Wallets](https://developers.circle.com/w3s/programmable-wallets) is a Wallet as a Service (WaaS) solution designed to simplify the creation and management of secure Web3 wallets and their private keys. Engine can create and transact with the wallet, but not delete it.
185
+
186
+
#### Setup
187
+
188
+
1. Create a Circle account at the [Circle Console](https://console.circle.com/signin).
189
+
2. Navigate to [API & Client Keys](https://console.circle.com/api-keys).
190
+
3. Create an API Key. (Either a standard key or a restricted key scoped to "Programmable Wallets" is required.) Do not enable the IP Allowlist. Store this key, it is not shown again.
191
+
4. In the dashboard, navigate to **Configuration > Backend Wallets**.
192
+
5. Select **Circle** and provide the following:
193
+
- API Key (example: `API_KEY:...`)
194
+
195
+
<Calloutvarian="info">
196
+
Circle API Keys are scoped to either Testnet or Mainnet. Backend wallets
197
+
created with a testnet key will not work on the mainnet, and vice versa
198
+
<br /> If you want to change between testnet and mainnet, you will need to
199
+
update the API key configuration in engine, and recreate a wallet. with the
200
+
Mainnet scope.
201
+
</Callout>
202
+
181
203
## Create a wallet
182
204
183
205
For AWS or Google Cloud KMS wallets, you must provide your credentials.
@@ -186,6 +208,8 @@ For AWS or Google Cloud KMS wallets, you must provide your credentials.
186
208
1. Select **Create**.
187
209
1. (Optional) Provide a label to organize your wallets.
188
210
211
+
Circle wallets require creating a [Credential](/engine/features/wallet-credentials) first before creating a wallet.
212
+
189
213
## Import a wallet
190
214
191
215
For AWS or Google Cloud KMS wallets, you must provide your credentials.
"Engine can securely store and manage wallet credentials for thirdweb backend wallets.",
8
+
});
9
+
10
+
# Wallet Credentials
11
+
12
+
Wallet credentials are authentication details required to interact with different cloud providers and wallet services. They enable secure access to wallet functionality across various platforms.
13
+
14
+
<Calloutvariant="info">
15
+
Currently, the credentials system has only been rolled out for Circle wallets.
16
+
Default credentials are not yet supported. Existing wallets will continue to
17
+
work as normal, but new wallet creations will use the new credential system
18
+
after the rollout.
19
+
</Callout>
20
+
21
+
## Overview
22
+
23
+
Each wallet in the system is associated with a credential that contains the necessary authentication details for its specific provider (AWS, GCP, etc.). These credentials are stored securely and can be either:
24
+
25
+
- Specified explicitly when creating a wallet
26
+
- Used automatically through default credentials configured for each provider type
27
+
28
+
## Default Credentials
29
+
30
+
Each provider type (AWS, GCP, etc.) can have one default credential. When creating a wallet without specifying a credential, the system automatically uses the default credential for that provider type.
31
+
32
+
## Creating a Credential
33
+
34
+
Credentials are created in the dashboard and can be reused across multiple wallets of the same type.
35
+
36
+
### Create a credential
37
+
38
+
1. In the dashboard, navigate to **Configuration > Credentials**.
39
+
2. Click on **Create**.
40
+
3. Assign a name to the credential.
41
+
4. Select the type of the credential.
42
+
5. Populate the credential fields which are specific to the type.
43
+
6. Click on **Create**.
44
+
45
+
## Usage
46
+
47
+
When creating a wallet, you can either:
48
+
49
+
1. Provide a specific credential ID to use custom authentication details
50
+
2. Omit the credential ID to automatically use the default credential for your chosen provider
51
+
52
+
## Security
53
+
54
+
Credential details are stored encrypted securely in the database and are only accessible through authorized system operations. Once created, they are not retrievable. You can still view the credential (label, type), but you cannot access the credential details. This ensures that credentials are secure and cannot be used to gain unauthorized access to your wallets.
0 commit comments