Skip to main content

Hardened Derivation

MPCVault is the only MPC provider with patented hardened hierarchical derivation. In the non-MPC world, all wallets use hardened derivation - MPCVault brings this security standard to MPC. Hardened Derivation

Why Hardened Derivation Matters

Without hardened keys:
RiskImpact
Former team membersCan track your newly added assets
Compromised child keyExposes master keys and assets on other blockchains
Cross-chain attacksSignature reuse across different chains
With MPCVault’s hardened derivation, each address has an isolated derived key. Compromise of one key does not affect others.

How It Works

For each new address you create:
  1. A new derived key is generated from your master key
  2. The derivation uses hardened paths that prevent key leakage
  3. Each blockchain and address is cryptographically isolated
Key Derivation Process

Granular Permissions

The hierarchical derivation tree enables precise permission control:
  • Grant access to specific vaults only
  • Limit users to certain blockchains
  • Follow the principle of least privilege
Allocate minimum necessary permissions to users for managing vaults.

Derivation Paths & Networks

MPCVault uses a structured derivation path format to generate unique keys for each vault, network, and address.

Path Format

[prefix, vault_index, coin_type, account, change, address_index]
PositionNameDescription
0prefixAlways 9 (MPCVault identifier)
1vault_indexVault number starting from 0
2coin_typeBlockchain identifier (see table below)
3accountAccount index (typically 0)
4changeChange index (typically 0)
5address_indexAddress index (0, 1, 2, …)

Hardening Rules

Different networks use different hardening for the last two path positions:
NetworkLast Two PositionsExample
BitcoinNon-hardened (N0, N1)[9,0,2147483648,0,N0,N0]
All othersHardened (0, 1, 2…)[9,0,2147483708,0,0,0]
Non-hardened derivation (marked with N) allows public key derivation without the private key, which is required for Bitcoin’s address discovery mechanism.

Supported Networks

NetworkCoin TypeKey TypeCurveExample Path
EVM (Ethereum, etc.)2147483708ECDSAsecp256k1[9,0,2147483708,0,0,0]
Bitcoin2147483648ECDSAsecp256k1[9,0,2147483648,0,N0,N0]
Tron2147483843ECDSAsecp256k1[9,0,2147483843,0,0,0]
Aptos2147484285EdDSAEd25519[9,0,2147484285,0,0,0]
Solana2147484149EdDSAEd25519[9,0,2147484149,0,0,0]
Sui2147484432EdDSAEd25519[9,0,2147484432,0,0,0]
TON2147484355EdDSAEd25519[9,0,2147484355,0,0,0]
Coin types follow the SLIP-0044 standard with the hardened bit (0x80000000) applied.

Key Types

MPCVault supports two cryptographic signature schemes:
Key TypeCurveUsed By
ECDSAsecp256k1EVM chains, Bitcoin, Tron, Litecoin
EdDSAEd25519Aptos, Solana, Sui, TON

Address Generation

Each network derives addresses from public keys using different algorithms:
NetworkHash AlgorithmAddress FormatExample
EVMKeccak-256 (last 20 bytes)0x + 40 hex chars0x1234...abcd
BitcoinSHA-256 + RIPEMD-160SegWit P2SH (Base58Check)3J98t1...
TronKeccak-256 + Base58CheckT prefixTJRyWw...
AptosSHA3-2560x + 64 hex chars0x1234...
SolanaDirect public keyBase587EcDhS...
SuiBLAKE2b0x + 64 hex chars0x1234...
TONSHA-256Base64 or rawEQDk2V...

Deriving Multiple Addresses

To create multiple addresses within the same vault and network, increment the address_index:
Vault 0, EVM, Address 0: [9,0,2147483708,0,0,0]
Vault 0, EVM, Address 1: [9,0,2147483708,0,0,1]
Vault 0, EVM, Address 2: [9,0,2147483708,0,0,2]
Each address has a completely independent derived key due to hardened derivation.