Distributed key generation
Every party contributes randomness and proves it played fair. The full private key is never assembled, so there is no moment when one machine could have copied it.
Concrete use: For a 2-of-3 wallet, retain the DKG transcript hash, participant identities, public key, and independently derived first address.
Failure mode: Import an existing seed and split it afterward and the whole key sat on one machine first. Whatever was watching that machine has it.
→
Signing
Each participant checks the same canonical payload, burns one presign package if the protocol uses them, and the group emits a signature the chain cannot tell apart from a single-key one.
Concrete use: Bind request ID wd_20260831_0042, chain ID, nonce, asset, amount, destination, fee ceiling, and policy decision into the audit record.
Failure mode: A quorum will happily sign a payload someone else chose. Compromise the policy engine and the cryptography works perfectly against you.
→
Proactive refresh
Every share gets re-randomized while the public key and address stay put. Shares from the old epoch and the new one will not combine, so an attacker who stole one last quarter is left holding a dead number.
Concrete use: Refresh quarterly and after a suspected host compromise; prove completion on all three parties before deleting epoch N material.
Failure mode: A refresh job nobody has restore-tested is a scheduled task you hope works. You find out during an incident.
→
Resharing
A live quorum hands a fresh set of shares to a different group, or changes t-of-n, and the funds never move.
Concrete use: Replace a departing 2-of-3 signer with a new HSM and verify the unchanged public key before revoking the old share.
Failure mode: Resharing needs a live quorum. Drop below t surviving shares and there is nothing left to reshare with, and the address is frozen for good.
→
Retirement
Sweep the assets out first, then destroy every live share and presign cache. Keep the non-secret audit evidence, because that is what you show later.
Concrete use: After a chain is delisted, sweep all derivation paths, reconcile zero balances, then obtain destruction attestations from each domain.
Failure mode: Delete the vendor workspace with dust or a forgotten token balance still on those addresses and the value is stranded, with nothing left that can sign for it.