User:Trxllz/sandbox

Wasabi Wallet

Wasabi Wallet is an open-source, non-custodial, privacy-focused Bitcoin wallet for Desktop, that implements trustless CoinJoin. The CoinJoin coordinator operates in a zero-knowledge style and does not know its users and cannot spy on them, it simply helps many peers to build a huge Bitcoin transaction, with many inputs, and many outputs. Thanks to its non-custodial and trustless nature, Wasabi (and the CoinJoin coordinator) cannot steal from, nor breach the privacy of the users.

Bitcoin and Privacy

While Bitcoin it’s often wrongly considered as anonymous money, the blockchain underlying it is quite the opposite: an extremely transparent, immutable and verifiable system by anyone. This means that once a single address or transaction is known, there is a trail that allows bitcoins to be tracked. While the Bitcoin blockchain does not store personal information about the owners of the specific Bitcoin addresses, using metadata makes it possible to link Bitcoin addresses to certain companies and individuals. If such a link can be established, all past and future transactions can be traced.

This does not jeopardize the privacy and, consequently, the security of individual users; but also of companies that operate with Bitcoin. In fact, with a transparent financial track record, companies paying with cryptocurrencies may find themselves in a squeezing situation, where their suppliers, clients, and competitors are aware of all of their payment steps and prices. For institutional investors, each step would be scrutinized by the market causing intentional or unintentional price manipulation.

CoinJoin

CoinJoin is a particular Bitcoin transaction where multiple users combine their UTXO (Unspent Transaction Outputs) into one large transaction with multiple inputs and multiple outputs. A traditional Bitcoin transaction is usually composed of one sender and one recipient. It is easy to understand, even by an external observer, which inputs correspond to which outputs and vice versa.

The purpose of a CoinJoin transaction composed by multiple inputs and outputs is to break blockchain surveillance heuristics. Thanks to CoinJoin transactions, users can gain privacy by breaking the link of which input "pays" which output so that any of the outputs cannot be attributed to the owner of the input.

History

Early history

When JoinMarket, another popular CoinJoin-based wallet, was first introduced, Ádám Ficsor, succeeded in building a GUI interface. However, he encountered difficulties when trying to connect the python code through the command line with his C# code. He then decided to rewrite sections of JoinMarket in C# to solve this issue. However, he soon realized that to complete this task, he would have to learn how to develop in bitcoin in C#.

In his research, Fiscor discovered that a fellow software developer and author of ‘Blockchain programming in C#’ Nicolas Dorier had already built the C# .NET library. After being invited to Japan to collaborate, Fiscor read and rewrote C# to his level of understanding and learned bitcoin programming by extending the concepts in Dorier’s book and placing it on GitHub. Fiscor further learned python, became a python developer and attempted to write an HTTP communication system or daemon for Joinmarket to connect his code.

He then decided to work on Tumblebit, another privacy-oriented Bitcoin project, and he further wrote blogposts and learned the workings of it. Decided to use Microsoft’s .NET, but after realizing that there wasn’t a Tor library, Fiscor wrote a Tor library named Dotnet Tor which he still maintains on Github.

He then realized that Bitcoin light wallets were vulnerable to network analysis and would fail on the privacy level so he built a full block downloading SPV wallet with tumblebit integration in dot net and called it Hidden Wallet. After realizing that Chaumian CoinJoin was more effective than Tumblebit he included it in the ZeroLink research and then implemented in Hidden Wallet..

With the help of Mattew Haywood, fiscor implemented ZeroLink and attempted to perform a public testing with the aims of achieving a 100 anonymity set. Though they did get to 100 people, the biggest mix that was achieved at the time was 26. After a while, he then rewrote HiddenWallet with the help of the developer Lucas Ontivero. In 2018, Fiscor collaborated with Gergley Hadju and Balint Harmat to create zkSNACKs, a legal entity with the purpose of sponsoring the development of Hidden Wallet. HiddenWallet was then rebranded as Wasabi Wallet and its upcoming beta release was announced during Fiscor’s 2018 presentation ‘Anonymous Bitcoin’ at the Building on Bitcoin conference in Lisbon, Portugal, which coincided to the first anniversary of User Activated Soft Fork, a controversial and important chapter of the Bitcon history.

Growth

On October 31st, 2018, on the 10th anniversary of Satoshi Nakomoto’s Bitcoin whitepaper release, Wasabi Wallet 1.0 was launched. The software wallet was received as the first of its kind due to its unique CoinJoin feature and being “the only lightwallet that protects information leak from network adversary.”

To date, Wasabi has more than 200,000 downloads and it is not uncommon to see CoinJoin transactions of up to 100 people.

Features

Wasabi Wallet includes built-in Tor and, by default, all traffic between the clients and the server goes through it, so IP addresses are hidden and privacy of the users is respected. Under normal conditions, Wasabi Wallet never leaves Tor onion network and it never uses Tor exit relays, significantly decreasing the network attack surface. Wasabi also includes all standard privacy tech like a Hierarchical Deterministic wallet and address reuse avoidance, as well as mandatory coin control and labeling.

The wallet uses BIP-158 Client-side block filtering to obtain its own transaction history in a private way and it has a one-click partial full node integration as it ships with Bitcoin Knots. If the user already has a Bitcoin full node on a local or remote device, then it is possible to specify the IP address and port, or the Tor onion service, and Wasabi will use it to verify and enforce rules of Bitcoin. In addition to this, it has advanced cutting-edges features like:

Wasabi also has a built-in CoinJoin feature, which allows creation of a special Bitcoin transaction where several peers get together to literally join their coins in a single transaction

Investors

On November 21st, 2019, zkSNACKs received its first and only investor to date, when Canadian Bitcoin and Privacy tech investment firm Cypherpunk Holdings, acquired 4.5% of the company’s issued and ordinary shares at the price of $337,500. The company’ Chief Investment Officer, Moe Adham also joined the board of directors. (Source)

Criticisms

It is often assumed that the main problem with an obfuscated transaction history is that financial regulators may have concerns about money laundering. However, this is only the first impression, if we go into the details it can become more transparent why individuals and institutions should not worry about violating AML rules and why companies could have a direct competitive advantage using CoinJoin transactions.

Using Bitcoin as a method of payment currently do not have sufficient privacy regarding financial information. Outsiders can get valuable information by studying the public transaction history of an individual or a company, causing economic and privacy damage in the long run. Using CoinJoin transactions can help individuals and businesses to keep their privacy while still enjoying the benefits that Bitcoin transactions can provide. Concerns from the AML perspective are not valid, as the necessary data can be provided to authorities upon investigation requests.

Contribution Game

Wasabi Wallet hosts multiple contribution games where a reward or 'bounty' is distributed among contributors within the GitHub repository who perform specific tasks that range from educational to artistic. Contributors are rewarded for facilitating in Bitcoin education, peer support or creating and designing wasabi wallet related artwork respectively. There are also bounties for version release reviews where contributors are rewarded for thoroughly reviewing new versions of the WasabiWallet software upon release.