Skip to main content

A GUI for Bitcoin Core optimised to work with airgapped hardware wallets

Project description

Table of Contents

Specter Desktop

"A specter is haunting the modern world, the specter of crypto anarchy."
The Crypto Anarchist Manifesto - Timothy C. May - Sun, 22 Nov 92 12:11:24 PST

Build Status

DISCLAIMER

This software might be ready to be used but at your own risk. The UI is currently only tested and optimised in Chrome, and looks a bit weird but usable in firefox. So in other browsers, it may even look more weird.

If something doesn't work open an issue here or ask a question in our Telegram group.

Why?

Bitcoin Core has a very powerful command line interface and a wonderful daemon. Using PSBT and HWI it can also work with hardware wallets, but at the moment it is too linux-way. The same applies to multisignature setups.

The goal of this project is to make a convenient and user-friendly GUI around Bitcoin Core with a focus on multisignature setup with airgapped hardware wallets.

At the moment Specter-Desktop is working with all major Hardware-Wallets including Specter-DIY hardware wallet which uses QR codes as a main communication channel and ColdCard that uses SD cards. Also it already supports "hot" hardware wallets using HWI tool and is tested to work with Trezor One. It should also work with Keepkey and Ledger (Firmware >= 1.6.0).

How to run

  • HWI support requires libusb
    • Ubuntu/Debian: sudo apt install libusb-1.0-0-dev libudev-dev
    • macOS: brew install libusb
    • windows: follow instructions in windows.md
  • Install Specter
pip3 install cryptoadvance.specter
  • Run Specter
python3 -m cryptoadvance.specter server 
# Or as a deamon:
python3 -m cryptoadvance.specter server --daemon
# Stop the daemon again:
python3 -m cryptoadvance.specter server --stop
  • Upgrade Specter
pip3 install cryptoadvance.specter --upgrade

After that, specter will be available at http://127.0.0.1:25441/.

You can also run it (as a daemon), using tor, provide ssl certificates to run over https. Https is especially important because browsers don't allow the website to access camera without secure connection, and we need camera access to scan QR codes.

An example how to run specter server in the background (--daemon) with ssl certificates (--key, --cert) over tor:

python3 -m cryptoadvance.specter server --tor=mytorpassword --cert=./cert.pem --key=./key.pem --daemon

If your Bitcoin Core is using a default data folder the app should detect it automatically. If not, consider setting rpcuser and rpcpassword in the bitcoin.conf file or set in directly in the specter-app settings.

If you use Specter from a remote machine and want to use it with hardware wallets connected via USB, please read this guide on setting up HWIBridge to facilitate such connection to hardware wallets.

Have a look at DEVELOPMENT.md for further information about hacking on specter-desktop.

Detailed instructions

A few screenshots

Adding a new device

Creating a new wallet

Wallet interface

Configuration

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cryptoadvance.specter-0.5.0.tar.gz (918.7 kB view hashes)

Uploaded Source

Built Distribution

cryptoadvance.specter-0.5.0-py3-none-any.whl (960.0 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page