Welcome to the Dash Forum!

Please sign up to discuss the most innovative cryptocurrency!

Proposal : Investigation into using Masternodes for anonymous web

Discussion in 'Pre + Budget Proposal Discussions' started by QuantumExplorer, Jul 19, 2016.

  1. QuantumExplorer

    QuantumExplorer Active Member
    Core Developer

    Joined:
    Aug 20, 2014
    Messages:
    123
    Likes Received:
    160
    Trophy Points:
    93
    Hello guys, hope you will like this proposal. It is also referenced here : https://www.dashwhale.org/p/anon-by-masternodes

    I reworked this proposal with suggestions given to me by the DASH community and core team. Included you will see an introduction on who I am, some thoughts so far on how to proceed, as well as a rough timeline of what to expect.

    Who I am


    To start off I'm a developer with 10 years of professional experience, and 16 years if you count university and self learning in high school. Some notable achievements to give people an idea of my abilities are that I rebuilt a RSA program at 16 (public/private keys based on prime numbers). By 21 I was working in the summer at a very prestigious computer research center on a project that was funded by NASA. A paper I contributed to was published which involved auto updating intelligent distributed nodes. After getting a masters in project management I worked in Asia for a while, first as a developer, then senior, then lead, then head of engineering, then CTO.

    I have built many projects including a voice recognition system and a augmented reality engine (which could have powered a game like pokemon go (I built it 5 years ago, but because of a legal dispute the code had to be thrown away)).

    I got into Bitcoin quite a while ago and now have contacts with a lot of the top bitcoin players. I don't use them at all, and have not yet tried to endorse DASH mainly because I want to make that push when I think we are ready, and I haven't felt that yet.

    I joined the DASH community about 2 years ago because I saw it as the most innovative project out there. I see a lot of other projects as hot air, and when I dive into them I just find they just target overzealous investors and have very little to offer. DASH is different. It delivers over and over. As an analogy I see DASH as a developer who gets things done contrary to developers who like to talk a lot in meetings and do nothing.

    I joined the core team roughly in August 2015 while working on the iOS app. After completion, the iOS app was rejected again and again by apple which left me very frustrated, demoralized, and made me take a break from working on DASH, as I didn't see how I could contribute. I was eventually removed from the core team as well.

    For iOS I had worked a lot on the x11 hashes, so when I found out that the community was looking for someone to do the x11 hash I finally had something I knew I could do well to contribute.

    And here I am now, contributing to evolution when needed, and iOS when needed. But I would like to do more, hence this proposal.

    Idea


    Because of our system of incentivized nodes we have a truly global network that can be put to multiple uses. Quite some time ago Evan talked about the many different uses we could make out of this network and discussed it being used as a sort of Tor like system. This resonated with me. The more I thought about it the more excited I was too. Notably because I saw in it a way to improve upon tor, give quick anonymity (think VPNs) but also a way to monetize the existing Masternode network.

    Very recently a new paper was published from MIT called Riffle. It explores a novel way to fix the problems with Tor. While it might not work well for us (probably not) it got me interested in making a proposal to the community.

    Proposal

    My proposal has two sides. The first is that I would work to figure out how to add various types of anonymity usages to our system. These would include VPNs, anonymous browsing, hidden apps and IP blinding among possibly other use cases I haven't even thought of yet.

    The end result of this would be a white paper explaining how such systems could work, as well as a plan to implement each feature. Inside you can expect mathematical and cryptological proofs ensuring the security and robustness of the system as well as the pros and cons of the various choices we will need to make when implementing these solutions.

    The second side to my proposal is that I would figure out how to monetize such systems and have them work well for us. There are millions upon millions of VPN users, Dash could potentially be amazing for these users since we have nodes all around the world. And same thing for Tor.

    Thoughts so far on how this could/might work :

    From a user perspective the core client would have a button that would turn it into a VPN/autonomous gateway. When this happened it would choose a number N of masternodes deterministically based on the hash of the last block. It would then encrypt the outgoing message with N layers as is common with onion routing, laying out the route of the message and would encrypt the last layer in a PGP type style in order to ensure that the entry masternode does not know that it is an entry masternode, this would therefore make the entry anonymous to your system hiding your IP. Then after N hops the exit node will get your message, it will go request the content in clearnet. When it did it could either encrypt the data back or send it clearly (something to think about).

    This is basic onion routing with some small extra stuff for us preventing government snooping in between you and the first node. What makes our system better is that the client will only select nodes that are verified to have 1000 DASH, hence it would be almost impossible to have N "malicious" nodes if N>8.

    There are some problems here though, the masternodes know who have 1000 DASH, and your client doesn't most likely hence the entry node would know your IP. You would therefore have to have 1000 DASH in your wallet to hide your IP from the original Masternode and prevent it from knowing you are the originator of a message. The problem here is if someone controlled the entry and exit nodes there could be a statistical analysis attack to break the system since with the entry node would know your IP, and the exit node would know the request. The 2 nodes of course do not know each other, but someone doing the attack and owning both nodes could maybe figure out with a certain degree of probability what you where doing. A problem to be researched in depth.

    Now that was the easy part, here comes the hard part. How to get people to pay for the service without compromising the system? This is where there is no other system I can base myself off. Ideally we would need to find a solution where people pay for bandwidth and not by month/ day etc. My thoughts were to create a secondary currency on the masternode network, that is not divisible, let's call it ash (or gas, not yet sure on the name) . Each packet would then add some ash to each packet.

    The system of course needs to be trustless and the ash can not be allowed to be traced back to the dash address who bought it or else there could be another weakness in the system. I'll be honest that the problems here are monumental to overcome and would require a completely novel type of blockchain system. Hence why I need to do months of research on it.

    If we don't go the bandwidth route things can become simpler yet still very complicated. Here we wouldn't need ash, but just a verification by each node that the originator has paid for the day/week/month. How would you verify this without knowing the originator DASH address? You would have to go off an anonymous transaction. I haven't dived further than this yet.

    VPN is a lot easier than this because VPN wouldn't need a trustless system to operate. Hence you can just pay any N nodes for N hops. The nodes know what you are doing. A VPN system like this would work very well for china for example. The first HOP could be towards a node inside china, then the second hop would be again a peer outside of china. The great firewall people, knowing our system could be used for this could ban the IP addresses of all nodes outside of china as a response. Here we could come up with a system of having 2 network interfaces per masternode (with the second being IPV6 only). One that would cycle IP addresses (IP V6), one that wouldn't (main masternode IP). This would make systems like china GFW (great firewall) to have a really hard time blocking us, as I think their blacklist is manual. For them to block us they would need to integrate with our system. Further research would be needed to figure out ways to outsmart them if this became a problem.

    These are the majority of my thoughts for now. I didn't want to post them before because I wanted to come up with very sturdy ideas before they were released to the public.

    You can also expect the following :

    - I will assume some Masternodes might want to opt-out. I will keep this in mind.
    - I hope to find a way to remunerate nodes that opt-in (as they are paying for bandwidth). I will try to explain different payment models we could have for the network. I will also try to figure out how much money this could make each node depending on usage.
    - I will try to explain all the possible use cases and drawbacks of each system as well as how they could potentially be exploited. (As an example VPNs could be used for torrenting which could cause legal issues for the end nodes if they are in certain countries). However if all our end nodes are in countries with no such legal restrictions, there would be no problem.
    - Even though I won't published code I will go over the tor code base to try to find elements that could be directly reused to save us time.

    After this whitepaper is completed, and also after the community has had time to review it and have their say, I will try to get a team together and build this.

    Costs :

    For costs I will be asking for 750 Dash (+5 for reimbursement of proposal). Even though the majority of this will go back to me I also plan to use some of this money to incentivize people into helping me, mainly people that work in tor and anonymity systems so that they can validate and review my work to make sure there are no flaws in my designs. If more money is needed to incentivize other people or if I've worked many months but not covered all anonymity issues I will make more proposals.

    I'd like to add the following for an open discussion:

    From comments I received recently I would like to add that the average computer science salary in the place where I live for my level is around 10000-15000$ a month. I'm not trying to boast, but I just want to be clear that I am not working on DASH for the money. When I factor in costs for my proposal I basically just add up what I spend on rent/food/insurance and ask for that amount. It really frustrates me when people think I'm trying to cheat the system

    I must admit that this isn't great for me money wise. In the future voting masternode operators have to realize that the best computer scientists in the USA make ~ 120K-300K USD a year depending on their field. It's really hard to people who make far less than that to understand this. As such drawing them in monetarily is almost impossible with our current budgets.

    There's something to be said here as to why my first proposal was maybe a little bland. If I do do this I lose at least 5K USD during this time compared to if I was working for a company doing freelance. That's why if this is downvoted I won't feel too bad because I can work on other stuff that's a lot less difficult for more money. I wanted to do this to improve upon DASH and because I wanted to contribute something meaningful to society, and that's my sole reason for making this proposal.

    Timeline :

    The project would start in early August to early September, depending on whether my latest submission to the iOS app store goes through. I will report back every 3-4 weeks of work with a deliverable and have a weekly meeting with kot (or another project manager in Dash that wishes to help me with this).

    The order of deliverables will be the following:

    System for onion routing (18 days work).

    Systems for consideration for onion routing payment (20 days work).


    VPN solutions (15 days work).

    Systems for consideration for VPN payment (5 days work).

    Note: I can't provide a perfect timeline since I might be needed on evolution or iOS. If I have to pause this for evolution or iOS I will do so, notify the community, and the PM who is leading me.

    Thank you for your consideration, QuantumExplorer

    Last thoughts :

    There are at least 2 reasons to vote no on this proposal. Either you don't think I can/should do it or you don't like the idea in itself. I'm no longer interested in talking about my capabilities to do this project after this second proposal. I believe I can do it, and would not have made this proposal if I thought I couldn't.

    However discussing whether this should be built is another idea in itself, and I would really like to debate that some more. I believe no matter what we should first figure out how to build it. Then depending on the findings discuss if it should be implemented.

    So far though most people have told me they love the idea, and I hope you do as well.

    Manually vote YES on this proposal:
    dash-cli mnbudget vote-many 09c9b969eb95743b359108bf2e5cbb767da14d1eb2a52c38d94762eddb5d6790 yes

    OR from the qt console:
    mnbudget vote-many 09c9b969eb95743b359108bf2e5cbb767da14d1eb2a52c38d94762eddb5d6790 yes

    Manually vote NO on this proposal:
    dash-cli mnbudget vote-many 09c9b969eb95743b359108bf2e5cbb767da14d1eb2a52c38d94762eddb5d6790 no

    OR from the qt console:
    mnbudget vote-many 09c9b969eb95743b359108bf2e5cbb767da14d1eb2a52c38d94762eddb5d6790 no
     
    #1 QuantumExplorer, Jul 19, 2016
    Last edited: Jul 20, 2016
    • Creative Creative x 1
  2. fible1

    fible1 Well-known Member
    Dash Core Team Masternode Owner/Operator

    Joined:
    May 11, 2014
    Messages:
    710
    Likes Received:
    722
    Trophy Points:
    163
    I loved everything about your proposal, however you lost me when you said you had no fixed time line. I could also see @kot 's ghost shaking his head. please add some fixed delivery dates and you got my vote.

    Pablo.
     
    • Agree Agree x 1
  3. QuantumExplorer

    QuantumExplorer Active Member
    Core Developer

    Joined:
    Aug 20, 2014
    Messages:
    123
    Likes Received:
    160
    Trophy Points:
    93
    I'll work on a plan for delivery dates and update this later today. Once again evolution/iOS will take precedence. I see this as taking roughly 1/3rd of my time over a six month period, with evolution and iOS taking the rest of the time (iOS if we are approved by apple).
     
  4. mastermined

    mastermined Active Member

    Joined:
    May 26, 2014
    Messages:
    511
    Likes Received:
    385
    Trophy Points:
    133
    great idea but it seems expensive just for a whitepaper that may or may not even work.
     
  5. QuantumExplorer

    QuantumExplorer Active Member
    Core Developer

    Joined:
    Aug 20, 2014
    Messages:
    123
    Likes Received:
    160
    Trophy Points:
    93
    @mastermined I understand your concern. I based the amount on other proposals that you can check. I would like to add that I would be asking for less than half of what I made per hour at my last job assuming this takes me 1 and a half month of work hours (some money will go to others as well).

    I won't take it badly if the proposal is rejected either. I just thought of this and wondered if the community also thought it was a good idea. If someone is willing to do it for cheaper and believes they can I would easily delegate it to them and push the extra funds towards anything the community wants. My main goal is to advance DASH.

    As for the whitepaper working, well that's the risk with research. I don't know in advance that I will find a great solution but I wouldn't have made this proposal if I wasn't confident in myself as it will reflect really poorly on me if I don't deliver.
     
    • Like Like x 1
  6. MangledBlue

    MangledBlue Well-known Member

    Joined:
    Jun 28, 2014
    Messages:
    1,246
    Likes Received:
    678
    Trophy Points:
    183
    - Even though I won't write code I will dive into tor code and various VPN protocols and check-out how various things work.

    ?? Things ?? Really ??

    This line ALONE tells me that you ACTUALLY have ZERO clue about what you're talking about. I also think you have no clue how to read any code.

    Pay me so I can go and try to learn some stuff but I'm not actually going to contribute a single character of code.

    HELL!! Pay me - I'll sit around and try to figure out how things work also

    - WOW!!!

    Riffle was only disclosed to the masses over the past few days and is SO NEW that, unless you are part of that team and I'm 100% sure you are not - you have no clue how it actually works


    Also - the creator of this Proposal CLEARLY SAID: I'd like to add that one of the reasons I'm making this proposal now and not later is because we have a lot of funds left for this month.


    So what? There are funds left over??? So we should just give them to you?


    I'd rather have my car wrapped in DASH vinyl as a Marketing ploy but the DASH Community down voted my pre-proposal because they think it would not draw interest within middle America. I guess they figure middle America is a bunch on ignorant folks that don't own computers or it might be to complicated for them to understand - so why bother with letting them know that DASH even exists

    If this proposal passes it will be a sad day in DASH proposals.
    YEAH - Lets gave a bunch of DASH to some guy that can't code and will most likely NEVER actually do anything at all

    I foresee Strippers, Grey Goose and a lot of LOL's

    VOTE NO!!!!
    I smell a scam!!

    [[Cross-posted]]
     
    • Like Like x 2
  7. MangledBlue

    MangledBlue Well-known Member

    Joined:
    Jun 28, 2014
    Messages:
    1,246
    Likes Received:
    678
    Trophy Points:
    183
    I truly cannot believe ANY of you are seriously considering on voting YES for this nonsensical drivel
     
  8. QuantumExplorer

    QuantumExplorer Active Member
    Core Developer

    Joined:
    Aug 20, 2014
    Messages:
    123
    Likes Received:
    160
    Trophy Points:
    93
    @MangledBlue You do realize that I've actually already contributed to the dash project. You can check out the code I've written so far here : https://github.com/QuantumExplorer/

    So far I wrote the iOS app last year, and at the time I did it with no money coming back to me, and this year just finished porting 9 of the x11 hash scripts to javascript. This is not easy work. For the x11 work I received less than half the proposal amount, the rest of the money going back into evolution. I feel bad that you think I'm just trying to cheat the system. If you can find someone more qualified than me that's willing to do this cheaper, I'll gladly ask everyone to vote me down. I'm already somewhat regretting making this proposal after seeing your comments as I really don't feel like I need to justify my commitment to the project.

    Basically this is indeed going to be really hard and I will most likely spend the better half of 2 months of my life on it if it passes. I really want this as a feature to the network but I don't want grief. You seem to have made your mind up about me even though you didn't even look into me. It's fine :)
     
  9. MangledBlue

    MangledBlue Well-known Member

    Joined:
    Jun 28, 2014
    Messages:
    1,246
    Likes Received:
    678
    Trophy Points:
    183
    Well then...........
    If your going to actually do something than so be it but you need to learn how to write a proposal and not come off as somebody that is just gonna "try stuff" and take a look at "things" and then MAYBE something will come from it - or not.

    You sound like a scammer and I will call it like I see it.

    You need to remember - not everybody knows what is actually happening here all the time and you gave ZERO DASH history of involvement.

    If people like you continue to write lame ass proposals, you can expect people like me, to continue to write things, as I did.

    It's one thing to form a thought - BUT - It's YOUR responsibility to relay that thought responsibly to the masses, of not only this community but to any community.

    I found your proposal to be juvenile and nearly uneducated as if you were grasping for straws.

    - WOW Evan use to say - this - this - and this - There is DASH going to go to waste - give me - give me - give me. There's this unreleased new toy called Riffle...... and so on

    Give me a break

    I make no apologizes.
     
    • Like Like x 1
  10. Stealth923

    Stealth923 Well-known Member
    Foundation Member

    Joined:
    Mar 9, 2014
    Messages:
    343
    Likes Received:
    370
    Trophy Points:
    233
    Calm down Mangled - if you look on the Dash.org team page Quantum is listed there and is our iOS developer....this isnt a scam by any means.

    He also states in his proposal that he is working on the Dash iOS and Evolution components which should indicate the contribution made to date!
    "As a disclaimer I might be needed on other parts of Dash that would take precedence (evolution and iOS). I will try to be as transparent as I can about time spent on this project among other projects"

    I think Quantum is qualified and I guess we need to start somewhere in this process but want to ensure there is no overlap with Evolution planned features that could cause work to double up or be redundant?

    Also agree with Pablo on getting indicative timelines as this activity is not exactly cheap

    Thanks for the proposal Quantum and look forward to further discussion on this proposal, and also your contribution to Dash to date :)
     
    #10 Stealth923, Jul 19, 2016
    Last edited: Jul 19, 2016
  11. qwizzie

    qwizzie Well-known Member

    Joined:
    Aug 6, 2014
    Messages:
    1,512
    Likes Received:
    717
    Trophy Points:
    183
    Can we please leave the emotions out of the discussions of budget proposals and discuss it more rationally. At the same time can we also please use pre-discussion proposals
    more often (not the fist time i mention this btw). I havent made up my mind about this one, so i will follow the comments for now ..
     
    #11 qwizzie, Jul 19, 2016
    Last edited: Jul 19, 2016
    • Like Like x 2
  12. camosoul

    camosoul Grizzled Member

    Joined:
    Sep 19, 2014
    Messages:
    2,256
    Likes Received:
    1,128
    Trophy Points:
    1,183
    I vaguely outlined a modular system by which MNs could offer Optional Proportional Services quite a while ago. Iris, DashSotrj, etc... One needs to assure that the actual currency function is not compromised, and we have Proof of Service in place to assure the core operations are not lost to MNs trying to run too much other crap. Get too greedy, not an MN anymore.
     
  13. QuantumExplorer

    QuantumExplorer Active Member
    Core Developer

    Joined:
    Aug 20, 2014
    Messages:
    123
    Likes Received:
    160
    Trophy Points:
    93
    Thanks @Stealth923 for your comments. Much appreciated. And to answer your question, no there is no overlap between this and evolution. However it's possible evolution might be able to benefit from IP blinding as Andy (who is charge of evolution) pointed out to me yesterday.

    For indicative timelines I can create those disregarding my likely future iOS and evolution work as if I was only on this project. But those timelines would get paused if I'm called into another more important project, would that suit you? (I need to get some sleep, I'll make them when I wake up).

    @qwizzie Contrary to a lot of proposal owners I won't feel bad if this is turned down. I'm working a lot and I wanted to make sure the discussion didn't last too long, so I made the proposal active as I wanted to get this over as quickly. I hadn't noticed your previous messages about pre-discussion or else I would have still done a pre-discussion.

    @camosoul yeah you are right, I'll definitively be thinking about the nodes staying viable for their main usage.
     
    • Like Like x 1
  14. GrandMasterDash

    GrandMasterDash Well-known Member
    Masternode Owner/Operator

    Joined:
    Jul 12, 2015
    Messages:
    2,682
    Likes Received:
    959
    Trophy Points:
    183
    Given this is the closest proposal we've had to getting back to dash's roots, I'd say this is worth a punt once the timeline thing is sorted.

    I'd also like to reiterate my wish to see a third party plugin system on the server side; quorums being formed from participating nodes. This way, MNOs could choose to participate or not, based on their own time, resources and circumstances.
     
    • Like Like x 1
  15. jsp3cs15

    jsp3cs15 New Member
    Masternode Owner/Operator

    Joined:
    Jun 21, 2014
    Messages:
    37
    Likes Received:
    14
    Trophy Points:
    8
    As everyone has stated ill be happy to vote for this as long we got some indictive timelines.
    Maybe we assign a PM to work with quantum to maintain governance. Or a detailed WBS with some key milstones should suffice also.
     
    • Like Like x 2
  16. halso

    halso Active Member

    Joined:
    Apr 27, 2016
    Messages:
    440
    Likes Received:
    236
    Trophy Points:
    113
    I plan to vote yes as well.

    One request though: when thinking about new uses for MNs. Can you first consider uses that wud support the core currency project.

    For example, an inbuilt secure messaging system that cud eventually be plugged into evo.

    Or, other features that wud support Dash's core mission.
     
  17. fible1

    fible1 Well-known Member
    Dash Core Team Masternode Owner/Operator

    Joined:
    May 11, 2014
    Messages:
    710
    Likes Received:
    722
    Trophy Points:
    163
    I think you make a valid point, about sticking to Dashs' core competencies, but I think we have migrated from our secure/anonymous roots and into the mission of being user friendly digital cash. I would argue that core focusing on a secure messaging system would not be the best way to bring Dash mainstream as "Digital Cash"; this strikes me more as a third party app after evolution. Anyway, I'm looking forward to seeing what comes from the White Paper, tabula rasa; open mind.

    Pablo.
     
  18. noobtrader

    noobtrader Active Member

    Joined:
    Mar 27, 2015
    Messages:
    188
    Likes Received:
    97
    Trophy Points:
    103
    although im very interested into making masternode useful and being paid more, i think you should has some prototype (on testnet) to show us , at least a working code on your hand that can be easily ported and implemented into Dash.

    EDIT : ill surely vote yes if this project has good chances of success.


     
    #18 noobtrader, Jul 20, 2016
    Last edited: Jul 20, 2016
  19. camosoul

    camosoul Grizzled Member

    Joined:
    Sep 19, 2014
    Messages:
    2,256
    Likes Received:
    1,128
    Trophy Points:
    1,183
    I could vote yes on that part of it... :p

    This is a bad proposal. @MangledBlue pretty much covered it in classic @camosoul fashion. It's like having common sense makes people become more like me. Golly, wonder why that it...

    It goes to demonstrate that way too many MNOs are still a bunch of derps, and those willing and able to take advantage, will.
     
  20. camosoul

    camosoul Grizzled Member

    Joined:
    Sep 19, 2014
    Messages:
    2,256
    Likes Received:
    1,128
    Trophy Points:
    1,183
    There are other one-trick-pony coins that already do this, an d could be grafted. No research needed.

    But dash is supposed to be currency, not a Swiss Army Knife of unrelated, focus-less pie-in-the-sky stuff...

    I don't oppose the idea. I oppose the idea as presented. Any feature not directly related to being a currency shouldn't even be considered right now. I already outlined the concept. No need to "research" it. Already done.

    Maybe would could fund a study on the flow rates of various brands of ketchup at different temperature on different planets? I bet that would be really expensive and we could totally pay for it! Who wants to pay me to count my nose hairs?
     
    • Funny Funny x 1
  21. halso

    halso Active Member

    Joined:
    Apr 27, 2016
    Messages:
    440
    Likes Received:
    236
    Trophy Points:
    113
    @QuantumExplorer

    We appreciate you haven't started the white paper yet, but surely you have some idea as to the features you are thinking off? Can at least give us a high level overview of what you are thinking at this stage?

    Otherwise its too vague.
     
  22. QuantumExplorer

    QuantumExplorer Active Member
    Core Developer

    Joined:
    Aug 20, 2014
    Messages:
    123
    Likes Received:
    160
    Trophy Points:
    93
    @halso Yes I can, so basically what I was thinking so far was the following.

    From a user perspective the core client would have a button that would turn it into a VPN/autonomous gateway. When this happened it would choose a number N of masternodes deterministically based on the hash of the last block. It would then encrypt the outgoing message with N layers as is common with onion routing, laying out the route of the message and would encrypt the last layer in a PGP type style in order to ensure that the entry masternode does not know that it is an entry masternode, this would therefore make the entry anonymous to your system hiding your IP. Then after N hops the exit node will get your message, it will go request the content in clearnet. When it did it could either encrypt the data back or send it clearly (something to think about).

    This is basic onion routing with some small extra stuff for us preventing government snooping in between you and the first node. What makes our system better is that the client will only select nodes that are verified to have 1000 DASH, hence it would be almost impossible to have N "malicious" nodes if N>8.

    But there are some problems, the masternodes know who have 1000 DASH, and your client doesn't most likely hence the entry node would know your IP. You would therefore have to have 1000 DASH in your wallet to hide your IP from the original Masternode and prevent it from knowing you are the originator of a message. The problem here is if someone controlled the entry and exit nodes there could be a statistical analysis attack to break the system since with the entry node would know your IP, and the exit node would know the request. The 2 nodes of course do not know each other, but someone doing the attack and owning both nodes could maybe figure out with a certain degree of probability what you where doing. A problem to be researched in depth.

    Now that was the easy part, here comes the hard part. How to get people to pay for the service without compromising the system? This is where there is no other system I can base myself off. Ideally we would need to find a solution where people pay for bandwidth and not by month/ day etc. My thoughts were to create a secondary currency on the masternode network, that is not divisible, let's call it ash (or gas, not yet sure on the name) . Each packet would then add some ash to each packet.

    The system of course needs to be trustless and the ash can not be allowed to be traced back to the dash address who bought it or else there could be another weakness in the system. I'll be honest that the problems here are monumental to overcome and would require a completely novel type of blockchain system. Hence why I need to do months of research on it.

    If we don't go the bandwidth route things can become simpler yet still very complicated. Here we wouldn't need ash, but just a verification by each node that the originator has paid for the day/week/month. How would you verify this without knowing the originator DASH address? You would have to go off an anonymous transaction. I haven't dived further than this yet.

    Anyways these are my thoughts for anonymous web. VPN is a lot easier than this because VPN trusts the nodes. Hence you can just pay any N nodes for N hops. The nodes know what you are doing. A VPN system like this would work very well for china for example. The first HOP could be towards a node inside china, then the second hop would be again a peer outside of china. The great firewall people, knowing our system could be used for this could ban the IP addresses of all nodes outside of china as a response. Here we could come up with a system of having 2 network interfaces per masternode (with the second being IPV6 only). One that would cycle IP addresses (IP V6), one that wouldn't (main masternode IP). This would make systems like china GFW (great firewall) to have a really hard time blocking us, as I think their blacklist is manual. For them to block us they would need to integrate with our system. Further research would be needed to figure out ways to outsmart them if this became a problem.

    These are the majority of my thoughts for now. I didn't want to post them before because I wanted to come up with very sturdy ideas before they were released to the public.
     
  23. fible1

    fible1 Well-known Member
    Dash Core Team Masternode Owner/Operator

    Joined:
    May 11, 2014
    Messages:
    710
    Likes Received:
    722
    Trophy Points:
    163
    I am in complete disagreement of where you want to take your research, I don't like this second token idea, and I don't like us becoming building a TOR clone on top of the MN network, but I still voted yes. I voted yes because we need to build our culture around ongoing research and development to stay at the leading edge.

    Hope the budget passes, and i wish you the best of luck,
    Pablo.
     
    • Like Like x 1
  24. QuantumExplorer

    QuantumExplorer Active Member
    Core Developer

    Joined:
    Aug 20, 2014
    Messages:
    123
    Likes Received:
    160
    Trophy Points:
    93
    @fible1 I really understand why you think the way you do. My goal here is basically to do as much research as possible and then have a community debate on whether we should implement some of the things I come up with.

    I'm only leaning towards all of them being implemented. However doing this research could open up the door for other innovations that could benefit us even more.

    Hidden apps on the network would be possible with onion routing, which could lead to darknet marketplaces. While this could be great for us it would also be a disaster. It's very debatable if we want this.

    How we could be better though than tor is that we could maybe, through our governance system elect people represented by address that moderate such apps. Hence we would be decentralized yet allow moderation.

    See there's a lot to think about.

    I like the VPN idea the most as it would start earning the network a potentially serious amount of money and it would draw serious attention to our project from China.
     
    #24 QuantumExplorer, Jul 20, 2016
    Last edited: Jul 20, 2016
    • Like Like x 1
  25. QuantumExplorer

    QuantumExplorer Active Member
    Core Developer

    Joined:
    Aug 20, 2014
    Messages:
    123
    Likes Received:
    160
    Trophy Points:
    93
    @fible Also the second token was just an idea. It would only live on the masternode network, and end users would not be able to interact with it. I just need a system to pay out masternode operators based on their bandwidth without overloading the DASH blockchain. These tokens would also not be mined and would no extra ones would ever be generated. They would never be able to leave the masternode network either. It was just an idea. I'm hoping to find a better one I must admit.
     
    • Like Like x 1
  26. demo

    demo Well-known Member

    Joined:
    Apr 23, 2016
    Messages:
    3,114
    Likes Received:
    263
    Trophy Points:
    153
    Dash Address:
    XnpT2YQaYpyh7F9twM6EtDMn1TCDCEEgNX
    So you have no proposition to offer, you will not write a single row of code, and you want to be paid for browsing the internet and copy paste it.
    Is this a rational proposal?

    So you want to transform the dash network into a TOR or VPN network that offers paid services. Will you write code for that? Or the VPN-TOR transformation of the dash network (and the monetization of these services) will be only in theory?


    And my question-request on anonymity.
    How can you turn the IP address of a masternode owner to a private one, so that all the rest masternode owners are not allowed to know that IP? Do you have something to propose on that?
     
    #26 demo, Jul 20, 2016
    Last edited: Jul 20, 2016
    • Dislike Dislike x 1
    • Disagree Disagree x 1
  27. QuantumExplorer

    QuantumExplorer Active Member
    Core Developer

    Joined:
    Aug 20, 2014
    Messages:
    123
    Likes Received:
    160
    Trophy Points:
    93
    @demo Well in a project research comes before implementation. If someone just starts writing code without actually doing the research that code will most likely fail or have security vulnerabilities. In many of the other proposals research has been included in the coding part of the proposal, but this is a far bigger challenge, which is why I broke it up.

    My goal is to propose cryptographically secure solutions, have them be vetted, and then form a team where I would then be writing code along with my teammates. However such a project will take a long time. It would be ludicrous to ask for such funds now.

    I'm sorry to say but if you think that figuring out how to make this system work is possible just by browsing the web and copy/pasting you really have no clue about the complexities involved. I'm not trying to remake tor, I'm trying to make something better than tor that works faster, more securely and incentivizes nodes. If you think this can be done by copy pasting from the internet then you really should join the project and show me your copy pasting skillset.

    I just rewrote my proposal, maybe you saw the previous version. If after that you really think I'm trying to steal money from the system, there's nothing more I can do.

    If this proposal fails because of the research aspect (it could fail for other reasons that make more sense), it might underline that we have a problem with research proposals in general. So far Evan has done all the research for DASH, and because of his status as well as the fact that he holds a great deal of DASH he is heavily incentivized to continue doing so. However it would be wise for us to figure out how to incentivize other people to bring in innovation.
     
    • Like Like x 1
    • Agree Agree x 1
  28. demo

    demo Well-known Member

    Joined:
    Apr 23, 2016
    Messages:
    3,114
    Likes Received:
    263
    Trophy Points:
    153
    Dash Address:
    XnpT2YQaYpyh7F9twM6EtDMn1TCDCEEgNX
    My question-request on anonymity.
    How can you turn the IP address of a masternode owner to a private one, so that all the rest masternode owners are not allowed to know that IP? Do you have something to propose on that?
     
  29. halso

    halso Active Member

    Joined:
    Apr 27, 2016
    Messages:
    440
    Likes Received:
    236
    Trophy Points:
    113
    I have changed my votes to yes. More research in the field can only be a good thing. Even to build capability in the ecosystem.

    However, i must admit im not convinced to much about the VPN angle.

    Although i do like the idea of side chains. How would we respond to a big corporate if they came along and said 'i love your incentivised network, can i run my own chain on it?'

    Perhaps we could look at the best sidechain ideas in the crypto world and make them better. Then include into Dash.
     
    • Like Like x 1
  30. QuantumExplorer

    QuantumExplorer Active Member
    Core Developer

    Joined:
    Aug 20, 2014
    Messages:
    123
    Likes Received:
    160
    Trophy Points:
    93
    @halso I think you heard side-chain and thought of side-chains in the sense of ethereum, that's not what I'm proposing here. Side chains are for another day. This would be a specialized side-chain that serves only one purpose and that is to deal with remunerating nodes that provide a service. Having it on a "side chain" would allow us to ultra specialize it and reduce network usage/blockchain bloat of the main DASH chain since the main DASH chain isn't meant for something like this.