How would zkSNARK proofs apply to smart contracts on JP Morgan's Quorum?

I have basic understanding of how blinding polynomials and homomorphic hidings work for zcash shielded transfers (from "Explaining zkSNARKs" blog mostly).

While I understand their purpose for the shielded transactions, it seems to me their purpose is fairly special and hardly extensible to a general case (homomorphic encryption in general).

The question is - what exactly should zkSNARK proofs conceal on the JP Morgan's Quorum? (a hint would be good enough, too)


They would conceal identity of a company or person that is doing something. Let's say a very large stock trade. You found a stock no one knows about and you want to accumulate in large amounts quietly but do not want to tip off your hand, zcash would allow concealment of the company name or all details altogether. Protecting anonymity for a transaction that can end up being very profitable or costly if others want to front run and sabotage. Hope this gives you an idea of their use case.

1 Like

I’d like to dig a little deeper on this answer.

Quorum uses EVM smart contracts which can be public or private contracts. Let’s say we have a private contract on Quorum created between Bob and Alice. After a number of private transactions between the 2 parties, a certain state variable ‘X’ ends up being equal to 10.

Then later say Bob wants to transact with Eve but needs to prove to her that X = 10 (from the private contract between Bob and Alice). When the zkSNARK feature is added to Quorum, will it allow Bob to prove to Eve (or anyone else) that X is in fact 10, without revealing the private transactions between Bob and Alice that caused X to equal 10?

Many Thanks