From my brief exposure to the concept, zkSNARKs seems to be a form of zero-knowledge cryptography.
What can zkSNARKs bring to the table for Ethereum?
I have looked at projects like this but still fail to grasp it's applicability to the platform.
Ethereum Stack Exchange is a question and answer site for users of Ethereum, the decentralized application platform and smart contract enabled blockchain. It only takes a minute to sign up.
Sign up to join this communityFrom my brief exposure to the concept, zkSNARKs seems to be a form of zero-knowledge cryptography.
What can zkSNARKs bring to the table for Ethereum?
I have looked at projects like this but still fail to grasp it's applicability to the platform.
I'll not enter on crypto hard details, because I don't know that much about it, and it needs pages and pages to be explained correctly. But let's try it!!!
ZKSnarks also known as: Zero Knowledge Succinct Non-interactive Arguments of Knowledge, are fast computational zero knowledge proofs that allow you to demonstrate things without giving any info and even without any need of an interaction between the proover and the verifier.
Let's see an example.
It's so.. soo hard to summarize, but it will look like this:
With all of this, we are able to build Snarks, that let us verify a proof without acquiring knowledge of the solution and without interaction between the prover and the verifier.
Here is a visual representation of the math involved:
Because the nodes will be able to verify the correctness of a block (no double spend for example) without knowing any info about it. It's like the dream of a cryptographer, evaluate a statement without knowing any info of it.
Which means that all of the addresses, balance, and much more info will be totally encrypted, but a node can still evaluate (super fast, because snarks are succinct proofs) without knowing any info.
The problem with Snarks and Ethereum is that Snarks work on Zcash because there's only transactions. And it's more simple to implement those Snarks on a blockchain that just supports transactions. But in Ethereum's case, with SmartContracts involved.. it's much more difficult to implement ZKSnarks (i don't know exactly why, but guess there's trouble with the EVM).
Hope it helps, and sorry if it's confusing, but it's hard to explain.
zkSNARKs will offer the possibility of private transactions, or confidential transactions.
While the math and the cryptography behind it are quite complex, you can find an overview of it in Ethereum's context in this article written by Consensys.