Masternode

This page contains changes which are not marked for translation.


Masternode

Secure public and private transactions

Masternodes validate all public transactions within about 4 seconds by communicating each transaction across all nodes on the network to prevent double spending (Duffield, Schinzel, and Gutierrez, 2014). When private transactions are initiated, masternodes also perform the work necessary to make the transactions hard to trace. The masternode network will be able to perform additional functions as new developments are commissioned and the bounties executed.

Masternode specifications

  • Coins required: 20,000 (minimum and maximum)
  • Reward: 50% of the block reward + all fees for transactions contained in the block
  • Peer validated network uptime

Private transactions

Masternodes facilitate private transactions through a decentralized mixing service that takes advantage of the perfect fungibility of the currency. Any unit of ION has the equivalent value to any other unit of identical size, regardless of the transaction history of any particular unit. Masternodes use this property to automatically break up private transactions into multiple identical and indistinguishable transactions, both adding complexity to the original transaction and obfuscating the provenance of any given unit.

Ionomy masternodes input output.png

Diagram 2: In this example of a block of transactions, three users submit funds in various set denominations. *Users pay themselves back in the form of new outputs, which are randomly ordered. *

      • Each color represents one user's transactions

Private ION transactions are initiated through a local wallet and received by the masternode subnetwork. Transactions are processed in groups of three. Inputs of common denominations are required – for example 0.1 ION, 1 ION, 10 ION, or 100 ION.

Upon application to the mixing pool, a receiving masternode propagates the transaction set throughout the network. If only one or two private transactions are pending, they are held in queue until three are in the mixing pool. Fees are extracted from the individual transactions, then charged collectively to further obfuscate the transaction history.

Private send is limited to 20,000 ION, thus requiring multiple sessions to thoroughly delink associated transaction history from significant amounts of money. Since each session is limited to three clients, an observer has a one in three chance of being able to follow a transaction.

Mixed transactions are chained together through multiple masternodes, making traceability exponentially more difficult with each additional chained transaction. Users have some control over the degree of mixing. More mixing takes more time, but more thoroughly obfuscates inputs. The fee for these transactions grows with each degree, as the process is more labor intensive for the masternodes (Duffield and Diaz, 2015).

This method of mixing is a trustless, integrated, on-chain, on-network service that is efficient, effective, and safe. It is initiated directly within a local wallet and completed without leaving the ION network. While some details of private transactions are obscured, the system nevertheless retains verifiable integrity of spent coins on the ION blockchain.

What is the incentive to run a masternode?

Ionomy masternodes incentive.png

Diagram 3: Average daily reward ≃ (# of blocks per day * block reward * 50%) / (# of *masternodes*)

Masternodes receive fixed rewards (50% of the block reward) which are probabilistically distributed among peer validated masternodes. Masternodes recursively scan peer node performance, and only high performance nodes with sustained, stable, high-speed internet connections are eligible for rewards. In addition to receiving 50% of the block reward, a masternode receives all fees for public transactions completed in a block and for all private transaction pools initiated in the block. These incentives promote continuous connectivity to maintain a high performance network.

Ionomy masternodes activate.png

Diagram 4: Procedure to activate a masternode.

Masternode network performance maintenance

In theory, malicious actors could also run ION masternodes, but not provide any of the quality service that is required of the rest of the network. To reduce this possibility and discourage people from using the system to their advantage, all nodes must regularly ping the rest of the ION masternode network to ensure they remain active. This work is done through a selection of 2 quorums per block. At every new block hash, Quorum A checks the service of Quorum B. Quorum A are the closest nodes to the current hash, while Quorum B are the furthest nodes from said hash.

Masternode A (1) checks Masternode B (rank 2300)

Masternode A (2) checks Masternode B (rank 2299)

Masternode A (3) checks Masternode B (rank 2298)

The masternode network is self-monitoring. Approximately 1% of the network will be checked for each block added to the blockchain. This results in the entire masternode network being checked approximately six times per day. To maintain this trustless system, nodes are selected randomly via the quorum system; the network also requires a minimum of six violations in order to deactivate a node (Duffield and Diaz, 2015).

The above content has been copied from the white paper and is subject to change, for the latest version please visit: https://github.com/ionomy/ion/wiki/ION-Technical-Whitepaper

Are you looking for the guide on How To Setup Ionomy Masternodes?