4/17/25
(Originally published under my employer, Tower Research Capital)
Landscape of portuguese sailors using computers, azulejos --ar 2:1 --v 6.1
“ZK” is now an industry term that encompasses many subcategories of encrypted computation: true ZK, multiparty computation (MPC), fully homomorphic encryption (FHE), trusted execution environments (TEE), and more. For all intents and purposes, the following overview is limited to ZK though the other categories are worth further exploration.
Within ZK specifically, we suspect people are fundamentally misunderstanding (and therefore mispricing) the value proposition. This misunderstanding coupled with accelerating performance and decreasing cost curves should hopefully lead to the creation of de novo value in the near future (1-3 year time horizon). While the current market for ZK proofs (ZKPs) seems to be relevant mostly to the blockchain space, it’s possible that the addressable market for ZKPs extends far beyond crypto applications. In this piece, we’ll explore the mechanics and economics of ZKPs and the areas where Tower Research Ventures is interested in exploring applications.
Many misconceptions regarding the value of ZKPs stem from a fundamental misunderstanding of what ZKPs fundamentally are. At a high level, think of them as any non-ZK arbitrary computation that has a series of inputs (known as arguments), operations (known as functions), and output(s).
For example, if we want to create a simple add function it might look like this:
ZKPs offer benefits in terms of verification and information sharing. If Alice wants Bob to be able to verify each step of the process – the initial inputs of 3 and 5, the adding function, and the output of 8 – she can simply send Bob the inputs and the function. Assuming the function is deterministic, Bob can run it to verify the results. But if Alice wants to hide any of this information – either some or all of the inputs, or the function itself – while still proving to Bob that the output is 8, she will need to use some kind of ZKP. Formally, Alice would have to create a “proof” of her computation to submit to the verifier without revealing information about the “witness” (the set of objects she wants to hide).
Technically, witnesses or proofs can accommodate any type or amount of information the user can hide an argument or set of arguments, any number of functions, or even the output. The only limiting factor is in the proof complexity itself, which scales with the number of operations the entire process takes.
Note that ZK is different from encryption. Encryption usually entails securely transferring information where you have some trust assumptions, whether on either end of the transportation or the method of transportation itself. In contrast, ZK proofs entail transferring knowledge of something. This is a critical distinction to make encryption offers one main affordance (privacy/security), while ZK offers two main affordances (privacy/security and succinctness). This second affordance is novel – and it’s the main thing people are underestimating about ZKPs.