Bitcoin's technical community does not seem to be affected by the crazy market in 2020, and is basically unaffected by the violent fluctuations in the price of Bitcoin (which hit a record high in December last year) and continues to move forward. Bitcoin's software and many projects surrounding it have gradually been improved during the year, the software has been optimized, the loopholes have been fixed, and the privacy loopholes have been patched. Most of this work, although very important, failed to attract media attention.
However, looking at Bitcoin's technological development over the past year helps to highlight new milestones in Bitcoin's ongoing technological progress. Also in 2020, the growing Bitcoin development community has introduced some useful new features, several particularly important upgrades and some particularly significant improvements.
As this turbulent year draws to a close, here are some of the most notable technological developments of Bitcoin in the past 12 months...
New privacy tools for PayJoin and coinwap
In terms of Bitcoin privacy, this year's PayJoin and coinwap projects represent two promising advancements.
PayJoin, also known as Pay to Endpoint (P2EP), is a technique that allows transaction receivers to participate in transactions through CoinJoin, send funds to themselves, and also receive actual payments from real senders. If a snooper doing blockchain analysis assumes that all cryptocurrencies sent in a transaction belong to the same person-they usually do-then they are wrong. This has been beneficial to the privacy of the sender and recipient, because peeper will confuse the (past) encryption cargo currency ownership. In addition, if enough people use PayJoin, this important heuristic for blockchain analysis may be completely invalidated, and in turn will even benefit the privacy of those who do not conduct PayJoin transactions themselves.
Although the demo version of the PayJoin tool at the end of 2018 has been implemented on the online gambling game Bustabit and the cryptocurrency hybrid software JoinMarket, Samourai Wallet released its own more limited version under the Cohoots umbrella in 2019 (with slightly different privacy trade-offs), PayJoin this year Several popular Bitcoin projects have been implemented. It is worth noting that this includes the widely used payment processing software BTCPay in April, which allows BTCPay users to accept PayJoin transactions from compatible wallets. The Wasabi Wallet, which focuses on privacy, was the first wallet to provide this compatibility later in the same month, with JoinMarket (September), Blue Wallet (October) and Sparrow Wallet (November) following closely behind.
At the same time, Bitcoin developer Chris Belcher began to implement coinwap, a privacy technology first proposed by Bitcoin core contributor Gregory Maxwell in 2013. Coinwap uses atomic swaps (which is also the basis of the Lightning Network), allowing users to exchange currencies without mutual trust. Every user will eventually get a cryptocurrency that cannot be linked to their transaction history.
Belcher is one of the world's top experts in the field of Bitcoin privacy. In May of this year, he released a detailed outline on how the coinwap protocol is implemented to ensure maximum privacy. The proposal will make coinwap transactions indistinguishable from other transactions, use segmentation techniques to obscure amounts, route payments to thwart eavesdropping participants, and so on. A few months later, in June, the Human Rights Foundation announced that its first Bitcoin development grant will be used for Belcher and his efforts to realize the project.
In December last year, Belcher announced a "big day for Bitcoin privacy and fungibility": He completed the first successful coinwap transaction on the Bitcoin test network.
The Lightning Network is more closely connected with the watchtower
The Lightning Network (Lightning Network) is Bitcoin's layer 2 protocol for faster, cheaper and more private payments, and will continue to improve in 2020. With the implementation of Lightning LND, Eclair, C-Lightning and-starting in July-Electrum has launched many new software versions, and more and more projects built on top of the agreement, Lightning development is more than ever active. Among the more noteworthy developments, the "Watchtower" solved a weakness that still exists in the Lightning Network, resulting in a stronger agreement.
One of the trade-offs of the Lightning Network is that users need to pay close attention to their payment channels to ensure that payment channel partners will not try to swindle more funds by broadcasting the old channel status. If channel partners try to cheat, Lightning users can step in, but this requires monitoring the Bitcoin blockchain, and ordinary users may not do this often.
To reduce the risk of cheating missed, lightning protocol allows the through channel monitoring outsourced to impartial observers, called the Watchtower. In addition to the first watchtower software launched by LND at the end of 2019, in February this year, the special watchtower realization Eye of Satoshi released an alpha version. Soon after, the proposed watchtower protocol specification was updated, and C-Lightning launched support for Eye of Satoshi in May. In July, the first edition of "Eye of Satoshi" was released.
Other well-known developments of Lightning in 2020 include continuing to work anchor output from a channel to ensure that users can claim funds unilaterally even if on-chain fees have risen more than expected since the last payment channel update, multi-path payment in small blocks to allow users to pay Lightning, Lightning Network local messaging application Juggernaut, channel management tool Faraday, Lightning Loop beta, but there are some newly discovered weaknesses and solutions.
After Miniscript, Bitcoin programming becomes easier
The codes embedded in Bitcoin transactions specify which conditions must be met to use Bitcoin in the next transaction. These codes are written in a programming language specifically designed for Bitcoin, called scripts. However, scripts can be difficult to process: in programmer jargon, scripts are difficult to "reason". "This means that, especially when it becomes more complex, it may be difficult for us to understand what a script actually allows: a transaction may inadvertently contain code that allows money to be consumed under different conditions. This is why so many bits Coin software applications, such as wallets, do not fully utilize the potential of scripts.
In the past few years, (former) Blockstream researchers Andrew Poelstra, Pieter Wuille, and Sanket Kanjalkar have designed a "lite" script called Miniscript. Miniscript is some "tools" carefully selected from the "script toolbox". They can actually achieve anything done with scripts, but it is easier to use and easier to verify by programmers. Therefore, although a line of miniscript is still a valid script, it essentially avoids human error by preventing accidental, possibly unintentional, code results; Miniscript is easier to reason about. In November this year, Dmitry Petukhov, Rugged Bytes' head of research and development, released an official mini-script manual.
In order to make bitcoin transactions easier, Wuille also designed a "strategy language" for minicript, which is its own programming language, which can be compiled into minicript, or Script. Based on Wuille's work, Bitcoin developer Nadav Ivgi developed another new programming language Minsc this year. Minsc was first announced in July, followed by a major upgrade in November, which is still ongoing, but will greatly simplify the creation of Bitcoin transactions. This will help unlock a series of promising features and take full advantage of Bitcoin's versatility, such as interoperable CoinJoin wallets, smart contract solutions, layer 2 protocols, etc.
Through DLC, smart contracts become smarter
Whenever smart contracts depend on external data, they all depend on external data sources called "oracle". For example, if two users want to bet on the outcome of a sports game, the oracle will have to use the result of the game to solve the problem of betting on the person with the correct prediction to win.
A very basic sports betting setup can consist of a two-thirds multi-signature address, where the player and the oracle each hold a key, and the oracle is told the details of the bet. After the game is over, the two players can cooperate to send funds from the multi-signature address to the winner without the oracle key. But if the loser refuses to cooperate, oracle can use its third key to cooperate with the winner and send them funds from multiple groups. This system is effective, but has two main disadvantages. First, both parties need to believe that Oracle will not collude with opponents. Second, the oracle needs to be informed about the game, and may play an active role in the reconciliation process: this means that players have no privacy in the oracle, and if there are more than a few players who want to bet, then the settings cannot be extended well.
In 2017, Thaddeus Dryja, a digital currency project researcher at the MIT Media Lab, proposed a better solution: DLC. DLC uses a clever mathematical technique in which oracle issues a cryptographic signature corresponding to the event result. In the above example, if the first team wins, oracle will issue a signature, and if the other team wins, oracle will issue a different signature. Tip: The smart contract is designed to allow the winning player to use the issued signature to apply for funds.
In DLC, Oracle’s participation in smart contracts is minimized to the release of signatures; taking sports betting as an example, this can be achieved through existing news services as part of its regular broadcast. This also means that oracle does not need to be informed of the details of the game, and in fact does not even need to know whether there is a game. At the same time, any number of people can use signatures to settle their bets without further involvement of oracle, which greatly benefits scalability . Although Oracle can still collude with someone in theory and spread wrong results, this dishonest behavior is obvious to anyone and will damage Oracle's reputation.
In January of this year, CEO Chris Stewart announced that his company Suredbits has begun working with Crypto Garage to develop DLC specifications. In February of this year, Suredbits engineer Nadav Kohen followed up with the first working code. By September, Suredbits and Crypto Garage had developed usable software: Stewart and Bitcoin developer Nicolas Dorier participated in Bitcoin’s first DLC and bet on the results of the US presidential election. Stewart had bet on Biden, and he announced the ownership of the bonus in December last year.
It is safer to hold Bitcoin Vaults
The long list of transaction hacks and other Bitcoin thefts proves the fact that securely storing private keys is still a challenge, especially when many Bitcoins are in danger.
But a more secure solution for storing encrypted currency is under development. Bitcoin vaults-a concept that dates back to 2016-is a smart contract that protects Bitcoin security, so it requires several confirmed transactions and a time delay to actually use them. This gives potential victims a chance to recover the amount before it is too late.
Two types of vault prototypes were launched in 2020.
Bitcoin Core contributor Bryan Bishop announced the first vault prototype in April. In short, Bishop’s design is based on pre-signed transactions, the time lock delay from spending some cryptocurrency from the vault to the user’s hot wallet, and an alternative consumption option has no time lock; perhaps a new one is more secure ’S vault. Importantly, the private key used to sign the pre-signed transaction is deleted when the vault is created, so the attacker can only steal the pre-signed transaction itself.
This setting makes it very difficult for attackers to obtain these cryptocurrencies. Even if the pre-signed transaction is stolen, the thief can only spend the cryptocurrency to the hot wallet. If the victim does not believe in the security of his hot wallet, he can use the embedded time delay to transfer the cryptocurrency to an additional secure address .
Later in April, Bitcoin developer Antoine Poinsot announced another Vault demo he designed with Chainsmiths CEO Kevin loec called Revault. Revault is similar to Bishop's vault in some respects. For example, it uses pre-signed transactions, but it is specifically designed for multi-user settings and uses multisig addresses. Revault allow some users pre-determined spending from the vault to the heat wallet encryption cargo currency, there are also delayed. Any vault participant can use this delay time to return funds to the vault if they do not agree to spend, or they can redirect the funds to another additional safe address if they do not believe what is happening.
In addition, Revault requires that when withdrawing from the vault, when the time lock is activated, the user immediately creates a transaction from the hot wallet, which also requires the server to co-sign. The server is programmed to sign any transaction, but never conflicting transactions, so if an attacker compromises the vault and hot wallet, they will have to try and claim the cryptocurrency before others and the time lock expires. If the hot wallet is compromised, this should be obvious, warning the Revault user group and allowing them to redirect funds before the time lock expires.
Taproot can now be used because activation is under consideration
Since the activation of Segregated Witness in August 2017, Taproot will be the first Bitcoin protocol upgrade. Taproot was originally proposed by Bitcoin Core contributor Gregory Maxwell in January 2018. It allows users to "hide" smart contracts in ordinary Bitcoin transactions: complex multi-signature structures may be indistinguishable from simple payments.
The upgrade of Taproot will also include the Schnorr signature algorithm. Many cryptographers believe that the Schnorr signature scheme is the best in the field, because its mathematical properties provide strong correctness, it is not affected by malleability, and the verification speed is relatively fast. Schnorr's "linear mathematics" will also allow a series of new possibilities, such as more compact types of multi-signature solutions, beautiful smart contract settings, and of course, Taproot itself.
After continuous development in 2020, Taproot's code was merged into the Bitcoin Core code base in October and will become part of Bitcoin Core 0.21.0. The core 0.21.0 will be released at any time, and there are currently candidate versions available. select. However, Bitcoin Core 0.21.0 will not include Taproot activation logic. This may be included in the upcoming version of Bitcoin Core.
However, for most of 2020, activation logic itself is a topic of discussion, and a series of potential activation mechanisms are considered. Most of them will initially use computing power to coordinate, and eventually reach a deadline, and the upgrade will be activated without computing power support. But a poll released in October by Bitcoin Core contributor AJ Towns showed that not all Bitcoin Core contributors agree that a deadline should be set in advance, or how far the deadline should be.
But no matter which activation mechanism is ultimately chosen, it seems that it is increasingly possible to smoothly activate Taproot through the coordination of computing power. In November, Poolin, a large mining pool, launched an initiative to encourage other mining pools to express their opinions on Taproot activation. So far, the response to Taproot has been very favorable, supporting more than 90% of the total computing power, and no mining pool opposes the proposed upgrade.