For a cryptocurrency to succeed it first needs to achieve wider distribution. In order to achieve this a coin must provide fair mining solution so that even home miners can participate and earn some coins through mining. But today this is not something that you can find in most coins.
Cryptocurrency mining is largely dominated by few players and mining centralization has become a biggest issue in blockchain space. Most popular Proof of Work algorithms such as SHA-256 (Bitcoin), Scrypt (Litecoin), X11 (Dash) are affected by ASIC miners. They reap the rewards and due to this regular miners with general purpose hardware like GPUs and CPUs were not able to participate in mining. Even in early 2018 the so called ASIC resistant algorithms such as Ethash (Ethereum), Equihash (Zcash) and CryptoNight has been affected by these ASIC companies. This not only have pushed casual miners out of the game but the control of significant amount of hashrate have also caused security threats to number of coins.
Today a large number of well established decentralized cryptocurrencies have totally failed to provide ASIC resistance. On the other hand there are few currencies that are actively working on combating centralization threats. One of them is Zcoin (XZC) which is now implementing a new ASIC resistant mining algorithm called MTP. The scheduled hard fork is said to occur on December 10th at 12:00 UTC. So here in this post we’ll cover all the important aspects about the upcoming Zcoin hard fork. Also along with that we’ll see what is MTP and how to mine MTP? But before that here is a quick note on Zcoin.
Zcoin is an open source, decentralized cryptocurrency that provides private financial transactions. It is the first coin to successfully implement Zerocoin protocol. The max coin supply is 21.4 million, the block time is 10 minutes and it also features Znodes (masternodes). Initially this coin used Lyra2 algorithm. However since Lyra2 was dominated by botnets and cloud CPU miners; Zcoin moved to Lyra2z. Lyra2Z balances CPU / GPU hashrates and is well known for its low power consumption and cool mining temperatures. However later even Lyra2z was affected by FPGAs. Anyways this algorithm is not actually ASIC resistant and it was only temporarily used by Zcoin.
One of the main goal of Zcoin is to allow CPU and GPU miners to participate in the security of the network. So shortly after the implementation of Lyra2z; the developers of Zcoin started working on a new algorithm that resists ASICs, FPGAs and provides decentralization and a fair mining solution. The algorithm is called MTP (Merkle Tree Proof). According the to team MTP was planned to launch on mid of 2017. But after several tests they found many weakness in this algorithm. So they had to continue the development of this algorithm with further enhancements. Now this algorithm has been strengthened, refined and after several audits and research it is finally ready to be implemented.
MTP – Merkle Tree Proof
Zcoin is the first cryptocurrency to implement MTP which stands for Merkle Tree Proof. MTP is a unique Proof of Work hashing algorithm designed to provide high security, high performance and to promote egalitarian mining. This algorithm was created by Alex Biryukov and Dmitry Khovratovich in 2016 to address the issue of mining centralization caused by ASICs. The same duo who also created Equihash Proof of Work algorithm. MTP is an improved version of Equihash and is a highly memory intensive hashing algorithm focused more towards CPU and GPU mining.
MTP is memory hard and unlike other memory intensive algorithms MTP requires a lots of RAM. Finding a solution is quite difficult as the amount of proofs is largely determined by the amount of memory an user possesses. Due to high memory requirements the cost to develop an specialized ASIC mining hardware becomes expensive and inefficient. Also this intensive use of RAM will help mitigate the risk of botnet attacks. MTP provides egalitarian mining opportunity for even people with little power which in turn creates high network decentralization, prevents double spending and other network attacks.
This MTP hardfork will take place on 10th of December, 12:00 UTC. If you are an user of Zcoin then before this hardfork you need to update your wallets. Also if you are currently mining Zcoin then remember that any blocks mined using the previous Lyra2z algorithm will not be accepted.
Zcoin hardfork network upgrade – What you need to know?
When it comes to hardfork the first thing that strikes most mind is “free coins”. First of all this is not a kind of fork where two coin diverges and you’ll be getting some free coins. Instead this hard fork is a planned network upgrade which will bring in two new features to the Zcoin protocol. 1. A new Proof of Work algorithm called MTP (Merkle Tree Proof) and 2. Change in block time. Zcoin initially used 10 minute block times (same as Bitcoin). But now to provide faster block confirmation time and to double the TPS they planned to reduce the block time to 5 minutes. More information about the Zcoin block time reduction can be found here: https://zcoin.io/reducing-zcoins-block-time/
Now as a user of Zcoin you need to perform one task before the hardfork occurs and that is updating software’s to the latest version. The latest version wallets are already compiled, the mining software is available and even the popular mining pools are ready for the hardfork.
Update your Zcoin wallet to v0.13.7.4
If you are new to Zcoin then do note that Zcoin core wallet is similar to Bitcoin core wallet. The interface and the overall setup process is same and is available for Windows, Linux as well as Mac.
Download Zcoin wallet v0.13.7.4: https://github.com/zcoinofficial/zcoin/releases/
If you are already using Zcoin then before updating your wallet to v0.13.7.4 make sure to backup your current wallet. For more information read this guide on how to safely update Bitcoin wallet.
Apart from core wallet if you hold funds on exchange or any other third party wallet then you don’t have to worry about this hardfork. All wallet providers and exchanges will likely upgrade to the latest version.
Similarly if you are hosting a Znode then it is essential that you upgrade your Znodes as well. Any version older than 0.13.7.4 will stop working and if you fail to upgrade then your node will stop receiving rewards.
For more information on how to upgrade your nodes please follow this Znodes upgrade guide: https://zcoin.io/znode-upgrade-guide/
How to mine MTP (Zcoin)?
In order to mine Zcoin you need to use miner that has support for the new MTP algorithm. Currently NVIDIA miner is released and CPU miner is also available. But AMD miner is still being worked on which you can expect in a week or two.
- NVIDIA: https://github.com/zcoinofficial/ccminer/releases
- CPU: https://github.com/zcoinofficial/cpuminer/releases
According to Zcoin; the best hardware to mine MTP is GPUs with atleast 4.5 GB of RAM. Also according to their test results a GTX 1080 TI hashed MTP @ 400 to 500 Kh/s and an Intel I7 4790k hashed around 5-6 KH/s per thread.
Now to start mining MTP all you need to do is configure the miner accordingly and run the miner. To configure we need two things. 1. Zcoin wallet address and 2. Mining pool address. You can even try solo mining but this is not recommended for small scale miners.
We recommend joining a pool and following are the list of mining pools that are ready to support the hard fork.
Mining pools for Zcoin MTP:
Now configuring the miner is very easy. All you need to do is create a batch file and input the configuration accordingly. If you are new then we suggest you to read this beginners guide to CCMiner. Below is the sample configuration for NVIDIA and CPU miner.
ccminer.exe -a mtp -o stratum+tcp://zcoin.mintpond.com:3000 -u aGScanT3mGgetkXFcT8g5SV4ze26SAyDSE -p password
cpuminer.exe -a mtp -o stratum+tcp://zcoin.mintpond.com:3000 -u aGScanT3mGgetkXFcT8g5SV4ze26SAyDSE -p x -t numberofthreads
Note: To CPU mine it is recommended that you have a computer with more than 8 GB of RAM as this miner uses around 6 GB of RAM. Also make sure to specify the number or CPU threads which if you don’t then the miner will use the maximum number of threads.
Now once you’ve configured, save it as .bat file and then run the file. That’s it! You are now mining Zcoin with MTP. If the shares are being accepted then everything is perfect. Happy Mining!
- MTP hardfork FAQ: https://zcoin.io/mtp-faq-all-you-need-to-know/
- Block Explorer: https://explorer.zcoin.io/
- Source code: https://github.com/zcoinofficial/zcoin/releases/