Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Explain why staking helps secure the network #34

Closed
denravonska opened this issue Sep 19, 2017 · 10 comments · Fixed by #299
Closed

Explain why staking helps secure the network #34

denravonska opened this issue Sep 19, 2017 · 10 comments · Fixed by #299
Assignees

Comments

@denravonska
Copy link
Member

In @lennstar's post why people do not keep their wallets online, one of the points (#7) is that people might not know that it's needed. Gridcoin.us only mentions "Secure the network" but does not explain anywhere how you can secure the network or why it should be done.

@Peppernrino
Copy link
Contributor

i'm Peppernrino, and i support this message.

@jring-o
Copy link
Contributor

jring-o commented Sep 24, 2017

Here is the first version of a blurb we're working on

"The system is secure as long as honest nodes collectively control more CPU power than any cooperating group of attacker nodes."
-Satoshi Nakamoto

Blockchain security operates on the assumption that out of a large group of individuals, the majority will be honest. For our purposes, let us replace "CPU power" from the excerpt above with "people." Let us say we have a group of 100 people who agree on the validity of a ledger which they all hold. Every time one of them makes a transaction, they announce this transaction to the other 99 individuals. So long as the majority of these people agree on the validity of that transaction, it is added to the ledger. A rogue individual at any time can record false transactions in their copy of the ledger and attempt to announce it to the other 99 individuals. So long as the majority of people also holding copies of the ledger do not accept that false transaction, it is rejected from the true ledger held by everyone. If the rogue individual manages to convince 51% of the 100 people holding the ledger that his transaction is valid, the blockchain is said to be corrupted - there is now a false transaction in everyone's copy of the ledger.

In Proof of Work, a blockchain's security is determined by the CPU power dedicated to hashing out the blockchain. Proof of Work says that as a network matures, it will cost infinitely more resources to obtain 51% of the hash power for a PoW network -- it is simply impractical to attempt to brute force a mature PoW ledger.

Gridcoin does not use Proof of Work. Instead, Gridcoin secures its blockchain with Proof of Stake. This means that the balance held in a client determines the validity of a transaction. If one person held 51% of all Gridcoin, they, in theory, could do anything they wished to the ledger. Proof of Stake says that as the network matures, it is infinitely more expensive to purchase the majority of a circulating coin.

In PoS, if the stake weight drops low enough it becomes practical to brute force the network; If only 20 GRC are securing the Gridcoin network, anyone with 11 GRC could have their way with the ledger. This is what is meant when people talk about the security of a PoS network. The ideal situation is to have all GRC in circulation actively securing the network. As this is impractical, PoS blockchains attempt to reach for ideal as best they can.

For Gridcoin, all that is needed is a wide array of people running a Gridcoin client with a balance in it. So store your coins in the client (recommended for personal security anyway) and be sure to unlock your wallet for staking only. If you do this with the thousands of other people who participate in the Gridcoin network, the threat of what is called a "51% attack" is nothing to worry about.

Pools?

@barton2526
Copy link
Member

Perhaps "Secure the Network" should be a link.

@jring-o
Copy link
Contributor

jring-o commented Sep 25, 2017

Yes. Also a band.

@jring-o
Copy link
Contributor

jring-o commented Sep 25, 2017

This means that the balance held in a client determines the validity of a transaction.

This needs to be said better/more accurately

@barton2526
Copy link
Member

As it stands I need @grctest to follow up with me on this.

@barton2526
Copy link
Member

@jring-o has closed this on Slack. Should the issue remain open?

@barton2526 barton2526 removed their assignment Mar 19, 2018
@barton2526
Copy link
Member

Move to close or change due to upcoming CBR changes. @jring-o @grctest

@barton2526
Copy link
Member

Can this be closed?

@RoboticMind
Copy link
Contributor

It might be good to add a tooltip on this one to explain what it means briefly. Will create a PR in a minute

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

6 participants