Vaults
A vault is a multi-signature account on Bitcoin. It holds Bitcoin and SCL assets, administers the assets you issue, and enforces an M-of-N signing threshold that Bitcoin itself checks. Every movement starts from a vault.
Each vault has its own keys, its own threshold and its own on-chain history. Client assets held in separate vaults are segregated on Bitcoin, not just labelled in a database.
#How a vault is built
A vault's address is a P2WSH script generated from its signers' public keys and its threshold, for example wsh(multi(2,xpub…,xpub…,xpub…)). A 2-of-3 vault has three signers, and any two of them must sign before value can move. A spend with fewer valid signatures fails Bitcoin's own script check, whatever any server says.
#Funding a vault
- Select Copy address on the vault page and send Bitcoin to it from any wallet.
- Or select Fund to move Bitcoin from your signing profile into the vault. This needs Initiate movement (
INITIATE_PAYMENT).
Incoming funds appear once the network confirms them. Vaults pay network fees for every movement and asset action they sign, so keep a Bitcoin balance in every vault you operate.
A vault's balance is held on-chain at the vault's address. SQRL does not hold it, and cannot move it.
Read Creating a vault, Threshold signing and Vault policies.