Mastery Monday: Why You Should Care About Zero-Knowledge Proofs

This is the second installment of our blog series, “Mastery Monday with VIA” where we share with you some of the inside details of our technology and math in 5 minutes or less. So, are you ready to become a master?


Math impacts everything we do. You never really see the math, but you experience it.

AI is the math that helps us control our TVs with our voice and drive our Teslas. We watch Netflix and listen to Spotify, courtesy of compression algorithms that send more and more data through increasingly crowded bandwidth.

One of the invisible math innovations that is changing the world is Zero-Knowledge Proofs or ZKPs. 

If you’re not familiar with ZKPs, these videos from UCLA Professor Amit Sahai and Up and Atom do an excellent job of explaining the concept easily. We particularly like how Prof. Sahai gets a 5 year old and a 13 year old to repeat back his definition of a ZKP, after he explains it. It’s a testament to great teaching.

So, why should you care about ZKPs?

The short answer is that if you care about privacy and fairness, then you care about ZKPs. It’s the math for you.

For example, ZKPs are used every day by millions of people in bitcoin and other cryptocurrency trading. It’s how two parties who don’t know each other can verify that the right amount of funds were transferred from one to another without the need of an intermediary like a bank. There are other, non-financial uses of ZKPs, as well. 

Given VIA’s mission to enable cleaner, safer, and more equitable communities, let’s use an example from the clean energy sector. VIA blog readers will know that our software platform enables energy data to be analyzed in such a way that an analyst will never see the source data (read more about that here).

This has obvious data privacy benefits to the data owner. Data owners don’t have to physically transfer their data to anyone or let an analyst see it in any way.

But, what about the analysts? How do they know that the data is legit? 

Well, one way is that an analyst could just trust the data owner. That works well if you both know the data owner and believe that they are reputable. For example, if you know the data owner is your public utility, and trust them, then as an analyst, you may say, “the data must be OK.”

What if the data owner isn’t someone you trust? They don’t necessarily have to be “untrustworthy.” You just don’t know them. So, the new energy retailer in your neighborhood, or the EV charging station start-up, or the microgrid operator may be perfectly legitimate. But, how do you know? How can you make sure they are playing fair?

This is where ZKPs come in. You don’t have to know. You don’t have to trust them. With ZKPs, you can mathematically verify that the data stored by the utility corresponds to the data offered to the analyst. Also, ZKPs, given a verifier, enable us to validate that the values of the data provided by the utility are indeed what the verifier is expecting. 

To take the example even further, think about consumer data. Energy is decentralizing rapidly to the individual level (e.g., rooftop solar and EVs). Your energy data is literally personally identifiable information so data privacy is paramount. At the same, you can’t possibly know and trust every other individual consumer as a data owner. ZKPs can address this.

So, is there a ZKP for energy data that energy analysts can use? Stay tuned for next week’s post …