Monero: Private And Difficult to Use

Monero is a privacy coin best known for its use on DarkNet markets. What’s it like being a Monero user 3 years after launch? Andreas finds out.

This is a close-up of a Monero watercolor I won at an auction. More about that later.

Today I’ll be reviewing Monero, a privacy focused coin. Monero is not a fork of Bitcoin, but built on CryptoNote. I’m not sure why I’ve never tried Monero before. I’m looking forward to reviewing it.

TL;DR: Monero offers superior privacy to Bitcoin, but lacks mobile and hardware wallet support.

The Monero project started in April 2014. The project has grown steadily and currently has a market cap of $1.5 billion (1 XMR = $99.24) The network processes around 2000 transactions per day.

Monero is accepted on a number of DarkNet Markets, including WallStreet Trading and TradeRoute.

I write these reviews in the evening on the weekends. I’ll use the latest source-code and documentation. Waiting for support ticket replies or joining a Slack is not an option when you’re ready to hit the DarkNet Markets!

My review of Monero is quite long, but not very technical. You can skip to the end by searching the page for the word “conclusion”.

Goals for the review

  1. Compile and install Monero from source-code
  2. Sync the full Monero blockchain
  3. Install a Monero wallet on my Android phone
  4. Buy Monero (XMR)
  5. Send XMR to my Monero full node
  6. Install the Monero desktop client
  7. BONUS: Buy a service or item using Monero
  8. BONUS: Send the remaining XMR to a hardware wallet

The Monero Landing page

It seems that Monero is private.

Monero’s landing page mostly repeats that Monero is private. I prefer privacy over scaling. I hope it works.

I click Get Started.

I want to avoid having to sit on their Slack.

I want to compile and run a full Monero node from source-code. I follow the link to the Github.

The Monero Github Project

The monero-project user on Github has a few different projects. I don’t know what language QML is. I’ll try the project simply named monero first.

The Monero Project in Numbers

The monero-project/monero project on Github looks alive. Monero has a large number of contributors, stars, forks, and issues. This tells me that the Monero project is popular. But is it active?

The number of changes to the Monero code is consistent over time.

Finding the Source Code

These “Build Success” badges are generated from an automatic system. A system like this is called Continuous Integration.

The README has a list of operating systems compatible with the newest version of Monero. Ubuntu 16.04 looks promising.

The idea of a “staging” project is very similar to Bitcoin Core’s process.

The Monero README recommends using a tagged release. I head over to the releases section.

The latest version of Monero is Helium Hydra. Most notable changes mention privacy. The focus on privacy is consistent with all the mentions of privacy on the Monero landing page. 👍

Helium Hydra sounds like a Final Fantasy boss.

The latest Final Fantasy game, FFXV, is way too easy but worth playing anyway. One of the best parts of the game happens after you finish the main story line. It’s a mix of Back to the Future and Super Mario. I won’t spoil more.

Helium Hydra is a mandatory upgrade. In Bitcoin this is called a hard fork and caused a three year civil war. I hope Helium Hydra doesn’t cause a civil war in Monero.

I see 39 contributors to the Helium Hydra release code. The previous release of Monero was on March 25th, 2017.

The source code of Monero is linked from the release page. I’ll need to set up a Linux machine first.

Compiling and Installing Monero

I’ll need a machine to compile and run Monero. It would be hard for you to repeat the process if I used my own laptop.

Setting up an Amazon AWS machine for Monero

Ubuntu 16.04 is a widely used version of Linux that works with most coins.

I choose Ubuntu 16.04 and click Select.

[caption]

A computer with 4 CPU cores and 16 GB ram should be enough to compile, run, and sync Monero.

I don’t know how big the Monero blockchain is. 500 GB should be more than enough.

Monero’s README lists the following dependencies:

I’ll install only the required dependencies. The rest are for developer debugging and testing.

Installing the dependencies takes around a minute. Maybe all those CPU cores were worth it.

I download and extract the Monero source-code I found on the Helium Hydra release page earlier.

The Monero build instructions are very easy. Just run make.

I compile with the make -j2 command to use two CPUs for some extra speed.

OBJECTIVE SUCCESS!

Compile and install Monero from source-code

Easy enough! I start the monerod program. I hope syncing the Monero blockchain won’t take too long.

I don’t see any updates on the syncing progress. I’ll go grab a coffee. 😪

Five minutes later.

Monero is slowly downloading the blockchain. It’s getting late. I’ll check the progress tomorrow.

I check on the syncing next day and Monero is all caught up.

OBJECTIVE SUCCESS!

Sync the full Monero blockchain
I recommend watching the behind the scenes video of How I Met Your Mother’s 100th episode. NPH is an amazing actor.

Finding an Android wallet for Monero

Compiling a mobile wallet from source-code would take too much time. I’d rather just get something from the Play Store. But all wallets in the Play Store are hosted wallets. That’s unacceptable from a security/privacy standpoint.

I wonder what difficulties working with the community means.

I’ll use the MyMonero Wallet from Chrome. Not as appealing as an actual native Android app. 😠

MyMonero seems to have generated a private key in my Android phone’s web browser.

I write down the wallet seed on a piece of paper and confirm in the MyMonero wallet.

OBJECTIVE PARTIAL SUCCESS! (Not a native app 😠)

Install a Monero wallet on my Android phone

Spending Monero

I need to buy some XMR. I haven’t used ShapeShift since they first launched. Using ShapeShift will be easier than buying XMR on an exchange.

I’ll exchange some Bitcoin Cash for Monero.

I send the Bitcoin Cash to ShapeShift and start waiting for confirmations.

It could take some time for the transfer to confirm.

Here’s a photo of the world’s second Bitcoin Cash poker game. It was hosted in Beijing after a Bitcoin conference was canceled. The hotel wouldn’t bring tables to the room, so we had everyone bring the ironing boards from their rooms. I’m the guy in the white shirt on the bottom left. I also lost the most.

I had to re-enter the entire wallet seed when I re-opened the MyMonero wallet on my phone. That’s pretty annoying.

At least my 20 XMR has arrived in the MyMonero wallet.

OBJECTIVE SUCCESS!

Buy Monero (XMR)

Send XMR from My Phone to the Full Node

I start with the help command in the monerod console to find my wallet/addresses.

I don’t see any commands relating to a wallet. Maybe it’s another program. I reluctantly go back to the six point guide on the Monero website.

I think I found it.

monero-wallet-cli must be what I need. I’ll see what it does.

The monero-wallet-cli program has a lot of options, switches, and commands.

I take my chances and run the program.

The program asks if I want to make a wallet. I choose not to encrypt it with a password because I’m lazy.

There are so many commands. I just want to find my address.

These addresses are absurdly long. I think it’s because they contain a few different keys.

Got it! I send the address to myself over WhatsApp. This way I can paste the address on my phone.

The MyMonero interface is quirky. I need to calculate the max send amount without any help from the app.

The XMR has been sent! I grab another coffee.

MyMonero full node has received the funds.

OBJECTIVE SUCCESS!

Send XMR to my Monero full node

The Monero Desktop Client

For the remaining goals I will use the Monero desktop wallet for macOS Sierra. I hope syncing it won’t take too long.

The “Latest Blockchain” link is promising.

I click on Monero for Mac.

It’s now officially called macOS X. I have no idea why they keep renaming it.

I click the Mac OS X, 64 bit link.

Why on earth are they using .tar.bz2?

I drag the resulting .app file to my Applications folder.

It seems rude to include Esperanto and not Loglan.

The field for custom daemon address confuses me. Does this wallet run a daemon (full node) or does it connect to one? I’ll try to enter the address of my full node, 13.56.238.23:18081 and click Restore wallet from keys.

The recovery seed is very long.

The network is disconnected. I click Settings.

Why is the Monero wallet trying to connect to localhost when I specified another IP?

I’ll try running with a local daemon. I have to download the blockchain again. I remember seeing a link to download the blockchain.

Monero recommends syncing from scratch. It’s the same way with Bitcoin. They no longer recommend downloading a blockchain.

I’ll leave Monero wallet running on my laptop until it syncs.

Syncing Monero takes several days from the hotel wifi. I wake up every day hoping it’s finished. At some point I just stop counting the days.

Finally! Syncing Monero is finished. I see my XMR balance.

The guy who made the Monero watercolor has been waiting patiently for me to send the payment.

The artist was kind enough to take a photo before sending the watercolor to the framer.

Sending XMR from MyMonero wallet is straight forward. I leave the fee and privacy settings at their default values.

The XMR is sent!

OBJECTIVE SUCCESS!

BONUS: Buy a service or item using Monero

Securing My XMR

I still have some XMR remaining after paying for the watercolor. I search around the web for how to secure my XMR in a hardware wallet.

Sadly, this is not a thing.

Fluffypony is the most prolific developer of Monero. You should follow him on Twitter.

It was possible to use Monero with a Ledger for some time. Support for that method became impossible in September 2017.

OBJECTIVE FAILED!

BONUS: Send the remaining XMR to a hardware wallet
You’ll end up here if you searched the page for the “conclusion”

Having no Android wallet and no hardware wallet is a deal breaker for me. I’m open to trying Monero again when those are available.

I enjoyed trying a coin that’s not a fork of Bitcoin or Ethereum. Out of the blockchain products I’ve reviewed on this blog Monero has been the best.

Going forward I hope the Monero team will focus on creating native phone apps and work with hardware wallet manufacturers.

Good night, blockchainers.

About The Author

Andreas Brekken is the CTO/co-founder of Helix Capital and has been obsessed with cryptocurrency since 2011. He was the CTO/co-founder of Justcoin.com and later worked as an engineer with Kraken.com.

Follow me on Medium and Twitter for more reviews. Which coin should I review next? Write me in the comments.

Are you making a blockchain product and want me to advise or review? I can be bought. Send me a paid message at https://21.co/berken/

Monero’s lead maintainer, fluffypony