How to destroy bitcoins

image



We know how to create bitcoins , but how can you destroy them?



Burn bitcoins - so make them impossible to spend. This can come up with several applications - for example, quickly launch a new cryptocurrency (as done in Counterparty ) or slightly increase the cost of the remaining bitcoins, reducing the number of available ones. In this article we describe three methods for burning bitcoins.



Simplest method



It is very easy to burn bitcoins by sending them to a dummy address. Fortunately, Bitcoin users have an extremely small chance of accidentally burning Bitcoins in this way, since the address contains a 4-byte checksum that prevents typos (there is a detailed instruction on creating Bitcoin addresses on the bitcoin wiki).



That is why to create a fictitious Bitcoin address you need to spend a little effort, and not just hit a couple of times on the keyboard. To create an address, hash160 is used, it can take any values, and this value is converted into the first characters of the address (and the last ones indicate the checksum).



Known examples of fictitious addresses:



β€’ 1BitcoinEaterAddressDontSendf59kuE (received 2,10556692 BTC),

β€’ 1CounterpartyXXXXXXXXXXXXXXXXUWLpVr (2,130.84717717 BTC),

β€’ 1111111111111111111114oLvT2 (43.2884582 BTC), the minimum possible hash160 is coded at this address,

β€’ 1QLbz7JHiBTspS962RLKV8GndWFwi5j6Qr (0.01159201 BTC), the maximum possible hash160 is encoded at this address.



Sending bitcoins to such an address you almost certainly burn them, but this cannot be proved, since in principle such a private key can exist for such an address. However, the search for such a key can take more energy than will be generated by our solar system for the entire time of its life.



Meaningful method



For quite a long time, Bitcoin users have included various data in the blockchain, whether it is proof of copyright to a document , proof of identity , securing contracts or a digital representation of real assets .



In 2013, a simple way to add data to any bitcoin transaction was introduced. Until now, the incorrect OP_RETURN instruction was made standard, and the user found the ability to add up to 40 bytes of data to the transaction.



Prior to standardization, this type of data output in the blockchain was not an easy task, and included the use of a variety of dummy addresses encoding arbitrary data. The introduction of the standard has simplified the process and allowed Bitcoin nodes to forget the difficult way and limit blokchain swelling .



Since its introduction , 3.66 BTC has already been spent on conclusions via OP_RETURN, and the number of such conclusions is only growing, which indicates a growing number of methods for the diverse use of the blockchain.



Unambiguous method



And although the previous methods are quite effective, they do not destroy bitcoins. You can still see them in the blockchain, you just can't spend it. However, there is a way to effectively destroy bitcoins by removing them from the blockchain.



Making my website with statistics on transactions of Bitcoins, I took measures in order not to skip any transaction data, and so that the data in the database were consistent. I calculated the number of existing bitcoins as the sum of bitcoins stored in unspent, but confirmed outputs. If everything is correct, this amount should coincide with the number of existing bitcoins (this number can be calculated only if you know the number of blocks in the main chain of the blockchain).



However, I found that 10.19768818 BTC disappeared somewhere. At first I thought that I had missed some transactions or that I had an error in the code. Understanding this, I saw that I was right: 1031 did not receive the reward that was intended for them. A block reward is a combination of coins created (50 BTC at the very beginning of Bitcoin, halving every 210,000 blocks) and commissions contained in block transactions.



This discrepancy could arise from the fact that miners missed several transaction fees, or excessive commission was paid for a coinbase transaction and was not included in the output value of the miner transaction, or it was done intentionally, who knows.



The first such block is dated May 18, 2011, and the last one appeared on August 15, 2015 (it lacked only one satosi, and nain it with the help of CoiniumServ ). Most of these blocks were minted in the period from January 2012 to March 2013.



Several pools mined blocks and did not pick up the reward. According to the Blocktrail API, more than half of these blocks are nicked by EclipseMC and Eligius . Interestingly, these two pools began to mine them at the same time - perhaps they used the same software. However, EclipseMC finished mining in September 2012, and Eligius - in January 2013. Other pools, like Slush or P2Pool, also namynil such blocks, but very few.



Missing bitcoins are gone forever. Sending bitcoins to fictitious addresses or spending on inappropriate conclusions for this does not lead to their disappearance - they can be seen in the blockchain. And if you do not request the entire reward for the block, the bitcoins actually disappear - they cannot be seen in the blockchain. The only verification of the value of the reward for the block is (judging by the bitcoind source code ) that it should not exceed the maximum value - it turns out that you can completely destroy the entire reward, including the generated coins.



Conclusion



There are other ways of burning bitcoins (for example, using non-standard incorrect scripts ), but the most common ones are bogus addresses and OP_RETURN scripts. And although this is not supported by evidence, I was very interested to find out which pools used the same software just by examining the blockchain.



All Articles