A Bitcoin developer has built a stateless, QR-air-gapped Bitcoin hardware wallet that allows users to send, receive, and hold their Bitcoin funds. The DIY device costs around $110 to make and was created in order to promote learning about Bitcoin, its security and self-custody.

Creating a Bitcoin hardware wallet from scratch

Keeping cryptocurrencies in cold storage is by far the best way to make sure your funds are secure. However, hardware wallets still aren’t completely tamper-proof.

To combat this problem and promote hardware wallet improvement, a Bitcoin developer has created his own Bitcoin wallet from scratch. Justin Moon, who teaches a course on Bitcoin development, shared his creation on Twitter, where he garnered a lot of support from the crypto community.

Moon named his creation BitBoy, saying it was a stateless, QR-air-gapped, DIY Bitcoin hardware wallet.

Meet BitBoy: a stateless, QR-airgapped DIY Bitcoin hardware wallet pic.twitter.com/4nfrNP1hlE — Justin Moon (@_JustinMoon_) September 3, 2019

BitBoy is a stateless device, Moon said, adding that the seed words are entered on startup. A stateless device means that it runs on a stateless protocol, which means that the device doesn’t keep records of previous interactions. Interaction requests on a stateless device are based entirely on information that comes with the device, which allows for more privacy.

BitBoy is stateless. You enter your seed words on startup. pic.twitter.com/yYFBCF6cP3 — Justin Moon (@_JustinMoon_) September 3, 2019

Low cost and customizability—is BitBoy the future of hardware wallets?

The BitBoy wallet allows users to export their account’s public key to a Bitcoin Core watch-only wallet via a QR code. That way, Moon explained, users can prepare their transactions and watch their balances.

Export master xpub via QR from BitBoy to Bitcoin Core watch-only wallet on hot machine, which will prepare our transactions and watch our balances. pic.twitter.com/WXAjAq1VL7 — Justin Moon (@_JustinMoon_) September 3, 2019

To sign their transactions, BitBoy users will have to create a partially signed Bitcoin transaction (PSBT) on a device connected to the internet and then sign the QR code to BitBoy. After the user confirms the transaction, the QR code of the signature needs to be scanned from the BitBoy wallet back to the device. The device will then broadcast the transaction automatically, allowing the user to view it on their explorers.

Moon demonstrated the process of signing a transaction on BitBoy in a video he posted on Twitter.

To sign a transaction:

– Create PSBT on hot machine

– Scan QR of unsigned PSBT from hot machine to BitBoy

– Confirm (change detection & fee display are WIP)

– Scan QR of signature from BitBoy to hot machine, which broadcasts automatically (YOLO this testnet)

– View on explorer pic.twitter.com/t5ItyyIiNh — Justin Moon (@_JustinMoon_) September 3, 2019

According to Moon, BitBoy was created to promote BUIDL Bootcamp, his online Bitcoin programming boot camp. The developer also said that building a hardware wallet is a great way to learn about Bitcoin and raise awareness about security and self-custody.

The relatively low cost of DIY-ing a BitBoy—around $110—attracted a significant amount of attention on Twitter, with many users praising the simple user interface and the use of QR codes for signing.

We are yet to see whether Moon’s detailed instructions inspire other DIY wallets.