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

Which Masternode model should we implement?

I'll see if I can get a masternode running under tor/i2p to test them out.

No idea how much work that would be, but running a testnet with a few hundred masternodes under tor (or i2p) should give us a pretty good idea of how it affects performance. And wrt public relations and the image of Darkcoin, it should be emphasized that the reason for using tor is to make the network more resilient against attacks / hacking, and not because it helps to hide something illegal.
 
No idea how much work that would be, but running a testnet with a few hundred masternodes under tor (or i2p) should give us a pretty good idea of how it affects performance. And wrt to public relations and the image of Darkcoin, it should be emphasized that the reason for using tor is to make the network more resilient against attacks / hacking, and not because it helps to hide something illegal.

Actually not that much work.

Basically what he needs to do is write a SOCKS5 Client that will connect to tor, provide the destination(onion address in case of Tor):port etc and then exchange traffic as he normally would.

On Masternode machine, he(including every masternode operator) adds the following lines in torrc file and starts tor.
Code:
HiddenServiceDir /home/masternode_hs
HiddenServicePort master_node_port 127.0.0.1:master_node_port

That's it. Then the masternode should connect to the network(idk how this is done) and transmit its onion address. He would need to allow submitting of only one address per DRK address to avoid duplicates.

With I2P its different, because I2P does not naturally support SOCKS. I hope masternodes don't use UDP and implementation of Tor will be as easy as I explained above. If they use UDP then he must use I2P.

If he was to go on forum.i2p (you need I2P to access it) and simply ask for help I am sure the I2P community will be more than welcoming to help him implement it because it is also a huge gain to the I2P network in terms of publicity, speed, anonymity and latency decrease.

Edit: FYI Tor doesn't add any additional security on top of your server except anonymity and DDOS protection. It cannot protect you from SQL Injection and other sorts of software vulnerability.

Edit2: LOL. I just realized that since he is talking about outbound-only masternodes that means masternodes run through TCP and implementation is as easy as I explained above.
 
Last edited by a moderator:
Actually not that much work.

Basically what he needs to do is write a SOCKS5 Client that will connect to tor, provide the destination(onion address in case of Tor):port etc and then exchange traffic as he normally would.

On Masternode machine, he adds the following lines in torrc file and starts tor.
Code:
HiddenServiceDir /home/masternode_hs
HiddenServicePort master_node_port 127.0.0.1:master_node_port

That's it.

With I2P its different, because I2P does not naturally support SOCKS. I hope masternodes don't use UDP and implementation of Tor will be as easy as I explained above. If they use UDP then he must use I2P.

If he was to go on forum.i2p (you need I2P to access it) and simply ask for help I am sure the I2P community will be more than welcoming to help him implement it because it is also a huge gain to the I2P network in terms of publicity, speed, anonymity and latency decrease.

Edit: FYI Tor doesn't add any additional security on top of your server except anonymity and DDOS protection. It cannot protect you from SQL Injection and other sorts of software vulnerability.
Is it similar to running an IRC client through TOR like what we can do on Freenode network?
 
Is it similar to running an IRC client through TOR like what we can do on Freenode network?

The part how masternode connects to other masternodes yes. The other part is exactly how people setup IRC servers(or drug markets) under Tor to be accessible only through hidden service.
 
It seems like a consensus is forming around 1. IMO, this is acceptable because compromising the speed/robustness of the MN network for half-baked anonymity makes little sense.

However, my question relates to non-MN clients... Evan, does going with option 1 preclude normal clients from having their IPs hidden with some protocol level obfuscation tech? From the standpoint of Darkcoin's anonymity on the whole, hiding normal users IPs would make a big difference. I know users can use Tor with Darkcoin, but I really feel like something protocol level would be better (and definitely more convenient).

So in short, is it possible to go with option 1 but still hide the IPs of all non-masternodes?
 
I'm new here so ignore me if this is not applicable.

Would it make sense to implement some sort of anti DOS countermeasures like fail2ban does? (http://www.fail2ban.org/wiki/index.php/Main_Page)

I don't know what the conversation looks like for port 9999 traffic, but if it does not meet some yet to be defined criteria, darkcoind could ban (blackhole) the ip for X minutes.
 
Personally I would prefer option 2, for the following reasons:

Regarding 1):
- A dedicated IP does not guarantee less centralization and computing power, most run on cheap (possibly oversold) VPS servers with their preferred provider (centralized). A dedicated IP is probably an indication but will not guarantee it. Someone might choose a VPS with less resources but more IP's for cost considerations. Also considering IPv6 in the future this assumption will not hold. I think we should look at other mechanism to guarantee response times, like building redundancy in the protocol (don't let x% of unresponsive masternodes influence global response time) and a scoring system that may influence rewards (if at all possible).

Regarding 2):
- transparant support for dynamic IP's
- allow people to run the masternode on home PC: lower entry barrier, probably more resources available than VPS, but more volatile. We just need to make sure that unresponsive masternodes can be identified and eliminated quickly by the network and not influence global response time)

Basically, since we cannot guarantee responsiveness and robustness through the one node per IP requirement, I think we should let the network handle this. Just my 2 cents.
 
It seems like a consensus is forming around 1. IMO, this is acceptable because compromising the speed/robustness of the MN network for half-baked anonymity makes little sense.

However, my question relates to non-MN clients... Evan, does going with option 1 preclude normal clients from having their IPs hidden with some protocol level obfuscation tech? From the standpoint of Darkcoin's anonymity on the whole, hiding normal users IPs would make a big difference. I know users can use Tor with Darkcoin, but I really feel like something protocol level would be better (and definitely more convenient).

So in short, is it possible to go with option 1 but still hide the IPs of all non-masternodes?

Wait for Evan to implement masternodes under Tor(or I2P). You will see that performance is not compromised at all (unless Masternodes use 100Mbit/s up/down constantly, then you will see huge difference) but knowing that packets are just a few bytes in size then you won't see any difference at all except for the greater anonymity and ddos protection.

I hope that eventually the whole Darkcoin will be under Tor(or I2P)(both users and masternodes).
 
Last edited by a moderator:
Wait for Evan to implement masternodes under Tor(or I2P). You will see that performance is not compromised at all (unless Masternodes use 100Mbit/s up/down constantly, then you will see huge difference) but knowing that packets are just a few bytes in size then you won't see any difference at all except for the greater anonymity and ddos protection.

I hope that eventually the whole Darkcoin will be under Tor(or I2P)(both users and masternodes).

To give you some numbers, right now a Masternode transfers about 500 MB in and 500 MB out per day.
 
The goal of Darkcoin was NEVER to support illegal markets. The goal is to provide a crypto-currency that does a better job at being a crypto-currency than Bitcoin does and compete with it. IX is a powerful addition to the technology and shouldn't be discounted. I just don't agree with your assessment that it will end up illegal. In fact my entire goal of 2015 is to start building a narrative to better compete against ripple and bitcoin. There is planning going on, but I can't say much yet :wink:

Awesome Evan! :) darkstrike420 I recommend checking the links below, cheers, Darkcoin is currently gaining approximately 300 000 new owners/users everyday. They are little users for now, but within 5 years with this project alone Darkcoin will have added approximately 531 Million users. For me Darkcoin is about helping Dharma, helping the world and everyone who lives in it, its about helping people by giving them the best we can offer!

Darkcoin is a great positive for society and will help people all around the world www.ravawc.org

Darkcoin is ecash as explained by Milton Friedman
 
Last edited by a moderator:
To give you some numbers, right now a Masternode transfers about 500 MB in and 500 MB out per day.

0.347222222222222 MB/min.

thats 347 KB/min.

thats 5.7 kb/s

You won't see even slight difference in terms of speed when running under Tor. With such numbers, there is only gain. Even if it was 50 KB/s(5 GB/day) it would still be only gain. We start worry when its constantly 500 KB/s up/down but that will probably never happen and Tor keeps increasing speed. You can't compare the speed of Tor now to what it was back in 2010. Tor back in 2010 was unusable.
 
Is there someday we have some kind of master nodes that provide storage service like dropbox?
 
Is there someday we have some kind of master nodes that provide storage service like dropbox?

Not exactly sure why a cryptocurrency should support P2P file-storage.

Doesn't BitTorrent Sync do that? Your files are encrypted and accessible only through the private key(????).

Alternatively, use DropBox and just simply encrypt your files with TrueCrypt(or whatever is the new alternative). Dropbox will slowly sync the TrueCrypted files, because they don't send ONLY changes to their server, I think they check the hash and if it doesn't match then they simply send the file from start to end without even looking for changes to save bandwidth and time.
 
Awesome Evan! :) darkstrike420 I recommend checking the links below, cheers, Darkcoin is currently gaining approximately 300 000 new owners/users everyday. They are little users for now, but within 5 years with this project alone Darkcoin will have added approximately 531 Million users. For me Darkcoin is about helping Dharma, helping the world and everyone who lives in it, its about helping people by giving them the best we can offer!

Darkcoin is a great positive for society and will help people all around the world www.ravawc.org

Darkcoin is ecash as explained by Milton Friedman

There is no way in hell Darkcoin is gaining 300k of new owners/users a day. No way in fucking hell. These are the kinds of statistics that get ripped to shreds by outsiders.
 
Not exactly sure why a cryptocurrency should support P2P file-storage.

Doesn't BitTorrent Sync do that? Your files are encrypted and accessible only through the private key(????).

Alternatively, use DropBox and just simply encrypt your files with TrueCrypt(or whatever is the new alternative). Dropbox will slowly sync the TrueCrypted files, because they don't send ONLY changes to their server, I think they check the hash and if it doesn't match then they simply send the file from start to end without even looking for changes to save bandwidth and time.

No, I means with the way master node providing darksend and instantX services, maybe someday we can have decentralize storage and the master node owner will get incentives for their contributions. And users using that service will pay less for this kind of service comparing to Dropbox.
 
There is no way in hell Darkcoin is gaining 300k of new owners/users a day. No way in fucking hell. These are the kinds of statistics that get ripped to shreds by outsiders.

Sorry, was that a question? :)
 
Personally I would prefer option 2, for the following reasons:

Regarding 1):
- A dedicated IP does not guarantee less centralization and computing power, most run on cheap (possibly oversold) VPS servers with their preferred provider (centralized). A dedicated IP is probably an indication but will not guarantee it. Someone might choose a VPS with less resources but more IP's for cost considerations. Also considering IPv6 in the future this assumption will not hold. I think we should look at other mechanism to guarantee response times, like building redundancy in the protocol (don't let x% of unresponsive masternodes influence global response time) and a scoring system that may influence rewards (if at all possible).

Regarding 2):
- transparant support for dynamic IP's
- allow people to run the masternode on home PC: lower entry barrier, probably more resources available than VPS, but more volatile. We just need to make sure that unresponsive masternodes can be identified and eliminated quickly by the network and not influence global response time)

Basically, since we cannot guarantee responsiveness and robustness through the one node per IP requirement, I think we should let the network handle this. Just my 2 cents.
I agree with this. Just because you are paying for 10 IP addresses doesn't mean your VPS instances aren't all running on the same physical box.

Regarding TOR, hosting the Masternodes on a network designed and funded by the NSA doesn't seem like a great idea to me.
 
No, I means with the way master node providing darksend and instantX services, maybe someday we can have decentralize storage and the master node owner will get incentives for their contributions.

Good thinking ahead. I also foresee a future where all possible positive and constructive applications of crypto currency could eventually be explored, in time... Is there a section where such ideas could be indexed for future reference?
 
Back
Top