Seashail

Generated vs Imported Wallets

Compare wallet types to decide how to create and manage your wallets.

Seashail supports two wallet types: generated wallets (using Shamir secret sharing) and imported wallets (from existing private keys or mnemonics). This comparison helps you choose the right approach.

Feature Comparison

FeatureGenerated (Shamir)Imported (Key/Mnemonic)
Key custodyShamir 2-of-3 sharesFull key stored locally
BackupShare export (export_shares)User's responsibility
Key rotationrotate_shares availableNot available
Creationcreate_walletimport_wallet
Multi-chainSame seed → EVM + Solana + BitcoinPrivate key: single chain; Mnemonic: multi-chain
Account poolcreate_wallet_pool for sub-accountsadd_account for sub-accounts
Security modelNo single point of failureKey compromise = full loss
Use casePrimary long-term walletsImporting existing wallets

When to Use Generated Wallets

Generated wallets are recommended for:

  • New wallets — Creating fresh wallets from scratch
  • Long-term holdings — Maximum security for assets you plan to hold
  • Highest security — No single point of failure (2-of-3 threshold)
  • Multi-chain support — Seamlessly derive addresses for EVM, Solana, and Bitcoin
  • Key rotation — Ability to regenerate shares without changing addresses

Generated wallets split the root secret into 3 shares using Shamir secret sharing. Any 2 shares can reconstruct the secret, but 1 share alone reveals nothing. Share 1 stays encrypted locally, and you export shares 2 and 3 for backup.

When to Use Imported Wallets

Imported wallets are recommended for:

  • Existing wallets — Importing wallets you already use
  • Specific private keys — Using a single-chain private key (EVM or Solana)
  • Migration — Moving wallets from MetaMask, Phantom, or other tools
  • Compatibility — Using a wallet generated by another tool

Important: Imported wallets store the full key locally (encrypted with your passphrase). You're responsible for backing up the original key or mnemonic.

Usage Examples

Generated Wallet

Create a new generated wallet:

{
  "name": "my-trading-wallet"
}

Export shares for backup (after creation):

{
  "wallet": "my-trading-wallet"
}

Rotate shares (regenerate all 3 shares):

{
  "wallet": "my-trading-wallet"
}

Imported Wallet (Private Key)

Import an EVM private key:

{
  "name": "imported-metamask",
  "kind": "private_key",
  "private_key_chain": "evm"
}

Import a Solana private key:

{
  "name": "imported-phantom",
  "kind": "private_key",
  "private_key_chain": "solana"
}

Note: The secret field is deprecated. Seashail will prompt you to enter the private key securely via an interactive form.

Imported Wallet (Mnemonic)

Import a BIP-39 mnemonic (multi-chain):

{
  "name": "imported-seed",
  "kind": "mnemonic"
}

Note: Mnemonics support multi-chain derivation (EVM + Solana + Bitcoin) just like generated wallets.

Account Management

Both wallet types support sub-accounts:

Generated Wallets

Create a pool of spending accounts:

{
  "wallet": "my-trading-wallet",
  "count": 5
}

This creates 5 new account indexes (BIP-44 derivation) under the same root.

Imported Wallets

Add a single account:

{
  "wallet": "imported-metamask"
}

For imported mnemonics, this derives the next BIP-44 account index.

Security Considerations

AspectGenerated (Shamir)Imported
Passphrase compromiseAttacker needs passphrase + 2 sharesAttacker needs only passphrase
Share 1 compromiseUseless without share 2 or 3N/A
Local storage breach1 share + encrypted key (need 2 more pieces)Full key encrypted (need 1 piece)
Backup lossCan still access with local share + 1 backup shareMust restore from original backup

See Also

On this page