Fork from nickfarrow/yushan
🏆 Winner at BTC++ Taipei 2025
- 1st Place Overall
- Best Use of Cryptography
No single party ever knows the full private key.
FrostDAO implements FROST threshold signatures with Hierarchical TSS (HTSS) for Bitcoin Taproot. Create t-of-n multisig wallets with optional rank-based access control.
- Threshold Signatures - FROST-based t-of-n without trusted dealer
- Hierarchical TSS - Rank-based signing (CEO must approve)
- HD Derivation - BIP-86 Taproot receive/change addresses from one DKG wallet
- Resharing - Refresh shares without changing address
- Share Recovery - Reconstruct lost shares from t parties
- BIP-39 Backup - 24-word mnemonic for share recovery
git clone https://github.com/cheng-chun-yuan/frostdao.git
cd frostdao
cargo install --path .frostdao tui# Each party runs Round 1
frostdao keygen-round1 --name treasury --threshold 2 --n-parties 3 --my-index 1
# Exchange outputs, run Round 2
frostdao keygen-round2 --name treasury --data '<all_round1_outputs>' --encrypt
# Finalize
frostdao keygen-finalize --name treasury --data '<round2_outputs_for_this_party>'
# Check address and balance
frostdao dkg-address --name treasury
frostdao dkg-balance --name treasury# TUI guides wallet review, test-chain sends, and Nostr proposal consent
frostdao tui
# Navigate to wallet → Send Transaction| Document | Description |
|---|---|
| Showcase | Walkthrough path, code tour, and verification map |
| Run Guide | Current build, test, TUI, CLI, TSS, HTSS, reshare, recovery, and Nostr usage |
| CLI Reference | All CLI commands |
| TUI Keymap | Unified terminal keyboard shortcuts |
| Backup Guide | Share mnemonic, manifest, verification, and storage guidance |
| Protocols | Current TSS, HTSS, DKG, signing, derivation, reshare, and recovery overview |
| Nostr Protocol | Relay message protocol for DKG, signing, and resharing |
| Miniscript | Optional Taproot policy and agent payment draft support |
| ROAST And Hardware | Robust coordinator and hardware/PSBT integration direction |
| Security Model | Security invariants, threat model, and mainnet cautions |
| Production Readiness | Release gates, runbooks, and mainnet criteria |
| User Flow | Multi-device UX flow for TSS, HTSS, signing, reshare, and recovery |
frostdao/
├── src/
│ ├── protocol/ # DKG, signing, reshare, recovery
│ ├── crypto/ # Birkhoff, HD, helpers
│ ├── btc/ # Bitcoin, Schnorr, addresses
│ └── tui/ # Terminal UI
├── docs/ # Documentation
└── tests/ # Integration tests
./scripts/doctor.sh
./scripts/quality.sh
./scripts/quality.sh --full- Keys stored in
~/.frostdao/(not in repo) - Choose
t > n/2to prevent minority attacks - Never reuse nonces - causes key leakage
- Security audit recommended before production
- FROST Paper
- BIP-32 - HD Wallets
- BIP-39 - Mnemonic
- BIP-44 - Multi-Account
- BIP-340 - Schnorr
- BIP-341 - Taproot
MIT