Practical overview
When it fits
Use it when a secp256k1 wallet application needs BIP32-compatible hierarchical key derivation and the documented HDKey API.
Who it is for
- TypeScript wallet developers
- Teams building deterministic account and wallet-key trees
- Developers integrating BIP32-compatible HD key handling into secp256k1 applications
Documented uses
- Create a master HD wallet key from a seed.
- Derive child keys from hierarchical paths.
- Restore wallets from Base58 extended keys or JSON.
- Sign and verify hashes with derived keys.
- Add a small tree-shakeable HD-key component to an ESM build.
Requirements & limits
The repository is public and MIT licensed. The documented installation paths are npm and Deno's JSR command.
- The implementation targets BIP32 over secp256k1 rather than arbitrary elliptic curves.
- The API covers seed creation, extended-key restoration, JSON restoration, path derivation, signing and verification.
- The package is TypeScript, ESM and tree-shakeable, with three listed dependencies from the same author.
- Private extended keys, chain codes and JSON output containing private material require secret-handling controls.
- Mnemonic phrases are outside this library's documented scope and are directed to scure-bip39.
Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.
Set up HD key derivation in a TypeScript wallet
Install the library and create, restore and derive an HDKey instance as shown in the project documentation.
Before you start
- A TypeScript or JavaScript project using the documented ESM package.
- The @scure/bip32 package and the documented @noble/hashes imports.
- A 32-byte seed for the documented master-key example.
Steps
Install @scure/bip32 with npm, or add jsr:@scure/bip32 with Deno.
Import HDKey from @scure/bip32 and the documented sha256 and randomBytes helpers from @noble/hashes.
Create a root key with HDKey.fromMasterSeed(seed).
Export its private extended key, restore it with HDKey.fromExtendedKey or HDKey.fromJSON, and derive the documented child path.
Use the child key's sign and verify methods with a message hash when signing is part of the wallet flow.
Expected outcome
A documented HDKey flow covering master-key creation, extended-key restoration, child derivation and optional signature verification.
Guide limitations
- This recipe follows the README example and does not establish production compatibility or security.
- The documentation warns that private key material, chain codes and JSON output containing private data must be treated as secret.
- BIP32 is documented for secp256k1 and has limitations for other curves; mnemonic generation is handled by a separate library.
Sources & review
Source record details
- Source availability
- Active
- Sources checked
- 3 October 2026
- Original website title
- paulmillr/scure-bip32 · Official homepage title · retained in its source language
Related options
scure-bip39 — Separate project directed to for mnemonic phrase handling.
micro-key-producer — Separate project directed to for SLIP-0010/BIP32 ed25519 HD key implementation.

