Bitcoin Gold - Do we need it and if yes, how many?

BCash/Bitcoin (BCH)1 cash did it on August 1st 2017, Bitcoin2x/Segwit2x(B2X) does it at block 494,784, which is currently estimated to occur on November 16th. For better or worse, creating a new cryptocurrency by forking off of Bitcoin seems to be this season's fashion, and seeing the relative success of the previous and current attempts (lingering at prices of several percent of that of Bitcoin, which gives it a market cap in the billions of dollar), it is also a trend which is quite likely going to carry over into the next year. And since this topic comes up again and again at the meetups and the chat groups organized by the BAS, it is certainly worthwhile to capture some of the most relevant and interesting points in written words. I'll say some general things about forks of Bitcoin and how to benefit from them, but -since this has been splendidly covered elsewhere- spend most of the text with the specific changes of the Bitcoin Gold fork.

Where's my dividend?

While of course technically wrong, a lot of Bitcoin holders consider the coins that they sell on the fork-chain as some sort of dividend, making Bitcoin a positive-carry product. In fact, it is more of money falling out of the sky into the hands of people who own Bitcoin, thus the commonly used phrase 'airdrop'. This sounds nice, and if you play it correctly it is, but there is a lot of things that can go wrong while claiming the dividend, you get exposed to risk of loss, in the worst case even of your Bitcoin and you definitely risk your monetary privacy. What you have to do depends on what you are trying to achive

I want to hold my forkcoin

Great, that's the spirit. You don't have to do anything if you own the private key to your Bitcoin. You'll be able to access both paths of the fork knowing only your private key at any point down the road. This doesn't mean that it is easy to do so or that you will be able to do it quickly, depending on how you store your private keys. But it will always be possible and you can just take as much time and read as many manuals as you need in order to be comfortable with the process and wait for mature software to become available to sweep your keys or spend them from your hardware wallet. The coins on neither side of the fork will run away or become unavailable. That is, of course, unless one of the forks ceases to exist in its entirety. If on the other hand you store your coins with an external party, your ownership of either side depends on their whim. This has famously been a problem with Coinbase's approach to BCH, who will keep their customers BCH until January.

I want to trade the fork as soon as possible

Well, this one might become a little tricky. You'll need quick access to the forked coins, at a time when there are no manuals around and no vetted software for doing so. Your safest bet is to store your private keys on paper, but this is expert mode only!!! Do this at your own risk.

No matter when and if you spend your forked coins, doing so requires signing something with the same private key that also secures your Bitcoin in the same address. So please handle this with care. Only use software that has been well vetted by you or parties you trust before exposing your private keys to them. If in doubt, one option that can prevent you from loss is to empty the Bitcoin from that wallet first, to some other wallet under your control. Once that transaction is sufficiently confirmed on the blockchain, even if you expose your private key to some untrusted software, the worst that software can do is take your forked coins and potentially compromise your privacy. This is true for forks with strong replay protection, which Bitcoin Gold seems to have. This section does not apply for future upcoming forks like B2X.

Privacy is something you should consider in all cases. Sending the forked coins to some exchange will give information at least to that counterparty about your Bitcoin holdings as well.

It is rather unfortunate that I have to say this, but for the BCH fork, and seemingly also for the currently ongoing Bitcoin Gold fork, traders who were able to get the best price, immediately post-fork, were the ones who did not follow the best-practice recommendation to store their private keys themselves, but had their Bitcoin waiting on an exchange. For BCH there was no prior precedence and it was unknown which exchanges would give their customers the BCH quickly for the BTC they held during the fork and it was also not clear which exchanges would open a market quickly. For B2X, this is much better documented already now, weeks before the fork.


Bitcoin Gold Logo
The Bitcoin Gold logo

Gold?

So after now spending half the article before looking at Bitcoin Gold at all but rather dealing with general considerations and best-practices of forks, let's go into the subject at hand and look at their four most prominently placed goals: Decentralization, fair distribution, replay protection and transparency.

Decentralizaion - The hashing function

The self-stated main purpose is to increase the decentralization of Bitcoin mining by switching to a mining algorithm that is 'asic resistant'. This means that it is supposed to be more difficult to construct Application Specific Integrated Circuits for the sole purpose of mining. This is achieved by making the hash function more memory intensive. In short, 'mining' is done by calculating some hash function of the block header, which consists of (unique) information about the block and some nonce. The nonce is some number that can be changed until the hash is lower than the current mining difficulty. It is impossible to predict how the hash will change when changing the nonce due to the avalanche effect, so in order to find a low hash, there is no other way than to try different nonces one after the other by brute force.

I want to cut the level of detail short at this point, but it is relevant for this discussion to understand that he who can check more hashes per second has a relative advantage over others to find blocks and thus claim the reward. Bitcoin uses double-sha256, which is complicated, yet fairly straight-forward. The reason that asics are so much more powerful in mining than your usual CPU or GPU is that those are designed to solve general problems, the efficiency of asics lies in stripping away all of that and implementing in hardware just the necessary task and nothing else. Modern mining asics are just now catching up to the latest development in chip-set manufacturing, before it was possible to produce equipment that was vastly more efficient at mining than [CG]PUs even with outdated production facilities.

Bitcoin gold on the other hand uses Equihash, the same hashing algorithm that is used in Zcash and for the same reason as there. Its bottleneck is not some calculation, but shuffling through large amounts of memory. You can get your competitive edge not by buying dedicated computing hardware, but by buying dedicated fast computer memory. But that memory is already very much at the forefront of the technological advancements, since it is the same piece of hardware that is used in traditional PCs. There is no potential for building more efficient mining hardware by employing outdated tech. Sure, it will still be possible for anybody to buy more memory and get the edge, but firstly, the advantage will be linear and limited and secondly (and more importantly) access to memory is easy and evenly spread out. This is indeed very much unlike the situation in Bitcoin, where very few mining chip manufacturers control the market. You already have your mining hardware at home.

While the idea for 'decentralizing' mining seems appealing at first for just this reason and was similarly one of the driving forces behind litecoin's scrypt algorithm, it turns out to be susceptible to other problems. It is important for the stability of a cryptocurrency that nobody is able to take a huge chunk of the market. For asic-susceptible hashing algorithms that might happen by chip production monopolies, for asic-resistant algorithms the risk are botnets, that is meshes of computers that are controlled by attackers usually obtained through viruses and that can easily reach sizes of several tens of millions, that have been used for cryptocurrency mining recently. In a similar way, the infamous illegal video sharing platform Pirate Bay recently started taking 'payments' by using the CPU of visitors of their site to mine Monero. The reach of this kind of use of resources is -as of now- very limited, but those two examples show the potential for very few entities to get a significant share of the total hashrate and thereby of the chance to disrupt the currency if the mining equipment did not have to been bought for that specific purpose like asics.

I honestly did not make up my mind yet if a currency should rather be asic-resistant or botnet-resistant. I tend towards the latter, as this will at least not lead to wide swings in the hashrate as botnets are switched off, but depending on the degree of mining centralization, disruptions can be expected there as well. And Bitcoin clearly currently does have some shortcoming on that front.

Replay protection

This is probably in response about the ongoing debate whether or not strong replay protection will be present in the B2X fork later in November. That team got a lot of heat for repeatedly switching their stance on replay protection, leading up to exchanges implementing their own splitting solution. It might seem like the safer option to go with strong replay protection. No complains here, it is state-of-the-art, at the same time not excitingly new, BCH paved that path in August.

Transparency - The team

The reason behind the claim for transparency is the fact that the software is available as open source and it being built by volunteer developers. I struggle to come up with a relevant project for which this is not the case, so I am not sure how to evaluate this as an advantage. But let's take the opportunity to look at the code.

The GitHub repositories for website, blockexplorer and whitepaper are empty. At least there, the development and discussion seems to be internal only. For the whitepaper, one reason that it is not on GitHub might be that the meta tags of the pdf reveal the original file name: Microsoft Word - Bitcoin Gold Roadmap.docx. This is of course not a problem per se. But I find it hard to imagine that there has been a lot of collaborative work on this.

Visiting the GitHub page of the code, the first thing that stands out is the huge "Warning: Bitcoin Gold is a work in progress. If you don’t understand what you are doing, please don’t compile and run your own client from the staging tree. Your own client will NOT WORK for both testnet and mainnet. However, you're more than welcome to help test the code and join the development."

Well, at least that's honest, although I had hoped for more finished product at a stage when the forking date already happened and we are just waiting for the publication of the chain. I did not spend too much time on going through the GitHub repository. But commit messages like "Disable bitcoin libs to make TravisCI happy." or a "Change mainnet address version." of six days ago (followed more recently by "Fix broken tests for new address format." leave some doubts about the seriousness of the project. At the same time, they fell more than 400 commits behind the main bitcoin core repository from which they forked.

Fair distribution - The hardfork

Special attention should be drawn to commit 09ff5dd: Add foundersReward. How precisely this would work was unknown up to that point how their reward will be. From reading the code it seems that they want to receive 20% of the block reward for the first 8000 blocks, that is an insane 100k BTC. At the current exchange rate this would be around 13 million dollar. I guess it is up to the reader to decide if this is an appropriate reward for a project of a hand full of developers that came to existence less than two month ago (according to their GitHub repo).

They claim that "A hard fork of Bitcoin is the most fair and efficient method of creating and distributing a new digital asset. Coins that are created from a new genesis block always have ownership concentrated among a smaller group of people." It seems unclear how 'coins that are created from a new genesis block' differ from 'coins that are scalped off the block reward over some time'.

Conclusion

When googling for "Bitcoin Gold", their own website is only linked on page 3, and even then it is not the landing page. Before that you'll find several topical and general interest news outlets 2. Apparently there is more to say about the project than by the project, which somehow fits into the overall picture. Especially because I don't necessarily think that the asic-resistant hash function solves an actual problem with Bitcoin, I don't see the need for this project at this time. Let's see if the other candidates will get a better evaluation.


  1. I really don't want to enter the naming discussion so I'll just give all relevant names for all currencies that I mention.

  2. And this was done in 'incognito mode' to prevent exposure to my own google bubble

Lewin Boehnke, Head of Research, Crypto Finance AG