This past Valentine’s Day, Open Privacy released an alpha build of an encrypted messaging app called Cwtch.

You can read more about Cwtch either in this blog post or their main Gitlab repo. But it’s basically a decentralized chat application that uses end-to-end encryption for all communication. It also uses Tor Onion services to further protect the metadata of communication, similar to how Ricochet works.

Important: The developers are keen to point out that “Cwtch is an experimental concept and prototype. We do not recommend you use Cwtch today if you require secure communication. At least, not yet.” So you know, don’t send sensitive information over Cwtch just yet.

Getting this Alpha release up and running on Ubuntu 18.04

Note: I’m running Ubuntu 18.04, specifically Kubuntu. I had both the Tor Browser and Go installed before attempting this.

Dependency: An up-to-date version of Tor (not included)

In order to run this build of Cwtch, you need to have Tor installed separately, and it needs to be a pretty recent version. I needed to get up to Tor version 0.3.5.7 for Cwtch to work (you can check which version you have with tor --version).

Installing the latest version of Tor on Ubuntu 18.04

If you run tor --version and get version 0.3.5.7, you’re all good to skip this section. If it’s a lower version number, you may need a newer version of tor.

If you’re running Ubuntu, unfortunately simply running sudo apt install tor may give you a version of Tor that’s too old to run Cwtch, at least at the time of this writing.

To get a newer version of Tor on Ubuntu, follow instructions found here, which I outline below as well.

  1. sudo apt install apt-transport-https
  2. Add the following lines to /etc/apt/sources.list:
    deb https://deb.torproject.org/torproject.org bionic main
    deb-src https://deb.torproject.org/torproject.org bionic main
    
  3. Import GPG key
    sudo curl https://deb.torproject.org/torproject.org/A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89.asc | gpg --import
    sudo gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-key add -
    
  4. Install tor and keyring
    sudo apt update
    sudo apt install tor deb.torproject.org-keyring
    

After doing the above, running tor --version returns Tor version 0.3.5.7. for me, which Cwtch worked with.

Installing and running Cwtch

OK let’s do this.

  1. Download the latest pre-built Linux binary, labeled “cwtch-linux-YYYY-MM-DD.tar.gz” and the matching .sha256 file. (This guide was written for release version 0.1.4.)

  2. Optionally, check the gz file’s integrity by opening a terminal, navigating to where you downloaded the pair of files, and running sha256sum -c cwtch-linux-YYYY-MM-DD.tar.gz.sha256, filling in the proper date. You get an “OK” message.

  3. Extract the downloaded gz file (usually this can be done by just double clicking the compressed file).

  4. Launch Cwtch by running ./cwtch/ui from the appropriate location. Cwtch should launch!

Success! Hopefully! See below for how to run Cwtch more easily, i.e. from your GUI desktop.

I think my username/address/handle is schlink~xek4wvclrozoecg535wndbksyid6fczi5q5kbvvtu7pyt2kb3ghdywid if you want to say hi! (I changed that first part from the default “alice” to “schlink” by clicking on the word “alice” and typing “schlink” – that I could do that wasn’t intuitive to me for a few days.)

Cwtch Alpha testing group

There’s also a “Cwtch Alpha” group where – as explained in this friendly blog post – users are welcome to test out Cwtch and chat in. To request an invite to the group, just paste the following code (called an address) into the address text box in Cwtch that says “paste an address here to add a contact”:

torv3frgCHN7wBNpDdOVvSixgbsIwIjYKD/kl768gRG4hiaQ=EsABCiA2NmI0NmM4OGMxNDc1ZGUxODE5YWYyYTk1ZDM5NTQ4ZBIgDSFY2mxYJiSJs0b442hFChzaHB5B8EERcFqLAkpb5kAaODJjM2ttb29ibnlnaGoyenc2cHd2N2Q1N3l6bGQ3NTNhdW8zdWdhdWV6enB2ZmFrM2FoYzRiZHlkIkBgg+E0T4YKtxnw57sHQbuG3C6myjU2aS496O4n3jpzQu8iT25NReJnuwqv9ER93wE1N9g1f7WY8JCtx0bnvyQK

Getting the very latest builds

If you wish to download and installed the very latest builds of Cwtch, you can find compiled binaries here. Personally I think I’m going to stick to the Alpha releases for now, though.

Creating an application icon by creating a .desktop file (Ubuntu systems)

If you wish to create an application icon for Cwtch on your Ubuntu-based system, you’ll likely want to create a .desktop file. First, let’s download a nice PNG image file of the Cwtch logo and save it inside the cwtch directory.

Then, I put the entire cwtch directory in a new directory called other_apps, located at ~/other_apps.

Next, in ~/.local/share/applications/, I created a file called cwtch.desktop. Assuming you’ve got version 0.1.4 of Cwtch – put this in that file:

[Desktop Entry]
Type=Application
Name=Cwtch
Exec=/home/$USER/other_apps/cwtch/ui
Icon=/home/$USER/other_apps/cwtch/cwtch-peer.png
Terminal=false
Categories=Network;InstantMessaging;Internet

Once you save that file, you should have a Cwtch file available in your applications menu.