Status: Draft standard

Your seed phrase might not be enough

If you use a multisig or another advanced Bitcoin wallet, your seed phrase alone may not be enough to get your bitcoin back. BIP 138 proposes a simple, standard way to back up the missing piece: safely, in as many places as you like.

Draft standard. Not a change to the Bitcoin network. Wallet support varies.

The problem

Your seed lets you sign. But an advanced wallet also needs its descriptor, which tells software which keys belong together and under which rules your coins can be spent. Lose the descriptor, and your keys may no longer lead you to your coins.

Why a seed can be useless without its descriptor >

The idea

Encrypt the descriptor, so copies can live anywhere: cloud storage, email, a friend’s drive, a wallet service. Only someone who holds one of the wallet’s own keys can open it. There’s no new password to remember.

How it works >

Who it concerns

  • Yes

    Multisig, timelocked, inheritance or "miniscript" wallets

    This is exactly the problem BIP 138 addresses.

  • Less critical

    A standard single-key wallet restored from a seed phrase

    Your seed already recovers your coins. BIP 138 also works for single-key wallets and can back up extras such as your transaction labels, but the need is far less critical.

Go deeper

The problem

Why a seed can be useless without its descriptor

Keys alone don't find your coins

For multisig and other advanced wallets, losing the descriptor is almost as catastrophic as losing the seed.

A seed signs; a descriptor finds

A seed phrase holds the private keys that let you sign transactions. But in a wallet that combines several keys, or adds rules like “after one year, this other key can also spend”, your coins sit at addresses built from all the keys and the rules together.

That recipe is the descriptor (or, in a slightly different format, the wallet policy). Without it, wallet software can’t rebuild the addresses, so it can’t find your coins, even if every seed is safe.

The risk that isn’t intuitive

Advanced wallets are often designed to survive losing one seed. A common example is a setup where all three keys normally sign together, with a backup path that lets any two of the three recover.

But a lost seed takes its public key with it. If no one wrote that public key down, the backup path can’t be rebuilt either, and the coins can become unreachable. The very setup meant to tolerate a loss can be defeated by it.

Why people struggled to back it up

It’s long. A descriptor is much longer than a 12- or 24-word seed phrase. Copying it onto paper or stamping it into steel is impractical and error-prone. Some people did engrave descriptors in metal anyway, for lack of anything better.

Offline digital storage fades. USB sticks and similar media degrade over time and are unlikely to survive a flood or fire.

Online copies leak. Phones and cloud storage solve the length problem, but a plain-text descriptor reveals your public keys, your addresses and how your wallet is built. Cloud storage is often unencrypted, provider encryption works in ways you usually can’t inspect, and an account is only as safe as the weakest device logged into it. Every extra copy is one more place to leak from.

What was missing

A standard, compact, encrypted format that:

  • can be stored safely in many places, including services you don’t trust;
  • can be opened only by the people meant to open it;
  • works with any wallet and any signing device.

That’s what BIP 138 defines. Before it, every wallet had to invent its own approach, or none at all.

Sources

Secret vs private

The idea the whole design rests on

A seed is secret. A descriptor is only private. That one difference flips how each should be backed up.

The seed is secret

Whoever gets your seed can take your bitcoin. That makes it extremely valuable to an attacker, who will go to great lengths to get it. So for seeds:

  • digital copies are dangerous, which is why signing devices exist to keep seeds off computers;
  • extra copies are dangerous too, since every copy has to be physically guarded.

Rule: few copies, well guarded.

The descriptor is private

Whoever gets your descriptor can watch your bitcoin, but not spend it. That’s bad for your privacy, but far less valuable to an attacker. And unlike a seed, digital copies are unavoidable: every wallet app used with the account already holds one.

Rule: many copies, but encrypted.

Side by side

SeedDescriptor
What it isThe keys that signThe keys and rules that find your coins
If someone else gets itThey can spendThey can watch, not spend
Kind of sensitiveSecretPrivate
Main dangerTheftLoss, and loss of privacy
Backup ruleFew copies, well guardedMany copies, encrypted

Why this matters for the design

Because a descriptor is private rather than secret, BIP 138 can make choices that would be reckless for a seed: storing copies with untrusted services, and letting a key that is public (rather than a private key) unlock the backup. Each of those choices is explained in Design decisions.

Sources

How it works

The concept, without the math

The wallet’s descriptor is locked in a box. Every cosigner’s signing device can open it, and no one else can.

The picture

Think of a locked box holding your descriptor, with a stack of sealed envelopes attached. Each envelope contains the combination to the box. Each one is sealed so that only one particular cosigner can open it, using something their signing device can always show: its public key.

Locked box The descriptor, encrypted
  • Cosigner Aopens with A's public key
  • Cosigner Bopens with B's public key
  • Cosigner Copens with C's public key
  • Decoyopens with no key
  • Decoyopens with no key
Every envelope holds the combination to the box. Any one real envelope is enough to open it; decoys round the count up so it doesn't reveal how many cosigners there are.
  • To make a backup, a wallet only needs the descriptor itself, because it already lists every cosigner’s public key.
  • To open a backup, you plug in (or scan) any one of the wallet’s signing devices. Your software tries its public key on each envelope until one opens, then opens the box.
  • Some envelopes are decoys that nobody can open. They hide how many real cosigners there are.

What you end up with

One small file, or a short block of text, that you can copy anywhere: cloud storage, email to yourself, a USB stick, a friend, a wallet service. Losing one copy doesn’t matter. Someone finding one copy learns nothing, unless they hold one of your wallet’s keys.

A recovery story

  1. A fire destroys your house, one of your signing devices and your computer, along with the wallet app that held the descriptor.
  2. A second signing device, kept in a safe deposit box, survives.
  3. You install any compatible wallet, fetch a copy of the backup from your cloud storage, and connect the surviving device. Its public key opens the backup, the wallet is rebuilt, and your coins are found.

What can go inside

  • The descriptor or wallet policy: the essential part.
  • Optionally, extras such as transaction labels, or a full wallet backup in the format defined by BIP 139.
  • Several of these can travel together in one backup.

The exact file layout is defined in the specification. This site explains why it was designed this way: see Design decisions.

Design decisions

Every important choice, and why it was made

This page explains why BIP 138 works the way it does, not just what it does.

Each decision answers four questions: what BIP 138 does, why, what was considered instead, and what trade-off was accepted. The reasoning comes from the specification’s own rationale notes and from the public review on GitHub and Delving Bitcoin, which is linked from every decision.

  1. What BIP 138 does
  2. Why
  3. What was considered instead
  4. The trade-off

Who can open a backup

Why does a public key unlock the backup?
Every signing device can show its public key on demand, so recovery needs nothing beyond the devices you already have.
What BIP 138 does

The key that opens a backup is derived from the cosigners’ public keys, specifically their extended public keys (xpubs), which are already written inside the descriptor. To open a backup, a cosigner only has to provide their public key.

Why
  • Signing devices guard private keys tightly. Their secure chips are built to sign transactions, not to run custom decryption code, and they may never let the private key out. But every Bitcoin signing device can export a public key. The specification lists this as a required property: decryption must not need private key material.
  • No new secret to lose. A password would be one more thing to remember, store and pass on to heirs. Your devices already hold everything needed.
  • Nothing to hide from cosigners. The only people who hold these public keys are the people already in the wallet. They know the descriptor anyway, so the backup only needs to stay closed to everyone else.
  • It works with any device. Being vendor-neutral was an explicit goal.
What was considered instead
  • Classic public-key encryption, where opening requires the private key. Rejected because it needs signing devices to run custom decryption.
  • Encrypting the whole backup separately for each cosigner. Rejected because the file would grow by a full copy per cosigner. Instead, the backup is locked once and only a small “envelope” is added per cosigner.
The trade-off

Since public material opens the backup, a backup must never contain private keys or seeds. The specification requires them to be stripped out before encrypting. This is a backup for the descriptor, never for the keys.

Where this was decided
Why can any single cosigner open it, rather than a group?
One key holder is enough to open a backup, even in a wallet that needs several signatures to spend.
What BIP 138 does

Each cosigner gets their own envelope, so any one of them can open the backup on their own.

Why
  • Recovery should be easy when things go wrong. If opening the backup required several people, losing the descriptor would turn into a coordination problem: finding cosigners, scheduling, and doing extra rounds of steps, often under stress.
  • Thresholds don’t fit every wallet. Advanced wallets can have timelocks and recovery paths. For example, a recovery partner who can only spend after a year still needs to read the descriptor to do so. A rule like “any 2 of 3 can open it” doesn’t fit cleanly onto such setups.
  • Simple formats get adopted. Optional advanced features make interfaces harder and hurt compatibility between wallets. A format nobody implements protects nobody.
  • Opening isn’t spending. A cosigner who opens the backup learns the descriptor, not the power to spend.
What was considered instead

Threshold decryption, where several cosigners must combine their keys to open the backup, possibly mirroring the wallet’s own spending rules. It was explored in the discussion and in separate tools, and it does give stronger privacy if one key is compromised. It was kept out of the default to keep the scheme simple. The specification lists threshold-based decryption as a possible future extension.

The trade-off

Any single cosigner, including an heir or a recovery partner, can read the wallet’s descriptor. If you don’t want someone to have that ability, the practical answer is to not give them a copy of the backup until it’s needed, or to leave their key out (see Can some keys be left out?).

Where this was decided
Why doesn't making a backup require a signing device?
Anything that knows the descriptor can create a backup. No signing device has to be plugged in.
What BIP 138 does

Everything needed to create a backup is already inside the descriptor: the cosigners’ public keys. A wallet can produce a backup straight from it.

Why
  • Watch-only wallets can do it. Many people manage their multisig from an app that only holds public information. That app can create backups whenever it wants: right after setup, or every time something changes.
  • No hardware dance. Requiring every signing device to be present for each backup would make backups rare, and rare backups are how descriptors get lost.
  • Copies can be checked. Any software holding the descriptor can verify that a stored copy is intact and still opens.
What was considered instead

A dedicated backup key on each device, fetched from a fixed location instead of reusing the descriptor’s keys. That would make it obvious which key to try at recovery time. It was set aside because every device would need to be connected whenever a backup is made.

The trade-off

Recovery software has to work out which of a device’s many possible public keys to try. BIP 138 handles this with a list of common locations to try automatically (see Why are derivation paths optional?).

Where this was decided
Can some keys be left out?
A wallet can choose which keys get an envelope. Some keys are always left out, and users must be told about any exclusion.
What BIP 138 does
  • One well-known “unspendable” key, used by some Taproot wallets as a placeholder, is always excluded.
  • Wallets may leave out any other key they know to be public, or any key the user doesn’t want to be able to open the backup.
  • Wallets that exclude extra keys should document it, and must make the user aware of every excluded key.
  • A cosigner whose key was left out simply can’t open the backup. Everyone else still can.
Why
  • A key everyone knows would unlock everything. The placeholder key is a published constant used by many wallets. If it got an envelope, anyone could open the backup.
  • Not every cosigner needs to read the descriptor. Leaving out a key’s envelope is the simplest form of access control the scheme offers.
  • No surprises at recovery time. A cosigner who discovers they can’t open the backup only when they need it would be a nasty surprise. Hence the warning requirement.
What was considered instead

Using only a fixed subset of keys, decided by the format itself. Rejected because which keys should be able to open the backup depends on the wallet and its owner.

The trade-off

Excluding keys is wallet-specific behavior, so users depend on their wallet being clear about it.

Where this was decided
Why can't keys seen on the blockchain open a backup?
Spending from your wallet must never hand strangers the key to its backup.
What BIP 138 does

Only public keys that never appear directly on the blockchain are used to open a backup. Keys that would be revealed the first time coins are spent are not allowed. If a wallet’s keys are all of that kind, a backup can’t be made at all.

Keys that are combined into a single shared key (a “MuSig” key) are an exception: they can be used, because only the combined key shows up on-chain, never the individual ones.

Why

When you spend bitcoin, the public keys involved become visible to everyone. If one of those exact keys could open the backup, anyone watching the blockchain could read your wallet’s descriptor after your first spend. Using a key from one step higher in the key hierarchy, which is never published by spending, keeps the backup closed.

What was considered instead

Nothing. This was a gap found during review: an earlier draft would have allowed such keys. A BIP editor spotted it, and the rule was added.

The trade-off

A few unusual descriptor styles can’t be backed up with BIP 138 as-is. Wallets must refuse rather than create a backup that leaks.

Where this was decided
Does it work for single-key wallets?
Yes. BIP 138 works with one key or many.
What BIP 138 does

The specification explicitly supports single-signature wallets, and the same format works regardless of how many keys are involved.

Why
  • A single-key wallet can be restored from its seed, but its extras can’t: transaction labels, which accounts were used, when the wallet was created. One format for every wallet is simpler for software and for users.
  • A reviewer initially wondered whether single-key wallets were left out. The specification was clarified to say plainly that they are included.
The trade-off

For single-key wallets, the backup protects convenience and privacy rather than access to funds, so it matters much less than for multisig.

Where this was decided

What a backup reveals

Why does the BIP warn about reusing an xpub?
A public key you once shared with a server can later let that server read your multisig backup.
What BIP 138 does

The specification warns that some single-key wallet apps, including the desktop apps of some popular hardware wallet makers, send the account’s extended public key (xpub) to their servers to look up balances. If that same xpub is later reused as a key in a multisig, that server could open any copy of the multisig’s backup it obtains. The specification recommends building a multisig from accounts whose xpub was never sent to such a server, such as the accounts dedicated to multisig (the BIP 48 or BIP 87 layouts).

Why

The whole scheme rests on one assumption: only the wallet’s cosigners know its public keys. Sharing an xpub with a service quietly breaks that assumption for that key.

What was considered instead

Nothing that the format alone could fix. Whether an xpub was ever shared depends on how it was used, so the specification states the risk clearly.

The trade-off

Even in this case, the server learns the descriptor, and with it your addresses and how the wallet is built,, not the ability to spend. Good key hygiene avoids the issue entirely.

Where this was decided
Why are derivation paths optional?
Recovery software tries the usual places automatically, so hints are only needed for unusual setups.
What BIP 138 does

A signing device can produce many public keys, each from a different “path”. To open a backup, recovery software has to ask the device for the right one.

  • A backup may include hints about which paths were used, but doesn’t have to.
  • Software that talks to signing devices should automatically try the common paths, for the first ten accounts of each standard layout.
  • Some devices refuse, or ask for on-screen confirmation, for certain paths. Software should treat those as allowed to fail and warn the user if nothing opens.
  • The backup never contains device fingerprints, the short identifiers that name each cosigner’s device.
Why
  • Standard paths are easy to guess anyway, so writing them down adds little for recovery and gives away information about how the wallet is built.
  • Fingerprints would point at the participants. Leaving them out keeps the backup from saying who is involved.
  • Hints remain available for people who used an unusual path and would otherwise struggle to recover.
What was considered instead
  • Always storing the paths in plain view. Convenient, but it reveals the number of participants.
  • A single fixed path for backups. Simple, but not supported without prompts on every device.

The final list was shaped by checking which paths popular signing devices hand out without asking.

The trade-off

Recovery can take a few more attempts, and on some devices an extra confirmation, in exchange for a backup that reveals less.

Where this was decided
Why add decoys?
Fake envelopes hide how many real cosigners a wallet has.
What BIP 138 does

Wallets should add random decoy envelopes that no key can open, rounding the total up to a fixed step: 5, 10, 20, and so on. Envelopes are also put in a standard order with duplicates removed. Recovery software doesn’t need to tell real from fake; it simply tries each one.

Why
  • The count is a clue. Without decoys, anyone holding a copy could count the envelopes and learn, for example, “this is a 3-key wallet”. That’s useful to an attacker sizing up a target.
  • Order is a clue too. If different wallets ordered envelopes differently, a backup could reveal which software made it. A standard order prevents this.
  • Decoys cost almost nothing. They’re small, and opening simply tries more envelopes.
What was considered instead

Leaving the participant count visible. The original drafts did, and it was listed as something to improve. Decoys were the simplest way to blur it without changing how backups are opened.

The trade-off

Slightly larger backups. A determined observer still learns a range (“between 6 and 10 cosigners”), not nothing.

Where this was decided
Why pad the backup?
The size of an encrypted file can leak what’s inside it. Padding blurs that.
What BIP 138 does

Wallets may pad a backup up to a fixed set of sizes, starting at 10 KiB with each step about a quarter larger than the last. Padding is recommended for contents that change over time, such as transaction labels or full wallet backups, and unnecessary for contents that don’t, such as a descriptor alone. The padding sits inside the encryption, so even software reading the file only sees the padded size.

Why
  • Growth is a signal. Picture a wallet that uploads a fresh backup every time you receive a payment. Even fully encrypted, the file grows a little each time, telling your storage provider when you transact and roughly how much your labels have grown.
  • Static backups don’t leak this way. A descriptor alone never changes, so padding it would only make it bigger.
  • Inside is better than outside. Padding added outside the encryption could be stripped or measured. Inside, it’s indistinguishable from content.
What was considered instead

Mandatory padding for everything. Rejected because users who only back up a descriptor would end up copying much larger files for no benefit.

The trade-off

Padded backups are larger. The steps keep the overhead under about 25% above the size needed.

Where this was decided

Robustness and compatibility

Why exactly one encryption algorithm?
One well-known algorithm, already used by Bitcoin Core, means any software can read any backup.
What BIP 138 does

Backups are encrypted with ChaCha20-Poly1305, a widely used, standard method that both hides the contents and detects any tampering or corruption. It is the only algorithm the specification defines.

Why
  • It’s already in Bitcoin Core, where it protects peer-to-peer connections (BIP 324). The alternative would have meant adding a new cryptographic dependency just for backups.
  • It runs well on small hardware without special chip support, which suits signing devices and embedded systems.
  • One algorithm means one thing to implement. Writers can choose freely, but readers have to support every allowed option. With two, every reader would need both.
What was considered instead

AES-GCM, the original choice. It was replaced after an implementer noticed Bitcoin Core doesn’t ship it. Keeping both was considered and dropped, for the reason above.

The trade-off

None for users. The format keeps a marker for which algorithm was used, so a future version can add another if ever needed.

Where this was decided
Why isn't the backup fully deterministic?
Each backup includes a fresh random value, so backing up the same thing twice produces two different files.
What BIP 138 does

Every backup uses a new random value (a “nonce”) during encryption. An all-zero value, which would signal a broken random number generator, is forbidden.

Why

Encryption of this kind is only safe if that value is never reused with different contents. Wallets back up repeatedly, for instance as labels change, so randomness is the standard, well-understood way to guarantee that. Deriving it from the contents instead is possible in theory, but means stepping away from standard practice to save about 32 bytes on a file that’s typically hundreds of bytes or more.

What was considered instead

Fully deterministic backups, where the same input always produces the same file. This was a nice-to-have in the original proposal.

The trade-off

Two backups of the same wallet don’t look identical, so you can’t compare copies byte for byte. You check a copy by opening it instead, which any wallet holding the descriptor can do.

Where this was decided
Why can one backup carry several things?
One backup can hold several pieces, each labeled, and software skips what it doesn’t understand.
What BIP 138 does

A backup can contain several items, for example a wallet policy plus transaction labels. Each item is labeled with what it is:

  • the number of the BIP that defines it (descriptor, wallet policy, labels, full wallet backup…);
  • a vendor-specific tag, for a wallet’s own extras;
  • or a plain-text note.

When software meets an item it doesn’t understand, it skips it and keeps reading. The format also reserves a way to mark future items that older software must refuse rather than misread.

Why
  • Keep each piece simple. Rather than one giant all-in-one file format, each item stays in its own existing standard and the backup simply carries them together.
  • This couldn’t be added later. Allowing several items after the fact would have broken compatibility with existing backups, so it was built in from the start.
  • Unknown extras must never block recovery. Picture a note placed before the descriptor: a wallet that only understands descriptors must still find the descriptor. That’s why every item states its size, so it can be skipped cleanly.
  • No central registry. Labeling items by BIP number means nobody has to maintain a list of approved types.
  • Old software should fail safely. For truly new kinds of content, refusing is better than guessing.
What was considered instead
  • One item per backup, keeping a clean line between unlocking and reading the contents. Changed after review, because support for several items couldn’t be added later without breaking compatibility.
  • A fixed list of content types. Replaced by BIP numbers, which need no upkeep.
The trade-off

Wallets may pick different combinations of items. Interoperability relies on the core item, the descriptor or wallet policy, being understood everywhere.

Where this was decided
Why store recovery hints like a wallet's birth date?
Small hints stored next to the descriptor make restoring a wallet faster and safer.
What BIP 138 does

When a backup holds a descriptor or wallet policy, it can also say, for each account:

  • when it was created (a “birth time”), so software knows how far back to search the blockchain;
  • which range of addresses has been used;
  • whether it is archived, meaning it should be restored to see past coins but not used for new addresses.

All of these are optional. Several accounts can be stored in one backup.

Why
  • Searching the whole blockchain is slow. Knowing a wallet didn’t exist before a certain date lets software skip years of history.
  • Old setups shouldn’t come back to life by accident. If you replaced a multisig, the old one is still worth restoring to see its history, but you don’t want new payments going to it.
  • These hints already exist in wallets. Writing them down in a standard way means they survive a move from one wallet to another.
What was considered instead

Leaving the descriptor format to another standard. Reviewers argued that descriptors are the main use case and no other BIP defined how to store them, so BIP 138 specifies it.

The trade-off

None for the user. Software that doesn’t use the hints just scans more slowly.

Where this was decided
Why Base64 and a .bip138 file extension?
A backup can be saved as a file or pasted as text, using forms wallets already know.
What BIP 138 does
  • As text, a backup is written in Base64, a common way to turn data into plain characters you can paste into an email or note.
  • As a file, the binary form uses the extension .bip138 and the text form uses .txt.
Why
  • Wallets already speak Base64. Partially signed transactions (PSBTs, BIP 174) are usually exchanged this way, so the code is already there.
  • Text travels everywhere. You can email it to yourself, paste it into a password manager, or print it.
  • The extension says what’s inside, so software doesn’t have to guess.
What was considered instead

A Bech32m text form, similar to Bitcoin addresses, which is friendlier to print and type. It’s listed as a possible future extension.

The trade-off

Base64 is less forgiving to retype by hand than Bech32m.

Where this was decided
How can the format evolve?
Every backup says which version of the format it uses, so the format can improve without stranding old backups.
What BIP 138 does

Each backup starts with a “BIP138” marker and a version number, and records which encryption algorithm it used. The specification lists possible future extensions:

  • additional encryption algorithms;
  • threshold-based opening, where several cosigners must cooperate;
  • better hiding of the number of participants;
  • a Bech32m text form.
Why

Backups are meant to sit untouched for years. Whatever changes later, software must be able to tell what it’s looking at and still open older backups.

Compatibility with earlier versions

The Liana wallet shipped an early version of this scheme before it became BIP 138. Those backups are not compatible with BIP 138 and can be told apart by their different marker (“BEB” instead of “BIP138”).

The trade-off

None for the user. Keeping room to grow costs a few bytes per backup.

Where this was decided

What it is not

What BIP 138 doesn't do

What BIP 138 is not

BIP 138 backs up your wallet’s descriptor. It doesn’t back up your keys, change Bitcoin, or store anything for you.

Not a seed backup

A backup must never contain private keys or seeds. Because public keys open it, anything secret inside would be exposed. Your seed phrase still needs its own, separate, well-guarded backup.

Not a change to Bitcoin

BIP 138 is an application-level format, like a file type. It changes nothing about how the Bitcoin network works and needs no one’s approval to use. Wallets adopt it one by one.

Not a storage service

BIP 138 defines what a backup looks like, not where it’s kept. Making and spreading copies is up to you and your wallet software.

Not compatible with earlier experiments

Liana shipped an early version of this scheme before it was standardized. Those backups use a different format and can’t be read as BIP 138 backups.

Not final

BIP 138 is a Draft. It was assigned its number on 11 May 2026 and merged into the BIPs repository on 21 September 2026. This site explains version 0.1.3 (24 September 2026). Details may still change.

Sources

Projects

Wallets, devices and libraries implementing BIP 138

Wallets, signing devices and libraries implementing BIP 138.

NameCategoryStatusNotesSource
KernSigning deviceSupportedSigning device with BIP 138 support.Pending
bip138 (Rust)LibraryReference implementationRust implementation by the BIP author, listed in the specification.Source
Bitcoin Core (proof of concept)WalletProof of conceptExperimental branch by Sjors Provoost adding backup export and import. Not part of a Bitcoin Core release.Source
LianaWalletEarlier, incompatible formatShips an early version of this scheme that predates BIP 138 and is not compatible with it.Source

Last checked: 2026-10-13.

Entries are only listed with a public source.