bitcoin-dev

hashcash-newhash

hashcash-newhash

Posted on: May 24, 2020 09:02 UTC

In this email conversation, Karl Semich suggests that migrating to new hashing algorithms would significantly increase decentralization and hence security.

ZmnSCPxj responds by stating that there are effectively two strategies for ensuring decentralization based on hash algorithm: either keep changing the hash algorithm to prevent development of ASICs and ensure commodity generic computation devices (GPUs) are the only practical target, or do not change the algorithm, to ensure that knowledge of how best to implement an ASIC for the algorithm becomes spread out and ASICs for the algorithm are as commoditized as GPUs. ZmnSCPxj argues that developing new hash algorithms is not cheap and it requires coordinated hardforks over the entire network at an alarmingly high rate, putting too much power in the hands of developers. On the other hand, the latter strategy requires surviving an intermediate period where ASICs are developed, but not yet commoditized, and during this intermediate period, the centralization pressure of ASICs might not be more powerful than other centralization pressures. Regarding non-ASIC-resistance, ZmnSCPxj states that it is a non-issue because miner earnings are determined by cost of power supply regardless of whether the most efficient available computing substrate for the hashcash algorithm is CPU, GPU, or ASIC. ZmnSCPxj argues that if one wants to solve the issue of miner centralization, the real solution is improving the efficiency of energy transfer to increase the areas where cheap energy is available, not stopgap change-the-algorithm-every-6-months. Karl Semich suggests that the impact on existing miners could be made pleasant by gradually moving the block reward from the previous hash to the next, such that both are accepted with different rewards, and developing the frequency of introduction of new hashes such that once present-day ASICs are effectively obsolete anyway due to competition, new ones do not have time to develop. Karl Semich would like to update wiki articles with more points or a link to conversations like this.