2021-06-21 08:57:23 -04:00
<!--
Title: How to install and use Electrum over Tor on macOS
Description: Learn how to install and use Electrum over Tor on macOS.
Author: Sun Knudsen < https: / / github . com / sunknudsen >
Contributors: Sun Knudsen < https: / / github . com / sunknudsen >
Reviewers:
Publication date: 2021-06-21T11:03:01.566Z
Listed: true
-->
# How to install and use Electrum over Tor on macOS
2021-06-25 11:08:27 -04:00
[](https://www.youtube.com/watch?v=QQsAu-9brYY "How to install and use Electrum over Tor on macOS")
2021-11-05 09:07:15 -04:00
## Requirements
2022-04-09 11:16:55 -04:00
- Computer running macOS Big Sur or Monterey
2021-11-05 09:07:15 -04:00
2021-06-21 08:57:23 -04:00
## Caveats
- When copy/pasting commands that start with `$` , strip out `$` as this character is not part of the command
2022-04-09 11:16:55 -04:00
- Press < kbd > ctrl+c</ kbd > to stop running command before closing “Terminal” app
2021-06-21 08:57:23 -04:00
## Setup guide
### Step 1: install [Homebrew](https://brew.sh/)
2021-11-05 09:40:41 -04:00
```console
$ /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
$ uname -m | grep arm64 & & echo 'export PATH=$PATH:/opt/homebrew/bin' >> ~/.zshrc & & source ~/.zshrc
2021-06-21 08:57:23 -04:00
```
### Step 2: disable Homebrew analytics
```shell
brew analytics off
```
### Step 3: install [GnuPG](https://gnupg.org/)
```shell
brew install gnupg
```
### Step 4: install [Electrum](https://electrum.org/#home)
#### Import ThomasV’ s PGP public key
```console
$ curl https://raw.githubusercontent.com/spesmilo/electrum/master/pubkeys/ThomasV.asc | gpg --import
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
2022-04-09 11:16:55 -04:00
100 4739 100 4739 0 0 29073 0 --:--:-- --:--:-- --:--:-- 29073
2021-06-21 08:57:23 -04:00
gpg: key 0x2BD5824B7F9470E6: public key "Thomas Voegtlin (https://electrum.org) < thomasv @electrum .org > " imported
gpg: Total number processed: 1
gpg: imported: 1
```
imported: 1
👍
2021-07-21 19:48:34 -04:00
#### Download Electrum release
2021-06-21 08:57:23 -04:00
Go to https://electrum.org/#download and download latest release and associated PGP signature to `~/Downloads` folder.
2022-03-02 07:38:18 -05:00
#### Verify Electrum release (learn how [here](../how-to-verify-pgp-digital-signatures-using-gnupg-on-macos/README.md))
2021-06-21 08:57:23 -04:00
2022-04-09 11:16:55 -04:00
> Heads-up: replace `4.2.1` with [latest release](https://electrum.org/#download) semver.
2021-06-21 08:57:23 -04:00
```console
2022-04-09 11:16:55 -04:00
$ gpg --verify ~/Downloads/electrum-4.2.1.dmg.asc
gpg: assuming signed data in '/Users/sunknudsen/Downloads/electrum-4.2.1.dmg'
gpg: Signature made Sun 27 Mar 12:31:59 2022 EDT
gpg: using RSA key 637DB1E23370F84AFF88CCE03152347D07DA627C
gpg: Can't check signature: No public key
gpg: Signature made Sun 27 Mar 09:55:54 2022 EDT
gpg: using RSA key 0EEDCFD5CAFB459067349B23CA9EEEC43DF911DC
gpg: Can't check signature: No public key
gpg: Signature made Sun 27 Mar 01:57:04 2022 EDT
2021-06-21 08:57:23 -04:00
gpg: using RSA key 6694D8DE7BE8EE5631BED9502BD5824B7F9470E6
gpg: Good signature from "Thomas Voegtlin (https://electrum.org) < thomasv @electrum .org > " [unknown]
gpg: aka "ThomasV < thomasv1 @gmx .de > " [unknown]
gpg: aka "Thomas Voegtlin < thomasv1 @gmx .de > " [unknown]
gpg: WARNING: This key is not certified with a trusted signature!
gpg: There is no indication that the signature belongs to the owner.
Primary key fingerprint: 6694 D8DE 7BE8 EE56 31BE D950 2BD5 824B 7F94 70E6
```
Good signature
👍
#### Install Electrum
2022-04-09 11:16:55 -04:00
Double-click “electrum-4.2.1.dmg” and drag-and-drop “Electrum” into “Applications” folder.
2021-06-21 08:57:23 -04:00
### Step 5: install [Tor Browser](https://www.torproject.org/) (used to connect to Electrum public servers over Tor)
2022-04-09 11:16:55 -04:00
> Heads-up: using public servers can [compromised privacy of wallet](https://sunknudsen.com/self-hosting-bitcoin-full-node-on-raspberry-pi-updated/) (learn how to self-host Bitcoin node [here](../how-to-self-host-hardened-bitcoin-node/README.md)).
2021-06-21 08:57:23 -04:00
#### Import “Tor Browser Developers (signing key)” PGP public key
```console
$ gpg --keyserver hkps://keys.openpgp.org --recv-keys 0x4E2C6E8793298290
gpg: key 0x4E2C6E8793298290: public key "Tor Browser Developers (signing key) < torbrowser @torproject .org > " imported
gpg: Total number processed: 1
gpg: imported: 1
```
imported: 1
👍
2021-07-21 19:48:34 -04:00
#### Download “Tor Browser” release
2021-06-21 08:57:23 -04:00
Go to https://www.torproject.org/download/ and download latest release and associated PGP signature to `~/Downloads` folder.
2022-03-02 07:38:18 -05:00
#### Verify “Tor Browser” release (learn how [here](../how-to-verify-pgp-digital-signatures-using-gnupg-on-macos/README.md))
2021-06-21 08:57:23 -04:00
2022-04-09 11:16:55 -04:00
> Heads-up: replace `11.0.10` with [latest release](https://www.torproject.org/download/) semver.
2021-06-21 08:57:23 -04:00
```console
2022-04-09 11:16:55 -04:00
$ gpg --verify ~/Downloads/TorBrowser-11.0.10-osx64_en-US.dmg.asc
gpg: assuming signed data in '/Users/sunknudsen/Downloads/TorBrowser-11.0.10-osx64_en-US.dmg'
gpg: Signature made Tue 5 Apr 20:06:23 2022 EDT
gpg: using RSA key 0xE53D989A9E2D47BF
2021-06-21 08:57:23 -04:00
gpg: Good signature from "Tor Browser Developers (signing key) < torbrowser @torproject .org > " [unknown]
gpg: WARNING: This key is not certified with a trusted signature!
gpg: There is no indication that the signature belongs to the owner.
Primary key fingerprint: EF6E 286D DA85 EA2A 4BA7 DE68 4E2C 6E87 9329 8290
2022-04-09 11:16:55 -04:00
Subkey fingerprint: 6131 88FC 5BE2 176E 3ED5 4901 E53D 989A 9E2D 47BF
2021-06-21 08:57:23 -04:00
```
Good signature
👍
#### Install “Tor Browser”
2022-04-09 11:16:55 -04:00
Double-click “TorBrowser-11.0.10-osx64_en-US.dmg” and drag-and-drop “Tor Browser” into “Applications” folder.
2021-06-21 08:57:23 -04:00
2022-04-09 11:29:18 -04:00
👍
2021-06-21 08:57:23 -04:00
---
## Usage guide
### Step 1: start Tor SOCKSv5 proxy
```console
$ /Applications/Tor\ Browser.app/Contents/Resources/TorBrowser/Tor/tor
Jun 21 08:20:47.065 [notice] Tor 0.4.5.8 (git-27e5e33d2ca35de8) running on Darwin with Libevent 2.1.11-stable, OpenSSL 1.1.1k, Zlib 1.2.11, Liblzma N/A, Libzstd N/A and Unknown N/A as libc.
Jun 21 08:20:47.065 [notice] Tor can't help you if you use it wrong! Learn how to be safe at https://www.torproject.org/download/download#warning
Jun 21 08:20:47.065 [notice] Configuration file "/var/tmp/dist/tor/etc/tor/torrc" not present, using reasonable defaults.
Jun 21 08:20:47.067 [notice] Opening Socks listener on 127.0.0.1:9050
Jun 21 08:20:47.067 [notice] Opened Socks listener connection (ready) on 127.0.0.1:9050
Jun 21 08:20:47.000 [notice] Bootstrapped 0% (starting): Starting
Jun 21 08:20:47.000 [notice] Starting with guard context "default"
Jun 21 08:20:48.000 [notice] Bootstrapped 5% (conn): Connecting to a relay
Jun 21 08:20:48.000 [notice] Bootstrapped 10% (conn_done): Connected to a relay
Jun 21 08:20:48.000 [notice] Bootstrapped 14% (handshake): Handshaking with a relay
Jun 21 08:20:49.000 [notice] Bootstrapped 15% (handshake_done): Handshake with a relay done
Jun 21 08:20:49.000 [notice] Bootstrapped 75% (enough_dirinfo): Loaded enough directory info to build circuits
Jun 21 08:20:49.000 [notice] Bootstrapped 90% (ap_handshake_done): Handshake finished with a relay to build circuits
Jun 21 08:20:49.000 [notice] Bootstrapped 95% (circuit_create): Establishing a Tor circuit
Jun 21 08:20:51.000 [notice] Bootstrapped 100% (done): Done
```
Done
👍
### Step 2: start Electrum using Tor SOCKSv5 proxy
> Heads-up: append `--testnet` for Testnet.
```shell
/Applications/Electrum.app/Contents/MacOS/run_electrum --proxy socks5:127.0.0.1:9050
```