@me2em/crypto
    Preparing search index...

    Variable slip10Const

    slip10: {
        masterKeyFromSeed(seed: Uint8Array): Slip10Node;
        deriveHardened(node: Slip10Node, index: number): Slip10Node;
        derivePath(node: Slip10Node, path: string): Slip10Node;
        publicKey(node: Slip10Node): Uint8Array;
    } = ...

    SLIP-0010 ed25519 hierarchical derivation (hardened-only) — the crypto foundation for chain-package wallet trees (payment-layer plan, Ф-crypto; consumed as crypto.slip10).

    • Seed contract — exactly 64 bytes, the same seed contract as Identity.fromSeed (64 bytes; also the SLIP-0010 upper bound of 512 bits). Anything else throws TypeError.
    • Hardened only. Normal derivation is not defined for ed25519; an index without the hardening bit (or a path component without a '/h/H marker) throws TypeError.
    • Deterministic and allocation-fresh. The same seed and path always produce byte-identical nodes; returned buffers are fresh copies — input nodes and seeds are never retained or mutated. Callers own the returned key material and MUST wipe private keys after use (secureWipe).

    Type Declaration

    • masterKeyFromSeed: function
      • SLIP-0010 master node from a seed.

        Parameters

        • seed: Uint8Array

          Exactly 64 bytes — same seed contract as Identity.fromSeed (64 bytes, the SLIP-0010 upper bound).

        Returns Slip10Node

        { key, chainCode } — I = HMAC-SHA512(Key = "ed25519 seed", Data = seed); IL is the master key, IR the chain code. For ed25519 any IL is valid — no retry loop.

        if the seed is not a Uint8Array of exactly 64 bytes.

    • deriveHardened: function
      • Hardened-only CKDpriv one level down.

        Parameters

        • node: Slip10Node

          Parent node.

        • index: number

          Child index WITH the hardening bit: 2^31 ≤ i ≤ 2^32 − 1 (e.g. 0x80000000 for m/0'). A non-hardened index throws TypeError — use slip10.derivePath for marker-based paths.

        Returns Slip10Node

        The child node (fresh buffers).

        on a malformed node or an invalid index.

    • derivePath: function
    • publicKey: function
      • The 32-byte Ed25519 public key of a node (chain packages derive payment addresses from it — for Solana base58(publicKey)).

        Parameters

        Returns Uint8Array

        if the node is malformed.

    import { slip10, secureWipe } from '@me2em/crypto';

    const master = slip10.masterKeyFromSeed(seed); // 64-byte BIP39 seed
    const node = slip10.derivePath(master, "m/44'/501'/0'/0'");
    const pub = slip10.publicKey(node); // 32 bytes
    secureWipe(node.key);