Qtum Mining: A Beginner's Guide
Last Updated: 30th October 2018
Qtum is a Singaporean based open-source project that provides a decentralized smart contract platform which developers can use to build novel decentralized applications. Similar to how Ethereum has its Ethereum Virtual Machine (EVM), Qtum has an x86 Virtual Machine which it purports will allow developers to create applications using mainstream programming languages such as: Python, C++ and Rust. It utilizes a proof-of-stake consensus mechanism called the Smart Stake Protocol. This staking protocol is based on PoS v3.0 and is thought to be a more efficient way for Qtum mining to take place as opposed to using proof-of-work.
Qtum Mining: Staking
In order to stake on the protocol, the Qtum mining process has two basic requirements:
- The operation of a Qtum full node
- Having QTUM in the staking wallet
Any amount of QTUM can be staked in order to contribute to the Qtum mining process, however, the larger amount of QTUM a miner stakes, the higher their chances of being selected to produce the next block. Miners can operate a full node using a virtual private server (VPS), their computer or even a Raspberry Pi.
Staking is dependent on a miner’s wallet weight compared to the network weight. Wallet weight is defined as the amount of QTUM a miner is staking, whereas network weight is defined as the total amount of QTUM currently being staked by all miners on the network. Therefore, the larger the proportion of the total network weight is comprised of a miner’s own wallet weight, the higher the chances of being selected for block production.
When sending QTUM to a wallet that a miner intends to use for staking, he/she must wait at least 501 block confirmations before the QTUMs can then be used for staking. With a block time of roughly 120 seconds, this translates to a waiting time of close to 17 hours.
Successfully being selected to produce a block results in a block reward of 4 QTUM. as well as receiving as transaction fees and gas. Once an amount of QTUM has been staked, a reward of 0.4 QTUM is paid out immediately, with the other 3.6 QTUM being paid after 500 block confirmations. At the 500 block confirmation mark, the miner will receive 0.4 QTUM every block for 9 blocks resulting in a total of 3.6 QTUM; in addition to the initial 0.4 QTUM paid out upon staking, this totals 4 QTUM.
Qtum mining works such that, in order for a miner to maximise their chances of producing a block, and thus receive a block reward for doing so, it is better to send multiple separate transactions to their staking wallet as opposed to a single transaction. For example, consider that Amy wants to take part in the Qtum mining process. She initiates a staking wallet to which she intends to send 10,000 QTUM. It is more efficient for Amy to send 10 transactions of 1,000 QTUM to her staking wallet as opposed to a single transaction of 10,000 QTUM. The reason for this is, the first transaction produces 10 UTXO inputs which can be used for staking, whereas the second transaction only produces one. UTXO inputs are used in the staking process, therefore, the more UTXO inputs a staking wallet has, the higher the chances that a UTXO will be selected to produce a block.
To conclude, Qtum utilizes a proof of stake consensus mechanism for its mining process. Any individual can take part in the mining process so long as they are operating a Qtum full node; there is currently no minimum amount of QTUM necessary in order take part in the staking process.
A block reward of 4 QTUM, along with transaction fees and gas are the current incentives for miners to stake their QTUM. The more QTUM a miner stakes, the higher the chances that they will be selected by the network to produce the next block.
The Qtum mining process is predicated on PoS v3.0. More information on the process can be found below:
Guides on setting up a Qtum full node on a VPS server and Raspberry Pi can also be found below: