Comments on the proof of work update by Vorick summarized

If you have checked https://gitter.im/grin_community/Lobby, then you might have seen the long history of chat between the Grin devs and David Vorick. The conversation started here(https://gitter.im/grin_community/Lobby?at=5b86204394f8164c17b4eeaa) and the topic was focused mostly around the Proof of Work update(Proof of work update) suggested by the Grin dev team. This post will try to summarize the main points that were brought up during the conversation. This post will not go into the technical details (chip design and manufacturing) that were brought up about chip design by Vorick and Tromp.

Arguments by Vorick:

  1. Equihash has enough ASIC implementations out there already, some of them designed to be flexible, that I would almost suggest that equigrin is more likely to have day one ASICs than cuckoo32 is.
  1. Equigrin is blake2b based, which multiple manufacturers (Obelisk, Bitmain, Innosilicon) already have hashing cores for, the step between that and a memoryless ASIC for equigrin is relatively small.
  1. There have had multiple groups approach us asking for grin ASICs, and we know that they have been talking to Innosilicon as well.
  1. I don’t know if you’ve been paying much attention but a ton of smaller alts have been hit by nicehash powered 51% attacks recently. My argument there is that it’s probably better to have asics on day 1 than to have the nicehash problem.
  1. As far as hardware goes, CC failed being simple the algorithm is multiple complex stages you’ve got the edge trimming, which requires a hashing core, local memory, and global memory and then you’ve got the cycle finding, which requires cycle logic and a completely separate piece of memory.
  1. Equigrin ASIC likely making profit starting from week 4~6, which is plenty of time since the hard fork is every 6 months.
  1. If you commit to an algo, you’ll almost certainly get day 1 innosilicon ASICs.
  1. In terms of full production cost they both will be about the same.

Suggested solution by Vorick:

  1. Push for open source ASICs. I know you don’t want the secret stuff, so let’s take that off the table but the best outcome would be some sort of ASIC that’s readily available wholesale to a large number of suppliers, and also readily available to the broader community.

 
With all these points in mind, let’s take a look at the possible scenarios for Grin when going forward with the CC/Equigrin dual PoW. The assumption is that the parameters for CC is set in stone well before the launch and the ASIC manufacturers start designing. Nothing specific is chosen for Equigrin until right before the launch.

 
 
Situation 1 (Most desirable): No day 1 Equigrin ASICs and day 1 CC ASICs.

According to Vorick, this situation is the least likely to happen.

 
 
Situation 2: Day 1 or very early Equigrin ASICs and day 1 CC ASICs.

Most likely to happen based off of the general knowledge and the info provided by Vorick.

Because of the already drastic measures to stop Equigrin ASICs, when a party is successful in making an Equigrin ASIC, they most likely will not reveal to the public that they have one (ex. Innosilicon). If it really does take only 4-6 weeks for ASICs to hit profit, then we cannot rely on the 6 month hardfork to discourage these ASICs.

 
 
Situation 3 (Least desirable): Day 1 Equigrin ASICs and no day 1 CC ASICs.

With CC known to the general public as the main algo for Grin, this situation is also unlikely to happen.

 
 
I believe the decision is up to the Grin devs. I sincerely hope these thoughts are taken into consideration. While I do understand that perfect decisions are likely not to be made and see the value of moving things forward, I do believe that in the light of new concerns it might be wise to slow down and rethink the decisions. Whatever happens, I personally will continue supporting Grin in whatever ways I can.

3 Likes

This was a fairly long discussion with many different valid arguments put forward by multiple different people. Why cherry pick only David’s? Some arguments are also clearly incompatible (small enough for Nicehash attacks, while big enough for day 1 ASICs) and David acknowledged that much. Why repeating them here without pointing out those issues?

1 Like

The post is to summarize all the points that Vorick made because not all are going to go through the whole conversation on gitter.

I believe that there was technical consensus with everyone before he made his points. I thought that having them in a summarized readable format is valuable for futher discussion.

1 Like

Thanks,

I think you did a good job at summarising the discussion from his POV succinctly.