How to mine Zcash with CPU (Linux)

14 Nov 2016

ZCash is an anonymous cryptocurrency that uses zk-snarks to ensure that all the information regarding user transactions is safely encrypted, while still verifiable by miners that can ensure no double-spending has taken place using zero knowledge proofs.

ZCash uses Equihash as an hashing algorithm, which is an asymmetric memory-hard PoW algorithm based on the generalized birthday problem. It relies on high RAM requirements to bottleneck the generation of proofs and making ASIC development unfeasible, much like Ethereum.

In order to avoid Instamine ZCash will have a slow mining start, where block rewards will be issued slowler than normal.

We are going to show you how to mine ZCash on Ubuntu. To mine ZCash on Windows click here. You can also try mining with  cloud mining contract with Genesis Mining or Hashflare.

Not everyone has access to a computer, however, and not everyone has the time, knowledge or patience to start mining Zcash on their own, especially since there is no Graphic User Interface (GUI) Miner available yet. If you want to mine on your own computer, but need a little push to do so, you're in the right place. But if you're looking to profit from Zcash mining with no effort at all, this guide will do the trick.

Mining ZCash on Linux (Ubuntu) - ONLY WORKS FOR 64BIT SYSTEMS

Part 1 - Installing the ZCash system package dependencies

Step 1: Open your terminal. This can be done by clicking the upper left logo (1) and searching for "Terminal". Click the Terminal logo (2). 

Step 2: First install the dependencies required by Zcash. This can be done by typing the following into the command line:
sudo apt-get install \
build-essential pkg-config libc6-dev m4 g++-multilib \
autoconf libtool ncurses-dev unzip git python \
zlib1g-dev wget bsdmainutils automake

You can also copy (CTRL+SHIFT+C) and paste (CTRL+SHIFT+V) this command in your terminal to make it easier. After you type in the command press enter. 

Step 3: After you enter the command, you'll be prompted for your password. Type it in and press enter.

Step 4: The terminal will also ask you to confirm the action. Write "Y" and click Enter to accept 

Step 5: Download the Zcash repository by entering the following command: "git clone". This will create a new folder called ZCash inside your "Files" directory. 

Step 6: Once the ZCash repository finishes downloading, go into the ZCash folder by typing in the command: "cd zcash". And pressing enter. 

Step 7: Inside the Zcash file you need to get the public alpha proving and verifying keys. Enter the command:

git checkout v1.0.1

These keys are 1.5GB, so this process may take a while.

Part 2 - Compiling ZCash

Once you have downloaded and installed all system package dependencies, you can compile them and build zcashd.

Step 1: To compile ZCash enter the following command: "./zcutil/ -j$(nproc)".

Part 3 - Running ZCash

Step 1: Before running Zcash, we have to create a folder for the configuration file. Outside of the terminal, go to "Files" (1), Right click anywhere and create a folder named ".zcash". 

Step 2: You may see that the folder you have just created disappeared. That's because Linux recognizes folders that start with a "." as a hidden folder. To see the hidden folders click CTRL+H.

Step 3: Now you'll need to create a configuration file inside the .zcash folder you have just created, Right-Click again and choose "New Document", then "Empty Document".

Step 4: Open the New Document you've just created and paste the following configuration:




Step 5: Save and close the file, then rename it to "zcash.conf".

Step 5: Now, go back to the terminal and enter the following command: "./src/zcashd -daemon".

If you closed the terminal, enter "cd zcash" to go to the zcash folder (the command will only work while on the zcash folder).


Part 4 - Mining ZCash

Now that we know that we know that ZCash has been properly installed, we can start mining some zcash.

Step 1: Stop the ZCash deamon by entering the command "./src/zcash-cli stop". 

Step 2: Go to Files (1) and enter your .zcash (2) folder


Step 3: Now edit your configuration file "zcash.conf" and add one line to it: "gen=1" and save the document.

Step 4: Run the ZCash deamon again by entering the command: "./src/zcashd -daemon". again

And that's it! You are now officially mining ZCash testcoins. You will not see your hashrate displayed,  or any information regarding it, but you can check your balance and other blockchain info by typing and entering the command: "./src/zcash-cli getinfo". It may take a while to get new testcoins, so if you're not you've done everything correctly, make sure that your config file has the "gen=1" line and wait for a few hours before checking your balance.

Enter the command: "./src/zcash-cli listunspent" to get more detailed info on your testcoins and wallet.

Mining ZCash on Windows

ZCash currently does not support Windows, nor will it do so for the 1.0 launch. A version with Windows support is scheduled for the following release. If you're a Windows user and want to mine ZCash, you can either Install Linux on a Virtual Machine or wait for the windows release. If you do decide to run Zcash on a virtual machine, you just need to follow the instructions on this video. After Ubuntu is installed on a virtual machine, just follow the instructions on this guide from the start


Important information

This website is only provided for your general information and is not intended to be relied upon by you in making any investment decisions. You should always combine multiple sources of information and analysis before making an investment and seek independent expert financial advice.

Where we list or describe different products and services, we try to give you the information you need to help you compare them and choose the right product or service for you. We may also have tips and more information to help you compare providers.

Some providers pay us for advertisements or promotions on our website or in emails we may send you. Any commercial agreement we have in place with a provider does not affect how we describe them or their products and services. Sponsored companies are clearly labelled.

CryptoCompare needs a newer browser in order to work.
Please use one of the browsers below: