Pages:
Author

Topic: 51% can be prevented so long as all nodes agree. - page 2. (Read 2820 times)

hero member
Activity: 1582
Merit: 502
do you really think someone can control 50% of "full nodes" ?

Yes, and for less cost than controlling 51% of the hashpower.  

If that's true ( i dont know cost behind it so i cant really argue againts it) than you win by this argument.

PSA: Add a Full Node for just $19/year!

This site suggests there are under 8000 full Bitcoin nodes.
So to get 50% would require adding 8000 nodes, at a cost of ~$160,000 per year. [In practice you could do it much much cheaper than buying them singly!]
I'm not going to work out the cost of adding enough hashpower to get 50% of the network, but it is an awful lot more than that.

I have learned today in this post more than in last few months reading this whole forum. Thanks for spending time battleing it with me / us. I like to discuss things and am not afraid to admit when someone has better arguments than i do and i'm always open to new facts that can / would chamge my oppinion.
After reading rest of posts in this thread i know where real problem is.
I will surely get alot more ideas like this one, now ill at least know how to "test" em out in my head before spending mine and others time by writing it on forums  Wink

+1
legendary
Activity: 1260
Merit: 1029
do you really think someone can control 50% of "full nodes" ?

Yes, and for less cost than controlling 51% of the hashpower.  

If that's true ( i dont know cost behind it so i cant really argue againts it) than you win by this argument.

PSA: Add a Full Node for just $19/year!

This site suggests there are under 8000 full Bitcoin nodes.
So to get 50% would require adding 8000 nodes, at a cost of ~$160,000 per year. [In practice you could do it much much cheaper than buying them singly!]
I'm not going to work out the cost of adding enough hashpower to get 50% of the network, but it is an awful lot more than that.

I have learned today in this post more than in last few months reading this whole forum. Thanks for spending time battleing it with me / us. I like to discuss things and am not afraid to admit when someone has better arguments than i do and i'm always open to new facts that can / would chamge my oppinion.
After reading rest of posts in this thread i know where real problem is.
I will surely get alot more ideas like this one, now ill at least know how to "test" em out in my head before spending mine and others time by writing it on forums  Wink
member
Activity: 114
Merit: 10
I believe core bitcoin developer Peter Todd had a couple of ideas here:  http://redd.it/281ftd

I don't have much to add, except that a crazy thought just occurred to me where we add a PoS layer to the blockchain so that we have two layers of distributed consensus, one PoW and the other PoS.  Then the PoS layer can be used to regulate the PoW layer.  In other words, those of us who hold bitcoins can actively assign or remove trust from mining nodes (which could be pools or individual miners).  The trust could in theory limit the number of blocks they were able to submit on the PoW side.

I admit I haven't "thought this through" very far and it may not be viable at all.  However, the idea popped into my head after reading one of Danny Hamilton's last posts and I thought I should mention it as I haven't seen it discussed before.
legendary
Activity: 1284
Merit: 1001
Pool A has high priority level and can submit up to 100 blocks per hour
Pool A starts growing and gets to 101 blck per hour and starts loosing BTC. They change IP after 100th block is submited to enable themselves to submit that 101th block and they become low priority pool.
Now pool A can submit only 10 blocks per hour and gain 1 extra block every day. While Pool B which is still on same IP is going great, growing slowly and gaining proiroty.

Pool A would appear as Pool C if the switched IP. They could just go back to being Pool A when they're back under the threshold, or pretend being pool D, E, F and however many they need to avoid being throttled.
legendary
Activity: 1162
Merit: 1007

No I don't mean changing it, PoW is fine - It's the hash rates that worries me because, well, you never know.

I ain't worried about GHash either.
I am worried about how the general public will respond again to having a pool with 51% hashrate.
We have seen what the response was, and to be honest I expected worse..

That is why I said, if this "fear" is gone, then BTC will thrive and become mainstream.

I am saying this because every time I am asked about BTC, most of the people look at the possible failures rather than the already available benefits.
If this problem is out the window I can most certainly say that BTC will at some point become more or less a global kind of currency.
And believe me, I really want that to happen.

That is why I am stressing the fact that something has to be done now.
Obviously it's not an easy task.



Many of us are trying to do something.  But the answer isn't to add new protocol rules, complexity, or trust authorities.  The answer is to increase transparency, promote competition in an efficient and free market, and educate the community.  Like I said in an earlier thread, the best ideas I've seen include:

1.  Soft-fork the format of the blockheaders so that "hashers" can determine using only an SPV client if they are working on an attack chain.  The purpose of this is to increase transparency so that hashers can see more clearly how their hashpower is being deployed.  

2.  Promote P2Pool to attract additional hashpower and reduce reward variance.  Make the process of setting up a bitcoin node and connecting to P2Pool simple and write clear tutorials on the process.

3.  Work towards commoditization of SHA256 ASIC chips.  Right now, the significant obstacle to setting up million dollar + mining operations is securing a reasonable price for hardware.  If we could further decouple hardware producers from the SHA256 ASIC technology, it would create a more competitive market allowing many new large mining operations to come online.  These large operations will be incentivized to solo mine or use P2Pool to retain control of their hashpower.

4.  Educate the community: understand that a 51% attacker cannot create coins, spend coins that aren't his, change network rules, or much of anything really.  All they can do is double-spend their own coins (but it will be obvious in hindsight), and prevent transactions from confirming (this too will be obvious as well as likely stoppable using the Gavin-technique).  
hero member
Activity: 1582
Merit: 502
Here's an important thing to keep in mind while you're trying to think of a "solution":  You aren't looking for a solution that will fix the proof-of-work blockchain.  You are looking for a solution that will fix distributed consensus.

The proof-of-work blockchain is currently the best way anyone has ever come up with to handle distributed consensus.  Anything you can come up with that can reliably prevent a miner from gaining more than 50% of the hash power will require one of two things.  Either a trusted authority that can determine and control how much hash power each entity contributes, or a method of distributed consensus that allows the entire network to agree on how much hash power each entity contributes.  If you discover a solution to distributed consensus, then you no longer need to use it to prevent a miner from gaining more than 50% of the hash power.  Instead, a new (and MUCH better) cryptocurrency can be created (or bitcoin can switch to a new protocol) that implements your newly discovered method of distributed consensus INSTEAD of a proof-of-work blockchain.

I shall keep that in mind.

Don't we have enough alts already?

No.  Most alts are just useless copies of bitcoin with the inflation schedule changed.  There are VERY few that implement anything new when it comes to distributed consensus.  The only real alternative I've seen to a proof-of-work blockchain is a "proof-of-stake" blockchain.  Unfortunately, proof-of-stake has its own >50% problem (50% of historical stake, instead of 50% of current hashpower).  Less "coin of the week" clones of bitcoin, and more innovation into entirely new concepts would be great.

Can't we just fix the current protocol?

Well, fixing it means changing it, right?  And changing it means it is essentially a "new protocol" right?
I'm pretty sure I said:
"or bitcoin can switch to a new protocol"

BTW: are you working on your own coin?
If yes, have you found a way to make it safer than BTC - aka ROCK SOLID?
I would really like to know if a such thing exists Smiley

Nah, I like bitcoin.  I'm not too concerned about the GHash.io situation at the moment.  Either participants will eventually see that they are damaging their own value and will switch to other pools, or bitcoin will fail as an experiment in distributed consensus.  It will be interesting to see how it all plays out, but I don't have any better solutions available.  If I did have a better solution, I'd submit code for review to Bitcoin Core to change the distributed consensus system.

No I don't mean changing it, PoW is fine - It's the hash rates that worries me because, well, you never know.

I ain't worried about GHash either.
I am worried about how the general public will respond again to having a pool with 51% hashrate.
We have seen what the response was, and to be honest I expected worse..

That is why I said, if this "fear" is gone, then BTC will thrive and become mainstream.

I am saying this because every time I am asked about BTC, most of the people look at the possible failures rather than the already available benefits.
If this problem is out the window I can most certainly say that BTC will at some point become more or less a global kind of currency.
And believe me, I really want that to happen.

That is why I am stressing the fact that something has to be done now.
Obviously it's not an easy task.
legendary
Activity: 1162
Merit: 1007
Can't we just fix the current protocol?

It's entirely possible, and IMO likely, that a general distributed consensus theorem exists and applies to all proof-of-X (PoX) type consensus methods:

A distributed consensus system is vulnerable to an attack by an entity that controls 51% of the critical resource X.

If that's the case, the question then is how do we incentivize against a malicious entity acquiring 51% of X?  Satoshi's answer was "make doing so expensive."  So far this is working.    
sr. member
Activity: 476
Merit: 250
do you really think someone can control 50% of "full nodes" ?

Yes, and for less cost than controlling 51% of the hashpower.  

If that's true ( i dont know cost behind it so i cant really argue againts it) than you win by this argument.

PSA: Add a Full Node for just $19/year!

This site suggests there are under 8000 full Bitcoin nodes.
So to get 50% would require adding 8000 nodes, at a cost of ~$160,000 per year. [In practice you could do it much much cheaper than buying them singly!]
I'm not going to work out the cost of adding enough hashpower to get 50% of the network, but it is an awful lot more than that.
legendary
Activity: 3472
Merit: 4801
Here's an important thing to keep in mind while you're trying to think of a "solution":  You aren't looking for a solution that will fix the proof-of-work blockchain.  You are looking for a solution that will fix distributed consensus.

The proof-of-work blockchain is currently the best way anyone has ever come up with to handle distributed consensus.  Anything you can come up with that can reliably prevent a miner from gaining more than 50% of the hash power will require one of two things.  Either a trusted authority that can determine and control how much hash power each entity contributes, or a method of distributed consensus that allows the entire network to agree on how much hash power each entity contributes.  If you discover a solution to distributed consensus, then you no longer need to use it to prevent a miner from gaining more than 50% of the hash power.  Instead, a new (and MUCH better) cryptocurrency can be created (or bitcoin can switch to a new protocol) that implements your newly discovered method of distributed consensus INSTEAD of a proof-of-work blockchain.

I shall keep that in mind.

Don't we have enough alts already?

No.  Most alts are just useless copies of bitcoin with the inflation schedule changed.  There are VERY few that implement anything new when it comes to distributed consensus.  The only real alternative I've seen to a proof-of-work blockchain is a "proof-of-stake" blockchain.  Unfortunately, proof-of-stake has its own >50% problem (50% of historical stake, instead of 50% of current hashpower).  Less "coin of the week" clones of bitcoin, and more innovation into entirely new concepts would be great.

Can't we just fix the current protocol?

Well, fixing it means changing it, right?  And changing it means it is essentially a "new protocol" right?
I'm pretty sure I said:
"or bitcoin can switch to a new protocol"

BTW: are you working on your own coin?
If yes, have you found a way to make it safer than BTC - aka ROCK SOLID?
I would really like to know if a such thing exists Smiley

Nah, I like bitcoin.  I'm not too concerned about the GHash.io situation at the moment.  Either participants will eventually see that they are damaging their own value and will switch to other pools, or bitcoin will fail as an experiment in distributed consensus.  It will be interesting to see how it all plays out, but I don't have any better solutions available.  If I did have a better solution, I'd submit code for review to Bitcoin Core to change the distributed consensus system.
hero member
Activity: 1582
Merit: 502
Can I ask what your profession is?

Computer programmer, and computer systems designer.

Danny thanks for your input and advice man.
You seem to have knowledge on the subject yet I don't see you making any suggestions - which is a shame.

I'd make suggestions if I had any that would work.  When I come up with an idea, I think it through.  I don't think about how I expect it to work, that's the easy part.  I take the time to think through all the possible attacks I can come up with, and whether or not they can be prevented.

I've been studying the bitcoin system for 29 months.  People keep presenting the exact same ideas with the exact same flaws over and over.

Here's an important thing to keep in mind while you're trying to think of a "solution":  You aren't looking for a solution that will fix the proof-of-work blockchain.  You are looking for a solution that will fix distributed consensus.

The proof-of-work blockchain is currently the best way anyone has ever come up with to handle distributed consensus.  Anything you can come up with that can reliably prevent a miner from gaining more than 50% of the hash power will require one of two things.  Either a trusted authority that can determine and control how much hash power each entity contributes, or a method of distributed consensus that allows the entire network to agree on how much hash power each entity contributes.  If you discover a solution to distributed consensus, then you no longer need to use it to prevent a miner from gaining more than 50% of the hash power.  Instead, a new (and MUCH better) cryptocurrency can be created (or bitcoin can switch to a new protocol) that implements your newly discovered method of distributed consensus INSTEAD of a proof-of-work blockchain.



I shall keep that in mind.

Don't we have enough alts already?
Can't we just fix the current protocol?

BTW: are you working on your own coin?
If yes, have you found a way to make it safer than BTC - aka ROCK SOLID?
I would really like to know if a such thing exists Smiley
legendary
Activity: 3472
Merit: 4801
Can I ask what your profession is?

Computer programmer, and computer systems designer (sometimes referred to as "Systems Architect"). With my current employer, I actually handle many additional roles including Business Analyst, Technical Adviser, New Employee Trainer, New Hire Interviewer, Customer Support, and Technical Support.

Danny thanks for your input and advice man.
You seem to have knowledge on the subject yet I don't see you making any suggestions - which is a shame.

I'd make suggestions if I had any that would work.  When I come up with an idea, I think it through.  I don't think about how I expect it to work, that's the easy part.  I take the time to think through all the possible attacks I can come up with, and whether or not they can be prevented.

I've been studying the bitcoin system for 29 months.  People keep presenting the exact same ideas with the exact same flaws over and over.

Here's an important thing to keep in mind while you're trying to think of a "solution":  You aren't looking for a solution that will fix the proof-of-work blockchain.  You are looking for a solution that will fix distributed consensus.

The proof-of-work blockchain is currently the best way anyone has ever come up with to handle distributed consensus.  Anything you can come up with that can reliably prevent a miner from gaining more than 50% of the hash power will require one of two things.  Either a trusted authority that can determine and control how much hash power each entity contributes, or a method of distributed consensus that allows the entire network to agree on how much hash power each entity contributes.  If you discover a solution to distributed consensus, then you no longer need to use it to prevent a miner from gaining more than 50% of the hash power.  Instead, a new (and MUCH better) cryptocurrency can be created (or bitcoin can switch to a new protocol) that implements your newly discovered method of distributed consensus INSTEAD of a proof-of-work blockchain.

hero member
Activity: 1582
Merit: 502
Danny thanks for your input and advice man.
You seem to have knowledge on the subject yet I don't see you making any suggestions - which is a shame.

Can I ask what your profession is?

legendary
Activity: 3472
Merit: 4801
do you really think someone can control 50% of "full nodes" ?
Yes, and for less cost than controlling 51% of the hashpower.  

It is a very well known attack called a Sybil Attack. It's been a known attack against trust systems since before 2002, but gained the name in 2002 (7 years before bitcoin was created).

If we could identify and trust a "majority of nodes", we wouldn't need a proof-of-work blockchain.
legendary
Activity: 1260
Merit: 1029
do you really think someone can control 50% of "full nodes" ?

Yes, and for less cost than controlling 51% of the hashpower. 

If that's true ( i dont know cost behind it so i cant really argue againts it) than you win by this argument.
legendary
Activity: 1162
Merit: 1007
do you really think someone can control 50% of "full nodes" ?

Yes, and for less cost than controlling 51% of the hashpower. 
legendary
Activity: 1162
Merit: 1007

Nah, it's not even that complicated.  No cabal needed.  The miner with 51% can just use a new identity for every block they submit.  They never need any sort of "priority", since that identity will never submit more than 1 block.


LOL, yes.  It's difficult to implement the rule: "new identities can't submit blocks until they've submitted a block."
legendary
Activity: 1260
Merit: 1029
How would ANYONE exclude anyone else this way? If my pool is not changing IP it wont loose it's priority and anyone else can gain that priority by simply being steady (not changing ip) and mining. What are you talking about?

You said you wanted new IP addresses to have smaller priority than established IP addresses.  In other words, you wanted to build barriers to entry and a hierarchy of default trust.  You don't see how this could more easily lead to a monopoly?  Once the monopolists are in control, they'll have the highest priority and the highest trust levels.  It would even be possible for respected nodes to "sell" their IP addresses to malicious actors to expedite the formation of the monopoly.  

We don't need to analyze the dynamics of your proposal any further because the equilibrium state can be identified as monopolistic.  

Noone could be in control, as trust would be assinged from whole network (not only miners, but all full nodes). You get "because you have steady ip and you mine" you dont "mine" priority. All full nodes on network agree on proirity....do you really think someone can control 50% of "full nodes" ?
legendary
Activity: 3472
Merit: 4801
Ok screw this. I have too much "trust" in human intelect. I should have known that barely anyone will read my post with at least half brain turned on, so here it is again, stupid proof and changed so no "trust" is involved:
It's not that.
- snip -  

Actually in my case it is exactly that.  I've discovered recently that 99% of the people with "PRIMEDICE" ads in their sig don't know what they are talking about and fill this forum with necro posts and nonsense.  Therefore, I've instituted a policy of clicking the "ignore" link as soon as I see that someone has a "PRIMEDICE" ad. Therefore, I can't see your posts, and I therefore don't read them.  I only see them if someone else quotes them in a response.

If I see anything in those response quotes that indicates that the "PRIMEDICE" advertiser is part of the 1% that has anything intelligent or useful to say, then I go back and "unignore" them.  So far, I haven't seen anything you've said that has made me feel like I should "unignore" you.

Quote
Well this idea can be extended. Add in some kind of "proirity" level to nodes that nodes gain working over period of time. Priority would be assigned by whole network which is basic idea of BTC....things being decided by whole newtork.
New nodes would have low priority level which would have more restrictions (they could submit less blocks).
Higher priority level nodes would have less restrictions (they could submit more blocks than low priority nodes).

But now you've opened yourself up to a more insidious form of attack.  A cabal of miners can work towards cutting out nodes to decrease their priority levels relative to that of the cabal.  A monopoly forms where the cabal has high-enough priority that they are essentially in control.  

In other words, you are proposing "barriers to entry."  This is exactly what monopolists want to reap profits and control greater than what they would be due in an efficient market.  

Nah, it's not even that complicated.  No cabal needed.  The miner with 51% can just use a new identity for every block they submit.  They never need any sort of "priority", since that identity will never submit more than 1 block.
legendary
Activity: 1162
Merit: 1007
How would ANYONE exclude anyone else this way? If my pool is not changing IP it wont loose it's priority and anyone else can gain that priority by simply being steady (not changing ip) and mining. What are you talking about?

You said you wanted new IP addresses to have smaller priority than established IP addresses.  In other words, you wanted to build barriers to entry and a hierarchy of default trust.  You don't see how this could more easily lead to a monopoly?  Once the monopolists are in control, they'll have the highest priority and the highest trust levels.  It would even be possible for respected nodes to "sell" their IP addresses to malicious actors to expedite the formation of the monopoly.  

We don't need to analyze the dynamics of your proposal any further because the equilibrium state can be identified as favouring the monopoly.  
legendary
Activity: 3472
Merit: 4801
Not necessarily bro.
There can be a side chain directly connected to the blockchain but this one will be the node chain where ALL nodes agree.

And a miner can gain 51% in the side chain, so then you need a side chain for the side chain. But, someone could gain 51% in that sidechain, so you need a side chain to the side chain to the side chain.

Do you see the problem yet?

I do not understand why people just say Fuck it, things are fine the way it is when clearly IT'S NOT.

People are looking for solutions (including you).  Hopefully some who actually understands the problem will find an actual solution, but it may take decades.  It took decades of some of the most educated minds in the world thinking about distributed consensus before we arrived at the Bitcoin solution.

We have witnessed a $100+ drop by the incident.

Exchange rate doesn't really matter to me.  Either Bitcoin is useful, or it isn't.  The exchange rate doesn't determine that, it just indicates the current economic state of supply and demand.

A lot of people will lose a lot of money because the most important thing that keeps BTC and actually defines BTC was NOT protected.

Then they shouldn't be putting money into it.  It is new and is very risky. These issues are very well known since the first whitepaper by Satoshi was released.

the blockchain is like a virgin.
We are now allowing anyone who has the biggest dick to stick it to it.

This is a horrible analogy and does nothing to move the discussion in a useful direction.  Are you 12 years old?

Understand that I am all forward seing BTC succeed and I have invested quite a lot on it.
But if we (ALL OF US) want to see our investment secure we have to act now.
Before it's too late.

Don't invest in things you don't understand.  This weakness was known from the very beginning.  People have been interested in a solution without this weakness all along.  All the bad ideas are brought up over and over by people who don't bother learning from the discussions of the past.

Maybe you don't like my idea.

It's not that I don't like your idea. It's that you haven't explained a way for your idea to work.  Presenting an idea that won't work, and then getting upset when people point out that it won't work is rather silly.  You have an idea.  We've pointed out the flaws in the idea.  Either find a way to fix the flaws, or move on to a new idea.  Continuously saying "but I want my idea to work" isn't going to fix it.

I can understand that, but ideas and actual solutions to this problem don't just pop up.
We need to work and build on ideas to have a working solution.

So get working, and stop wasting time trying to say that the flaws in your idea don't exist.
Pages:
Jump to: