Key Management

iOS App Dashboard, Key Creation, and Operations Workflows

1. Key Dashboard — Empty and Populated States

1
Empty State (First Launch)

Tab 0: Keys — When no keys exist, users see a `ContentUnavailableView` prompting key creation.

Keys
🔓
No Keys
Create your first key to get started
Empty State
Keys
💡 TIPS
Instruction Level: Verbose
Explains DKG, MPC shares, and key types.
With Instructions
2
Key List with Populated Keys

Key Rows Display: Name (shield icon + label), address snippet, key type tag. Swipe-to-delete and drag-to-reorder enabled.

Keys (3)
  • Main Wallet
    0xa1b2c3d4...
    ECDSA
  • HD Master
    0xe5f6a1b2...
    HD-MASTER
  • Account 0
    0x7c8d9e0f...
    HD-CHILD
Key List
Key Operations
SWIPE LEFT
DELETE
DRAG TO REORDER
⋮⋮ DRAG
Interactions

2. Key Creation — Five Import/Generation Modes

The Create Key Sheet opens as a sheet modal with a segmented picker across the top. Users can switch between five modes before creation.

1
Generate (DKG) Mode

Create a new key via Distributed Key Generation. User selects key type (ECDSA, HD-MASTER, or HD-CHILD) and optionally customizes the name.

Create Key
Mode: GENERATE
Key Name (optional)
Generate
DKG Progress
⚙️
Generating Key...
2-Party DKG in progress
Processing
2
Import Seed Phrase (BIP-39)

Import from 12 or 24-word BIP-39 mnemonic. Select derivation preset (Ledger, MetaMask, Custom).

Create Key
Mode: SEED PHRASE
Word Count
 
Derivation Preset
Seed Import
3
Import Private Key / QR Code / Storage File

Three additional modes: raw private key hex, multi-part QR code scanner, and KeyStore V3 JSON file picker.

Create Key
Mode: PRIVATE KEY
Private Key
Create Key
Mode: QR CODE
▦▦▦▦▦
QR Code
Create Key
Mode: STORAGE
📄
Select KeyStore V3 JSON file
Storage File

3. Key Detail View — Operations and Metadata

1
Header, Public Key, and Metadata

Tapping a key from the dashboard navigates to `KeyDetailView` showing name (editable inline), public key, curve info, derivation path, and storage location.

Key Detail
My First Key ECDSA
0xa1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2
Curve: secp256k1
Storage: Secure Enclave
Created: 2026-03-07
Key Info
Key Operations
Actions
2
Signing History Inline

The last 10 signing records are displayed inline in the key detail view. Each shows timestamp, key type, and verified badge with copy buttons for hash and signature.

Signing History
2026-03-07 14:30
Hash: 0xa1b2c3d4e5f6...
Sig: 0x3045022100f7a8...
2026-03-07 13:15
Hash: 0x9c8d7e6f5a4b...
Signing Records