Skip to main content

Kobe

Modular, no_std-compatible Rust toolkit for HD wallet derivation — BIP39 mnemonic management, multi-chain address generation, and a batteries-included CLI.

What is Kobe?

Kobe provides a unified Wallet seed from a single BIP-39 mnemonic, then delegates to per-chain crates for standards-compliant key derivation. All library crates compile under no_std + alloc and zeroize sensitive material on drop.

Crates

CrateDescription
kobeCore library — BIP39 mnemonic, seed derivation, no_std wallet type
kobe-btcBitcoin — P2PKH, P2SH-P2WPKH, P2WPKH, P2TR address derivation
kobe-evmEthereum (EVM) — BIP-44 derivation, MetaMask / Ledger Live / Legacy styles
kobe-svmSolana (SVM) — SLIP-10 Ed25519, Phantom / Trust / Ledger Live styles
kobe-cliCLI tool — generate, import, and derive wallets across all chains

Planned: kobe-sui (Sui), kobe-xmr (Monero), kobe-zec (Zcash).

Quick Start

Library Usage

use kobe::Wallet;
use kobe_evm::{DerivationStyle, Deriver};

let wallet = Wallet::from_mnemonic(
"abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon about",
None,
)?;

let deriver = Deriver::new(wallet.seed(), DerivationStyle::Standard);
let addr = deriver.derive(0)?;

println!("Address: {}", addr.address);

CLI Usage

cargo install kobe-cli

kobe eth new # New Ethereum wallet
kobe btc new --address-type taproot # New Bitcoin Taproot wallet
kobe sol new # New Solana wallet

Design Highlights

AspectDetail
Multi-chainBitcoin (4 address types), Ethereum, Solana — from one BIP39 seed
HD standardsBIP32, BIP39, BIP44 / 49 / 84 / 86, SLIP-10
Derivation stylesStandard, Ledger Live, Ledger Legacy, Trust Wallet, Legacy (Solana)
no_std + allocAll library crates compile without std; suitable for embedded / WASM
ZeroizingPrivate keys and seeds wrapped in Zeroizing<T> — cleared on drop
CSPRNGRandom generation via OS-provided rand_core::OsRng

Feature Flags

Cratestdallocrandrand_core
kobeFull std support (default)Heap allocation for no_stdRandom mnemonic via OS RNGCustom RNG for no_std
kobe-btcFull std support (default)Heap allocation for no_stdRandom key generation
kobe-evmFull std support (default)Heap allocation for no_stdRandom key generation
kobe-svmFull std support (default)Heap allocation for no_stdEd25519 key generation

Security

warning

This library has not been independently audited. Use at your own risk.

  • Private keys and seeds use zeroize for secure memory cleanup
  • No key material is logged or persisted by the library
  • Random generation uses OS-provided CSPRNG via rand_core::OsRng

Source Code