/** * SLIP-0010 hardened-only hierarchical key derivation. * * Implements the HMAC-SHA512 derivation chain from * {@link https://github.com/satoshilabs/slips/blob/master/slip-0010.md | SLIP-0010} * for curves without public-key derivation: every path segment must be * hardened, and the derived 32-byte node secret is used directly as key * material (an ed25519 private key, or an ML-DSA-65 FIPS 204 seed ξ). * * The ML-DSA-65 variant uses the `"ML-DSA-65 seed"` master salt from * {@link https://github.com/satoshilabs/slips/pull/1968 | satoshilabs/slips#1968}, * the same construction adopted by Quantus (QIP-0002) and proven secure in the * Lattice HD Wallets paper (https://eprint.iacr.org/2026/380). */ /** SLIP-0010 master-node HMAC key for the ed25519 curve. */ export declare const ED25519_CURVE_SALT = "ed25519 seed"; /** Master-node HMAC key for ML-DSA-65, per satoshilabs/slips#1968. */ export declare const ML_DSA_65_CURVE_SALT = "ML-DSA-65 seed"; /** A SLIP-0010 node: 32-byte secret (I_L) and 32-byte chain code (I_R). */ export interface Slip10Node { key: Uint8Array; chainCode: Uint8Array; } /** * Derive a SLIP-0010 node from a BIP-39 seed along a hardened BIP-32 path. * * @param salt - Master-node HMAC key selecting the scheme * ({@link ED25519_CURVE_SALT} or {@link ML_DSA_65_CURVE_SALT}). * @param seed - BIP-39 seed (typically 64 bytes from `mnemonicToSeedSync`). * @param path - Path like `"m/44'/397'/0'"`. Every segment must be hardened * (`'` suffix); `"m"` alone derives the master node. * @returns The derived node; `key` is the 32-byte secret (ed25519 private key * or ML-DSA-65 seed ξ). */ export declare function slip10DerivePath(salt: string, seed: Uint8Array, path: string): Slip10Node; //# sourceMappingURL=hd.d.ts.map