Multi-signature (multisig) wallets require multiple independent approvals for a transaction, meaningfully reducing single-point-of-failure risk compared to a single-key wallet. This guide covers setting up multisig infrastructure on a VPS.
Why Multisig Provides Meaningfully Better Security
A single private key, if compromised or lost, means total loss of control — a multisig setup (for example, requiring 2-of-3 keys to authorize a transaction) means a single compromised key alone isn't sufficient for an attacker to move funds, and a single lost key doesn't mean total loss if the threshold can still be met with remaining keys.
Understanding the M-of-N Model
"2-of-3" means any 2 of 3 total keys can authorize a transaction; "3-of-5" means any 3 of 5 — higher thresholds increase security against compromise but also increase operational complexity for legitimate transaction authorization; choose based on your genuine security/convenience trade-off.
Setting Up a Multisig Wallet with Bitcoin Core
bitcoin-cli createmultisig 2 '["pubkey1", "pubkey2", "pubkey3"]'
Creates a 2-of-3 multisig address from three provided public keys — each corresponding private key should ideally be held by different, independent parties/locations for genuine security benefit.
Keeping Signing Keys Genuinely Separate
The security benefit of multisig depends entirely on keys genuinely being independent — if all keys are stored on the same VPS/location, you've reintroduced a single point of failure despite the multisig structure; distribute keys across genuinely separate infrastructure/custody arrangements.
Setting Up a Signing Coordination Server (Watch-Only)
A VPS can host a "watch-only" node — capable of monitoring the multisig address and constructing unsigned transactions, without holding any actual signing keys itself — a reasonable architecture keeping the coordination infrastructure separate from key custody entirely.
The Transaction Signing Workflow
- Watch-only server constructs an unsigned transaction
- Transaction is sent to each required signer (via a secure channel) for independent review and signing
- Signed transaction pieces are combined once the threshold number of signatures is collected
- Fully signed transaction is broadcast to the network
Combining Partial Signatures
bitcoin-cli combinerawtransaction '["partially-signed-tx-1", "partially-signed-tx-2"]'
Using Hardware Wallets for Individual Signing Keys
For genuinely high-value multisig setups, consider having individual keys secured on hardware wallets rather than any software-based key storage — combines multisig's distributed-trust benefit with hardware wallets' additional key-isolation security.
Documenting Your Multisig Recovery Process
See How to Document a Disaster Recovery Runbook — ensure the process for recovering/reconstructing your multisig setup (in case of key holder unavailability, hardware failure) is clearly documented and periodically tested, given the genuine complexity multisig adds compared to single-key recovery.
Testing Your Multisig Setup Before Committing Significant Funds
Test the complete signing and broadcast workflow with a small amount before relying on the setup for significant fund custody — verify all key holders can genuinely complete their part of the process correctly.
Common Errors
Transaction fails to broadcast despite collecting the threshold signatures — verify signatures were collected in the correct order/format expected by combinerawtransaction, and confirm the transaction structure (inputs, outputs, fee) is genuinely valid before signing began.
Continue Reading
- How to Back Up a Cryptocurrency Node's Data Safely
- Running a Crypto Wallet Backend Securely on a VPS
- How to Secure a Cryptocurrency Node on a VPS
Browse more articles in Cryptocurrency & Blockchain Node Hosting.