Author

Topic: PhantomNodes - Run thousands of masternodes on a RPi, any IPs, coin agnostic. (Read 973 times)

newbie
Activity: 1
Merit: 0
I created this UI over your phantom nodes so anyone can host their nodes for free with a few clicks. It works by adding a fresh TX ID or by uploading an existing masternode.conf file with already started nodes.

https://phanode.com/

Source code will be published after I polish it a bit. If it represents any interest, we can work on improving and extending the functionality.
[/quote

Your website is down.

did you ever publish the source code

or are you interested with sharing it with me
jr. member
Activity: 74
Merit: 5
I created this UI over your phantom nodes so anyone can host their nodes for free with a few clicks. It works by adding a fresh TX ID or by uploading an existing masternode.conf file with already started nodes.

https://phanode.com/

Source code will be published after I polish it a bit. If it represents any interest, we can work on improving and extending the functionality.

Very cool UI, really nice work! Looking forward to seeing the source. The discord link above has a development channel if you ever need any information.

best,
break.
newbie
Activity: 1
Merit: 0
I created this UI over your phantom nodes so anyone can host their nodes for free with a few clicks. It works by adding a fresh TX ID or by uploading an existing masternode.conf file with already started nodes.

https://phanode.com/

Source code will be published after I polish it a bit. If it represents any interest, we can work on improving and extending the functionality.
jr. member
Activity: 74
Merit: 5
I got a chance to debug PIVX clients that were going missing. Apparently they use some double-broadcast ridiculousness to get into an ENABLED state. I'll release a patch shortly so you can issue a single broadcast and then run the phantom daemons.

If you want more technical details, they create a catch-22 scenario where a broadcast goes out, is marked as PRE_ENABLED but the code doesn't respect PRE_ENABLED. When the network tries to update, it rejects it because the masternode isn't ENABLED, but it can't get ENABLED until it accepts the update. I've got a work around that sends a broadcast that instantly goes to ENABLED and then everything works fine.

The downside, you'll need to run the broadcast command and then run the phantom daemon -- so it's two steps vs. one step for DASH -- but still easy.

Update should be coming in a day or two.

best,
break

Hey, it seems like you are doing proper work on this container-- however I have heard there is some concern from Bittrex security regarding your tool's potential ability to spoof existing MNs. My understanding is that MN peer nodes don't validate a static IP of the MN set at the time of configuration. Trex security have apparently been lurking your discord and they are worried your tool can be modified to Sybil-attack MN networks for easy forking, vote manipulation, or double spend via Sybil-falsified instantsend quorum.

Additionally some scanning of the Windows binary has revealed TrojanDropper.Dapato.zby which I'm hoping is a false positive.

https://www.virustotal.com/en/file/34d5553bca53dd84560f4779071bf5267bb9f1755d4b2dc4208f576d4a977ac8/analysis/1556570810/

I apologize for having to edit my neutral post above to a warning but a lot of people follow blindly what I say and I didn't want to be responsible for any losses incurred by people testing your tool without full awareness of the risks.

There are no trojans in the binaries on git, that's for sure. But, of course, never take some rando's word for it, check the source and for the love of goodness, compile it yourself - the docker images make it super simple. Other than that, the phantom should NEVER require a collateralize private key, so if anyone suggests otherwise, don't trust them. I spent a lot of time on the architecture to make sure that private keys stayed in the wallet and private.

best,
break.
legendary
Activity: 1517
Merit: 1042
@notsofast
I got a chance to debug PIVX clients that were going missing. Apparently they use some double-broadcast ridiculousness to get into an ENABLED state. I'll release a patch shortly so you can issue a single broadcast and then run the phantom daemons.

If you want more technical details, they create a catch-22 scenario where a broadcast goes out, is marked as PRE_ENABLED but the code doesn't respect PRE_ENABLED. When the network tries to update, it rejects it because the masternode isn't ENABLED, but it can't get ENABLED until it accepts the update. I've got a work around that sends a broadcast that instantly goes to ENABLED and then everything works fine.

The downside, you'll need to run the broadcast command and then run the phantom daemon -- so it's two steps vs. one step for DASH -- but still easy.

Update should be coming in a day or two.

best,
break

Hey, it seems like you are doing proper work on this container-- however I have heard there is some concern from Bittrex security regarding your tool's potential ability to spoof existing MNs. My understanding is that MN peer nodes don't validate a static IP of the MN set at the time of configuration. Trex security have apparently been lurking your discord and they are worried your tool can be modified to Sybil-attack MN networks for easy forking, vote manipulation, or double spend via Sybil-falsified instantsend quorum.

Additionally some scanning of the Windows binary has revealed TrojanDropper.Dapato.zby which I'm hoping is a false positive.

https://www.virustotal.com/en/file/34d5553bca53dd84560f4779071bf5267bb9f1755d4b2dc4208f576d4a977ac8/analysis/1556570810/

I apologize for having to edit my neutral post above to a warning but a lot of people follow blindly what I say and I didn't want to be responsible for any losses incurred by people testing your tool without full awareness of the risks.
jr. member
Activity: 74
Merit: 5
I got a chance to debug PIVX clients that were going missing. Apparently they use some double-broadcast ridiculousness to get into an ENABLED state. I'll release a patch shortly so you can issue a single broadcast and then run the phantom daemons.

If you want more technical details, they create a catch-22 scenario where a broadcast goes out, is marked as PRE_ENABLED but the code doesn't respect PRE_ENABLED. When the network tries to update, it rejects it because the masternode isn't ENABLED, but it can't get ENABLED until it accepts the update. I've got a work around that sends a broadcast that instantly goes to ENABLED and then everything works fine.

The downside, you'll need to run the broadcast command and then run the phantom daemon -- so it's two steps vs. one step for DASH -- but still easy.

Update should be coming in a day or two.

best,
break
jr. member
Activity: 74
Merit: 5
It looks like there's an issue with certain PIVX variants. The phantom daemon is working on them but something isn't quite right. I'm working on debugging it.

best,
break
jr. member
Activity: 74
Merit: 5
I have downloaded and set this up on a few coins to test it. LPC nodes keep going missing one node on MARC will not count up then goes missing. I pulled all of the config data for zealium NZL and have the counters running up but no rewards yet. Two of them used the old IP so they should be receiving. Any ideas?

Thanks


Are you using the latest version 0.0.4? For LPC and MARC, is active time increasing before it goes MISSING or is it just going to missing after a period of time?

best,
break
jr. member
Activity: 74
Merit: 5
Great!
edit: the discord link is expired

Fixed the discord link, sorry about that.
jr. member
Activity: 32
Merit: 1
I have downloaded and set this up on a few coins to test it. LPC nodes keep going missing one node on MARC will not count up then goes missing. I pulled all of the config data for zealium NZL and have the counters running up but no rewards yet. Two of them used the old IP so they should be receiving. Any ideas?

Thanks
member
Activity: 430
Merit: 22
Professional user
Great!
edit: the discord link is expired
jr. member
Activity: 74
Merit: 5
Added coin configuration information for the following masternode coins:

BEET
BITG
CDM
DEV
DKPC
GBX
GIC
HLM
LPC
MARC
MILL
OMEGA
PIVX
POLIS
PRX
RAPID
SINS
SLX
SMART
SYS
TELOS
WGR
WOLF
XAP
XLQ
XZC
ZEN

best,
break
jr. member
Activity: 74
Merit: 5
Made phantoms easier to use to hot-swap masternodes more quickly for users who aren't worried about high availability. You can now use a coin configuration file and the unmodified masternode.conf from your coin of choice. And remember, phantoms are hot-swappable, you don't need to restart your MNs to move to phantom nodes -- the magic of being able to use any IP address you like.

Coin confs for:

  • $PAC
  • ANDS
  • Feirm
  • SPARKS
  • XBI

are posted on the github. I'll add more as more people provide settings.

best,
break.
jr. member
Activity: 74
Merit: 5
looking at the code now, i might have a use for this...
i have a buncha questions of course, but i feel like ill have most my answers once i read the docs
so ill do that first
(i already have a way i do this with my own masternodes privately, so im curious how you did it Wink )

Nice work

Thanks! And ask away, happy to answer anything I can.

best,
break.
jr. member
Activity: 74
Merit: 5
Phantom nodes requires no static IP address, no copy of the blockchain, and no proof-of-service. As such, you can run a node on any IP address of your liking: 1.1.1.1 or 8.8.8.8 if you wish. The phantom daemon is extremely lightweight allowing you to run hundreds of nodes from a modest machine if you wished. And, possibly most importantly, you can move your currently running masternodes to phantom nodes without restarting since a real IP address is no longer a requirement.

The phantom daemon is custom built wallet designed to replicate only what is required for pre-EVO masternodes to run; it replaces the masternode daemon piece. It does not handle any wallet private keys and has no access to your coins. You will still need a wallet to start your masternodes, but once started, the phatom node system will handle the rest for you.

Binaries and source available: https://github.com/breakcrypto/phantom

API being developed here: https://github.com/jackkdev/phantom-hosting

Dedicated docker images being developed here: https://hub.docker.com/r/aviator86/phantom

Updates and upgrades coming daily.

best,
break

I shared this with a few people I thought might be interested. Do you have a discord or anything where potential users/contributors can chat live with you?

Yes, there's a discord here: https://discord.gg/RmUcbY

There's also a reddit here: https://www.reddit.com/r/phantomnodes/

best,
break.
legendary
Activity: 1820
Merit: 1092
~Full-Time Minter since 2016~
looking at the code now, i might have a use for this...
i have a buncha questions of course, but i feel like ill have most my answers once i read the docs
so ill do that first
(i already have a way i do this with my own masternodes privately, so im curious how you did it Wink )

Nice work
legendary
Activity: 1517
Merit: 1042
@notsofast
Phantom nodes requires no static IP address, no copy of the blockchain, and no proof-of-service. As such, you can run a node on any IP address of your liking: 1.1.1.1 or 8.8.8.8 if you wish. The phantom daemon is extremely lightweight allowing you to run hundreds of nodes from a modest machine if you wished. And, possibly most importantly, you can move your currently running masternodes to phantom nodes without restarting since a real IP address is no longer a requirement.

The phantom daemon is custom built wallet designed to replicate only what is required for pre-EVO masternodes to run; it replaces the masternode daemon piece. It does not handle any wallet private keys and has no access to your coins. You will still need a wallet to start your masternodes, but once started, the phatom node system will handle the rest for you.

Binaries and source available: https://github.com/breakcrypto/phantom

API being developed here: https://github.com/jackkdev/phantom-hosting

Dedicated docker images being developed here: https://hub.docker.com/r/aviator86/phantom

Updates and upgrades coming daily.

best,
break

There is a danger this app will steal all coins on the VPS or PC on which it is run. Do not use it. Expect this post to be deleted by the self-moderator.
jr. member
Activity: 74
Merit: 5
Thanks! It's already a working solution and has gathered a few additional developers already. It's not it's own coin though, just a replacement daemon for masternode coins that is far, far, far more efficient.

best,
break
jr. member
Activity: 74
Merit: 5
Phantom nodes requires no static IP address, no copy of the blockchain, and no proof-of-service. As such, you can run a node on any IP address of your liking: 1.1.1.1 or 8.8.8.8 if you wish. The phantom daemon is extremely lightweight allowing you to run hundreds of nodes from a modest machine if you wished. And, possibly most importantly, you can move your currently running masternodes to phantom nodes without restarting since a real IP address is no longer a requirement.

The phantom daemon is custom built wallet designed to replicate only what is required for pre-EVO masternodes to run; it replaces the masternode daemon piece. It does not handle any wallet private keys and has no access to your coins. You will still need a wallet to start your masternodes, but once started, the phatom node system will handle the rest for you.

Binaries and source available: https://github.com/breakcrypto/phantom

API being developed here: https://github.com/jackkdev/phantom-hosting

Dedicated docker images being developed here: https://hub.docker.com/r/aviator86/phantom

Updates and upgrades coming daily.

best,
break

------------
------------

Github: https://github.com/breakcrypto/phantom
Discord: https://discord.gg/fQPb2ew
Reddit: https://www.reddit.com/r/phantomnodes/
Twitter: https://twitter.com/_breakcrypto
Jump to: