Spreadcoin is currently testing Masternodes on testnet. These Masternodes are based upon the Darkcoin masternode system created by Evan Duffield but have been rewritten from scratch to be MUCH more user friendly and easy to setup. We need help testing them and I am willing to pay you Spreadcoin to help. Here are the steps:
First, you must have been registered here for 10 days or more and have 5+ posts.
1. Register at
www.spreadcointalk.org2. Go to this thread and download the pertinent wallet:
http://spreadcointalk.org/index.php?topic=933. Go to this thread and request 100+ tSPR (test spreadcoin)
http://spreadcointalk.org/index.php?topic=944. Setup a masternode (it's EXTREMELY easy) the directions are below in this post.
5. Once you successfully, "start" the masternode, PM me a screenshot of your masternode tab showing the started masternode and your mainnet SPR address.
6. I will send you 25 SPR (this is more than 4 blocks worth of SPR).
7. Now try and break stuff! If you find a confirmed bug, I will pay you 500 SPR. If you find a confirmed vulnerability, I will pay you 1000 SPR.
Feel free to also join us in the Spreadcoin thread here on bitcointalk:
https://bitcointalk.org/index.php?topic=945972.
About MasternodesMasternodes are nodes which have a certain amount of Spreadcoin locked within them and add additional functionality to the Spreadcoin network. In return for this functionality, Spreadcoin masternode owners receive a percentage of Spreadcoin mined in each block (currently 30% on testnet). The concept was originally developed by Evan Duffield of Darkcoin fame but Spreadcoin masternodes have been rewritten from scratch.
All the numbers in this post describe testnet, they can change when we introduce masternodes to mainnet.
Is SpreadCoin implementation based on DarkCoin code?No, this is original implementation.
How is it different from DarkCoin?In SpreadCoin there are no centralized reference nodes to decide which masternodes should receive payments, it is decided by the network in decentralized manner. In DarkCoin the messages which select masternodes are separate from the blockchain and are distributed independently. This way it is possible that nodes will have different opinion on what masternode should receive next payment. In SpreadCoin all votes for masternodes will be stored in blocks and the payee will be uniquely determined from the previous blocks. Just like you can check that any transaction included in the block is correct by comparing its inputs with outputs in previous blocks you will be able to check that masternode payment is correct by checking previous blocks. Why bitcoin is so reliable? Because all nodes have exactly the same rules how to determine which blockchains are correct and which one is better (required more work) than others, these rules are only depended on blocks themselves, not on the order in which they were received them nor on any other messages which you may or may not receive in time. The network can be unstable in the case of some major event which will break connectivity between nodes but once connectivity between nodes is reestablished all nodes will stick to the same blockchain. The same will apply to SpreadCoin.
How masternodes are elected?Each node monitor the network and assign scores to each masternode. This scores depend on how well masternodes provide their services, for instant transactions this will be time delay between transaction and its confimation by masternode. Since there may be no transactions and only elected masternodes will confirm transactions there is an empty service - each masternode will broadcast messages signining certain blocks to prove that it is running. Miners will include votes in their blocks. Votes can either be positive (elect not yet elected masternode) or negative (deelect already elected masternode). If masternode has more than 30 positive votes in the last 60 blocks then it is added to the list of elected masternodes. If masternode has more then 30 negative votes in the last 60 blocks then it is removed from the list of elected masternodes. Note that it is possible to determine which masternodes were elected at each particular block.
Can miners cheat to elect their own masternodes?The system is designed in such a way that all miners will make almost the same votes. Thus, unless you control more than 50% of the hashrate you couldn't actually affect the voting process because you will be outvoted by the rest of the network.
Wouldn't storing votes in blockchain make it too large?No, there is a limit of 10 votes per block and most blocks will have less votes.
How will masternodes receive payments?In each block part of the reward (30%) will go to masternode instead of the miner. Elected masternodes are sorted according to their identifiers and receive payments in order, there is no randomness in this process. Since it is possible to uniquely determine which masternodes are elected solely from the blockchain it is also possible to uniquely determine which masternode should receive the payment, nodes cannot disagree on this.
How much SPR is required to run a masternode?There is a limit of 1440 masternodes, only masternodes with top 1000 amounts will be elected to receive payments, therefore the exact amount you will need to lock will be determined by the market. This amount is locked but it is still yours, when you don't want to run your masternode anymore you can spend it.
Is static IP required to run a masternode?It is not required and for instant transactions this is not necessary.
What is instant transaction?It is a transaction which is confirmed by masternodes within seconds after broadcasting. Once confirmed there is guarantee that this transaction (and not any conflicting one) will be included in the blockchain.
What is the state of instant transactions implementation in SpreadCoin?Most effort was put into developing masternode election/payments mechanism, instant transactions are currenrly not fully implemented. Although masternodes confirm them there is no logic in place to replace unconfirmed transactions with the confirmed ones in the case of double spending attacks and to reject blocks with conflicting transactions. Note that rejecting blocks based on whether or not it includes transactions which conflict with confirmed instant transactions can lead to forks but this can be solved.
Which transactions can be made instantly?Currently these are all transactions with less than 15 inputs and fee of at least 0.001 SPR per input.
How To Create a MasternodeAt present, masternodes are being tested on Spreadcointalk.org. You are welcome to join us there and this guide will work. Or, once masternodes are released on mainnet, simply do the following:
1. Go to the, "Receive" tab and create a new address. Many of us like to label our masternodes in a way we can keep track such as, "Masternode1", "Masternode 2" and so on.
2. Go to the, "Sent" tab and send at least 100 SPR to that address. Note that once 1440 masternodes are created, the masternodes with the least number of SPR in them become delisted. As such, you may want to fund your masternode with more than 100.
3. On either the, "Overview" or, "Transactions" tab, wait for 50 confirmations on the coins.
4. Once you have 50 confirmations, go to the, "Masternodes" tab and enter the amazing GUI that Mr. Spread created. There you will see:
5. Under the, "Control" column you should see your masternode with an empty checkbox. If you don't, click the, "Update" button and wait a couple seconds. Check the box for your masternode.
THAT IS IT! Yes, really. Once your masternode gets elected, you'll start receiving payments. Yes, Mr. Spread made setting up a masternode that easy! And yes, you can have more than one masternode per IP.