Coinburn and The New Dev Path Forward
Bitcoin Private has seen quite a lot of activity in a number of areas over the last 3 weeks so we felt it was a good time to summarize the happenings for everyone. Let’s get straight to the info…
Coinburn — block 480,000 (Feb 16th/17th 2019)
There’s a little more than 2 weeks to go now before our coinburn triggers. For those that may be unaware, there was a 1:1 snapshot that occurred on Feb 28, 2018 at block height 272,991 for Zclassic (ZCL) and block height 511,346 for Bitcoin (BTC), where people who owned Bitcoin or ZClassic were entitled to the equivalent in BTCP (Bitcoin Private), accessed with the same private keys. However, simply importing your private key into a wallet isn’t really enough action to claim your coins, as nothing happens on the blockchain. Coins that have not moved (been included in a transaction) since the snapshot are considered unclaimed and will be burned. Therefore, we advised people at the time, as we do now, to transfer their BTCP to a new address in anticipation for the coinburn.
So, what is the coinburn, why is it happening and what happens if you don’t move your BTCP gained from the 1:1 snapshot?
Coinburn was suggested in the whitepaper as a possible solution in the event BTCP suffers from an extremely low network hash rate due to the low amount of mineable coins remaining after the fork. As originally conceived, approximately 0.14% of all unmoved coins from the fork would be removed daily over the course of two years, thereby decreasing the circulating supply and freeing up a significant portion of the coins for miners.
However, on December 23, 2018, CoinMetrics released an article purporting a recent discovery concerning the Bitcoin Private fork. Per the report, an independent third-party technical audit uncovered that a large quantity of coins (approximately 2 million BTCP) were created during the fork-mine, and around 1.7 million of these coins are stored in a shielded pool while around 300,000 were moved out of it. The active contributors of BTCP immediately conducted their own investigation and confirmed the existence of said illegitimate coins. The active contributors and the community were confronted with two options. The first was to burn all the coins stored in shielded addresses since CoinMetrics reported that 1.7–1.8 million illegitimate coins are stored in shielded addresses while only 20,000 shielded coins are legitimate. The second was to burn all unmoved coins to fix the supply issue (cf. Medium article entitled “Official Statement on CoinMetrics Report” dated 12/25/2018). After intense discussions among the active contributors and the community, it was decided to adopt a combination of both options. In order to recompense the owners of the 20,000 legitimate coins in shielded addresses that are subject of removal together with the illegitimate ones, a relief fund managed by a third party volunteer was proposed to be set up. Additionally, in order to avoid a chain split, the removal of unmoved coins will not be done slowly over 2 years but immediately and simultaneously at block height 480,000 (cf. Medium article entitled “Bitcoin Private Jan 2019 Hard Fork” dated 12/30/2018). Thus, on January 5, 2019, a hard fork at block height 455,500 occurred which effectively removed all coins in shielded addresses. Then around February 16/17, 2019, a coinburn involving all unmoved coins will happen at block height 480,000 (cf. Medium article entitled “Bitcoin Private Post Jan 2019 Hard Fork Summary” dated January 9, 2019).
Now, if you haven’t made a transaction since gaining your BTCP from the 1:1 snapshot that occurred on Feb. 28, 2018, please do it ASAP and certainly before block 480,000 (sometime on Feb 16th/17th, 2019 depending on your timezone). If you don’t do it by then, your BTCP will become unspendable as they will have been burned away. If you’re unsure if you moved it or not, please send it to a new address. If you bought BTCP on an exchange and kept it there you don’t need to do anything. But if the BTCPs you’re keeping on an exchange were not bought but credited to your account by your exchange for holding a BTC and/or ZCL during the snapshot on Feb. 28, 2018, you need to move those BTCPs to a different wallet address if they have not been moved at least once before.
Coinburns happen for a variety of reasons and ours is so we can get a true picture on the circulating supply of BTCP. Without hard data, we’ve always had to assume the maximum possible were claimed, but burning away the unclaimed (unmoved) coins will give us this hard data. The same instructions for claiming that were given during the snapshot and throughout 2018 apply for this as well, and the deadline is approaching quickly! This community post will be the last big announcement to inform everyone of this, so please ensure you do this and inform others who have may have BTCP from the 1:1 snapshot to do the same!
At present we have a circulating supply of approximately 20.85m BTCP of a maximum supply of 21m (similar to Bitcoin) and from recent analysis it appears there will be around 3.5m after the coinburn.
Rebase — a future dev endeavor
The rebase (where we aimed to bring BTCP up to speed with some of the latest tech from Bitcoin and ZCash) was always a hugely ambitious idea. It was started on around 7 months ago as something that “may” be possible and hopefully achievable, but no one had attempted to bring new versions of these 2 codebases together. The legacy code of both was easier to gel together but now Bitcoin and ZCash have become too different and trying to get them to work together was always going to be extremely tricky, especially regarding SegWit. Even so, it was worked on as the community was very keen on it being achieved and so devs set about trying to make it work. After many months, a few exhausted and burnt out devs, we realized it would be even harder than envisaged and were running into technically incompatible issues. Transactions were not always going through, there were blockheight mismatches and even if we solved those, a whole host of other complicated areas yet to tackle.
It was often seen as mad science and referred to as trying to make a “shoat” (a new animal, based on a sheep and goat). It should in theory be possible, but no one was able to make it work. Top ZCash developers became aware of what we were trying to do, excited with what we were working on, though wary of it ever working and hoped we documented it for devs to learn from (https://twitter.com/str4d/status/1016587156121321473). After many months however, we decided enough time had been spent on it, we would park the idea and the dev work on it for a while. It may be possible, but our current codebase needs to evolve in the meantime, so we are returning to work on the current version of BTCP and push it forward. The rebase can be worked on in the future, though the work is still there in case anyone wishes to try and make it error free (https://github.com/BTCPrivate/BTCP-Rebase).
The new dev path forward
Lots of plans and ideas quickly sprang up now we refocused on the current codebase and there were a few of common ideas many people agreed on. First up, was changing the hashing algorithm from Equihash 200,9 to Equihash 192,7. The latter is very much like what we have now, but 192,7 isn’t available at the cloud mining service NiceHash. This means someone isn’t able to easily and cheaply rent hashing power from NiceHash to perform a 51% attack against us. Additionally, the change to Equihash 192,7 will allow the network to be more ASIC-Resistant, and a GPU-friendly ecosystem can be established once again. The work on this is mostly complete (https://github.com/BTCPrivate/BitcoinPrivate/pull/202) and needs a little finishing and much testing of course before being released, which should be soon (though no fixed date yet) after the coinburn.
Another change is to adjust the block reward values. This needs to be done with extensive calculations and projections to re-balance things after the coinburn and unfortunate mining incident discovered late in December where around 210k (of a potential 2m BTCP illegitimate pre-mine) was dispersed throughout the blockchain. Developers are looking at new block reward values with the estimates we have, but nothing is solidified until we have a more accurate supply value post-coinburn. The developers are also discussing the merits of removing the difficulty bomb or extending it; if you would like to partake in the discussion or are technically-minded with blockchain development, feel free to join the development discord.(https://discord.gg/UJQsvCb)
As a result of pausing work on the rebase and resuming dev work on the current codebase, there’s a new energy and old devs are returning with new enthusiasm and tackling items already, which is great to see. If you’re a blockchain developer and would like to join them, we’d love to chat with you in our Discord channel plus also see code submissions via pull requests on our GitHub repo (https://github.com/BTCPrivate/BitcoinPrivate).
The future of Bitcoin Private
We have a huge, strong community and a fresh, new outlook. We are all looking forward to a positive (and slightly simpler!) 2nd year, with plenty of development, utility solutions, evolving and growing the cryptocurrency. We remain thankful and hopeful because the various support that we are receiving and the positivity that our community is radiating that make Bitcoin Private ever stronger. It inspires us all the more to strive harder to make the BTCP project a success so as to fulfill Satoshi’s original vision of financial freedom via fast, low-fee, decentralized, and private transactions. It’s been quite a ride so far and we are excited about the future. Join us as we travel to a new era of provable and trustless blockchain privacy!