Crypto’s Quest for Privacy: Elements Project Introduces Confidential Transactions
Although one of Bitcoin’s most important features is the ability to preserve a level of anonymity, it is essential to note that it is pseudonymous, and not necessarily totally anonymous. By default, Bitcoin uses a public blockchain method to process transactions. Since the transactions are publicly available for inspection, purchase amounts can be traced back to certain bitcoin wallets and, with some tracking, any level of anonymity starts to break down.
Some wallets have introduced methods to combat this weakness. Some involve sending transactions through a complicated network of multiple wallets before finally receiving them in your own personal wallet. Most methods involve mixing techniques in which transactions are combined with other transactions from other users. While improving privacy, this technique does not entirely provide true anonymity. Also, in most first-world banking jurisdictions, usage of these techniques can be illegal under anti-structuring laws.
An open-source community of programmers and cryptographers, The Elements Project is seeking to solve this problem through the introduction of their Confidential Transactions feature. Elements is a project which extends Bitcoin with “composable building blocks” deployable to individual “sidechains.”
The basis for Confidential Transactions was originally proposed by Adam Back on Bitcointalk in his 2013 thread “bitcoins with homomorphic value.” Announced in June 2015, the project has already introduced significant improvements and features integrated into the Elements sidechains. These sidechains introduce features like speed optimization, signatures, signed blocks, hashed nodes, time-locked transactions, and now Confidential Transactions. Sidechains are decentralized blockchain networks that run side-by-side with Bitcoin, extending the usefulness of the blockchain. They let developers to create functionality while staying separate from the core financial blockchain.
The Elements Project claims that Confidential Transactions will “preserve security while simultaneously obscuring transaction values.” According to their website, transaction amounts will not be visible to external viewers, thereby providing a greater level of privacy and anonymity for both the sender and the recipient of the transaction. And unlike previous attempts to solve the anonymity issue, Elements has high performance, low overhead, and uses the same proven cryptographic processes as the standard Bitcoin blockchain.
One of the features that is an integral part of the Confidential Transactions sidechain is a new bitcoin address type: “confidential addresses”. These are addresses which include a built-in blinding key to obscure the exact values.
One of Bitcoin Core developers, Peter Wuille, stated that “the trick […] is to let individual participants let their inputs and outputs’s blinding factors not add up to zero, but only let the their sum add up to zero.”
According to Gregory Maxwell, principal investigator on the project, “It is also compatible with CoinJoin and CoinSwap, allowing for transaction graph privacy as well, while simultaneously fixing the most severe limitation of these approaches to privacy (that transaction amounts compromise their privacy).
“Unlike some other proposals, this system is not just speculation or pure cryptography without integration with the Bitcoin system. Confidential Transactions is enabled in Elements and used by default by all ordinary transactions.”
Since Elements is even further improving one of Bitcoin’s most attractive features, it will be interesting to see the upcoming Elements developments and how they will be integrated into the blockchain on an everyday user level. Introduction of truly confidential transactions in the cryptocurrency community will only increase the value of Bitcoin, improving fungibility and usefulness to a greater user base.
(This is the second in a two-part series on privacy with digital transactions.)