Pages:
Author

Topic: Specialized hardware and the "nuclear option" for >50% attacks (Read 2212 times)

newbie
Activity: 67
Merit: 0
Why don't we develop a coin where the proof of work is general purpose problem solver ?

One does not simply develop a coin where the proof of work is a general purpose problem solver. It would be very useful if that could be done, but as far as I know no one has found such a proof of work algorithm. It would have to be expensive to compute, with difficulty adjustable over a large range of values, easy to verify and capable of being tied to the hash of a specific block in the chain.

I think it is not simple to do but it would be amazing.

My idea is to develop a system where anyone can submit problems to be solved the submission must follow specific rules / language.

We need a verification procedure , the problem must be difficult to compute , more than the verificability , well defined for a parallel solver.

The difficulty over the time pheraps can be solved simply by the fact the system solve first simple instances of the problem because are more easy.

We have to find a way to tie to a specific block , etc...

OK , I am optimistic on solving these issues , the problem is how can we compare different problems which others? If I spent a lot of computational power in solving an instance I1 of a problem P1 this must be a of different value from solving an instance I2 of problem P2 and the reward must be different .
We can adjust the reward in automatic on how many instances of the problem are solved during the time in the network such that the system can change how much computational power give to every problem.
Another big problem I see is how to choose  which problems to solve , how the system can select "useful" problems? We can submit absolutely useless problems well suited for the techincism of the system . How can the system choose the best problems ? There can be relatively simples and usefull problems and others relatively difficult and useless  . Pherhaps this is too much.

I am very interested in developing a system in this direction , it would be very interesting to see discussions on this direction .
hero member
Activity: 714
Merit: 500
Martijn Meijering
Why don't we develop a coin where the proof of work is general purpose problem solver ?

One does not simply develop a coin where the proof of work is a general purpose problem solver. It would be very useful if that could be done, but as far as I know no one has found such a proof of work algorithm. It would have to be expensive to compute, with difficulty adjustable over a large range of values, easy to verify and capable of being tied to the hash of a specific block in the chain.
newbie
Activity: 67
Merit: 0
Any option chosen will have specialized HW created if successful.

I agree . The problem is with sha specialized hardware asics . I don't think it is dengerous for the coin but it is a loss of opportunity .
The network of bitcoins has a computational power of 80Thash and it is about 80Petaflops (?) . If it is not the most computational powerfull network it can become it .

Why don't we develop a coin where the proof of work is general purpose problem solver ?
hero member
Activity: 798
Merit: 1000
I recently heard Dan Kaminsky mention in his recent article: http://www.wired.com/opinion/2013/05/lets-cut-through-the-bitcoin-hype/ that a mining algorithm friendly to general purpose hardware is superior because it is more inclusive to "the masses", as it wouldn't require specialized hardware to participate, and thus mining would be that much more decentralized.

I haven't read the article yet, but I agree with that proposition.

Quote
I doubt this is much of an advantage though, as most people would have to buy high end general purpose hardware specifically to mine anyway in order to remain competitive and profitable, and the barrier to entry for running specialized hardware (ASICs) will soon be just as low.

In a system such as bitcoin's where everyone fights over a piece of the same pie, this is accurate. However, if mining doesn't secure the network, and coins are generally only created when it is profitable to do so, and you provide a system where only a small profit is made from mining, you have the basis for a currency that is ASIC-resistant because the profitability angle simply isn't there--regardless of the hashing algorithm.

Quote
Furthermore, having a mining algorithm require specialized hardware appears to be a great strength.  E.g. suppose an attacker amasses >50% of total hashing power.  Then the network could (as a last resort) swap out the mining algorithm, and render all of his equipment useless for attacking the new system and for resale. With general purpose equipment, he could keep attacking the new mining algorithm, or resell his equipment to recoup some of his costs.

If you separate network security from mining, this isn't an issue. General purpose hardware can either profitably or unprofitably create money without threatening network security. If the intent is to cause inflation, the attacker is burning value at a consistent loss. If it is unprofitable and there aren't any irrational actors in play, no new money is created.

Quote
While the honest miners would lose all of their investment (this should be considered an inherent risk of being in the mining business), they still collectively lose less than the attacker.

You are willing to cause billions of losses in the form of having to buy new specialized hardware for honest people to not only create the rest of the money supply, but also to secure the network. This is terribly inefficient, and it means the attacker has probably achieved his objective of crashing the network. This isn't a "win" by any means. Instead voting to switch the algorithm to something that is again friendly to general purpose hardware is the solution if an attacker has spent millions creating a specialized one.

For some ideas on how to really fix these problems, I have proposed Decrits. The link is in my signature.
hero member
Activity: 714
Merit: 500
Martijn Meijering
Learn what an ASIC is please

Maybe you should learn what scrypt is.
hero member
Activity: 714
Merit: 500
Martijn Meijering
Picking a hard algorithm like scrypt doesn't mean that there won't ever be an ASIC for it, it just means that developing that ASIC will be harder, which means that different people will be doing it.

Scrypt isn't harder than SHA, it just takes a lot more memory, making the performance difference between CPU and ASIC-implementations smaller. If the intent was to keep CPUs competitive it appears to have failed though, since GPUs are still a lot faster for it than CPUs.
sr. member
Activity: 461
Merit: 251
In one of the several other threads discussing this exact same topic, I argued that it is best to use an algorithm that is simple enough for casual people to implement (as an ASIC) with a modest budget.

At least 4 groups now have implemented bitcoin mining as an ASIC, in (relatively) short times, with (relatively) little capital.  More are sure to follow.

If some algorithm can be done on a general purpose computer, then a special computer can be made which can do it better (by whatever measure of better).  The question really comes down to "How much effort (time and/or capital) does it take for how much of an improvement?"

Picking a hard algorithm like scrypt doesn't mean that there won't ever be an ASIC for it, it just means that developing that ASIC will be harder, which means that different people will be doing it.

We want ASIC development to be possible for kids in their garages, and it would be extremely foolish to lock them out of the game.  Even more foolish when you consider that we are incapable of barring more powerful entities from doing it anyway.
Right, that's my conclusion as well.

My point about >50% attacks being manageable by the "nuclear option" (swapping out the mining algorithm) - and likely completely deterred by its economics which I described - stands if ASICs are sufficiently more economical than general purpose hardware.  I'm only trying to point out that this is an effective recourse/deterrent to >50% attacks on ASIC-friendly mining algorithms.
legendary
Activity: 1148
Merit: 1008
If you want to walk on water, get out of the boat
Quote
ASICs are faster than CPU's at SHA-256. They're not necessarily faster at scrypt. I'm actually doing a lot of work in this space, stay tuned.
This is nonsense.

Learn what an ASIC is please
hero member
Activity: 714
Merit: 500
Martijn Meijering
So, you probably won't believe me if I tell you that the first bitcoin ASIC was developed like 2 years ago, by one guy.  Right?

I think you mean an FPGA, that is certainly possible and impossible to suppress too. But that would not be enough to stop an onslaught of government-monopoly ASICs if the algorithm strongly favours ASICs.
kjj
legendary
Activity: 1302
Merit: 1026
In one of the several other threads discussing this exact same topic, I argued that it is best to use an algorithm that is simple enough for casual people to implement (as an ASIC) with a modest budget.

Casual and ASIC don't go together. Not even if governments don't interfere, let alone if they do.

So, you probably won't believe me if I tell you that the first bitcoin ASIC was developed like 2 years ago, by one guy.  Right?
hero member
Activity: 714
Merit: 500
Martijn Meijering
In one of the several other threads discussing this exact same topic, I argued that it is best to use an algorithm that is simple enough for casual people to implement (as an ASIC) with a modest budget.

Casual and ASIC don't go together. Not even if governments don't interfere, let alone if they do.
legendary
Activity: 2324
Merit: 1125
You're making the exact same argument I've been making all across the first page of this thread. It doesn't seem to come across though  Undecided
kjj
legendary
Activity: 1302
Merit: 1026
In one of the several other threads discussing this exact same topic, I argued that it is best to use an algorithm that is simple enough for casual people to implement (as an ASIC) with a modest budget.

At least 4 groups now have implemented bitcoin mining as an ASIC, in (relatively) short times, with (relatively) little capital.  More are sure to follow.

If some algorithm can be done on a general purpose computer, then a special computer can be made which can do it better (by whatever measure of better).  The question really comes down to "How much effort (time and/or capital) does it take for how much of an improvement?"

Picking a hard algorithm like scrypt doesn't mean that there won't ever be an ASIC for it, it just means that developing that ASIC will be harder, which means that different people will be doing it.

We want ASIC development to be possible for kids in their garages, and it would be extremely foolish to lock them out of the game.  Even more foolish when you consider that we are incapable of barring more powerful entities from doing it anyway.
hero member
Activity: 504
Merit: 500
I recently heard Dan Kaminsky mention in his recent article: http://www.wired.com/opinion/2013/05/lets-cut-through-the-bitcoin-hype/ that a mining algorithm friendly to general purpose hardware is superior because it is more inclusive to "the masses", as it wouldn't require specialized hardware to participate, and thus mining would be that much more decentralized.  I doubt this is much of an advantage though, as most people would have to buy high end general purpose hardware specifically to mine anyway in order to remain competitive and profitable, and the barrier to entry for running specialized hardware (ASICs) will soon be just as low.

Furthermore, having a mining algorithm require specialized hardware appears to be a great strength.  E.g. suppose an attacker amasses >50% of total hashing power.  Then the network could (as a last resort) swap out the mining algorithm, and render all of his equipment useless for attacking the new system and for resale. With general purpose equipment, he could keep attacking the new mining algorithm, or resell his equipment to recoup some of his costs.  While the honest miners would lose all of their investment (this should be considered an inherent risk of being in the mining business), they still collectively lose less than the attacker.  As long as there remains sufficient profit motive to mine - i.e. BTC remains valuable - then ASICs for the new algorithm should be quickly forthcoming to the market while CPUs/GPUs pick up the slack, and any attacker wishing to continue this attack will quickly go bankrupt as he's up against the capital stock of the whole world.

The damage the attacker does - e.g. the drop in BTC value - can be mitigated if such a response is understood by all to always be potentially necessary, and perfectly within the realm of manageability (it seems to me to be, unless I'm missing something).  "Fire drills" might even be done in advance, which would undoubtedly inspire confidence.

tldr; If the mining network relies on specialized rather than generalized hardware, then there is a "nuclear option" available to deal with and deter >50% attacks.
For any algorithm can be build a specialized hardware but for some it is more easy to do it. Specialized hardware friendly algorithm has its advantages but asic unfriendly algorithm also.
- For an asic attack it is  needed to invest in asics which should generate 51% of the future hashrate when the attacking  asics are in work so it must be more then the actual hashrate.
Beside of this by an asic attack the identity of attacker is known so the attacker must calculate with some legal consequences unless he puts his asics in a country like Somalia.
- Asic unfriendly algoritm based currencies are more susceptible to Google cluster like or botnet attacks. For cluster attacks they are the same legal consequences like for asic attacks because they may be performed from already existing clusters. Botnet attacks are anonymous and such an attacker doesn't have to face legal consequences because he could remain hidden. However if botnets are put to mine the assic unfriendly currency they could  even improve its security.
- Another aspect is the energy efficiency. by the same level of security the asic mining is more energy efficient.
- Which one is more decentralized ? The asic unfriendly looks to be more decentralized at the first look but if you look on closer this aspect is very unimportant.
Much more threat to decentralization is on the level of the mining pools and PC miner 99.99% are mining in a pool.
Asic miner can afford to mine solo so on the level of the mining pool it is more decentralization by asic mining.

hero member
Activity: 714
Merit: 500
Martijn Meijering
CPU Friendly = botnet friendly

Unfortunately there are downsides with each approach.

Good point.
legendary
Activity: 1386
Merit: 1004
No, in general people won't mine at a loss. You are forgetting about the power it costs to run HW.

What I meant is that with a CPU-friendly algorithm, society as a whole has the means at its disposal to thwart a 51% attack. It doesn't mean that people would be mining for a profit. For similar reasons the Framers of the US Constitution didn't want standing armies and stipulated that the right to bear arms (i.e. militarily useful ones) should not be infringed.

CPU Friendly = botnet friendly

Unfortunately there are downsides with each approach.  What we really need is more ASICS evenly distributed. 
legendary
Activity: 1386
Merit: 1004
If something is slightly superior int he end it will be the only thing that survives. For all intended purposes slightly superior is completely identical to radically superior.

No, people will continue to use general purpose CPUs precisely because they are general purpose devices that are mainly used for other purposes. This means there is a large pool of computing power outside government or corporate control that can be used to secure a block chain and prevent a 51% attack. ASICs could threaten that.

No, in general people won't mine at a loss. You are forgetting about the power it costs to run HW.

This has already been proven to be false. 
hero member
Activity: 714
Merit: 500
Martijn Meijering
If I thought it would make a difference I'd be running a miner on my PC right now.
legendary
Activity: 2324
Merit: 1125
No, in general people won't mine at a loss. You are forgetting about the power it costs to run HW.

What I meant is that with a CPU-friendly algorithm, society as a whole has the means at its disposal to thwart a 51% attack. It doesn't mean that people would be mining for a profit. For similar reasons the Framers of the US Constitution didn't want standing armies and stipulated that the right to bear arms (i.e. militarily useful ones) should not be infringed.

Okay, then I reject that as well Smiley

I don't think people will do that.
hero member
Activity: 714
Merit: 500
Martijn Meijering
No, in general people won't mine at a loss. You are forgetting about the power it costs to run HW.

What I meant is that with a CPU-friendly algorithm, society as a whole has the means at its disposal to thwart a 51% attack. It doesn't mean that people would be mining for a profit. For similar reasons the Framers of the US Constitution didn't want standing armies and stipulated that the right to bear arms (i.e. militarily useful ones) should not be infringed.
Pages:
Jump to: