Ok, so DASH devs, please explain me how the network knows that masternodes are actually doing their tasks and are not just idling while still receiving their masternode rewards.
This is an important qustion that needs an answer:
If masternodes can idle and are just being paid for a "ping", then masternodes who are doing the mixing and locking are more centralized then in a situation where they can't idle.
Services like masternodecloud.com could just host all masternodes for their customers and not performing the tasks they are supposed to do.
So please, I really want to know an answer to this.
Hi Dnaleor, that is a good question. Extracts from the whitepaper:
2.3 Trustless Quorums
With the addition of the Masternode network and the collateral requirements, we can use this secondary network to do highly sensitive tasks in a trustless way, where no single entity can control the outcome. By selecting N pseudo random Masternodes from the total pool to perform the same task, these nodes can act as an oracle, without having the whole network do the task.
For an example, implementation of a trustless quorum (see InstantX[9]), which uses quorums to approve transactions and lock the inputs or the proof-of-service implementation[10].
Another example use for trustless quorums can include utilizing the Masternode network as a decentralized oracle for financial markets, making secure decentralized contracts a possibility. As an example contract, if Apple Stock (AAPL) is over $300 on Dec 31, 2016 pay public key A, otherwise pay public key B.
2.4 Roles and Proof-Of-Service
Masternodes can provide any number of extra services to the network. As a proof-of-concept, our first implementation included Darksend and InstantX. By utilizing what we call proof-of-service, we can require that these nodes are online, responding and even at the correct block height.
Bad actors could also run Masternodes, but not provide any of the quality service that is required of the rest of the network. To reduce the possibility of people using the system to their advantage nodes must ping the rest of the network to ensure they remain active. This work is done by the Masternode network by selecting 2 quorums per block. Quorum A checks the service of Quorum B each block. Quorum A are the closest nodes to the current block 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)
All work done to check the network to prove that nodes are active is done by the Masternode network itself. Approximately 1% of the network will be checked each block. This results in the entire network being checked about six times per day. In order to keep this system trustless, we select nodes randomly via the Quorum system, then we also require a minimum of six violations in order to deactivate a node.
I think this explains pretty much how it works. Cheers.