Skip to content

Commit e3f530e

Browse files
committed
Streamlined recovery
1 parent c940301 commit e3f530e

1 file changed

Lines changed: 4 additions & 23 deletions

File tree

docs/embedded-wallets/recovery.mdx

Lines changed: 4 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -5,36 +5,19 @@ sidebar_position: 5
55
slug: /embedded-wallets/recovery-overview
66
---
77

8-
Recovery exists for the scenario where the user cannot reproduce the primary secret used for wallet control. This can happen when key derivation relies on noisy inputs (biometrics/visual keys) and the inputs change beyond what the extractor can tolerate.
8+
Recovery applies when the user can no longer reproduce the wallet's controlling secret, such as when biometric or visual inputs drift beyond the extractor's tolerance. Even if rare, embedded wallets need a recovery path that preserves self-custody and keeps assets in place.
99

10-
While key derivation failures are expected to be rare, a robust embedded wallet design includes recovery mechanisms that preserve self-custody.
11-
12-
## Recovery goals
13-
14-
A good recovery mechanism should:
15-
16-
- Restore access without undermining self-custody.
17-
- Be hard to abuse (by attackers or insiders).
18-
- Be understandable to end users.
19-
- Be enforceable (preferably on-chain).
20-
21-
## What recovery does: transfer vs rekey
22-
23-
There are two common recovery outcomes:
24-
25-
1. **Transfer-based recovery:** funds (or control) move to a new destination.
26-
2. **Rekey-based recovery:** the wallet stays put; only the controlling key is rotated.
10+
Recovery is implemented through rekeying: the wallet address and on-chain state remain unchanged, control rotates to a new key derived from the user's new embedded wallet, and assets never leave the account. This avoids asset transfers, reduces operational risk, and keeps recovery fully on-chain.
2711

2812
## Choosing a mechanism
2913

3014
| Mechanism | What changes | Strengths | Trade-offs |
3115
|---|---|---|---|
32-
| Timelocked fallback transfer | Funds/control transfer after delay | Works even with zero guardians | Introduces “assisted recovery” ops + compliance surface; funds temporarily leave wallet |
16+
| Timelocked fallback transfer | Control transfer after delay | Works even with zero guardians | Introduces “assisted recovery” ops + compliance surface; funds temporarily leave wallet |
3317
| Social recovery (guardians) | Control key rotates | Funds stay in wallet; no single party controls recovery | Coordination risk; guardian compromise/collusion needs mitigation |
3418

3519
In practice, many products support both, using guardians as the primary safety net and timelocked fallback as a last resort.
3620

37-
---
3821

3922
## Option 1: Timelocked fallback transfer (assisted recovery)
4023

@@ -66,7 +49,7 @@ sequenceDiagram
6649
U->>BO: Provide proof
6750
6851
BO->>C: Submit pre-signed tx
69-
C->>NW: Transfer funds/control
52+
C->>NW: Transfer control
7053
Note over NW: Recovery completed
7154
```
7255

@@ -77,8 +60,6 @@ sequenceDiagram
7760
- The user should be able to regenerate/rotate the fallback transaction while they still have access (invalidating older artifacts).
7861
- This mechanism is subject to policy, legal, and compliance review.
7962

80-
---
81-
8263
## Option 2: Social recovery (guardians)
8364

8465
### Summary

0 commit comments

Comments
 (0)