2.4 Desktop wallet: Sparrow wallet
We install Sparrow wallet on a computer and connect it to your Electrum server on your node for private Bitcoin on-chain transactions.
Requirements
Introduction
Sparrow wallet is an excellent software wallet to use with your MiniBolt: it's reliable and transparently shows what it's doing under the hood.
You can also use the following alternatives instead of Sparrow Wallet, according to your preferences and needs:
BitBoxApp: wallet for users of BitBox hardware wallets
Electrum Wallet Desktop: a well-established poweruser wallet
Ledger Live: wallet for users of Ledger hardware wallets (this wallet connects directly to Bitcoin Core)
Trezor Suite: wallet for users of Trezor hardware wallets
We will connect Sparrow wallet to our own Electrum server as it is the most private option. For more information about the privacy and security trade-offs of the various server connection options, read the following article by Craig Raw, the author of the wallet.
We will set up Sparrow to connect to Fulcrum within your local network. There is also an optional section at the end that explains how to connect Sparrow to Fulcrum using Tor for when you're on the move.
Sparrow also connects to a couple of external services to get the Bitcoin price and communicate with the Whirlpool server during CoinJoin operations. By default, it uses clearnet which leaks your computer IP address to these services and degrades your privacy. However, Sparrow can also connect to them using a Tor proxy. There is an optional section at the end that explains how to set this proxy up.
Installation
On your local computer, download, verify, and install Sparrow wallet.
Using the instructions on this page
Download the required version for your OS
Download the manifest and manifest signature files
Verify the release
Install Sparrow wallet
Local connection
We now configure Sparrow to connect to your node within your local network.
Launch Sparrow
Launch Sparrow
Read carefully the introductory messages and click on "Next" several times
When you reach the "Connecting to a Private Electrum Server" message, click on "Configure Server"
Connect to Fulcrum
Click on the "Private Electrum" tab
On the "URL" line, paste
minibolt.local
or your node IP (e.g.,192.168.X.XXX
) in the first box and50002
in the second boxEnable SSL by clicking on the slider
Click on "Test Connection". A green tick should appear on the button and you should see something similar to the following output:
If there is a connection error message, try the following troubleshooting:
Make sure that your computer is not connected to any "guest" WiFi network at home. A "guest" WiFi network prevents the computer from connecting to any other devices on the local network, such as your node.
If you have used Sparrow wallet before on this computer, try to connect again after deleting the existing certificates that are stored within the
certs
folder:On Windows:
C:\Users\<username>\AppData\Roaming\Sparrow\certs
On macOS:
~/.sparrow/certs
On Linux:
~/.sparrow/certs
Let's go back to the wallet and check that it is connected to our own Electrum server.
Close the server configuration window
The icon should be a blue slider button and a mouse over should display "Connected to [...] at height [...]"
You're set! Sparrow is now configured to connect to your Electrum server from within your local network.
For maximal privacy, we highly recommend that you set up the Tor proxy when using Sparrow within your local network over clearnet. Check the optional section at the end of this guide.
Sparrow in action
Congratulations, you have now a Bitcoin desktop wallet, capable of securing your Bitcoin, running with your own trustless Bitcoin full node! Sparrow is a powerful wallet that allows you to use the most advanced features for securing your bitcoins and preserving your privacy.
With Sparrow, you can:
Connect any hardware wallet
Send and receive bitcoins
Have full control throughout the transaction creation and signing process: coin control, PSBT, labeling, byte level transaction viewer...
Create batched transactions to save on miner fees
Create multisig wallets for improved security
Coinjoin your coins for improved privacy
Analyze your transactions with the built-in blockchain explorer
For more information, tutorials, and support, visit the Sparrow documentation webpage and their Telegram group.
(Optional) Remote connection over Tor
If you want to use Sparrow outside your home network, when you're on the go, you can use a connection over Tor.
Server Tor address
To connect via Tor to Fulcrum, the server must have a Tor hidden service connection address. Make sure you have set up a Tor hidden service as explained in the "Electrum server" guide.
If you've already set up the hidden service but lost the connection address, you can obtain it again by running the following command with "admin" on your node:
Expected output:
Sparrow configuration
Open Sparrow
Navigate to the server configuration page by hitting
Ctrl
+P
, orCmd
+,
on OSX, then click on "Server"Click on the "Private Electrum" tab. If you've already had an existing clearnet connection, click on "Edit Existing Connection".
On the "URL" line, paste your Tor hidden service connection address (e.g. "abcd...1234.onion") in the first box and
50002
in the second boxEnable SSL by clicking on the slider
Click on "Test Connection". A green tick should appear on the button and you should see something similar to the following output:
You're set! Sparrow is now configured to connect to your node over Tor and you can use it wherever you are.
(Optional) Set up a Tor proxy for external services
If a Tor proxy is configured in Sparrow, all external connections use Tor. This includes rate fetching, coinjoin, etc - even transaction broadcasting is then done via an external service (like blockstream.info) over Tor for additional privacy. Where-ever possible, the onion URLs of these services are used.
Sparrow can be configured to use an internal (bundled) or external Tor proxy. To use the internal proxy, an onion Electrum server URL must be specified, and the 'Use Proxy' toggle must be off. Therefore, the following section only applies if you connect to your Electrum server using the local IP address within your local network (e.g., minibolt.local
or 192.168.X.XXX
). If you're using a Tor onion address to connect to your node, then Sparrow is already using the internal proxy and there is nothing else to be done!
If you're using a local connection, we recommend that you set up this external Tor proxy as described below for maximal privacy.
Preparations on your computer
For Sparrow Wallet to connect to the external services via Tor, Tor has to be running on your computer. You can run the Tor Browser and use port 9150 on localhost or else run Tor as a background service and use port 9050.
By OS:
Windows: download, install, and run Tor Browser
The application must be started manually and run in the background when you want to connect over Tor.
By default, when you have Tor Browser running, Tor proxy is available on port
9150
, but if you want to have9050
available too, you can run background service on port9050
, executing"tor.exe"
file on the installation path route you chose during Tor Browser installation and following the next subpath...\Tor Browser\Browser\TorBrowser\Tor\tor.exe"
Linux: only needs to execute (
sudo apt install tor
) on the command line and ensure that the Tor service is working and listening at the default port9050
Expected output:
macOS: download, verify, install, and run Tor Browser
The application must be started manually when you want to connect over Tor
By default, when you have Tor Browser running, Tor proxy is available on port 9150, use this port instead of
9050
port
Server configuration
Open Sparrow
Navigate to the server configuration page by hitting
Ctrl
+P
, orCmd
+,
on OSX, then click on "Server"Click on the "Private Electrum" tab. If you already have an existing clearnet connection, click on "Edit Existing Connection".
Enable the Tor proxy by clicking on the "Use proxy" slider
On the "Proxy URL" line, enter
localhost
or127.0.0.1
in the first box and either9150
or9050
in the second box depending if you run the Tor Browser or Tor as a background service.Click on "Test Connection". A green tick should appear on the button and you should see something similar to the following output
If you followed the Use the Tor proxy from another device section, you can use the Tor instance of your node instead of the instance of your regular computer, simply put on the "Proxy URL" box, your node IP local address (i.e 192.168.1.60) instead of localhost (127.0.0.1)
Now, let's go back to the wallet and check that the proxy is working properly.
Close the server configuration window
The first icon should be grey, not red; and a mouse hover should display "External Tor proxy enabled"
You're set! Sparrow Wallet is now configured to use the Tor proxy when fetching the Bitcoin price and when communicating with the Whirlpool server during CoinJoins.
Troubleshooting note: For those who already had Sparrow installed on their systems with old server connections, is needed to clear the pre-existing cert of the certs folder. Follow these instructions:
Shut down Sparrow if it's running
Go to C:\Users<yourUsername>\AppData/Roaming\Sparrow\certs (or ~/.Sparrow/certs on Linux afaik)
Delete the certificate that corresponds to your node IP address
Start Sparrow again
Upgrade
Sparrow will automatically notify you when an update is available. Simply install the updates using the usual method for your OS.
Last updated