Bitcoin Dev Offers Two Solutions for a Taproot Soft Fork

Yesterday, Monday the 6th May 2019, Bitcoin developer, Peter Wuille, posted an announcement to the Bitcoin development community. The basis of his message was regarding a proposed soft fork to enable the Taproot update. The proposed Taproot soft fork is one which aims to address the concerns of privacy on the Bitcoin blockchain.

At present the Bitcoin protocol does not offer full privacy as anyone with a web browser can see the balance and transactions of any known Bitcoin address. The Taproot update plans to solve that issue by making all “transactions and cooperative spends” indistinguishable from each other.

It does this by implementing something called a Merkelized Abstract Syntax Tree (MAST) and the Schnorr signature scheme. The combination of the two is said to enable to protocol to reveal less information when a transaction occurs on the blockchain.

What this does is basically allow for any alternate possible methods, by which a Bitcoin came to be inside a particular wallet, to be hidden. By implementing the Schnorr signature scheme allows for MAST transactions to hide the fact of whether MAST was actually used.

The following list contains the outlined points of Peter Wuille’s update:

  • Taproot to make all outputs and cooperative spends indistinguishable
    from eachother.
  • Merkle branches to hide the unexecuted branches in scripts.
  • Schnorr signatures enable wallet software to use key aggregation/thresholds within one input.
  • Improvements to the signature hashing algorithm (including signing all input amounts).
  • Replacing OP_CHECKMULTISIG(VERIFY) with OP_CHECKSIGADD, to support batch validation.
  • Tagged hashing for domain separation (avoiding issues like CVE-2012-2459 in Merkle trees).
  • Extensibility through leaf versions, OP_SUCCESS opcodes, and upgradable pubkey types.

This news should be taken as a positive step in the right direction for the Bitcoin community. As many people will argue, complete privacy is one aspect of the Bitcoin protocol which is not truly fully implemented, and anything which helps bring this feature to the blockchain will be welcomed.

Love, peace and happiness.