Standards

What is a PSBT, and why does Litecoin multisig depend on it?

PSBT stands for Partially Signed Bitcoin Transaction (BIP-174). It's the format that lets a transaction be built once and signed piece by piece, by different people, on different devices, without anyone exposing a private key to anyone else.

The problem it solves

A single-sig spend is simple: one device has the key, it signs the transaction, it gets broadcast. Done in one step, on one device.

Multisig breaks that model. If a 2-of-3 vault needs two signatures, those two keys are very likely on two different devices, sometimes held by two different people. Something has to carry the unsigned transaction to the first signer, carry the partially-signed result to the second signer, and then combine both signatures into something the network will accept. That "something" needs a standard format, or every wallet would invent its own incompatible version.

That's what PSBT is: a standard container for a transaction that's in progress, not yet fully signed, that any compliant wallet can read, add a signature to, and pass along.

What's actually inside one

Conceptually, a PSBT carries everything needed to sign without needing to trust whoever handed it to you:

  • The unsigned transaction, inputs and outputs, exactly what's being spent and where it's going.
  • Metadata about each input, like the previous output being spent and the script needed to redeem it, so a signer can verify what they're actually signing instead of trusting a description.
  • Partial signatures, added incrementally as each required cosigner signs their part.
  • Derivation paths and public keys for the cosigners involved, so wallets can identify which of their keys is relevant without guessing.

Nothing in a PSBT ever contains a private key. It's signatures and public data only, which is exactly why it's safe to move between devices, upload to a coordinating server, or email, although in practice a dedicated coordination flow is safer than email.

The lifecycle of a PSBT

1
BuildOne cosigner constructs the unsigned transaction: where the funds are going, how much, and which vault UTXOs are being spent.
2
DistributeThe PSBT is shared with the cosigners who need to sign, today usually through a coordinating app rather than passing files by hand.
3
SignEach required cosigner reviews the transaction (amount, destination) and adds their signature, locally, using their own key.
4
CombineOnce enough partial signatures exist to meet the quorum (two out of three, for example), they're merged into a single PSBT.
5
Finalize and extractThe combined PSBT is converted into a standard, fully signed transaction ready for the network.
6
BroadcastThe finalized transaction is sent to the Litecoin network. From here it's indistinguishable from any other transaction.

Why this matters beyond multisig

PSBT isn't just a multisig trick, it's also how hardware wallets sign without exposing keys to the connected computer. The computer builds the unsigned transaction, the hardware device signs it internally and returns the result, and the private key never leaves the device. Same format, same idea, just one signer instead of several.

Because it's a standard (BIP-174) rather than something proprietary, a PSBT built in one wallet can usually be signed in a completely different one. That's what makes a multisig vault portable: if the coordinating service disappeared tomorrow, the same standard PSBT flow works in Electrum or any other compatible wallet using your seed phrases and vault configuration.

See the full signing flow as LiteSig implements it, including what the server can and can't see at each step, on the security architecture page. Or walk through building a real vault in the multisig tutorial.