1 Take š¶ļø
Five years from now, zero knowledge technology will be utilized by a majority of people in the world via the applications they use on a regular basis.
In crypto world, itās officially zero knowledge (or ZK) summer! Every VC is tweeting about it, every founder references it in their product vision, and every ZK cryptographer has been invited to the Met Gala. Ok, Iām kidding about one of these. But if youāre anything like me, the term āzero knowledgeā made it feel that you need a PhD to understand it. Well good news: you donāt. Better news: I deep dove into it so you donāt have to. Today, weāll cover:
How zero-knowledge proofs (ZKPs) work
What do ZKPs power today
What might ZKPs enable in the future
What are ZKPs and how do they work?
In a sentence, zero knowledge proofs allow you to prove something is true without actually knowing its true. If that sounds too sci-fi for you ā donāt worry, weāll break it down with a simple example.
Ok, imagine thereās an underground tunnel with two ways to get in or out (A & B). Inside the tunnel, thereās a door that requires a key to open ā if you enter in entrance B, you need the key to come out of entrance A, and vice versa. If you wanted to prove a person (letās call him Xavier) has the key, normally youād ask Xavier to show you the key, or have him go in one of the entrances and walk out the other. But if you think about it, itās actually kinda inefficient:
Xavier likely has to reveal more about himself than whether or not he has the key, whether itās the physical appearance of the key or revealing who he is by showing up to demonstrate he can go in one entrance and out the other.
Xavier has to repeat this with every single person who wanted to verify the same thing, or weād have to invent a 3rd party who verifies this that everyone would have to trust
ZKPs eliminate all that by making it mathematically verifiable if Xavier has the key. How? After Xavier goes into the tunnel, a software program randomly selects whether he should come out of Entrance A or B (without knowing or caring which entrance he went in), and logs it. Now if the program only does this one time, thereās a 50% chance Xavier doesnāt have the key but got lucky that the program picked the same entrance he went in. However, if we run this simulation hundreds (or thousands) of times, it becomes mathematically certain if Xavier has the key or not based on if heās able to come out of the entrance the program selects. The best part? Anyone can access the results of this simulation in a ātrustlessā way while maximizing Xavierās privacy.
What do ZKPs power today?
ZKPs primarily power two things within crypto:
Privacy - As cool as they are, blockchains make all transaction data publicly available. As a user, you may not want everyone to see what youāve been spending your $$ on. As referenced in our example above, ZKPs preserve privacy in a really unique way. Tools like Aztec allow users to āshieldā their transactions via ZKPs so that no one can tell what they are doing while maintaining that they arenāt doing anything sneaky like double-spending $$ (to learn more, highly recommend reading this piece from friend of the newsletter, Jon Wu, who works on the growth team at Aztec).
Rollups - As you may have experienced, gas fees (cost to make a transaction) on ETH are expensive! Rollups are a performance enhancement that enable users to submit their transaction to an offline Layer 2 (L2) chain, which then aggregates (or ārolls upā) a bunch of transactions and submits them as a single transaction on ETH. While this saves gas fees, the main ETH chain still has to validate each individual transaction to validate everything is kosher. However, using ZKPs for rollups means that ETH can quickly verify the proof without having to manually validate each transaction, which improves performance + cost by an order of a magnitude.
What might ZKPs enable in the future?
Weāre just scratching the surface with what ZKPs can enable, but here are a few areas to keep your eye on:
Identity Management - If you think about anything that requires identification, whether itās getting into a bar or logging into a website, youāre often showing a lot more information that you need to (e.g. physical or email address, name, etc). What if there was a way to securely identify you in a better way that doesnāt require trust of a institution or 3rd party? (Polygon ID is building something interesting here)
Financial Asset Checks - If youāve ever tried to rent or buy a house, the amount of financial data you need to share is insane (you literally have to send in the last 3-4 months of your bank account statements). All this unneeded data is why data leaks or hacks can be so worrisome. ZKPs can enable tools to reliably prove that you have a certain amount of $$ in your bank account.
Regulatory/Privacy Implementations - To better satisfy regulatory/privacy requirements like GPDR, companies could use ZK technology in their products to minimize the amount of data they need to collect/persist on their users.
Recent hardware, software, and blockchain advancements have fortuitously converged to transform ZK technology from a theoretical topic to actually be used in real-life applications. Who knows what the future holds, but technologies like ZK make me optimistic itāll be a better one!
Thanks for reading Karthik's Crypto Takes!
Subscribe for free to receive new posts and support my work.
2 Things To Check Out š¤Ā
1. The true power & potential of crypto:
2. š
Always be learning,
Karthik