Skip to main content
ZeroKeyUSB can work as an airgapped Bitcoin wallet. It creates a standard 12-word Bitcoin wallet on the device; the seed is shown only on the screen and never leaves over USB. You watch balances and build payments in a normal wallet app (phone or desktop), and only the signing happens on ZeroKeyUSB.
Find the Bitcoin menu under Tools → Bitcoin. Mainnet only.
Menu itemWhat it does
Show seedRe-displays the 12 words on the OLED (screen only)
Watch-onlySends your public account key to a wallet app so it can watch balances
Create walletGenerates a new 12-word seed (overwrites any existing one)

1 · Create the wallet

1

Open Tools → Bitcoin → Create wallet

If a wallet already exists, the device asks you to hold Center to confirm the overwrite (this destroys the old seed). On a fresh device it starts straight away.
2

Write the 12 words on paper

The device shows the words in pages of three. Advance by tapping. Write them on paper only — never photograph them or type them into a computer.
3

Store the paper safely

Anyone with these 12 words controls the funds. The device keeps the seed encrypted; the paper is your only backup.
Create wallet generates a brand-new random seed and overwrites the previous one. Coins on the old wallet are lost unless you backed up its 12 words.
You can re-check the words any time with Show seed.

2 · Set up a watch-only wallet (phone/desktop)

To see balances and build payments you import the public account key into a normal wallet (BlueWallet, Nunchuk, Sparrow, Bitcoin Core…). This key can only watch your wallet — it can never spend.
1

Open the Bitcoin webtool

Open bitcoin.html in Chrome or Edge (Web Serial), Connect device, and unlock the device with your PIN.
2

Get watch-only from device

Press Get watch-only. The page shows a QR code with your public account key.
3

Scan into your wallet

Scan the descriptor QR (or the zpub QR) into your mobile wallet. It can now show balances and create transactions, but it cannot spend — it has no private key.
You can also trigger the export from the device itself: Tools → Bitcoin → Watch-only prints the same data over the serial connection.

3 · Sign a transaction (PSBT)

The flow is the standard airgapped PSBT flow: build the spend on your watch-only wallet, sign it on ZeroKeyUSB, then broadcast from the wallet.
1

Build the spend

In your watch-only wallet, create the transaction and export the unsigned PSBT (base64).
2

Send it to the device

In bitcoin.html, paste the PSBT and press Send to device.
3

Verify ON THE DEVICE

The OLED shows the destination, the amount being sent and the fee. Verify these on the device screen, not in the browser.
4

Hold Center to sign

Hold Center to sign (a progress border fills around the screen). Tap any other button to cancel. The device returns the signed PSBT to the webtool.
5

Broadcast

Copy the signed PSBT back into your wallet, finalise and broadcast.
Always confirm the address and amount on the device’s own screen before holding to sign. A compromised computer can show you one thing in the browser while sending another — the device screen is the trusted display.
If the PSBT has no inputs belonging to this wallet, the device replies “No inputs for us” and signs nothing — that is expected when the PSBT is for a different wallet.

Your keys stay safe

  • The 12-word seed never leaves the device — it is shown only on the screen and kept encrypted with your PIN.
  • Only public data and signatures ever go over USB — never the seed.
  • Every signature needs a deliberate Center hold after you check the address and amount on the device’s own screen. It never signs blindly.
Want the technical details — how the wallet is derived, where the randomness comes from, and how to verify it yourself? See Bitcoin signer in the Software section.

How it works (audit)

Entropy, derivation, storage and signing — verifiable against the source.

Navigate the menu

Where to find Tools → Bitcoin.

Broken / no screen

Recover access if the display fails.