cmiiw, zkSNARKs mean that computations can be verified by a single node and therefore not executed by every node on the network-- link, and work is being done to include this feature in the mainnet.

How do zkSNARKs fit into the broader picture: as a requisite for scalability (alongside Plasma/Swarm, and sharding?), or for privacy?

  • The speaker states that the processing is done off-chain for zkSNARKs but the verification is still done on-chain by all nodes. I guess it's like how it's a lot of work to bake a good cake but only takes a few seconds to verify that it tastes good. Or a lot of work to prime factorize a large number with two prime factors but very fast to verify the product of the numbers. – lungj Nov 5 '17 at 7:40

First question:

as requisite for scalability?

The many utopian promises of blockchain tech arise from scale i.e. having as many nodes/means of verification/eyes watching the network as possible. If only traditional miners can afford to be nodes (because they own massive amounts of hardware that eventually pays for itself), then many of these promises are doomed to never be faithfully fulfilled. SNARKs and related zero-knowledge proof technologies allow for fixed-size blockchains; Instead of publicly advertising and storing the details of an entire state change (adding a block to the chain), let's prove that we recorded the right state change without broadcasting or storing all the sensitive info or fluff. This is O(1) Labs in a nutshell.

Second question:

for privacy?

Checkout Zcash. If that isn't private enough for you, then use STARKs or hash your Merkle roots and leaves a few more times.

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.