• Forum has been upgraded, all links, images, etc are as they were. Please see Official Announcements for more information

Decentralizing Masternode Votes

Would you be interested in decentralizing your masternode vote?

  • Yes

    Votes: 2 40.0%
  • No

    Votes: 2 40.0%
  • Yes, with some modification to what you described (please post below)

    Votes: 1 20.0%

  • Total voters
Recently I was doing some back-of-the hand calculations on Reddit when I realized how expensive it is going to be for new masternodes to join the network in the near future. I am most drawn to Dash because of the masternode system. In fact, I feel that it offers an opportunity for decentralization that is superior to both Bitcoin and Ethereum. However, I think we will soon find that as the community grows, many new members will feel they are voiceless because of the high price of buying a vote i.e. masternode.

I consider masternodes to be protectors of the network, and if anything were to risk my stake in Dash I would certainly vote against it. The right to relay appropriate transactions is something I would never open up to the public. However, for many topics we vote on (such as in the budget proposal), I am mostly indifferent, or rather, I don't have the time to keep up with everything that is going on. I am pondering whether it would be best to allow the community (lesser stakeholders) to vote for me, in some way.

I was wondering if people would be interested in decentralizing their masternode vote in some kind of binding way. This would consist of 3 facets:
1) Masternodes opt-in for public vote on an issue. Any issue that a masternode chooses to open to the electorate becomes binding -- A masternode can't go back on the public's opinion.
2) Users express opinion on an issue to a masternode. They would send X amount of Dash to a masternode, where X represents the weight of their votes. Users would pay Y % in fee to a masternode, where Y is determined by the masternode. As a masternode, I would most likely set my fee to 0 for most issues, because I feel decentralization is the most valuable part of crypto. Users receive X minus fee back at the end of voting. This could be a simple locktime transaction so that a masternode could not run off with a user's funds.
3) A single masternode vote is split into a decimal based on the % of user's feedback

Note that in #2, each user effectively becomes a mini-masterNode-voter. They stake out their Dash for a portion of a vote, and can take it back any time. I can't see how this would go against the philosophy of Dash, other than that it provides a voice to lesser stakeholders.

Someone might suggest that this opens Dash up to a Sybil attack (on certain issues, not for relaying transactions). For example, if a masternode were to go offline, and use its 1000 dash to influence 10 other masternodes (by sending 100 Dash to each of them as a vote), it could effectively turn 1 vote into 10 votes. This is certainly true today. However, with significant adoption, I don't think this will happen. WIth significant adoption, I anticipate that the total amount of Dash cast by the public will be significantly greater than 1000 Dash, especially if stakeholders receive their Dash back at the end of voting.
Last edited by a moderator:
This topic came up in the past. Evan said dev team will consider implementing something similar, a fractional voting of sorts.

This is what Evan had to say:

"I do like the idea, but I'm scared of the amount of memory it would take due to the fact that all nodes must keep track of every vote on the system. When we have 3500 nodes voting, it's only a small amount of memory. However, when we include all of the users, perhaps millions eventually, we will need to store that in a much better way. Maybe Dashdrive could eventually play a role in storing the budget information, I think that would make what you're saying possible. So, it's a good idea, I'll keep it in mind. Maybe we can do something like this in the long term."
Last edited by a moderator:
Been thinking about this all day. I have an idea on how to make it without any risk to masternodes. Though I'm not a front-end developer so don't expect a GUI or anything fancy.

Like this post if you would want a PM when it's ready (ETA 2 weeks).