Live data from Hacker News

Cost of a 51% attack for different cryptocurrencies?

crypto51.app

111–120 of 134 posts

Re: Cost of a 51% attack for different cryptocurrencies?

#111

Earlier quoted context omitted.

All miners connect to pools using a protocol called stratum. This is JSON piped over TCP with newline terminations. There is no authentication for this protocol and no encryption. You can simply intercept the communication here and have all the miners on a pool actually mine for your replacement pool, and nobody will ever catch on until its far too late. > If you mean the traffic of mining pools communicating their s…

When I was toying around with mining some alt coins with GPUs a few years back I had the thought when joining a mining pool on say supernova, what is to prevent someone from doing an attack and convincing the pool to send my coins to them instead at a level 'under the hood' and beyond my understanding. Or get the entire pool to act in a way that is for their own personal gain. I know there had been guides on how to s…

If you kept all of the coins from a pool, you'd be caught.

But would I ever know if you lied about the pool's GH/s rate and kept half of the coins?

Re: Cost of a 51% attack for different cryptocurrencies?

#113
post #51

Computational power is not a good proof of anything. It devours energy and disproportionately rewards weird market actors (like people with custom mines ASICs). I always wondered whether storage could be used as proof of stake. It might use less energy and it probably will have much better effect on the IT industry as a whole. First, mining ASICs are not general computational devices and cannot be used for anything u…

There are some IPFS people who talk about proof of having stored files, but I was never satisfied with their fraud detection techniques.

Can you prove that one copy of your data is being stored? Yes.

Can you prove that three copies of your data are being stored? I haven't seen any scheme that can detect if I'm pretending to be multiple people, serving files from the same disk array over multiple network connections.

Re: Cost of a 51% attack for different cryptocurrencies?

#114

Earlier quoted context omitted.

When I was toying around with mining some alt coins with GPUs a few years back I had the thought when joining a mining pool on say supernova, what is to prevent someone from doing an attack and convincing the pool to send my coins to them instead at a level 'under the hood' and beyond my understanding. Or get the entire pool to act in a way that is for their own personal gain. I know there had been guides on how to s…

If you kept all of the coins from a pool, you'd be caught. But would I ever know if you lied about the pool's GH/s rate and kept half of the coins?

You can probably assume that most pools are skimming or cheating in some way, they'd never be caught.

Re: Cost of a 51% attack for different cryptocurrencies?

#115
post #41

Earlier quoted context omitted.

The thing is, what you can do with a 51% attack is very limited and the big services are probably going to be aware of it. Best case scenario is that you halt transactions for a few hours. This will cost a few million dollars with, maybe, no possible reward. The next problem is that this calculation is based on the current hash-rate cost. However, you don't have that much hardware and it'll be close to impossible to…

You can do much better than that! The simplest way to profit from a 51% attack is to send some coins to a crypto exchange, wait for the required 'n' blocks to confirm your deposit, then 51% attack the chain to remove your original payment. At the same time, you can either withdraw your ill-gotten coins from the exchange, or trade them for something else and withdraw onto a different blockchain entirely. This mechanis…

But don't most exchanges have a bigger delay for withdrawing? In order to escape with anything, you would have to withdraw before the exchange was aware of the double-spend, and at that point, they'd freeze your account. The exchange might be on the hook for honoring the phantom coins other users think they bought, but you haven't profited. Am I missing something?

Re: Cost of a 51% attack for different cryptocurrencies?

#116
post #60

There is absolutely no way to 51% attack a major coin like Bitcoin for as little as $700k an hour. They are extrapolating from Nicehash's mining rental prices, but Nicehash doesn't have anything like the capacity you'd need. You can see here[1] that nicehash has about 500 PH/s (500,000 TH/s) available for rent. However, Bitcoin's total hash rate right now is 100,000,000 TH/s[2]. This means that if you rented out the…

Nicehash has .99% of what you need to have 51% of the hashrate, not .5%. But that's still too tiny. However. You don't need 51% of the hashes to have the longest chain. The longest chain is a lottery. If you had 25% of the TH/s out there, there are 3x as many hashes you don't control as do. The odds are 1:3 that you will still find the next hash. If that weren't the case, there'd be no point at all in me having .0001…

If you had 1/4 the hash power, it's true that you have 1/4 chance of creating a block before anyone else, but to be clear, doing that once isn't enough to do a double-spend attack of a transaction with some N confirmations (usually people would aim for N=6). There's only a 2% chance an individual attempt would pull that off for 6 confirmations in a row when using 1/4 the global hash power, and the whole time you're attempting this, your hash power isn't making money mining unless you succeed. On average, you would make $144,000 just from the block rewards from mining for that much time with 1/4 global hashpower, so the expected amount of failures are very expensive in opportunity costs. If I'm doing probability right, then at a 2% chance, you could expect to fail about 25 times on average before succeeding, so 25 failures adds up to $3.6 million of expected opportunity cost. (This isn't counting the cost in acquiring 1/4 global hashpower to begin with.) You would have to double-spend a lot of transactions to make that worth it, and people are probably going to wait for more than 6 confirmations on bigger transactions, which means a much larger attack would have to be done to target those.

Re: Cost of a 51% attack for different cryptocurrencies?

#117

Earlier quoted context omitted.

Nicehash has .99% of what you need to have 51% of the hashrate, not .5%. But that's still too tiny. However. You don't need 51% of the hashes to have the longest chain. The longest chain is a lottery. If you had 25% of the TH/s out there, there are 3x as many hashes you don't control as do. The odds are 1:3 that you will still find the next hash. If that weren't the case, there'd be no point at all in me having .0001…

If you had 1/4 the hash power, it's true that you have 1/4 chance of creating a block before anyone else, but to be clear, doing that once isn't enough to do a double-spend attack of a transaction with some N confirmations (usually people would aim for N=6). There's only a 2% chance an individual attempt would pull that off for 6 confirmations in a row when using 1/4 the global hash power, and the whole time you're a…

If you add opportunity cost and renting cost, you are double counting.

Assuming you can repeat your "totally legit" setup transactions until you succeed, with minimal cost other than rent, you would need to take more than either the opportunity cost (otherwise it's better to just mine), or the renting cost (otherwise you're still losing money).

Re: Cost of a 51% attack for different cryptocurrencies?

#118
post #78

Earlier quoted context omitted.

Can you clarify what you mean by hijacking mining traffic? If you mean the traffic of mining pools communicating their solutions to the pool's "mother brain", those are already cryptographically attached to a solution that pays out to specified addresses. You can't substitute the transactions in the block/solution without redoing the PoW. That's why miners can't steal a pool's solutions to begin with.

All miners connect to pools using a protocol called stratum. This is JSON piped over TCP with newline terminations. There is no authentication for this protocol and no encryption. You can simply intercept the communication here and have all the miners on a pool actually mine for your replacement pool, and nobody will ever catch on until its far too late. > If you mean the traffic of mining pools communicating their s…

> You can simply intercept the communication here and have all the miners on a pool actually mine for your replacement pool, and nobody will ever catch on until its far too late.

Depending on what you consider fat too late, doesn't the pool verify the solutions, and provide OOB statistics, where people would notice over time that they get 0 credits?

Re: Cost of a 51% attack for different cryptocurrencies?

#119

Earlier quoted context omitted.

If you kept all of the coins from a pool, you'd be caught. But would I ever know if you lied about the pool's GH/s rate and kept half of the coins?

You can probably assume that most pools are skimming or cheating in some way, they'd never be caught.

Not going to claim they aren't skimming, but is it not possible to calculate expected number of blocks from declared GH/s, expected earnings from user provided MH/s and tell if the pool is excessively "unlucky"?

Re: Cost of a 51% attack for different cryptocurrencies?

#120
post #51

Computational power is not a good proof of anything. It devours energy and disproportionately rewards weird market actors (like people with custom mines ASICs). I always wondered whether storage could be used as proof of stake. It might use less energy and it probably will have much better effect on the IT industry as a whole. First, mining ASICs are not general computational devices and cannot be used for anything u…

There are some IPFS people who talk about proof of having stored files, but I was never satisfied with their fraud detection techniques. Can you prove that one copy of your data is being stored? Yes. Can you prove that three copies of your data are being stored? I haven't seen any scheme that can detect if I'm pretending to be multiple people, serving files from the same disk array over multiple network connections.

> Can you prove that three copies of your data are being stored?

In the context of IPFS, I'm not sure.

If you want to use the (crypto) network as distributed storage, you can shard and encrypt the data (at you 3x or whatever redundancy) and the storage provider is forced to store all of it, at least once.

Some incentives on data durability and availability may be enough to get a reasonable baseline.

Post reply on HN