Welcome to the Dash Forum!

Please sign up to discuss the most innovative cryptocurrency!

Which masternodes voted and what exactly voted on various proposals (v2)

Discussion in 'Off Topic' started by demo, Apr 1, 2018.

  1. demo

    demo Well-known Member

    Joined:
    Apr 23, 2016
    Messages:
    3,116
    Likes Received:
    262
    Trophy Points:
    153
    Dash Address:
    XnpT2YQaYpyh7F9twM6EtDMn1TCDCEEgNX
    The previous thread was locked (without any reason given), so I am unable to inform there the dash community about the code changes and the conclusions of my investigation. So I opened this thread, in order to continue to inform.

    I did some slight changes into the code, and I take into account only the active proposals of the current budget cycle (and not the cached proposals of old budget cycles that randomly reside into the sentinel database, for reasons unknown to me). It was difficult for me to discover which these active proposals are (sentinel does not give a clear hint on that), so I temporarily rely on dashcentral api in order to list them. This is how the below file was created:


    You may notice now an improvement in voteHash (comparing to the previous report) . It is more difficult for the masternodes to obfuscate voteHash (they did this by voting irrelevant votes in the non active proposals that are cached in sentinel) simply because the non active proposals are not taken into account now in the calculation of voteHash!

    For example check FinTech-online-radio-R1 proposal again and compare it to the previous report, and you will discover that there is now a different set of voteHashes that may help you more in your task (which is to discover individual operators that are hidding behind the masternodes)

    Finally, as always, you may investigate interesting ways of executing queries at the results file [1]
     
    #1 demo, Apr 1, 2018
    Last edited: Apr 4, 2018
  2. tungfa

    tungfa Administrator
    Dash Core Team Foundation Member Masternode Owner/Operator Moderator

    Joined:
    Apr 9, 2014
    Messages:
    8,879
    Likes Received:
    6,706
    Trophy Points:
    1,283
    the last one was closed as u were taking to yourself again
    zero engagement from anybody else except you
    let’s see how this here goes - no engagement = talking to self = will close it again !
     
    • Agree Agree x 2
  3. demo

    demo Well-known Member

    Joined:
    Apr 23, 2016
    Messages:
    3,116
    Likes Received:
    262
    Trophy Points:
    153
    Dash Address:
    XnpT2YQaYpyh7F9twM6EtDMn1TCDCEEgNX
  4. tungfa

    tungfa Administrator
    Dash Core Team Foundation Member Masternode Owner/Operator Moderator

    Joined:
    Apr 9, 2014
    Messages:
    8,879
    Likes Received:
    6,706
    Trophy Points:
    1,283
    well
    u are the know troll around here
    he is not ;)
     
    • Winner Winner x 2
    • Agree Agree x 1
    • Funny Funny x 1
  5. demo

    demo Well-known Member

    Joined:
    Apr 23, 2016
    Messages:
    3,116
    Likes Received:
    262
    Trophy Points:
    153
    Dash Address:
    XnpT2YQaYpyh7F9twM6EtDMn1TCDCEEgNX
    An new version of the awesome sensei is available.
    https://github.com/jhodges10/sensei
    Use it to keep statistics and to discover which masternodes voted and what they voted on various proposals.
    The more people keep these statistcis, the better for the community it is!
    Let's unveil the habits and ethics of the individuals who hold the future of the community in their hands.
     
    #5 demo, Apr 10, 2018
    Last edited: Apr 10, 2018
  6. demo

    demo Well-known Member

    Joined:
    Apr 23, 2016
    Messages:
    3,116
    Likes Received:
    262
    Trophy Points:
    153
    Dash Address:
    XnpT2YQaYpyh7F9twM6EtDMn1TCDCEEgNX
  7. demo

    demo Well-known Member

    Joined:
    Apr 23, 2016
    Messages:
    3,116
    Likes Received:
    262
    Trophy Points:
    153
    Dash Address:
    XnpT2YQaYpyh7F9twM6EtDMn1TCDCEEgNX
    @demo4 , @demo5, @demo6 , @demo7, @demois8 were banned and all their messages were tottaly deleted. Among other messages, they also informed in this thread. Although my original @demo account still lags (after posting this message I have to wait 5037 seconds before posting another message !!!!!!!!!!) I ought to (re)inform the community about what the masternodes voted last month. So, against the will of the stupid, the spies, and the rest BOFH / BMFH/ BAFH , here you are:

    The Results of 03-05-2018 from dashd daemon. Delays a lot, press the wait javascript to load. You may also download Ziped Version

    rendez-vous next month, just before the budget finalization.


    [​IMG]
    https://archive.is/RJHxA
     
    #7 demo, May 12, 2018
    Last edited: May 12, 2018
  8. GrooveStreerforlife

    GrooveStreerforlife New Member

    Joined:
    May 28, 2018
    Messages:
    1
    Likes Received:
    1
    Trophy Points:
    1
    Damn, you talking to yourself again.
     
    • Like Like x 1
  9. xkcd

    xkcd Member

    Joined:
    Feb 19, 2017
    Messages:
    61
    Likes Received:
    40
    Trophy Points:
    58
    Dash Address:
    XrcWshofvVCpeXoZjTiYxwysV9w2szzjRr
    This thread and the previous is useful. It is important to know how centralised the distribution of DASH actually is and when I started looking into the matter I was surprised myself to see just how centralised it actually is. That said everyone has their price and will sell when it is met, we can hope this will re-distribute the funds more effectively in the future.

    Why is centralisation of funds important? I think it is important because a concentration of funds to a few entities mean they can control the project through votes and also the price. Anyone thinking of investing in DASH should know that there are many people with over 50K DASH in their control and could dump at any time. Though this isn't a major concern for me, because when I look at those holders, their buy in price is when DASH was $1-$10, if they didn't sell when DASH was over $1k I doubt this bear market will shake them.

    Couple of important corrections I need to make hence the purpose of my post.

    • The largest wallet referenced in the previous thread worth a cool 375K DASH split 125K into smaller addresses of about 5K DASH each and SOLD roughly 250K DASH starting in June 2017.
    • The 2nd largest wallet with 66K DASH split into 3 22K DASH addresses, he did not sell as you assumed in late December into the market top.
    • The 3rd largest wallet 55.5K DASH split his loot into smaller addresses of no more than 22K DASH in each.

    Whales are always a concern look at the effect the MtGOX whale had and continues to have on the BTC price and DASH is a derivate of BTC, so indeed his selling has contributed to the DASH bear market.

    I think the analysis being done in this thread is useful, though some MNOs will find it distasteful at least it is out in a public forum because you can be sure the 'institutional investors' are doing the same research in private and it is the reason WHY they are not buying any crypto.

    Oh, one last thing, I absolutely do not agree with any confiscation of funds or HF to do the same. These whales bought into DASH when it was an unknown, they took a risk, this project could have been a failure and it still can fail! Don't be salty because you missed out on <$1 DASH and if anyone is interested in buying some DASH I am sure the price will get even cheper, so get ready to buy and don't complain about MN being too expensive when the next bull market runs.
     
    #9 xkcd, May 30, 2018
    Last edited: May 30, 2018
  10. xkcd

    xkcd Member

    Joined:
    Feb 19, 2017
    Messages:
    61
    Likes Received:
    40
    Trophy Points:
    58
    Dash Address:
    XrcWshofvVCpeXoZjTiYxwysV9w2szzjRr
    Yes, the github is now 404, can someone from DASH comment on this? What grounds was the repo reported on? I didn't think it was malicious or 'bad' in anyway, it was just aggregating data from the network. Am I missing something here?
     
    • Useful Useful x 1
  11. flare

    flare Administrator
    Dash Core Team Moderator

    Joined:
    May 18, 2014
    Messages:
    2,304
    Likes Received:
    2,435
    Trophy Points:
    1,183
    Demo is constantly spamming 230 people with off-topic messages in the dashpay github repo. He has been asked to stop it or his user will get reported to the Github admin team for violating the Github terms of services.

    --> https://github.com/dashpay/dash/pull/2083#issuecomment-393590786

    As he did not stop his user got reported and Github took the appropriate actions.
     
    • Informative Informative x 3
    • Old Old x 1
  12. flare

    flare Administrator
    Dash Core Team Moderator

    Joined:
    May 18, 2014
    Messages:
    2,304
    Likes Received:
    2,435
    Trophy Points:
    1,183
    I did not delete what he said, all his comments were deleted due to his account being suspended. It is not my job to keep backups of his posts, here are some excerpts from my email spamfolder:

    These were posted to https://github.com/dashpay/dash/pull/2083 - which is a pull request and as such only the pull request should be discussed there - not his dashtalk ban.

    I repeat: these messages go out to 230 subscribers who are interested in Dash, and not arbitrary discussions about forum bans. If you feel that this is necessary to help your case, I'd suggest to read into "Netiquettes" and how to participate in online communities.
     
    • Agree Agree x 1
  13. xkcd

    xkcd Member

    Joined:
    Feb 19, 2017
    Messages:
    61
    Likes Received:
    40
    Trophy Points:
    58
    Dash Address:
    XrcWshofvVCpeXoZjTiYxwysV9w2szzjRr
    Ah OK, thanks @flare I do agree Demo's netiquette does leave a lot to be desired, hopefully he will put forward his thoughts in a more respectful and constructive manner next time and stay on topic. Also, I do think DIPs 2/3/4 are an excellent improvement to DASH, particularly for the SPV wallets. I always wondered why I couldn't IS from my Andriod wallet, now I know it's coming soon. I also agree, an IP address is public info, you can’t hide it and still provide a service, if MNOs are concerned about this they are probably in the wrong business. I expcet TOR is disabled for the same reason IPv6 is - to avoid centralisation.
     
  14. flare

    flare Administrator
    Dash Core Team Moderator

    Joined:
    May 18, 2014
    Messages:
    2,304
    Likes Received:
    2,435
    Trophy Points:
    1,183
    Both are not disabled because of centralisation but for technical reasons: We don't have a working routing of messages between the different connected nodes as of yet. So a IPv4 client is not able to connect to a Tor/IPv6 masternode. And as this live connection is crucial for the mixing we have disabled masternode list entries other than IPv4 to improve mixing experience.
     
  15. xkcd

    xkcd Member

    Joined:
    Feb 19, 2017
    Messages:
    61
    Likes Received:
    40
    Trophy Points:
    58
    Dash Address:
    XrcWshofvVCpeXoZjTiYxwysV9w2szzjRr
    That's interesting, so perhaps in the future IPv6 and maybe even TOR connections will be allowed which will greatly improve MN privacy.
     
  16. flare

    flare Administrator
    Dash Core Team Moderator

    Joined:
    May 18, 2014
    Messages:
    2,304
    Likes Received:
    2,435
    Trophy Points:
    1,183
    Yes, as soon as someone finds time to add a routing layer for the masternode network - or keep a node list for each supported network stack. Due to Evolution this is not on our top priorities list though, so any contributions are welcome.
     
  17. demo

    demo Well-known Member

    Joined:
    Apr 23, 2016
    Messages:
    3,116
    Likes Received:
    262
    Trophy Points:
    153
    Dash Address:
    XnpT2YQaYpyh7F9twM6EtDMn1TCDCEEgNX
    Who decides the priorities? It is not a priority for you, but it is for me.
    Why dont you add this as a proposal in the dash budget system? (5 dash proposal fee)
    Or maybe in dashboost? (1 dash proposal fee)
    I have only 1,5 dash, and I cannot spend 1 dash in order to add it as a proposal in dashboost. Because if I spend 1 dash, I will have only 0.5 dash and I will lose my voting rights in dashboost. And this is something I do not want. My vote is my soul and I dont want to lose it.

    "To him that overcometh will I give to eat of the hidden manna, and will give him a white vote, and in the vote a new name written, which no man knoweth saving he that receiveth it."
     
    #17 demo, Jun 26, 2018
    Last edited: Jun 26, 2018
  18. Pasta

    Pasta Official Dash Dev
    Core Developer

    Joined:
    Apr 29, 2017
    Messages:
    79
    Likes Received:
    62
    Trophy Points:
    58
    @demo, Dash is open source. If you or anyone finds it such a priority you can either implement it yourself or pay someone to implement it, post it as a pull request, and see what the feedback is and if it gets merged.
     
    • Like Like x 1
  19. demo

    demo Well-known Member

    Joined:
    Apr 23, 2016
    Messages:
    3,116
    Likes Received:
    262
    Trophy Points:
    153
    Dash Address:
    XnpT2YQaYpyh7F9twM6EtDMn1TCDCEEgNX
    The agents entirely deleted my mnowatch repository from the github.com (which is now a microsoft dominated site).
    So I am posting here my script, for anyone who is interested in revealing the way the mnos vote.
    here you are
    Code:
    #!/bin/bash
    curl -s https://www.dashcentral.org/api/v1/budget > centralproposals_json
    cat centralproposals_json | awk -F"\"name" '{for(i=2;i<=NF;i++){{print $i}}}'|cut -f2 -d":"|cut -f1 -d","|sed -e s/\"//g > current_props
    echo "" > expired_props
    
    ./dash-cli -datadir=/home/src/.dashcore-0.12.2.3 masternodelist addr > masternodelist_addr
    ./dash-cli -datadir=/home/src/.dashcore-0.12.2.3 masternodelist payee > masternodelist_payee
    ./dash-cli -datadir=/home/src/.dashcore-0.12.2.3 gobject list > gobject_list
    cat gobject_list |grep "{"|grep -v "DataString"|cut -f2 -d"\""|grep -v "{" > proposals
    for fn in `cat proposals`; do
    ./dash-cli -datadir=/home/src/.dashcore-0.12.2.3 gobject getcurrentvotes $fn > "gobject_getcurrentvotes_"$fn
    numi=`grep -n "\"Hash\": \""$fn gobject_list|tail -1|cut -f1 -d":"`
    numi=`expr $numi - 1`
    numip=$numi"p"
    prop=`sed -n $numip gobject_list|cut -f4 -d":"|cut -f2 -d"\""|cut -f1 -d"\\\"`
    echo $prop
    
    greprop=`grep $prop current_props |wc -c`
    echo $greprop
    if [ $greprop -gt 1 ]
    then
    
    propc=`echo $prop|wc -c`
    if [ $propc -gt 1 -a $propc -lt 200 ]
    then
    
    cat "gobject_getcurrentvotes_"$fn|grep ABSTAIN:FUNDING|cut -f3 -d"("|cut -f1 -d")"|sed -e s/", "/-/g > "ABSTAIN_"$prop
    touch "ABSTAIN_IP_"$prop
    for gn in `cat "ABSTAIN_"$prop`; do
    addr1=`cat masternodelist_addr|grep $gn\"|cut -f2 -d":"|cut -f2 -d"\""`
    echo $addr1 >> "ABSTAIN_IP_"$prop
    done
    mv "ABSTAIN_IP_"$prop "TMP_ABSTAIN_IP_"$prop
    sort "TMP_ABSTAIN_IP_"$prop > "ABSTAIN_IP_"$prop
    rm "TMP_ABSTAIN_IP_"$prop
    echo "ABS:"`wc -l "ABSTAIN_IP_"$prop|cut -f1 -d" "`
    cat "gobject_getcurrentvotes_"$fn|grep NO:FUNDING|cut -f3 -d"("|cut -f1 -d")"|sed -e s/", "/-/g > "NO_"$prop
    touch "NO_IP_"$prop
    for gn in `cat "NO_"$prop`; do
    addr1=`cat masternodelist_addr|grep $gn\"|cut -f2 -d":"|cut -f2 -d"\""`
    echo $addr1 >> "NO_IP_"$prop
    done
    mv "NO_IP_"$prop "TMP_NO_IP_"$prop
    sort "TMP_NO_IP_"$prop > "NO_IP_"$prop
    rm "TMP_NO_IP_"$prop
    echo "NO:"`wc -l "NO_IP_"$prop|cut -f1 -d" "`
    cat "gobject_getcurrentvotes_"$fn|grep YES:FUNDING|cut -f3 -d"("|cut -f1 -d")"|sed -e s/", "/-/g > "YES_"$prop
    touch "YES_IP_"$prop
    for gn in `cat "YES_"$prop`; do
    addr1=`cat masternodelist_addr|grep $gn\"|cut -f2 -d":"|cut -f2 -d"\""`
    echo $addr1 >> "YES_IP_"$prop
    done
    mv "YES_IP_"$prop "TMP_YES_IP_"$prop
    sort "TMP_YES_IP_"$prop > "YES_IP_"$prop
    rm "TMP_YES_IP_"$prop
    echo "YES:"`wc -l "YES_IP_"$prop|cut -f1 -d" "`
    
    
    else
    echo "PROPOSAL <"$prop"> not accepted"
    fi
    
    else
    echo "PROPOSAL <"$prop"> is expired"
    echo "PROPOSAL <"$prop"> is expired" >> expired_props
    fi
    
    done
    echo "Please wait"
    cat masternodelist_addr|sed -e s/\"//g|sed -e s/\ //g|grep -v "}"|grep -v "{"|sed -e s/,//g > masternodelist_hash_addr_clear
    cat masternodelist_addr|cut -f2 -d":"|cut -f2 -d"\""|grep -v "{"|grep -v "}" > masternodelist_addr_only
    sort masternodelist_addr_only > masternodelist_addr_only_sorted
    
    mkdir upload
    cp masternodelist_addr_only_sorted ./upload
    cp masternodelist_hash_addr_clear ./upload
    
    for fn in `ls *_IP_*`; do
    if [ -s $fn ]
    then
    cp $fn ./upload
    fi
    done
    cd upload
    
    dateis=`date +"%d-%m-%Y"`
    filenameis="../the_results_dashd_"$dateis".html"
    cat ../jsall2.html|sed -e s/"thedateis"/"$dateis"/g > $filenameis
    
    
    for gn in `cat masternodelist_hash_addr_clear`; do
    MNhashis=`echo $gn|cut -f1 -d":"`
    ipis=`echo $gn|cut -f2 -d":"`
    
    yesvotes=`grep -l ^$ipis$ *YES_IP_*|cut -f3- -d"_"`
    novotes=`grep -l ^$ipis$ *NO_IP_*|cut -f3- -d"_"`
    absvotes=`grep -l ^$ipis$ *ABSTAIN_IP_*|cut -f3- -d"_"`
    allvotes=$yesvotes" "$novotes" "$absvotes
    hashis=`bc <<<ibase=16\;$(sha1sum <<<$allvotes|tr a-z A-Z)0`
    echo "<tr><td class=\"container1\"><div><a target=\"_blank\" href=https://ipinfo.io/"$ipis">"$ipis"</a> "$MNhashis"</div></td><td class=\"container2\"><div>"$yesvotes"</div></td><td class=\"container3\"><div>"$novotes"</div></td><td class=\"container4\"><div>"$absvotes"</div></td><td class=\"container5\"><div>"$hashis"</div></td></tr>" >> $filenameis
    echo -n "."
    done
    
    echo "
    </tbody>
    </table>
    </body>
    </html>
    " >> $filenameis
    
    cd ..
    filetimeis="upload_"`date +"%m-%d-%Y"`".zip"
    zip -r $filetimeis ./upload
    
    filenameiszip="../the_results_dashd_"$dateis".html.zip"
    zip $filenameiszip "the_results_dashd_"$dateis".html"
    
    distrfileis="distr_"$dateis".txt"
    
    echo "The first operator includes all people who abstain. All the rest are identified by the way they vote." > $distrfileis
    cat the_results_dashd_*.html| cut -f22 -d"<"|cut -f2 -d">"|grep -v [a-z]|grep -v [A-Z]| grep ^[0-9]|grep -v "-"|sort|uniq -c|sed -e s/'^   '/000/g|sed -s s/'000   '/000000/g|sed -e s/'000  '/00000/g|sed -s s/'000 '/0000/g|sort -r|cut -f1 -d" "|uniq -c|sed -e s/" 0"/" operator(s) control(s) "/g|sed -e s/$/" masternode(s)"/g >> $distrfileis
    
    echo "END! "
    
    I ran the script in the current budget cycle, and here you are some statistics


    Distribution of MNOs revealed at 30-6-2018
    The first operator includes all people who abstain. All the rest are identified by the way they vote.
    1 operator(s) control(s) 002456 masternode(s)
    1 operator(s) control(s) 000111 masternode(s)
    1 operator(s) control(s) 000073 masternode(s)
    1 operator(s) control(s) 000072 masternode(s)
    1 operator(s) control(s) 000062 masternode(s)
    1 operator(s) control(s) 000049 masternode(s)
    1 operator(s) control(s) 000047 masternode(s)
    1 operator(s) control(s) 000046 masternode(s)
    1 operator(s) control(s) 000045 masternode(s)
    1 operator(s) control(s) 000044 masternode(s)
    1 operator(s) control(s) 000042 masternode(s)
    1 operator(s) control(s) 000041 masternode(s)
    1 operator(s) control(s) 000039 masternode(s)
    1 operator(s) control(s) 000037 masternode(s)
    1 operator(s) control(s) 000032 masternode(s)
    1 operator(s) control(s) 000031 masternode(s)
    1 operator(s) control(s) 000030 masternode(s)
    1 operator(s) control(s) 000028 masternode(s)
    2 operator(s) control(s) 000025 masternode(s)
    1 operator(s) control(s) 000021 masternode(s)
    2 operator(s) control(s) 000020 masternode(s)
    1 operator(s) control(s) 000019 masternode(s)
    3 operator(s) control(s) 000017 masternode(s)
    3 operator(s) control(s) 000016 masternode(s)
    1 operator(s) control(s) 000015 masternode(s)
    2 operator(s) control(s) 000014 masternode(s)
    2 operator(s) control(s) 000013 masternode(s)
    1 operator(s) control(s) 000012 masternode(s)
    5 operator(s) control(s) 000011 masternode(s)
    8 operator(s) control(s) 000010 masternode(s)
    6 operator(s) control(s) 000009 masternode(s)
    4 operator(s) control(s) 000008 masternode(s)
    11 operator(s) control(s) 000007 masternode(s)
    8 operator(s) control(s) 000006 masternode(s)
    24 operator(s) control(s) 000005 masternode(s)
    23 operator(s) control(s) 000004 masternode(s)
    43 operator(s) control(s) 000003 masternode(s)
    105 operator(s) control(s) 000002 masternode(s)
    304 operator(s) control(s) 000001 masternode(s)

     
    #19 demo, Jun 30, 2018
    Last edited: Jul 1, 2018
    • Like Like x 2
  20. xkcd

    xkcd Member

    Joined:
    Feb 19, 2017
    Messages:
    61
    Likes Received:
    40
    Trophy Points:
    58
    Dash Address:
    XrcWshofvVCpeXoZjTiYxwysV9w2szzjRr

    The code snippet posted by @demo doesn't work, it is missing a file ../jsall2.html and is in desperate need of re-factoring. I will have closer look and see if I can't do something with it...
     
  21. demo

    demo Well-known Member

    Joined:
    Apr 23, 2016
    Messages:
    3,116
    Likes Received:
    262
    Trophy Points:
    153
    Dash Address:
    XnpT2YQaYpyh7F9twM6EtDMn1TCDCEEgNX
    You are right. I will search for the jsall2.html in my computer, and send it to you.
     
    #21 demo, Jul 28, 2018
    Last edited: Jul 28, 2018
  22. demo

    demo Well-known Member

    Joined:
    Apr 23, 2016
    Messages:
    3,116
    Likes Received:
    262
    Trophy Points:
    153
    Dash Address:
    XnpT2YQaYpyh7F9twM6EtDMn1TCDCEEgNX
    Ok.. I upload the file. Unzip it, and put it in the same directory with the script and dash-cli. Follow the instructions in the previous thread that was locked.

    You should also substitute all the lines in the script ...
    ./dash-cli -datadir=/home/src/.dashcore-0.12.2.3
    ...with the appropriate datadir.

    Report here if something went wrong.

    I encourage everyone to run the script, because for decentralization reasons, the results should be cross checked.
     

    Attached Files:

    #22 demo, Jul 28, 2018
    Last edited: Jul 28, 2018
  23. xkcd

    xkcd Member

    Joined:
    Feb 19, 2017
    Messages:
    61
    Likes Received:
    40
    Trophy Points:
    58
    Dash Address:
    XrcWshofvVCpeXoZjTiYxwysV9w2szzjRr
    Thanks for attaching that zip, the script now runs to completion, though when I view the file called the_results_dashd_29-07-2018.html it does not show the proposals just the masternodes and the votehash. Regardless, I have written my own script to export the voting data and loaded to Oracle for number crunching, initial results look OK, but I need to play around with it to find the MNs that voted in exactly the same manner.
     
  24. demo

    demo Well-known Member

    Joined:
    Apr 23, 2016
    Messages:
    3,116
    Likes Received:
    262
    Trophy Points:
    153
    Dash Address:
    XnpT2YQaYpyh7F9twM6EtDMn1TCDCEEgNX
    You should have dash-qt / dash-d up and running and synchronized, in order for the script to run properly. The script does not depend only on dashd, it also receives some information from dashcentral .org (which is the active proposals, because I could not get this info from sentinel).

    Finally the script produces some logs in the standard output. You may post them here, if you want me to debug them.

    I will run the script in my system (Dash Core version v0.12.2.3 ), check whether it works properly, and post the results here. I hope the results to be identical in your system and in mine, otherwise something very strange may happen.
     
    #24 demo, Jul 29, 2018
    Last edited: Jul 29, 2018
  25. demo

    demo Well-known Member

    Joined:
    Apr 23, 2016
    Messages:
    3,116
    Likes Received:
    262
    Trophy Points:
    153
    Dash Address:
    XnpT2YQaYpyh7F9twM6EtDMn1TCDCEEgNX
    It works for me.

    Distribution of MNOs revealed at 29-7-2018
    The first operator includes all people who abstain. All the rest are identified by the way they vote.
    1 operator(s) control(s) 002525 masternode(s)
    1 operator(s) control(s) 000118 masternode(s)
    1 operator(s) control(s) 000114 masternode(s)
    1 operator(s) control(s) 000081 masternode(s)
    1 operator(s) control(s) 000075 masternode(s)
    1 operator(s) control(s) 000055 masternode(s)
    1 operator(s) control(s) 000053 masternode(s)
    2 operator(s) control(s) 000046 masternode(s)
    2 operator(s) control(s) 000045 masternode(s)
    1 operator(s) control(s) 000044 masternode(s)
    1 operator(s) control(s) 000042 masternode(s)
    1 operator(s) control(s) 000040 masternode(s)
    1 operator(s) control(s) 000034 masternode(s)
    1 operator(s) control(s) 000030 masternode(s)
    3 operator(s) control(s) 000025 masternode(s)
    1 operator(s) control(s) 000020 masternode(s)
    3 operator(s) control(s) 000018 masternode(s)
    3 operator(s) control(s) 000017 masternode(s)
    3 operator(s) control(s) 000016 masternode(s)
    3 operator(s) control(s) 000015 masternode(s)
    2 operator(s) control(s) 000014 masternode(s)
    4 operator(s) control(s) 000012 masternode(s)
    7 operator(s) control(s) 000011 masternode(s)
    5 operator(s) control(s) 000010 masternode(s)
    6 operator(s) control(s) 000009 masternode(s)
    9 operator(s) control(s) 000008 masternode(s)
    13 operator(s) control(s) 000007 masternode(s)
    8 operator(s) control(s) 000006 masternode(s)
    20 operator(s) control(s) 000005 masternode(s)
    27 operator(s) control(s) 000004 masternode(s)
    37 operator(s) control(s) 000003 masternode(s)
    66 operator(s) control(s) 000002 masternode(s)
    248 operator(s) control(s) 000001 masternode(s)

    Have a look at the below attached file (best viewed with firefox browser). If there is an MNO that didnt vote the way the below file reveals, please say it. Because in that case something very serious (in terms of sychnronization of the dash network) may happen.
     

    Attached Files:

    #25 demo, Jul 29, 2018
    Last edited: Jul 29, 2018
  26. demo

    demo Well-known Member

    Joined:
    Apr 23, 2016
    Messages:
    3,116
    Likes Received:
    262
    Trophy Points:
    153
    Dash Address:
    XnpT2YQaYpyh7F9twM6EtDMn1TCDCEEgNX
    Is the one who controlled 111 Masternodes at 30-6-2018, the same who controls 118 Masternodes now? This will be the subject of my next script (if the agents allow me, of course :p;)). A hash in his IP addresses, and some other similarities may help me in the investigation. Although my mnowatch site has been shut down, I still have in my computer the full record of all the votes since I started taking these statistics.

     
    #26 demo, Jul 29, 2018
    Last edited: Jul 29, 2018
  27. xkcd

    xkcd Member

    Joined:
    Feb 19, 2017
    Messages:
    61
    Likes Received:
    40
    Trophy Points:
    58
    Dash Address:
    XrcWshofvVCpeXoZjTiYxwysV9w2szzjRr
    Thanks for posting, my output was corrupted as mentioned earlier, happy to discuss further on Discord, on in PM.
    I am very interested in the distribution of DASH amongst holders in the network, I was hoping to find that the bear market would help redistrubute the coin to new players, but it may be having a centralising effect instead.
    • Looking at June and July, we had 499 individuals that hold 5 MNs or less, in July that number is 406. Meaning those that had 5 MNs or less 93 people have sold up and left.
    • Looking at the top now, number of operators holding 50 MN or more in June are 4 for a total of 318 MNs between them, in July, we have 5 operators with 496 MNs between them.
    • June unqiue MNOs are 576, in July number of unique operatos are 483.
    The above three observations over the past month tell me we are further centralising the currency and the poor price peformance reflects that too.
     
  28. InhumanPerfection

    Joined:
    Apr 9, 2018
    Messages:
    43
    Likes Received:
    19
    Trophy Points:
    48
    It's worth noting that we have 2525 MN's without votes it can be any number of unique MNOs from 1 to 2525 - you can't say definitely based only on voting.
    Also if any MNO moves its collateral(s) - voting history will be erased for corresponding MNs and these MNs will be added to these 2525 without votes - so again: you can't say is MN sold or just moved (basing just on voting pattern).
     
    • Like Like x 1
    • Informative Informative x 1
  29. demo

    demo Well-known Member

    Joined:
    Apr 23, 2016
    Messages:
    3,116
    Likes Received:
    262
    Trophy Points:
    153
    Dash Address:
    XnpT2YQaYpyh7F9twM6EtDMn1TCDCEEgNX
    We have the IPs of these 2525 inactive MNOs and a voting record that last 8 months (preserved in the backup of the mnowatch site I keep). So we know whether those 2525 are unique MNOs( or not) in case some of them voted at least once (if we run the appropriate script on the recorded voting data). For those who didnt vote at least once the past 8 months, they are very probably controlled by centralised authorities who keep them inactive and ready to vote in case the dash community decides against their interests.

    Its in the benefit of all the MNOs that hold 1-5 masternodes to be aware of this data. Unfortunately nobody funds a project like that.Not even the cost of 2 dash for presenting these data online.:rolleyes:
     
    #29 demo, Aug 6, 2018
    Last edited: Aug 6, 2018
    • Like Like x 1
  30. xkcd

    xkcd Member

    Joined:
    Feb 19, 2017
    Messages:
    61
    Likes Received:
    40
    Trophy Points:
    58
    Dash Address:
    XrcWshofvVCpeXoZjTiYxwysV9w2szzjRr
    Well it looks like the Demo user has got himself banned, so I will be posting the voting data for this month. I have also taken some time to re-factor slightly his code and I will post it here for you so that others can run it too. When I ran it i noticed that i needed to install zip and bc. if your system is missing these programs you can get them the usual `sudo apt install zip bc` way no issues. Also, the script assumes you have a working dash-cli in your PATH, so prior to running be sure to add it to your PATH for most people that will look something like `PATH=$PATH:$HOME/.dashcore;export PATH` check by running `which dash-cli` should not give an error.

    The file the_results_dashd_30-08-2018.html will take a time to render after you apply a filter or sort on a column, be patient and if prompted allow the javascript to continue running.


    Distribution of MNOs revealed at 30-08-2018
    The first operator includes all people who did not vote. All the rest are group by the way they uniquely voted.
    1 operator(s) control(s) 002514 masternode(s)
    1 operator(s) control(s) 000114 masternode(s)
    1 operator(s) control(s) 000091 masternode(s)
    1 operator(s) control(s) 000081 masternode(s)
    1 operator(s) control(s) 000076 masternode(s)
    2 operator(s) control(s) 000070 masternode(s)
    1 operator(s) control(s) 000056 masternode(s)
    1 operator(s) control(s) 000049 masternode(s)
    1 operator(s) control(s) 000047 masternode(s)
    2 operator(s) control(s) 000045 masternode(s)
    1 operator(s) control(s) 000037 masternode(s)
    1 operator(s) control(s) 000035 masternode(s)
    1 operator(s) control(s) 000032 masternode(s)
    2 operator(s) control(s) 000030 masternode(s)
    1 operator(s) control(s) 000029 masternode(s)
    2 operator(s) control(s) 000028 masternode(s)
    2 operator(s) control(s) 000027 masternode(s)
    1 operator(s) control(s) 000025 masternode(s)
    3 operator(s) control(s) 000023 masternode(s)
    2 operator(s) control(s) 000020 masternode(s)
    1 operator(s) control(s) 000019 masternode(s)
    2 operator(s) control(s) 000018 masternode(s)
    2 operator(s) control(s) 000017 masternode(s)
    2 operator(s) control(s) 000016 masternode(s)
    2 operator(s) control(s) 000015 masternode(s)
    3 operator(s) control(s) 000014 masternode(s)
    2 operator(s) control(s) 000013 masternode(s)
    4 operator(s) control(s) 000012 masternode(s)
    6 operator(s) control(s) 000011 masternode(s)
    8 operator(s) control(s) 000010 masternode(s)
    5 operator(s) control(s) 000009 masternode(s)
    7 operator(s) control(s) 000008 masternode(s)
    11 operator(s) control(s) 000007 masternode(s)
    9 operator(s) control(s) 000006 masternode(s)
    23 operator(s) control(s) 000005 masternode(s)
    20 operator(s) control(s) 000004 masternode(s)
    27 operator(s) control(s) 000003 masternode(s)
    62 operator(s) control(s) 000002 masternode(s)
    202 operator(s) control(s) 000001 masternode(s)
     

    Attached Files:

    #30 xkcd, Aug 29, 2018
    Last edited: Aug 30, 2018

Share This Page