Pages:
Author

Topic: Resurrecting the Champ: PoW to become Bitmain/Buterin resistant (Read 1094 times)

legendary
Activity: 1456
Merit: 1174
Always remember the cause!
Sorry, but you are performing worse than Vorick, using analogy (the worst reasoning technique ever) and playing with common sense (the worst playground ever) you are trying to convince people that PoW is deemed to be cracked by some magicians overseas.

I don't need to convince them of anything.  They can see it happening with their own eyes.  All the reasoning in the world isn't going to change the fact that multiple algorithms now have ASICs designed to mine them.  I'll change my mind when, or if, an algorithm is proven to be uncrackable.  

I also don't understand why you're fixating on the geographical locale.  Would hardware that isn't manufactured overseas be more comforting to you somehow?
Now you are using another worthless technique: induction. It will happen because it has happened before!

First of all, it has not happened yet, actually after years of investment, the most important gpu mining algorithm, Ethash, has not been cracked by ASIC (Bitmain's E3 is not an ASIC as i have mentioned earlier) and Monero has managed to mitigate the attack in few days. We will see how easily Z9s will become obsolete similarly.

For instance, a floating point multiplication operation can not be optimized by means of a magical specialized circuit better than what a modern cpu/gpu is optimized for, all that can be cracked by ASICs is the controller unit, the ALU is already optimized in cpu/gpu technology.

Cool, so should I expect to see your algorithm being used in loads of major coins soon, then?  Clearly you've got it all figured out.  An entire multi-billion dollar industry is about to be disrupted by your revelatory interpretation.

Y'know, that, or your idea won't amount to anything.  It's bound to be one or the other.   Roll Eyes

Of course I have good proposals for this problem and I will announce them whenever I found it useful and yes I'm 'nothing' compared to Jihan and his army of engineers and propaganda agents  Wink, but guess what? I'm winning this war because the gpu mining industry is far bigger than Jihan's Bitmain and they will support me and guys like me eventually.
legendary
Activity: 3724
Merit: 3063
Leave no FUD unchallenged
Sorry, but you are performing worse than Vorick, using analogy (the worst reasoning technique ever) and playing with common sense (the worst playground ever) you are trying to convince people that PoW is deemed to be cracked by some magicians overseas.

I don't need to convince them of anything.  They can see it happening with their own eyes.  All the reasoning in the world isn't going to change the fact that multiple algorithms now have ASICs designed to mine them.  I'll change my mind when, or if, an algorithm is proven to be uncrackable.  

I also don't understand why you're fixating on the geographical locale.  Would hardware that isn't manufactured overseas be more comforting to you somehow?


For instance, a floating point multiplication operation can not be optimized by means of a magical specialized circuit better than what a modern cpu/gpu is optimized for, all that can be cracked by ASICs is the controller unit, the ALU is already optimized in cpu/gpu technology.

Cool, so should I expect to see your algorithm being used in loads of major coins soon, then?  Clearly you've got it all figured out.  An entire multi-billion dollar industry is about to be disrupted by your revelatory interpretation.

Y'know, that, or your idea won't amount to anything.  It's bound to be one or the other.   Roll Eyes
legendary
Activity: 1456
Merit: 1174
Always remember the cause!
As widely discused before, it is only a matter of time when ASICS (or just specialized hardware in general) will always arise no matter where you go with the PoW configuration. Just pick any algorithm, and I don't see how these fast as hell machines will not start appearing eventually again, so it's more can down the road kicking.

{bolded by me}
It is not "only a matter of time"  but also a matter of flaw. A well designed algorithm, being significantly memory hard while it is mostly utilizing ALU and vectorized calculations would resist ASIC attacks permanently.

Just like you but on the contrary side, "I don't see" how it is possible to see real  machines that can perform extensive multidimensional parallel calculations with a multi gigabyte memory footprint that are cheaper and more efficient than  a modern gpu. I have to emphasis, a real machine and not a magical chip made in china!
legendary
Activity: 1456
Merit: 1174
Always remember the cause!
As widely discused before, it is only a matter of time when ASICS (or just specialized hardware in general) will always arise no matter where you go with the PoW configuration. Just pick any algorithm, and I don't see how these fast as hell machines will not start appearing eventually again, so it's more can down the road kicking.

{bolded by me}

It is not "only a matter of time"  but also a matter of flaw. A well designed algorithm, being significantly memory hard while it is mostly utilizing ALU and vectorized calculations would resist ASIC attacks permanently.

"I don't see" how it is possible to see real  machines that can perform extensive multidimensional parallel calculations with a multi gigabyte memory footprint that are cheaper and more efficient than  a modern gpu. I have to emphasis, a real machine and not a magical chip made in china!
legendary
Activity: 1456
Merit: 1174
Always remember the cause!
but when it comes to a complex enough problem, an ASIC resistant PoW algorithm, nobody can go further than a state of the art gpu unless s/he manages to become a competitor (and a winner) in gpu market as well.

Nope.  The whole idea is precisely that it won't need to perform in the same way a GPU does, so they don't have to worry about the "very wide range of calculations" a GPU would have to deal with.  That means they can engineer around the problem and focus solely on the calculations they need to worry about to do the "work".  That's why ASICs are faster to mine with than state of the art GPUs.  They are dedicated to one singular purpose.

That's what Vorrick means when he says:
Quote from: David Vorrick
For any algorithm, there will always be a path that custom hardware engineers can take to beat out general purpose hardware. It’s a fundamental limitation of general purpose hardware.


Combinational logic design, is no magic. For instance, a floating point multiplication operation can not be optimized by means of a magical specialized circuit better than what a modern cpu/gpu is optimized for, all that can be cracked by ASICs is the controller unit, the ALU is already optimized in cpu/gpu technology.

For control unit, a memory hard algorithm like Dagger-Hashimoto (Ethash) will enforce fetch operations to become the bottleneck and no optimization will help the hypothetical ASIC design to go beyond what a modern gpu is capable of.

David Vorick is doing his job as a trojan to convince people about inevitability of ASICs by naive claims about 'fundamental limitation of general purpose hardware', I don't take it as a serious technical assertion, instead imo, it is a weak and ridiculous claim for winning a multi billion dollar war.

Quote

It's like the difference between a high performance, yet road-legal, sports car versus a Formula One / NASCAR / Le Mans car.  The latter ones are generally going to be faster because they're purpose built for racing and never have to worry about traffic calming speed bumps like a normal sports car has to cope with.  However, you can bet that if Formula One / NASCAR / Le Mans changed the rules to say the race courses could have speed bumps, the engineers would immediately plow untold sums of money into developing a car that would still be fast over speed bumps.  Hence, why making PoW more complicated isn't going to slow them down for long.

Sorry, but you are performing worse than Vorick, using analogy (the worst reasoning technique ever) and playing with common sense (the worst playground ever) you are trying to convince people that PoW is deemed to be cracked by some magicians overseas.
legendary
Activity: 1372
Merit: 1250
As widely discused before, it is only a matter of time when ASICS (or just specialized hardware in general) will always arise no matter where you go with the PoW configuration. Just pick any algorithm, and I don't see how these fast as hell machines will not start appearing eventually again, so it's more can down the road kicking.

I still see the "random PoW change lottery" approach as the only way to sort of spread around the advantage, so in some cases, some people will have more hashrate, in other cases, others will.

Im not sure how viable is this and if this would help decentralization in practice. What if someone has a massive advantage in a certain hashing algorithm and we are stuck with someone clearly dominating for a while? they could use that time to perform an attack... one would need to make some sort of simulation model before venturing in such a thing.
legendary
Activity: 3724
Merit: 3063
Leave no FUD unchallenged
but when it comes to a complex enough problem, an ASIC resistant PoW algorithm, nobody can go further than a state of the art gpu unless s/he manages to become a competitor (and a winner) in gpu market as well.

Nope.  The whole idea is precisely that it won't need to perform in the same way a GPU does, so they don't have to worry about the "very wide range of calculations" a GPU would have to deal with.  That means they can engineer around the problem and focus solely on the calculations they need to worry about to do the "work".  That's why ASICs are faster to mine with than state of the art GPUs.  They are dedicated to one singular purpose.

That's what Vorrick means when he says:
Quote from: David Vorrick
For any algorithm, there will always be a path that custom hardware engineers can take to beat out general purpose hardware. It’s a fundamental limitation of general purpose hardware.

It's like the difference between a high performance, yet road-legal, sports car versus a Formula One / NASCAR / Le Mans car.  The latter ones are generally going to be faster because they're purpose built for racing and never have to worry about traffic calming speed bumps like a normal sports car has to cope with.  However, you can bet that if Formula One / NASCAR / Le Mans changed the rules to say the race courses could have speed bumps, the engineers would immediately plow untold sums of money into developing a car that would still be fast over speed bumps.  Hence, why making PoW more complicated isn't going to slow them down for long.
legendary
Activity: 1456
Merit: 1174
Always remember the cause!
Would it be worth pursuing the obverse strategy also, i.e. try to target the weaknesses of ASICs when designing the hash algorithm?
That approach in reality becomes: play to the weaknesses of the education of the cryptocoin developers. The sad reality is that nowadays most of the computer science graduates have no idea about logic design and architecture beyond the ubiquitous https://en.wikipedia.org/wiki/Von_Neumann_architecture from 1945. Moreover, after learning what the typical fixed-program ASIC does they are still mentally stuck in the next decade: https://en.wikipedia.org/wiki/Mealy_machine (1955) https://en.wikipedia.org/wiki/Moore_machine (1956).

You really should read the other referenced threads, e.g. "ASICs mining game"

https://bitcointalksearch.org/topic/asics-mining-game-3788591

and the referenced external post https://blog.sia.tech/the-state-of-cryptocurrency-mining-538004a37f9b :

Sia dev, David Vorick, seems to me just like an ordinary hypocrite, a person who attempted a crack against his own aglo, get bribed to do so, probably. The referenced article is a part of his mission and of Bitmain's canonical propaganda these months, discouraging ASIC resistance attempts in PoW domain.

Monero did it and there is nothing Bitmain can do about it with all the resources and talents accumulated in their corporate. And yet cryptonight 7 was just a minor tweak to the algo made in a rush.

There is no flexible ASIC, it is cheap journalism, there is no bar sliding from 0% flexible ASICs to 100% flexible ones(!), it is just a pile of hype and propaganda invented by Bitmain to sustain its dominance in btc mining and expand it to other coins.

Ethash is a solid ASIC resistant algorithm, as Vorick has admitted in his embarrassing article, and I don't believe Bitmain has been able to do much about it and E3 is an architectural attack that enjoys the chaos in ram and gpu market nowadays. It is completely possible to have a practically ASIC proof PoW algorithm. Some ideas has discussed here and there is a lot to discuss more.

Saying that a cpu is an ASIC optimized for Von-Neumann range pf problems, or a gpu for 3D algebra, does not change anything, even for a bit!

Intel,  AMD, Nvidia, ...  chips are optimized chips for a very wide range of calculations, wide enough to make them usable for almost any application. An attacker can do whatever s/he wants with a specific application but when it comes to a complex enough problem, an ASIC resistant PoW algorithm, nobody can go further than a state of the art gpu unless s/he manages to become a competitor (and a winner) in gpu market as well.

legendary
Activity: 2128
Merit: 1065
So, in effect, we should take the opposite approach and lower the bar, not raise it.  If ASICs are inevitable, they should be as widely available as possible.
That is the general idea. Some already been arguing that the common CPUs and GPUs are ASIC, where the Specific Application that they are optimized for is a well known von Neumann architecture or 3D visualization pipeline. So the ball is on the software engineer's side and they need to find how to fully utilize the strength of the devices that everyone and their dog already have.
Make it easier for a greater number of manufacturers to create ASICs, not harder. 
I would reword it to the effect that we don't really need many manufacturers, we need many alternative uses and prospective users for the hardware used for mining.

The software engineers designing PoW algorithms are mostly too focused on how to spoil other's game instead on how to improve their own game.

Anyway, Bitmain responded to the above article:

https://blog.bitmain.com/en/bitmain-sia-state-cryptocurrency-mining/

which will definitely interest the readers.
legendary
Activity: 3724
Merit: 3063
Leave no FUD unchallenged

Fascinating read.  Seems there's even more nuance and intrigue than most people realise.  The takeaway is that if general purpose hardware can do it, custom hardware can do it faster.  So adding more complexity or a larger number of randomly drawn algorithms isn't going to help:

Quote from: David Vorrick
At the end of the day, you will always be able to create custom hardware that can outperform general purpose hardware. I can’t stress enough that everyone I’ve talked to in favor of ASIC resistance has consistently and substantially underestimated the flexibility that hardware engineers have to design around specific problems, even under a constrained budget. For any algorithm, there will always be a path that custom hardware engineers can take to beat out general purpose hardware. It’s a fundamental limitation of general purpose hardware.

So, in effect, we should take the opposite approach and lower the bar, not raise it.  If ASICs are inevitable, they should be as widely available as possible.  Make it easier for a greater number of manufacturers to create ASICs, not harder. 

That's the argument most Libertarians take when it comes to firearms, isn't it?  Everyone should have one so that no one can take advantage?  It's not an argument I agree with when it comes to guns, but I think it fits nicely here.
legendary
Activity: 2128
Merit: 1065
Would it be worth pursuing the obverse strategy also, i.e. try to target the weaknesses of ASICs when designing the hash algorithm?
That approach in reality becomes: play to the weaknesses of the education of the cryptocoin developers. The sad reality is that nowadays most of the computer science graduates have no idea about logic design and architecture beyond the ubiquitous https://en.wikipedia.org/wiki/Von_Neumann_architecture from 1945. Moreover, after learning what the typical fixed-program ASIC does they are still mentally stuck in the next decade: https://en.wikipedia.org/wiki/Mealy_machine (1955) https://en.wikipedia.org/wiki/Moore_machine (1956).

You really should read the other referenced threads, e.g. "ASICs mining game"

https://bitcointalksearch.org/topic/asics-mining-game-3788591

and the referenced external post https://blog.sia.tech/the-state-of-cryptocurrency-mining-538004a37f9b :

An idea I've been fond of in the past is using a series of hash algos drawn randomly from a set, with the series also changing size randomly within a range, and a random interval between changes in the composition and size of the series (credit to Meni Rosenfeld for that idea).
If Meni really proposed this that this is just a proof that he would have flunked the basic logic design course using an FPGA as a teaching aid. It is now being actively demolished in the other thread https://bitcointalksearch.org/topic/diy-fpga-mining-rig-for-any-algorithm-with-fast-roi-3459858 , profitable even when paying outrageous charges for the Amazon's EC2 F1 instances ($1.65 $0.495 per Hour) . That idea is now implemented by altcoins using x16r, x16s and similar algorithms.
But could there be other techniques to use the same strategy? Could a hash be written such that the potential for physical flaws in an attempted ASIC chip die would undermine the manufacturing yield, e.g. force chip designers to make individual chips that would need to be >30 cm2?
You were educated in humanities, didn't you? Try finding the essay from Bruce Schneier where he explains why in order to design a strong cipher one does need experience in cipher-breaking. It is not enough to simply pile-on the complexity. In my experience his argumentation was convincing to the people with education in humanities.

Edit: corrected the Amazon's pricing point for F1.
legendary
Activity: 3430
Merit: 3071
a non-trivial portion of the more complex parts of the instrucion set
Yeah, that is the key.

At the moment I don't have time to write a longer discussion, so for now I'll repost what I wrote in another thread. We'll see which of those new threads will get most intelligent discussion.

As a miner, this frightens me because when this era of "flexible ASICs" arrive, GPU miners will definitely be obsolete. Add this to the threat of Ethereum going POS, it seems like the odds are stacked against us regular home-based miners. This might be a signal that now is a good time to liquidate mining rig assets and just directly invest in coins.

But the general idea is very simple: if you don't want your XYZ devices to become, play to their strengths in designing the hash function.

Would it be worth pursuing the obverse strategy also, i.e. try to target the weaknesses of ASICs when designing the hash algorithm?


An idea I've been fond of in the past is using a series of hash algos drawn randomly from a set, with the series also changing size randomly within a range, and a random interval between changes in the composition and size of the series (credit to Meni Rosenfeld for that idea).

But could there be other techniques to use the same strategy? Could a hash be written such that the potential for physical flaws in an attempted ASIC chip die would undermine the manufacturing yield, e.g. force chip designers to make individual chips that would need to be >30 cm2?
legendary
Activity: 2128
Merit: 1065
a non-trivial portion of the more complex parts of the instrucion set
Yeah, that is the key.

At the moment I don't have time to write a longer discussion, so for now I'll repost what I wrote in another thread. We'll see which of those new threads will get most intelligent discussion.

As a miner, this frightens me because when this era of "flexible ASICs" arrive, GPU miners will definitely be obsolete. Add this to the threat of Ethereum going POS, it seems like the odds are stacked against us regular home-based miners. This might be a signal that now is a good time to liquidate mining rig assets and just directly invest in coins.
The thing is that it is relatively easy to write hash function that are very ASIC-proof or FPGA-proof.

Bytom folks are a good example. Their goal was not to be general-ASIC-proof but to make sure that the ASIC that is fast at implementing their hash it their ASIC. So they wrote a hash function that uses lots of floating point calculations exactly in the way that their AI-oriented ASIC does. The hard part of understanding Bytom's "Tensority" algorithm is finding exact information about the actual ASIC chips that are efficient doing those calculations.

But the general idea is very simple: if you don't want your XYZ devices to become, play to their strengths in designing the hash function.

For XYZ==GPU start with GPUs strengths. I haven't studied the recent GPU universal shader architecture, but the main idea was to optimize particular floating point computation used in 3D graphics using homogeneous coordinates, like AX=Y, where A is 4*4 matrix and X is 4*1 vector where w==1. So include lots of those in your hash function. In particular GPUs are especially fast when using FP16, a half-precision floating point.

For XYZ==CPU made by Intel/AMD using x86 architecture, again start with their strengths. They have unique FPU unit with unique 10-byte floating point format and unique 8-byte BCD decimal integer format. Additionally they have dedicated hardware to compute various transcendental functions. So use a lot of those doing chaotic irreducible calculations like https://en.wikipedia.org/wiki/Logistic_map or https://en.wikipedia.org/wiki/Lorenz_system . Of course one could write an emulation of those formats using quad-precision floating point (pairs of double-precision floats), but it will take many months.

During those months you have additional time to research more strengths of your GPUs or CPUs. Use them in a hard-fork to assure that the preferred vendor of your mining hardware continues to be Intel/AMD/Nvidia.
jr. member
Activity: 44
Merit: 1
@ir.hn:

My algo is derived from a block cipher I built some years ago.  The most significant feature of that cipher is an arbitrary block size, typically a few megabytes.  It only provides one of the requirements that I think the 'ideal' asic-resistant algo should have, a very high memory-to-thread ratio.  

The ideal algo would also take advantage of other, expensive to duplicate, features of the common PC.

My project will be a proof-of-concept level effort only in that it will focus on only two of the performance characteristics that are hard to duplicate without spending nearly as much money as the core of a modern PC.  Specifically, I will limit my project to 1) Large memory-per-core, and 2) efficiently utilize the large caches in a PC.  As such, it will not attempt to be the ultimate 'asic-proof' finished product.

Therefore, it would still leave a significant cost gap that a purpose-built device could take advantage of -- but would eliminate the huge margins that current asics enjoy over PC's and GPU's.  By greatly reducing that gap, PC's would be competitive.  In fact, since PC's are already deployed with their costs justified in totally different ways, they are essentially free for the purposes of this algo.  

Current asics are economically viable only because PC's are so astoundingly inefficient at mining most algos.  An algo designed to require, for example, huge memory-per-thread,  a non-trivial portion of the more complex parts of the instrucion set, and large and very fast caches, would make an asic much more expensive to produce -- and it would *not* have an outsized performance margin above the PC.  Yet, they would still have to be designed and built from scratch to compete in only the one area.

Thanks for the thoughtful article.  I'm working in a similar area and thought I'd add my own perspective on how to deal with the  centralization-as-an-attack  cryptocurrency problem.

We seem to agree on the idea that the best defense against ASIC's (and other approaches that fill the same functional and economic niche) is an economic defense.   For example, my approach to POW is to leverage PC's in a way that is uneconomic to duplicate in a fixed-purpose device.  Since many people already own PC's their machines don't have to be counted as part of the cost of decentralized POW.  

On the other hand, someone building a dedicated mining farm would have to outlay *extra* money to compete with something that the decentralized community already has in abundance.  

This approach failed for bitcoin because the POW algo was too trivial; it required only a few instructions of the CPU and a tiny amount of memory.  A $1000 PC was making use of only a tiny fraction of its cost for mining.  This left a huge window for exploitation by ASIC's (and GPU's).

A better approach would have been to use more instructions and more complex instructions as well as far more memory in the POW algo, obviously.  Further, as as you point out above, the memory should be dynamically used rather than static to reduce the possibility of shortcuts.  Ideally, the algo would make use of as many capabilities of the (common) PC as possible.  Successfully implemented, this approach would not make ASIC and GPU mining 'impossible', merely impractical.

But, as you say, ASIC resistance, as defined economically, *is* ASIC proof.  

My algo is pretty basic in that it mostly makes use of lots of memory and memory bandwidth for each thread, but that alone addresses a significant subset of the 'ideal' requirements of my approach.  A GPU would be able to run a few threads, for example, but its performance should pale in comparison to a CPU.  It might be worth the electricity at the low usage level -- but the ROI would not be worth the capital outlay of building a GPU rig.

An ASIC (or ASAC) could still be made to be more efficient than a PC, but should not be drastically so.  As long as the pay-off period for a piece of special-purpose equipment is measured in multiple years, the risk would be too great for a prudent investment -- especially in the fast-moving space of cryptocurrencies.  And, more importantly, it would not provide the economic foundation for a few companies to quickly rise to dominate the space.

Love your name spinning truth but what is this algo you speak of that uses every part of the cpu?  Surely you mean my proposed algo which is finding a specific length factor of a large number (over 100-120) digits?
legendary
Activity: 1372
Merit: 1250
If Bitmain attempted something stupid, this would translate in loses as the price of Bitcoin would go down, so im not really worried about that.

There's also PoH, Proof of Hitman, which could be put in practice. There are $billionaires in Bitcoin, and im sure they will not sit back and relax as Jihan Wu screws around ruining Bitcoin for some reason. Not a good idea to piss off people with enough unconfiscable funds to get to you and end your stupidity. If I was Jihan, I wouldn't certainly risk it. What's the point of all that money and power when you are buried?

So we will all just cooperate, for the sake of Bitcoin, in other words, for the sake all of us. There are no winners in a war within Bitcoin.. only uncertainty and therefore a crashing price.

The multi algo thing looks good, but still, no realistic way to get it into the system without ending up with an altcoin (Bitcoin, and Bitcoin-multiAlgo). We have to avoid such mess. Also a lot of research would need to be done to test it and guarantee we don't end up in the same scenario, even with multiple algos.
sr. member
Activity: 630
Merit: 250
It was bitcoin community's fault from the first place not to recognize ASIC as a crack and not to take a proper action against it by upgrading to an ASIC resistant PoW, imo.

"ASIC resistant algorithm" is somewhat of a misnomer, since it's only "resistant" up to the point where someone designs a new ASIC for it.  Most altcoins who claim to be ASIC resistant can get away with making that claim, simply because their coin isn't valuable enough for anyone to bother designing a custom chip for it.  Resistance through obscurity, in effect.  The problem Bitcoin has is that it obviously is quite valuable, so the moment you change the algo, all the big manufacturers will start work an a new ASIC designed to work with that algo.  There's simply too great an incentive for it.  

It doesn't matter what algorithm you pick, it's always going to be inherently less resistant to ASICs by mere virtue of the fact that it's Bitcoin and ASICs are what all the miners will naturally want to have, so there will always be an overwhelming demand for someone to manufacture one.  Sooner or later, it's inevitable we'll have ASICs once again.  It's only ever going to be a temporary reprieve and will likely involve a hardfork every time it needs changing again.  You might have noticed, but hardforks tend to be somewhat controversial round these parts.  

While I don't really keep up with Monero, I read that it somehow managed to split into 4 distinct chains because no one could agree on how their attempt at blocking ASICs should work.  We don't really want a repeat of that omnishambles in Bitcoin.

My take is that we just need a wider variety of manufacturers involved.  Other hardware companies need to step up their game and challenge Bitmain's current stranglehold.  Bricking hardware would likely escalate tensions and could even provoke some pools or perhaps Bitmain themselves into some form of retaliation.  That might sound silly, but it's worth pointing out there's a tremendous amount of money involved and when people with lots of money see a threat to their financial future, offence is often seen as the best form of defence.  It may even have other potential consequences like needing to include emergency difficulty adjustments due to a sudden plummet in hashrate, which could potentially unbalance the release schedule of newly minted coins into circulation.  One of Bitcoin's primary strengths is its predictable supply, so not something we should jeopardise lightly.

Caution is strongly advised.
work is underway to produce new ASIC, but not all companies advertise their work. Perhaps soon we will see a surge of new developments of ASIC from different countries.
member
Activity: 322
Merit: 54
Consensus is Constitution
Using this as an excuse for saying welcome to an obvious attack like cracking the algorithm by ASIC (it is a crack,, both historically and analytically) is the most weakest argument ever. It looks to me just insane, putting everything in the hands of Jihan Wu and praying for him to keep us safe against botnets!

It would be a weak argument if I was asking to put everything in the hands of Jihan Wu, but that's not the case.  You might want to consider the possibility that changing the algorithm could even be advantageous to Wu, since his company would almost certainly react fastest to any newly announced algorithm.  It would effectively kill any opportunity for another manufacturer to catch up.  You might end up handing them monopoly on a plate through your desire to beat them.  I'd say at least wait to see how quickly it is before another Monero ASIC is designed before you dismiss this notion.  I don't think it'll take that long.  Let them be the guinea pig before we start meddling with things that are largely theoretical at this stage.

As you stated yourself:
2- The very first company that manages to crack the algorithm and produce a specialized machine,  will save its position almost forever because of the gains.
So it makes sense that the company that cracks it first will keep cracking it each time you change it.  Therefore, it's actually more sensible to allow other manufacturers the opportunity to catch up.
I'm completely against the hypothesis that states every PoW algorithm is vulnerable and will be cracked sooner or later by ASICs or other special purpose systems. There is no basis for this assumption other than a false induction or a kind of tautological manipulation of the terms involved.  A cautiously designed algorithm, being practically ASIC proof is definitively possible.

Plus, regular algorithm upgrades, as long as they don't alter the basics and enjoy a semi-autonomous consensus mechanism (like some proposed signaling schemas) won't be that costly. From a programmer's perspective, I see no serious challenge here. I don't think it will be the case but having this as a doom day strategy will de-incentivize further attempts to break the algorithm.

As of your guinea pig, Cryptonight V7, I'm absolutely sure about the outcome: There will be no more crack attempts on the algorithm. The costs involved in the upgrade were negligible and the results were awesome and Sergio is threatening to repeat the procedure every 6 months. The experiment is over
and the results are more than encouraging.
 
First you need for the almost entire community to agree that fork needs to happen.
No we don't! I'm so suspicious about this term 'community' when it is used as a concrete concept.

In Ethereum 'community' we have Vitalik Buterin who shines like a pop star at the same time he is ruining the entire ecosystem with his immature proposal about 'weak subjectivity' and Casper. Buterin is famous for his disbelief in PoW asd enthusiasm about PoS miracle that is promised to scale up blockchains magically! I don't care about Buterin and his fans, I will unite decent gpu miners and fork not only against Bitmain but also from Buterin and his fans.

As of bitcoin, things are so different here, I think once Bitmain started to play his cards in a more dirty game, we have less problems to have the community united. For now I'm just insisting on theoretical development and discussions about the possible ASIC mitigation improvements to SHA256 and the PoW of bitcoin.

Some of your points in this post was important too, I'll discuss them separately. Cheers for now Smiley


I fully agree a long term asic resistant coin id possible but don't you see that trusting a central group to keep the algorithm "updated" is causing centralization of the network?  Luckily the PoW I invented which requires finding a certain length factor for a very large number is an algorithm that can't be changed in any significant way after implemented but should stay asic resistant forever because if something can carry out a general number field sieve then it is good enough to function as a personal computer.
member
Activity: 322
Merit: 54
Consensus is Constitution
Thanks for the thoughtful article.  I'm working in a similar area and thought I'd add my own perspective on how to deal with the  centralization-as-an-attack  cryptocurrency problem.

We seem to agree on the idea that the best defense against ASIC's (and other approaches that fill the same functional and economic niche) is an economic defense.   For example, my approach to POW is to leverage PC's in a way that is uneconomic to duplicate in a fixed-purpose device.  Since many people already own PC's their machines don't have to be counted as part of the cost of decentralized POW.  

On the other hand, someone building a dedicated mining farm would have to outlay *extra* money to compete with something that the decentralized community already has in abundance.  

This approach failed for bitcoin because the POW algo was too trivial; it required only a few instructions of the CPU and a tiny amount of memory.  A $1000 PC was making use of only a tiny fraction of its cost for mining.  This left a huge window for exploitation by ASIC's (and GPU's).

A better approach would have been to use more instructions and more complex instructions as well as far more memory in the POW algo, obviously.  Further, as as you point out above, the memory should be dynamically used rather than static to reduce the possibility of shortcuts.  Ideally, the algo would make use of as many capabilities of the (common) PC as possible.  Successfully implemented, this approach would not make ASIC and GPU mining 'impossible', merely impractical.

But, as you say, ASIC resistance, as defined economically, *is* ASIC proof.  

My algo is pretty basic in that it mostly makes use of lots of memory and memory bandwidth for each thread, but that alone addresses a significant subset of the 'ideal' requirements of my approach.  A GPU would be able to run a few threads, for example, but its performance should pale in comparison to a CPU.  It might be worth the electricity at the low usage level -- but the ROI would not be worth the capital outlay of building a GPU rig.

An ASIC (or ASAC) could still be made to be more efficient than a PC, but should not be drastically so.  As long as the pay-off period for a piece of special-purpose equipment is measured in multiple years, the risk would be too great for a prudent investment -- especially in the fast-moving space of cryptocurrencies.  And, more importantly, it would not provide the economic foundation for a few companies to quickly rise to dominate the space.

Love your name spinning truth but what is this algo you speak of that uses every part of the cpu?  Surely you mean my proposed algo which is finding a specific length factor of a large number (over 100-120) digits?
legendary
Activity: 1456
Merit: 1174
Always remember the cause!
{...}
For Bitcoin, I've come to a solution for implementing ASIC resistance with minimum side effects and risks. I'll discuss it in more details in a dedicated thread but for now I just use the core idea to show how wide is the range of possibilities:

Suppose we got a gpu mineable practically ASIC-proof algorithm implemented and tested properly and ready to launch, let's call it MemHash.

1-We would choose a blockheight N as the fork point to be mined a couple of months later. Miners , Wallets, ... would have a reasonable time to upgrade.

2- We will use a multi algorithm protocol in which 2 difficulties are independently and more dynamically (revised in shortest periods) adjusted to guarantee a fair distribution of blocks between SHA256 and MemHash.

3-By fairness we refer to a constant, name it RATIO. It is set to 8/1 in favor of SHA256 for the beginning but improves overtime (say, every 6 months ) to become 1/8 ultimately within first two years and approaches to zero within next period.  

Many things to discuss more, I know, but my point is clear: There exists so many possibilities and any challenge has a proper solution.



That's interesting solution. But there are few technical difficulty such as :
1. Make sure the algorithm reviewed/audited by professional and at least extreme difficult to make ASIC for that algorithm.
2. Manage MemHash hashrate and it's block reward during transition.
3. Ensuring Bitcoin production rate isn't affected.

Also, getting majority community approval is extremely difficult even if you/the developers manage to fix all technical difficulty.
Thanks for the advice  Smiley

As of the third point, bitcoin production rate, it is already taken care of by the proposed protocol. With two (or more?) difficulties, being independently calculated, based on a 0 <= m/n < 1 ratio, legacy bitcoin sha2 miners (ASICs) can produce an average of m/n blocks every 10 minutes and the remaining (n-m)/n blocks will be produced by MemHash miners it yields exactly 1 block every 10 minutes, as an average.
legendary
Activity: 2912
Merit: 2066
Cashback 15%
For Bitcoin, I've come to a solution for implementing ASIC resistance with minimum side effects and risks. I'll discuss it in more details in a dedicated thread but for now I just use the core idea to show how wide is the range of possibilities:

[...]

Like many others in this thread I also highly doubt that a hashing algorithm can be found that will remain ASIC proof for the foreseeable future (say, 10 years from deployment), especially given the size of the market and the profits to be made.

I also see a lot of practical problems with your approach -- organizing non-partisan and sound reviews of MemHash, getting the community on board, difficulty / hashrate fluctuations during the transition period for example.

That being said, I'm looking forward to read a fleshed out version of your proposal.
Pages:
Jump to: