When you hear the word wabi-sabi for the first time you might think, “wow that sounds like a TV cartoon my kid would haunt my days watching.” Or if you’re one of those artsy types you may be familiar with its Japanese definition: a world view centered on the acceptance of transience and imperfection. Unlike its Japanese definition, Wasabi Wallet has been working on perfecting our own interpretation of this wonderful word with the WabiSabi protocol. Let’s look into WabiSabi’s definition.

I hear your shock and awe through the screen. What is this WabiSabi protocol you ask? It’s an amazing new feature that will come as part of our 2.0 launch. It will basically make CoinJoin transactions with the help of a coordinator. The main idea behind it is that it can’t deanonymize you or steal your money, despite the fact that the CoinJoin is being operated by a coordinator.

It brings privacy to Bitcoin, and makes it so people cannot see your prior transactions. A welcome side effect to this is that it will in turn, save you from losing any of those precious bitcoins you’ve been hodling. It also means automatic CoinJoin transactions (the crowd goes wild!)!

It’s also important to note that there is no point in time where the coordinator will be able to steal your money as they will never know who is who during the transaction.

How does WabiSabi help us achieve privacy in those transactions? Well, there are some components that make sure it runs as smoothly as possible:

Zero knowledge proof system:

This is where one person can prove to another that they know what amount is meant to be sent, without really having to prove anything aside from that.

The keyed-verification anonymous credentials:

With this, the coordinator can confirm which amount was paid when the sum of the coinjoin is broken down, without being able to tell who paid it.

Tor circuits:

This allows users to connect to the coordinator anonymously.

Lastly, serial numbers are used to prevent double spending as well as helping to ensure the correct input and output values are going to the right location without showing the exact amount.

If you’d like to see an analogy further explaining how it all works, here’s a helpful link on our GitHub: https://github.com/zkSNACKs/WabiSabi/blob/master/explainer.md

There’s certainly lots to look forward to with the impending 2.0 launch and we can’t wait to share this and the other amazing things we’ve created to protect your privacy and ease the transaction process.

WabiSabi’s definition should be clearer now.