Author

Topic: 51 percent attack (Read 331 times)

member
Activity: 325
Merit: 26
December 07, 2017, 04:22:23 PM
#13
You are talking about incentives, but I was talking about pure math given in Satoshi's paper.

About ordering. Here

https://en.bitcoin.it/wiki/Weaknesses#Attacker_has_a_lot_of_computing_power

it is claimed that an attacker can change the ordering of transactions. What is the attacker's gain of changing the ordering of transactions?

You're referring to a 51% attack. Changing the order of transaction can mean a lot depending on which transactions.  In an attack scenario it means that the attacker is trying to reverse his transaction.

Say Attacker (Alice) sends all the BTC  from Wallet A and buys something from Bill. And then sends another transaction for the same amount to another wallet she owns (Wallet A2). Bitcoin protocol considers that the first transaction is the valid transaction and all subsequent attempts to double spend this bitcoin to be invalid. In this scenario changing the order of transactions makes all the difference. The moneys are now sent to Wallet A2, Alice has the product from Bill and Bill was defrauded. He will not receive his BTC.

newbie
Activity: 21
Merit: 0
December 07, 2017, 03:40:42 PM
#12
You are talking about incentives, but I was talking about pure math given in Satoshi's paper.

About ordering. Here

https://en.bitcoin.it/wiki/Weaknesses#Attacker_has_a_lot_of_computing_power

it is claimed that an attacker can change the ordering of transactions. What is the attacker's gain of changing the ordering of transactions?
member
Activity: 325
Merit: 26
December 07, 2017, 03:10:11 PM
#11
One needs to find a correct hash to claim a block.  Once you have done this work you need to do it again, again in order for your block to become the longest and for other miners to consider you branch to be the correct one.  If you have half the hash power of the entire network you would expect to get every other block (over time) but, with half the hashpower. it is not inconceivable for you to get 5 blocks in a row (1:32) or even 10 in a row (1:1024).

Today, 2017, it's virtually impossible for one entity (not talking about a mining pool here) to get half the network hashrate. Still - there are scenarios where 51% attacks are possible.
My claim is stronger: with probability 1 a 51% attacker will be successful (as I see it, it follows from Satoshi's paper). What about the ordering question: What is the attacker's gain of changing the ordering of transactions?

Having 51% means that, over time, the attacker will be able to make the longest chain. In today's world that is highly unlikely. You would need to be getting 51% of the hashrate (highly unlikely) and not be detected as someone trying to reverse a transaction. Meaning that if one group of people are consistently adding work to a chain that is one behind the "real" chain - other miners will notice this and wonder why. As the attack continues they will look into the transaction details and find that the attacker is trying to reverse a transaction, then the attacker will be left all by himself. No one will be mining with him.

Again - for the attacker to succeed he needs to have more than 50% of the total hashpower. Why would he spend millions, if not tens of millions of dollars on a 51% attack in order to reverse a transaction? And which receiver of 100,000,000 dollars in bitcoin would not wait at least one full day (144 blocks) before releasing the product?

What ordering question are you referring to? The ordering within a block? Yes. Each miner will order the transactions in slightly differently.
newbie
Activity: 21
Merit: 0
December 07, 2017, 03:00:59 PM
#10
One needs to find a correct hash to claim a block.  Once you have done this work you need to do it again, again in order for your block to become the longest and for other miners to consider you branch to be the correct one.  If you have half the hash power of the entire network you would expect to get every other block (over time) but, with half the hashpower. it is not inconceivable for you to get 5 blocks in a row (1:32) or even 10 in a row (1:1024).

Today, 2017, it's virtually impossible for one entity (not talking about a mining pool here) to get half the network hashrate. Still - there are scenarios where 51% attacks are possible.
My claim is stronger: with probability 1 a 51% attacker will be successful (as I see it, it follows from Satoshi's paper). What about the ordering question: What is the attacker's gain of changing the ordering of transactions?
member
Activity: 325
Merit: 26
December 07, 2017, 02:45:48 PM
#9
Because it can only choose to not confirm/confirm certain transactions, it CAN'T decide for example that all the coins should be sent to the miner's adress.

I would say that "modifying" is the wrong word, rather changing/excluding certain transactions..

These are some better sources:

https://en.bitcoin.it/wiki/Weaknesses#Attacker_has_a_lot_of_computing_power
https://bitcoin.stackexchange.com/questions/658/what-can-an-attacker-with-51-of-hash-power-do
I assume by "it" you mean "an attacker". It seems to me a bit clear now, but... just to make sure I understand it right. Based on my understanding of Satoshi's paper it follows that 51% attacker will be able to extend any block in the chain with probability 1 (provided the attacker has unlimited resources). Is this true?
And my second question: according to your first link:"...exclude and modify the ordering of transactions". What is the attacker's gain of changing the ordering of transactions?

Thanks!

One needs to find a correct hash to claim a block.  Once you have done this work you need to do it again, again in order for your block to become the longest and for other miners to consider you branch to be the correct one.  If you have half the hash power of the entire network you would expect to get every other block (over time) but, with half the hashpower. it is not inconceivable for you to get 5 blocks in a row (1:32) or even 10 in a row (1:1024).

Today, 2017, it's virtually impossible for one entity (not talking about a mining pool here) to get half the network hashrate. Still - there are scenarios where 51% attacks are possible.
newbie
Activity: 21
Merit: 0
December 07, 2017, 01:50:26 PM
#8
Because it can only choose to not confirm/confirm certain transactions, it CAN'T decide for example that all the coins should be sent to the miner's adress.

I would say that "modifying" is the wrong word, rather changing/excluding certain transactions..

These are some better sources:

https://en.bitcoin.it/wiki/Weaknesses#Attacker_has_a_lot_of_computing_power
https://bitcoin.stackexchange.com/questions/658/what-can-an-attacker-with-51-of-hash-power-do
I assume by "it" you mean "an attacker". It seems to me a bit clear now, but... just to make sure I understand it right. Based on my understanding of Satoshi's paper it follows that 51% attacker will be able to extend any block in the chain with probability 1 (provided the attacker has unlimited resources). Is this true?
And my second question: according to your first link:"...exclude and modify the ordering of transactions". What is the attacker's gain of changing the ordering of transactions?

Thanks!
legendary
Activity: 1946
Merit: 1427
December 06, 2017, 04:35:18 PM
#7
The concept is abstract.
To better visualize it, watch from 14:06 where they talk about double-spend, then 51% attack.
https://www.youtube.com/watch?v=Lx9zgZCMqXE

Thanks! If I understand it right, a successful attacker will have to win (solve the puzzles faster than other nodes) several times in a row and create a longer branch. After that all other nodes will follow the rule of extending the longest chain. Right?

"Other miners", yes, the nodes will automatically update/validate the longest chain ( as long the blocks are valid ).
You wouldn't be able to change the ledgers.
https://learncryptography.com/cryptocurrency/51-attack
Could you please elaborate a little on this? According to your link: "Realistically, an attacker would only be able to modify transactions within the past few blocks." How is that not changing the ledgers?

That's exactly what I don't understand. The ledger is distributed, and yet it could be altered by an attacker. Unless an attacker could hack everyone's computer and replace their ledgers with his dishonest version???

Because it can only choose to not confirm/confirm certain transactions, it CAN'T decide for example that all the coins should be sent to the miner's adress.

I would say that "modifying" is the wrong word, rather changing/excluding certain transactions..

These are some better sources:

https://en.bitcoin.it/wiki/Weaknesses#Attacker_has_a_lot_of_computing_power
https://bitcoin.stackexchange.com/questions/658/what-can-an-attacker-with-51-of-hash-power-do
newbie
Activity: 21
Merit: 0
December 06, 2017, 04:25:38 PM
#6
The concept is abstract.
To better visualize it, watch from 14:06 where they talk about double-spend, then 51% attack.
https://www.youtube.com/watch?v=Lx9zgZCMqXE

Thanks! If I understand it right, a successful attacker will have to win (solve the puzzles faster than other nodes) several times in a row and create a longer branch. After that all other nodes will follow the rule of extending the longest chain. Right?
member
Activity: 350
Merit: 13
December 06, 2017, 08:49:49 AM
#5
You wouldn't be able to change the ledgers.
https://learncryptography.com/cryptocurrency/51-attack
Could you please elaborate a little on this? According to your link: "Realistically, an attacker would only be able to modify transactions within the past few blocks." How is that not changing the ledgers?

That's exactly what I don't understand. The ledger is distributed, and yet it could be altered by an attacker. Unless an attacker could hack everyone's computer and replace their ledgers with his dishonest version???

The concept is abstract.
To better visualize it, watch from 14:06 where they talk about double-spend, then 51% attack.
https://www.youtube.com/watch?v=Lx9zgZCMqXE
newbie
Activity: 21
Merit: 0
December 06, 2017, 08:24:30 AM
#4
You wouldn't be able to change the ledgers.
https://learncryptography.com/cryptocurrency/51-attack
Could you please elaborate a little on this? According to your link: "Realistically, an attacker would only be able to modify transactions within the past few blocks." How is that not changing the ledgers?

That's exactly what I don't understand. The ledger is distributed, and yet it could be altered by an attacker. Unless an attacker could hack everyone's computer and replace their ledgers with his dishonest version???
member
Activity: 182
Merit: 17
¯\_(ツ)_/¯
December 06, 2017, 06:08:04 AM
#3
The other nodes will pick up the longest chain, which complies to protocol rules, so if you have enough computing power you can alter the previous block, replacing it with new one, removing a transaction from it, for example.
Vod
legendary
Activity: 3668
Merit: 3010
Licking my boob since 1970
December 06, 2017, 05:27:10 AM
#2
Hello!
I would really appreciate it if someone could clarify the following issue as I'm having hard times understanding how distributed ledger idea is actually implemented in Bitcoin. For simplicity assume that we have 10 miners (nodes in Bitcoin network). As far as I understand all of them have their own copy of the public ledger (right?) that is stored on their computers. Now assume that 1 miner gets 99% of the hash power and becomes dishonest in that he wants to change some of his past transactions. The question is: how is that possible (change past transactions) if he cannot access the ledgers of the other 9 miners? It seems to me that the dishonest miner can change only his own version of the ledger.
Thank you in advance!

You wouldn't be able to change the ledgers.

https://learncryptography.com/cryptocurrency/51-attack
newbie
Activity: 21
Merit: 0
December 06, 2017, 12:11:27 AM
#1
Hello!
I would really appreciate it if someone could clarify the following issue as I'm having hard times understanding how distributed ledger idea is actually implemented in Bitcoin. For simplicity assume that we have 10 miners (nodes in Bitcoin network). As far as I understand all of them have their own copy of the public ledger (right?) that is stored on their computers. Now assume that 1 miner gets 99% of the hash power and becomes dishonest in that he wants to change some of his past transactions. The question is: how is that possible (change past transactions) if he cannot access the ledgers of the other 9 miners? It seems to me that the dishonest miner can change only his own version of the ledger.
Thank you in advance!
Jump to: