Skip to Content
WalletsMulti-Seed & Schemes

Multi-Seed and Multi-Scheme Wallets

Tidecoin Core can track more than one PQHD seed in a single wallet. Each wallet also has receive and change scheme policy. This lets operators separate account domains, keep imported recovery material distinct from newly generated keys, and test post-AuxPoW schemes on networks where they are active.

This page is for wallet operators. It is not the normative PQHD derivation specification; see Protocol / PQHD for path rules and Signature Scheme Registry for scheme IDs.

Mainnet Scheme Policy

Mainnet currently uses Falcon-512 before AuxPoW activation. Falcon-1024 and the ML-DSA schemes are implemented, but mainnet use is gated by the active consensus rules. Do not set a production mainnet wallet to a gated scheme until the active chain state allows it.

SchemePolicy guidance
falcon-512Default mainnet choice before AuxPoW.
falcon-1024Test on testnet or regtest until mainnet activation allows it.
ml-dsa-44Test on testnet or regtest until mainnet activation allows it.
ml-dsa-65Test on testnet or regtest until mainnet activation allows it.
ml-dsa-87Test on testnet or regtest until mainnet activation allows it.

See Activation Status before changing mainnet policy.

Inspect Seeds

List seed records known to the loaded wallet:

tidecoin-cli -rpcwallet="main" listpqhdseeds

The output identifies seed IDs and indicates which seed is selected for receive and change derivation. A seed ID is operational metadata. The master seed itself is secret.

Import a Second Seed

Import a 32-byte master seed encoded as 64 hex characters:

tidecoin-cli -rpcwallet="main" importpqhdseed "<64-hex-master-seed>"

Then list seeds again:

tidecoin-cli -rpcwallet="main" listpqhdseeds

Do not use example seed values from documentation, tests, logs, or chat. Generate seed material with a wallet or recovery workflow designed for real funds.

Select Receive and Change Seeds

Set default receive and change seed IDs:

tidecoin-cli -rpcwallet="main" setpqhdseed "<receive-seed-id>" "<change-seed-id>"

Use the same seed ID for both arguments when you want one seed to cover receive and change. Use different seed IDs only when you intentionally want that separation and have a backup plan for both seeds.

Set Scheme Policy

For current mainnet wallets, keep receive and change on Falcon-512 unless the chain rules have activated a broader scheme set:

tidecoin-cli -rpcwallet="main" setpqhdpolicy "falcon-512" "falcon-512"

On testnet or regtest, use other schemes to test wallet, signer, fee, and integration behavior:

tidecoin-cli -testnet -rpcwallet="test" setpqhdpolicy "ml-dsa-65" "ml-dsa-65"

Changing scheme policy affects newly derived addresses. It does not rewrite old addresses, old transactions, or old descriptors.

Remove an Unused Seed

Remove only seeds that are not defaults and are not referenced by wallet descriptors:

tidecoin-cli -rpcwallet="main" removepqhdseed "<seed-id>"

If removal fails, assume the wallet still needs the seed. Check defaults, descriptors, labels, and backups before trying to simplify seed inventory.

Operating Rules

  • Back up the wallet after importing a seed or changing seed defaults.
  • Record which seed ID is intended for each account domain.
  • Keep production mainnet policy aligned with current activation status.
  • Test non-Falcon-512 policies on testnet or regtest first.
  • Do not remove a seed just because no address is visible in the GUI.
  • Sweep or consolidate funds only after confirming the destination wallet can spend with the intended scheme.

See also: Using PQHD, Activation Status, RPC Reference, PQHD Integration.

Last updated on