Keep ESP32 is an open source firmware that turns an inexpensive ESP32-S3 development board into an air-gapped hardware signer. It is aimed at people who want to hold Bitcoin keys on dedicated hardware that never touches a network, and at developers experimenting with threshold signing schemes. If you already run a desktop wallet and want a separate device that keeps key material isolated, this project is worth a close look.
The firmware stores FROST threshold key shares on the board and signs transactions through a USB serial connection using JSON-RPC. Private keys are never exposed to the host computer, and the device has no network stack at all. The project is released under the MIT license, and the current version is v0.2.2. Because this is firmware for a hobbyist-grade board rather than a commercial product, expect a lean feature set and read the documentation carefully before trusting it with real funds.
What Is an Air-Gapped Hardware Signer?
A hardware signer is a device whose only job is to hold private keys and produce signatures. The host computer prepares an unsigned transaction, sends it to the device, and receives back a signature. The key itself never leaves the device.
Air-gapping goes one step further by removing the network connection entirely. Keep follows this model: the ESP32-S3 has no network path, so malware on the connected computer cannot reach the keys over the internet. The trade-off is convenience, since every signing action requires the device to be physically plugged in.
For many users this is the right balance. Cold storage setups have always relied on this separation, and Keep applies the same principle to a low-cost microcontroller.
How FROST Threshold Signing Works in Practice
FROST, short for Flexible Round-Optimized Schnorr Threshold signatures, lets a group of participants jointly produce a single Schnorr signature. Each participant holds a share of the signing key, and any sufficient subset of shares can cooperate to sign. No participant ever reconstructs the full private key.
For Bitcoin, Schnorr signatures are the foundation of Taproot, so a FROST signature looks identical on-chain to an ordinary single-key Taproot spend. Observers cannot tell that several parties were involved, which is one of the appeals of the scheme.
In a setup with several devices, each board might hold one share. Losing a single device then does not lose the funds, provided the threshold is still reachable with the remaining shares. Choosing the threshold and distributing shares carefully is the main design decision for anyone adopting this approach.
Who Should Consider Keep ESP32?
Keep suits a few specific groups. Bitcoin users who want a self-built signer and are comfortable with firmware flashing will find the project approachable. Developers exploring FROST, Taproot signing or PSBT workflows get a readable open source reference implementation they can modify.
The project is less suited to someone who wants a polished consumer device with a screen, a sealed enclosure and vendor support. Keep relies on a generic development board, and its interface is a serial protocol rather than a user-friendly app.
It is also a reasonable fit for experimenters who want to test threshold arrangements with small amounts before committing larger holdings. Start with test funds on a testnet if your setup allows it.
Where Keep Fits in the Nostr and Bitcoin Ecosystem
Keep is categorized alongside Nostr and decentralized social software, and the connection is about identity and coordination rather than messaging. Threshold signing schemes are a natural fit for groups that need to authorize actions collectively without a central custodian.
The device itself does not speak Nostr. Its role is to protect signing keys, which may be used for Bitcoin transactions or other coordination tasks in a wider toolchain. Users who combine several decentralized tools will want to keep the signer's role narrowly defined.
For anyone comparing options, the difference between a pure signing device and a full client application is important. Keep handles only the cryptographic step.
Key features
FROST Threshold Signatures
Bitcoin PSBT Signing
Policy Enforcement
Air-Gapped Operation
Secure Partition-Backed Storage
Multi-Group Support
Supported coins
The project documentation mentions support for Bitcoin (BTC) and Zcash (ZEC). Signing for Bitcoin relies on PSBT parsing and Taproot sighash computation, while the FROST implementation it uses is also the one maintained by the Zcash Foundation. Check the repository for the current state of each network before relying on it for a specific transaction type.
How to install Keep ESP32 on Windows
- 1
Get the Firmware
Download the release from the official GitHub Releases page at https://github.com/privkeyio/keep-esp32/releases. Only download from the official website or this repository. Choose the latest tagged version, which is v0.2.2 at the time of writing.
- 2
Verify the Download
Compare the SHA-256 checksum of the downloaded file with the value published alongside the release. If signatures are provided, verify them as well. This step confirms the file was not altered between the developer and you.
- 3
Prepare Your Browser
The project states that you can flash firmware directly from a browser without installing tools, but this requires Chrome or Edge. Use a current version of either browser and connect the ESP32-S3 board to your computer with a data-capable USB cable.
- 4
Flash the Board
Open the flashing page linked from the release, select the serial port for your board, and follow the prompts to write the firmware. Keep the board connected until the process reports completion, then disconnect and reconnect it.
-
Confirm the Device Responds
After flashing, connect the board and confirm that it enumerates as a serial device on Windows. Any host software you use should be able to open the port and exchange JSON-RPC messages with the signer.
System requirements
- Chrome or Edge browser for the browser-based flashing method
- ESP32-S3 development board with 8 MB flash
- 8 MB PSRAM recommended
- USB data cable and an available USB port
How to use Keep ESP32
Using Keep is less like opening an app and more like operating a small appliance. The device waits for JSON-RPC commands over USB serial, and a host program is responsible for constructing the transaction and sending it to the board.
A typical signing session follows a predictable sequence. Keep the workflow simple at first, and only add complexity once you have verified each step on test funds.
- Connect the flashed ESP32-S3 board to your Windows computer with a data cable.
- Confirm the board appears as a serial port in Device Manager.
- Create or load your key share on the device, following the commands described in the project documentation.
- Build an unsigned PSBT with your host wallet or tool, containing the Taproot inputs you want to spend.
- Send the PSBT to the device over the serial connection so it can compute the sighashes.
- Review the transaction details the device reports before approving the signature.
- Receive the signed PSBT back, finalize it in your host software, and broadcast it from a connected node or wallet.
When threshold signing is involved, repeat the cooperation step with each participating device. Keep a written record of which device holds which share and the threshold needed to spend.
Pros & cons
- Private keys never leave the device and are not exposed to the host
- No network interface, so the signer cannot be reached remotely
- Open source under the MIT license, so the code can be audited and modified
- Uses FROST threshold signatures, which avoid a single point of key compromise
- Parses PSBTs and computes Taproot sighashes per BIP-174 and BIP-341
- Key shares survive firmware updates according to the project
- Inexpensive hardware based on a widely available development board
- Built on a generic development board rather than a purpose-made secure element
- Requires a host program to build transactions; there is no standalone screen or interface
- Documentation is focused and technical, so beginners may need extra study
- Ongoing development is recent, so expect changes between releases
- Recovery depends on careful backup of shares and the threshold configuration
- Limited support for networks beyond Bitcoin and Zcash
Is Keep ESP32 safe?
Keep handles real signing keys, so treat it with caution. Download firmware only from the official GitHub repository or its Releases page, check the SHA-256 checksum against the published value, and verify signatures where available. Never enter a seed phrase or key material on a third-party website, including sites that offer to flash the firmware for you.
The project is young and marked as a small-scale development effort, so do a full review of the code and the security model before storing significant funds. Test every workflow with small amounts first, and keep backups of your shares in more than one secure location. Check the official repository for the latest version and any security advisories before each use.
- Official source only. Download from github.com/privkeyio/keep-esp32. Ignore ads and lookalike domains.
- Check the SHA-256. Compare the installer hash with the value the developer publishes before running it.
- Never share your seed phrase. No developer, support agent or website — including CryptApps — will ever ask for it.
Alternatives
Keep differs from most of the other programs in this catalog. Several listed projects are Nostr clients, relays or social applications, while Keep is a dedicated signer that protects keys and produces signatures. It does not display feeds or send messages.
Bold Bitcoin Wallet is probably the closest in spirit, since it also deals with Bitcoin signing and coordinated multi-device control, though it works through a wallet interface on the host side. Keep, by contrast, runs on a standalone microcontroller and keeps the network entirely out of the signing path.
If your goal is a complete Bitcoin wallet with a graphical interface, a wallet application may suit you better and can be paired with a hardware signer. If you want a minimal, auditable device that only signs, Keep is the more focused choice.
Specifications
- Price
- Free
- Type
- Open source
- License
- MIT
- Latest version
- v0.2.2
- Last update
- 8 Oct 2026
- Windows support
- Likely (builds for Windows; check releases)
- Source code
- github.com/privkeyio/keep-esp32
Frequently asked questions
Yes. Keep ESP32 is free and open source under the MIT license, so you can download, use, modify and redistribute the code. You will need to pay for the ESP32-S3 development board and a USB cable, which are standard hardware costs.
The project is listed as likely to work on Windows, with builds available from the releases page. The board should appear as a serial device once connected. Flashing from the browser requires Chrome or Edge, and you should confirm the current release notes before setting up.
An air-gapped signer is a device with no network connection that holds private keys and produces signatures. Transactions are passed to it over a local connection, such as USB, and the signed result is returned. This prevents remote attackers from reaching the keys through the internet.
FROST is a threshold signature scheme that lets several parties jointly create a Schnorr signature without any one of them holding the full key. It matters because losing one share does not necessarily mean losing the funds, and the resulting signatures look like ordinary Taproot signatures on the blockchain.
The documentation mentions Bitcoin and Zcash. Bitcoin support centers on PSBT parsing and Taproot signing. Because support details can change between releases, review the repository before depending on a specific network or transaction type.
The firmware is designed so private keys are never exposed to the host, and shares are kept in a dedicated flash partition. However, it runs on a development board without a dedicated secure element, and the project is young. Treat it as experimental and keep verified backups.
Flashing the firmware can be done from a browser, which removes the need for command-line tools. Operating the signer, however, involves sending JSON-RPC commands and building PSBTs with a host program, so some technical comfort is helpful.
Verdict
Keep ESP32 is a focused, open source option for people who want a low-cost, air-gapped device to hold Bitcoin signing keys using FROST threshold signatures. It rewards careful users who read the documentation, test with small amounts and keep disciplined backups. It is less suitable for anyone seeking a polished consumer product. Check the official repository for the latest version before you start.