Zcash is now a month old. And it’s the apparent answer to a big problem in the cryptocurrency ecosystem: its lack of anonymity.
I know, right – who’d have thought that Bitcoin, which spent so much time lurking on the Silk Road, actually had issues with a lack of anonymity?
But as it turns out, this can be a massive structural flaw.
The Anonymity of Cash
Cash is anonymous – it’s why so much of the underworld loves it. You can’t really track the movements of a bank note; all you can do is observe the moments when it gets withdrawn from a bank account, and then when it gets re-deposited. What happens outside of the formal banking sector, however, is basically up to you.
But Bitcoin is completely different. Every transaction that has ever involved a particular Bitcoin is encoded into it, and every future transaction twill be encoded into. That’s how a Bitcoin transaction approximately works*:
*the crypto-fans will no doubt pity me for my poor techno-knowledge.
- I agree to pay you in Bitcoin.
- That transaction goes into a transaction block.
- That transaction block gets ‘processed’ (ie. encoded with the new transaction details of payer, payee, date, etc – alongside some new part of a mathematical proof).
- And that transaction is now uploaded into a massive public ledger (the blockchain).
- So the bitcoin is now yours. Provably. Because there’s a public ledger which is available to everyone to show this.
Of course, your user details can be anonymous. But because there is only one set of user details, and all of the transactions associated with that user are a matter of public record, it’s quite possible to triangulate one’s way to establishing the user’s identity.
So when it comes to Bitcoin v Cash for anonymity – cash wins.
Why is anonymity important?
So you might think that the primary purpose of anonymity is the ability to dastardly and/or tax-evasion-y things with your funds.
But that’s actually not the real driving need for anonymity.
Think about what would happen if the Mona Lisa were stolen out of the Louvre. It’s meant to be an incredibly valuable work of art – but now it’s been stolen, and everyone would know that it’s been stolen.
At that point, do you think the thief could sell her for full value?
He would not. He might get some value – but the work is now tainted. In particular, it’s tainted by the Louvre’s ownership right – a right which would be asserted the minute that the Mona Lisa showed up in public.
And the problem is the same in the bitcoin world. Do you remember the February 2014 Mt Gox hack that left 850,000 bitcoins in the hands of an unknown thief (or syndicate of thieves)? A theft that actually appears to have taken place over a period of time (beginning in 2011)?
So here’s the concern: should you accept a Mt Gox bitcoin? Or, at least, one that was processed through the exchange?
Or has it been tarnished?
Clever people that know more than me tell me that they have. But I stand to be corrected.
The Zcash Solution
Here is the cryptocurrency conundrum:
- The (Bitcoin) blockchain secures the uniqueness of each cryptocurrency unit (by preventing it from being duplicated in the same way that a Lady Gaga CD gets duplicated on a torrent site); but
- The blockchain does this by encoding the details of the sender, the amount, and the receiver – which means that anonymity is not really possible.
- Or is it?
What if you could prove that something happened without proving that something happened? #letthatsinkin
Here is a Zcash infographic:
So it does this with something called “Zero Knowledge Proofs”. Here is a youtube clip that you can try if you want a detailed explanation:
It involves questions like: “How do you prove to a friend that you know the location of Waldo without revealing the actual location?”
Spoiler alert: this question is not answered. Although there is a section about a Sudoku puzzle that is quite cool.
So I have an imperfect analogy to illustrate a Zero Knowledge Proof:
- I have been to dinner at a very fancy Chinese restaurant that has a specialty dish (a very particular and very delicious kind of egg roll).
- I want to prove to you that I have been to this restaurant for dinner, but I don’t want to:
- Tell you the name of the restaurant;
- Discuss the menu;
- Present the iPhone photos;
- Have you examine my stomach contents; or
- Show you my credit card slip.
- So how do I prove to you that I was there without actually revealing anything about the experience?
- Answer: I bring you a takeaway egg roll. And with your first bite, you’ll know exactly where I was for dinner – and I’ve proved to you that I had dinner there without telling you that I had dinner there.
I realise that it sounds like a sleight of hand – but it’s not. I get to be completely anonymous about the cost and what I did while I was there and who I was with – but you know that I was there.
And if someone has found a way to do that in a mathematically-sustainable way, then I am in awe.
Zcash had a massive few opening days, hitting a high of $5,273 per Zcash coin (I’m not sure if that’s the right term). But it’s dropped dramatically since then: today, it’s languishing at $67.
Rolling Alpha posts about finance, economics, and sometimes stuff that is only quite loosely related. Follow me on Twitter @RollingAlpha, or like my page on Facebook at www.facebook.com/rollingalpha. Or both.