Self-Contained Multisig Steel Bitcoin Wallet Backups
SeedEtcher is an open-source, air-gapped system for creating durable Bitcoin backups by printing seed phrases, descriptors, and QR codes with a standard laser printer and permanently etching them into metal.
It minimizes trust and attack surface by relying on offline hardware, simple materials, and a transparent, reproducible workflow instead of expensive machines.
SeedEtcher Controller
Raspberry Pi Zero–based controller firmware that drives a standard laser printer over USB.
Scan seed and descriptor QR codes offline and print deterministic layouts for etching.
SeedEtcher Workflow
A documented, repeatable workflow for chemically etching printed layouts onto steel.
- Print to transfer paper
- Heat-transfer toner to metal
- Etch steel
Tutorial video
Step-by-step walkthrough of the full SeedEtcher workflow.
Development status
SeedEtcher is in beta. The latest release — v0.3.0-beta.1 — adds important improvements.
Starting with version b0.3 prep-time and etch time halved!
The following things were substantially improved or added:
- Multisig uses descriptor-share backups (no full descriptor on a single plate). These wallet configs default to UR/XOR-compatible shares: 1/2, 2/2, 2/3, 2/4, 4/4, 3/5, and any n-1/n. This replaces b0.2's custom SE1 Shamir share method for interoperability. All other wallet types stay on full descriptor.
- All Brother lasers are supported (even host-based). PCL/PS remains the recommended way to print. HBP (host-based printing) is capped to 600dpi (memory limit of Pi Zero). All other brands that support true PCL or PostScript should work too. See: printers.md
- Print output can be sent non-inverted and non-mirrored for checking before printing to transfer paper.
- A new method (SeedEtcher Transfer StackTM) leverages the use of silicone sheets to reliably transfer toner masks to both sides of a metal plate at once. This means you can also etch both sides at once!
- A new plate layout design optimizes for etching. All rounded forms, including a custom designed font face and QRs with circle modules. Also the mask area now covers the whole plate except for the side where you tape it for transfer. This means you only need to tape one side before etching.
- I designed a 3d-printable etching container for optimal etching performance. No manual movement required. It will be released after Geyser campaign, presumably.
- Improved etching method by using 30% FeCl3 at 40°C. It can be made from 40% by diluting it with distilled water.
- For folks who want to electro etch, there is an optional stats page with A/cm2 calculations that can be printed. (I am still researching the optimal electro etching workflow.)
Support SeedEtcher
SeedEtcher is an independent, open-source project.
If you find it useful and want to support development, you can donate via:
Lightning: stiffrag020@walletofsatoshi.com
BTC: bc1qzml52m9t0vv82p7437vdcuve73putam0ccfynd