All Guides
BIP-137 vs BIP-322 vs BIP-127
Three Bitcoin proof standards. Three different jobs.
BIP-137
Legacy message signing
Control of a private key for a legacy-style address.
BIP-322
Generic message signing
Ability to satisfy the script for a Bitcoin address.
BIP-127
Proof of reserves
Control of a set of reserve UTXOs at a stated block.
The short version
Use BIP-137 when the wallet gives you a classic Bitcoin signed message. Use BIP-322 when the address is SegWit, Taproot, script-based, or otherwise modern. Use BIP-127 when the question is not one address, but reserves.
They are complementary. BIP-137 and BIP-322 answer, "Can this signer prove control of this address?" BIP-127 answers, "Can this institution show reserve inputs tied to this commitment?"
Comparison
BIP-137
Best for
P2PKH wallets and older signing flows.
Proof output
Base64 recoverable ECDSA signature.
BIP-322
Best for
SegWit, Taproot, script, and modern wallet flows.
Proof output
Witness stack, transaction, or PSBT-style proof data.
BIP-127
Best for
Custodians, treasury desks, exchanges, and reserve audits.
Proof output
Proof transaction set with proof-file metadata.
Network mode
The network must match the proof. A mainnet address or proof must not be accepted while the system is in test mode. A test-network address or proof must not be accepted in production mode.
- Production mode: mainnet addresses such as
bc1...,1..., and3.... - Test mode: test-network addresses such as
tb1...,m...,n..., and2.... - BIP-127 proof files identify the network with network magic values for mainnet and testnet.
Business use
For a borrower proving an address balance, BIP-137 or BIP-322 is enough. The holder signs a challenge. The verifier checks the signature and current balance.
For an institution proving reserves across many UTXOs, BIP-127 is the better shape. It lets the issuer bind a set of inputs to a commitment message and block reference. That is closer to an audit artifact than a single wallet signature.
The standards do not remove judgment. They give the evidence a Bitcoin-native form that can be checked by software and preserved in reports.