The current Bitcoin algorithm works in such a way that it is almost inevitable that during each transaction, the data is "fractured" into components that at some point (especially with small amounts transacted) are reduced to a "dust" state, forming parts of Bitcoin that are already unprofitable to spend, since the transaction fee exceeds their cost. On the one hand, this is unprofitable for the users themselves, and for the whole blockchain on the other. Such a cluttering of the space can lead to a decrease in the productivity of the entire system.
And if the "dust" was not a problem for traders long ago, everything changed when the game included fees, or rather, when they grew so much that it was unprofitable to carry out "everyday" small transactions. So, in December the fees in the Bitcoin network at their peak were $54.9. By the end of February, at the time of the release of Bitcoin Core 0.16.0 with its convenient functionality for creating SegWit addresses, the commissions had already dropped to $2.8, and by today, they have reached the numbers seen at end of April 2017, or about $.84.
Greg Slepak, a developer of decentralized applications, is sure that now is the best time to get rid of the dust. "That time might not come again," he said in a conversation with CoinDesk, referring to record-breaking fees and decreased interest in Bitcoin. At the same time, the next takeoff can happen when the Lightning Network, an off-chain solution for processing micropayments in Bitcoins, will start working in full. "I think that everything that leads to the growth of the popularity of blockchain can lead to an increase in fees that will be greater than the dust itself," Slepak said.
Slepak describes a method by which users can get rid of the dust. They must combine all "unspent transaction outputs" (UTXO) into one outgoing transaction. At the same time, it is necessary to understand that Bitcoins are stored in a wallet not in the form of separate coins but in the form of "unspent outputs," or the remnants of previously sent or received transactions. Thus, 1 Bitcoin can represent a sum of 0.1 BTC, 0.5 BTC, 0.2 BTC, and other smaller components and so on up to the "dust" level. The process of combining these parts into one transaction can be represented in the form of an exchange of a handful of pennies, five cent, and ten cent coins for one dollar bill. The functionality needed to detect and eliminate dust, however, is not present in every wallet.
Slepak recommends using Electrum, a wallet with simplified payment verification (SPV), which requires less data to confirm the transaction and is well adapted for mobile devices. Electrum users can select a certain number of addresses containing dust and press "send from," thus independently selecting which parts of the coins to merge into a single output of the transaction. The Blockchain wallet also allows conducting such operations. Some wallets, however, do not assume such a level of control, especially if it is a cold storage wallet like Coinbase, which carries out operations autonomously, independently deciding which unspent outputs to get rid of.
And although Slepak believes that the time has come to "get rid of the dust," in order not to lose money, he notes that it should be done only if "the consequences of privacy" do not harm the user. The fact is that due to the public nature of the Bitcoin blockchain, the user risks opening their entire transaction history with such a "cleansing." To preserve financial privacy, it is very important not to reuse the same address, otherwise, another user can assume with a high degree of probability that this address belongs to you. Every time a private key of an already used address "signs" a new transaction, any recipient can trace the history of this address and get access to the relevant information. Such a threat, however, is significant only if a user has accumulated dust on several accounts, and especially if one of these accounts has undergone a KYC procedure on the exchange and the user has confirmed their identity. Thus, if one of the addresses is assigned to a particular person, then all other addresses storing the dust, when combined into a single transaction, will also expose the identity of the user. "It's like saying: 'Yes, I do, these addresses belong to me, too,'" said Slepak. But if all the "dust" is already tied to one account, then there will not be any new threat of privacy when forming a single transaction.
Antoine Le Calvez, the developer of the Blockchain databases, has less radical views on getting rid of the "dust." In a material published in March on Medium, he notes that the amount of dust has already decreased, and this was provoked precisely by the "inconvenient" high fees of December. Large companies working with Bitcoin were looking for more profitable strategies, including resorting to getting rid of dust. "Coinbase cleaned their wallet. And they were quite a large 'polluter,'" said Le Calvez, noting that less dust has been created since the emergency "cleaning" procedure. Le Calvez believes that users can combine transactions in the described way for potential savings in the future, but only at will. In his opinion, large Bitcoin companies will, in any case, exert a greater influence on the overall level of dust and the "purity of the atmosphere" depends on them. Le Calvez agrees, however, that with the current level of transaction fees in the Bitcoin network, it is easy to remove the dust, but the situation will change when the number of transactions rises again. "This test will be in the period of the next rise," he said.
Also, the next version of the Bitcoin software, which is scheduled for release in 2019, may significantly reduce the formation of dust. One of the main changes will affect the current algorithm of selection of coins, which, according to the developers, inefficiently combines parts of coins into a transaction and almost always creates "outputs for change," even when this can be avoided. The new Branch and bound algorithm, developed by Andrew Chau and Mark Erhardt, groups the data more economically both in terms of scalability and in terms of fees as it works through all the inputs, trying to find among them an exact number of Bitcoins that the user wants to spend. "No one wants transactions to be reduced to dust," says Erhardt.