Documentation

Getting Started

Everything you need to go from a blank USB flash drive to signing your first transaction, start to finish.

New to SafeKeepVault?

The Quick Start covers setup in eight short steps. This page has the full detail.

Critical Precautions: Read Before Proceeding

Your 12- or 24-word seed phrase is the only unconditional backup of your private key.

Physical Backups are Mandatory — Write your seed phrase and BIP-39 passphrase onto physical media and store them in separate, secure locations. Never store these records digitally. If your flash drive fails, is lost, or is wiped, your physical backup is the only path to recovering your Bitcoin.

The Passphrase is Integral — A BIP-39 passphrase is not just a password; it is a permanent extension of your seed phrase. Without it, your seed phrase alone cannot recover your funds. Treat the passphrase with the same level of security as the seed phrase itself.

Active Development Notice — SafeKeepVault is currently in active development. We strongly recommend beginning with a nominal balance while you familiarize yourself with the tools. Ensure your physical backups are verified and current before securing significant funds.

System requirements & components

SafeKeepVault creates a secure, offline environment without you needing to take your computer apart or buy extra gear. The moment it starts up, it automatically disables all outside connections—like Ethernet, Wi-Fi and storage devices—to keep your data completely isolated.

How SafeKeep OS stays offline

  • No network drivers — every network, Wi-Fi, Bluetooth, NFC, USB-network (including phone tethering) and USB-gadget driver is deleted from the image. The build fails if one is left behind.
  • No network services — the network managers are switched off for good, the radios are blocked, and a firewall drops everything as a last line of defense.
  • No terminal and no file manager — release builds don’t include them, so there is no way to open a command line in SafeKeepVault.
  • No compilers — compilers, kernel headers and DKMS are removed after the build, so a new driver can’t be compiled in SafeKeepVault.
  • A watchdog — if a network interface ever appears, SafeKeep switches it off and shows a red warning across the top of the app. It also warns if the firewall isn’t loaded.

Preparing the computer

For the strongest air gap, unplug the computer’s network cable before you start, and don’t plug in USB network adapters or phones. On a business laptop, turn off remote management in the BIOS settings if you can.

System requirements

  • A Boot Drive — A standard USB flash drive of 8 GB or more, flashed with the SafeKeepVault image. Once you boot your computer from this drive, the system runs in total isolation. Your internal storage remains unmounted and entirely untouched throughout the session.
  • A Host Computer — Any x86-based laptop or desktop with at least 4GB of RAM. SafeKeepVault is built to run on a wide range of hardware regardless of age — the x86 computer you already own is very likely compatible. Note - Apple Silicon Macs are not supported due to their unique architecture and secure boot process.
  • Webcam — While not strictly required, an integrated or USB-connected webcam is highly recommended. This enables the use of the Courier Tool, our high-density QR transfer tool, allowing you to sign transactions and verify data without ever physically connecting the vault to another device.
  • A Password Manager — Strongly recommended for generating and storing the high-entropy password that protects your encrypted vault partition. A password manager lets you use a truly unbreakable credential without the risk of forgetting it, and pairs seamlessly with the QR unlock workflow described in Step 1 below.

Components

  • The Transfer Drive — The USB flash drive creates a dedicated partition for moving data in and out of the vault. This is the only point of contact between SafeKeepVault and external storage. When combined with the Courier Tool—our high-density QR tool—this creates a secure, bidirectional data flow.
    • Seamless QR Unlocking: By storing your vault password in a manager on your mobile device, you can generate a QR code from that password (see Step 1). Simply display your phone to the host’s webcam to unlock your encrypted vault instantly—combining elite cryptographic strength with a streamlined, convenient way to unlock your wallet. Keep the QR image inside the password manager, never in your photo library.
    • Port Security: About 30 seconds after boot, the vault blocks any new keyboard or mouse that is plugged in, to defend against “BadUSB” devices that pretend to be a keyboard and type commands. Other USB storage is never mounted. The only exceptions are a Coldcard or Trezor One used for co-signing, which can be plugged in at any time and can never act as a keyboard or mouse. File-based transfers should be managed by moving the drive between machines while the vault is powered down.

Step 1: Vault password & QR code

Before you boot SafeKeepVault for the first time, you need a vault password ready to go. This password will encrypt the persistent partition of your flash drive—the storage layer where your keys and vault data live between sessions. It is the primary cryptographic barrier protecting everything inside the vault.

Your Password is the Primary Defense

The strength of your vault password is the single most critical security decision you will make during setup. If an unauthorized party gains physical access to your drive, this password is the only barrier protecting your keys. There is no “forgot password” reset and no remote wipe. The password is the absolute lock.

SafeKeepVault checks it for you: during setup, a password that is easy to guess (a common password, a name and a year, a few words) is refused, and one that is only fair asks you to confirm. No password manager? Setup can generate a strong one for you (see The Encrypted Vault).

Generate a high-entropy password

Open your password manager and generate a new credential for SafeKeepVault. Use a fully random string of at least 20 characters. Do not use a memorable phrase or a password you have used anywhere else. Human-chosen passwords follow predictable patterns that modern brute-force tools can exploit. A randomly generated credential cannot be guessed — only lost. Your password manager is its permanent home; do not write it down in plaintext anywhere.

Generate your unlock QR code

Typing a 20+ character random password on every boot is impractical. Instead, convert it to a QR code using the widget below and save the image on your phone, as a file or as an attachment in your password manager. On every subsequent boot, simply hold your phone up to the vault’s webcam — the system reads the QR and unlocks the vault instantly, with no typing required. This converter runs entirely in your browser — safekeepbitcoin.com does not store your password.

The QR Code Is the Password

The QR holds your vault password, but it is only half of what anyone needs: without your SafeKeepVault USB drive it opens nothing. That is why keeping it on your phone is a sensible trade for never typing a 20+ character password.

  • Save it on your phone — as a file, or as an attachment in your password manager, and open it when you unlock the vault.
  • Keep the password in your password manager — it is your copy if the phone is lost or replaced.
  • Your Encrypted Backups can use the same password — SafeKeepVault recommends it, so there is one less password to lose. A backup file can be opened away from the USB drive, so it then needs only the file and your QR: don’t leave backup copies on an everyday computer any longer than you need them.
  • Delete the downloaded file — once the QR is on your phone, remove it from your computer’s Downloads folder.
  • Prefer not to type it here? — this page is on the internet. The code runs only in your browser, but if you would rather not paste your vault password into any web page, skip the QR and type the password at the unlock prompt instead.

Vault password → QR code

Save this image in your password manager, not your photo library (photos sync to the cloud), then delete the downloaded file. Display it to the vault’s webcam on every boot to unlock instantly.

Step 2: Download & flash the drive

Download the Software — Visit the Download page to obtain the latest release. The software is provided as a .zip archive; once extracted, you will find the .img disk image required for the installation.

Flash to USB — To write the image to your flash drive, we recommend using BalenaEtcher, which is available for Windows, macOS, and Linux.

  1. Open BalenaEtcher and select the extracted .img file.
  2. Select your target flash drive.
  3. Click Flash to begin the process.

While BalenaEtcher provides the most straightforward experience across all platforms, advanced users may also utilize the dd utility on macOS/Linux or Rufus on Windows.

Verify the Release — A developer signature is provided to verify software integrity and authenticity. Our Verification Guide contains the public keys and checksums required to validate the release across Windows, macOS, and Linux.

Step 3: First boot & encryption

Insert the USB flash drive, then power on or restart your computer. During startup, most systems allow you to choose a temporary boot device by pressing a function key such as F2, F8, F9, ESC, etc. immediately after powering on. On Macs with Intel processors, hold the Option key during startup and choose SafeKeep (flash drives set up before v1.53 show as “EFI Boot”). Most PCs start SafeKeepVault with Secure Boot left on. If yours refuses the flash drive, with a Secure Boot or “security violation” message or no flash drive in the boot menu, turn off Secure Boot in the BIOS/UEFI setup, or allow the “Microsoft 3rd-party UEFI CA” if your PC offers that option. Turning Secure Boot off can make Windows ask for your BitLocker recovery key the next time it starts, so keep it handy. Intel Macs with the T2 chip (2018–2020) need Startup Security Utility set to “No Security”. Flash drives made before v1.54 still need Secure Boot off until they are reflashed. SafeKeepVault skips the usual desktop screen, booting straight into a clean, secure space built only for running the software.

Before anything else, the vault runs a start-up self-check: it feeds published Bitcoin test vectors (seed words, key derivation, addresses for every wallet type, and test signatures) through the same code it will use for your keys. If this computer gives a single wrong answer, the vault stops with the message “SafeKeep stopped: start-up self-check failed” and lists the failed checks. Don’t use that session: power off, and boot again from a freshly verified drive or on different hardware.

One-time setup: the encrypted vault

Upon your initial boot, SafeKeepVault will guide you through the creation of your Encrypted Storage Partition. This persistent volume is where your keys and vault data reside between sessions. When prompted to set your vault password, select the scan QR option and display the QR code you saved in Step 1 to the webcam. The scanner will read it instantly and use it to encrypt the partition. If it hasn’t read a code after 30 seconds, you’re taken back to choose scanning or typing. If you type the password instead, it is shown as you type and asked for twice, so a typo can’t lock you out. Every subsequent boot works the same way — just scan and you’re in.

Strength check. Setup rates the password before it locks the vault with it. A Weak one is refused and you choose another; a Fair one shows why it could be stronger, and you choose another or Use this one anyway. A long random password from a password manager is Strong and goes straight through.

No password manager? Choose Generate One for Me. SafeKeepVault makes a strong password of 6 random words and shows it as a QR code and as numbered words. Save it one way or both: scan the QR code into your phone’s password manager (with the phone’s camera, or the Courier Tool’s Receive tab and Copy to clipboard), or write the words down. Then Check Your Copy: choose Scan it back from my phone and show the saved QR code to the camera, or Type the words from your paper. Only then is the vault locked with it. To unlock, scan the QR code, or type the words in lowercase with one space between them.

Changed your mind half-way? Cancel takes you back a step. Closing the first choice offers Go back to setup or Shut down; after a shutdown, setup starts again the next time you start the computer from the flash drive.

Once the vault is created, choose Continue now: you go straight to the unlock prompt, scan or type the same password, and SafeKeepVault starts, with no restart. To restore from a .7z backup that isn’t on the flash drive yet, continue too: on the welcome screen choose I already have a backup → Encrypted backup (.7z), then Receive a Backup with the Courier, and send the backup from the Courier Tool on your phone or another computer. If this computer has no camera, choose Shut down to copy a backup onto the flash drive instead: copy the backup onto the TRANSFER drive from another computer, then put the flash drive back and power on.

Alternatively, at the decryption prompt you may choose to bypass the encrypted vault entirely and boot into a Temporary Session. This launches a volatile session without writing any data to the physical drive. Manually enter your seed and perform the necessary operations. When you finish, Lock clears the session from memory and returns to the unlock screen, where you can open your vault or start another Temporary Session. You don’t need to power off to get back to your vault. This mode is ideal for users who prefer to keep their keys exclusively on physical media and need no persistent storage on the drive. Chose it by mistake? Unlock my vault instead on the Temporary Session welcome screen ends the session and returns to the unlock prompt, without restarting.

Initial configuration options

Once the vault is unlocked for the first time, the welcome screen (“Welcome to SafeKeepVault”) offers two buttons: Create a new wallet and I already have a backup. The second asks what your backup looks like and shows five choices: Recovery words, Encrypted backup (.7z), Seed XOR shares, COLDCARD backup and Shamir shares (SLIP-39). In a Temporary Session the heading reads “Temporary Session”, and Sign with Hardware Wallet and Unlock my vault instead also appear.

SafeKeepVault welcome screen with Create a new wallet, I already have a backup, and the five backup choices: Recovery words, Encrypted backup (.7z), Seed XOR shares, COLDCARD backup and Shamir shares (SLIP-39)
The welcome screen on a new flash drive, after clicking I already have a backup.
  1. Create a new wallet — Access the Entropy Generator, SafeKeepVault's seed generator. Generate a seed from the device’s random number generator in one click, or add your own randomness: dice rolls, a shuffled deck of cards, mouse movement and camera sensor noise, or words you draw by hand. See Generating a new seed below. A mandatory verification sequence ensures your physical backup is accurate before any data is committed to the vault.
  2. Recovery words — Import an existing 12- or 24-word recovery phrase by typing it into the word boxes or scanning its SeedQR. It is stored in the encrypted vault and loaded each time you unlock, unless you choose not to keep it on the flash drive (see Seed storage).
  3. Seed XOR shares — Reconstruct a seed phrase by combining the shares made with SafeKeep’s Seed XOR Splitter or any other Seed XOR tool, such as a Coldcard. Type each share into the word boxes, which suggest words as you type, or scan its QR code. The shares are combined only in memory; the individual shares are never stored on the drive. A share with a wrong word, a share entered twice, or shares that cancel out to an empty seed are rejected, and SafeKeep shows the recovered fingerprint to compare with your share cards before anything is saved.
  4. Shamir shares (SLIP-39) — Reconstruct a seed from Shamir’s Secret Sharing (SLIP-39) shares. Type each share into the word boxes (20 or 33 words, with suggestions) or scan its QR code, and click Add Share. Each share is checked as you add it: a wrong word, a share from a different set or the same share twice is refused, and SafeKeep tells you how many shares the set needs. Extra shares beyond that are fine. Then click Combine & Recover. The vault shows two readings, each with its fingerprint and first address: Made with SafeKeep, with a Restore This Wallet button, and Made on a Trezor or another SLIP-39 wallet, which SafeKeep can’t open yet. Nothing is saved until you click Restore, so shares made on a Trezor are never saved as the wrong wallet.
  5. Encrypted backup (.7z) — Import a previously encrypted vault archive created using the Encrypted Backup tool. This restores your entire environment—including all stored keys, passphrases, and custom configurations—onto a new or freshly flashed boot drive. A backup that isn’t on the flash drive yet can be received with the Courier: Receive a Backup with the Courier.
  6. COLDCARD backup — Open a COLDCARD’s encrypted backup and choose what to keep: its wallet, its multisig wallets and its notes. See Restoring from a COLDCARD backup.
  7. Sign with Hardware Wallet (Temporary Session only) — Co-sign a multisig transaction with a connected Coldcard or Trezor One without loading any seed into the vault. (To add a Coldcard’s or Trezor One’s key to a multisig wallet in the first place, use the Output Descriptor tool’s Coldcard (USB) and Trezor (USB) buttons.) See Signing with only a hardware wallet.

Restoring from a COLDCARD backup

On the welcome screen, choose I already have a backup → COLDCARD backup. The backup is read and decrypted in memory, and you see what’s in it before anything is saved. There are three ways to bring it in:

  • Get It from the COLDCARD over USB — plug the COLDCARD into this computer and unlock it with its PIN. It makes a fresh backup of what’s on it now. It can’t send older backup files from its SD card this way.
  • Receive with the Courier — for an older backup file, such as one on the COLDCARD’s SD card. Copy it to your phone or another computer first, open the Courier Tool there, choose the file and start the loop, then hold it in front of this computer’s camera. The file stays encrypted with its 12 words.
  • Choose backup file… — for a backup file already on the Transfer Drive.

The 12-word password. Type the 12 words the COLDCARD showed when it made this backup, then click Open Backup. Each backup has its own new password, and these aren’t your recovery words. If you typed your own password on a COLDCARD Q, click I typed my own password on a COLDCARD Q and enter that instead. Type the 12 words only into SafeKeep, offline.

Is USB safe? The COLDCARD must be unlocked before it will make a backup. It shows the password only on its own screen and quizzes you, so the backup is sent only after you confirm there. What crosses the cable is still encrypted. If you don’t use USB, you can turn it off on the COLDCARD: Settings → Hardware On/Off → USB.

Once the backup is open, you choose what to keep:

  • The wallet — the main wallet’s recovery words, checked against the rest of the file, with its fingerprint. Restore This Wallet shows that fingerprint on the button.
  • Seed Vault — if the backup holds a Seed Vault, you can restore one of those seeds instead of the main wallet, or click Show words to view its words and write them down. The seeds you check are kept in this vault’s Seed Vault, so you can switch to them from the Dashboard (not in a Temporary Session, or on a flash drive set not to keep the seed).
  • Multisig wallets — each one you tick is saved in Output Descriptor, showing which key is yours, so the PSBT Signer checks transactions against it.
  • Secure Notes & Passwords (COLDCARD Q) — each one you tick becomes a SafeKeep note. A title you already use gets “(COLDCARD)” added, so nothing is overwritten.

Backups made with a passphrase. If a BIP-39 passphrase was active when the COLDCARD made the backup, the backup holds that passphrase wallet’s master key and no recovery words. SafeKeep says so plainly. Restore with Recovery words instead, then add the passphrase on the Dashboard. If the backup has a Seed Vault, you can restore one of those seeds.

A Temporary Session keeps nothing, so it can load a wallet from the backup but doesn’t save its multisig wallets or notes. To add those to a vault you already have, see Import from a COLDCARD backup.

Restore from a COLDCARD Backup screen with Get It from the COLDCARD over USB, Receive with the Courier, Choose backup file, twelve boxes for the backup password and the Open Backup button
Restore from a COLDCARD Backup: first the backup, then its 12-word password.

Generating a new seed

Generate Secure Seed creates a seed from the device’s secure random number generator in one click, and is the right choice for most people. To add your own randomness, open Advanced: Provide Manual Physical Entropy and choose a mode:

  • Mixed (recommended) — your dice, cards, mouse and camera input is hashed and mixed with the device’s random number generator. The seed is safe if either one is good, but it can’t be reproduced on another device.
  • Verifiable Dice — physical dice only, with nothing else mixed in. The seed is the SHA-256 of your rolls, the same method SeedSigner and COLDCARD use, so you can check it on one of them. Roll exactly 50 times for 12 words or 99 times for 24 words, then enter the same rolls in the same order on the other device: the words must match exactly. Security depends entirely on your dice, so use a fair die and never let anyone see or record the rolls. SafeKeep refuses rolls that follow a pattern, such as 123456 over and over or long runs of one face, because a seed made from them could be guessed. If the rolls only look unusual, you tick a box to confirm they came from real dice before the seed is made.

    You can also check on Ian Coleman’s BIP39 tool: tick Show entropy details, choose entropy type Base 10 (not Dice, which counts a 6 as 0 and gives different words), set Mnemonic Length to the same word count (not “Use Raw Entropy”), and type the rolls as digits 1–6. Only do this with practice rolls, or with the tool’s offline copy on a computer that never goes online again: your rolls are your seed.
  • Draw Your Own Words — words you draw by hand and coin flips, with nothing else mixed in. SafeKeep works out the last word. See Draw Your Own Words.
Verifiable Dice mode with all 50 rolls entered for a 12-word seed, instructions for checking the words on SeedSigner or COLDCARD, and the Forge Seed button
Verifiable Dice after 50 rolls for a 12-word seed. The panel explains how to enter the same rolls on SeedSigner or COLDCARD and check that the words match.

In Mixed mode you can combine any of these sources:

  • Manual dice — press 1–6 for each roll (about 2.58 bits each). Backspace undoes a typo. A fairness check warns if the die looks biased.
  • Playing cards — shuffle a 52-card deck thoroughly (at least 7 riffle shuffles), then enter the cards from the top: rank (A, 2–9, T or 0, J, Q, K), then suit (S, H, D, C). A full deck adds about 225 bits. A card already entered is refused, Backspace undoes the last card, and Reshuffle & Start a New Deck begins again.
  • Mouse movement — 0.25 bits per sample, and never more than half the meter: add dice, cards or camera noise for the rest.
  • Camera noise — 4 bits per frame, taken only from the sensor-noise bits, and only when they change between frames.
Playing Cards entropy source with 16 of 52 cards entered from a shuffled deck
The Playing Cards source, part-way through a shuffled deck. Each card is credited by how many cards are left, so a full deck adds about 225 bits.

The meter counts only the randomness you add (“bits from you”). The device’s random number generator is always mixed in as well, but isn’t counted. Before every seed, SafeKeep tests that random number generator and makes no seed if its output looks broken.

Manual Dice card with 60 rolls entered and a fairness check reporting the die looks fair
When you add physical dice rolls in the Entropy Generator (under Advanced: Provide Manual Physical Entropy), a fairness check counts each face and, after 30 rolls, says whether the die looks fair, possibly biased or likely biased. In Mixed mode it’s advice only. In Verifiable Dice, where the rolls are the whole seed, patterned rolls are refused.

Draw Your Own Words

This mode makes a seed from your own randomness and nothing else. You draw all the words but the last by hand and flip a coin, and SafeKeep works out the last word. In the Entropy Generator, open Advanced: Provide Manual Physical Entropy and choose Draw Your Own Words.

  1. Put the 2048 BIP-39 words on slips (or the numbers 1–2048, and look each number up in the word list), mix them in a bag, and draw one. Write it down, put it back, mix again, and draw the next. Repeat until you have 11 words (23 for a 24-word seed).
  2. Flip a fair coin 7 times (3 times for a 24-word seed): Heads = 1, Tails = 0.
  3. Enter the words and the flips in the order you drew and flipped them, tick the confirmation box, and click Forge Seed.

Draw the words; never choose them

Words you pick yourself, or remember, follow patterns that an attacker can guess, however random they feel. Nothing else is mixed in, so the seed is only as random as your draw and your coin.

SafeKeep refuses a draw that looks made up: the same word three or more times, four or more words in a row that sit next to each other in the word list, or all the words in alphabetical order. It says what it found and asks you to draw again. You also tick a box that reads “I drew these words at random and flipped a real coin. I didn’t choose any of them.” Changing a word or a flip clears the box.

To check the last word, use SeedSigner’s Tools → Calc 12th/24th word → Coin flip entropy with the same words and flips. It shows the same last word.

Draw Your Own Words mode with 11 practice words and 7 coin flips entered, the confirmation box ticked, and the Forge Seed button
Draw Your Own Words with 11 practice words and 7 coin flips entered. These are public test words: never use words from a picture for a real seed.

Your wallet on the Dashboard

Once a seed is loaded, the Dashboard opens with a card for your wallet. It shows:

  • A three-word name — the seed nickname, shown in quotes, such as “Digital Wheat Crumble”, and labelled “seed nickname” with a note that it is not part of your recovery words. It is worked out from your seed words: the same seed always gets the same three words, on any flash drive, so you can tell at a glance which seed is loaded. It is a convenience label only: it doesn’t prove that the flash drive is genuine, and it is never a substitute for your 12 or 24 recovery words.
  • A picture — a small colored LifeHash pattern made from the wallet’s fingerprint. It is the same picture Sparrow Wallet shows for the same wallet, so you can tell at a glance that your watch-only wallet and the vault hold the same key. Always check the fingerprint itself too: the picture is a quick check, not a replacement.
  • The fingerprint, the word count and the passphrase — for example 5436D724, 24 words, No passphrase.
  • Two buttons — Use a passphrase wallet (or Change passphrase once one is applied) and Lock or switch seed.

Next to the card, Health lists when this flash drive last made an encrypted backup, whether the Transfer Drive is ready, and the SafeKeep version. Below them, What would you like to do? has a tile for each everyday task: Sign a transaction, Show an address, Connect a wallet app, Transfer files and Back up. Every tool is listed under All tools, and Device Options is at the bottom. At the top left, the Offline · Protected badge sums up the security checks: click it to see each one. It turns amber (“Check security status”) if any check fails.

SafeKeepVault Dashboard: the wallet card with LifeHash picture, the seed nickname “Digital Wheat Crumble” with a note that it is not part of the recovery words, fingerprint 5436D724, 24 words and No passphrase; the Health list; and the five task tiles
The top of the Dashboard: your wallet, Health, and the five everyday tasks.

Passphrase wallets: why the name and fingerprint change

A BIP-39 passphrase turns the same seed words into a completely different wallet, with its own fingerprint and addresses. When you apply one, the wallet card switches to that wallet:

  • The title becomes the passphrase’s name from your Passphrase Library, or “Passphrase wallet” for one you typed.
  • The picture and fingerprint change to the passphrase wallet’s. This is the fingerprint your watch-only wallet should show for it.
  • The three words move to a chip that reads Seed nickname: “Digital Wheat Crumble”. They don’t change, because they come from the seed words alone: they tell you which seed is underneath, not which wallet is open.

Click Use a passphrase wallet. A passphrase picked from the Library is applied at once. One you type needs Apply, then typing a second time and Confirm & Apply, because a typo would open a different, empty wallet. To go back to the wallet without a passphrase, click Change passphrase and clear it with ✕.

Wallet card with a typed passphrase applied: title Passphrase wallet, fingerprint 7274DF1B, 24 words, and a chip reading Seed nickname: Digital Wheat Crumble
The same seed with a typed passphrase applied: a new title, picture and fingerprint, while the seed nickname chip still names the seed underneath.

On tool screens, a sidebar lists the tools, with the most-used ones at the top and the rest under Advanced Tools. Its card at the top shows the active fingerprint and LifeHash, and ← Dashboard takes you back. On tool screens the Seed Nickname also shows as a small label in the status bar.

Step 4: The transfer drive

The Transfer Drive is the dedicated partition on your flash drive used to move files in and out of the vault — signed transactions, PSBT files, encrypted backups, and exported reports all pass through here. When the flash drive is inserted into your everyday Mac or Windows computer, this partition mounts like a normal drive, giving your wallet software direct access to any files the vault has written to it — this is how you carry files between the two computers.

No setup needed

The vault mounts the Transfer Drive automatically on every boot. There is nothing to click and no permission prompt. The Dashboard’s Health list shows Transfer Drive ready (and the status details show TRANSFER: MOUNTED) once it is ready, and every tool can read from and write to it straight away.

When a screen asks you to choose a file, SafeKeep lists the files on the Transfer Drive that the screen accepts, newest first. The system file dialog doesn’t open, so Home, Other Locations and other drives aren’t offered. If a file isn’t listed, copy it onto the Transfer Drive or receive it with the Courier, then click Refresh.

Removing the drive from a live vault session is a one-way action: as a security precaution, you cannot hot-swap it back in without rebooting the vault.

Creating a watch-only wallet

Your vault holds the private keys; a watch-only wallet on your everyday device holds the public keys. The watch-only wallet tracks your balances, generates receive addresses, and builds unsigned transactions — all without ever touching a private key. When it’s time to spend, the watch-only wallet hands off an unsigned PSBT to the vault for signing, then broadcasts the result.

The easy way: Connect a wallet app. On the Dashboard, click Connect a wallet app and pick Blue Wallet, Electrum, Nunchuk, Sparrow, Specter or Another wallet. Choose the address type and, for apps that support it, single-sig or multisig (with SafeKeep as one cosigner). The vault lists what to tap in that app, and Show the QR code opens Seed Management with the right export already chosen and its QR code on screen (animated for Nunchuk). It also tells you the fingerprint and path the app should show, so you can check the key arrived correctly.

Connect a Wallet App screen with Specter selected, the address type and wallet choices, the numbered steps for Specter Desktop and the Show the QR code button
Connect a wallet app with Specter picked: choose the address type and wallet, follow the steps, then show the QR code.

Doing it by hand. Open Seed Management (under All tools → Keys & Seeds), choose the Address Type, Wallet Type and Key Format shown in your wallet’s box below, then press Show QR, or Download JSON to save a file to the Transfer Drive. After a download, SafeKeep offers Send with the Courier, which plays the file as an animated QR code for the Courier Tool on your online device. Or move the flash drive. Then follow the steps for your wallet.

A multisig wallet you built in another app? If you set up a multisig in Sparrow, Specter, Nunchuk or another coordinator, you don’t need to enter each key into the vault. Open Output Descriptor → Import, scan the wallet’s descriptor or setup QR code (or paste it, or load the file from the Transfer Drive), and the vault checks it at once, shows whether this seed is one of its keys, and lets you name it and Save Wallet. See Output Descriptor.

SafeKeepVault Seed Management tool with the master seed card, the optional passphrase field, and the Address Type, Wallet Type and Key Format menus
The Seed Management tool. Seed displays have a Show words / Hide words button, so the words stay hidden until you ask.
Seed Management's Address Type, Wallet Type and Key Format menus
Address Type, Wallet Type and Key Format. Match them to the settings box for your wallet below.

BlueWallet (Mobile — iOS & Android)

Use these settings and steps for BlueWallet, or pick Blue Wallet in Connect a wallet app (single-sig). Keys are transferred directly via QR code — no file transfer required. BlueWallet’s first receive address should match address #0 in Show an address.

Single Signature

SafeKeepVault — Seed Management export settings Wallet Type: Single-Sig Key Format: Output Descriptor (BIP-380)
  1. Tap Add Wallet and choose type Bitcoin.
  2. Tap Import Wallet.
  3. Tap Scan or import a file.
  4. Click Show QR on SafeKeepVault and scan the QR code with your phone. BlueWallet imports the xpub and fingerprint automatically and creates your watch-only wallet.

Multisig

SafeKeepVault — Seed Management export settings (repeat for each co-signer key) Wallet Type: Multi-Sig (BIP-48) Key Format: Output Descriptor (BIP-380)
  1. Tap Add Wallet and choose type Multisig Vault.
  2. Tap Create, then Let’s Start.
  3. Tap Import vault key 1 → Scan or import a file.
  4. Scan the first key QR from SafeKeepVault.
  5. Repeat steps 3–4 for each additional co-signer key.
  6. Tap Create to finalize the multisig vault.

Nunchuk (Mobile — iOS & Android)

Use these settings and steps for Nunchuk, or pick Nunchuk in Connect a wallet app. Nunchuk scans the key straight off the vault’s screen as an animated QR code — no file to transfer.

Single Signature

SafeKeepVault — Seed Management export settings Wallet Type: Single-Sig Key Format: Hardware Wallet JSON (Minimal)
  1. In SafeKeepVault, open Seed Management, configure the settings above, click Show QR, then Play as animated QR.
  2. In Nunchuk, tap Add Key and choose Passport, then scan the animated QR code on the vault’s screen. Hold the phone steady until Nunchuk finishes reading.
  3. Name your key and tap Add Key. Your signing key is now registered.
  4. Return to the Nunchuk home screen and tap + to add a wallet.
  5. Select Custom Wallet, name it, choose the address type you used in step 1, and tap Continue.
  6. Select the key you created in step 3, tap Continue, then Create Wallet.

Multisig

SafeKeepVault — Seed Management export settings (repeat for each co-signer key) Wallet Type: Multi-Sig (BIP-48) Key Format: Hardware Wallet JSON (Minimal)
  1. Follow the same key creation steps as Single Signature above, selecting Multi-Sig (BIP-48) as the Wallet Type in SafeKeepVault. Repeat for each co-signer key.
  2. In Nunchuk, tap + and select Group Wallet.
  3. Select the appropriate co-signer keys you created, configure the signing threshold (e.g., 2-of-3), and tap Create Wallet.

Sparrow (Desktop — Windows, macOS, Linux)

Use these settings and steps for Sparrow, or pick Sparrow in Connect a wallet app. Sparrow can scan the key straight off the vault’s screen. To use a file instead, move the flash drive to your online computer, or use the Courier Tool to send the JSON file straight to that computer: open courier.safekeepbitcoin.com on it, choose Receive, and point its webcam at the vault’s screen. Don’t relay the file through a cloud service, email or chat app: it holds your extended public key, which lets whoever sees it track every balance and transaction in the wallet.

Single Signature — by scanning

SafeKeepVault — Seed Management export settings Wallet Type: Single-Sig Key Format: BC-UR Account (ur:crypto-account)
  1. In SafeKeepVault, open Seed Management, configure the settings above, and click Show QR.
  2. In Sparrow, go to File → New Wallet, name it, and choose the same script type as your Address Type in the vault.
  3. Under Keystores, choose Airgapped Hardware Wallet, pick a device with a Scan... button (for example Passport or Keystone), and point your webcam at the vault’s screen.
  4. Check the master fingerprint and derivation Sparrow shows against the vault, then click Apply.

Single Signature — by file

SafeKeepVault — Seed Management export settings Wallet Type: Single-Sig Key Format: Hardware Wallet JSON
  1. In SafeKeepVault, open Seed Management, configure the settings above, and click Download JSON. The file saves to your Transfer Drive.
  2. Transfer the JSON file to your online computer on the flash drive or with the Courier Tool, as described above.
  3. Open Sparrow and go to File → Open Wallet.
  4. Navigate to and select the JSON file you transferred. Sparrow reads the key data and populates the wallet configuration automatically.
  5. Click Create Wallet to save.
  6. Sparrow will sync and display your balance and transaction history.

Multisig

The quickest way is by scanning: on the Dashboard, open Connect a wallet app → Sparrow → Multisig, which shows the key as Hardware Wallet JSON. In Sparrow use File → New Wallet, Policy Type: Multi Signature, then on SafeKeep’s keystore tab choose Airgapped Hardware Wallet, then Passport, click Scan… and scan the QR code. Add the other cosigners the same way, then Apply.

To use files instead:

SafeKeepVault — Seed Management export settings (repeat for each co-signer key) Wallet Type: Multi-Sig (BIP-48) Key Format: SLIP-132 (zpub / ypub / xpub)
  1. In SafeKeepVault, open Seed Management, configure the settings above, and click Download JSON. Repeat for each co-signer key. Transfer all files to your online computer on the flash drive or with the Courier Tool, as described above.
  2. Open Sparrow and go to File → New Wallet. Give your wallet a name.
  3. Select Multi Signature and configure your cosigner quorum (e.g., 2-of-3).
  4. For the first keystore, click xPub / Watch Only Wallet, then click Import → Airgapped Hardware Wallet → Import File → Coldcard Multisig. Navigate to and select the first key file.
  5. Repeat step 4 for each remaining keystore, selecting the corresponding key file each time.
  6. Once all keys are loaded, click Apply to complete the wallet.

Specter Desktop (Desktop — Windows, macOS, Linux)

Use these steps for Specter Desktop. The vault shows your key as a QR code and Specter scans it with the computer’s webcam. The easiest way is Connect a wallet app → Specter on the Dashboard, which sets these options for you. Opening Specter in a browser over your home network (for example from a node) works too.

Single Signature

SafeKeepVault — Seed Management export settings Wallet Type: Single-Sig Key Format: Key with origin ([fingerprint/path]xpub)
  1. In SafeKeepVault, open Seed Management, configure the settings above, and press Show QR.
  2. In Specter Desktop, open Devices → Add new device and choose device type Other.
  3. Click Scan QR code and hold the vault’s QR code up to the computer’s camera. The key appears in the list.
  4. Give the device a name and click Continue, then Create Single Key Wallet.

Multisig

SafeKeepVault — Seed Management export settings Wallet Type: Multisig Key Format: Key with origin ([fingerprint/path]xpub)
  1. Add the vault’s key as a device the same way, with Multi-Sig (BIP-48) as the Wallet Type. Add each other co-signer as its own device.
  2. Click Add Wallet and select Multiple Signature.
  3. Select the devices you want in your multisig quorum and click Continue. Give your wallet a name and click Create Wallet to complete setup.

Already built the wallet in SafeKeepVault’s Output Descriptor tool? Press Show QR, choose For Specter, and in Specter use Add Wallet → Import from wallet software → Scan QR code. No camera on that computer? In Seed Management choose BIP-32 Watch-Only JSON, press Download JSON, and use Specter’s Upload from SD instead; send the file with the Courier Tool, never through a cloud service, email or chat app.

Electrum (Desktop — Windows, macOS, Linux)

Use these settings and steps for Electrum, or pick Electrum in Connect a wallet app. You move each key from the vault to Electrum by QR code, with no file to carry: open courier.safekeepbitcoin.com on your online computer, choose Receive, click Open camera and scan, and point its webcam at the vault’s screen. The Courier shows the key it read with a Copy to clipboard button, and you paste it into Electrum. Don’t send the key through a cloud service, email or chat app: it is your extended public key, which lets whoever sees it track every balance and transaction in the wallet.

Electrum doesn’t support Taproot, so choose Native SegWit (the default), Nested SegWit or Legacy as the Address Type.

Single Signature

SafeKeepVault — Seed Management export settings Wallet Type: Single-Sig Key Format: SLIP-132 (zpub / ypub / xpub)
  1. In SafeKeepVault, open Seed Management, configure the settings above, and click Show QR. The key starts with zpub for Native SegWit, ypub for Nested SegWit or xpub for Legacy.
  2. On your online computer, scan the QR code with the Courier and click Copy to clipboard, as described above.
  3. In Electrum, go to File → New/Restore, name the wallet, and choose Standard wallet.
  4. Choose Use a master key, paste the key, and click Next. Electrum creates a watch-only wallet and shows your balance and transaction history.

Multisig

SafeKeepVault — Seed Management export settings (repeat for each co-signer key) Wallet Type: Multi-Sig (BIP-48) Key Format: SLIP-132 (zpub / ypub / xpub)
  1. In SafeKeepVault, open Seed Management, configure the settings above, and click Show QR. A multisig key starts with a capital letter: Zpub for Native SegWit, Ypub for Nested SegWit, or xpub for Legacy. Use the same Address Type for every co-signer.
  2. In Electrum, go to File → New/Restore, name the wallet, and choose Multi-signature wallet. Set the number of co-signers and how many signatures are required (e.g., 2-of-3).
  3. For the first co-signer, choose Use a master key. Scan the vault’s QR code with the Courier, click Copy to clipboard, paste the key into Electrum, and click Next.
  4. For each remaining co-signer, choose Enter cosigner key. In the vault, load that co-signer’s seed and show its key the same way, then scan, copy and paste it into Electrum.
  5. Once every key is entered, Electrum creates the watch-only multisig wallet. Before sending funds to it, check that Electrum’s first receive address matches the one the vault’s Output Descriptor tool (under All tools → Keys & Seeds) shows for the same wallet.

Bitcoin Core (Desktop — your own node, v0.21 or later)

If you run your own Bitcoin Core node, you can import the wallet into it as a watch-only descriptor wallet. This works for single-signature and multisig wallets, and uses the Output Descriptor tool rather than Seed Management.

  1. In SafeKeepVault, open Output Descriptor (under All tools → Keys & Seeds) and build the descriptor for your wallet.
  2. If this is a brand-new wallet that has never received funds, tick the box to skip Bitcoin Core’s blockchain rescan. Otherwise leave it unticked, so Core scans from the start of the chain and finds every past transaction.
  3. Click Export for Bitcoin Core (.json). The file saves to your Transfer Drive. Move it to the computer running Bitcoin Core by moving the flash drive, or send it from the Transfer Hub.
  4. In the folder holding the file, create an empty watch-only wallet, then import the file. The vault shows both commands with the exact file name; they look like this:
    bitcoin-cli -named createwallet wallet_name=safekeep-watch disable_private_keys=true blank=true
    bitcoin-cli -rpcwallet=safekeep-watch importdescriptors "$(cat SAFEKEEP-CORE-IMPORT-….json)"
    In the Bitcoin Core app, use Window → Console, leave out the bitcoin-cli prefix, and paste the file’s contents in place of "$(cat …)".
  5. Check that getnewaddress returns the same first receive address the vault shows.
Output Descriptor tool with the Export for Bitcoin Core button, the brand-new wallet option and the import commands
The Export for Bitcoin Core (.json) button in the Output Descriptor tool, with the commands to load the file into your node.

The export imports receive and change addresses (1,000 of each) and never contains private keys. Silent Payment descriptors can’t be imported this way.

Signing a transaction

Once your watch-only wallet has built a transaction and exported it as a PSBT, bring it into SafeKeepVault to sign. The vault reviews the details — you inspect and verify the destination address and amount before signing is unlocked. The signed result is then returned to your watch-only wallet to broadcast.

Loading the PSBT

On the Dashboard, click Sign a transaction to open the PSBT Signer. Its four numbered steps are Load, Review, Sign and Send back. In step 1 you have two options for loading the unsigned transaction: scan a QR code displayed by your watch-only wallet, or load a .psbt file directly from the Transfer Drive.

Scan Unsigned PSBT also accepts a .psbt file sent with The Courier, for wallets that only work with files, such as Trezor Suite. Save the unsigned transaction from your wallet, send it with The Courier from your computer’s screen (or relay it with a phone), and point the vault’s camera at it. You can start at any point in the loop. Each chunk is checksum-checked, and progress shows as “chunk 5 / 12”. The file is put back together in memory, without being saved, and loads exactly like a file from the Transfer Drive. Binary .psbt, base64 and hex text files are accepted; any other file is refused with a clear message.

PSBT Signer at step 1, Load, with Scan Unsigned PSBT and Load PSBT from Transfer Drive options, and the tool sidebar on the left
Select Scan Unsigned PSBT to activate the webcam and scan the QR code displayed by your watch-only wallet (static or animated UR and BBQr codes), or choose Load PSBT from Transfer Drive to import the file directly.

If you select Load PSBT from Transfer Drive, the vault lists the .psbt files on the Transfer Drive, newest first. Click the file to load it.

Choose a PSBT to sign, a list of .psbt files on the Transfer Drive with Refresh and Cancel buttons
The file picker lists the .psbt files on the Transfer Drive. Select the unsigned transaction to proceed.

Reviewing the transaction

Display the QR code generated by your wallet software and hold it up to SafeKeepVault’s webcam. Once scanned, the vault moves to step 2, Review, and presents a full transaction audit — every destination address displayed in full, the amount in BTC and satoshis, a generated QR of the address for independent verification on a second device, and the mining fee and fee rate.

  • Which wallet it spends from — if you saved your wallet in the Output Descriptor tool (see Output Descriptor), a banner names the saved wallet the inputs come from, or warns when an input matches none of your saved wallets. A change output that is one of your saved wallet’s own addresses is marked verified, even when the PSBT leaves out the multisig details.
  • Summary — how much you are sending, the mining fee, the total leaving your wallet, and the change coming back. Open Spending N inputs to see each input’s amount, address, saved wallet and, for multisig, how many signatures it has so far.
  • Lock time and replace-by-fee — whether the transaction can’t be mined before a certain block or date, and whether its fee can be raised later. An input that is time-locked (for example an inheritance or recovery path) gets a warning.
  • Compare with the address you were given — on each destination card, paste or scan the address the recipient gave you. SafeKeep compares every character and shows Identical, or Different address. Don’t sign with the differences highlighted. It never ticks the verification box for you.
  • Older addresses — when a transaction spends from legacy 1… addresses, the vault checks that the previous transaction included in the PSBT is really the one being spent, then shows the fee. If it isn’t, the fee could be far higher than it looks, so signing is blocked.

Check the box confirming you have independently verified the destination address and amount. The Sign Transaction button remains locked until this confirmation is complete.

The vault also checks what kind of signature the transaction asks for. It only ever signs with the standard type that covers the whole transaction (SIGHASH_ALL). A transaction can ask for other types that leave some inputs or outputs uncovered, so whoever holds the signature could change where the funds go. If any input asks for one, signing is blocked with an explanation, and Force Sign cannot override it. Create the transaction again in your wallet with the default signature type.

Transaction Audit screen showing destination address, BTC and satoshi amounts, fee, and the independent verification checkbox
The Transaction Audit screen. Verify the destination address against an independent device, confirm the amount and fee, and check the verification box to unlock signing.

Signing

Click Sign Transaction. The vault signs with your master seed, or with a temporary seed you entered or scanned for this transaction only. If the wallet uses a BIP-39 passphrase, type it in or load it from the Library first: a passphrase changes the wallet’s fingerprint, so the vault cannot sign for that wallet without it. A typed passphrase must be typed twice before the Dashboard applies it, so a typo can’t open a different, empty wallet. A temporary seed is never saved to disk and is cleared from memory after signing or when you leave the tool.

Co-signing with a Coldcard or Trezor

In a multisig wallet, SafeKeepVault can ask a connected Coldcard or Trezor One for its signature over USB, so you can collect two signatures in one sitting without passing files back and forth. Every signature is still approved on the hardware wallet’s own screen.

  1. Pair the device (once) — At the bottom of the Dashboard, open Device Options and click Pair Coldcard or Pair Trezor. The vault only ever talks to the device paired here. To unlock a Trezor, click your PIN on a grid of blank buttons, matching the shuffled numbers shown on the Trezor’s screen.
  2. Sign with the vault — Load, review and sign the transaction as described above.
  3. Add the hardware signature — On the Send back step, the co-signing card shows how many signatures the transaction has and which keys are still missing. Click Sign with Coldcard or Sign with Trezor and approve the transaction on the device. The export QR and files update to include the new signature. You can also add a signature from another seed you hold by entering it as a temporary seed.
Device Options showing the Coldcard and Trezor pairing sections
Pair a Coldcard or Trezor One once in Device Options.
Unlock your Trezor dialog with a three-by-three grid of blank buttons
The Trezor PIN grid. The buttons have no numbers on purpose: you match the shuffled layout shown on the Trezor’s own screen, so SafeKeepVault never learns your PIN.
Co-signing card showing 1 of 2 signatures and Sign with Coldcard, Sign with Trezor and Sign with another seed buttons
After the vault signs a 2-of-3, the co-signing card shows which keys have signed and offers Sign with Coldcard, Sign with Trezor or Sign with another seed.

Trezor needs full previous transactions

A Trezor One must see the full previous transaction for every coin being spent. Wallets often leave these out of QR codes to keep them short. If they are missing, the Sign with Trezor button is disabled and explains why: in your wallet, save the transaction as a file and load that file from the Transfer Drive instead of scanning it. A Coldcard can sign either way.

Signing with only a hardware wallet

For a multisig wallet, you can also use SafeKeepVault as a large-screen, air-gapped review station for your hardware wallets without loading any seed at all. Boot into a Temporary Session and choose Sign with Hardware Wallet. Load and review the PSBT as usual; the review lists the keys in the transaction instead of seed options. Click Continue to Hardware Signing, then Sign with Coldcard or Sign with Trezor. The vault checks that the device holds one of the transaction’s keys before pairing it for this session. To add more signatures, unplug the device, plug in the next one and repeat. Hardware-only signing works with multisig (m-of-n) transactions; sign a single-signature transaction in your wallet software with the hardware wallet instead.

Temporary Session welcome screen with Create a new wallet, I already have a backup, Sign with Hardware Wallet and Unlock my vault instead
In a Temporary Session, Sign with Hardware Wallet opens the PSBT Signer with no seed loaded. Unlock my vault instead goes back to the unlock prompt.

Exporting the result

Once signed, step 4, Send back, offers several ways to return the result to your watch-only wallet. The primary method is a QR code — choose the format that matches your coordinator: Standard Base64 for Sparrow and BlueWallet, UR (ur:crypto-psbt, an animated QR that many mobile wallets prefer), Nunchuk Raw Hex, Electrum Raw Hex, or File (Courier). Large PSBTs (over about 1,200 bytes) start on UR automatically, because they no longer fit cleanly in a single QR code. For an animated code, the Density and Speed sliders apply while it plays (Density starts the loop again from the first piece). File (Courier) plays the signed PSBT as a Courier file loop named <name>-signed.psbt: open The Courier on your online computer, choose Receive, and save the file for your wallet to open (for example Trezor Suite). It’s chosen automatically when the PSBT arrived through The Courier. You can also copy or save the raw transaction hex for direct broadcast, or save the signed .psbt file back to the Transfer Drive to carry to your online computer.

Transaction finalized export screen showing QR code export, raw transaction hex, and fallback Transfer Drive export options
The Send back step. Point your watch-only wallet’s camera at the QR code to import the signed transaction, or carry it over on the Transfer Drive. Once broadcast, you’re done.
Export format selection screen showing QR format options for different wallet coordinators
Choose the export format that matches your watch-only wallet. Different coordinators expect different formats — select the one for yours to ensure the signed transaction imports correctly. Shown here: UR, an animated QR code.

Exporting via the Transfer Hub

If your workflow is file-based rather than QR-based, the Transfer Hub is where you retrieve the signed .psbt file after signing. Open the Transfer Hub from the Dashboard (Transfer files), locate the signed file on the partition, and use the Transmit button to send it via animated QR to the Courier Tool on your phone, or simply move the flash drive to your online machine and collect the file directly from the Transfer partition. Files transmitted via QR can be received directly on your computer at courier.safekeepbitcoin.com.

Transmit opens the file in the vault’s Courier Tool, on its Transmit tab, which works like the online Courier:

  • File or text — two cards choose what to send: File (sent as an animated QR loop) or Text / password (a single static QR). The selected card is highlighted in orange.
  • The file — a file sent from the Transfer Hub is already loaded. To send a different one, click the drop zone (“Choose a file or drop it here”), which lists the files on the Transfer Drive, or drop a file onto it, or pick one from the Transfer Drive list below it. The drop zone shows the file’s name and size. For large files only, an amber warning says roughly how many minutes one loop will take and suggests raising the density, or using the Transfer Drive instead for very large files.
  • Density and Speed — two sliders, each showing its current value. Lower density is easier to scan; higher density needs fewer frames. Lower speed is more reliable; higher speed is faster. If the receiving camera struggles, lower either one. Both apply while the QR code is running: a new Speed takes effect on the next frame, and a new Density re-cuts the file and starts again from the first piece. The receiver notices (“The sender changed its settings, so receiving starts over”) and never mixes pieces from two settings. Flash drives on v1.58 or older don’t have that check, so update them before changing Density part-way through a transfer.

Click Start Transmission Loop and hold the receiving device’s camera up to the screen until it has every frame.

SafeKeepVault Transfer Hub showing a list of files on the Transfer Drive including signed PSBT files ready for export
The Transfer Hub lists all files on the Transfer partition. Locate your signed .psbt file and transmit it via QR or carry it over on the flash drive to complete the workflow.

Locking & device options

  • Lock Vault — Click Lock or switch seed on the Dashboard’s wallet card to lock. Locking is a real lock, not just a screen cover: the app closes, your keys are cleared from memory, the encrypted partition is closed, and the vault returns to the password prompt. Locking never powers the machine off. Scan your QR or type your password to continue.
  • Seed storage — In Device Options → Seed storage you can stop keeping your master seed on the flash drive. Unlocking then opens the vault (your passphrases, saved wallets, notes and settings) but not your wallet: the welcome screen says Enter your seed, and you choose Scan my SeedQR or Type my recovery words. The seed stays in memory until you lock or shut down.

    Why do it: someone who has your flash drive and its Master Passphrase still can’t spend without your SeedQR or written words. The risk: the flash drive no longer holds a copy. If you lose your SeedQR and your written words, no one can bring this wallet back.

    To stop keeping the seed, click Stop keeping my seed here. First you prove you have a working backup: scan your SeedQR or type your words, and they must match the seed loaded now. Only then is the seed deleted from the vault; everything else stays. Backups you make from then on leave the seed out (older backups that contain it still do), and the Dashboard’s Health list says the seed isn’t kept on this flash drive. To undo it, click Keep my seed on this flash drive: the seed loaded now is saved in the vault again, and unlocking opens your wallet as before.
  • Leaving a Temporary Session — Unlock my vault instead on the Temporary Session welcome screen ends the session and returns to the unlock screen, without restarting. From the Dashboard of a Temporary Session, Lock or switch seed does the same: Lock, not powering off, is the way back to your vault. To keep a seed, write down its words first. After a seed is made, Leave Without Keeping This Seed asks first, then wipes the seed from memory and locks. With no seed loaded, Create a new wallet, Encrypted backup and Sign with Hardware Wallet each have Back to Welcome.
  • Screen Brightness — In Device Options, dim the picture from 30% to 100%. This is software dimming, so it works on any screen, and 100% is the screen’s own brightness. On many laptops the keyboard’s brightness keys also work.
  • Auto-Lock & Display Sleep — In Device Options, set how many idle minutes pass before the vault locks itself or the screen goes dark. Set either to 0 to turn it off.
  • Auto-Off — Also in Device Options, set how many idle minutes pass before SafeKeep powers itself off, clearing its memory (default 30). A 60-second warning comes first, and it also applies at the password prompt. Set it to 0 to stay on.
  • Change Master Passphrase — In Device Options → Master Passphrase, which also shows how strong the password that unlocked the vault is. Lock and Change locks the vault, then asks for your current password and a new one, on the same screens as setup (scan, type, or Generate One for Me, with the same strength check). What is in your vault is not changed. Then you unlock with the new password; the old one no longer opens the vault. If your vault was set up with an easy-to-guess password, the Dashboard shows a red warning with a button to change it.
  • Coldcard — Device Options → Coldcard has every COLDCARD option together: pairing for co-signing (see Co-signing with a Coldcard or Trezor), Send a Passphrase to the Coldcard, Send a Seed to the Coldcard, then Import from a COLDCARD Backup. Trezor comes after. The two Send tools let you type on the computer instead of on the COLDCARD’s small keys, and send over the USB cable. They were tested on a COLDCARD Mk4.
  • Send a Passphrase to the Coldcard — Type a BIP-39 passphrase, then type it again, or click Choose from the Passphrase Library. A typed passphrase can also be saved in the Library. No pairing is needed. Start from the COLDCARD’s main wallet: it adds the passphrase to whichever wallet it is using now. Spaces and capital letters count. Click Send to Coldcard, then on the COLDCARD: check the length it shows (press 2 to see the passphrase itself and compare it), and press OK to switch to that wallet, or X to cancel. If it offers Seed Vault, press 1 to keep this wallet there, or OK to use it until the COLDCARD is turned off. SafeKeep works out the fingerprint the passphrase gives with the seed loaded in SafeKeep. When the COLDCARD was on that same seed, SafeKeep confirms it switched to that wallet.
  • Send a Seed to the Coldcard — Choose From SafeKeep’s Seed Vault and pick a stored seed, or Type or scan the words: 12 or 24 words, or Scan a SeedQR. Click Send to Coldcard, then on the COLDCARD: at “Restore uploaded backup as a temporary seed?” press OK; check that the fingerprint it shows matches the one SafeKeep shows, and press OK (X cancels); if it offers Seed Vault, press 1 to keep the seed there. The COLDCARD loads it as a temporary seed, never in place of its own seed, and uses it until you switch back in its Seed Vault menu or turn it off and on. Afterwards, Check the Coldcard confirms which wallet it is using.

    Naming it on the COLDCARD: the COLDCARD names Seed Vault entries by fingerprint. To give one a name, while it is still in use, go to Seed Vault → [fingerprint] → Rename on the COLDCARD. SafeKeep shows these steps with the name to type: the seed’s SafeKeep name, or the passphrase’s nickname from the Library.
  • Import from a COLDCARD backup — In Device Options, Import from a COLDCARD Backup adds the multisig wallets and Secure Notes you choose to this vault, with the same three ways in as Restoring from a COLDCARD backup. Tick what you want and click Import Selected. Your seed isn’t changed, and the backup’s own wallet isn’t imported. You can view the words of its Seed Vault seeds, and the ones you check are kept in SafeKeep’s Seed Vault. It works with backups made with a passphrase too. A Temporary Session has no vault to import into.
  • Update SafeKeep — Also in Device Options: install a newer version from a signed update file on the Transfer Drive, without reflashing. See Updating to a new version.
  • Settings that are kept — Theme, display scale, screen brightness, sound and the idle timers are saved in your encrypted vault and restored on every boot. Temporary Sessions never read or save them.
Device Options, Seed storage section, explaining the choice and the Stop keeping my seed here button
Device Options → Seed storage, on a flash drive that keeps its seed.
Enter your seed screen with Scan my SeedQR and Type my recovery words buttons
After unlocking a flash drive that doesn’t keep its seed: Enter your seed.

Updating to a new version

Update in place (v1.47 and later)

From v1.47, the flash drive keeps two copies of SafeKeep’s operating system. An update is written into the spare copy while the current one keeps running, checked, and only then made the one that starts. Your encrypted vault and the Transfer Drive are not touched, and nothing needs to be re-entered.

  1. 1. Download the update file — on your everyday computer, download SafeKeep-Update-v….tar from the official release on GitHub (linked from the Download page). It is signed: SafeKeep checks the signature itself before installing anything.
  2. 2. Copy it onto the Transfer Drive — plug the SafeKeep flash drive into that computer and copy the file onto its TRANSFER drive. Eject the flash drive properly.
  3. 3. Check for the update — boot SafeKeep and unlock your vault (a Temporary Session can’t update). Open Device Options → Update SafeKeep → Check for update. SafeKeep shows the new version, its build stamp and the app’s SHA-256 only if the file carries the maintainer’s signature and is newer than what you’re running. You can compare that SHA-256 with the boot.html line of the release’s SHA256SUMS.
  4. 4. Install and restart — click Install update, wait for it to finish (a few minutes), then Restart now. The update file is deleted from the Transfer Drive afterwards. Updating from v1.48: that restart can end with a screen of scrolling errors; the update is already complete, so hold the power button to switch off, then start again.

If anything is wrong after restarting, choose SafeKeepVault (previous version) in the menu that appears for three seconds at startup: the version you updated from is kept until the next update. If an update fails, the version you’re running is unchanged, and Show update log says what went wrong. Making an Encrypted Backup before updating is still a good habit.

Updating from v1.46 or earlier (once)

Flash drives set up with v1.46 or earlier have the older layout and can’t update in place, so moving to v1.47 or later needs one last reflash, onto a flash drive of 8 GB or more. Flashing erases the whole flash drive, including your encrypted vault and the Transfer Drive, so first move what you want to keep into an encrypted backup and copy it off the flash drive. If your current flash drive is smaller than 8 GB, flash the new release onto a new one and keep the old flash drive until you’ve checked the new one. If you only ever use Temporary Sessions, there is nothing to save: just flash the new release.

  1. 1. Note your fingerprint — write down the fingerprint and the three-word Seed Nickname shown on the Dashboard’s wallet card (with no passphrase applied), so you can confirm the same seed after the update.
  2. 2. Make an encrypted backup — click Back up on the Dashboard (or Encrypted Backup under All tools → Backup & Recovery) and select what to keep: Encrypted Notes, Application Settings, Saved Passphrases and 2FA Backup. We recommend leaving Master Seed unticked and re-entering your seed from your paper backup in step 6 instead: it keeps the seed off the Transfer Drive, and it proves your paper backup works. The backup is saved to the Transfer Drive as a .7z file. Click Check this backup and enter its password to confirm it opens.
  3. 3. Copy the backup off the flash drive — click Send with the Courier and receive the backup on your phone with the Courier Tool. Or power down the vault, plug the flash drive into your everyday computer, and copy the .7z file from the TRANSFER drive to that computer or to another USB drive. It is encrypted, so it is safe to hold there briefly.
  4. 4. Download, verify and flash the new release — follow the Download page, including all three verification steps.
  5. 5. Put the backup back — if you sent it to your phone, skip this step: you receive it with the Courier in step 6. Otherwise unplug and replug the freshly flashed drive so the computer sees its new TRANSFER drive, then copy the .7z file onto it.
  6. 6. Boot and restore — boot the vault and create the encrypted vault as on first use (you can keep the same vault password and unlock QR), then choose Continue now and unlock it. On the welcome screen choose I already have a backup → Encrypted backup (.7z) (with a backup on your phone, first Receive a Backup with the Courier and play it from the Courier Tool), pick the file and enter its password. If the backup didn’t include your seed, choose I already have a backup → Recovery words and enter it from your paper backup.
  7. 7. Check, then clean up — confirm the Dashboard’s wallet card shows the fingerprint and Seed Nickname you noted in step 1. Then delete the .7z copy from your everyday computer, and from the Transfer Drive using the Transfer Hub.

Your watch-only wallets need no changes: the same seed gives the same keys and addresses on every version.

Recovering without SafeKeepVault

SafeKeepVault uses the same standards as other Bitcoin wallets, so your bitcoin never depends on SafeKeep. If the flash drive is lost, or you or your heirs ever want to stop using SafeKeep, your physical backups are enough to recover with other software. Do this on an offline computer or a hardware wallet, never on a computer you use online.

  • Single-signature wallets — enter your seed words, and your BIP-39 passphrase if you use one, into any BIP-39 wallet (for example Sparrow, Coldcard, Trezor or SeedSigner). Choose the same address type you used (Native SegWit, Taproot, Nested SegWit or Legacy): SafeKeep uses the standard paths for each (BIP-84, 86, 49 and 44). Check that the master fingerprint matches the one on your records.
  • Multisig wallets — you need the wallet’s output descriptor, which is printed on your Wallet Record, plus enough of the keys to meet the threshold. Import the descriptor into a coordinator such as Sparrow to see the wallet, then sign with the seeds or hardware wallets that hold the keys.
  • Seed XOR shares — SafeKeep uses the same Seed XOR method as Coldcard, so a Coldcard can combine all the shares back into your seed.
  • Shamir (SLIP-39) shares — recover them with SafeKeepVault and choose Made with SafeKeep. Don’t restore them on a Trezor: that opens a different, empty wallet. Each printed share explains how to recover without SafeKeep, using any SLIP-39 tool that shows the raw “master secret”.
  • BIP-85 child seeds — each child is an ordinary seed: restore it from its own words, or derive it again from the master seed with any BIP-85 tool (Coldcard has one).

Passphrases saved in the Passphrase Library live only inside the vault. Keep a physical copy of every passphrase you depend on, or that wallet can’t be recovered without the flash drive.

The tools

Beyond the core signing workflow, SafeKeepVault includes a broad suite of tools covering the full range of Bitcoin self-custody tasks — from seed generation and address verification to backup management, multisig coordination, and inheritance planning. Every tool runs completely offline and works with any Bitcoin wallet that supports standard formats.

Main tools

The Dashboard’s What would you like to do? tiles open these: Sign a transaction (PSBT Signer), Show an address, Connect a wallet app, Transfer files (Transfer Hub) and Back up (Encrypted Backup). See Your wallet on the Dashboard for the rest of the screen.

The full SafeKeepVault Dashboard: wallet card, Health, the five task tiles, All tools grouped into Keys and Seeds, Backup and Recovery, Signing and Transfer, and Private Data, and Device Options
The whole Dashboard: your wallet, the everyday tasks, every tool under All tools, and Device Options at the bottom.
  • PSBT Signer — Reviews, decodes, and signs PSBTs entirely offline. Transaction details are displayed for inspection before you sign. Takes and returns PSBTs as QR codes, files on the Transfer Drive, or files sent with The Courier. Can also ask a paired Coldcard or Trezor One for a co-signature over USB.
  • Seed Management — Exports your public key and output descriptor for watch-only wallet setup in Sparrow, Electrum, Nunchuk, BlueWallet, Specter, or any compatible coordinator, as a file or a QR code. Dense codes can play as an animated QR, which Nunchuk and Sparrow scan straight off the screen. A passphrase you type must be typed twice. Your private keys never leave.
  • Show an address — Shows the next receive address of this seed’s wallets, or of a saved wallet, as a large QR code, so you can receive without your everyday device. Pick the wallet from the list; the address is shown in groups of four with its number and path. New address moves to the next one, and the vault remembers on the flash drive which address each wallet is up to. The vault is offline and can’t see which addresses have already received money, so it simply moves on from the last one it showed you. Under Show a different address number, the address changes as you type a number.

    The list also has this seed’s Silent Payment address (sp1q…). It is one reusable address: give the same one for every payment, and each payment still lands at its own unlinkable address on the blockchain, so there is no New address button for it. The sender’s wallet must support Silent Payments.
    Show an Address screen with the wallet list, a large QR code of receive address number 0, and the Copy address and New address buttons
  • Connect a wallet app — Guided watch-only setup for Blue Wallet, Electrum, Nunchuk, Sparrow, Specter or another wallet. Pick the app, the address type and single-sig or multisig, and the vault opens Seed Management with the right export and shows what to tap in the app. See Creating a watch-only wallet.
  • Transfer Hub — File browser for the Transfer Drive. View, rename, or delete backup archives, transactions, address lists (.csv) and PDFs, or transmit a file to your phone as an animated QR.

Advanced tools

Under All tools, the Dashboard groups every tool by what it does: Keys & Seeds (where Seed Management lives too), Backup & Recovery, Signing & Transfer, and Private Data. On tool screens, the same tools are in the sidebar under Advanced Tools.

Keys & Seeds

  • Entropy Generator — Generates your master seed from the system’s random number generator, mixed with any randomness you add: dice rolls, a shuffled deck of cards, mouse movement and camera noise. Verifiable Dice mode makes a seed you can check on SeedSigner or COLDCARD. Draw Your Own Words makes a seed from words you draw by hand and coin flips. A live fairness check scores your physical dice rolls and, after 30 rolls, warns if the die looks biased. See Generating a new seed.
  • BIP-85 Child Seeds — Generates separate child wallets from your master seed — isolated wallets for different purposes, all recoverable from one backup. Uses the passphrase applied on the Dashboard; one you type must be typed twice, since a typo would make children your backup can’t rebuild.
  • Seed QR Code — Displays your seed as a SeedQR for steel stamping or paper backup, in Compact (the default) or Standard format. SafeKeepVault, SeedSigner, Jade, Krux, Passport and Sparrow read both; BlueWallet and most phone wallets read only Standard. A Standard code’s digits can be read by any phone camera, so keep it as private as the seed words. Hand-drawn or engraved copies can be verified by scanning them back in, and blank grids matching the code’s size are available for printing. To enter a different seed, Clear & Enter Different Seed uses the standard word boxes with suggestions. After you generate a code, you can trace it, copy it square by square or print it on a USB laser printer. See Draw or Print my SeedQR.
  • Passphrase Library — Manages BIP-39 passphrases (the “25th word”) inside the encrypted vault. Loads directly into the PSBT Signer and other tools when you need a passphrase-protected wallet. Generate opens a generator right under the passphrase field; changing the separator or capitalization keeps the same words. A generated passphrase doesn’t need re-typing: write it down (or print it), then type it back from your copy to unlock Save. Use this wallet now switches straight to the passphrase wallet. A printed backup always shows the fingerprint of the passphrase on it. If you printed a passphrase backup with v1.36 or earlier while another passphrase wallet was active, print it again: its fingerprint may be wrong.
  • Output Descriptor — Has three tabs: Build Single, Build Multi and Import. Your saved wallets are kept here too (they are no longer listed on the Dashboard). Builds wallet configurations for single-signature, multisig and Silent Payment setups. Export and import directly into any compatible wallet, or export a watch-only import file for Bitcoin Core. Export Addresses (.csv) saves a list of the wallet’s addresses: choose how many, from 1 to 10,000, starting at the first address (index 0), and optionally the same number of change addresses. Each row has the index, chain, path and address, with no keys, and the first addresses are checked against the ones on screen before saving. (Silent Payment wallets have one fixed address, so there is no list.) All of the tool’s exports save to the Transfer Drive, ready to send from the Transfer Hub, and an earlier export is never overwritten.

    In the multisig builder, Key 1 is this device: it shows its key origin and xpub, with a Copy button to give to the other cosigners, and updates with the passphrase and address type. Cosigner keys may end in /<0;1>/* or /0/*. Every key must be different: a key entered twice (for example one cosigner QR code scanned for two keys, or a cosigner using the same seed as Key 1) is refused, and the message names the keys. If you built a multisig descriptor before v1.41 and its verification addresses showed “error”, build it again.

    A typed passphrase must be typed a second time before the tool uses it, so a typo can’t give you (or your cosigners) the key of a different, empty wallet. In multisig, Key 1 stays hidden until the passphrase is confirmed. A passphrase loaded from the Library doesn’t need retyping.

    Save to Vault: give a built or imported descriptor a name and click Save Wallet. The vault keeps it in the encrypted partition, and the PSBT Signer then shows which of your wallets a transaction spends from and confirms that its change comes back to you (see Reviewing the Transaction) and Show an address offers it in its wallet list. Your saved wallets are listed in the tool, each with Open and Remove buttons. Open shows the wallet’s descriptor and addresses and sets the form above to it: for a multisig, the other cosigners’ keys are filled in, so Generate Descriptor rebuilds the same wallet.

    Each cosigner also has Coldcard (USB) and Trezor (USB) buttons. Plug the device into the offline SafeKeep computer and click one: SafeKeep reads the device’s master fingerprint and its BIP-48 multisig key for the chosen address type (m/48'/0'/0'/2' Native SegWit, /1' Nested SegWit, /0' Legacy) and fills in the cosigner, so the key never passes through an online computer. This is especially useful for the Trezor One, which has no SD card or QR code output. A locked Trezor shows the same PIN grid as signing (only grid positions are sent, never the PIN). It only reads: nothing is paired or saved, and the device isn’t asked to sign. Only those three multisig key paths can be read, and only mainnet keys are accepted. Mix-ups are caught early: a device already used for another key is flagged, and a cosigner key for a different address type than the one selected is refused, whether it was read by USB, pasted or scanned. Reading from a Coldcard has been tested; reading from a Trezor One hasn’t been tried on a real device yet.

    Each cosigner also has a Seed Vault button, which fills in the multisig key of a seed kept in your Seed Vault. If this vault then holds enough keys to spend, SafeKeep warns you. See Multisig from your Seed Vault.

    The Receive panel works out receive addresses from the descriptor here, offline, so malware on an online computer can’t swap them. The vault can’t see which addresses have been used, so let your watch-only wallet pick the next unused address, then check it here. Show a receive address picks an address by number (← and →, from 0) and shows it in groups of four for comparing every character, with a QR code, a Copy button and a label giving its number, path, wallet type and key fingerprints. Check an address takes a pasted or scanned address (including bitcoin: links) and searches the first 1,000 receive and change addresses: if it’s found you see which one (change addresses are flagged), and if not you’re warned not to send to it. Addresses with a typo and testnet addresses are refused. A Silent Payment wallet shows its one fixed address.

    Import a wallet from another app: this is the easiest way to add a multisig wallet you set up in a coordinator such as Sparrow, Specter or Nunchuk, with one scan instead of entering each key. On the Import tab (called Verify before v1.58), scan the wallet’s QR code (static or animated, as UR or BBQr, or a Courier loop), paste it, or choose from the list of files on the Transfer Drive: an output descriptor, a multisig setup file (BlueWallet, Coldcard, Sparrow…), a BSMS record or an extended public key, single-sig or multisig, including nested SegWit multisig sh(wsh(…)). It also reads wallets shown as BBQr (B$…, as newer Sparrow versions and COLDCARD show them) and as UR text (UR:CRYPTO-OUTPUT/…). A scanned, pasted or loaded descriptor is checked at once: SafeKeep checks the checksum, refuses private keys, and shows the first receive and change addresses worked out from the descriptor. No seed is needed: without one the result is WATCH-ONLY; with a seed loaded it still says MATCH or MISMATCH and which key is yours. Name it and click Save Wallet to keep it in the vault for the PSBT Signer and Show an address, in one step. Use This Descriptor (watch-only) loads it into the tool, so the Receive panel, the address list (.csv), the Bitcoin Core export, the QR code and Print PDF all work for it; the PDF leaves out the seed and passphrase rows. A descriptor without the …/<0;1>/* ending gets a warning and can’t be loaded.
    Output Descriptor's Import tab: Import a Wallet from Another App, with a paste box, Scan QR / UR / Courier and Load File (Transfer Drive) buttons, and Check Descriptor
    The Import tab of Output Descriptor.
    Show QR shows the built or opened wallet as a QR code. Choose For Specter to add it in Specter Desktop with Add Wallet → Import from wallet software → Scan QR code.

Backup & Recovery

  • Seed XOR Splitter — Splits your vault seed into 2, 3 or 4 XOR shares for distributed cold storage. Every share is needed to recover, and each one looks like an ordinary 12- or 24-word seed. SafeKeep shows one share at a time, with Print and Show QR: write it down, then type it back or scan it, and SafeKeep checks it word by word. At the end it confirms the shares rebuild your seed exactly. Check Shares I Already Have tests shares you made earlier (of either length) against your vault seed, and can show the seed words they rebuild if you ask. To turn shares back into a seed, use I already have a backup → Seed XOR shares on the welcome screen (on a new flash drive, or in a Temporary Session).
  • Shamir Backup — Splits your vault seed into Shamir (SLIP-39) shares for distributed backup: any 2 of 3, 3 of 5, 4 of 7 or your own choice, so you can lose some shares and still recover. It works like the Seed XOR Splitter: one share at a time, each checked against your paper, then a final check. If you set a share passphrase under Advanced, the final check asks for it again from memory; without it the shares can’t be recovered. Check Shares I Already Have works the same way. Recover these shares with SafeKeepVault: restoring them on a Trezor opens a different, empty wallet. When recovering, SafeKeep shows both readings (made with SafeKeep, made on a Trezor) and saves only the one you choose.
  • Encrypted Backup — Exports a fully encrypted backup of your vault to the transfer drive. Everything inside is sealed — file names included — until the correct password is entered. Type the password twice, or scan it once from a QR code. A bar shows how strong the password is, and a weak one is refused: a backup can be copied to a computer and guessed far faster than the vault. Your vault password works if it came from a password manager or is 6 or more random words. After the backup is made, Send with the Courier sends it to your phone, and Check this backup confirms it opens with its password. Check a Backup, on the same screen, does this for any backup on the Transfer Drive: it shows whether the backup’s seed is the one loaded now and what else it holds, and restores nothing.
  • Wallet Record — Generates a clean, single-page PDF summary of your wallet for long-term offline storage and inheritance planning. Start with Use the wallet I just built (from the Output Descriptor tool), or paste or scan the descriptor exported by any wallet app (animated QR codes work, such as Sparrow’s wallet export). The vault checks the descriptor’s checksum, refuses one containing private keys, and works out the wallet type, M-of-N, script, keys and first receiving address. If a key in the descriptor is missing its …/<0;1>/* path, the vault warns you instead of showing an address. Then add a title and purpose, give each key a plain-language name (“Dave’s Coldcard — home safe”), and mark which keys need a passphrase. Nothing you type is saved in the browser. On the printed record each key appears by its name only. For a key with a passphrase, the fingerprint in the descriptor belongs to the seed words plus the passphrase, so an heir who loads the seed words alone would see a different one. To make the printout unambiguous, add the seed’s own fingerprint to the key’s name. Every key’s fingerprint is still on the record inside the descriptor. Print a new record if either applies to you: you printed a record for a nested SegWit or legacy multisig wallet with v1.36 or earlier (these were recorded as single-signature), or you printed a record from a scanned wallet QR code with v1.37 (its first receiving address could be wrong).

Signing & Transfer

  • Message Signer — BIP-322 message signing. Proves address ownership with a verifiable proof without moving any coins.
  • Courier Tool — Transfers files between air-gapped devices via animated QR codes. No USB, no network — light and a camera lens only. Choose File or Text / password, drop in a file, and set the Density and Speed sliders (they apply while the QR code runs); it works with the online Courier Tool at courier.safekeepbitcoin.com. It can also carry PSBT files to and from the PSBT Signer, for wallets that only work with files, such as Trezor Suite.

Private Data

  • Encrypted Notes — Encrypted notes stored inside the vault. Keep recovery instructions, multisig details, and setup notes sealed within the vault. For your eyes only.
  • 2FA Backup — Backs up your authenticator (TOTP) secrets inside the encrypted vault. Scan the export QR from Google Authenticator, or individual otpauth:// codes, so you can restore your two-factor accounts if your phone is lost.

Draw or Print my SeedQR

After you generate a SeedQR in the Seed QR Code tool, Draw or Print my SeedQR offers three ways to copy it: Trace It on the Screen, Copy It Square by Square and Print It on a USB Printer. Each ends with Scan to Verify, which checks your copy with the camera.

The Draw or Print my SeedQR card with three buttons: Trace It on the Screen, Copy It Square by Square, and Print It on a USB Printer
The three ways to copy a SeedQR, shown after you generate one.

Get a blank template first if you’re copying by hand. Print a 21×21 or 25×25 template from Print QR at 100% scale. It’s empty, so any printer is fine. A 12-word Compact code is 21×21, and a 24-word Compact or 12-word Standard code is 25×25. A 24-word Standard code is 29×29, and Print QR has no template for that size, so use Compact format if you want a template.

Trace It on the Screen shows the code on a white screen at the template’s real size (85.68 mm for 21×21, 87.88 mm for 25×25).

  1. Lay the printed template on the screen. The light box opens at full brightness, and the ☀ slider dims it.
  2. Change the Size until the template’s grid lines up with the one on the screen. Use the slider, the number box, or the arrow and + / − keys. Hold Shift for bigger steps.
  3. Press Remember as Default so it opens at that size next time. A screen’s right size doesn’t change, and it’s saved in your vault.
  4. Fill in every square that shows dark through the paper. Press lightly, and keep cameras and windows away from the screen.
  5. Press Scan to Verify to check your copy.
The light box: a SeedQR on a white screen with numbered rows and columns, and Size, Remember as Default, brightness and Scan to Verify controls along the top
Trace It on the Screen, showing a SeedQR made from public test words. Never use a seed from a picture.

Copy It Square by Square shows one 7×7 block at a time, numbered as the template is, and lists the dark squares of each row. Rows run top to bottom and columns left to right, starting at 1. The three big corner squares are already printed on the template. This way needs no paper on the screen, and it also suits punching steel or placing tiles. The last block’s button is Scan to Verify.

Square by square view: block 1 of 9 enlarged with numbered rows and columns, a small map of the whole code, and a list of the dark squares in each row
Copy It Square by Square: block 1 of 9 of a 21×21 code, made from public test words.

SafeKeep has no print system and no printer drivers, and it never prints over a network. Print It on a USB Printer draws the page itself in PCL, a printer language, and sends it straight to the printer over the USB cable. Only the printer part of a device is used, so a multifunction printer’s scanner stays off.

Which printers work: laser printers that understand PCL, which most do. SafeKeep shows the printer’s name before you print. Some printers understand PCL without saying so, so SafeKeep lets you try. A printer that can’t use PCL will print a garbled page or nothing, and it can’t be used for this. Connect only one USB printer at a time.

  • Size — anywhere from 10 to 150 mm wide, with a slider and a number box. The Template size button sets the size of the blank template. Smaller codes are fine to scan, so try the smallest your camera reads: on a Samsung Xpress M2070, a laptop camera read a 14 mm code.
  • Fingerprint — tick the box to print the seed fingerprint under the code.
  • Cutting line — tick Print a square line around it to cut along to print a thin square line around the code and, if you print it, the fingerprint. White space inside the line sets how much white stays between the code and the line, from 0.5 to 30 mm (3 mm to start). SafeKeep remembers the setting from your last printout. A close-up shows exactly the square you’ll cut out and gives its size, and it redraws as you move the slider. With less than two squares’ worth of white, SafeKeep notes that some cameras may not read the code, so check the printout with Scan to Verify. If a very large square wouldn’t fit on the paper, SafeKeep leaves less white and tells you.
  • Preview — the page is shown before you print.

Before you print

  • Use your own printer, connected by a USB cable.
  • If the printer is also on Wi-Fi or a network, turn that off or unplug it first.
  • Stay with the printer and take the page.
  • Afterwards, switch the printer off. It keeps the page in its memory until then.

If the vault shouldn’t hold this seed, SafeKeep tells you. That applies when the vault is set not to keep the seed, or when this SeedQR isn’t the seed your vault keeps. To reach the printer, SafeKeep briefly saves the SeedQR in the encrypted vault on the flash drive and deletes it within a second, but a trace can stay on the flash drive. To keep it off the flash drive entirely, print from a Temporary Session instead.

When the page is out, switch the printer off, then check the printout with Scan to Verify.

The print screen: a page preview with the SeedQR and fingerprint, the printer's name, Size and Template size controls, the fingerprint box, safety notes, and the Print button
Print It on a USB Printer, with a SeedQR made from public test words. The orange box appears only when the vault shouldn’t hold this seed.
The print screen with Print a square line around it to cut along ticked: the page preview shows a thin square around the SeedQR and fingerprint, with the White space inside the line slider and a close-up of the square to cut out
The cutting line, with a SeedQR made from public test words.

Seed Vault

The Seed Vault keeps up to 20 more seeds in your vault, beside your master seed: a family member’s wallet, a second multisig key, an old wallet. Open Seed Management → Seed Vault.

  • Adding a seed — click Add a Seed, give it a name, and type its 12 or 24 words or Scan a SeedQR. While a temporary seed is loaded, Keep the Temporary Seed Here keeps that seed under the name you give.
  • Looking after them — rename a seed, click Show words to see its words (SafeKeep asks first), or delete it. Deleting asks first too: without a written backup of its words, that wallet is lost. Keep a written backup of each seed.
  • Switching from the Dashboard — once the Seed Vault holds a seed, the Dashboard has a Seed Vault ▾ button listing the master seed and your stored seeds. Pick one, and signing, addresses and every tool use it. A banner shows which stored seed is in use, with its fingerprint, and Back to Master Seed. Switching clears any passphrase you applied, so apply it again if you need it.
  • What’s stored where — stored seeds are encrypted in the vault on the flash drive, next to your master seed, so they’re as safe as the vault. Encrypted Backup’s seed option includes them, restoring that backup brings them back, and a factory reset erases them with the rest of the vault.
  • When it’s off — a Temporary Session has no Seed Vault, and neither does a flash drive set not to keep the seed (see Seed storage).
  • From a COLDCARD backup — when you restore or import a COLDCARD backup, the seeds from its Seed Vault that you check are kept here (see Restoring from a COLDCARD backup). To put a stored seed on a COLDCARD, use Send a Seed to the Coldcard.

Multisig from your Seed Vault

In Output Descriptor’s multisig builder, each cosigner slot has a Seed Vault button next to Coldcard (USB) and Trezor (USB). It fills in the multisig key of a seed in your Seed Vault. Key 1 is the seed in use. Then save the wallet and send it to Sparrow or another app as before.

The warning. If this vault holds enough of the wallet’s keys to spend, SafeKeep says so plainly: anyone who unlocks this flash drive can spend from the wallet without any other device, so it is no safer than a single-signature wallet. It lists the keys that are here and says how many to keep only somewhere else: on another device, or on a COLDCARD (with Send a Seed to the Coldcard), with that seed then removed from SafeKeep’s Seed Vault. Keeping every key in one vault is fine for trying multisig out or for a test wallet.

Why keys belong in different places. A multisig wallet protects you only when no single place holds enough keys to spend. Keep the keys on different devices, stored in different places, so that one stolen flash drive, one lost device or one guessed password can’t move your bitcoin.