#[non_exhaustive]pub enum DerivationStyle {
Standard,
Trust,
LedgerLive,
Legacy,
}Expand description
Solana derivation path styles for different wallet software.
Different hardware and software wallets use different derivation paths even though they all follow BIP-44 principles. This enum provides the most common styles for maximum compatibility.
§Path Specifications (as of 2026)
- Standard (Phantom/Backpack):
m/44'/501'/{index}'/0' - Trust:
m/44'/501'/{index}' - Ledger Live:
m/44'/501'/{index}'/0'/0' - Legacy:
m/501'/{index}'/0/0(deprecated)
§Example
use kobe_sol::DerivationStyle;
let style = DerivationStyle::Standard;
assert_eq!(style.path(0), "m/44'/501'/0'/0'");
assert_eq!(style.path(1), "m/44'/501'/1'/0'");
let trust = DerivationStyle::Trust;
assert_eq!(trust.path(0), "m/44'/501'/0'");Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Standard
Standard BIP44-Change path used by Phantom and Backpack.
Path format: m/44'/501'/{index}'/0'
This is the most widely adopted standard where:
- Purpose: 44’ (BIP-44)
- Coin type: 501’ (Solana)
- Account: variable (hardened)
- Change: 0’ (hardened, fixed)
Used by: Phantom, Backpack, Solflare, Trezor, Exodus, Magic Eden
Trust
Trust Wallet / Ledger native derivation path.
Path format: m/44'/501'/{index}'
BIP-44 path without change component:
- Purpose: 44’ (BIP-44)
- Coin type: 501’ (Solana)
- Account: variable (hardened)
Used by: Trust Wallet, Ledger (native), Keystone
LedgerLive
Ledger Live derivation path (account-based).
Path format: m/44'/501'/{index}'/0'/0'
Used by Ledger Live application:
- Purpose: 44’ (BIP-44)
- Coin type: 501’ (Solana)
- Account: variable (hardened)
- Change: 0’ (hardened, fixed)
- Address index: 0’ (hardened, fixed)
Legacy
Legacy derivation path (deprecated).
Path format: m/501'/{index}'/0/0
Used by older versions of Phantom and Sollet. Only use for recovering old wallets.
Implementations§
Trait Implementations§
Source§impl Clone for DerivationStyle
impl Clone for DerivationStyle
Source§fn clone(&self) -> DerivationStyle
fn clone(&self) -> DerivationStyle
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more